reflex-agent 0.4.0 → 0.5.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/.next/BUILD_ID +1 -1
- package/.next/app-build-manifest.json +90 -90
- package/.next/app-path-routes-manifest.json +9 -9
- package/.next/build-manifest.json +5 -5
- package/.next/prerender-manifest.json +3 -3
- package/.next/react-loadable-manifest.json +1 -1
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/agents/[agentId]/page.js +2 -2
- package/.next/server/app/agents/[agentId]/page.js.nft.json +1 -1
- package/.next/server/app/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/[agentId]/respond/route.js +1 -1
- package/.next/server/app/api/agents/[agentId]/respond/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/[agentId]/respond/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/images/[rootId]/[file]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/callback/route.js +2 -2
- package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/start/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/attachments/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route.js +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route.js +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route.js +2 -2
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/dashboard/route.js +1 -1
- package/.next/server/app/api/roots/[id]/dashboard/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/dashboard/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/suggestions/route.js +1 -1
- package/.next/server/app/api/roots/[id]/suggestions/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/suggestions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/bundle.js/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/host/route.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/host/route.js.nft.json +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/host/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/host-api.mjs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/host-ui.mjs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/iframe/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/style.css/route_client-reference-manifest.js +1 -1
- package/.next/server/app/audit/page.js +1 -1
- package/.next/server/app/audit/page.js.nft.json +1 -1
- package/.next/server/app/audit/page_client-reference-manifest.js +1 -1
- package/.next/server/app/onboarding/page.js +4 -4
- package/.next/server/app/onboarding/page.js.nft.json +1 -1
- package/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page.js +2 -2
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/chat/[topicId]/page.js +2 -2
- package/.next/server/app/roots/[id]/chat/[topicId]/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/chat/[topicId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/kb/[...slug]/page.js +2 -2
- package/.next/server/app/roots/[id]/kb/[...slug]/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/kb/[...slug]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/page.js +3 -3
- package/.next/server/app/roots/[id]/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/workflows/[wfId]/page.js +2 -2
- package/.next/server/app/roots/[id]/workflows/[wfId]/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/workflows/[wfId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/workflows/page.js +1 -1
- package/.next/server/app/roots/[id]/workflows/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/workflows/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/new/page.js +4 -4
- package/.next/server/app/roots/new/page.js.nft.json +1 -1
- package/.next/server/app/roots/new/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page.js +4 -4
- package/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/share/[id]/file/page.js +1 -1
- package/.next/server/app/share/[id]/file/page.js.nft.json +1 -1
- package/.next/server/app/share/[id]/file/page_client-reference-manifest.js +1 -1
- package/.next/server/app/share/[id]/page.js +2 -2
- package/.next/server/app/share/[id]/page.js.nft.json +1 -1
- package/.next/server/app/share/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/utilities/[scope]/[id]/page.js +2 -2
- package/.next/server/app/utilities/[scope]/[id]/page.js.nft.json +1 -1
- package/.next/server/app/utilities/[scope]/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/utilities/page.js +2 -2
- package/.next/server/app/utilities/page.js.nft.json +1 -1
- package/.next/server/app/utilities/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +9 -9
- package/.next/server/chunks/1004.js +1 -0
- package/.next/server/chunks/106.js +148 -0
- package/.next/server/chunks/1100.js +34 -0
- package/.next/server/chunks/1189.js +1 -0
- package/.next/server/chunks/1220.js +115 -0
- package/.next/server/chunks/1271.js +79 -0
- package/.next/server/chunks/1378.js +23 -0
- package/.next/server/chunks/1640.js +29 -0
- package/.next/server/chunks/1811.js +1 -0
- package/.next/server/chunks/{7264.js → 1862.js} +2 -2
- package/.next/server/chunks/1869.js +93 -0
- package/.next/server/chunks/1973.js +166 -0
- package/.next/server/chunks/2035.js +1 -1
- package/.next/server/chunks/2249.js +1 -0
- package/.next/server/chunks/2264.js +287 -0
- package/.next/server/chunks/2278.js +1 -0
- package/.next/server/chunks/2318.js +1 -0
- package/.next/server/chunks/2485.js +2 -2
- package/.next/server/chunks/2521.js +1 -0
- package/.next/server/chunks/2552.js +1 -0
- package/.next/server/chunks/2626.js +1 -0
- package/.next/server/chunks/2669.js +104 -0
- package/.next/server/chunks/2673.js +153 -0
- package/.next/server/chunks/2749.js +1 -0
- package/.next/server/chunks/2761.js +90 -0
- package/.next/server/chunks/285.js +3 -3
- package/.next/server/chunks/2886.js +64 -0
- package/.next/server/chunks/2995.js +1 -1
- package/.next/server/chunks/3332.js +1 -1
- package/.next/server/chunks/3378.js +1 -0
- package/.next/server/chunks/352.js +79 -0
- package/.next/server/chunks/360.js +1 -0
- package/.next/server/chunks/3746.js +93 -0
- package/.next/server/chunks/3811.js +5 -0
- package/.next/server/chunks/383.js +80 -0
- package/.next/server/chunks/3870.js +215 -0
- package/.next/server/chunks/3935.js +34 -0
- package/.next/server/chunks/4031.js +2 -2
- package/.next/server/chunks/4046.js +141 -0
- package/.next/server/chunks/416.js +77 -0
- package/.next/server/chunks/4263.js +1 -0
- package/.next/server/chunks/4282.js +1 -0
- package/.next/server/chunks/431.js +1 -0
- package/.next/server/chunks/4339.js +23 -0
- package/.next/server/chunks/4343.js +148 -0
- package/.next/server/chunks/4450.js +80 -0
- package/.next/server/chunks/4457.js +1 -0
- package/.next/server/chunks/4537.js +43 -0
- package/.next/server/chunks/4580.js +1 -0
- package/.next/server/chunks/4653.js +1 -0
- package/.next/server/chunks/4695.js +77 -0
- package/.next/server/chunks/4733.js +1 -0
- package/.next/server/chunks/4812.js +1 -1
- package/.next/server/chunks/4828.js +80 -0
- package/.next/server/chunks/4851.js +1 -0
- package/.next/server/chunks/4863.js +29 -0
- package/.next/server/chunks/4925.js +1 -1
- package/.next/server/chunks/4934.js +1 -0
- package/.next/server/chunks/5080.js +43 -0
- package/.next/server/chunks/5142.js +1 -0
- package/.next/server/chunks/539.js +1 -0
- package/.next/server/chunks/5395.js +1 -0
- package/.next/server/chunks/5407.js +9 -0
- package/.next/server/chunks/5543.js +1 -1
- package/.next/server/chunks/5558.js +1 -0
- package/.next/server/chunks/5690.js +1 -0
- package/.next/server/chunks/5723.js +1 -0
- package/.next/server/chunks/5753.js +1 -0
- package/.next/server/chunks/5783.js +226 -0
- package/.next/server/chunks/5811.js +1 -0
- package/.next/server/chunks/5822.js +24 -0
- package/.next/server/chunks/6038.js +252 -0
- package/.next/server/chunks/617.js +24 -0
- package/.next/server/chunks/6294.js +1 -0
- package/.next/server/chunks/6332.js +1 -0
- package/.next/server/chunks/6355.js +1 -0
- package/.next/server/chunks/6448.js +3 -0
- package/.next/server/chunks/6460.js +5 -0
- package/.next/server/chunks/6483.js +252 -0
- package/.next/server/chunks/6888.js +1 -0
- package/.next/server/chunks/6909.js +3 -3
- package/.next/server/chunks/6946.js +1 -0
- package/.next/server/chunks/7068.js +1 -0
- package/.next/server/chunks/7118.js +24 -0
- package/.next/server/chunks/7242.js +166 -0
- package/.next/server/chunks/7315.js +1 -0
- package/.next/server/chunks/7356.js +141 -0
- package/.next/server/chunks/7520.js +226 -0
- package/.next/server/chunks/7759.js +1 -0
- package/.next/server/chunks/7800.js +1 -0
- package/.next/server/chunks/7934.js +1 -0
- package/.next/server/chunks/7948.js +1 -0
- package/.next/server/chunks/795.js +115 -0
- package/.next/server/chunks/8015.js +287 -0
- package/.next/server/chunks/8019.js +80 -0
- package/.next/server/chunks/8150.js +1 -0
- package/.next/server/chunks/824.js +1 -0
- package/.next/server/chunks/8326.js +1 -0
- package/.next/server/chunks/8384.js +153 -0
- package/.next/server/chunks/8451.js +1 -0
- package/.next/server/chunks/8674.js +104 -0
- package/.next/server/chunks/8897.js +64 -0
- package/.next/server/chunks/8945.js +1 -0
- package/.next/server/chunks/8948.js +36 -0
- package/.next/server/chunks/8977.js +1 -0
- package/.next/server/chunks/899.js +1 -0
- package/.next/server/chunks/9024.js +1 -0
- package/.next/server/chunks/9098.js +1 -1
- package/.next/server/chunks/9269.js +1 -0
- package/.next/server/chunks/9417.js +215 -0
- package/.next/server/chunks/9419.js +36 -0
- package/.next/server/chunks/9490.js +9 -0
- package/.next/server/chunks/9496.js +90 -0
- package/.next/server/chunks/9513.js +24 -0
- package/.next/server/chunks/9745.js +1 -0
- package/.next/server/chunks/{3662.js → 9829.js} +1 -1
- package/.next/server/chunks/9965.js +1 -0
- package/.next/server/functions-config-manifest.json +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-manifest.json +5 -5
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/2905-ca16d00d09da792e.js +1 -0
- package/.next/static/chunks/3608-556a93ce17c48331.js +1 -0
- package/.next/static/chunks/4108.40efe5d61bfc7f08.js +1 -0
- package/.next/static/chunks/4200-fc9e833f8a521cff.js +1 -0
- package/.next/static/chunks/{6886-4b169c08d9745ce0.js → 6919-830592f52172ae19.js} +1 -1
- package/.next/static/chunks/7320-00a597d3985d7624.js +1 -0
- package/.next/static/chunks/app/layout-5d864c5e6de9cf17.js +1 -0
- package/.next/static/chunks/app/onboarding/page-ccaa9f5d106a765a.js +1 -0
- package/.next/static/chunks/app/page-bd26227f60ea0122.js +1 -0
- package/.next/static/chunks/app/roots/[id]/chat/[topicId]/{page-9de733628c6de625.js → page-f7c36b058c709b0a.js} +1 -1
- package/.next/static/chunks/app/roots/[id]/kb/[...slug]/page-0ed3a1f1311c348d.js +1 -0
- package/.next/static/chunks/app/roots/[id]/page-cd62fc140883317f.js +1 -0
- package/.next/static/chunks/app/roots/[id]/workflows/[wfId]/page-5b08fe35708be776.js +1 -0
- package/.next/static/chunks/app/roots/new/{page-70df040d98ddfcb9.js → page-1a712172486a0f8f.js} +1 -1
- package/.next/static/chunks/app/settings/page-632b39256dcf7ebb.js +1 -0
- package/.next/static/chunks/app/share/[id]/{page-04701cd3e2f42faf.js → page-975a2a05e33257c9.js} +1 -1
- package/.next/static/chunks/app/utilities/[scope]/[id]/page-424ecd0f018a58f0.js +1 -0
- package/.next/static/chunks/app/utilities/page-a5befa7a77ab5796.js +1 -0
- package/.next/static/chunks/{webpack-4f6b598d96af4ca7.js → webpack-f7bc4101f4444d07.js} +1 -1
- package/.next/trace +89 -47
- package/package.json +1 -1
- package/.next/server/chunks/4347.js +0 -3
- package/.next/server/chunks/4836.js +0 -1
- package/.next/server/chunks/8823.js +0 -1
- package/.next/server/chunks/9402.js +0 -1
- package/.next/static/chunks/3873-924fc0f386eb1005.js +0 -1
- package/.next/static/chunks/4108.e2aef54ba9b68f73.js +0 -1
- package/.next/static/chunks/4690-3065e11cc18ad056.js +0 -1
- package/.next/static/chunks/5779-bf4e7d8930f04f49.js +0 -1
- package/.next/static/chunks/8982-137b26d526f24a8b.js +0 -1
- package/.next/static/chunks/app/layout-f939333a791cb267.js +0 -1
- package/.next/static/chunks/app/onboarding/page-4291d58b0c6b16e1.js +0 -1
- package/.next/static/chunks/app/page-c84defded9ae76c3.js +0 -1
- package/.next/static/chunks/app/roots/[id]/kb/[...slug]/page-f7772a63468ff75d.js +0 -1
- package/.next/static/chunks/app/roots/[id]/page-db94c337847a0543.js +0 -1
- package/.next/static/chunks/app/roots/[id]/workflows/[wfId]/page-cc556969ba89dab1.js +0 -1
- package/.next/static/chunks/app/settings/page-0451927b1906fdf0.js +0 -1
- package/.next/static/chunks/app/utilities/[scope]/[id]/page-b5c5ca2c72af92a4.js +0 -1
- package/.next/static/chunks/app/utilities/page-d66b3d654623ac67.js +0 -1
- /package/.next/static/{qL2ylFt2IFmDVVrLaCl4u → AoffeFQkXIEvh9BnegJev}/_buildManifest.js +0 -0
- /package/.next/static/{qL2ylFt2IFmDVVrLaCl4u → AoffeFQkXIEvh9BnegJev}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=2995,exports.ids=[2995],exports.modules={11178:(a,b,c)=>{c.d(b,{CA:()=>j,IK:()=>n,RP:()=>k,dj:()=>l,xO:()=>m});var d=c(73024),e=c(76760),f=c.n(e),g=c(30192),h=c.n(g),i=c(13474);async function j(a){let b=(0,i.FF)(a);return o(b,b)}async function k(a){let b=(0,i.FF)(a);try{let a=await o(b,b),c=a.reduce((a,b)=>a+b.size,0);return{exists:!0,fileCount:a.length,totalBytes:c}}catch{return{exists:!1,fileCount:0,totalBytes:0}}}async function l(a){let b=await j(a);return await Promise.all(b.map(async a=>({...a,meta:await p(a.abs)})))}async function m(a){return p(a)}async function n(a,b){let c=(0,i.FF)(a),e=f().resolve(c,b),g=f().relative(c,e);if(g.startsWith("..")||f().isAbsolute(g))throw Error(`Refused to read outside ${i.fW}: ${b}`);return d.promises.readFile(e,"utf8")}async function o(a,b){let c;try{c=await d.promises.readdir(b,{withFileTypes:!0})}catch{return[]}let e=[],g=[];for(let d of c){let c=f().join(b,d.name);if(d.isDirectory()){if(b===a&&"topics"===d.name)continue;e.push(o(a,c));continue}d.isFile()&&d.name.toLowerCase().endsWith(".md")&&g.push({rel:f().relative(a,c).split(f().sep).join("/"),abs:c,size:0,modifiedAt:""})}let h=await Promise.all(g.map(async a=>{try{let b=await d.promises.stat(a.abs);return{...a,size:b.size,modifiedAt:b.mtime.toISOString()}}catch{return a}}));for(let a of(await Promise.all(e)))h.push(...a);return h.sort((a,b)=>a.rel.localeCompare(b.rel)),h}async function p(a){try{let b=await d.promises.readFile(a,"utf8"),c=h()(b).data;return{...void 0!==q(c.title)?{title:q(c.title)}:{},...void 0!==r(c.version)?{version:r(c.version)}:{},...void 0!==q(c.date)?{date:q(c.date)}:{},...void 0!==q(c.kind)?{kind:q(c.kind)}:{},data:c}}catch{return{data:{}}}}function q(a){return"string"==typeof a?a:a instanceof Date?a.toISOString().slice(0,10):void 0}function r(a){if("string"==typeof a||"number"==typeof a)return a}},18746:(a,b,c)=>{c.d(b,{O1:()=>p,Gh:()=>q,AZ:()=>o,rD:()=>r,summarizeYoutubeAction:()=>n});var d=c(31776);c(428);var e=c(43180);let f=globalThis.__reflexGeminiModelsCache??new Map;async function g(a){let b,c=await (0,e.CG)("gemini");if(!c)throw Error("Gemini API key not configured");let d=c.slice(0,16),g=f.get(d);if(!a?.refresh&&g&&Date.now()-g.fetchedAt<36e5)return g.models;let i=[];do{let a=new URL("https://generativelanguage.googleapis.com/v1beta/models");a.searchParams.set("key",c),a.searchParams.set("pageSize","100"),b&&a.searchParams.set("pageToken",b);let d=await fetch(a.toString(),{headers:{Accept:"application/json"}});if(!d.ok){let a=await d.text();throw Error(`models.list HTTP ${d.status}: ${a.slice(0,500)}`)}let e=await d.json();for(let a of e.models??[]){if(!a.name)continue;let b=a.supportedGenerationMethods??[];if(!b.includes("generateContent"))continue;let c=a.name.toLowerCase();!c.includes("embedding")&&(c.includes("aqa")||i.push({name:a.name,id:a.name.replace(/^models\//,""),...a.displayName?{displayName:a.displayName}:{},...a.description?{description:a.description}:{},...void 0!==a.inputTokenLimit?{inputTokenLimit:a.inputTokenLimit}:{},...void 0!==a.outputTokenLimit?{outputTokenLimit:a.outputTokenLimit}:{},supportedGenerationMethods:b}))}b=e.nextPageToken}while(b);return i.sort(h),f.set(d,{fetchedAt:Date.now(),models:i}),i}function h(a,b){let c=i(a.id),d=i(b.id);if(c!==d)return c-d;let e=j(a.id),f=j(b.id);return e!==f?f-e:a.id.localeCompare(b.id)}function i(a){return a.endsWith("flash-latest")?0:a.includes("flash")&&!a.includes("lite")?1:a.includes("flash-lite")?2:a.endsWith("pro-latest")||a.includes("pro")?3:4}function j(a){let b=/gemini-(\d+)\.(\d+)/.exec(a);return b?100*Number(b[1])+Number(b[2]):0}async function k(a="general"){let b=await (0,e.$L)("gemini");if("video"===a&&b?.videoModel)return b.videoModel;if(b?.model)return b.model;try{let a=await g();if(a.length>0)return a[0].id}catch{}return"gemini-flash-latest"}async function l(a){let b=`https://generativelanguage.googleapis.com/v1beta/models/${encodeURIComponent(a.model)}:generateContent?key=${encodeURIComponent(a.apiKey)}`,c=await fetch(b,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contents:a.contents,...a.generationConfig?{generationConfig:a.generationConfig}:{}})}),d=await c.text();if(!c.ok)throw Error(`Gemini HTTP ${c.status}: ${d.slice(0,800)}`);let e=JSON.parse(d);if(e.promptFeedback?.blockReason)throw Error(`Gemini blocked: ${e.promptFeedback.blockReason}`);return{text:(e.candidates??[]).flatMap(a=>a.content?.parts??[]).map(a=>a.text??"").filter(Boolean).join("\n").trim(),raw:e}}globalThis.__reflexGeminiModelsCache=f;var m=c(17640);async function n(a){var b;let c=await (0,e.CG)("gemini");if(!c)return{ok:!1,needsKey:!0,error:"Gemini API key is not saved — enter it to summarize videos."};let d=(await (0,m.M)()).language??"russian",f=a.prompt?.trim()||(b=d,/russ/i.test(b)||RegExp("рус","i").test(b)?"Produce a structured summary of this YouTube video:\n\n1. One paragraph — what the video is about and who it's for.\n2. Main points as a bulleted list with `[mm:ss]` timestamps.\n3. Notable quotes (any memorable phrases) — with timestamps.\n4. If diagrams / slides / code are shown — briefly describe them.\n5. 1-3 sentence takeaway: the main point worth retaining.\n\nRespond in Russian, concisely. No filler.":"Produce a structured summary of this YouTube video:\n\n1. One paragraph — what the video is about and who it's for.\n2. Main points as a bulleted list with `[mm:ss]` timestamps.\n3. Notable quotes (if any) with timestamps.\n4. If diagrams / slides / code are shown — briefly describe them.\n5. 1-3 sentence takeaway.\n\nBe concise. No filler."),g=a.modelOverride?.trim()||await k("video");try{let{text:b}=await l({model:g,apiKey:c,contents:[{parts:[{file_data:{file_uri:a.url,mime_type:"video/*"}},{text:f}]}]});if(!b)return{ok:!1,error:"Gemini returned an empty response — the video may be unavailable or private."};return{ok:!0,text:b,model:g}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async function o(a){try{if(!a.trim())return{ok:!1,error:"API key is empty"};return await (0,e.Pc)("gemini",a),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async function p(a){return{ok:!0,present:await (0,e.hasApiKey)(a)}}async function q(a=!1){try{let b=await g({refresh:a});return{ok:!0,models:b.map(a=>({id:a.id,...a.displayName?{displayName:a.displayName}:{},...a.description?{description:a.description}:{},...void 0!==a.inputTokenLimit?{inputTokenLimit:a.inputTokenLimit}:{},...void 0!==a.outputTokenLimit?{outputTokenLimit:a.outputTokenLimit}:{}})),currentModel:await k("general"),currentVideoModel:await k("video")}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async function r(a){try{return await (0,e.ND)("gemini",a),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,c(97364).D)([n,o,p,q,r]),(0,d.A)(n,"404911b95ce93cd41766578b74740989ed34bea687",null),(0,d.A)(o,"40b4d6f367570699418de4236311b8169545fa7e9e",null),(0,d.A)(p,"401a9b484e6639a1fa393bdf2bd3ed270abc0fdd88",null),(0,d.A)(q,"4022839a1b29da575a6c867dfa153d3887871ae7d8",null),(0,d.A)(r,"401de30f69c6a9957c082df1cace4f601e61d51bcf",null)},24139:(a,b,c)=>{c.d(b,{Z:()=>h});var d=c(73024),e=c(74342);function f(){return globalThis.__reflexPendingCache||(globalThis.__reflexPendingCache=new Map),globalThis.__reflexPendingCache}async function g(a,b){let c,g=(0,e.Rs)(a,b);try{c=await d.promises.stat(g)}catch{return[]}let h=f().get(g);if(h&&h.mtimeMs===c.mtimeMs&&h.size===c.size)return h.result;let i=function(a,b){let c=new Map;for(let d of a)switch(d.type){case"permission-request":c.set(`p:${d.requestId}`,{kind:"permission",topicId:b,requestId:d.requestId,ts:d.ts,summary:d.tool?`Permission: ${d.tool}`:d.action??"Permission request",...d.description?{details:d.description}:{}});break;case"permission-response":c.delete(`p:${d.requestId}`);break;case"question":c.set(`q:${d.questionId}`,{kind:"question",topicId:b,requestId:d.questionId,ts:d.ts,summary:d.prompt.slice(0,200),...d.choices&&d.choices.length?{details:d.choices.join(" / ")}:{}});break;case"answer":c.delete(`q:${d.questionId}`);break;case"mcp-add-request":c.set(`m:${d.requestId}`,{kind:"mcp-add",topicId:b,requestId:d.requestId,ts:d.ts,summary:`MCP add: ${d.label}`,...d.description?{details:d.description}:{}});break;case"mcp-add-response":c.delete(`m:${d.requestId}`)}return[...c.values()]}(await (0,e.wj)(a,b),b);return f().set(g,{mtimeMs:c.mtimeMs,size:c.size,result:i}),i}async function h(a,b){let c=[];return await Promise.all(b.map(async b=>{let d=await g(a,b);c.push(...d)})),c.sort((a,b)=>a.ts<b.ts?1:-1),c}},43180:(a,b,c)=>{c.d(b,{$L:()=>j,CG:()=>k,ND:()=>n,Pc:()=>m,hasApiKey:()=>o});var d=c(73024),e=c(76760),f=c.n(e),g=c(29163);let h=f().join((0,g._)(),"api-keys");function i(a){return f().join(h,`${a}.json`)}async function j(a){try{let b=await d.promises.readFile(i(a),"utf8"),c=JSON.parse(b);if("string"!=typeof c.apiKey||0===c.apiKey.length)return null;return{apiKey:c.apiKey,..."string"==typeof c.model?{model:c.model}:{},..."string"==typeof c.videoModel?{videoModel:c.videoModel}:{},updatedAt:"string"==typeof c.updatedAt?c.updatedAt:new Date().toISOString()}}catch{return null}}async function k(a){let b=await j(a);return b?.apiKey??null}async function l(a,b){let c=i(a);await d.promises.mkdir(f().dirname(c),{recursive:!0}),await d.promises.writeFile(c,JSON.stringify(b,null,2)+"\n",{encoding:"utf8",mode:384});try{await d.promises.chmod(c,384)}catch{}}async function m(a,b){let c=await j(a);await l(a,{...c??{},apiKey:b.trim(),updatedAt:new Date().toISOString()})}async function n(a,b){let c=await j(a);if(!c)throw Error(`API key for "${a}" is not saved`);let d={apiKey:c.apiKey,updatedAt:new Date().toISOString()},e=void 0===b.model?c.model:b.model??void 0,f=void 0===b.videoModel?c.videoModel:b.videoModel??void 0;e&&(d.model=e),f&&(d.videoModel=f),await l(a,d)}async function o(a){return await k(a)!==null}},49353:(a,b,c)=>{c.d(b,{j:()=>j});var d=c(73024),e=c(76760),f=c.n(e),g=c(30192),h=c.n(g),i=c(13474);async function j(a){var b;let{rootPath:c,directive:e,provenance:g}=a,j=k(e.kind)||"note",m=new Date().toISOString().slice(0,10),n=((b=e.date)&&/^\d{4}-\d{2}-\d{2}$/.test(b)?b:null)??m,o=k(e.slug&&e.slug.trim()?e.slug:e.title)||"entry",p=`${n}-${o}`,q=f().join((0,i.FF)(c),j);await d.promises.mkdir(q,{recursive:!0});let r=await l(q,p,".md"),s={title:e.title,kind:j,date:n,version:1,...e.meta&&"object"==typeof e.meta?e.meta:{}};g&&(s.createdBy=`${g.kind}:${g.id}${g.version?"@"+g.version:""}`);let t=(e.body??"").replace(/\r\n/g,"\n").trimEnd(),u=h().stringify(t?t+"\n":"",s);await d.promises.writeFile(r,u,"utf8");let v=f().relative((0,i.FF)(c),r).split(f().sep).join("/");return{kind:j,title:e.title,relPath:v,absPath:r}}function k(a){return a.normalize("NFKD").toLowerCase().replace(/[^\p{L}\p{N}]+/gu,"-").replace(/^-+|-+$/g,"").slice(0,60)}async function l(a,b,c){let d=f().join(a,b+c),e=1;for(;await m(d);){if(e>99){d=f().join(a,`${b}-${Date.now().toString(36)}${c}`);break}d=f().join(a,`${b}-${++e}${c}`)}return d}async function m(a){try{return await d.promises.access(a),!0}catch{return!1}}}};
|
|
1
|
+
"use strict";exports.id=2995,exports.ids=[2995],exports.modules={11178:(a,b,c)=>{c.d(b,{CA:()=>j,IK:()=>n,RP:()=>k,dj:()=>l,xO:()=>m});var d=c(73024),e=c(76760),f=c.n(e),g=c(30192),h=c.n(g),i=c(13474);async function j(a){let b=(0,i.FF)(a);return o(b,b)}async function k(a){let b=(0,i.FF)(a);try{let a=await o(b,b),c=a.reduce((a,b)=>a+b.size,0);return{exists:!0,fileCount:a.length,totalBytes:c}}catch{return{exists:!1,fileCount:0,totalBytes:0}}}async function l(a){let b=await j(a);return await Promise.all(b.map(async a=>({...a,meta:await p(a.abs)})))}async function m(a){return p(a)}async function n(a,b){let c=(0,i.FF)(a),e=f().resolve(c,b),g=f().relative(c,e);if(g.startsWith("..")||f().isAbsolute(g))throw Error(`Refused to read outside ${i.fW}: ${b}`);return d.promises.readFile(e,"utf8")}async function o(a,b){let c;try{c=await d.promises.readdir(b,{withFileTypes:!0})}catch{return[]}let e=[],g=[];for(let d of c){let c=f().join(b,d.name);if(d.isDirectory()){if(b===a&&"topics"===d.name)continue;e.push(o(a,c));continue}d.isFile()&&d.name.toLowerCase().endsWith(".md")&&g.push({rel:f().relative(a,c).split(f().sep).join("/"),abs:c,size:0,modifiedAt:""})}let h=await Promise.all(g.map(async a=>{try{let b=await d.promises.stat(a.abs);return{...a,size:b.size,modifiedAt:b.mtime.toISOString()}}catch{return a}}));for(let a of(await Promise.all(e)))h.push(...a);return h.sort((a,b)=>a.rel.localeCompare(b.rel)),h}async function p(a){try{let b=await d.promises.readFile(a,"utf8"),c=h()(b).data;return{...void 0!==q(c.title)?{title:q(c.title)}:{},...void 0!==r(c.version)?{version:r(c.version)}:{},...void 0!==q(c.date)?{date:q(c.date)}:{},...void 0!==q(c.kind)?{kind:q(c.kind)}:{},data:c}}catch{return{data:{}}}}function q(a){return"string"==typeof a?a:a instanceof Date?a.toISOString().slice(0,10):void 0}function r(a){if("string"==typeof a||"number"==typeof a)return a}},18746:(a,b,c)=>{c.d(b,{O1:()=>p,Gh:()=>q,AZ:()=>o,rD:()=>r,summarizeYoutubeAction:()=>n});var d=c(31776);c(428);var e=c(43180);let f=globalThis.__reflexGeminiModelsCache??new Map;async function g(a){let b,c=await (0,e.CG)("gemini");if(!c)throw Error("Gemini API key not configured");let d=c.slice(0,16),g=f.get(d);if(!a?.refresh&&g&&Date.now()-g.fetchedAt<36e5)return g.models;let i=[];do{let a=new URL("https://generativelanguage.googleapis.com/v1beta/models");a.searchParams.set("key",c),a.searchParams.set("pageSize","100"),b&&a.searchParams.set("pageToken",b);let d=await fetch(a.toString(),{headers:{Accept:"application/json"}});if(!d.ok){let a=await d.text();throw Error(`models.list HTTP ${d.status}: ${a.slice(0,500)}`)}let e=await d.json();for(let a of e.models??[]){if(!a.name)continue;let b=a.supportedGenerationMethods??[];if(!b.includes("generateContent"))continue;let c=a.name.toLowerCase();!c.includes("embedding")&&(c.includes("aqa")||i.push({name:a.name,id:a.name.replace(/^models\//,""),...a.displayName?{displayName:a.displayName}:{},...a.description?{description:a.description}:{},...void 0!==a.inputTokenLimit?{inputTokenLimit:a.inputTokenLimit}:{},...void 0!==a.outputTokenLimit?{outputTokenLimit:a.outputTokenLimit}:{},supportedGenerationMethods:b}))}b=e.nextPageToken}while(b);return i.sort(h),f.set(d,{fetchedAt:Date.now(),models:i}),i}function h(a,b){let c=i(a.id),d=i(b.id);if(c!==d)return c-d;let e=j(a.id),f=j(b.id);return e!==f?f-e:a.id.localeCompare(b.id)}function i(a){return a.endsWith("flash-latest")?0:a.includes("flash")&&!a.includes("lite")?1:a.includes("flash-lite")?2:a.endsWith("pro-latest")||a.includes("pro")?3:4}function j(a){let b=/gemini-(\d+)\.(\d+)/.exec(a);return b?100*Number(b[1])+Number(b[2]):0}async function k(a="general"){let b=await (0,e.$L)("gemini");if("video"===a&&b?.videoModel)return b.videoModel;if(b?.model)return b.model;try{let a=await g();if(a.length>0)return a[0].id}catch{}return"gemini-flash-latest"}async function l(a){let b=`https://generativelanguage.googleapis.com/v1beta/models/${encodeURIComponent(a.model)}:generateContent?key=${encodeURIComponent(a.apiKey)}`,c=await fetch(b,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contents:a.contents,...a.generationConfig?{generationConfig:a.generationConfig}:{}})}),d=await c.text();if(!c.ok)throw Error(`Gemini HTTP ${c.status}: ${d.slice(0,800)}`);let e=JSON.parse(d);if(e.promptFeedback?.blockReason)throw Error(`Gemini blocked: ${e.promptFeedback.blockReason}`);return{text:(e.candidates??[]).flatMap(a=>a.content?.parts??[]).map(a=>a.text??"").filter(Boolean).join("\n").trim(),raw:e}}globalThis.__reflexGeminiModelsCache=f;var m=c(17640);async function n(a){var b;let c=await (0,e.CG)("gemini");if(!c)return{ok:!1,needsKey:!0,error:"Gemini API key is not saved — enter it to summarize videos."};let d=(await (0,m.M)()).language??"russian",f=a.prompt?.trim()||(b=d,/russ/i.test(b)||RegExp("рус","i").test(b)?"Produce a structured summary of this YouTube video:\n\n1. One paragraph — what the video is about and who it's for.\n2. Main points as a bulleted list with `[mm:ss]` timestamps.\n3. Notable quotes (any memorable phrases) — with timestamps.\n4. If diagrams / slides / code are shown — briefly describe them.\n5. 1-3 sentence takeaway: the main point worth retaining.\n\nRespond in Russian, concisely. No filler.":"Produce a structured summary of this YouTube video:\n\n1. One paragraph — what the video is about and who it's for.\n2. Main points as a bulleted list with `[mm:ss]` timestamps.\n3. Notable quotes (if any) with timestamps.\n4. If diagrams / slides / code are shown — briefly describe them.\n5. 1-3 sentence takeaway.\n\nBe concise. No filler."),g=a.modelOverride?.trim()||await k("video");try{let{text:b}=await l({model:g,apiKey:c,contents:[{parts:[{file_data:{file_uri:a.url,mime_type:"video/*"}},{text:f}]}]});if(!b)return{ok:!1,error:"Gemini returned an empty response — the video may be unavailable or private."};return{ok:!0,text:b,model:g}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async function o(a){try{if(!a.trim())return{ok:!1,error:"API key is empty"};return await (0,e.Pc)("gemini",a),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async function p(a){return{ok:!0,present:await (0,e.hasApiKey)(a)}}async function q(a=!1){try{let b=await g({refresh:a});return{ok:!0,models:b.map(a=>({id:a.id,...a.displayName?{displayName:a.displayName}:{},...a.description?{description:a.description}:{},...void 0!==a.inputTokenLimit?{inputTokenLimit:a.inputTokenLimit}:{},...void 0!==a.outputTokenLimit?{outputTokenLimit:a.outputTokenLimit}:{}})),currentModel:await k("general"),currentVideoModel:await k("video")}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async function r(a){try{return await (0,e.ND)("gemini",a),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,c(97364).D)([n,o,p,q,r]),(0,d.A)(n,"40b059f91096cd065ba15298feca2514275bf3d64f",null),(0,d.A)(o,"40a9e3ea19ff7efc6593d5ae9558678b4ca05eaf04",null),(0,d.A)(p,"40b847d42cf05ea2b3310ca3a1a62f9c19ca910ca3",null),(0,d.A)(q,"40af3a8031c14f34a82ac50295ab2d603622acf1c5",null),(0,d.A)(r,"408098883d63fe3304b5ec8c555043b422e01d8c20",null)},24139:(a,b,c)=>{c.d(b,{Z:()=>h});var d=c(73024),e=c(74342);function f(){return globalThis.__reflexPendingCache||(globalThis.__reflexPendingCache=new Map),globalThis.__reflexPendingCache}async function g(a,b){let c,g=(0,e.Rs)(a,b);try{c=await d.promises.stat(g)}catch{return[]}let h=f().get(g);if(h&&h.mtimeMs===c.mtimeMs&&h.size===c.size)return h.result;let i=function(a,b){let c=new Map;for(let d of a)switch(d.type){case"permission-request":c.set(`p:${d.requestId}`,{kind:"permission",topicId:b,requestId:d.requestId,ts:d.ts,summary:d.tool?`Permission: ${d.tool}`:d.action??"Permission request",...d.description?{details:d.description}:{}});break;case"permission-response":c.delete(`p:${d.requestId}`);break;case"question":c.set(`q:${d.questionId}`,{kind:"question",topicId:b,requestId:d.questionId,ts:d.ts,summary:d.prompt.slice(0,200),...d.choices&&d.choices.length?{details:d.choices.join(" / ")}:{}});break;case"answer":c.delete(`q:${d.questionId}`);break;case"mcp-add-request":c.set(`m:${d.requestId}`,{kind:"mcp-add",topicId:b,requestId:d.requestId,ts:d.ts,summary:`MCP add: ${d.label}`,...d.description?{details:d.description}:{}});break;case"mcp-add-response":c.delete(`m:${d.requestId}`)}return[...c.values()]}(await (0,e.wj)(a,b),b);return f().set(g,{mtimeMs:c.mtimeMs,size:c.size,result:i}),i}async function h(a,b){let c=[];return await Promise.all(b.map(async b=>{let d=await g(a,b);c.push(...d)})),c.sort((a,b)=>a.ts<b.ts?1:-1),c}},43180:(a,b,c)=>{c.d(b,{$L:()=>j,CG:()=>k,ND:()=>n,Pc:()=>m,hasApiKey:()=>o});var d=c(73024),e=c(76760),f=c.n(e),g=c(29163);let h=f().join((0,g._)(),"api-keys");function i(a){return f().join(h,`${a}.json`)}async function j(a){try{let b=await d.promises.readFile(i(a),"utf8"),c=JSON.parse(b);if("string"!=typeof c.apiKey||0===c.apiKey.length)return null;return{apiKey:c.apiKey,..."string"==typeof c.model?{model:c.model}:{},..."string"==typeof c.videoModel?{videoModel:c.videoModel}:{},updatedAt:"string"==typeof c.updatedAt?c.updatedAt:new Date().toISOString()}}catch{return null}}async function k(a){let b=await j(a);return b?.apiKey??null}async function l(a,b){let c=i(a);await d.promises.mkdir(f().dirname(c),{recursive:!0}),await d.promises.writeFile(c,JSON.stringify(b,null,2)+"\n",{encoding:"utf8",mode:384});try{await d.promises.chmod(c,384)}catch{}}async function m(a,b){let c=await j(a);await l(a,{...c??{},apiKey:b.trim(),updatedAt:new Date().toISOString()})}async function n(a,b){let c=await j(a);if(!c)throw Error(`API key for "${a}" is not saved`);let d={apiKey:c.apiKey,updatedAt:new Date().toISOString()},e=void 0===b.model?c.model:b.model??void 0,f=void 0===b.videoModel?c.videoModel:b.videoModel??void 0;e&&(d.model=e),f&&(d.videoModel=f),await l(a,d)}async function o(a){return await k(a)!==null}},49353:(a,b,c)=>{c.d(b,{j:()=>j});var d=c(73024),e=c(76760),f=c.n(e),g=c(30192),h=c.n(g),i=c(13474);async function j(a){var b;let{rootPath:c,directive:e,provenance:g}=a,j=k(e.kind)||"note",m=new Date().toISOString().slice(0,10),n=((b=e.date)&&/^\d{4}-\d{2}-\d{2}$/.test(b)?b:null)??m,o=k(e.slug&&e.slug.trim()?e.slug:e.title)||"entry",p=`${n}-${o}`,q=f().join((0,i.FF)(c),j);await d.promises.mkdir(q,{recursive:!0});let r=await l(q,p,".md"),s={title:e.title,kind:j,date:n,version:1,...e.meta&&"object"==typeof e.meta?e.meta:{}};g&&(s.createdBy=`${g.kind}:${g.id}${g.version?"@"+g.version:""}`);let t=(e.body??"").replace(/\r\n/g,"\n").trimEnd(),u=h().stringify(t?t+"\n":"",s);await d.promises.writeFile(r,u,"utf8");let v=f().relative((0,i.FF)(c),r).split(f().sep).join("/");return{kind:j,title:e.title,relPath:v,absPath:r}}function k(a){return a.normalize("NFKD").toLowerCase().replace(/[^\p{L}\p{N}]+/gu,"-").replace(/^-+|-+$/g,"").slice(0,60)}async function l(a,b,c){let d=f().join(a,b+c),e=1;for(;await m(d);){if(e>99){d=f().join(a,`${b}-${Date.now().toString(36)}${c}`);break}d=f().join(a,`${b}-${++e}${c}`)}return d}async function m(a){try{return await d.promises.access(a),!0}catch{return!1}}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=3332,exports.ids=[3332],exports.modules={
|
|
1
|
+
"use strict";exports.id=3332,exports.ids=[3332],exports.modules={24367:(a,b,c)=>{c.d(b,{T:()=>e});var d=c(3265);let e=(0,d.createServerReference)("6075f400db02bf919611c69832eb5b9a477cd4a638",d.callServer,void 0,d.findSourceMapURL,"beginOAuthAction")},33332:(a,b,c)=>{c.d(b,{beginOAuthAction:()=>g.T,getOAuthClientAction:()=>f.J,listOAuthStatusesAction:()=>d.o,saveOAuthClientAction:()=>e.S});var d=c(35758),e=c(44440),f=c(83172),g=c(24367)},35758:(a,b,c)=>{c.d(b,{o:()=>e});var d=c(3265);let e=(0,d.createServerReference)("00813adca886d08c77212e0bdb87e4a5dd2cc35f2e",d.callServer,void 0,d.findSourceMapURL,"listOAuthStatusesAction")},44440:(a,b,c)=>{c.d(b,{S:()=>e});var d=c(3265);let e=(0,d.createServerReference)("40926a153352e19d9f49d7c7a85b04ebd254f2732d",d.callServer,void 0,d.findSourceMapURL,"saveOAuthClientAction")},83172:(a,b,c)=>{c.d(b,{J:()=>e});var d=c(3265);let e=(0,d.createServerReference)("40cf3e7cf17ce0b0dfe3e26301f79f81239d673621",d.callServer,void 0,d.findSourceMapURL,"getOAuthClientAction")}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=3378,exports.ids=[3378],exports.modules={33378:(a,b,c)=>{c.d(b,{diagram:()=>D});var d,e=c(17520);c(35836),c(21460),c(16919),c(27318),c(49601),c(80713),c(53724),c(40716),c(63660);var f=c(38371),g=c(10340),h=c(57440),i=c(31314),j=c(70539),k=c(82249),l=(0,h.K2)(a=>a.append("circle").attr("class","start-state").attr("r",(0,g.D7)().state.sizeUnit).attr("cx",(0,g.D7)().state.padding+(0,g.D7)().state.sizeUnit).attr("cy",(0,g.D7)().state.padding+(0,g.D7)().state.sizeUnit),"drawStartState"),m=(0,h.K2)(a=>a.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",(0,g.D7)().state.textHeight).attr("class","divider").attr("x2",2*(0,g.D7)().state.textHeight).attr("y1",0).attr("y2",0),"drawDivider"),n=(0,h.K2)((a,b)=>{let c=a.append("text").attr("x",2*(0,g.D7)().state.padding).attr("y",(0,g.D7)().state.textHeight+2*(0,g.D7)().state.padding).attr("font-size",(0,g.D7)().state.fontSize).attr("class","state-title").text(b.id),d=c.node().getBBox();return a.insert("rect",":first-child").attr("x",(0,g.D7)().state.padding).attr("y",(0,g.D7)().state.padding).attr("width",d.width+2*(0,g.D7)().state.padding).attr("height",d.height+2*(0,g.D7)().state.padding).attr("rx",(0,g.D7)().state.radius),c},"drawSimpleState"),o=(0,h.K2)((a,b)=>{let c=(0,h.K2)(function(a,b,c){let d=a.append("tspan").attr("x",2*(0,g.D7)().state.padding).text(b);c||d.attr("dy",(0,g.D7)().state.textHeight)},"addTspan"),d=a.append("text").attr("x",2*(0,g.D7)().state.padding).attr("y",(0,g.D7)().state.textHeight+1.3*(0,g.D7)().state.padding).attr("font-size",(0,g.D7)().state.fontSize).attr("class","state-title").text(b.descriptions[0]).node().getBBox(),e=d.height,f=a.append("text").attr("x",(0,g.D7)().state.padding).attr("y",e+.4*(0,g.D7)().state.padding+(0,g.D7)().state.dividerMargin+(0,g.D7)().state.textHeight).attr("class","state-description"),i=!0,j=!0;b.descriptions.forEach(function(a){i||(c(f,a,j),j=!1),i=!1});let k=a.append("line").attr("x1",(0,g.D7)().state.padding).attr("y1",(0,g.D7)().state.padding+e+(0,g.D7)().state.dividerMargin/2).attr("y2",(0,g.D7)().state.padding+e+(0,g.D7)().state.dividerMargin/2).attr("class","descr-divider"),l=f.node().getBBox(),m=Math.max(l.width,d.width);return k.attr("x2",m+3*(0,g.D7)().state.padding),a.insert("rect",":first-child").attr("x",(0,g.D7)().state.padding).attr("y",(0,g.D7)().state.padding).attr("width",m+2*(0,g.D7)().state.padding).attr("height",l.height+e+2*(0,g.D7)().state.padding).attr("rx",(0,g.D7)().state.radius),a},"drawDescrState"),p=(0,h.K2)((a,b,c)=>{let d,e=(0,g.D7)().state.padding,f=2*(0,g.D7)().state.padding,h=a.node().getBBox(),i=h.width,j=h.x,k=a.append("text").attr("x",0).attr("y",(0,g.D7)().state.titleShift).attr("font-size",(0,g.D7)().state.fontSize).attr("class","state-title").text(b.id),l=k.node().getBBox().width+f,m=Math.max(l,i);m===i&&(m+=f);let n=a.node().getBBox();b.doc,d=j-e,l>i&&(d=(i-m)/2+e),Math.abs(j-n.x)<e&&l>i&&(d=j-(l-i)/2);let o=1-(0,g.D7)().state.textHeight;return a.insert("rect",":first-child").attr("x",d).attr("y",o).attr("class",c?"alt-composit":"composit").attr("width",m).attr("height",n.height+(0,g.D7)().state.textHeight+(0,g.D7)().state.titleShift+1).attr("rx","0"),k.attr("x",d+e),l<=i&&k.attr("x",j+(m-f)/2-l/2+e),a.insert("rect",":first-child").attr("x",d).attr("y",(0,g.D7)().state.titleShift-(0,g.D7)().state.textHeight-(0,g.D7)().state.padding).attr("width",m).attr("height",3*(0,g.D7)().state.textHeight).attr("rx",(0,g.D7)().state.radius),a.insert("rect",":first-child").attr("x",d).attr("y",(0,g.D7)().state.titleShift-(0,g.D7)().state.textHeight-(0,g.D7)().state.padding).attr("width",m).attr("height",n.height+3+2*(0,g.D7)().state.textHeight).attr("rx",(0,g.D7)().state.radius),a},"addTitleAndBox"),q=(0,h.K2)(a=>(a.append("circle").attr("class","end-state-outer").attr("r",(0,g.D7)().state.sizeUnit+(0,g.D7)().state.miniPadding).attr("cx",(0,g.D7)().state.padding+(0,g.D7)().state.sizeUnit+(0,g.D7)().state.miniPadding).attr("cy",(0,g.D7)().state.padding+(0,g.D7)().state.sizeUnit+(0,g.D7)().state.miniPadding),a.append("circle").attr("class","end-state-inner").attr("r",(0,g.D7)().state.sizeUnit).attr("cx",(0,g.D7)().state.padding+(0,g.D7)().state.sizeUnit+2).attr("cy",(0,g.D7)().state.padding+(0,g.D7)().state.sizeUnit+2)),"drawEndState"),r=(0,h.K2)((a,b)=>{let c=(0,g.D7)().state.forkWidth,d=(0,g.D7)().state.forkHeight;if(b.parentId){let a=c;c=d,d=a}return a.append("rect").style("stroke","black").style("fill","black").attr("width",c).attr("height",d).attr("x",(0,g.D7)().state.padding).attr("y",(0,g.D7)().state.padding)},"drawForkJoinState"),s=(0,h.K2)((a,b,c,d)=>{let e=0,f=d.append("text");f.style("text-anchor","start"),f.attr("class","noteText");let h=a.replace(/\r\n/g,"<br/>"),i=(h=h.replace(/\n/g,"<br/>")).split(g.Y2.lineBreakRegex),j=1.25*(0,g.D7)().state.noteMargin;for(let a of i){let d=a.trim();if(d.length>0){let a=f.append("tspan");a.text(d),0===j&&(j+=a.node().getBBox().height),e+=j,a.attr("x",b+(0,g.D7)().state.noteMargin),a.attr("y",c+e+1.25*(0,g.D7)().state.noteMargin)}}return{textWidth:f.node().getBBox().width,textHeight:e}},"_drawLongText"),t=(0,h.K2)((a,b)=>{b.attr("class","state-note");let c=b.append("rect").attr("x",0).attr("y",(0,g.D7)().state.padding),{textWidth:d,textHeight:e}=s(a,0,0,b.append("g"));return c.attr("height",e+2*(0,g.D7)().state.noteMargin),c.attr("width",d+2*(0,g.D7)().state.noteMargin),c},"drawNote"),u=(0,h.K2)(function(a,b){let c=b.id,d={id:c,label:b.id,width:0,height:0},e=a.append("g").attr("id",c).attr("class","stateGroup");"start"===b.type&&l(e),"end"===b.type&&q(e),("fork"===b.type||"join"===b.type)&&r(e,b),"note"===b.type&&t(b.note.text,e),"divider"===b.type&&m(e),"default"===b.type&&0===b.descriptions.length&&n(e,b),"default"===b.type&&b.descriptions.length>0&&o(e,b);let f=e.node().getBBox();return d.width=f.width+2*(0,g.D7)().state.padding,d.height=f.height+2*(0,g.D7)().state.padding,d},"drawState"),v=0,w=(0,h.K2)(function(a,b,c){let d=(0,h.K2)(function(a){switch(a){case e.u4.relationType.AGGREGATION:return"aggregation";case e.u4.relationType.EXTENSION:return"extension";case e.u4.relationType.COMPOSITION:return"composition";case e.u4.relationType.DEPENDENCY:return"dependency"}},"getRelationType");b.points=b.points.filter(a=>!Number.isNaN(a.y));let j=b.points,k=(0,i.n8j)().x(function(a){return a.x}).y(function(a){return a.y}).curve(i.qrM),l=a.append("path").attr("d",k(j)).attr("id","edge"+v).attr("class","transition"),m="";if((0,g.D7)().state.arrowMarkerAbsolute&&(m=(0,g.ID)(!0)),l.attr("marker-end","url("+m+"#"+d(e.u4.relationType.DEPENDENCY)+"End)"),void 0!==c.title){let d=a.append("g").attr("class","stateLabel"),{x:e,y:i}=f._K.calcLabelPosition(b.points),j=g.Y2.getRows(c.title),k=0,l=[],m=0,n=0;for(let a=0;a<=j.length;a++){let b=d.append("text").attr("text-anchor","middle").text(j[a]).attr("x",e).attr("y",i+k),c=b.node().getBBox();m=Math.max(m,c.width),n=Math.min(n,c.x),h.Rm.info(c.x,e,i+k),0===k&&(k=b.node().getBBox().height,h.Rm.info("Title height",k,i)),l.push(b)}let o=k*j.length;if(j.length>1){let a=(j.length-1)*k*.5;l.forEach((b,c)=>b.attr("y",i+c*k-a)),o=k*j.length}let p=d.node().getBBox();d.insert("rect",":first-child").attr("class","box").attr("x",e-m/2-(0,g.D7)().state.padding/2).attr("y",i-o/2-(0,g.D7)().state.padding/2-3.5).attr("width",m+(0,g.D7)().state.padding).attr("height",o+(0,g.D7)().state.padding),h.Rm.info(p)}v++},"drawEdge"),x={},y=(0,h.K2)(function(){},"setConf"),z=(0,h.K2)(function(a){a.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),A=(0,h.K2)(function(a,b,c,e){let f;d=(0,g.D7)().state;let j=(0,g.D7)().securityLevel;"sandbox"===j&&(f=(0,i.Ltv)("#i"+b));let k="sandbox"===j?(0,i.Ltv)(f.nodes()[0].contentDocument.body):(0,i.Ltv)("body"),l="sandbox"===j?f.nodes()[0].contentDocument:document;h.Rm.debug("Rendering diagram "+a);let m=k.select(`[id='${b}']`);z(m),C(e.db.getRootDoc(),m.append("g").attr("id",b+"-root"),void 0,!1,k,l,e);let n=d.padding,o=m.node().getBBox(),p=o.width+2*n,q=o.height+2*n;(0,g.a$)(m,q,1.75*p,d.useMaxWidth),m.attr("viewBox",`${o.x-d.padding} ${o.y-d.padding} `+p+" "+q)},"draw"),B=(0,h.K2)(a=>a?a.length*d.fontSizeFactor:1,"getLabelWidth"),C=(0,h.K2)((a,b,c,e,f,i,l)=>{let m,n=new k.T({compound:!0,multigraph:!0}),o=!0;for(m=0;m<a.length;m++)if("relation"===a[m].stmt){o=!1;break}c?n.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:o?1:d.edgeLengthFactor,nodeSep:o?1:50,isMultiGraph:!0}):n.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:o?1:d.edgeLengthFactor,nodeSep:o?1:50,ranker:"tight-tree",isMultiGraph:!0}),n.setDefaultEdgeLabel(function(){return{}});let q=l.db.getStates(),r=l.db.getRelations();for(let a of Object.keys(q)){let g,h=q[a];if(c&&(h.parentId=c),h.doc){let a=b.append("g").attr("id",h.id).attr("class","stateGroup");g=C(h.doc,a,h.id,!e,f,i,l);{let b=(a=p(a,h,e)).node().getBBox();g.width=b.width,g.height=b.height+d.padding/2,x[h.id]={y:d.compositTitleSize}}}else g=u(b,h,n);if(h.note){let a=u(b,{descriptions:[],id:h.id+"-note",note:h.note,type:"note"},n);"left of"===h.note.position?(n.setNode(g.id+"-note",a),n.setNode(g.id,g)):(n.setNode(g.id,g),n.setNode(g.id+"-note",a)),n.setParent(g.id,g.id+"-group"),n.setParent(g.id+"-note",g.id+"-group")}else n.setNode(g.id,g)}h.Rm.debug("Count=",n.nodeCount(),n);let s=0;r.forEach(function(a){s++,h.Rm.debug("Setting edge",a),n.setEdge(a.id1,a.id2,{relation:a,width:B(a.title),height:d.labelHeight*g.Y2.getRows(a.title).length,labelpos:"c"},"id"+s)}),(0,j.Zp)(n),h.Rm.debug("Graph after layout",n.nodes());let t=b.node();n.nodes().forEach(function(a){void 0!==a&&void 0!==n.node(a)?(h.Rm.warn("Node "+a+": "+JSON.stringify(n.node(a))),f.select("#"+t.id+" #"+a).attr("transform","translate("+(n.node(a).x-n.node(a).width/2)+","+(n.node(a).y+(x[a]?x[a].y:0)-n.node(a).height/2)+" )"),f.select("#"+t.id+" #"+a).attr("data-x-shift",n.node(a).x-n.node(a).width/2),i.querySelectorAll("#"+t.id+" #"+a+" .divider").forEach(a=>{let b=a.parentElement,c=0,d=0;b&&(b.parentElement&&(c=b.parentElement.getBBox().width),Number.isNaN(d=parseInt(b.getAttribute("data-x-shift"),10))&&(d=0)),a.setAttribute("x1",0-d+8),a.setAttribute("x2",c-d-8)})):h.Rm.debug("No Node "+a+": "+JSON.stringify(n.node(a)))});let v=t.getBBox();n.edges().forEach(function(a){void 0!==a&&void 0!==n.edge(a)&&(h.Rm.debug("Edge "+a.v+" -> "+a.w+": "+JSON.stringify(n.edge(a))),w(b,n.edge(a),n.edge(a).relation))});let y={id:c||"root",label:c||"root",width:0,height:0};return y.width=(v=t.getBBox()).width+2*d.padding,y.height=v.height+2*d.padding,h.Rm.debug("Doc rendered",y,n),y},"renderDoc"),D={parser:e.Zk,get db(){return new e.u4(1)},renderer:{setConf:y,draw:A},styles:e.tM,init:(0,h.K2)(a=>{a.state||(a.state={}),a.state.arrowMarkerAbsolute=a.arrowMarkerAbsolute},"init")}}};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";exports.id=352,exports.ids=[352],exports.modules={21460:(a,b,c)=>{c.d(b,{P:()=>f});var d=c(10340),e=c(57440),f=(0,e.K2)((a,b,c,f)=>{a.attr("class",c);let{width:i,height:j,x:k,y:l}=g(a,b);(0,d.a$)(a,j,i,f);let m=h(k,l,i,j,b);a.attr("viewBox",m),e.Rm.debug(`viewBox configured: ${m} with padding: ${b}`)},"setupViewPortForSVG"),g=(0,e.K2)((a,b)=>{let c=a.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:c.width+2*b,height:c.height+2*b,x:c.x,y:c.y}},"calculateDimensionsWithPadding"),h=(0,e.K2)((a,b,c,d,e)=>`${a-e} ${b-e} ${c} ${d}`,"createViewBox")},30352:(a,b,c)=>{c.d(b,{diagram:()=>p});var d=c(35836),e=c(21460),f=c(16919);c(27318),c(49601),c(80713),c(53724),c(40716),c(63660);var g=c(38371),h=c(10340),i=c(57440),j=function(){var a=(0,i.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[1,3],c=[1,4],d=[1,5],e=[1,6],f=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],g=[1,22],h=[2,7],j=[1,26],k=[1,27],l=[1,28],m=[1,29],n=[1,33],o=[1,34],p=[1,35],q=[1,36],r=[1,37],s=[1,38],t=[1,24],u=[1,31],v=[1,32],w=[1,30],x=[1,39],y=[1,40],z=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],A=[1,61],B=[89,90],C=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],D=[27,29],E=[1,70],F=[1,71],G=[1,72],H=[1,73],I=[1,74],J=[1,75],K=[1,76],L=[1,83],M=[1,80],N=[1,84],O=[1,85],P=[1,86],Q=[1,87],R=[1,88],S=[1,89],T=[1,90],U=[1,91],V=[1,92],W=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],X=[63,64],Y=[1,101],Z=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],$=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],_=[1,110],aa=[1,106],ab=[1,107],ac=[1,108],ad=[1,109],ae=[1,111],af=[1,116],ag=[1,117],ah=[1,114],ai=[1,115],aj={trace:(0,i.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:(0,i.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 4:this.$=f[h].trim(),d.setAccTitle(this.$);break;case 5:case 6:this.$=f[h].trim(),d.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:d.setDirection("TB");break;case 18:d.setDirection("BT");break;case 19:d.setDirection("RL");break;case 20:d.setDirection("LR");break;case 21:d.addRequirement(f[h-3],f[h-4]);break;case 22:d.addRequirement(f[h-5],f[h-6]),d.setClass([f[h-5]],f[h-3]);break;case 23:d.setNewReqId(f[h-2]);break;case 24:d.setNewReqText(f[h-2]);break;case 25:d.setNewReqRisk(f[h-2]);break;case 26:d.setNewReqVerifyMethod(f[h-2]);break;case 29:this.$=d.RequirementType.REQUIREMENT;break;case 30:this.$=d.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=d.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=d.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=d.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=d.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=d.RiskLevel.LOW_RISK;break;case 36:this.$=d.RiskLevel.MED_RISK;break;case 37:this.$=d.RiskLevel.HIGH_RISK;break;case 38:this.$=d.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=d.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=d.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=d.VerifyType.VERIFY_TEST;break;case 42:d.addElement(f[h-3]);break;case 43:d.addElement(f[h-5]),d.setClass([f[h-5]],f[h-3]);break;case 44:d.setNewElementType(f[h-2]);break;case 45:d.setNewElementDocRef(f[h-2]);break;case 48:d.addRelationship(f[h-2],f[h],f[h-4]);break;case 49:d.addRelationship(f[h-2],f[h-4],f[h]);break;case 50:this.$=d.Relationships.CONTAINS;break;case 51:this.$=d.Relationships.COPIES;break;case 52:this.$=d.Relationships.DERIVES;break;case 53:this.$=d.Relationships.SATISFIES;break;case 54:this.$=d.Relationships.VERIFIES;break;case 55:this.$=d.Relationships.REFINES;break;case 56:this.$=d.Relationships.TRACES;break;case 57:this.$=f[h-2],d.defineClass(f[h-1],f[h]);break;case 58:d.setClass(f[h-1],f[h]);break;case 59:d.setClass([f[h-2]],f[h]);break;case 60:case 62:case 65:this.$=[f[h]];break;case 61:case 63:this.$=f[h-2].concat([f[h]]);break;case 64:this.$=f[h-2],d.setCssStyle(f[h-1],f[h]);break;case 66:f[h-2].push(f[h]),this.$=f[h-2];break;case 68:this.$=f[h-1]+f[h]}},"anonymous"),table:[{3:1,4:2,6:b,9:c,11:d,13:e},{1:[3]},{3:8,4:2,5:[1,7],6:b,9:c,11:d,13:e},{5:[1,9]},{10:[1,10]},{12:[1,11]},a(f,[2,6]),{3:12,4:2,6:b,9:c,11:d,13:e},{1:[2,2]},{4:17,5:g,7:13,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},a(f,[2,4]),a(f,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:g,7:42,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},{4:17,5:g,7:43,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},{4:17,5:g,7:44,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},{4:17,5:g,7:45,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},{4:17,5:g,7:46,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},{4:17,5:g,7:47,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},{4:17,5:g,7:48,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},{4:17,5:g,7:49,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},{4:17,5:g,7:50,8:h,9:c,11:d,13:e,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:j,22:k,23:l,24:m,25:23,33:25,41:n,42:o,43:p,44:q,45:r,46:s,54:t,72:u,74:v,77:w,89:x,90:y},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},a(z,[2,17]),a(z,[2,18]),a(z,[2,19]),a(z,[2,20]),{30:60,33:62,75:A,89:x,90:y},{30:63,33:62,75:A,89:x,90:y},{30:64,33:62,75:A,89:x,90:y},a(B,[2,29]),a(B,[2,30]),a(B,[2,31]),a(B,[2,32]),a(B,[2,33]),a(B,[2,34]),a(C,[2,81]),a(C,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},a(D,[2,79]),a(D,[2,80]),{27:[1,67],29:[1,68]},a(D,[2,85]),a(D,[2,86]),{62:69,65:E,66:F,67:G,68:H,69:I,70:J,71:K},{62:77,65:E,66:F,67:G,68:H,69:I,70:J,71:K},{30:78,33:62,75:A,89:x,90:y},{73:79,75:L,76:M,78:81,79:82,80:N,81:O,82:P,83:Q,84:R,85:S,86:T,87:U,88:V},a(W,[2,60]),a(W,[2,62]),{73:93,75:L,76:M,78:81,79:82,80:N,81:O,82:P,83:Q,84:R,85:S,86:T,87:U,88:V},{30:94,33:62,75:A,76:M,89:x,90:y},{5:[1,95]},{30:96,33:62,75:A,89:x,90:y},{5:[1,97]},{30:98,33:62,75:A,89:x,90:y},{63:[1,99]},a(X,[2,50]),a(X,[2,51]),a(X,[2,52]),a(X,[2,53]),a(X,[2,54]),a(X,[2,55]),a(X,[2,56]),{64:[1,100]},a(z,[2,59],{76:M}),a(z,[2,64],{76:Y}),{33:103,75:[1,102],89:x,90:y},a(Z,[2,65],{79:104,75:L,80:N,81:O,82:P,83:Q,84:R,85:S,86:T,87:U,88:V}),a($,[2,67]),a($,[2,69]),a($,[2,70]),a($,[2,71]),a($,[2,72]),a($,[2,73]),a($,[2,74]),a($,[2,75]),a($,[2,76]),a($,[2,77]),a($,[2,78]),a(z,[2,57],{76:Y}),a(z,[2,58],{76:M}),{5:_,28:105,31:aa,34:ab,36:ac,38:ad,40:ae},{27:[1,112],76:M},{5:af,40:ag,56:113,57:ah,59:ai},{27:[1,118],76:M},{33:119,89:x,90:y},{33:120,89:x,90:y},{75:L,78:121,79:82,80:N,81:O,82:P,83:Q,84:R,85:S,86:T,87:U,88:V},a(W,[2,61]),a(W,[2,63]),a($,[2,68]),a(z,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:_,28:126,31:aa,34:ab,36:ac,38:ad,40:ae},a(z,[2,28]),{5:[1,127]},a(z,[2,42]),{32:[1,128]},{32:[1,129]},{5:af,40:ag,56:130,57:ah,59:ai},a(z,[2,47]),{5:[1,131]},a(z,[2,48]),a(z,[2,49]),a(Z,[2,66],{79:104,75:L,80:N,81:O,82:P,83:Q,84:R,85:S,86:T,87:U,88:V}),{33:132,89:x,90:y},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},a(z,[2,27]),{5:_,28:145,31:aa,34:ab,36:ac,38:ad,40:ae},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},a(z,[2,46]),{5:af,40:ag,56:152,57:ah,59:ai},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},a(z,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},a(z,[2,43]),{5:_,28:159,31:aa,34:ab,36:ac,38:ad,40:ae},{5:_,28:160,31:aa,34:ab,36:ac,38:ad,40:ae},{5:_,28:161,31:aa,34:ab,36:ac,38:ad,40:ae},{5:_,28:162,31:aa,34:ab,36:ac,38:ad,40:ae},{5:af,40:ag,56:163,57:ah,59:ai},{5:af,40:ag,56:164,57:ah,59:ai},a(z,[2,23]),a(z,[2,24]),a(z,[2,25]),a(z,[2,26]),a(z,[2,44]),a(z,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:(0,i.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,i.K2)(function(a){var b=this,c=[0],d=[],e=[null],f=[],g=this.table,h="",j=0,k=0,l=0,m=f.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;f.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)(function(a){c.length=c.length-2*a,e.length=e.length-a,f.length=f.length-a},"popStack"),(0,i.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=g[v]&&g[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],g[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(j+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),e.push(n.yytext),f.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(k=n.yyleng,h=n.yytext,j=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=e[e.length-z],C._$={first_line:f[f.length-(z||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(z||1)].first_column,last_column:f[f.length-1].last_column},r&&(C._$.range=[f[f.length-(z||1)].range[0],f[f.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[h,k,j,o,w[1],e,f].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),e=e.slice(0,-1*z),f=f.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),e.push(C.$),f.push(C._$),A=g[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function ak(){this.yy={}}return aj.lexer={EOF:1,parseError:(0,i.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,i.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,i.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},"input"),unput:(0,i.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var e=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,i.K2)(function(){return this._more=!0,this},"more"),reject:(0,i.K2)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,i.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,i.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,i.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,i.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,i.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,i.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,i.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,i.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,i.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,i.K2)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,i.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,i.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,i.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)(function(a,b,c,d){switch(c){case 0:return"title";case 1:return this.begin("acc_title"),9;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),11;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:case 58:case 65:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:case 14:case 15:case 56:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;case 50:case 68:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 57:case 64:this.begin("string");break;case 59:return this.begin("style"),72;case 60:return this.begin("style"),74;case 61:return 61;case 62:return 64;case 63:return 63;case 66:return"qString";case 67:return b.yytext=b.yytext.trim(),89;case 69:return 80;case 70:return 76}},"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}},(0,i.K2)(ak,"Parser"),ak.prototype=aj,aj.Parser=ak,new ak}();j.parser=j;var k=class{constructor(){this.relations=[],this.latestRequirement=this.getInitialRequirement(),this.requirements=new Map,this.latestElement=this.getInitialElement(),this.elements=new Map,this.classes=new Map,this.direction="TB",this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},this.setAccTitle=h.SV,this.getAccTitle=h.iN,this.setAccDescription=h.EI,this.getAccDescription=h.m7,this.setDiagramTitle=h.ke,this.getDiagramTitle=h.ab,this.getConfig=(0,i.K2)(()=>(0,h.D7)().requirement,"getConfig"),this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{(0,i.K2)(this,"RequirementDB")}getDirection(){return this.direction}setDirection(a){this.direction=a}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(a,b){return this.requirements.has(a)||this.requirements.set(a,{name:a,type:b,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]}),this.resetLatestRequirement(),this.requirements.get(a)}getRequirements(){return this.requirements}setNewReqId(a){void 0!==this.latestRequirement&&(this.latestRequirement.requirementId=a)}setNewReqText(a){void 0!==this.latestRequirement&&(this.latestRequirement.text=a)}setNewReqRisk(a){void 0!==this.latestRequirement&&(this.latestRequirement.risk=a)}setNewReqVerifyMethod(a){void 0!==this.latestRequirement&&(this.latestRequirement.verifyMethod=a)}addElement(a){return this.elements.has(a)||(this.elements.set(a,{name:a,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),i.Rm.info("Added new element: ",a)),this.resetLatestElement(),this.elements.get(a)}getElements(){return this.elements}setNewElementType(a){void 0!==this.latestElement&&(this.latestElement.type=a)}setNewElementDocRef(a){void 0!==this.latestElement&&(this.latestElement.docRef=a)}addRelationship(a,b,c){this.relations.push({type:a,src:b,dst:c})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,(0,h.IU)()}setCssStyle(a,b){for(let c of a){let a=this.requirements.get(c)??this.elements.get(c);if(!b||!a)return;for(let c of b)c.includes(",")?a.cssStyles.push(...c.split(",")):a.cssStyles.push(c)}}setClass(a,b){for(let c of a){let a=this.requirements.get(c)??this.elements.get(c);if(a)for(let c of b){a.classes.push(c);let b=this.classes.get(c)?.styles;b&&a.cssStyles.push(...b)}}}defineClass(a,b){for(let c of a){let a=this.classes.get(c);void 0===a&&(a={id:c,styles:[],textStyles:[]},this.classes.set(c,a)),b&&b.forEach(function(b){if(/color/.exec(b)){let c=b.replace("fill","bgFill");a.textStyles.push(c)}a.styles.push(b)}),this.requirements.forEach(a=>{a.classes.includes(c)&&a.cssStyles.push(...b.flatMap(a=>a.split(",")))}),this.elements.forEach(a=>{a.classes.includes(c)&&a.cssStyles.push(...b.flatMap(a=>a.split(",")))})}}getClasses(){return this.classes}getData(){let a=(0,h.D7)(),b=[],c=[];for(let c of this.requirements.values())c.id=c.name,c.cssStyles=c.cssStyles,c.cssClasses=c.classes.join(" "),c.shape="requirementBox",c.look=a.look,c.colorIndex=b.length,b.push(c);for(let c of this.elements.values())c.shape="requirementBox",c.look=a.look,c.id=c.name,c.cssStyles=c.cssStyles,c.cssClasses=c.classes.join(" "),c.colorIndex=b.length,b.push(c);for(let b of this.relations){let d=0,e=b.type===this.Relationships.CONTAINS,f={id:`${b.src}-${b.dst}-${d}`,start:this.requirements.get(b.src)?.name??this.elements.get(b.src)?.name,end:this.requirements.get(b.dst)?.name??this.elements.get(b.dst)?.name,label:`<<${b.type}>>`,classes:"relationshipLine",style:["fill:none",e?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:e?"normal":"dashed",arrowTypeStart:e?"requirement_contains":"",arrowTypeEnd:e?"":"requirement_arrow",look:a.look,labelType:"markdown"};c.push(f),d++}return{nodes:b,edges:c,other:{},config:a,direction:this.getDirection()}}},l=(0,i.K2)(a=>{let{themeVariables:b,look:c}=(0,h.zj)(),{bkgColorArray:d,borderColorArray:e}=b;if(!e?.length)return"";let f="";for(let b=0;b<a.THEME_COLOR_LIMIT;b++)f+=`
|
|
2
|
+
|
|
3
|
+
[data-look="${c}"][data-color-id="color-${b}"].node path {
|
|
4
|
+
stroke: ${e[b]};
|
|
5
|
+
fill: ${d?.length?d[b]:""};
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
[data-look="${c}"][data-color-id="color-${b}"].node rect {
|
|
9
|
+
stroke: ${e[b]};
|
|
10
|
+
fill: ${d?.length?d[b]:""};
|
|
11
|
+
}
|
|
12
|
+
`;return f},"genColor"),m=(0,i.K2)(a=>{let{look:b,themeVariables:c}=(0,h.zj)(),{requirementEdgeLabelBackground:d}=c;return`
|
|
13
|
+
${l(a)}
|
|
14
|
+
marker {
|
|
15
|
+
fill: ${a.relationColor};
|
|
16
|
+
stroke: ${a.relationColor};
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
marker.cross {
|
|
20
|
+
stroke: ${a.lineColor};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
svg {
|
|
24
|
+
font-family: ${a.fontFamily};
|
|
25
|
+
font-size: ${a.fontSize};
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.reqBox {
|
|
29
|
+
fill: ${a.requirementBackground};
|
|
30
|
+
fill-opacity: 1.0;
|
|
31
|
+
stroke: ${a.requirementBorderColor};
|
|
32
|
+
stroke-width: ${a.requirementBorderSize};
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.reqTitle, .reqLabel{
|
|
36
|
+
fill: ${a.requirementTextColor};
|
|
37
|
+
}
|
|
38
|
+
.reqLabelBox {
|
|
39
|
+
fill: ${a.relationLabelBackground};
|
|
40
|
+
fill-opacity: 1.0;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.req-title-line {
|
|
44
|
+
stroke: ${a.requirementBorderColor};
|
|
45
|
+
stroke-width: ${a.requirementBorderSize};
|
|
46
|
+
}
|
|
47
|
+
.relationshipLine {
|
|
48
|
+
stroke: ${a.relationColor};
|
|
49
|
+
stroke-width: ${"neo"===b?a.strokeWidth:"1px"};
|
|
50
|
+
}
|
|
51
|
+
.relationshipLabel {
|
|
52
|
+
fill: ${a.relationLabelColor};
|
|
53
|
+
}
|
|
54
|
+
.edgeLabel {
|
|
55
|
+
background-color: ${a.edgeLabelBackground};
|
|
56
|
+
}
|
|
57
|
+
.edgeLabel .label rect {
|
|
58
|
+
fill: ${a.edgeLabelBackground};
|
|
59
|
+
}
|
|
60
|
+
.edgeLabel .label text {
|
|
61
|
+
fill: ${a.relationLabelColor};
|
|
62
|
+
}
|
|
63
|
+
.divider {
|
|
64
|
+
stroke: ${a.nodeBorder};
|
|
65
|
+
stroke-width: 1;
|
|
66
|
+
}
|
|
67
|
+
.label {
|
|
68
|
+
font-family: ${a.fontFamily};
|
|
69
|
+
color: ${a.nodeTextColor||a.textColor};
|
|
70
|
+
}
|
|
71
|
+
.label text,span {
|
|
72
|
+
fill: ${a.nodeTextColor||a.textColor};
|
|
73
|
+
color: ${a.nodeTextColor||a.textColor};
|
|
74
|
+
}
|
|
75
|
+
.labelBkg {
|
|
76
|
+
background-color: ${d??a.edgeLabelBackground};
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
`},"getStyles"),n={};(0,i.VA)(n,{draw:()=>o});var o=(0,i.K2)(async function(a,b,c,j){i.Rm.info("REF0:"),i.Rm.info("Drawing requirement diagram (unified)",b);let{securityLevel:k,state:l,layout:m,look:n}=(0,h.D7)(),o=j.db.getData(),p=(0,d.A)(b,k);o.type=j.type,o.layoutAlgorithm=(0,f.q7)(m),o.nodeSpacing=l?.nodeSpacing??50,o.rankSpacing=l?.rankSpacing??50,o.markers="neo"===n?["requirement_contains_neo","requirement_arrow_neo"]:["requirement_contains","requirement_arrow"],o.diagramId=b,await (0,f.XX)(o,p),g._K.insertTitle(p,"requirementDiagramTitleText",l?.titleTopMargin??25,j.db.getDiagramTitle()),(0,e.P)(p,8,"requirementDiagram",l?.useMaxWidth??!0)},"draw"),p={parser:j,get db(){return new k},renderer:n,styles:m}},35836:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(57440),e=c(31314),f=(0,d.K2)((a,b)=>{let c;return"sandbox"===b&&(c=(0,e.Ltv)("#i"+a)),("sandbox"===b?(0,e.Ltv)(c.nodes()[0].contentDocument.body):(0,e.Ltv)("body")).select(`[id="${a}"]`)},"getDiagramElement")}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=360,exports.ids=[360],exports.modules={70360:(a,b,c)=>{c.d(b,{createPieServices:()=>d.f});var d=c(62929);c(67019)}};
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";exports.id=3746,exports.ids=[3746],exports.modules={43746:(a,b,c)=>{c.d(b,{diagram:()=>F});var d=c(1389),e=c(48492),f=c(88446),g=c(80713);c(53724),c(40716),c(63660),c(38371);var h=c(10340),i=c(57440),j=c(48768),k=c(24794),l=c(94824),m=function(){var a=(0,i.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[1,4],c=[1,13],d=[1,12],e=[1,15],f=[1,16],g=[1,20],h=[1,19],j=[6,7,8],k=[1,26],l=[1,24],m=[1,25],n=[6,7,11],o=[1,31],p=[6,7,11,24],q=[1,6,13,16,17,20,23],r=[1,35],s=[1,36],t=[1,6,7,11,13,16,17,20,23],u=[1,38],v={trace:(0,i.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:(0,i.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 6:case 7:return d;case 8:d.getLogger().trace("Stop NL ");break;case 9:d.getLogger().trace("Stop EOF ");break;case 11:d.getLogger().trace("Stop NL2 ");break;case 12:d.getLogger().trace("Stop EOF2 ");break;case 15:d.getLogger().info("Node: ",f[h-1].id),d.addNode(f[h-2].length,f[h-1].id,f[h-1].descr,f[h-1].type,f[h]);break;case 16:d.getLogger().info("Node: ",f[h].id),d.addNode(f[h-1].length,f[h].id,f[h].descr,f[h].type);break;case 17:d.getLogger().trace("Icon: ",f[h]),d.decorateNode({icon:f[h]});break;case 18:case 23:d.decorateNode({class:f[h]});break;case 19:d.getLogger().trace("SPACELIST");break;case 20:d.getLogger().trace("Node: ",f[h-1].id),d.addNode(0,f[h-1].id,f[h-1].descr,f[h-1].type,f[h]);break;case 21:d.getLogger().trace("Node: ",f[h].id),d.addNode(0,f[h].id,f[h].descr,f[h].type);break;case 22:d.decorateNode({icon:f[h]});break;case 27:d.getLogger().trace("node found ..",f[h-2]),this.$={id:f[h-1],descr:f[h-1],type:d.getType(f[h-2],f[h])};break;case 28:this.$={id:f[h],descr:f[h],type:0};break;case 29:d.getLogger().trace("node found ..",f[h-3]),this.$={id:f[h-3],descr:f[h-1],type:d.getType(f[h-2],f[h])};break;case 30:this.$=f[h-1]+f[h];break;case 31:this.$=f[h]}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:b},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:b},{6:c,7:[1,10],9:9,12:11,13:d,14:14,16:e,17:f,18:17,19:18,20:g,23:h},a(j,[2,3]),{1:[2,2]},a(j,[2,4]),a(j,[2,5]),{1:[2,6],6:c,12:21,13:d,14:14,16:e,17:f,18:17,19:18,20:g,23:h},{6:c,9:22,12:11,13:d,14:14,16:e,17:f,18:17,19:18,20:g,23:h},{6:k,7:l,10:23,11:m},a(n,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:g,23:h}),a(n,[2,19]),a(n,[2,21],{15:30,24:o}),a(n,[2,22]),a(n,[2,23]),a(p,[2,25]),a(p,[2,26]),a(p,[2,28],{20:[1,32]}),{21:[1,33]},{6:k,7:l,10:34,11:m},{1:[2,7],6:c,12:21,13:d,14:14,16:e,17:f,18:17,19:18,20:g,23:h},a(q,[2,14],{7:r,11:s}),a(t,[2,8]),a(t,[2,9]),a(t,[2,10]),a(n,[2,16],{15:37,24:o}),a(n,[2,17]),a(n,[2,18]),a(n,[2,20],{24:u}),a(p,[2,31]),{21:[1,39]},{22:[1,40]},a(q,[2,13],{7:r,11:s}),a(t,[2,11]),a(t,[2,12]),a(n,[2,15],{24:u}),a(p,[2,30]),{22:[1,41]},a(p,[2,27]),a(p,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:(0,i.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,i.K2)(function(a){var b=this,c=[0],d=[],e=[null],f=[],g=this.table,h="",j=0,k=0,l=0,m=f.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;f.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)(function(a){c.length=c.length-2*a,e.length=e.length-a,f.length=f.length-a},"popStack"),(0,i.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=g[v]&&g[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],g[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(j+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),e.push(n.yytext),f.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(k=n.yyleng,h=n.yytext,j=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=e[e.length-z],C._$={first_line:f[f.length-(z||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(z||1)].first_column,last_column:f[f.length-1].last_column},r&&(C._$.range=[f[f.length-(z||1)].range[0],f[f.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[h,k,j,o,w[1],e,f].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),e=e.slice(0,-1*z),f=f.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),e.push(C.$),f.push(C._$),A=g[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function w(){this.yy={}}return v.lexer={EOF:1,parseError:(0,i.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,i.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,i.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},"input"),unput:(0,i.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var e=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,i.K2)(function(){return this._more=!0,this},"more"),reject:(0,i.K2)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,i.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,i.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,i.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,i.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,i.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,i.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,i.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,i.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,i.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,i.K2)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,i.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,i.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,i.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)(function(a,b,c,d){switch(c){case 0:return this.pushState("shapeData"),b.yytext="",24;case 1:return this.pushState("shapeDataStr"),24;case 2:return this.popState(),24;case 3:return b.yytext=b.yytext.replace(/\n\s*/g,"<br/>"),24;case 4:return 24;case 5:case 10:case 29:case 32:this.popState();break;case 6:return a.getLogger().trace("Found comment",b.yytext),6;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;case 11:a.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return a.getLogger().trace("SPACELINE"),6;case 13:return 7;case 14:return 16;case 15:a.getLogger().trace("end icon"),this.popState();break;case 16:return a.getLogger().trace("Exploding node"),this.begin("NODE"),20;case 17:return a.getLogger().trace("Cloud"),this.begin("NODE"),20;case 18:return a.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;case 19:return a.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;case 20:case 21:case 22:case 23:return this.begin("NODE"),20;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 30:a.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return a.getLogger().trace("description:",b.yytext),"NODE_DESCR";case 33:return this.popState(),a.getLogger().trace("node end ))"),"NODE_DEND";case 34:return this.popState(),a.getLogger().trace("node end )"),"NODE_DEND";case 35:return this.popState(),a.getLogger().trace("node end ...",b.yytext),"NODE_DEND";case 36:case 39:case 40:return this.popState(),a.getLogger().trace("node end (("),"NODE_DEND";case 37:case 38:return this.popState(),a.getLogger().trace("node end (-"),"NODE_DEND";case 41:case 42:return a.getLogger().trace("Long description:",b.yytext),21}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}},(0,i.K2)(w,"Parser"),w.prototype=v,v.Parser=w,new w}();m.parser=m;var n=[],o=[],p=0,q={},r=(0,i.K2)(()=>{n=[],o=[],p=0,q={}},"clear"),s=(0,i.K2)(a=>{if(0===n.length)return null;let b=n[0].level,c=null;for(let a=n.length-1;a>=0;a--)if(n[a].level!==b||c||(c=n[a]),n[a].level<b)throw Error('Items without section detected, found section ("'+n[a].label+'")');return a===c?.level?null:c},"getSection"),t=(0,i.K2)(function(){return o},"getSections"),u=(0,i.K2)(function(){let a=[],b=t(),c=(0,h.D7)();for(let d of b){let b={id:d.id,label:(0,h.jZ)(d.label??"",c),labelType:"markdown",isGroup:!0,ticket:d.ticket,shape:"kanbanSection",level:d.level,look:c.look};for(let e of(a.push(b),n.filter(a=>a.parentId===d.id))){let b={id:e.id,parentId:d.id,label:(0,h.jZ)(e.label??"",c),labelType:"markdown",isGroup:!1,ticket:e?.ticket,priority:e?.priority,assigned:e?.assigned,icon:e?.icon,shape:"kanbanItem",level:e.level,rx:5,ry:5,cssStyles:["text-align: left"]};a.push(b)}}return{nodes:a,edges:[],other:{},config:(0,h.D7)()}},"getData"),v=(0,i.K2)((a,b,c,d,e)=>{let g=(0,h.D7)(),i=g.mindmap?.padding??h.UI.mindmap.padding;switch(d){case w.ROUNDED_RECT:case w.RECT:case w.HEXAGON:i*=2}let j={id:(0,h.jZ)(b,g)||"kbn"+p++,level:a,label:(0,h.jZ)(c,g),width:g.mindmap?.maxNodeWidth??h.UI.mindmap.maxNodeWidth,padding:i,isGroup:!1};if(void 0!==e){let a;a=e.includes("\n")?e+"\n":"{\n"+e+"\n}";let b=(0,f.H)(a,{schema:f.r});if(b.shape&&(b.shape!==b.shape.toLowerCase()||b.shape.includes("_")))throw Error(`No such shape: ${b.shape}. Shape names should be lowercase.`);b?.shape&&"kanbanItem"===b.shape&&(j.shape=b?.shape),b?.label&&(j.label=b?.label),b?.icon&&(j.icon=b?.icon.toString()),b?.assigned&&(j.assigned=b?.assigned.toString()),b?.ticket&&(j.ticket=b?.ticket.toString()),b?.priority&&(j.priority=b?.priority)}let k=s(a);k?j.parentId=k.id||"kbn"+p++:o.push(j),n.push(j)},"addNode"),w={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},x=(0,i.K2)((a,b)=>{switch(i.Rm.debug("In get type",a,b),a){case"[":return w.RECT;case"(":return")"===b?w.ROUNDED_RECT:w.CLOUD;case"((":return w.CIRCLE;case")":return w.CLOUD;case"))":return w.BANG;case"{{":return w.HEXAGON;default:return w.DEFAULT}},"getType"),y=(0,i.K2)((a,b)=>{q[a]=b},"setElementForId"),z=(0,i.K2)(a=>{if(!a)return;let b=(0,h.D7)(),c=n[n.length-1];a.icon&&(c.icon=(0,h.jZ)(a.icon,b)),a.class&&(c.cssClasses=(0,h.jZ)(a.class,b))},"decorateNode"),A=(0,i.K2)(a=>{switch(a){case w.DEFAULT:return"no-border";case w.RECT:return"rect";case w.ROUNDED_RECT:return"rounded-rect";case w.CIRCLE:return"circle";case w.CLOUD:return"cloud";case w.BANG:return"bang";case w.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),B=(0,i.K2)(()=>i.Rm,"getLogger"),C=(0,i.K2)(a=>q[a],"getElementById"),D=(0,i.K2)(async(a,b,c,e)=>{i.Rm.debug("Rendering kanban diagram\n"+a);let f=e.db.getData(),j=(0,h.D7)();j.htmlLabels=!1;let k=(0,d.D)(b);for(let a of f.nodes)a.domId=`${b}-${a.id}`;let l=k.append("g");l.attr("class","sections");let m=k.append("g");m.attr("class","items");let n=f.nodes.filter(a=>a.isGroup),o=0,p=[],q=25;for(let a of n){let b=j?.kanban?.sectionWidth||200;a.x=b*(o+=1)+(o-1)*10/2,a.width=b,a.y=0,a.height=3*b,a.rx=5,a.ry=5,a.cssClasses=a.cssClasses+" section-"+o;let c=await (0,g.U)(l,a);q=Math.max(q,c?.labelBBox?.height),p.push(c)}let r=0;for(let a of n){let b=p[r];r+=1;let c=j?.kanban?.sectionWidth||200,d=-(3*c)/2+q,e=d;for(let b of f.nodes.filter(b=>b.parentId===a.id)){if(b.isGroup)throw Error("Groups within groups are not allowed in Kanban diagrams");b.x=a.x,b.width=c-15;let d=(await (0,g.on)(m,b,{config:j})).node().getBBox();b.y=e+d.height/2,await (0,g.U_)(b),e=b.y+d.height/2+5}let h=b.cluster.select("rect"),i=Math.max(e-d+30,50)+(q-25);h.attr("height",i)}(0,h.ot)(void 0,k,j.mindmap?.padding??h.UI.kanban.padding,j.mindmap?.useMaxWidth??h.UI.kanban.useMaxWidth)},"draw"),E=(0,i.K2)(a=>{let b="";for(let b=0;b<a.THEME_COLOR_LIMIT;b++)a["lineColor"+b]=a["lineColor"+b]||a["cScaleInv"+b],(0,j.A)(a["lineColor"+b])?a["lineColor"+b]=(0,k.A)(a["lineColor"+b],20):a["lineColor"+b]=(0,l.A)(a["lineColor"+b],20);let c=(0,i.K2)((b,c)=>a.darkMode?(0,l.A)(b,c):(0,k.A)(b,c),"adjuster");for(let d=0;d<a.THEME_COLOR_LIMIT;d++){let e=""+(17-3*d);b+=`
|
|
2
|
+
.section-${d-1} rect, .section-${d-1} path, .section-${d-1} circle, .section-${d-1} polygon, .section-${d-1} path {
|
|
3
|
+
fill: ${c(a["cScale"+d],10)};
|
|
4
|
+
stroke: ${c(a["cScale"+d],10)};
|
|
5
|
+
|
|
6
|
+
}
|
|
7
|
+
.section-${d-1} text {
|
|
8
|
+
fill: ${a["cScaleLabel"+d]};
|
|
9
|
+
}
|
|
10
|
+
.node-icon-${d-1} {
|
|
11
|
+
font-size: 40px;
|
|
12
|
+
color: ${a["cScaleLabel"+d]};
|
|
13
|
+
}
|
|
14
|
+
.section-edge-${d-1}{
|
|
15
|
+
stroke: ${a["cScale"+d]};
|
|
16
|
+
}
|
|
17
|
+
.edge-depth-${d-1}{
|
|
18
|
+
stroke-width: ${e};
|
|
19
|
+
}
|
|
20
|
+
.section-${d-1} line {
|
|
21
|
+
stroke: ${a["cScaleInv"+d]} ;
|
|
22
|
+
stroke-width: 3;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.disabled, .disabled circle, .disabled text {
|
|
26
|
+
fill: lightgray;
|
|
27
|
+
}
|
|
28
|
+
.disabled text {
|
|
29
|
+
fill: #efefef;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.node rect,
|
|
33
|
+
.node circle,
|
|
34
|
+
.node ellipse,
|
|
35
|
+
.node polygon,
|
|
36
|
+
.node path {
|
|
37
|
+
fill: ${a.background};
|
|
38
|
+
stroke: ${a.nodeBorder};
|
|
39
|
+
stroke-width: 1px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.kanban-ticket-link {
|
|
43
|
+
fill: ${a.background};
|
|
44
|
+
stroke: ${a.nodeBorder};
|
|
45
|
+
text-decoration: underline;
|
|
46
|
+
}
|
|
47
|
+
`}return b},"genSections"),F={db:{clear:r,addNode:v,getSections:t,getData:u,nodeType:w,getType:x,setElementForId:y,decorateNode:z,type2Str:A,getLogger:B,getElementById:C},renderer:{draw:D},parser:m,styles:(0,i.K2)(a=>`
|
|
48
|
+
.edge {
|
|
49
|
+
stroke-width: 3;
|
|
50
|
+
}
|
|
51
|
+
${E(a)}
|
|
52
|
+
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
|
|
53
|
+
fill: ${a.git0};
|
|
54
|
+
}
|
|
55
|
+
.section-root text {
|
|
56
|
+
fill: ${a.gitBranchLabel0};
|
|
57
|
+
}
|
|
58
|
+
.icon-container {
|
|
59
|
+
height:100%;
|
|
60
|
+
display: flex;
|
|
61
|
+
justify-content: center;
|
|
62
|
+
align-items: center;
|
|
63
|
+
}
|
|
64
|
+
.edge {
|
|
65
|
+
fill: none;
|
|
66
|
+
}
|
|
67
|
+
.cluster-label, .label {
|
|
68
|
+
color: ${a.textColor};
|
|
69
|
+
fill: ${a.textColor};
|
|
70
|
+
}
|
|
71
|
+
.kanban-label {
|
|
72
|
+
dy: 1em;
|
|
73
|
+
alignment-baseline: middle;
|
|
74
|
+
text-anchor: middle;
|
|
75
|
+
dominant-baseline: middle;
|
|
76
|
+
text-align: center;
|
|
77
|
+
}
|
|
78
|
+
${(0,e.o)()}
|
|
79
|
+
`,"getStyles")}},48492:(a,b,c)=>{c.d(b,{o:()=>d});var d=(0,c(57440).K2)(()=>`
|
|
80
|
+
/* Font Awesome icon styling - consolidated */
|
|
81
|
+
.label-icon {
|
|
82
|
+
display: inline-block;
|
|
83
|
+
height: 1em;
|
|
84
|
+
overflow: visible;
|
|
85
|
+
vertical-align: -0.125em;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
.node .label-icon path {
|
|
89
|
+
fill: currentColor;
|
|
90
|
+
stroke: revert;
|
|
91
|
+
stroke-width: revert;
|
|
92
|
+
}
|
|
93
|
+
`,"getIconStyles")}};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";exports.id=3811,exports.ids=[3811],exports.modules={41429:(a,b,d)=>{d.d(b,{CP:()=>m,Ck:()=>p,HT:()=>o,PB:()=>n,aC:()=>l,lC:()=>j,m:()=>k,tk:()=>i});var e=d(41553),f=d(77703),g=d(59366),h=d(7285),i=(0,f.K2)((a,b)=>{let d=a.append("rect");if(d.attr("x",b.x),d.attr("y",b.y),d.attr("fill",b.fill),d.attr("stroke",b.stroke),d.attr("width",b.width),d.attr("height",b.height),b.name&&d.attr("name",b.name),b.rx&&d.attr("rx",b.rx),b.ry&&d.attr("ry",b.ry),void 0!==b.attrs)for(let a in b.attrs)d.attr(a,b.attrs[a]);return b.class&&d.attr("class",b.class),d},"drawRect"),j=(0,f.K2)((a,b)=>{i(a,{x:b.startx,y:b.starty,width:b.stopx-b.startx,height:b.stopy-b.starty,fill:b.fill,stroke:b.stroke,class:"rect"}).lower()},"drawBackgroundRect"),k=(0,f.K2)((a,b)=>{let d=b.text.replace(e.H1," "),f=a.append("text");f.attr("x",b.x),f.attr("y",b.y),f.attr("class","legend"),f.style("text-anchor",b.anchor),b.class&&f.attr("class",b.class);let g=f.append("tspan");return g.attr("x",b.x+2*b.textMargin),g.text(d),f},"drawText"),l=(0,f.K2)((a,b,d,e)=>{let f=a.append("image");f.attr("x",b),f.attr("y",d);let h=(0,g.J)(e);f.attr("xlink:href",h)},"drawImage"),m=(0,f.K2)((a,b,d,e)=>{let f=a.append("use");f.attr("x",b),f.attr("y",d);let h=(0,g.J)(e);f.attr("xlink:href",`#${h}`)},"drawEmbeddedImage"),n=(0,f.K2)(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),o=(0,f.K2)(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),p=(0,f.K2)(()=>{let a=(0,h.Ltv)(".mermaidTooltip");return a.empty()&&(a=(0,h.Ltv)("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),a},"createTooltip")},93811:(a,b,d)=>{d.d(b,{diagram:()=>aE});var e,f=d(41429),g=d(86947),h=d(41553),i=d(77703),j=d(7285),k=d(59366),l=function(){var a=(0,i.K2)(function(a,b,d,e){for(d=d||{},e=a.length;e--;d[a[e]]=b);return d},"o"),b=[1,24],d=[1,25],e=[1,26],f=[1,27],g=[1,28],h=[1,63],j=[1,64],k=[1,65],l=[1,66],m=[1,67],n=[1,68],o=[1,69],p=[1,29],q=[1,30],r=[1,31],s=[1,32],t=[1,33],u=[1,34],v=[1,35],w=[1,36],x=[1,37],y=[1,38],z=[1,39],A=[1,40],B=[1,41],C=[1,42],D=[1,43],E=[1,44],F=[1,45],G=[1,46],H=[1,47],I=[1,48],J=[1,50],K=[1,51],L=[1,52],M=[1,53],N=[1,54],O=[1,55],P=[1,56],Q=[1,57],R=[1,58],S=[1,59],T=[1,60],U=[14,42],V=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],W=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],X=[1,82],Y=[1,83],Z=[1,84],$=[1,85],_=[12,14,42],aa=[12,14,33,42],ab=[12,14,33,42,76,77,79,80],ac=[12,33],ad=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],ae={trace:(0,i.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:(0,i.K2)(function(a,b,d,e,f,g,h){var i=g.length-1;switch(f){case 3:e.setDirection("TB");break;case 4:e.setDirection("BT");break;case 5:e.setDirection("RL");break;case 6:e.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:e.setC4Type(g[i-3]);break;case 19:e.setTitle(g[i].substring(6)),this.$=g[i].substring(6);break;case 20:e.setAccDescription(g[i].substring(15)),this.$=g[i].substring(15);break;case 21:this.$=g[i].trim(),e.setTitle(this.$);break;case 22:case 23:this.$=g[i].trim(),e.setAccDescription(this.$);break;case 28:g[i].splice(2,0,"ENTERPRISE"),e.addPersonOrSystemBoundary(...g[i]),this.$=g[i];break;case 29:g[i].splice(2,0,"SYSTEM"),e.addPersonOrSystemBoundary(...g[i]),this.$=g[i];break;case 30:e.addPersonOrSystemBoundary(...g[i]),this.$=g[i];break;case 31:g[i].splice(2,0,"CONTAINER"),e.addContainerBoundary(...g[i]),this.$=g[i];break;case 32:e.addDeploymentNode("node",...g[i]),this.$=g[i];break;case 33:e.addDeploymentNode("nodeL",...g[i]),this.$=g[i];break;case 34:e.addDeploymentNode("nodeR",...g[i]),this.$=g[i];break;case 35:e.popBoundaryParseStack();break;case 39:e.addPersonOrSystem("person",...g[i]),this.$=g[i];break;case 40:e.addPersonOrSystem("external_person",...g[i]),this.$=g[i];break;case 41:e.addPersonOrSystem("system",...g[i]),this.$=g[i];break;case 42:e.addPersonOrSystem("system_db",...g[i]),this.$=g[i];break;case 43:e.addPersonOrSystem("system_queue",...g[i]),this.$=g[i];break;case 44:e.addPersonOrSystem("external_system",...g[i]),this.$=g[i];break;case 45:e.addPersonOrSystem("external_system_db",...g[i]),this.$=g[i];break;case 46:e.addPersonOrSystem("external_system_queue",...g[i]),this.$=g[i];break;case 47:e.addContainer("container",...g[i]),this.$=g[i];break;case 48:e.addContainer("container_db",...g[i]),this.$=g[i];break;case 49:e.addContainer("container_queue",...g[i]),this.$=g[i];break;case 50:e.addContainer("external_container",...g[i]),this.$=g[i];break;case 51:e.addContainer("external_container_db",...g[i]),this.$=g[i];break;case 52:e.addContainer("external_container_queue",...g[i]),this.$=g[i];break;case 53:e.addComponent("component",...g[i]),this.$=g[i];break;case 54:e.addComponent("component_db",...g[i]),this.$=g[i];break;case 55:e.addComponent("component_queue",...g[i]),this.$=g[i];break;case 56:e.addComponent("external_component",...g[i]),this.$=g[i];break;case 57:e.addComponent("external_component_db",...g[i]),this.$=g[i];break;case 58:e.addComponent("external_component_queue",...g[i]),this.$=g[i];break;case 60:e.addRel("rel",...g[i]),this.$=g[i];break;case 61:e.addRel("birel",...g[i]),this.$=g[i];break;case 62:e.addRel("rel_u",...g[i]),this.$=g[i];break;case 63:e.addRel("rel_d",...g[i]),this.$=g[i];break;case 64:e.addRel("rel_l",...g[i]),this.$=g[i];break;case 65:e.addRel("rel_r",...g[i]),this.$=g[i];break;case 66:e.addRel("rel_b",...g[i]),this.$=g[i];break;case 67:g[i].splice(0,1),e.addRel("rel",...g[i]),this.$=g[i];break;case 68:e.updateElStyle("update_el_style",...g[i]),this.$=g[i];break;case 69:e.updateRelStyle("update_rel_style",...g[i]),this.$=g[i];break;case 70:e.updateLayoutConfig("update_layout_config",...g[i]),this.$=g[i];break;case 71:this.$=[g[i]];break;case 72:g[i].unshift(g[i-1]),this.$=g[i];break;case 73:case 75:this.$=g[i].trim();break;case 74:let j={};j[g[i-1].trim()]=g[i].trim(),this.$=j;break;case 76:this.$=""}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{13:70,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{13:71,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{13:72,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{13:73,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{14:[1,74]},a(U,[2,13],{43:23,29:49,30:61,32:62,20:75,34:h,36:j,37:k,38:l,39:m,40:n,41:o,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T}),a(U,[2,14]),a(V,[2,16],{12:[1,76]}),a(U,[2,36],{12:[1,77]}),a(W,[2,19]),a(W,[2,20]),{25:[1,78]},{27:[1,79]},a(W,[2,23]),{35:80,75:81,76:X,77:Y,79:Z,80:$},{35:86,75:81,76:X,77:Y,79:Z,80:$},{35:87,75:81,76:X,77:Y,79:Z,80:$},{35:88,75:81,76:X,77:Y,79:Z,80:$},{35:89,75:81,76:X,77:Y,79:Z,80:$},{35:90,75:81,76:X,77:Y,79:Z,80:$},{35:91,75:81,76:X,77:Y,79:Z,80:$},{35:92,75:81,76:X,77:Y,79:Z,80:$},{35:93,75:81,76:X,77:Y,79:Z,80:$},{35:94,75:81,76:X,77:Y,79:Z,80:$},{35:95,75:81,76:X,77:Y,79:Z,80:$},{35:96,75:81,76:X,77:Y,79:Z,80:$},{35:97,75:81,76:X,77:Y,79:Z,80:$},{35:98,75:81,76:X,77:Y,79:Z,80:$},{35:99,75:81,76:X,77:Y,79:Z,80:$},{35:100,75:81,76:X,77:Y,79:Z,80:$},{35:101,75:81,76:X,77:Y,79:Z,80:$},{35:102,75:81,76:X,77:Y,79:Z,80:$},{35:103,75:81,76:X,77:Y,79:Z,80:$},{35:104,75:81,76:X,77:Y,79:Z,80:$},a(_,[2,59]),{35:105,75:81,76:X,77:Y,79:Z,80:$},{35:106,75:81,76:X,77:Y,79:Z,80:$},{35:107,75:81,76:X,77:Y,79:Z,80:$},{35:108,75:81,76:X,77:Y,79:Z,80:$},{35:109,75:81,76:X,77:Y,79:Z,80:$},{35:110,75:81,76:X,77:Y,79:Z,80:$},{35:111,75:81,76:X,77:Y,79:Z,80:$},{35:112,75:81,76:X,77:Y,79:Z,80:$},{35:113,75:81,76:X,77:Y,79:Z,80:$},{35:114,75:81,76:X,77:Y,79:Z,80:$},{35:115,75:81,76:X,77:Y,79:Z,80:$},{20:116,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{12:[1,118],33:[1,117]},{35:119,75:81,76:X,77:Y,79:Z,80:$},{35:120,75:81,76:X,77:Y,79:Z,80:$},{35:121,75:81,76:X,77:Y,79:Z,80:$},{35:122,75:81,76:X,77:Y,79:Z,80:$},{35:123,75:81,76:X,77:Y,79:Z,80:$},{35:124,75:81,76:X,77:Y,79:Z,80:$},{35:125,75:81,76:X,77:Y,79:Z,80:$},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},a(U,[2,15]),a(V,[2,17],{21:22,19:130,22:b,23:d,24:e,26:f,28:g}),a(U,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:b,23:d,24:e,26:f,28:g,34:h,36:j,37:k,38:l,39:m,40:n,41:o,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T}),a(W,[2,21]),a(W,[2,22]),a(_,[2,39]),a(aa,[2,71],{75:81,35:132,76:X,77:Y,79:Z,80:$}),a(ab,[2,73]),{78:[1,133]},a(ab,[2,75]),a(ab,[2,76]),a(_,[2,40]),a(_,[2,41]),a(_,[2,42]),a(_,[2,43]),a(_,[2,44]),a(_,[2,45]),a(_,[2,46]),a(_,[2,47]),a(_,[2,48]),a(_,[2,49]),a(_,[2,50]),a(_,[2,51]),a(_,[2,52]),a(_,[2,53]),a(_,[2,54]),a(_,[2,55]),a(_,[2,56]),a(_,[2,57]),a(_,[2,58]),a(_,[2,60]),a(_,[2,61]),a(_,[2,62]),a(_,[2,63]),a(_,[2,64]),a(_,[2,65]),a(_,[2,66]),a(_,[2,67]),a(_,[2,68]),a(_,[2,69]),a(_,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},a(ac,[2,28]),a(ac,[2,29]),a(ac,[2,30]),a(ac,[2,31]),a(ac,[2,32]),a(ac,[2,33]),a(ac,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},a(V,[2,18]),a(U,[2,38]),a(aa,[2,72]),a(ab,[2,74]),a(_,[2,24]),a(_,[2,35]),a(ad,[2,25]),a(ad,[2,26],{12:[1,138]}),a(ad,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:(0,i.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var d=Error(a);throw d.hash=b,d}},"parseError"),parse:(0,i.K2)(function(a){var b=this,d=[0],e=[],f=[null],g=[],h=this.table,j="",k=0,l=0,m=0,n=g.slice.call(arguments,1),o=Object.create(this.lexer),p={};for(var q in this.yy)Object.prototype.hasOwnProperty.call(this.yy,q)&&(p[q]=this.yy[q]);o.setInput(a,p),p.lexer=o,p.parser=this,void 0===o.yylloc&&(o.yylloc={});var r=o.yylloc;g.push(r);var s=o.options&&o.options.ranges;function t(){var a;return"number"!=typeof(a=e.pop()||o.lex()||1)&&(a instanceof Array&&(a=(e=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof p.parseError?this.parseError=p.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)(function(a){d.length=d.length-2*a,f.length=f.length-a,g.length=g.length-a},"popStack"),(0,i.K2)(t,"lex");for(var u,v,w,x,y,z,A,B,C,D={};;){if(w=d[d.length-1],this.defaultActions[w]?x=this.defaultActions[w]:(null==u&&(u=t()),x=h[w]&&h[w][u]),void 0===x||!x.length||!x[0]){var E="";for(z in C=[],h[w])this.terminals_[z]&&z>2&&C.push("'"+this.terminals_[z]+"'");E=o.showPosition?"Parse error on line "+(k+1)+":\n"+o.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[u]||u)+"'":"Parse error on line "+(k+1)+": Unexpected "+(1==u?"end of input":"'"+(this.terminals_[u]||u)+"'"),this.parseError(E,{text:o.match,token:this.terminals_[u]||u,line:o.yylineno,loc:r,expected:C})}if(x[0]instanceof Array&&x.length>1)throw Error("Parse Error: multiple actions possible at state: "+w+", token: "+u);switch(x[0]){case 1:d.push(u),f.push(o.yytext),g.push(o.yylloc),d.push(x[1]),u=null,v?(u=v,v=null):(l=o.yyleng,j=o.yytext,k=o.yylineno,r=o.yylloc,m>0&&m--);break;case 2:if(A=this.productions_[x[1]][1],D.$=f[f.length-A],D._$={first_line:g[g.length-(A||1)].first_line,last_line:g[g.length-1].last_line,first_column:g[g.length-(A||1)].first_column,last_column:g[g.length-1].last_column},s&&(D._$.range=[g[g.length-(A||1)].range[0],g[g.length-1].range[1]]),void 0!==(y=this.performAction.apply(D,[j,l,k,p,x[1],f,g].concat(n))))return y;A&&(d=d.slice(0,-1*A*2),f=f.slice(0,-1*A),g=g.slice(0,-1*A)),d.push(this.productions_[x[1]][0]),f.push(D.$),g.push(D._$),B=h[d[d.length-2]][d[d.length-1]],d.push(B);break;case 3:return!0}}return!0},"parse")};function af(){this.yy={}}return ae.lexer={EOF:1,parseError:(0,i.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,i.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,i.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},"input"),unput:(0,i.K2)(function(a){var b=a.length,d=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var e=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),d.length-1&&(this.yylineno-=d.length-1);var f=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:d?(d.length===e.length?this.yylloc.first_column:0)+e[e.length-d.length].length-d[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[f[0],f[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,i.K2)(function(){return this._more=!0,this},"more"),reject:(0,i.K2)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,i.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,i.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,i.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,i.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,i.K2)(function(a,b){var d,e,f;if(this.options.backtrack_lexer&&(f={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(f.yylloc.range=this.yylloc.range.slice(0))),(e=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=e.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:e?e[e.length-1].length-e[e.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],d=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),d)return d;if(this._backtrack)for(var g in f)this[g]=f[g];return!1},"test_match"),next:(0,i.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,d,e,f=this._currentRules(),g=0;g<f.length;g++)if((d=this._input.match(this.rules[f[g]]))&&(!b||d[0].length>b[0].length)){if(b=d,e=g,this.options.backtrack_lexer){if(!1!==(a=this.test_match(d,f[g])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,f[e]))&&a:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,i.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,i.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,i.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,i.K2)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,i.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,i.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,i.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:(0,i.K2)(function(a,b,d,e){switch(d){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),26;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 73:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:case 16:case 70:break;case 14:c;break;case 15:return 12;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;case 23:return this.begin("person"),44;case 24:return this.begin("system_ext_queue"),51;case 25:return this.begin("system_ext_db"),50;case 26:return this.begin("system_ext"),49;case 27:return this.begin("system_queue"),48;case 28:return this.begin("system_db"),47;case 29:return this.begin("system"),46;case 30:return this.begin("boundary"),37;case 31:return this.begin("enterprise_boundary"),34;case 32:return this.begin("system_boundary"),36;case 33:return this.begin("container_ext_queue"),57;case 34:return this.begin("container_ext_db"),56;case 35:return this.begin("container_ext"),55;case 36:return this.begin("container_queue"),54;case 37:return this.begin("container_db"),53;case 38:return this.begin("container"),52;case 39:return this.begin("container_boundary"),38;case 40:return this.begin("component_ext_queue"),63;case 41:return this.begin("component_ext_db"),62;case 42:return this.begin("component_ext"),61;case 43:return this.begin("component_queue"),60;case 44:return this.begin("component_db"),59;case 45:return this.begin("component"),58;case 46:case 47:return this.begin("node"),39;case 48:return this.begin("node_l"),40;case 49:return this.begin("node_r"),41;case 50:return this.begin("rel"),64;case 51:return this.begin("birel"),65;case 52:case 53:return this.begin("rel_u"),66;case 54:case 55:return this.begin("rel_d"),67;case 56:case 57:return this.begin("rel_l"),68;case 58:case 59:return this.begin("rel_r"),69;case 60:return this.begin("rel_b"),70;case 61:return this.begin("rel_index"),71;case 62:return this.begin("update_el_style"),72;case 63:return this.begin("update_rel_style"),73;case 64:return this.begin("update_layout_config"),74;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 67:this.begin("attribute");break;case 68:case 79:this.popState(),this.popState();break;case 69:case 71:return 80;case 72:this.begin("string");break;case 74:case 80:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[65,66,67,68],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}},(0,i.K2)(af,"Parser"),af.prototype=ae,ae.Parser=af,new af}();l.parser=l;var m=[],n=[""],o="global",p="",q=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],r=[],s="",t=!1,u=4,v=2,w=(0,i.K2)(function(){return e},"getC4Type"),x=(0,i.K2)(function(a){e=(0,h.jZ)(a,(0,h.D7)())},"setC4Type"),y=(0,i.K2)(function(a,b,d,e,f,g,h,i,j){if(null==a||null==b||null==d||null==e)return;let k={},l=r.find(a=>a.from===b&&a.to===d);if(l?k=l:r.push(k),k.type=a,k.from=b,k.to=d,k.label={text:e},null==f)k.techn={text:""};else if("object"==typeof f){let[a,b]=Object.entries(f)[0];k[a]={text:b}}else k.techn={text:f};if(null==g)k.descr={text:""};else if("object"==typeof g){let[a,b]=Object.entries(g)[0];k[a]={text:b}}else k.descr={text:g};if("object"==typeof h){let[a,b]=Object.entries(h)[0];k[a]=b}else k.sprite=h;if("object"==typeof i){let[a,b]=Object.entries(i)[0];k[a]=b}else k.tags=i;if("object"==typeof j){let[a,b]=Object.entries(j)[0];k[a]=b}else k.link=j;k.wrap=U()},"addRel"),z=(0,i.K2)(function(a,b,d,e,f,g,h){if(null===b||null===d)return;let i={},j=m.find(a=>a.alias===b);if(j&&b===j.alias?i=j:(i.alias=b,m.push(i)),null==d?i.label={text:""}:i.label={text:d},null==e)i.descr={text:""};else if("object"==typeof e){let[a,b]=Object.entries(e)[0];i[a]={text:b}}else i.descr={text:e};if("object"==typeof f){let[a,b]=Object.entries(f)[0];i[a]=b}else i.sprite=f;if("object"==typeof g){let[a,b]=Object.entries(g)[0];i[a]=b}else i.tags=g;if("object"==typeof h){let[a,b]=Object.entries(h)[0];i[a]=b}else i.link=h;i.typeC4Shape={text:a},i.parentBoundary=o,i.wrap=U()},"addPersonOrSystem"),A=(0,i.K2)(function(a,b,d,e,f,g,h,i){if(null===b||null===d)return;let j={},k=m.find(a=>a.alias===b);if(k&&b===k.alias?j=k:(j.alias=b,m.push(j)),null==d?j.label={text:""}:j.label={text:d},null==e)j.techn={text:""};else if("object"==typeof e){let[a,b]=Object.entries(e)[0];j[a]={text:b}}else j.techn={text:e};if(null==f)j.descr={text:""};else if("object"==typeof f){let[a,b]=Object.entries(f)[0];j[a]={text:b}}else j.descr={text:f};if("object"==typeof g){let[a,b]=Object.entries(g)[0];j[a]=b}else j.sprite=g;if("object"==typeof h){let[a,b]=Object.entries(h)[0];j[a]=b}else j.tags=h;if("object"==typeof i){let[a,b]=Object.entries(i)[0];j[a]=b}else j.link=i;j.wrap=U(),j.typeC4Shape={text:a},j.parentBoundary=o},"addContainer"),B=(0,i.K2)(function(a,b,d,e,f,g,h,i){if(null===b||null===d)return;let j={},k=m.find(a=>a.alias===b);if(k&&b===k.alias?j=k:(j.alias=b,m.push(j)),null==d?j.label={text:""}:j.label={text:d},null==e)j.techn={text:""};else if("object"==typeof e){let[a,b]=Object.entries(e)[0];j[a]={text:b}}else j.techn={text:e};if(null==f)j.descr={text:""};else if("object"==typeof f){let[a,b]=Object.entries(f)[0];j[a]={text:b}}else j.descr={text:f};if("object"==typeof g){let[a,b]=Object.entries(g)[0];j[a]=b}else j.sprite=g;if("object"==typeof h){let[a,b]=Object.entries(h)[0];j[a]=b}else j.tags=h;if("object"==typeof i){let[a,b]=Object.entries(i)[0];j[a]=b}else j.link=i;j.wrap=U(),j.typeC4Shape={text:a},j.parentBoundary=o},"addComponent"),C=(0,i.K2)(function(a,b,d,e,f){if(null===a||null===b)return;let g={},h=q.find(b=>b.alias===a);if(h&&a===h.alias?g=h:(g.alias=a,q.push(g)),null==b?g.label={text:""}:g.label={text:b},null==d)g.type={text:"system"};else if("object"==typeof d){let[a,b]=Object.entries(d)[0];g[a]={text:b}}else g.type={text:d};if("object"==typeof e){let[a,b]=Object.entries(e)[0];g[a]=b}else g.tags=e;if("object"==typeof f){let[a,b]=Object.entries(f)[0];g[a]=b}else g.link=f;g.parentBoundary=o,g.wrap=U(),p=o,o=a,n.push(p)},"addPersonOrSystemBoundary"),D=(0,i.K2)(function(a,b,d,e,f){if(null===a||null===b)return;let g={},h=q.find(b=>b.alias===a);if(h&&a===h.alias?g=h:(g.alias=a,q.push(g)),null==b?g.label={text:""}:g.label={text:b},null==d)g.type={text:"container"};else if("object"==typeof d){let[a,b]=Object.entries(d)[0];g[a]={text:b}}else g.type={text:d};if("object"==typeof e){let[a,b]=Object.entries(e)[0];g[a]=b}else g.tags=e;if("object"==typeof f){let[a,b]=Object.entries(f)[0];g[a]=b}else g.link=f;g.parentBoundary=o,g.wrap=U(),p=o,o=a,n.push(p)},"addContainerBoundary"),E=(0,i.K2)(function(a,b,d,e,f,g,h,i){if(null===b||null===d)return;let j={},k=q.find(a=>a.alias===b);if(k&&b===k.alias?j=k:(j.alias=b,q.push(j)),null==d?j.label={text:""}:j.label={text:d},null==e)j.type={text:"node"};else if("object"==typeof e){let[a,b]=Object.entries(e)[0];j[a]={text:b}}else j.type={text:e};if(null==f)j.descr={text:""};else if("object"==typeof f){let[a,b]=Object.entries(f)[0];j[a]={text:b}}else j.descr={text:f};if("object"==typeof h){let[a,b]=Object.entries(h)[0];j[a]=b}else j.tags=h;if("object"==typeof i){let[a,b]=Object.entries(i)[0];j[a]=b}else j.link=i;j.nodeType=a,j.parentBoundary=o,j.wrap=U(),p=o,o=b,n.push(p)},"addDeploymentNode"),F=(0,i.K2)(function(){o=p,n.pop(),p=n.pop(),n.push(p)},"popBoundaryParseStack"),G=(0,i.K2)(function(a,b,d,e,f,g,h,i,j,k,l){let n=m.find(a=>a.alias===b);if(void 0!==n||void 0!==(n=q.find(a=>a.alias===b))){if(null!=d)if("object"==typeof d){let[a,b]=Object.entries(d)[0];n[a]=b}else n.bgColor=d;if(null!=e)if("object"==typeof e){let[a,b]=Object.entries(e)[0];n[a]=b}else n.fontColor=e;if(null!=f)if("object"==typeof f){let[a,b]=Object.entries(f)[0];n[a]=b}else n.borderColor=f;if(null!=g)if("object"==typeof g){let[a,b]=Object.entries(g)[0];n[a]=b}else n.shadowing=g;if(null!=h)if("object"==typeof h){let[a,b]=Object.entries(h)[0];n[a]=b}else n.shape=h;if(null!=i)if("object"==typeof i){let[a,b]=Object.entries(i)[0];n[a]=b}else n.sprite=i;if(null!=j)if("object"==typeof j){let[a,b]=Object.entries(j)[0];n[a]=b}else n.techn=j;if(null!=k)if("object"==typeof k){let[a,b]=Object.entries(k)[0];n[a]=b}else n.legendText=k;if(null!=l)if("object"==typeof l){let[a,b]=Object.entries(l)[0];n[a]=b}else n.legendSprite=l}},"updateElStyle"),H=(0,i.K2)(function(a,b,d,e,f,g,h){let i=r.find(a=>a.from===b&&a.to===d);if(void 0!==i){if(null!=e)if("object"==typeof e){let[a,b]=Object.entries(e)[0];i[a]=b}else i.textColor=e;if(null!=f)if("object"==typeof f){let[a,b]=Object.entries(f)[0];i[a]=b}else i.lineColor=f;if(null!=g)if("object"==typeof g){let[a,b]=Object.entries(g)[0];i[a]=parseInt(b)}else i.offsetX=parseInt(g);if(null!=h)if("object"==typeof h){let[a,b]=Object.entries(h)[0];i[a]=parseInt(b)}else i.offsetY=parseInt(h)}},"updateRelStyle"),I=(0,i.K2)(function(a,b,d){let e=u,f=v;e="object"==typeof b?parseInt(Object.values(b)[0]):parseInt(b),f="object"==typeof d?parseInt(Object.values(d)[0]):parseInt(d),e>=1&&(u=e),f>=1&&(v=f)},"updateLayoutConfig"),J=(0,i.K2)(function(){return u},"getC4ShapeInRow"),K=(0,i.K2)(function(){return v},"getC4BoundaryInRow"),L=(0,i.K2)(function(){return o},"getCurrentBoundaryParse"),M=(0,i.K2)(function(){return p},"getParentBoundaryParse"),N=(0,i.K2)(function(a){return null==a?m:m.filter(b=>b.parentBoundary===a)},"getC4ShapeArray"),O=(0,i.K2)(function(a){return m.find(b=>b.alias===a)},"getC4Shape"),P=(0,i.K2)(function(a){return Object.keys(N(a))},"getC4ShapeKeys"),Q=(0,i.K2)(function(a){return null==a?q:q.filter(b=>b.parentBoundary===a)},"getBoundaries"),R=(0,i.K2)(function(){return r},"getRels"),S=(0,i.K2)(function(){return s},"getTitle"),T=(0,i.K2)(function(a){t=a},"setWrap"),U=(0,i.K2)(function(){return t},"autoWrap"),V=(0,i.K2)(function(){m=[],q=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],p="",o="global",n=[""],r=[],n=[""],s="",t=!1,u=4,v=2},"clear"),W=(0,i.K2)(function(a){s=(0,h.jZ)(a,(0,h.D7)())},"setTitle"),X={addPersonOrSystem:z,addPersonOrSystemBoundary:C,addContainer:A,addContainerBoundary:D,addComponent:B,addDeploymentNode:E,popBoundaryParseStack:F,addRel:y,updateElStyle:G,updateRelStyle:H,updateLayoutConfig:I,autoWrap:U,setWrap:T,getC4ShapeArray:N,getC4Shape:O,getC4ShapeKeys:P,getBoundaries:Q,getBoundarys:Q,getCurrentBoundaryParse:L,getParentBoundaryParse:M,getRels:R,getTitle:S,getC4Type:w,getC4ShapeInRow:J,getC4BoundaryInRow:K,setAccTitle:h.SV,getAccTitle:h.iN,getAccDescription:h.m7,setAccDescription:h.EI,getConfig:(0,i.K2)(()=>(0,h.D7)().c4,"getConfig"),clear:V,LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:W,setC4Type:x},Y=(0,i.K2)(function(a,b){return(0,f.tk)(a,b)},"drawRect"),Z=(0,i.K2)(function(a,b,d,e,f,g){let h=a.append("image");h.attr("width",b),h.attr("height",d),h.attr("x",e),h.attr("y",f);let i=g.startsWith("data:image/png;base64")?g:(0,k.J)(g);h.attr("xlink:href",i)},"drawImage"),$=(0,i.K2)((a,b,d,e)=>{let f=a.append("g"),g=0;for(let a of b){let b=a.textColor?a.textColor:"#444444",h=a.lineColor?a.lineColor:"#444444",i=a.offsetX?parseInt(a.offsetX):0,j=a.offsetY?parseInt(a.offsetY):0;if(0===g){let b=f.append("line");b.attr("x1",a.startPoint.x),b.attr("y1",a.startPoint.y),b.attr("x2",a.endPoint.x),b.attr("y2",a.endPoint.y),b.attr("stroke-width","1"),b.attr("stroke",h),b.style("fill","none"),"rel_b"!==a.type&&b.attr("marker-end","url(#"+e+"-arrowhead)"),("birel"===a.type||"rel_b"===a.type)&&b.attr("marker-start","url(#"+e+"-arrowend)"),g=-1}else{let b=f.append("path");b.attr("fill","none").attr("stroke-width","1").attr("stroke",h).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),"rel_b"!==a.type&&b.attr("marker-end","url(#"+e+"-arrowhead)"),("birel"===a.type||"rel_b"===a.type)&&b.attr("marker-start","url(#"+e+"-arrowend)")}let k=d.messageFont();aj(d)(a.label.text,f,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+i,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+j,a.label.width,a.label.height,{fill:b},k),a.techn&&""!==a.techn.text&&(k=d.messageFont(),aj(d)("["+a.techn.text+"]",f,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+i,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+d.messageFontSize+5+j,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:b,"font-style":"italic"},k))}},"drawRels"),_=(0,i.K2)(function(a,b,d){let e=a.append("g"),f=b.bgColor?b.bgColor:"none",g=b.borderColor?b.borderColor:"#444444",h=b.fontColor?b.fontColor:"black",i={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};b.nodeType&&(i={"stroke-width":1}),Y(e,{x:b.x,y:b.y,fill:f,stroke:g,width:b.width,height:b.height,rx:2.5,ry:2.5,attrs:i});let j=d.boundaryFont();j.fontWeight="bold",j.fontSize=j.fontSize+2,j.fontColor=h,aj(d)(b.label.text,e,b.x,b.y+b.label.Y,b.width,b.height,{fill:"#444444"},j),b.type&&""!==b.type.text&&((j=d.boundaryFont()).fontColor=h,aj(d)(b.type.text,e,b.x,b.y+b.type.Y,b.width,b.height,{fill:"#444444"},j)),b.descr&&""!==b.descr.text&&((j=d.boundaryFont()).fontSize=j.fontSize-2,j.fontColor=h,aj(d)(b.descr.text,e,b.x,b.y+b.descr.Y,b.width,b.height,{fill:"#444444"},j))},"drawBoundary"),aa=(0,i.K2)(function(a,b,d){let e=b.bgColor?b.bgColor:d[b.typeC4Shape.text+"_bg_color"],g=b.borderColor?b.borderColor:d[b.typeC4Shape.text+"_border_color"],h=b.fontColor?b.fontColor:"#FFFFFF",i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(b.typeC4Shape.text){case"person":i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII="}let j=a.append("g");j.attr("class","person-man");let k=(0,f.PB)();switch(b.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":k.x=b.x,k.y=b.y,k.fill=e,k.width=b.width,k.height=b.height,k.stroke=g,k.rx=2.5,k.ry=2.5,k.attrs={"stroke-width":.5},Y(j,k);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":j.append("path").attr("fill",e).attr("stroke-width","0.5").attr("stroke",g).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",b.x).replaceAll("starty",b.y).replaceAll("half",b.width/2).replaceAll("height",b.height)),j.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",g).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",b.x).replaceAll("starty",b.y).replaceAll("half",b.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":j.append("path").attr("fill",e).attr("stroke-width","0.5").attr("stroke",g).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",b.x).replaceAll("starty",b.y).replaceAll("width",b.width).replaceAll("half",b.height/2)),j.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",g).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",b.x+b.width).replaceAll("starty",b.y).replaceAll("half",b.height/2))}let l=ai(d,b.typeC4Shape.text);switch(j.append("text").attr("fill",h).attr("font-family",l.fontFamily).attr("font-size",l.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",b.typeC4Shape.width).attr("x",b.x+b.width/2-b.typeC4Shape.width/2).attr("y",b.y+b.typeC4Shape.Y).text("<<"+b.typeC4Shape.text+">>"),b.typeC4Shape.text){case"person":case"external_person":Z(j,48,48,b.x+b.width/2-24,b.y+b.image.Y,i)}let m=d[b.typeC4Shape.text+"Font"]();return m.fontWeight="bold",m.fontSize=m.fontSize+2,m.fontColor=h,aj(d)(b.label.text,j,b.x,b.y+b.label.Y,b.width,b.height,{fill:h},m),(m=d[b.typeC4Shape.text+"Font"]()).fontColor=h,b.techn&&b.techn?.text!==""?aj(d)(b.techn.text,j,b.x,b.y+b.techn.Y,b.width,b.height,{fill:h,"font-style":"italic"},m):b.type&&""!==b.type.text&&aj(d)(b.type.text,j,b.x,b.y+b.type.Y,b.width,b.height,{fill:h,"font-style":"italic"},m),b.descr&&""!==b.descr.text&&((m=d.personFont()).fontColor=h,aj(d)(b.descr.text,j,b.x,b.y+b.descr.Y,b.width,b.height,{fill:h},m)),b.height},"drawC4Shape"),ab=(0,i.K2)(function(a,b){a.append("defs").append("symbol").attr("id",b+"-database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),ac=(0,i.K2)(function(a,b){a.append("defs").append("symbol").attr("id",b+"-computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),ad=(0,i.K2)(function(a,b){a.append("defs").append("symbol").attr("id",b+"-clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),ae=(0,i.K2)(function(a,b){a.append("defs").append("marker").attr("id",b+"-arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},"insertArrowHead"),af=(0,i.K2)(function(a,b){a.append("defs").append("marker").attr("id",b+"-arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},"insertArrowEnd"),ag=(0,i.K2)(function(a,b){a.append("defs").append("marker").attr("id",b+"-filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),ah=(0,i.K2)(function(a,b){let d=a.append("defs").append("marker").attr("id",b+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);d.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),d.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),ai=(0,i.K2)((a,b)=>({fontFamily:a[b+"FontFamily"],fontSize:a[b+"FontSize"],fontWeight:a[b+"FontWeight"]}),"getC4ShapeFont"),aj=function(){function a(a,b,d,f,g,h,i){e(b.append("text").attr("x",d+g/2).attr("y",f+h/2+5).style("text-anchor","middle").text(a),i)}function b(a,b,d,f,g,i,j,k){let{fontSize:l,fontFamily:m,fontWeight:n}=k,o=a.split(h.Y2.lineBreakRegex);for(let a=0;a<o.length;a++){let h=a*l-l*(o.length-1)/2,i=b.append("text").attr("x",d+g/2).attr("y",f).style("text-anchor","middle").attr("dominant-baseline","middle").style("font-size",l).style("font-weight",n).style("font-family",m);i.append("tspan").attr("dy",h).text(o[a]).attr("alignment-baseline","mathematical"),e(i,j)}}function d(a,d,f,g,h,i,j,k){let l=d.append("switch"),m=l.append("foreignObject").attr("x",f).attr("y",g).attr("width",h).attr("height",i).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");m.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(a),b(a,l,f,g,h,i,j,k),e(m,j)}function e(a,b){for(let d in b)b.hasOwnProperty(d)&&a.attr(d,b[d])}return(0,i.K2)(a,"byText"),(0,i.K2)(b,"byTspan"),(0,i.K2)(d,"byFo"),(0,i.K2)(e,"_setTextAttrs"),function(e){return"fo"===e.textPlacement?d:"old"===e.textPlacement?a:b}}(),ak={drawBoundary:_,drawC4Shape:aa,drawRels:$,insertArrowHead:ae,insertArrowEnd:af,insertArrowFilledHead:ag,insertArrowCrossHead:ah,insertDatabaseIcon:ab,insertComputerIcon:ac,insertClockIcon:ad},al=0,am=0,an=4,ao=2;l.yy=X;var ap={},aq=class{static{(0,i.K2)(this,"Bounds")}constructor(a){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,ar(a.db.getConfig())}setData(a,b,d,e){this.nextData.startx=this.data.startx=a,this.nextData.stopx=this.data.stopx=b,this.nextData.starty=this.data.starty=d,this.nextData.stopy=this.data.stopy=e}updateVal(a,b,d,e){void 0===a[b]?a[b]=d:a[b]=e(d,a[b])}insert(a){this.nextData.cnt=this.nextData.cnt+1;let b=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+a.margin:this.nextData.stopx+2*a.margin,d=b+a.width,e=this.nextData.starty+2*a.margin,f=e+a.height;(b>=this.data.widthLimit||d>=this.data.widthLimit||this.nextData.cnt>an)&&(b=this.nextData.startx+a.margin+ap.nextLinePaddingX,e=this.nextData.stopy+2*a.margin,this.nextData.stopx=d=b+a.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=f=e+a.height,this.nextData.cnt=1),a.x=b,a.y=e,this.updateVal(this.data,"startx",b,Math.min),this.updateVal(this.data,"starty",e,Math.min),this.updateVal(this.data,"stopx",d,Math.max),this.updateVal(this.data,"stopy",f,Math.max),this.updateVal(this.nextData,"startx",b,Math.min),this.updateVal(this.nextData,"starty",e,Math.min),this.updateVal(this.nextData,"stopx",d,Math.max),this.updateVal(this.nextData,"stopy",f,Math.max)}init(a){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},ar(a.db.getConfig())}bumpLastMargin(a){this.data.stopx+=a,this.data.stopy+=a}},ar=(0,i.K2)(function(a){(0,h.hH)(ap,a),a.fontFamily&&(ap.personFontFamily=ap.systemFontFamily=ap.messageFontFamily=a.fontFamily),a.fontSize&&(ap.personFontSize=ap.systemFontSize=ap.messageFontSize=a.fontSize),a.fontWeight&&(ap.personFontWeight=ap.systemFontWeight=ap.messageFontWeight=a.fontWeight)},"setConf"),as=(0,i.K2)((a,b)=>({fontFamily:a[b+"FontFamily"],fontSize:a[b+"FontSize"],fontWeight:a[b+"FontWeight"]}),"c4ShapeFont"),at=(0,i.K2)(a=>({fontFamily:a.boundaryFontFamily,fontSize:a.boundaryFontSize,fontWeight:a.boundaryFontWeight}),"boundaryFont"),au=(0,i.K2)(a=>({fontFamily:a.messageFontFamily,fontSize:a.messageFontSize,fontWeight:a.messageFontWeight}),"messageFont");function av(a,b,d,e,f){if(!b[a].width)if(d)b[a].text=(0,g.bH)(b[a].text,f,e),b[a].textLines=b[a].text.split(h.Y2.lineBreakRegex).length,b[a].width=f,b[a].height=(0,g.ru)(b[a].text,e);else{let d=b[a].text.split(h.Y2.lineBreakRegex);b[a].textLines=d.length;let f=0;for(let h of(b[a].height=0,b[a].width=0,d))b[a].width=Math.max((0,g.Un)(h,e),b[a].width),f=(0,g.ru)(h,e),b[a].height=b[a].height+f}}(0,i.K2)(av,"calcC4ShapeTextWH");var aw=(0,i.K2)(function(a,b,d){b.x=d.data.startx,b.y=d.data.starty,b.width=d.data.stopx-d.data.startx,b.height=d.data.stopy-d.data.starty,b.label.y=ap.c4ShapeMargin-35;let e=b.wrap&&ap.wrap,f=at(ap);f.fontSize=f.fontSize+2,f.fontWeight="bold";let h=(0,g.Un)(b.label.text,f);av("label",b,e,f,h),ak.drawBoundary(a,b,ap)},"drawBoundary"),ax=(0,i.K2)(function(a,b,d,e){let f=0;for(let h of e){f=0;let e=d[h],i=as(ap,e.typeC4Shape.text);switch(i.fontSize=i.fontSize-2,e.typeC4Shape.width=(0,g.Un)("\xab"+e.typeC4Shape.text+"\xbb",i),e.typeC4Shape.height=i.fontSize+2,e.typeC4Shape.Y=ap.c4ShapePadding,f=e.typeC4Shape.Y+e.typeC4Shape.height-4,e.image={width:0,height:0,Y:0},e.typeC4Shape.text){case"person":case"external_person":e.image.width=48,e.image.height=48,e.image.Y=f,f=e.image.Y+e.image.height}e.sprite&&(e.image.width=48,e.image.height=48,e.image.Y=f,f=e.image.Y+e.image.height);let j=e.wrap&&ap.wrap,k=ap.width-2*ap.c4ShapePadding,l=as(ap,e.typeC4Shape.text);if(l.fontSize=l.fontSize+2,l.fontWeight="bold",av("label",e,j,l,k),e.label.Y=f+8,f=e.label.Y+e.label.height,e.type&&""!==e.type.text){e.type.text="["+e.type.text+"]";let a=as(ap,e.typeC4Shape.text);av("type",e,j,a,k),e.type.Y=f+5,f=e.type.Y+e.type.height}else if(e.techn&&""!==e.techn.text){e.techn.text="["+e.techn.text+"]";let a=as(ap,e.techn.text);av("techn",e,j,a,k),e.techn.Y=f+5,f=e.techn.Y+e.techn.height}let m=f,n=e.label.width;if(e.descr&&""!==e.descr.text){let a=as(ap,e.typeC4Shape.text);av("descr",e,j,a,k),e.descr.Y=f+20,f=e.descr.Y+e.descr.height,n=Math.max(e.label.width,e.descr.width),m=f-5*e.descr.textLines}n+=ap.c4ShapePadding,e.width=Math.max(e.width||ap.width,n,ap.width),e.height=Math.max(e.height||ap.height,m,ap.height),e.margin=e.margin||ap.c4ShapeMargin,a.insert(e),ak.drawC4Shape(b,e,ap)}a.bumpLastMargin(ap.c4ShapeMargin)},"drawC4ShapeArray"),ay=class{static{(0,i.K2)(this,"Point")}constructor(a,b){this.x=a,this.y=b}},az=(0,i.K2)(function(a,b){let d=a.x,e=a.y,f=b.x,g=b.y,h=d+a.width/2,i=e+a.height/2,j=Math.abs(d-f),k=Math.abs(e-g),l=k/j,m=a.height/a.width,n=null;return e==g&&d<f?n=new ay(d+a.width,i):e==g&&d>f?n=new ay(d,i):d==f&&e<g?n=new ay(h,e+a.height):d==f&&e>g&&(n=new ay(h,e)),d>f&&e<g?n=m>=l?new ay(d,i+l*a.width/2):new ay(h-j/k*a.height/2,e+a.height):d<f&&e<g?n=m>=l?new ay(d+a.width,i+l*a.width/2):new ay(h+j/k*a.height/2,e+a.height):d<f&&e>g?n=m>=l?new ay(d+a.width,i-l*a.width/2):new ay(h+a.height/2*j/k,e):d>f&&e>g&&(n=m>=l?new ay(d,i-a.width/2*l):new ay(h-a.height/2*j/k,e)),n},"getIntersectPoint"),aA=(0,i.K2)(function(a,b){let d={x:0,y:0};d.x=b.x+b.width/2,d.y=b.y+b.height/2;let e=az(a,d);return d.x=a.x+a.width/2,d.y=a.y+a.height/2,{startPoint:e,endPoint:az(b,d)}},"getIntersectPoints"),aB=(0,i.K2)(function(a,b,d,e,f){let h=0;for(let a of b){h+=1;let b=a.wrap&&ap.wrap,f=au(ap);"C4Dynamic"===e.db.getC4Type()&&(a.label.text=h+": "+a.label.text);let i=(0,g.Un)(a.label.text,f);av("label",a,b,f,i),a.techn&&""!==a.techn.text&&(i=(0,g.Un)(a.techn.text,f),av("techn",a,b,f,i)),a.descr&&""!==a.descr.text&&(i=(0,g.Un)(a.descr.text,f),av("descr",a,b,f,i));let j=aA(d(a.from),d(a.to));a.startPoint=j.startPoint,a.endPoint=j.endPoint}ak.drawRels(a,b,ap,f)},"drawRels");function aC(a,b,d,e,f){let g=new aq(f);for(let[h,i]of(g.data.widthLimit=d.data.widthLimit/Math.min(ao,e.length),e.entries())){let e=0;i.image={width:0,height:0,Y:0},i.sprite&&(i.image.width=48,i.image.height=48,i.image.Y=e,e=i.image.Y+i.image.height);let j=i.wrap&&ap.wrap,k=at(ap);if(k.fontSize=k.fontSize+2,k.fontWeight="bold",av("label",i,j,k,g.data.widthLimit),i.label.Y=e+8,e=i.label.Y+i.label.height,i.type&&""!==i.type.text&&(i.type.text="["+i.type.text+"]",av("type",i,j,at(ap),g.data.widthLimit),i.type.Y=e+5,e=i.type.Y+i.type.height),i.descr&&""!==i.descr.text){let a=at(ap);a.fontSize=a.fontSize-2,av("descr",i,j,a,g.data.widthLimit),i.descr.Y=e+20,e=i.descr.Y+i.descr.height}if(0==h||h%ao==0){let a=d.data.startx+ap.diagramMarginX,b=d.data.stopy+ap.diagramMarginY+e;g.setData(a,a,b,b)}else{let a=g.data.stopx!==g.data.startx?g.data.stopx+ap.diagramMarginX:g.data.startx,b=g.data.starty;g.setData(a,a,b,b)}g.name=i.alias;let l=f.db.getC4ShapeArray(i.alias),m=f.db.getC4ShapeKeys(i.alias);m.length>0&&ax(g,a,l,m),b=i.alias;let n=f.db.getBoundaries(b);n.length>0&&aC(a,b,g,n,f),"global"!==i.alias&&aw(a,i,g),d.data.stopy=Math.max(g.data.stopy+ap.c4ShapeMargin,d.data.stopy),d.data.stopx=Math.max(g.data.stopx+ap.c4ShapeMargin,d.data.stopx),al=Math.max(al,d.data.stopx),am=Math.max(am,d.data.stopy)}}(0,i.K2)(aC,"drawInsideBoundary");var aD={drawPersonOrSystemArray:ax,drawBoundary:aw,setConf:ar,draw:(0,i.K2)(function(a,b,d,e){let f;ap=(0,h.D7)().c4;let g=(0,h.D7)().securityLevel;"sandbox"===g&&(f=(0,j.Ltv)("#i"+b));let k="sandbox"===g?(0,j.Ltv)(f.nodes()[0].contentDocument.body):(0,j.Ltv)("body"),l=e.db;e.db.setWrap(ap.wrap),an=l.getC4ShapeInRow(),ao=l.getC4BoundaryInRow(),i.Rm.debug(`C:${JSON.stringify(ap,null,2)}`);let m="sandbox"===g?k.select(`[id="${b}"]`):(0,j.Ltv)(`[id="${b}"]`);ak.insertComputerIcon(m,b),ak.insertDatabaseIcon(m,b),ak.insertClockIcon(m,b);let n=new aq(e);n.setData(ap.diagramMarginX,ap.diagramMarginX,ap.diagramMarginY,ap.diagramMarginY),n.data.widthLimit=screen.availWidth,al=ap.diagramMarginX,am=ap.diagramMarginY;let o=e.db.getTitle();aC(m,"",n,e.db.getBoundaries(""),e),ak.insertArrowHead(m,b),ak.insertArrowEnd(m,b),ak.insertArrowCrossHead(m,b),ak.insertArrowFilledHead(m,b),aB(m,e.db.getRels(),e.db.getC4Shape,e,b),n.data.stopx=al,n.data.stopy=am;let p=n.data,q=p.stopy-p.starty+2*ap.diagramMarginY,r=p.stopx-p.startx+2*ap.diagramMarginX;o&&m.append("text").text(o).attr("x",(p.stopx-p.startx)/2-4*ap.diagramMarginX).attr("y",p.starty+ap.diagramMarginY),(0,h.a$)(m,q,r,ap.useMaxWidth);let s=60*!!o;m.attr("viewBox",p.startx-ap.diagramMarginX+" -"+(ap.diagramMarginY+s)+" "+r+" "+(q+s)),i.Rm.debug("models:",p)},"draw")},aE={parser:l,db:X,renderer:aD,styles:(0,i.K2)(a=>`.person {
|
|
2
|
+
stroke: ${a.personBorder};
|
|
3
|
+
fill: ${a.personBkg};
|
|
4
|
+
}
|
|
5
|
+
`,"getStyles"),init:(0,i.K2)(({c4:a,wrap:b})=>{aD.setConf(a),X.setWrap(b)},"init")}}};
|