@tecture/core 0.0.6 → 0.0.8
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/CHANGELOG.md +23 -0
- package/README.md +30 -0
- package/dist/cli.js +77 -3
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +10 -0
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -1
- package/dist/public/assets/{_baseUniq-Dhw8ANLN.js → _baseUniq-CUITAAZ7.js} +2 -2
- package/dist/public/assets/{_baseUniq-Dhw8ANLN.js.map → _baseUniq-CUITAAZ7.js.map} +1 -1
- package/dist/public/assets/{arc-DHr716eG.js → arc-DyFMcdgg.js} +2 -2
- package/dist/public/assets/{arc-DHr716eG.js.map → arc-DyFMcdgg.js.map} +1 -1
- package/dist/public/assets/{architectureDiagram-Q4EWVU46-CiupZxBl.js → architectureDiagram-Q4EWVU46-DZTi6y6q.js} +2 -2
- package/dist/public/assets/{architectureDiagram-Q4EWVU46-CiupZxBl.js.map → architectureDiagram-Q4EWVU46-DZTi6y6q.js.map} +1 -1
- package/dist/public/assets/{blockDiagram-DXYQGD6D-CZsYmXdZ.js → blockDiagram-DXYQGD6D-C5DgUxsA.js} +2 -2
- package/dist/public/assets/{blockDiagram-DXYQGD6D-CZsYmXdZ.js.map → blockDiagram-DXYQGD6D-C5DgUxsA.js.map} +1 -1
- package/dist/public/assets/{c4Diagram-AHTNJAMY-oYpz_hY-.js → c4Diagram-AHTNJAMY-BF_SaG8K.js} +2 -2
- package/dist/public/assets/{c4Diagram-AHTNJAMY-oYpz_hY-.js.map → c4Diagram-AHTNJAMY-BF_SaG8K.js.map} +1 -1
- package/dist/public/assets/channel-Chx65KuQ.js +2 -0
- package/dist/public/assets/{channel-D4DHyqBz.js.map → channel-Chx65KuQ.js.map} +1 -1
- package/dist/public/assets/{chunk-4BX2VUAB-BJASz7t9.js → chunk-4BX2VUAB-JU2t15qH.js} +2 -2
- package/dist/public/assets/{chunk-4BX2VUAB-BJASz7t9.js.map → chunk-4BX2VUAB-JU2t15qH.js.map} +1 -1
- package/dist/public/assets/{chunk-4TB4RGXK-BmBuFub9.js → chunk-4TB4RGXK-BqjiENIB.js} +2 -2
- package/dist/public/assets/{chunk-4TB4RGXK-BmBuFub9.js.map → chunk-4TB4RGXK-BqjiENIB.js.map} +1 -1
- package/dist/public/assets/chunk-55IACEB6-CwPOewiq.js +2 -0
- package/dist/public/assets/{chunk-55IACEB6-DpRX_xgZ.js.map → chunk-55IACEB6-CwPOewiq.js.map} +1 -1
- package/dist/public/assets/{chunk-EDXVE4YY-CjyvbsHL.js → chunk-EDXVE4YY-CeAdKClT.js} +2 -2
- package/dist/public/assets/{chunk-EDXVE4YY-CjyvbsHL.js.map → chunk-EDXVE4YY-CeAdKClT.js.map} +1 -1
- package/dist/public/assets/{chunk-FMBD7UC4-CopKIX9d.js → chunk-FMBD7UC4-BmV52drU.js} +2 -2
- package/dist/public/assets/{chunk-FMBD7UC4-CopKIX9d.js.map → chunk-FMBD7UC4-BmV52drU.js.map} +1 -1
- package/dist/public/assets/{chunk-OYMX7WX6-Qy94MD6F.js → chunk-OYMX7WX6-DMQ6OBmH.js} +2 -2
- package/dist/public/assets/{chunk-OYMX7WX6-Qy94MD6F.js.map → chunk-OYMX7WX6-DMQ6OBmH.js.map} +1 -1
- package/dist/public/assets/{chunk-QZHKN3VN-q0VhU4fD.js → chunk-QZHKN3VN-BbECxIVF.js} +2 -2
- package/dist/public/assets/{chunk-QZHKN3VN-q0VhU4fD.js.map → chunk-QZHKN3VN-BbECxIVF.js.map} +1 -1
- package/dist/public/assets/{chunk-YZCP3GAM-CLHu-ytS.js → chunk-YZCP3GAM-LV4b5o7A.js} +2 -2
- package/dist/public/assets/{chunk-YZCP3GAM-CLHu-ytS.js.map → chunk-YZCP3GAM-LV4b5o7A.js.map} +1 -1
- package/dist/public/assets/classDiagram-6PBFFD2Q-CuGjbxVu.js +2 -0
- package/dist/public/assets/{classDiagram-6PBFFD2Q-C_GcL8CY.js.map → classDiagram-6PBFFD2Q-CuGjbxVu.js.map} +1 -1
- package/dist/public/assets/classDiagram-v2-HSJHXN6E-CuGjbxVu.js +2 -0
- package/dist/public/assets/{classDiagram-v2-HSJHXN6E-C_GcL8CY.js.map → classDiagram-v2-HSJHXN6E-CuGjbxVu.js.map} +1 -1
- package/dist/public/assets/clone-B5zl9853.js +2 -0
- package/dist/public/assets/{clone-Cpn4E8-V.js.map → clone-B5zl9853.js.map} +1 -1
- package/dist/public/assets/{cose-bilkent-S5V4N54A-BCNrUYFS.js → cose-bilkent-S5V4N54A-NxYN3t_X.js} +2 -2
- package/dist/public/assets/{cose-bilkent-S5V4N54A-BCNrUYFS.js.map → cose-bilkent-S5V4N54A-NxYN3t_X.js.map} +1 -1
- package/dist/public/assets/{dagre-KV5264BT-BVapQShq.js → dagre-KV5264BT-DTQ94K2e.js} +2 -2
- package/dist/public/assets/{dagre-KV5264BT-BVapQShq.js.map → dagre-KV5264BT-DTQ94K2e.js.map} +1 -1
- package/dist/public/assets/{diagram-5BDNPKRD-D6B3PE9C.js → diagram-5BDNPKRD-BI7YTuYk.js} +2 -2
- package/dist/public/assets/{diagram-5BDNPKRD-D6B3PE9C.js.map → diagram-5BDNPKRD-BI7YTuYk.js.map} +1 -1
- package/dist/public/assets/{diagram-G4DWMVQ6-BaWJIFI_.js → diagram-G4DWMVQ6-CRfC6IFe.js} +2 -2
- package/dist/public/assets/{diagram-G4DWMVQ6-BaWJIFI_.js.map → diagram-G4DWMVQ6-CRfC6IFe.js.map} +1 -1
- package/dist/public/assets/{diagram-MMDJMWI5-CCy9j0cK.js → diagram-MMDJMWI5-CfWU0Xcy.js} +2 -2
- package/dist/public/assets/{diagram-MMDJMWI5-CCy9j0cK.js.map → diagram-MMDJMWI5-CfWU0Xcy.js.map} +1 -1
- package/dist/public/assets/{diagram-TYMM5635-Dlu7NmTQ.js → diagram-TYMM5635-DUUA764g.js} +2 -2
- package/dist/public/assets/{diagram-TYMM5635-Dlu7NmTQ.js.map → diagram-TYMM5635-DUUA764g.js.map} +1 -1
- package/dist/public/assets/{erDiagram-SMLLAGMA-X6FgEuRR.js → erDiagram-SMLLAGMA-CC6HpSJv.js} +2 -2
- package/dist/public/assets/{erDiagram-SMLLAGMA-X6FgEuRR.js.map → erDiagram-SMLLAGMA-CC6HpSJv.js.map} +1 -1
- package/dist/public/assets/{flowDiagram-DWJPFMVM-Bu3JFQlu.js → flowDiagram-DWJPFMVM-BcUwc3Qv.js} +2 -2
- package/dist/public/assets/{flowDiagram-DWJPFMVM-Bu3JFQlu.js.map → flowDiagram-DWJPFMVM-BcUwc3Qv.js.map} +1 -1
- package/dist/public/assets/{ganttDiagram-T4ZO3ILL-n168zCl5.js → ganttDiagram-T4ZO3ILL-BQ0OUFDb.js} +2 -2
- package/dist/public/assets/{ganttDiagram-T4ZO3ILL-n168zCl5.js.map → ganttDiagram-T4ZO3ILL-BQ0OUFDb.js.map} +1 -1
- package/dist/public/assets/{gitGraphDiagram-UUTBAWPF-DArjnyo2.js → gitGraphDiagram-UUTBAWPF-BMtxQA7c.js} +2 -2
- package/dist/public/assets/{gitGraphDiagram-UUTBAWPF-DArjnyo2.js.map → gitGraphDiagram-UUTBAWPF-BMtxQA7c.js.map} +1 -1
- package/dist/public/assets/{graph-Bfm3kqd3.js → graph-D-_LAAxI.js} +2 -2
- package/dist/public/assets/{graph-Bfm3kqd3.js.map → graph-D-_LAAxI.js.map} +1 -1
- package/dist/public/assets/{index-DMY07AUl.js → index-B08bCLVX.js} +3 -3
- package/dist/public/assets/{index-DMY07AUl.js.map → index-B08bCLVX.js.map} +1 -1
- package/dist/public/assets/{infoDiagram-42DDH7IO-pBrtdPq_.js → infoDiagram-42DDH7IO-Bamzqbzk.js} +2 -2
- package/dist/public/assets/{infoDiagram-42DDH7IO-pBrtdPq_.js.map → infoDiagram-42DDH7IO-Bamzqbzk.js.map} +1 -1
- package/dist/public/assets/{ishikawaDiagram-UXIWVN3A-BDIZnWTx.js → ishikawaDiagram-UXIWVN3A-zKsJsf_v.js} +2 -2
- package/dist/public/assets/{ishikawaDiagram-UXIWVN3A-BDIZnWTx.js.map → ishikawaDiagram-UXIWVN3A-zKsJsf_v.js.map} +1 -1
- package/dist/public/assets/{journeyDiagram-VCZTEJTY-DmSjb-PU.js → journeyDiagram-VCZTEJTY-C-6pvS6y.js} +2 -2
- package/dist/public/assets/{journeyDiagram-VCZTEJTY-DmSjb-PU.js.map → journeyDiagram-VCZTEJTY-C-6pvS6y.js.map} +1 -1
- package/dist/public/assets/{kanban-definition-6JOO6SKY-C8FgUjbs.js → kanban-definition-6JOO6SKY-DS7zW-ig.js} +2 -2
- package/dist/public/assets/{kanban-definition-6JOO6SKY-C8FgUjbs.js.map → kanban-definition-6JOO6SKY-DS7zW-ig.js.map} +1 -1
- package/dist/public/assets/{layout-DJh2njKG.js → layout-CVDJjYNO.js} +2 -2
- package/dist/public/assets/{layout-DJh2njKG.js.map → layout-CVDJjYNO.js.map} +1 -1
- package/dist/public/assets/{linear-kYTx6SLx.js → linear-lUY0N4kd.js} +2 -2
- package/dist/public/assets/{linear-kYTx6SLx.js.map → linear-lUY0N4kd.js.map} +1 -1
- package/dist/public/assets/{mermaid.core-sEG8CMeA.js → mermaid.core-H7Dmb05b.js} +5 -5
- package/dist/public/assets/{mermaid.core-sEG8CMeA.js.map → mermaid.core-H7Dmb05b.js.map} +1 -1
- package/dist/public/assets/{min-Cxji_8ZQ.js → min-CXznxZeM.js} +2 -2
- package/dist/public/assets/{min-Cxji_8ZQ.js.map → min-CXznxZeM.js.map} +1 -1
- package/dist/public/assets/{mindmap-definition-QFDTVHPH-B0-J9mrb.js → mindmap-definition-QFDTVHPH-jXt705eB.js} +2 -2
- package/dist/public/assets/{mindmap-definition-QFDTVHPH-B0-J9mrb.js.map → mindmap-definition-QFDTVHPH-jXt705eB.js.map} +1 -1
- package/dist/public/assets/{pieDiagram-DEJITSTG-CDZHsOGg.js → pieDiagram-DEJITSTG-Cs44d6OE.js} +2 -2
- package/dist/public/assets/{pieDiagram-DEJITSTG-CDZHsOGg.js.map → pieDiagram-DEJITSTG-Cs44d6OE.js.map} +1 -1
- package/dist/public/assets/{quadrantDiagram-34T5L4WZ-Cr3XLn8k.js → quadrantDiagram-34T5L4WZ-CpymTeDv.js} +2 -2
- package/dist/public/assets/{quadrantDiagram-34T5L4WZ-Cr3XLn8k.js.map → quadrantDiagram-34T5L4WZ-CpymTeDv.js.map} +1 -1
- package/dist/public/assets/{requirementDiagram-MS252O5E-DhckNPK2.js → requirementDiagram-MS252O5E-RyLqPw4W.js} +2 -2
- package/dist/public/assets/{requirementDiagram-MS252O5E-DhckNPK2.js.map → requirementDiagram-MS252O5E-RyLqPw4W.js.map} +1 -1
- package/dist/public/assets/{sankeyDiagram-XADWPNL6-Cst7lZQ5.js → sankeyDiagram-XADWPNL6-DamuB2BV.js} +2 -2
- package/dist/public/assets/{sankeyDiagram-XADWPNL6-Cst7lZQ5.js.map → sankeyDiagram-XADWPNL6-DamuB2BV.js.map} +1 -1
- package/dist/public/assets/{sequenceDiagram-FGHM5R23-BSz6hk1R.js → sequenceDiagram-FGHM5R23-6-TOylZP.js} +2 -2
- package/dist/public/assets/{sequenceDiagram-FGHM5R23-BSz6hk1R.js.map → sequenceDiagram-FGHM5R23-6-TOylZP.js.map} +1 -1
- package/dist/public/assets/{stateDiagram-FHFEXIEX-racSpEdx.js → stateDiagram-FHFEXIEX-B6cKPsIC.js} +2 -2
- package/dist/public/assets/{stateDiagram-FHFEXIEX-racSpEdx.js.map → stateDiagram-FHFEXIEX-B6cKPsIC.js.map} +1 -1
- package/dist/public/assets/stateDiagram-v2-QKLJ7IA2-CXb0Znc0.js +2 -0
- package/dist/public/assets/{stateDiagram-v2-QKLJ7IA2-C8oha-gC.js.map → stateDiagram-v2-QKLJ7IA2-CXb0Znc0.js.map} +1 -1
- package/dist/public/assets/{timeline-definition-GMOUNBTQ-pBR5gxYm.js → timeline-definition-GMOUNBTQ-CdeBXF6y.js} +2 -2
- package/dist/public/assets/{timeline-definition-GMOUNBTQ-pBR5gxYm.js.map → timeline-definition-GMOUNBTQ-CdeBXF6y.js.map} +1 -1
- package/dist/public/assets/{vennDiagram-DHZGUBPP-OCE87T_5.js → vennDiagram-DHZGUBPP-D8DqpbrW.js} +2 -2
- package/dist/public/assets/{vennDiagram-DHZGUBPP-OCE87T_5.js.map → vennDiagram-DHZGUBPP-D8DqpbrW.js.map} +1 -1
- package/dist/public/assets/{wardley-RL74JXVD-691yvuUx.js → wardley-RL74JXVD-B1MU-JlC.js} +2 -2
- package/dist/public/assets/{wardley-RL74JXVD-691yvuUx.js.map → wardley-RL74JXVD-B1MU-JlC.js.map} +1 -1
- package/dist/public/assets/{wardleyDiagram-NUSXRM2D-CewxpYfR.js → wardleyDiagram-NUSXRM2D-MYKM6CF8.js} +2 -2
- package/dist/public/assets/{wardleyDiagram-NUSXRM2D-CewxpYfR.js.map → wardleyDiagram-NUSXRM2D-MYKM6CF8.js.map} +1 -1
- package/dist/public/assets/{xychartDiagram-5P7HB3ND-C_kdNFR1.js → xychartDiagram-5P7HB3ND-Brec7d4F.js} +2 -2
- package/dist/public/assets/{xychartDiagram-5P7HB3ND-C_kdNFR1.js.map → xychartDiagram-5P7HB3ND-Brec7d4F.js.map} +1 -1
- package/dist/public/index.html +1 -1
- package/package.json +1 -1
- package/dist/public/assets/channel-D4DHyqBz.js +0 -2
- package/dist/public/assets/chunk-55IACEB6-DpRX_xgZ.js +0 -2
- package/dist/public/assets/classDiagram-6PBFFD2Q-C_GcL8CY.js +0 -2
- package/dist/public/assets/classDiagram-v2-HSJHXN6E-C_GcL8CY.js +0 -2
- package/dist/public/assets/clone-Cpn4E8-V.js +0 -2
- package/dist/public/assets/stateDiagram-v2-QKLJ7IA2-C8oha-gC.js +0 -2
package/dist/public/assets/{infoDiagram-42DDH7IO-pBrtdPq_.js → infoDiagram-42DDH7IO-Bamzqbzk.js}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{_ as e,l as s,H as n,d as i}from"./mermaid.core-
|
|
1
|
+
import{_ as e,l as s,H as n,d as i}from"./mermaid.core-H7Dmb05b.js";import{p}from"./wardley-RL74JXVD-B1MU-JlC.js";import"./index-B08bCLVX.js";import"./min-CXznxZeM.js";import"./_baseUniq-CUITAAZ7.js";var g={parse:e(async r=>{const a=await p("info",r);s.debug(a)},"parse")},d={version:"11.14.0"},v=e(()=>d.version,"getVersion"),m={getVersion:v},c=e((r,a,o)=>{s.debug(`rendering info diagram
|
|
2
2
|
`+r);const t=n(a);i(t,100,400,!0),t.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${o}`)},"draw"),l={draw:c},y={parser:g,db:m,renderer:l};export{y as diagram};
|
|
3
|
-
//# sourceMappingURL=infoDiagram-42DDH7IO-
|
|
3
|
+
//# sourceMappingURL=infoDiagram-42DDH7IO-Bamzqbzk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infoDiagram-42DDH7IO-
|
|
1
|
+
{"version":3,"file":"infoDiagram-42DDH7IO-Bamzqbzk.js","sources":["../../../../node_modules/.pnpm/mermaid@11.14.0/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-42DDH7IO.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-426QAEUC.mjs\";\nimport {\n configureSvgSize\n} from \"./chunk-ICPOFSXX.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/info/infoParser.ts\nimport { parse } from \"@mermaid-js/parser\";\nvar parser = {\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"info\", input);\n log.debug(ast);\n }, \"parse\")\n};\n\n// src/diagrams/info/infoDb.ts\nvar DEFAULT_INFO_DB = {\n version: \"11.14.0\" + (true ? \"\" : \"-tiny\")\n};\nvar getVersion = /* @__PURE__ */ __name(() => DEFAULT_INFO_DB.version, \"getVersion\");\nvar db = {\n getVersion\n};\n\n// src/diagrams/info/infoRenderer.ts\nvar draw = /* @__PURE__ */ __name((text, id, version) => {\n log.debug(\"rendering info diagram\\n\" + text);\n const svg = selectSvgElement(id);\n configureSvgSize(svg, 100, 400, true);\n const group = svg.append(\"g\");\n group.append(\"text\").attr(\"x\", 100).attr(\"y\", 40).attr(\"class\", \"version\").attr(\"font-size\", 32).style(\"text-anchor\", \"middle\").text(`v${version}`);\n}, \"draw\");\nvar renderer = { draw };\n\n// src/diagrams/info/infoDiagram.ts\nvar diagram = {\n parser,\n db,\n renderer\n};\nexport {\n diagram\n};\n"],"names":["parser","__name","input","ast","parse","log","DEFAULT_INFO_DB","getVersion","db","draw","text","id","version","svg","selectSvgElement","configureSvgSize","renderer","diagram"],"mappings":"wMAaA,IAAIA,EAAS,CACX,MAAuBC,EAAO,MAAOC,GAAU,CAC7C,MAAMC,EAAM,MAAMC,EAAM,OAAQF,CAAK,EACrCG,EAAI,MAAMF,CAAG,CACf,EAAG,OAAO,CACZ,EAGIG,EAAkB,CACpB,QAAS,SACX,EACIC,EAA6BN,EAAO,IAAMK,EAAgB,QAAS,YAAY,EAC/EE,EAAK,CACP,WAAAD,CACF,EAGIE,EAAuBR,EAAO,CAACS,EAAMC,EAAIC,IAAY,CACvDP,EAAI,MAAM;AAAA,EAA6BK,CAAI,EAC3C,MAAMG,EAAMC,EAAiBH,CAAE,EAC/BI,EAAiBF,EAAK,IAAK,IAAK,EAAI,EACtBA,EAAI,OAAO,GAAG,EACtB,OAAO,MAAM,EAAE,KAAK,IAAK,GAAG,EAAE,KAAK,IAAK,EAAE,EAAE,KAAK,QAAS,SAAS,EAAE,KAAK,YAAa,EAAE,EAAE,MAAM,cAAe,QAAQ,EAAE,KAAK,IAAID,CAAO,EAAE,CACpJ,EAAG,MAAM,EACLI,EAAW,CAAE,KAAAP,CAAI,EAGjBQ,EAAU,CACZ,OAAAjB,EACA,GAAAQ,EACA,SAAAQ,CACF","x_google_ignoreList":[0]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as o,c as ot,M as ut,H as dt,ar as yt,y as ft,j as pt,o as it,a as gt,b as kt,g as mt,s as wt,p as _t,d as bt}from"./mermaid.core-
|
|
1
|
+
import{_ as o,c as ot,M as ut,H as dt,ar as yt,y as ft,j as pt,o as it,a as gt,b as kt,g as mt,s as wt,p as _t,d as bt}from"./mermaid.core-H7Dmb05b.js";import"./index-B08bCLVX.js";var tt=function(){var e=o(function(M,t,s,i){for(s=s||{},i=M.length;i--;s[M[i]]=t);return s},"o"),h=[1,4],r=[1,14],a=[1,12],l=[1,13],y=[6,7,8],f=[1,20],d=[1,18],m=[1,19],c=[6,7,11],k=[1,6,13,14],g=[1,23],_=[1,24],x=[1,6,7,11,13,14],N={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ishikawa:4,spaceLines:5,SPACELINE:6,NL:7,ISHIKAWA:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,TEXT:14,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"ISHIKAWA",11:"EOF",13:"SPACELIST",14:"TEXT"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,1],[12,1],[12,1]],performAction:o(function(t,s,i,u,p,n,v){var w=n.length-1;switch(p){case 6:case 7:return u;case 15:u.addNode(n[w-1].length,n[w].trim());break;case 16:u.addNode(0,n[w].trim());break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:h},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:h},{6:r,7:[1,10],9:9,12:11,13:a,14:l},e(y,[2,3]),{1:[2,2]},e(y,[2,4]),e(y,[2,5]),{1:[2,6],6:r,12:15,13:a,14:l},{6:r,9:16,12:11,13:a,14:l},{6:f,7:d,10:17,11:m},e(c,[2,18],{14:[1,21]}),e(c,[2,16]),e(c,[2,17]),{6:f,7:d,10:22,11:m},{1:[2,7],6:r,12:15,13:a,14:l},e(k,[2,14],{7:g,11:_}),e(x,[2,8]),e(x,[2,9]),e(x,[2,10]),e(c,[2,15]),e(k,[2,13],{7:g,11:_}),e(x,[2,11]),e(x,[2,12])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(t,s){if(s.recoverable)this.trace(t);else{var i=new Error(t);throw i.hash=s,i}},"parseError"),parse:o(function(t){var s=this,i=[0],u=[],p=[null],n=[],v=this.table,w="",I=0,S=0,L=2,E=1,R=n.slice.call(arguments,1),b=Object.create(this.lexer),C={yy:{}};for(var j in this.yy)Object.prototype.hasOwnProperty.call(this.yy,j)&&(C.yy[j]=this.yy[j]);b.setInput(t,C.yy),C.yy.lexer=b,C.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var T=b.yylloc;n.push(T);var D=b.options&&b.options.ranges;typeof C.yy.parseError=="function"?this.parseError=C.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function F(P){i.length=i.length-2*P,p.length=p.length-P,n.length=n.length-P}o(F,"popStack");function z(){var P;return P=u.pop()||b.lex()||E,typeof P!="number"&&(P instanceof Array&&(u=P,P=u.pop()),P=s.symbols_[P]||P),P}o(z,"lex");for(var A,W,B,q,H={},X,V,et,Y;;){if(W=i[i.length-1],this.defaultActions[W]?B=this.defaultActions[W]:((A===null||typeof A>"u")&&(A=z()),B=v[W]&&v[W][A]),typeof B>"u"||!B.length||!B[0]){var Q="";Y=[];for(X in v[W])this.terminals_[X]&&X>L&&Y.push("'"+this.terminals_[X]+"'");b.showPosition?Q="Parse error on line "+(I+1)+`:
|
|
2
2
|
`+b.showPosition()+`
|
|
3
3
|
Expecting `+Y.join(", ")+", got '"+(this.terminals_[A]||A)+"'":Q="Parse error on line "+(I+1)+": Unexpected "+(A==E?"end of input":"'"+(this.terminals_[A]||A)+"'"),this.parseError(Q,{text:b.match,token:this.terminals_[A]||A,line:b.yylineno,loc:T,expected:Y})}if(B[0]instanceof Array&&B.length>1)throw new Error("Parse Error: multiple actions possible at state: "+W+", token: "+A);switch(B[0]){case 1:i.push(A),p.push(b.yytext),n.push(b.yylloc),i.push(B[1]),A=null,S=b.yyleng,w=b.yytext,I=b.yylineno,T=b.yylloc;break;case 2:if(V=this.productions_[B[1]][1],H.$=p[p.length-V],H._$={first_line:n[n.length-(V||1)].first_line,last_line:n[n.length-1].last_line,first_column:n[n.length-(V||1)].first_column,last_column:n[n.length-1].last_column},D&&(H._$.range=[n[n.length-(V||1)].range[0],n[n.length-1].range[1]]),q=this.performAction.apply(H,[w,S,I,C.yy,B[1],p,n].concat(R)),typeof q<"u")return q;V&&(i=i.slice(0,-1*V*2),p=p.slice(0,-1*V),n=n.slice(0,-1*V)),i.push(this.productions_[B[1]][0]),p.push(H.$),n.push(H._$),et=v[i[i.length-2]][i[i.length-1]],i.push(et);break;case 3:return!0}}return!0},"parse")},O=function(){var M={EOF:1,parseError:o(function(s,i){if(this.yy.parser)this.yy.parser.parseError(s,i);else throw new Error(s)},"parseError"),setInput:o(function(t,s){return this.yy=s||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var t=this._input[0];this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t;var s=t.match(/(?:\r\n?|\n).*/g);return s?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},"input"),unput:o(function(t){var s=t.length,i=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-s),this.offset-=s;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===u.length?this.yylloc.first_column:0)+u[u.length-i.length].length-i[0].length:this.yylloc.first_column-s},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-s]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(t){this.unput(this.match.slice(t))},"less"),pastInput:o(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var t=this.pastInput(),s=new Array(t.length+1).join("-");return t+this.upcomingInput()+`
|
|
@@ -68,4 +68,4 @@ Expecting `+Y.join(", ")+", got '"+(this.terminals_[A]||A)+"'":Q="Parse error on
|
|
|
68
68
|
dominant-baseline: hanging;
|
|
69
69
|
}
|
|
70
70
|
`,"getStyles"),Ot=Dt,Vt={parser:xt,get db(){return new vt},renderer:Nt,styles:Ot};export{Vt as diagram};
|
|
71
|
-
//# sourceMappingURL=ishikawaDiagram-UXIWVN3A-
|
|
71
|
+
//# sourceMappingURL=ishikawaDiagram-UXIWVN3A-zKsJsf_v.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ishikawaDiagram-UXIWVN3A-BDIZnWTx.js","sources":["../../../../node_modules/.pnpm/mermaid@11.14.0/node_modules/mermaid/dist/chunks/mermaid.core/ishikawaDiagram-UXIWVN3A.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-426QAEUC.mjs\";\nimport {\n parseFontSize\n} from \"./chunk-5PVQY5BW.mjs\";\nimport {\n clear,\n common_default,\n configureSvgSize,\n getAccDescription,\n getAccTitle,\n getConfig2 as getConfig,\n getDiagramTitle,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-ICPOFSXX.mjs\";\nimport {\n __name\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/ishikawa/parser/ishikawa.jison\nvar parser = (function() {\n var o = /* @__PURE__ */ __name(function(k, v, o2, l) {\n for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;\n return o2;\n }, \"o\"), $V0 = [1, 4], $V1 = [1, 14], $V2 = [1, 12], $V3 = [1, 13], $V4 = [6, 7, 8], $V5 = [1, 20], $V6 = [1, 18], $V7 = [1, 19], $V8 = [6, 7, 11], $V9 = [1, 6, 13, 14], $Va = [1, 23], $Vb = [1, 24], $Vc = [1, 6, 7, 11, 13, 14];\n var parser2 = {\n trace: /* @__PURE__ */ __name(function trace() {\n }, \"trace\"),\n yy: {},\n symbols_: { \"error\": 2, \"start\": 3, \"ishikawa\": 4, \"spaceLines\": 5, \"SPACELINE\": 6, \"NL\": 7, \"ISHIKAWA\": 8, \"document\": 9, \"stop\": 10, \"EOF\": 11, \"statement\": 12, \"SPACELIST\": 13, \"TEXT\": 14, \"$accept\": 0, \"$end\": 1 },\n terminals_: { 2: \"error\", 6: \"SPACELINE\", 7: \"NL\", 8: \"ISHIKAWA\", 11: \"EOF\", 13: \"SPACELIST\", 14: \"TEXT\" },\n productions_: [0, [3, 1], [3, 2], [5, 1], [5, 2], [5, 2], [4, 2], [4, 3], [10, 1], [10, 1], [10, 1], [10, 2], [10, 2], [9, 3], [9, 2], [12, 2], [12, 1], [12, 1], [12, 1]],\n performAction: /* @__PURE__ */ __name(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) {\n var $0 = $$.length - 1;\n switch (yystate) {\n case 6:\n case 7:\n return yy;\n break;\n case 15:\n yy.addNode($$[$0 - 1].length, $$[$0].trim());\n break;\n case 16:\n yy.addNode(0, $$[$0].trim());\n break;\n }\n }, \"anonymous\"),\n table: [{ 3: 1, 4: 2, 5: 3, 6: [1, 5], 8: $V0 }, { 1: [3] }, { 1: [2, 1] }, { 4: 6, 6: [1, 7], 7: [1, 8], 8: $V0 }, { 6: $V1, 7: [1, 10], 9: 9, 12: 11, 13: $V2, 14: $V3 }, o($V4, [2, 3]), { 1: [2, 2] }, o($V4, [2, 4]), o($V4, [2, 5]), { 1: [2, 6], 6: $V1, 12: 15, 13: $V2, 14: $V3 }, { 6: $V1, 9: 16, 12: 11, 13: $V2, 14: $V3 }, { 6: $V5, 7: $V6, 10: 17, 11: $V7 }, o($V8, [2, 18], { 14: [1, 21] }), o($V8, [2, 16]), o($V8, [2, 17]), { 6: $V5, 7: $V6, 10: 22, 11: $V7 }, { 1: [2, 7], 6: $V1, 12: 15, 13: $V2, 14: $V3 }, o($V9, [2, 14], { 7: $Va, 11: $Vb }), o($Vc, [2, 8]), o($Vc, [2, 9]), o($Vc, [2, 10]), o($V8, [2, 15]), o($V9, [2, 13], { 7: $Va, 11: $Vb }), o($Vc, [2, 11]), o($Vc, [2, 12])],\n defaultActions: { 2: [2, 1], 6: [2, 2] },\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (hash.recoverable) {\n this.trace(str);\n } else {\n var error = new Error(str);\n error.hash = hash;\n throw error;\n }\n }, \"parseError\"),\n parse: /* @__PURE__ */ __name(function parse(input) {\n var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = \"\", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;\n var args = lstack.slice.call(arguments, 1);\n var lexer2 = Object.create(this.lexer);\n var sharedState = { yy: {} };\n for (var k in this.yy) {\n if (Object.prototype.hasOwnProperty.call(this.yy, k)) {\n sharedState.yy[k] = this.yy[k];\n }\n }\n lexer2.setInput(input, sharedState.yy);\n sharedState.yy.lexer = lexer2;\n sharedState.yy.parser = this;\n if (typeof lexer2.yylloc == \"undefined\") {\n lexer2.yylloc = {};\n }\n var yyloc = lexer2.yylloc;\n lstack.push(yyloc);\n var ranges = lexer2.options && lexer2.options.ranges;\n if (typeof sharedState.yy.parseError === \"function\") {\n this.parseError = sharedState.yy.parseError;\n } else {\n this.parseError = Object.getPrototypeOf(this).parseError;\n }\n function popStack(n) {\n stack.length = stack.length - 2 * n;\n vstack.length = vstack.length - n;\n lstack.length = lstack.length - n;\n }\n __name(popStack, \"popStack\");\n function lex() {\n var token;\n token = tstack.pop() || lexer2.lex() || EOF;\n if (typeof token !== \"number\") {\n if (token instanceof Array) {\n tstack = token;\n token = tstack.pop();\n }\n token = self.symbols_[token] || token;\n }\n return token;\n }\n __name(lex, \"lex\");\n var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected;\n while (true) {\n state = stack[stack.length - 1];\n if (this.defaultActions[state]) {\n action = this.defaultActions[state];\n } else {\n if (symbol === null || typeof symbol == \"undefined\") {\n symbol = lex();\n }\n action = table[state] && table[state][symbol];\n }\n if (typeof action === \"undefined\" || !action.length || !action[0]) {\n var errStr = \"\";\n expected = [];\n for (p in table[state]) {\n if (this.terminals_[p] && p > TERROR) {\n expected.push(\"'\" + this.terminals_[p] + \"'\");\n }\n }\n if (lexer2.showPosition) {\n errStr = \"Parse error on line \" + (yylineno + 1) + \":\\n\" + lexer2.showPosition() + \"\\nExpecting \" + expected.join(\", \") + \", got '\" + (this.terminals_[symbol] || symbol) + \"'\";\n } else {\n errStr = \"Parse error on line \" + (yylineno + 1) + \": Unexpected \" + (symbol == EOF ? \"end of input\" : \"'\" + (this.terminals_[symbol] || symbol) + \"'\");\n }\n this.parseError(errStr, {\n text: lexer2.match,\n token: this.terminals_[symbol] || symbol,\n line: lexer2.yylineno,\n loc: yyloc,\n expected\n });\n }\n if (action[0] instanceof Array && action.length > 1) {\n throw new Error(\"Parse Error: multiple actions possible at state: \" + state + \", token: \" + symbol);\n }\n switch (action[0]) {\n case 1:\n stack.push(symbol);\n vstack.push(lexer2.yytext);\n lstack.push(lexer2.yylloc);\n stack.push(action[1]);\n symbol = null;\n if (!preErrorSymbol) {\n yyleng = lexer2.yyleng;\n yytext = lexer2.yytext;\n yylineno = lexer2.yylineno;\n yyloc = lexer2.yylloc;\n if (recovering > 0) {\n recovering--;\n }\n } else {\n symbol = preErrorSymbol;\n preErrorSymbol = null;\n }\n break;\n case 2:\n len = this.productions_[action[1]][1];\n yyval.$ = vstack[vstack.length - len];\n yyval._$ = {\n first_line: lstack[lstack.length - (len || 1)].first_line,\n last_line: lstack[lstack.length - 1].last_line,\n first_column: lstack[lstack.length - (len || 1)].first_column,\n last_column: lstack[lstack.length - 1].last_column\n };\n if (ranges) {\n yyval._$.range = [\n lstack[lstack.length - (len || 1)].range[0],\n lstack[lstack.length - 1].range[1]\n ];\n }\n r = this.performAction.apply(yyval, [\n yytext,\n yyleng,\n yylineno,\n sharedState.yy,\n action[1],\n vstack,\n lstack\n ].concat(args));\n if (typeof r !== \"undefined\") {\n return r;\n }\n if (len) {\n stack = stack.slice(0, -1 * len * 2);\n vstack = vstack.slice(0, -1 * len);\n lstack = lstack.slice(0, -1 * len);\n }\n stack.push(this.productions_[action[1]][0]);\n vstack.push(yyval.$);\n lstack.push(yyval._$);\n newState = table[stack[stack.length - 2]][stack[stack.length - 1]];\n stack.push(newState);\n break;\n case 3:\n return true;\n }\n }\n return true;\n }, \"parse\")\n };\n var lexer = /* @__PURE__ */ (function() {\n var lexer2 = {\n EOF: 1,\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (this.yy.parser) {\n this.yy.parser.parseError(str, hash);\n } else {\n throw new Error(str);\n }\n }, \"parseError\"),\n // resets the lexer, sets new input\n setInput: /* @__PURE__ */ __name(function(input, yy) {\n this.yy = yy || this.yy || {};\n this._input = input;\n this._more = this._backtrack = this.done = false;\n this.yylineno = this.yyleng = 0;\n this.yytext = this.matched = this.match = \"\";\n this.conditionStack = [\"INITIAL\"];\n this.yylloc = {\n first_line: 1,\n first_column: 0,\n last_line: 1,\n last_column: 0\n };\n if (this.options.ranges) {\n this.yylloc.range = [0, 0];\n }\n this.offset = 0;\n return this;\n }, \"setInput\"),\n // consumes and returns one char from the input\n input: /* @__PURE__ */ __name(function() {\n var ch = this._input[0];\n this.yytext += ch;\n this.yyleng++;\n this.offset++;\n this.match += ch;\n this.matched += ch;\n var lines = ch.match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno++;\n this.yylloc.last_line++;\n } else {\n this.yylloc.last_column++;\n }\n if (this.options.ranges) {\n this.yylloc.range[1]++;\n }\n this._input = this._input.slice(1);\n return ch;\n }, \"input\"),\n // unshifts one char (or a string) into the input\n unput: /* @__PURE__ */ __name(function(ch) {\n var len = ch.length;\n var lines = ch.split(/(?:\\r\\n?|\\n)/g);\n this._input = ch + this._input;\n this.yytext = this.yytext.substr(0, this.yytext.length - len);\n this.offset -= len;\n var oldLines = this.match.split(/(?:\\r\\n?|\\n)/g);\n this.match = this.match.substr(0, this.match.length - 1);\n this.matched = this.matched.substr(0, this.matched.length - 1);\n if (lines.length - 1) {\n this.yylineno -= lines.length - 1;\n }\n var r = this.yylloc.range;\n this.yylloc = {\n first_line: this.yylloc.first_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.first_column,\n last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len\n };\n if (this.options.ranges) {\n this.yylloc.range = [r[0], r[0] + this.yyleng - len];\n }\n this.yyleng = this.yytext.length;\n return this;\n }, \"unput\"),\n // When called from action, caches matched text and appends it on next action\n more: /* @__PURE__ */ __name(function() {\n this._more = true;\n return this;\n }, \"more\"),\n // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.\n reject: /* @__PURE__ */ __name(function() {\n if (this.options.backtrack_lexer) {\n this._backtrack = true;\n } else {\n return this.parseError(\"Lexical error on line \" + (this.yylineno + 1) + \". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n return this;\n }, \"reject\"),\n // retain first n characters of the match\n less: /* @__PURE__ */ __name(function(n) {\n this.unput(this.match.slice(n));\n }, \"less\"),\n // displays already matched input, i.e. for error messages\n pastInput: /* @__PURE__ */ __name(function() {\n var past = this.matched.substr(0, this.matched.length - this.match.length);\n return (past.length > 20 ? \"...\" : \"\") + past.substr(-20).replace(/\\n/g, \"\");\n }, \"pastInput\"),\n // displays upcoming input, i.e. for error messages\n upcomingInput: /* @__PURE__ */ __name(function() {\n var next = this.match;\n if (next.length < 20) {\n next += this._input.substr(0, 20 - next.length);\n }\n return (next.substr(0, 20) + (next.length > 20 ? \"...\" : \"\")).replace(/\\n/g, \"\");\n }, \"upcomingInput\"),\n // displays the character position where the lexing error occurred, i.e. for error messages\n showPosition: /* @__PURE__ */ __name(function() {\n var pre = this.pastInput();\n var c = new Array(pre.length + 1).join(\"-\");\n return pre + this.upcomingInput() + \"\\n\" + c + \"^\";\n }, \"showPosition\"),\n // test the lexed token: return FALSE when not a match, otherwise return token\n test_match: /* @__PURE__ */ __name(function(match, indexed_rule) {\n var token, lines, backup;\n if (this.options.backtrack_lexer) {\n backup = {\n yylineno: this.yylineno,\n yylloc: {\n first_line: this.yylloc.first_line,\n last_line: this.last_line,\n first_column: this.yylloc.first_column,\n last_column: this.yylloc.last_column\n },\n yytext: this.yytext,\n match: this.match,\n matches: this.matches,\n matched: this.matched,\n yyleng: this.yyleng,\n offset: this.offset,\n _more: this._more,\n _input: this._input,\n yy: this.yy,\n conditionStack: this.conditionStack.slice(0),\n done: this.done\n };\n if (this.options.ranges) {\n backup.yylloc.range = this.yylloc.range.slice(0);\n }\n }\n lines = match[0].match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno += lines.length;\n }\n this.yylloc = {\n first_line: this.yylloc.last_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.last_column,\n last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\\r?\\n?/)[0].length : this.yylloc.last_column + match[0].length\n };\n this.yytext += match[0];\n this.match += match[0];\n this.matches = match;\n this.yyleng = this.yytext.length;\n if (this.options.ranges) {\n this.yylloc.range = [this.offset, this.offset += this.yyleng];\n }\n this._more = false;\n this._backtrack = false;\n this._input = this._input.slice(match[0].length);\n this.matched += match[0];\n token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]);\n if (this.done && this._input) {\n this.done = false;\n }\n if (token) {\n return token;\n } else if (this._backtrack) {\n for (var k in backup) {\n this[k] = backup[k];\n }\n return false;\n }\n return false;\n }, \"test_match\"),\n // return next match in input\n next: /* @__PURE__ */ __name(function() {\n if (this.done) {\n return this.EOF;\n }\n if (!this._input) {\n this.done = true;\n }\n var token, match, tempMatch, index;\n if (!this._more) {\n this.yytext = \"\";\n this.match = \"\";\n }\n var rules = this._currentRules();\n for (var i = 0; i < rules.length; i++) {\n tempMatch = this._input.match(this.rules[rules[i]]);\n if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {\n match = tempMatch;\n index = i;\n if (this.options.backtrack_lexer) {\n token = this.test_match(tempMatch, rules[i]);\n if (token !== false) {\n return token;\n } else if (this._backtrack) {\n match = false;\n continue;\n } else {\n return false;\n }\n } else if (!this.options.flex) {\n break;\n }\n }\n }\n if (match) {\n token = this.test_match(match, rules[index]);\n if (token !== false) {\n return token;\n }\n return false;\n }\n if (this._input === \"\") {\n return this.EOF;\n } else {\n return this.parseError(\"Lexical error on line \" + (this.yylineno + 1) + \". Unrecognized text.\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n }, \"next\"),\n // return next match that has a token\n lex: /* @__PURE__ */ __name(function lex() {\n var r = this.next();\n if (r) {\n return r;\n } else {\n return this.lex();\n }\n }, \"lex\"),\n // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)\n begin: /* @__PURE__ */ __name(function begin(condition) {\n this.conditionStack.push(condition);\n }, \"begin\"),\n // pop the previously active lexer condition state off the condition stack\n popState: /* @__PURE__ */ __name(function popState() {\n var n = this.conditionStack.length - 1;\n if (n > 0) {\n return this.conditionStack.pop();\n } else {\n return this.conditionStack[0];\n }\n }, \"popState\"),\n // produce the lexer rule set which is active for the currently active lexer condition state\n _currentRules: /* @__PURE__ */ __name(function _currentRules() {\n if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) {\n return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;\n } else {\n return this.conditions[\"INITIAL\"].rules;\n }\n }, \"_currentRules\"),\n // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available\n topState: /* @__PURE__ */ __name(function topState(n) {\n n = this.conditionStack.length - 1 - Math.abs(n || 0);\n if (n >= 0) {\n return this.conditionStack[n];\n } else {\n return \"INITIAL\";\n }\n }, \"topState\"),\n // alias for begin(condition)\n pushState: /* @__PURE__ */ __name(function pushState(condition) {\n this.begin(condition);\n }, \"pushState\"),\n // return the number of states currently on the stack\n stateStackSize: /* @__PURE__ */ __name(function stateStackSize() {\n return this.conditionStack.length;\n }, \"stateStackSize\"),\n options: { \"case-insensitive\": true },\n performAction: /* @__PURE__ */ __name(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) {\n var YYSTATE = YY_START;\n switch ($avoiding_name_collisions) {\n case 0:\n return 6;\n break;\n case 1:\n return 8;\n break;\n case 2:\n return 8;\n break;\n case 3:\n return 6;\n break;\n case 4:\n return 7;\n break;\n case 5:\n return 13;\n break;\n case 6:\n return 14;\n break;\n case 7:\n return 11;\n break;\n }\n }, \"anonymous\"),\n rules: [/^(?:\\s*%%.*)/i, /^(?:ishikawa-beta\\b)/i, /^(?:ishikawa\\b)/i, /^(?:[\\s]+[\\n])/i, /^(?:[\\n]+)/i, /^(?:[\\s]+)/i, /^(?:[^\\n]+)/i, /^(?:$)/i],\n conditions: { \"INITIAL\": { \"rules\": [0, 1, 2, 3, 4, 5, 6, 7], \"inclusive\": true } }\n };\n return lexer2;\n })();\n parser2.lexer = lexer;\n function Parser() {\n this.yy = {};\n }\n __name(Parser, \"Parser\");\n Parser.prototype = parser2;\n parser2.Parser = Parser;\n return new Parser();\n})();\nparser.parser = parser;\nvar ishikawa_default = parser;\n\n// src/diagrams/ishikawa/ishikawaDb.ts\nvar IshikawaDB = class {\n constructor() {\n this.stack = [];\n this.clear = this.clear.bind(this);\n this.addNode = this.addNode.bind(this);\n this.getRoot = this.getRoot.bind(this);\n }\n static {\n __name(this, \"IshikawaDB\");\n }\n clear() {\n this.root = void 0;\n this.stack = [];\n this.baseLevel = void 0;\n clear();\n }\n getRoot() {\n return this.root;\n }\n addNode(rawLevel, text) {\n const label = common_default.sanitizeText(text, getConfig());\n if (!this.root) {\n this.root = { text: label, children: [] };\n this.stack = [{ level: 0, node: this.root }];\n setDiagramTitle(label);\n return;\n }\n this.baseLevel ??= rawLevel;\n let level = rawLevel - this.baseLevel + 1;\n if (level <= 0) {\n level = 1;\n }\n while (this.stack.length > 1 && this.stack[this.stack.length - 1].level >= level) {\n this.stack.pop();\n }\n const parent = this.stack[this.stack.length - 1].node;\n const node = { text: label, children: [] };\n parent.children.push(node);\n this.stack.push({ level, node });\n }\n getAccTitle() {\n return getAccTitle();\n }\n setAccTitle(title) {\n setAccTitle(title);\n }\n getAccDescription() {\n return getAccDescription();\n }\n setAccDescription(description) {\n setAccDescription(description);\n }\n getDiagramTitle() {\n return getDiagramTitle();\n }\n setDiagramTitle(title) {\n setDiagramTitle(title);\n }\n};\n\n// src/diagrams/ishikawa/ishikawaRenderer.ts\nimport rough from \"roughjs\";\nvar FONT_SIZE_DEFAULT = 14;\nvar SPINE_BASE_LENGTH = 250;\nvar BONE_STUB = 30;\nvar BONE_BASE = 60;\nvar BONE_PER_CHILD = 5;\nvar ANGLE = 82 * Math.PI / 180;\nvar COS_A = Math.cos(ANGLE);\nvar SIN_A = Math.sin(ANGLE);\nvar applyPaddedViewBox = /* @__PURE__ */ __name((svgEl, pad, maxW) => {\n const bbox = svgEl.node().getBBox();\n const w = bbox.width + pad * 2;\n const h = bbox.height + pad * 2;\n configureSvgSize(svgEl, h, w, maxW);\n svgEl.attr(\"viewBox\", `${bbox.x - pad} ${bbox.y - pad} ${w} ${h}`);\n}, \"applyPaddedViewBox\");\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const db = diagram2.db;\n const root = db.getRoot();\n if (!root) {\n return;\n }\n const drawConfig = getConfig();\n const { look, handDrawnSeed, themeVariables } = drawConfig;\n const fontSize = parseFontSize(drawConfig.fontSize)[0] ?? FONT_SIZE_DEFAULT;\n const isHandDrawn = look === \"handDrawn\";\n const causes = root.children ?? [];\n const padding = drawConfig.ishikawa?.diagramPadding ?? 20;\n const useMaxWidth = drawConfig.ishikawa?.useMaxWidth ?? false;\n const svg = selectSvgElement(id);\n const g = svg.append(\"g\").attr(\"class\", \"ishikawa\");\n const roughSvg = isHandDrawn ? rough.svg(svg.node()) : void 0;\n const roughContext = roughSvg ? {\n roughSvg,\n seed: handDrawnSeed ?? 0,\n lineColor: themeVariables?.lineColor ?? \"#333\",\n fillColor: themeVariables?.mainBkg ?? \"#fff\"\n } : void 0;\n const markerId = `ishikawa-arrow-${id}`;\n if (!isHandDrawn) {\n g.append(\"defs\").append(\"marker\").attr(\"id\", markerId).attr(\"viewBox\", \"0 0 10 10\").attr(\"refX\", 0).attr(\"refY\", 5).attr(\"markerWidth\", 6).attr(\"markerHeight\", 6).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 10 0 L 0 5 L 10 10 Z\").attr(\"class\", \"ishikawa-arrow\");\n }\n let spineX = 0;\n let spineY = SPINE_BASE_LENGTH;\n const spineLine = isHandDrawn ? void 0 : drawLine(g, spineX, spineY, spineX, spineY, \"ishikawa-spine\");\n drawHead(g, spineX, spineY, root.text, fontSize, roughContext);\n if (!causes.length) {\n if (isHandDrawn) {\n drawLine(g, spineX, spineY, spineX, spineY, \"ishikawa-spine\", roughContext);\n }\n applyPaddedViewBox(svg, padding, useMaxWidth);\n return;\n }\n spineX -= 20;\n const upperCauses = causes.filter((_, i) => i % 2 === 0);\n const lowerCauses = causes.filter((_, i) => i % 2 === 1);\n const upperStats = sideStats(upperCauses);\n const lowerStats = sideStats(lowerCauses);\n const descendantTotal = upperStats.total + lowerStats.total;\n let upperLen = SPINE_BASE_LENGTH;\n let lowerLen = SPINE_BASE_LENGTH;\n if (descendantTotal > 0) {\n const pool = SPINE_BASE_LENGTH * 2;\n const minLen = SPINE_BASE_LENGTH * 0.3;\n upperLen = Math.max(minLen, pool * (upperStats.total / descendantTotal));\n lowerLen = Math.max(minLen, pool * (lowerStats.total / descendantTotal));\n }\n const minSpacing = fontSize * 2;\n upperLen = Math.max(upperLen, upperStats.max * minSpacing);\n lowerLen = Math.max(lowerLen, lowerStats.max * minSpacing);\n spineY = Math.max(upperLen, SPINE_BASE_LENGTH);\n if (spineLine) {\n spineLine.attr(\"y1\", spineY).attr(\"y2\", spineY);\n }\n g.select(\".ishikawa-head-group\").attr(\"transform\", `translate(0,${spineY})`);\n const pairCount = Math.ceil(causes.length / 2);\n for (let p = 0; p < pairCount; p++) {\n const pg = g.append(\"g\").attr(\"class\", \"ishikawa-pair\");\n for (const [cause, dir, len] of [\n [causes[p * 2], -1, upperLen],\n [causes[p * 2 + 1], 1, lowerLen]\n ]) {\n if (cause) {\n drawBranch(pg, cause, spineX, spineY, dir, len, fontSize, roughContext);\n }\n }\n spineX = pg.selectAll(\"text\").nodes().reduce((left, n) => Math.min(left, n.getBBox().x), Infinity);\n }\n if (isHandDrawn) {\n drawLine(g, spineX, spineY, 0, spineY, \"ishikawa-spine\", roughContext);\n } else {\n spineLine.attr(\"x1\", spineX);\n const markerUrl = `url(#${markerId})`;\n g.selectAll(\"line.ishikawa-branch, line.ishikawa-sub-branch\").attr(\"marker-start\", markerUrl);\n }\n applyPaddedViewBox(svg, padding, useMaxWidth);\n}, \"draw\");\nvar sideStats = /* @__PURE__ */ __name((nodes) => {\n const countDescendants = /* @__PURE__ */ __name((node) => node.children.reduce((sum, child) => sum + 1 + countDescendants(child), 0), \"countDescendants\");\n return nodes.reduce(\n (stats, node) => {\n const descendants = countDescendants(node);\n stats.total += descendants;\n stats.max = Math.max(stats.max, descendants);\n return stats;\n },\n { total: 0, max: 0 }\n );\n}, \"sideStats\");\nvar drawHead = /* @__PURE__ */ __name((svg, x, y, label, fontSize, roughContext) => {\n const maxChars = Math.max(6, Math.floor(110 / (fontSize * 0.6)));\n const headGroup = svg.append(\"g\").attr(\"class\", \"ishikawa-head-group\").attr(\"transform\", `translate(${x},${y})`);\n const textEl = drawMultilineText(\n headGroup,\n wrapText(label, maxChars),\n 0,\n 0,\n \"ishikawa-head-label\",\n \"start\",\n fontSize\n );\n const tb = textEl.node().getBBox();\n const w = Math.max(60, tb.width + 6);\n const h = Math.max(40, tb.height * 2 + 40);\n const headPath = `M 0 ${-h / 2} L 0 ${h / 2} Q ${w * 2.4} 0 0 ${-h / 2} Z`;\n if (roughContext) {\n const roughNode = roughContext.roughSvg.path(headPath, {\n roughness: 1.5,\n seed: roughContext.seed,\n fill: roughContext.fillColor,\n fillStyle: \"hachure\",\n fillWeight: 2.5,\n hachureGap: 5,\n stroke: roughContext.lineColor,\n strokeWidth: 2\n });\n headGroup.insert(() => roughNode, \":first-child\").attr(\"class\", \"ishikawa-head\");\n } else {\n headGroup.insert(\"path\", \":first-child\").attr(\"class\", \"ishikawa-head\").attr(\"d\", headPath);\n }\n textEl.attr(\"transform\", `translate(${(w - tb.width) / 2 - tb.x + 3},${-tb.y - tb.height / 2})`);\n}, \"drawHead\");\nvar flattenTree = /* @__PURE__ */ __name((children, direction) => {\n const entries = [];\n const yOrder = [];\n const walk = /* @__PURE__ */ __name((nodes, pid, depth) => {\n const ordered = direction === -1 ? [...nodes].reverse() : nodes;\n for (const child of ordered) {\n const idx = entries.length;\n const gc = child.children ?? [];\n entries.push({\n depth,\n text: wrapText(child.text, 15),\n parentIndex: pid,\n childCount: gc.length\n });\n if (depth % 2 === 0) {\n yOrder.push(idx);\n if (gc.length) {\n walk(gc, idx, depth + 1);\n }\n } else {\n if (gc.length) {\n walk(gc, idx, depth + 1);\n }\n yOrder.push(idx);\n }\n }\n }, \"walk\");\n walk(children, -1, 2);\n return { entries, yOrder };\n}, \"flattenTree\");\nvar drawCauseLabel = /* @__PURE__ */ __name((svg, text, x, y, direction, fontSize, roughContext) => {\n const lg = svg.append(\"g\").attr(\"class\", \"ishikawa-label-group\");\n const lt = drawMultilineText(\n lg,\n text,\n x,\n y + 11 * direction,\n \"ishikawa-label cause\",\n \"middle\",\n fontSize\n );\n const tb = lt.node().getBBox();\n if (roughContext) {\n const roughNode = roughContext.roughSvg.rectangle(\n tb.x - 20,\n tb.y - 2,\n tb.width + 40,\n tb.height + 4,\n {\n roughness: 1.5,\n seed: roughContext.seed,\n fill: roughContext.fillColor,\n fillStyle: \"hachure\",\n fillWeight: 2.5,\n hachureGap: 5,\n stroke: roughContext.lineColor,\n strokeWidth: 2\n }\n );\n lg.insert(() => roughNode, \":first-child\").attr(\"class\", \"ishikawa-label-box\");\n } else {\n lg.insert(\"rect\", \":first-child\").attr(\"class\", \"ishikawa-label-box\").attr(\"x\", tb.x - 20).attr(\"y\", tb.y - 2).attr(\"width\", tb.width + 40).attr(\"height\", tb.height + 4);\n }\n}, \"drawCauseLabel\");\nvar drawArrowMarker = /* @__PURE__ */ __name((g, x, y, dx, dy, roughContext) => {\n const len = Math.sqrt(dx * dx + dy * dy);\n if (len === 0) {\n return;\n }\n const ux = dx / len;\n const uy = dy / len;\n const s = 6;\n const px = -uy * s;\n const py = ux * s;\n const tipX = x;\n const tipY = y;\n const d = `M ${tipX} ${tipY} L ${tipX - ux * s * 2 + px} ${tipY - uy * s * 2 + py} L ${tipX - ux * s * 2 - px} ${tipY - uy * s * 2 - py} Z`;\n const roughNode = roughContext.roughSvg.path(d, {\n roughness: 1,\n seed: roughContext.seed,\n fill: roughContext.lineColor,\n fillStyle: \"solid\",\n stroke: roughContext.lineColor,\n strokeWidth: 1\n });\n g.append(() => roughNode);\n}, \"drawArrowMarker\");\nvar drawBranch = /* @__PURE__ */ __name((svg, node, startX, startY, direction, length, fontSize, roughContext) => {\n const children = node.children ?? [];\n const lineLen = length * (children.length ? 1 : 0.2);\n const dx = -COS_A * lineLen;\n const dy = SIN_A * lineLen * direction;\n const endX = startX + dx;\n const endY = startY + dy;\n drawLine(svg, startX, startY, endX, endY, \"ishikawa-branch\", roughContext);\n if (roughContext) {\n drawArrowMarker(svg, startX, startY, startX - endX, startY - endY, roughContext);\n }\n drawCauseLabel(svg, node.text, endX, endY, direction, fontSize, roughContext);\n if (!children.length) {\n return;\n }\n const { entries, yOrder } = flattenTree(children, direction);\n const entryCount = entries.length;\n const ys = new Array(entryCount);\n for (const [slot, entryIdx] of yOrder.entries()) {\n ys[entryIdx] = startY + dy * ((slot + 1) / (entryCount + 1));\n }\n const bones = /* @__PURE__ */ new Map();\n bones.set(-1, {\n x0: startX,\n y0: startY,\n x1: endX,\n y1: endY,\n childCount: children.length,\n childrenDrawn: 0\n });\n const diagonalX = -COS_A;\n const diagonalY = SIN_A * direction;\n const oddLabel = direction < 0 ? \"ishikawa-label up\" : \"ishikawa-label down\";\n for (const [i, e] of entries.entries()) {\n const y = ys[i];\n const par = bones.get(e.parentIndex);\n const grp = svg.append(\"g\").attr(\"class\", \"ishikawa-sub-group\");\n let bx0 = 0;\n let by0 = 0;\n let bx1 = 0;\n if (e.depth % 2 === 0) {\n const dyP = par.y1 - par.y0;\n bx0 = lerp(par.x0, par.x1, dyP ? (y - par.y0) / dyP : 0.5);\n by0 = y;\n bx1 = bx0 - (e.childCount > 0 ? BONE_BASE + e.childCount * BONE_PER_CHILD : BONE_STUB);\n drawLine(grp, bx0, y, bx1, y, \"ishikawa-sub-branch\", roughContext);\n if (roughContext) {\n drawArrowMarker(grp, bx0, y, 1, 0, roughContext);\n }\n drawMultilineText(grp, e.text, bx1, y, \"ishikawa-label align\", \"end\", fontSize);\n } else {\n const k = par.childrenDrawn++;\n bx0 = lerp(par.x0, par.x1, (par.childCount - k) / (par.childCount + 1));\n by0 = par.y0;\n bx1 = bx0 + diagonalX * ((y - by0) / diagonalY);\n drawLine(grp, bx0, by0, bx1, y, \"ishikawa-sub-branch\", roughContext);\n if (roughContext) {\n drawArrowMarker(grp, bx0, by0, bx0 - bx1, by0 - y, roughContext);\n }\n drawMultilineText(grp, e.text, bx1, y, oddLabel, \"end\", fontSize);\n }\n if (e.childCount > 0) {\n bones.set(i, {\n x0: bx0,\n y0: by0,\n x1: bx1,\n y1: y,\n childCount: e.childCount,\n childrenDrawn: 0\n });\n }\n }\n}, \"drawBranch\");\nvar splitLines = /* @__PURE__ */ __name((text) => text.split(/<br\\s*\\/?>|\\n/), \"splitLines\");\nvar wrapText = /* @__PURE__ */ __name((text, maxChars) => {\n if (text.length <= maxChars) {\n return text;\n }\n const lines = [];\n for (const word of text.split(/\\s+/)) {\n const last = lines.length - 1;\n if (last >= 0 && lines[last].length + 1 + word.length <= maxChars) {\n lines[last] += \" \" + word;\n } else {\n lines.push(word);\n }\n }\n return lines.join(\"\\n\");\n}, \"wrapText\");\nvar drawMultilineText = /* @__PURE__ */ __name((g, text, x, y, cls, anchor, fontSize) => {\n const lines = splitLines(text);\n const lh = fontSize * 1.05;\n const el = g.append(\"text\").attr(\"class\", cls).attr(\"text-anchor\", anchor).attr(\"x\", x).attr(\"y\", y - (lines.length - 1) * lh / 2);\n for (const [i, line] of lines.entries()) {\n el.append(\"tspan\").attr(\"x\", x).attr(\"dy\", i === 0 ? 0 : lh).text(line);\n }\n return el;\n}, \"drawMultilineText\");\nvar lerp = /* @__PURE__ */ __name((a, b, t) => a + (b - a) * t, \"lerp\");\nvar drawLine = /* @__PURE__ */ __name((g, x1, y1, x2, y2, cls, roughContext) => {\n if (roughContext) {\n const roughNode = roughContext.roughSvg.line(x1, y1, x2, y2, {\n roughness: 1.5,\n seed: roughContext.seed,\n stroke: roughContext.lineColor,\n strokeWidth: 2\n });\n g.append(() => roughNode).attr(\"class\", cls);\n return void 0;\n }\n return g.append(\"line\").attr(\"class\", cls).attr(\"x1\", x1).attr(\"y1\", y1).attr(\"x2\", x2).attr(\"y2\", y2);\n}, \"drawLine\");\nvar renderer = { draw };\n\n// src/diagrams/ishikawa/ishikawaStyles.ts\nvar getStyles = /* @__PURE__ */ __name((options) => `\n.ishikawa .ishikawa-spine,\n.ishikawa .ishikawa-branch,\n.ishikawa .ishikawa-sub-branch {\n stroke: ${options.lineColor};\n stroke-width: 2;\n fill: none;\n}\n\n.ishikawa .ishikawa-sub-branch {\n stroke-width: 1;\n}\n\n.ishikawa .ishikawa-arrow {\n fill: ${options.lineColor};\n}\n\n.ishikawa .ishikawa-head {\n fill: ${options.mainBkg};\n stroke: ${options.lineColor};\n stroke-width: 2;\n}\n\n.ishikawa .ishikawa-label-box {\n fill: ${options.mainBkg};\n stroke: ${options.lineColor};\n stroke-width: 2;\n}\n\n.ishikawa text {\n font-family: ${options.fontFamily};\n font-size: ${options.fontSize};\n fill: ${options.textColor};\n}\n\n.ishikawa .ishikawa-head-label {\n font-weight: 600;\n text-anchor: middle;\n dominant-baseline: middle;\n font-size: 14px;\n}\n\n.ishikawa .ishikawa-label {\n text-anchor: end;\n}\n\n.ishikawa .ishikawa-label.cause {\n text-anchor: middle;\n dominant-baseline: middle;\n}\n\n.ishikawa .ishikawa-label.align {\n text-anchor: end;\n dominant-baseline: middle;\n}\n\n.ishikawa .ishikawa-label.up {\n dominant-baseline: baseline;\n}\n\n.ishikawa .ishikawa-label.down {\n dominant-baseline: hanging;\n}\n`, \"getStyles\");\nvar ishikawaStyles_default = getStyles;\n\n// src/diagrams/ishikawa/ishikawaDiagram.ts\nvar diagram = {\n parser: ishikawa_default,\n get db() {\n return new IshikawaDB();\n },\n renderer,\n styles: ishikawaStyles_default\n};\nexport {\n diagram\n};\n"],"names":["parser","o","__name","k","v","o2","l","$V0","$V1","$V2","$V3","$V4","$V5","$V6","$V7","$V8","$V9","$Va","$Vb","$Vc","parser2","yytext","yyleng","yylineno","yy","yystate","$$","_$","$0","str","hash","error","input","self","stack","tstack","vstack","lstack","table","TERROR","EOF","args","lexer2","sharedState","yyloc","ranges","popStack","n","lex","token","symbol","state","action","r","yyval","p","len","newState","expected","errStr","lexer","ch","lines","oldLines","past","next","pre","c","match","indexed_rule","backup","tempMatch","index","rules","i","condition","yy_","$avoiding_name_collisions","YY_START","Parser","ishikawa_default","IshikawaDB","_a","clear","rawLevel","text","label","common_default","getConfig","setDiagramTitle","level","parent","node","getAccTitle","title","setAccTitle","getAccDescription","description","setAccDescription","getDiagramTitle","FONT_SIZE_DEFAULT","SPINE_BASE_LENGTH","BONE_STUB","BONE_BASE","BONE_PER_CHILD","ANGLE","COS_A","SIN_A","applyPaddedViewBox","svgEl","pad","maxW","bbox","w","h","configureSvgSize","draw","_text","id","_version","diagram2","root","drawConfig","look","handDrawnSeed","themeVariables","fontSize","parseFontSize","isHandDrawn","causes","padding","useMaxWidth","_b","svg","selectSvgElement","g","roughSvg","rough","roughContext","markerId","spineX","spineY","spineLine","drawLine","drawHead","upperCauses","_","lowerCauses","upperStats","sideStats","lowerStats","descendantTotal","upperLen","lowerLen","pool","minLen","minSpacing","pairCount","pg","cause","dir","drawBranch","left","markerUrl","nodes","countDescendants","sum","child","stats","descendants","x","y","maxChars","headGroup","textEl","drawMultilineText","wrapText","tb","headPath","roughNode","flattenTree","children","direction","entries","yOrder","walk","pid","depth","ordered","idx","gc","drawCauseLabel","lg","drawArrowMarker","dx","dy","ux","uy","s","px","py","tipX","tipY","d","startX","startY","length","lineLen","endX","endY","entryCount","ys","slot","entryIdx","bones","diagonalX","diagonalY","oddLabel","e","par","grp","bx0","by0","bx1","dyP","lerp","splitLines","word","last","cls","anchor","lh","el","line","a","b","t","x1","y1","x2","y2","renderer","getStyles","options","ishikawaStyles_default","diagram"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"ishikawaDiagram-UXIWVN3A-zKsJsf_v.js","sources":["../../../../node_modules/.pnpm/mermaid@11.14.0/node_modules/mermaid/dist/chunks/mermaid.core/ishikawaDiagram-UXIWVN3A.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-426QAEUC.mjs\";\nimport {\n parseFontSize\n} from \"./chunk-5PVQY5BW.mjs\";\nimport {\n clear,\n common_default,\n configureSvgSize,\n getAccDescription,\n getAccTitle,\n getConfig2 as getConfig,\n getDiagramTitle,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-ICPOFSXX.mjs\";\nimport {\n __name\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/ishikawa/parser/ishikawa.jison\nvar parser = (function() {\n var o = /* @__PURE__ */ __name(function(k, v, o2, l) {\n for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;\n return o2;\n }, \"o\"), $V0 = [1, 4], $V1 = [1, 14], $V2 = [1, 12], $V3 = [1, 13], $V4 = [6, 7, 8], $V5 = [1, 20], $V6 = [1, 18], $V7 = [1, 19], $V8 = [6, 7, 11], $V9 = [1, 6, 13, 14], $Va = [1, 23], $Vb = [1, 24], $Vc = [1, 6, 7, 11, 13, 14];\n var parser2 = {\n trace: /* @__PURE__ */ __name(function trace() {\n }, \"trace\"),\n yy: {},\n symbols_: { \"error\": 2, \"start\": 3, \"ishikawa\": 4, \"spaceLines\": 5, \"SPACELINE\": 6, \"NL\": 7, \"ISHIKAWA\": 8, \"document\": 9, \"stop\": 10, \"EOF\": 11, \"statement\": 12, \"SPACELIST\": 13, \"TEXT\": 14, \"$accept\": 0, \"$end\": 1 },\n terminals_: { 2: \"error\", 6: \"SPACELINE\", 7: \"NL\", 8: \"ISHIKAWA\", 11: \"EOF\", 13: \"SPACELIST\", 14: \"TEXT\" },\n productions_: [0, [3, 1], [3, 2], [5, 1], [5, 2], [5, 2], [4, 2], [4, 3], [10, 1], [10, 1], [10, 1], [10, 2], [10, 2], [9, 3], [9, 2], [12, 2], [12, 1], [12, 1], [12, 1]],\n performAction: /* @__PURE__ */ __name(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) {\n var $0 = $$.length - 1;\n switch (yystate) {\n case 6:\n case 7:\n return yy;\n break;\n case 15:\n yy.addNode($$[$0 - 1].length, $$[$0].trim());\n break;\n case 16:\n yy.addNode(0, $$[$0].trim());\n break;\n }\n }, \"anonymous\"),\n table: [{ 3: 1, 4: 2, 5: 3, 6: [1, 5], 8: $V0 }, { 1: [3] }, { 1: [2, 1] }, { 4: 6, 6: [1, 7], 7: [1, 8], 8: $V0 }, { 6: $V1, 7: [1, 10], 9: 9, 12: 11, 13: $V2, 14: $V3 }, o($V4, [2, 3]), { 1: [2, 2] }, o($V4, [2, 4]), o($V4, [2, 5]), { 1: [2, 6], 6: $V1, 12: 15, 13: $V2, 14: $V3 }, { 6: $V1, 9: 16, 12: 11, 13: $V2, 14: $V3 }, { 6: $V5, 7: $V6, 10: 17, 11: $V7 }, o($V8, [2, 18], { 14: [1, 21] }), o($V8, [2, 16]), o($V8, [2, 17]), { 6: $V5, 7: $V6, 10: 22, 11: $V7 }, { 1: [2, 7], 6: $V1, 12: 15, 13: $V2, 14: $V3 }, o($V9, [2, 14], { 7: $Va, 11: $Vb }), o($Vc, [2, 8]), o($Vc, [2, 9]), o($Vc, [2, 10]), o($V8, [2, 15]), o($V9, [2, 13], { 7: $Va, 11: $Vb }), o($Vc, [2, 11]), o($Vc, [2, 12])],\n defaultActions: { 2: [2, 1], 6: [2, 2] },\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (hash.recoverable) {\n this.trace(str);\n } else {\n var error = new Error(str);\n error.hash = hash;\n throw error;\n }\n }, \"parseError\"),\n parse: /* @__PURE__ */ __name(function parse(input) {\n var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = \"\", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;\n var args = lstack.slice.call(arguments, 1);\n var lexer2 = Object.create(this.lexer);\n var sharedState = { yy: {} };\n for (var k in this.yy) {\n if (Object.prototype.hasOwnProperty.call(this.yy, k)) {\n sharedState.yy[k] = this.yy[k];\n }\n }\n lexer2.setInput(input, sharedState.yy);\n sharedState.yy.lexer = lexer2;\n sharedState.yy.parser = this;\n if (typeof lexer2.yylloc == \"undefined\") {\n lexer2.yylloc = {};\n }\n var yyloc = lexer2.yylloc;\n lstack.push(yyloc);\n var ranges = lexer2.options && lexer2.options.ranges;\n if (typeof sharedState.yy.parseError === \"function\") {\n this.parseError = sharedState.yy.parseError;\n } else {\n this.parseError = Object.getPrototypeOf(this).parseError;\n }\n function popStack(n) {\n stack.length = stack.length - 2 * n;\n vstack.length = vstack.length - n;\n lstack.length = lstack.length - n;\n }\n __name(popStack, \"popStack\");\n function lex() {\n var token;\n token = tstack.pop() || lexer2.lex() || EOF;\n if (typeof token !== \"number\") {\n if (token instanceof Array) {\n tstack = token;\n token = tstack.pop();\n }\n token = self.symbols_[token] || token;\n }\n return token;\n }\n __name(lex, \"lex\");\n var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected;\n while (true) {\n state = stack[stack.length - 1];\n if (this.defaultActions[state]) {\n action = this.defaultActions[state];\n } else {\n if (symbol === null || typeof symbol == \"undefined\") {\n symbol = lex();\n }\n action = table[state] && table[state][symbol];\n }\n if (typeof action === \"undefined\" || !action.length || !action[0]) {\n var errStr = \"\";\n expected = [];\n for (p in table[state]) {\n if (this.terminals_[p] && p > TERROR) {\n expected.push(\"'\" + this.terminals_[p] + \"'\");\n }\n }\n if (lexer2.showPosition) {\n errStr = \"Parse error on line \" + (yylineno + 1) + \":\\n\" + lexer2.showPosition() + \"\\nExpecting \" + expected.join(\", \") + \", got '\" + (this.terminals_[symbol] || symbol) + \"'\";\n } else {\n errStr = \"Parse error on line \" + (yylineno + 1) + \": Unexpected \" + (symbol == EOF ? \"end of input\" : \"'\" + (this.terminals_[symbol] || symbol) + \"'\");\n }\n this.parseError(errStr, {\n text: lexer2.match,\n token: this.terminals_[symbol] || symbol,\n line: lexer2.yylineno,\n loc: yyloc,\n expected\n });\n }\n if (action[0] instanceof Array && action.length > 1) {\n throw new Error(\"Parse Error: multiple actions possible at state: \" + state + \", token: \" + symbol);\n }\n switch (action[0]) {\n case 1:\n stack.push(symbol);\n vstack.push(lexer2.yytext);\n lstack.push(lexer2.yylloc);\n stack.push(action[1]);\n symbol = null;\n if (!preErrorSymbol) {\n yyleng = lexer2.yyleng;\n yytext = lexer2.yytext;\n yylineno = lexer2.yylineno;\n yyloc = lexer2.yylloc;\n if (recovering > 0) {\n recovering--;\n }\n } else {\n symbol = preErrorSymbol;\n preErrorSymbol = null;\n }\n break;\n case 2:\n len = this.productions_[action[1]][1];\n yyval.$ = vstack[vstack.length - len];\n yyval._$ = {\n first_line: lstack[lstack.length - (len || 1)].first_line,\n last_line: lstack[lstack.length - 1].last_line,\n first_column: lstack[lstack.length - (len || 1)].first_column,\n last_column: lstack[lstack.length - 1].last_column\n };\n if (ranges) {\n yyval._$.range = [\n lstack[lstack.length - (len || 1)].range[0],\n lstack[lstack.length - 1].range[1]\n ];\n }\n r = this.performAction.apply(yyval, [\n yytext,\n yyleng,\n yylineno,\n sharedState.yy,\n action[1],\n vstack,\n lstack\n ].concat(args));\n if (typeof r !== \"undefined\") {\n return r;\n }\n if (len) {\n stack = stack.slice(0, -1 * len * 2);\n vstack = vstack.slice(0, -1 * len);\n lstack = lstack.slice(0, -1 * len);\n }\n stack.push(this.productions_[action[1]][0]);\n vstack.push(yyval.$);\n lstack.push(yyval._$);\n newState = table[stack[stack.length - 2]][stack[stack.length - 1]];\n stack.push(newState);\n break;\n case 3:\n return true;\n }\n }\n return true;\n }, \"parse\")\n };\n var lexer = /* @__PURE__ */ (function() {\n var lexer2 = {\n EOF: 1,\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (this.yy.parser) {\n this.yy.parser.parseError(str, hash);\n } else {\n throw new Error(str);\n }\n }, \"parseError\"),\n // resets the lexer, sets new input\n setInput: /* @__PURE__ */ __name(function(input, yy) {\n this.yy = yy || this.yy || {};\n this._input = input;\n this._more = this._backtrack = this.done = false;\n this.yylineno = this.yyleng = 0;\n this.yytext = this.matched = this.match = \"\";\n this.conditionStack = [\"INITIAL\"];\n this.yylloc = {\n first_line: 1,\n first_column: 0,\n last_line: 1,\n last_column: 0\n };\n if (this.options.ranges) {\n this.yylloc.range = [0, 0];\n }\n this.offset = 0;\n return this;\n }, \"setInput\"),\n // consumes and returns one char from the input\n input: /* @__PURE__ */ __name(function() {\n var ch = this._input[0];\n this.yytext += ch;\n this.yyleng++;\n this.offset++;\n this.match += ch;\n this.matched += ch;\n var lines = ch.match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno++;\n this.yylloc.last_line++;\n } else {\n this.yylloc.last_column++;\n }\n if (this.options.ranges) {\n this.yylloc.range[1]++;\n }\n this._input = this._input.slice(1);\n return ch;\n }, \"input\"),\n // unshifts one char (or a string) into the input\n unput: /* @__PURE__ */ __name(function(ch) {\n var len = ch.length;\n var lines = ch.split(/(?:\\r\\n?|\\n)/g);\n this._input = ch + this._input;\n this.yytext = this.yytext.substr(0, this.yytext.length - len);\n this.offset -= len;\n var oldLines = this.match.split(/(?:\\r\\n?|\\n)/g);\n this.match = this.match.substr(0, this.match.length - 1);\n this.matched = this.matched.substr(0, this.matched.length - 1);\n if (lines.length - 1) {\n this.yylineno -= lines.length - 1;\n }\n var r = this.yylloc.range;\n this.yylloc = {\n first_line: this.yylloc.first_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.first_column,\n last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len\n };\n if (this.options.ranges) {\n this.yylloc.range = [r[0], r[0] + this.yyleng - len];\n }\n this.yyleng = this.yytext.length;\n return this;\n }, \"unput\"),\n // When called from action, caches matched text and appends it on next action\n more: /* @__PURE__ */ __name(function() {\n this._more = true;\n return this;\n }, \"more\"),\n // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.\n reject: /* @__PURE__ */ __name(function() {\n if (this.options.backtrack_lexer) {\n this._backtrack = true;\n } else {\n return this.parseError(\"Lexical error on line \" + (this.yylineno + 1) + \". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n return this;\n }, \"reject\"),\n // retain first n characters of the match\n less: /* @__PURE__ */ __name(function(n) {\n this.unput(this.match.slice(n));\n }, \"less\"),\n // displays already matched input, i.e. for error messages\n pastInput: /* @__PURE__ */ __name(function() {\n var past = this.matched.substr(0, this.matched.length - this.match.length);\n return (past.length > 20 ? \"...\" : \"\") + past.substr(-20).replace(/\\n/g, \"\");\n }, \"pastInput\"),\n // displays upcoming input, i.e. for error messages\n upcomingInput: /* @__PURE__ */ __name(function() {\n var next = this.match;\n if (next.length < 20) {\n next += this._input.substr(0, 20 - next.length);\n }\n return (next.substr(0, 20) + (next.length > 20 ? \"...\" : \"\")).replace(/\\n/g, \"\");\n }, \"upcomingInput\"),\n // displays the character position where the lexing error occurred, i.e. for error messages\n showPosition: /* @__PURE__ */ __name(function() {\n var pre = this.pastInput();\n var c = new Array(pre.length + 1).join(\"-\");\n return pre + this.upcomingInput() + \"\\n\" + c + \"^\";\n }, \"showPosition\"),\n // test the lexed token: return FALSE when not a match, otherwise return token\n test_match: /* @__PURE__ */ __name(function(match, indexed_rule) {\n var token, lines, backup;\n if (this.options.backtrack_lexer) {\n backup = {\n yylineno: this.yylineno,\n yylloc: {\n first_line: this.yylloc.first_line,\n last_line: this.last_line,\n first_column: this.yylloc.first_column,\n last_column: this.yylloc.last_column\n },\n yytext: this.yytext,\n match: this.match,\n matches: this.matches,\n matched: this.matched,\n yyleng: this.yyleng,\n offset: this.offset,\n _more: this._more,\n _input: this._input,\n yy: this.yy,\n conditionStack: this.conditionStack.slice(0),\n done: this.done\n };\n if (this.options.ranges) {\n backup.yylloc.range = this.yylloc.range.slice(0);\n }\n }\n lines = match[0].match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno += lines.length;\n }\n this.yylloc = {\n first_line: this.yylloc.last_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.last_column,\n last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\\r?\\n?/)[0].length : this.yylloc.last_column + match[0].length\n };\n this.yytext += match[0];\n this.match += match[0];\n this.matches = match;\n this.yyleng = this.yytext.length;\n if (this.options.ranges) {\n this.yylloc.range = [this.offset, this.offset += this.yyleng];\n }\n this._more = false;\n this._backtrack = false;\n this._input = this._input.slice(match[0].length);\n this.matched += match[0];\n token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]);\n if (this.done && this._input) {\n this.done = false;\n }\n if (token) {\n return token;\n } else if (this._backtrack) {\n for (var k in backup) {\n this[k] = backup[k];\n }\n return false;\n }\n return false;\n }, \"test_match\"),\n // return next match in input\n next: /* @__PURE__ */ __name(function() {\n if (this.done) {\n return this.EOF;\n }\n if (!this._input) {\n this.done = true;\n }\n var token, match, tempMatch, index;\n if (!this._more) {\n this.yytext = \"\";\n this.match = \"\";\n }\n var rules = this._currentRules();\n for (var i = 0; i < rules.length; i++) {\n tempMatch = this._input.match(this.rules[rules[i]]);\n if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {\n match = tempMatch;\n index = i;\n if (this.options.backtrack_lexer) {\n token = this.test_match(tempMatch, rules[i]);\n if (token !== false) {\n return token;\n } else if (this._backtrack) {\n match = false;\n continue;\n } else {\n return false;\n }\n } else if (!this.options.flex) {\n break;\n }\n }\n }\n if (match) {\n token = this.test_match(match, rules[index]);\n if (token !== false) {\n return token;\n }\n return false;\n }\n if (this._input === \"\") {\n return this.EOF;\n } else {\n return this.parseError(\"Lexical error on line \" + (this.yylineno + 1) + \". Unrecognized text.\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n }, \"next\"),\n // return next match that has a token\n lex: /* @__PURE__ */ __name(function lex() {\n var r = this.next();\n if (r) {\n return r;\n } else {\n return this.lex();\n }\n }, \"lex\"),\n // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)\n begin: /* @__PURE__ */ __name(function begin(condition) {\n this.conditionStack.push(condition);\n }, \"begin\"),\n // pop the previously active lexer condition state off the condition stack\n popState: /* @__PURE__ */ __name(function popState() {\n var n = this.conditionStack.length - 1;\n if (n > 0) {\n return this.conditionStack.pop();\n } else {\n return this.conditionStack[0];\n }\n }, \"popState\"),\n // produce the lexer rule set which is active for the currently active lexer condition state\n _currentRules: /* @__PURE__ */ __name(function _currentRules() {\n if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) {\n return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;\n } else {\n return this.conditions[\"INITIAL\"].rules;\n }\n }, \"_currentRules\"),\n // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available\n topState: /* @__PURE__ */ __name(function topState(n) {\n n = this.conditionStack.length - 1 - Math.abs(n || 0);\n if (n >= 0) {\n return this.conditionStack[n];\n } else {\n return \"INITIAL\";\n }\n }, \"topState\"),\n // alias for begin(condition)\n pushState: /* @__PURE__ */ __name(function pushState(condition) {\n this.begin(condition);\n }, \"pushState\"),\n // return the number of states currently on the stack\n stateStackSize: /* @__PURE__ */ __name(function stateStackSize() {\n return this.conditionStack.length;\n }, \"stateStackSize\"),\n options: { \"case-insensitive\": true },\n performAction: /* @__PURE__ */ __name(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) {\n var YYSTATE = YY_START;\n switch ($avoiding_name_collisions) {\n case 0:\n return 6;\n break;\n case 1:\n return 8;\n break;\n case 2:\n return 8;\n break;\n case 3:\n return 6;\n break;\n case 4:\n return 7;\n break;\n case 5:\n return 13;\n break;\n case 6:\n return 14;\n break;\n case 7:\n return 11;\n break;\n }\n }, \"anonymous\"),\n rules: [/^(?:\\s*%%.*)/i, /^(?:ishikawa-beta\\b)/i, /^(?:ishikawa\\b)/i, /^(?:[\\s]+[\\n])/i, /^(?:[\\n]+)/i, /^(?:[\\s]+)/i, /^(?:[^\\n]+)/i, /^(?:$)/i],\n conditions: { \"INITIAL\": { \"rules\": [0, 1, 2, 3, 4, 5, 6, 7], \"inclusive\": true } }\n };\n return lexer2;\n })();\n parser2.lexer = lexer;\n function Parser() {\n this.yy = {};\n }\n __name(Parser, \"Parser\");\n Parser.prototype = parser2;\n parser2.Parser = Parser;\n return new Parser();\n})();\nparser.parser = parser;\nvar ishikawa_default = parser;\n\n// src/diagrams/ishikawa/ishikawaDb.ts\nvar IshikawaDB = class {\n constructor() {\n this.stack = [];\n this.clear = this.clear.bind(this);\n this.addNode = this.addNode.bind(this);\n this.getRoot = this.getRoot.bind(this);\n }\n static {\n __name(this, \"IshikawaDB\");\n }\n clear() {\n this.root = void 0;\n this.stack = [];\n this.baseLevel = void 0;\n clear();\n }\n getRoot() {\n return this.root;\n }\n addNode(rawLevel, text) {\n const label = common_default.sanitizeText(text, getConfig());\n if (!this.root) {\n this.root = { text: label, children: [] };\n this.stack = [{ level: 0, node: this.root }];\n setDiagramTitle(label);\n return;\n }\n this.baseLevel ??= rawLevel;\n let level = rawLevel - this.baseLevel + 1;\n if (level <= 0) {\n level = 1;\n }\n while (this.stack.length > 1 && this.stack[this.stack.length - 1].level >= level) {\n this.stack.pop();\n }\n const parent = this.stack[this.stack.length - 1].node;\n const node = { text: label, children: [] };\n parent.children.push(node);\n this.stack.push({ level, node });\n }\n getAccTitle() {\n return getAccTitle();\n }\n setAccTitle(title) {\n setAccTitle(title);\n }\n getAccDescription() {\n return getAccDescription();\n }\n setAccDescription(description) {\n setAccDescription(description);\n }\n getDiagramTitle() {\n return getDiagramTitle();\n }\n setDiagramTitle(title) {\n setDiagramTitle(title);\n }\n};\n\n// src/diagrams/ishikawa/ishikawaRenderer.ts\nimport rough from \"roughjs\";\nvar FONT_SIZE_DEFAULT = 14;\nvar SPINE_BASE_LENGTH = 250;\nvar BONE_STUB = 30;\nvar BONE_BASE = 60;\nvar BONE_PER_CHILD = 5;\nvar ANGLE = 82 * Math.PI / 180;\nvar COS_A = Math.cos(ANGLE);\nvar SIN_A = Math.sin(ANGLE);\nvar applyPaddedViewBox = /* @__PURE__ */ __name((svgEl, pad, maxW) => {\n const bbox = svgEl.node().getBBox();\n const w = bbox.width + pad * 2;\n const h = bbox.height + pad * 2;\n configureSvgSize(svgEl, h, w, maxW);\n svgEl.attr(\"viewBox\", `${bbox.x - pad} ${bbox.y - pad} ${w} ${h}`);\n}, \"applyPaddedViewBox\");\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const db = diagram2.db;\n const root = db.getRoot();\n if (!root) {\n return;\n }\n const drawConfig = getConfig();\n const { look, handDrawnSeed, themeVariables } = drawConfig;\n const fontSize = parseFontSize(drawConfig.fontSize)[0] ?? FONT_SIZE_DEFAULT;\n const isHandDrawn = look === \"handDrawn\";\n const causes = root.children ?? [];\n const padding = drawConfig.ishikawa?.diagramPadding ?? 20;\n const useMaxWidth = drawConfig.ishikawa?.useMaxWidth ?? false;\n const svg = selectSvgElement(id);\n const g = svg.append(\"g\").attr(\"class\", \"ishikawa\");\n const roughSvg = isHandDrawn ? rough.svg(svg.node()) : void 0;\n const roughContext = roughSvg ? {\n roughSvg,\n seed: handDrawnSeed ?? 0,\n lineColor: themeVariables?.lineColor ?? \"#333\",\n fillColor: themeVariables?.mainBkg ?? \"#fff\"\n } : void 0;\n const markerId = `ishikawa-arrow-${id}`;\n if (!isHandDrawn) {\n g.append(\"defs\").append(\"marker\").attr(\"id\", markerId).attr(\"viewBox\", \"0 0 10 10\").attr(\"refX\", 0).attr(\"refY\", 5).attr(\"markerWidth\", 6).attr(\"markerHeight\", 6).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 10 0 L 0 5 L 10 10 Z\").attr(\"class\", \"ishikawa-arrow\");\n }\n let spineX = 0;\n let spineY = SPINE_BASE_LENGTH;\n const spineLine = isHandDrawn ? void 0 : drawLine(g, spineX, spineY, spineX, spineY, \"ishikawa-spine\");\n drawHead(g, spineX, spineY, root.text, fontSize, roughContext);\n if (!causes.length) {\n if (isHandDrawn) {\n drawLine(g, spineX, spineY, spineX, spineY, \"ishikawa-spine\", roughContext);\n }\n applyPaddedViewBox(svg, padding, useMaxWidth);\n return;\n }\n spineX -= 20;\n const upperCauses = causes.filter((_, i) => i % 2 === 0);\n const lowerCauses = causes.filter((_, i) => i % 2 === 1);\n const upperStats = sideStats(upperCauses);\n const lowerStats = sideStats(lowerCauses);\n const descendantTotal = upperStats.total + lowerStats.total;\n let upperLen = SPINE_BASE_LENGTH;\n let lowerLen = SPINE_BASE_LENGTH;\n if (descendantTotal > 0) {\n const pool = SPINE_BASE_LENGTH * 2;\n const minLen = SPINE_BASE_LENGTH * 0.3;\n upperLen = Math.max(minLen, pool * (upperStats.total / descendantTotal));\n lowerLen = Math.max(minLen, pool * (lowerStats.total / descendantTotal));\n }\n const minSpacing = fontSize * 2;\n upperLen = Math.max(upperLen, upperStats.max * minSpacing);\n lowerLen = Math.max(lowerLen, lowerStats.max * minSpacing);\n spineY = Math.max(upperLen, SPINE_BASE_LENGTH);\n if (spineLine) {\n spineLine.attr(\"y1\", spineY).attr(\"y2\", spineY);\n }\n g.select(\".ishikawa-head-group\").attr(\"transform\", `translate(0,${spineY})`);\n const pairCount = Math.ceil(causes.length / 2);\n for (let p = 0; p < pairCount; p++) {\n const pg = g.append(\"g\").attr(\"class\", \"ishikawa-pair\");\n for (const [cause, dir, len] of [\n [causes[p * 2], -1, upperLen],\n [causes[p * 2 + 1], 1, lowerLen]\n ]) {\n if (cause) {\n drawBranch(pg, cause, spineX, spineY, dir, len, fontSize, roughContext);\n }\n }\n spineX = pg.selectAll(\"text\").nodes().reduce((left, n) => Math.min(left, n.getBBox().x), Infinity);\n }\n if (isHandDrawn) {\n drawLine(g, spineX, spineY, 0, spineY, \"ishikawa-spine\", roughContext);\n } else {\n spineLine.attr(\"x1\", spineX);\n const markerUrl = `url(#${markerId})`;\n g.selectAll(\"line.ishikawa-branch, line.ishikawa-sub-branch\").attr(\"marker-start\", markerUrl);\n }\n applyPaddedViewBox(svg, padding, useMaxWidth);\n}, \"draw\");\nvar sideStats = /* @__PURE__ */ __name((nodes) => {\n const countDescendants = /* @__PURE__ */ __name((node) => node.children.reduce((sum, child) => sum + 1 + countDescendants(child), 0), \"countDescendants\");\n return nodes.reduce(\n (stats, node) => {\n const descendants = countDescendants(node);\n stats.total += descendants;\n stats.max = Math.max(stats.max, descendants);\n return stats;\n },\n { total: 0, max: 0 }\n );\n}, \"sideStats\");\nvar drawHead = /* @__PURE__ */ __name((svg, x, y, label, fontSize, roughContext) => {\n const maxChars = Math.max(6, Math.floor(110 / (fontSize * 0.6)));\n const headGroup = svg.append(\"g\").attr(\"class\", \"ishikawa-head-group\").attr(\"transform\", `translate(${x},${y})`);\n const textEl = drawMultilineText(\n headGroup,\n wrapText(label, maxChars),\n 0,\n 0,\n \"ishikawa-head-label\",\n \"start\",\n fontSize\n );\n const tb = textEl.node().getBBox();\n const w = Math.max(60, tb.width + 6);\n const h = Math.max(40, tb.height * 2 + 40);\n const headPath = `M 0 ${-h / 2} L 0 ${h / 2} Q ${w * 2.4} 0 0 ${-h / 2} Z`;\n if (roughContext) {\n const roughNode = roughContext.roughSvg.path(headPath, {\n roughness: 1.5,\n seed: roughContext.seed,\n fill: roughContext.fillColor,\n fillStyle: \"hachure\",\n fillWeight: 2.5,\n hachureGap: 5,\n stroke: roughContext.lineColor,\n strokeWidth: 2\n });\n headGroup.insert(() => roughNode, \":first-child\").attr(\"class\", \"ishikawa-head\");\n } else {\n headGroup.insert(\"path\", \":first-child\").attr(\"class\", \"ishikawa-head\").attr(\"d\", headPath);\n }\n textEl.attr(\"transform\", `translate(${(w - tb.width) / 2 - tb.x + 3},${-tb.y - tb.height / 2})`);\n}, \"drawHead\");\nvar flattenTree = /* @__PURE__ */ __name((children, direction) => {\n const entries = [];\n const yOrder = [];\n const walk = /* @__PURE__ */ __name((nodes, pid, depth) => {\n const ordered = direction === -1 ? [...nodes].reverse() : nodes;\n for (const child of ordered) {\n const idx = entries.length;\n const gc = child.children ?? [];\n entries.push({\n depth,\n text: wrapText(child.text, 15),\n parentIndex: pid,\n childCount: gc.length\n });\n if (depth % 2 === 0) {\n yOrder.push(idx);\n if (gc.length) {\n walk(gc, idx, depth + 1);\n }\n } else {\n if (gc.length) {\n walk(gc, idx, depth + 1);\n }\n yOrder.push(idx);\n }\n }\n }, \"walk\");\n walk(children, -1, 2);\n return { entries, yOrder };\n}, \"flattenTree\");\nvar drawCauseLabel = /* @__PURE__ */ __name((svg, text, x, y, direction, fontSize, roughContext) => {\n const lg = svg.append(\"g\").attr(\"class\", \"ishikawa-label-group\");\n const lt = drawMultilineText(\n lg,\n text,\n x,\n y + 11 * direction,\n \"ishikawa-label cause\",\n \"middle\",\n fontSize\n );\n const tb = lt.node().getBBox();\n if (roughContext) {\n const roughNode = roughContext.roughSvg.rectangle(\n tb.x - 20,\n tb.y - 2,\n tb.width + 40,\n tb.height + 4,\n {\n roughness: 1.5,\n seed: roughContext.seed,\n fill: roughContext.fillColor,\n fillStyle: \"hachure\",\n fillWeight: 2.5,\n hachureGap: 5,\n stroke: roughContext.lineColor,\n strokeWidth: 2\n }\n );\n lg.insert(() => roughNode, \":first-child\").attr(\"class\", \"ishikawa-label-box\");\n } else {\n lg.insert(\"rect\", \":first-child\").attr(\"class\", \"ishikawa-label-box\").attr(\"x\", tb.x - 20).attr(\"y\", tb.y - 2).attr(\"width\", tb.width + 40).attr(\"height\", tb.height + 4);\n }\n}, \"drawCauseLabel\");\nvar drawArrowMarker = /* @__PURE__ */ __name((g, x, y, dx, dy, roughContext) => {\n const len = Math.sqrt(dx * dx + dy * dy);\n if (len === 0) {\n return;\n }\n const ux = dx / len;\n const uy = dy / len;\n const s = 6;\n const px = -uy * s;\n const py = ux * s;\n const tipX = x;\n const tipY = y;\n const d = `M ${tipX} ${tipY} L ${tipX - ux * s * 2 + px} ${tipY - uy * s * 2 + py} L ${tipX - ux * s * 2 - px} ${tipY - uy * s * 2 - py} Z`;\n const roughNode = roughContext.roughSvg.path(d, {\n roughness: 1,\n seed: roughContext.seed,\n fill: roughContext.lineColor,\n fillStyle: \"solid\",\n stroke: roughContext.lineColor,\n strokeWidth: 1\n });\n g.append(() => roughNode);\n}, \"drawArrowMarker\");\nvar drawBranch = /* @__PURE__ */ __name((svg, node, startX, startY, direction, length, fontSize, roughContext) => {\n const children = node.children ?? [];\n const lineLen = length * (children.length ? 1 : 0.2);\n const dx = -COS_A * lineLen;\n const dy = SIN_A * lineLen * direction;\n const endX = startX + dx;\n const endY = startY + dy;\n drawLine(svg, startX, startY, endX, endY, \"ishikawa-branch\", roughContext);\n if (roughContext) {\n drawArrowMarker(svg, startX, startY, startX - endX, startY - endY, roughContext);\n }\n drawCauseLabel(svg, node.text, endX, endY, direction, fontSize, roughContext);\n if (!children.length) {\n return;\n }\n const { entries, yOrder } = flattenTree(children, direction);\n const entryCount = entries.length;\n const ys = new Array(entryCount);\n for (const [slot, entryIdx] of yOrder.entries()) {\n ys[entryIdx] = startY + dy * ((slot + 1) / (entryCount + 1));\n }\n const bones = /* @__PURE__ */ new Map();\n bones.set(-1, {\n x0: startX,\n y0: startY,\n x1: endX,\n y1: endY,\n childCount: children.length,\n childrenDrawn: 0\n });\n const diagonalX = -COS_A;\n const diagonalY = SIN_A * direction;\n const oddLabel = direction < 0 ? \"ishikawa-label up\" : \"ishikawa-label down\";\n for (const [i, e] of entries.entries()) {\n const y = ys[i];\n const par = bones.get(e.parentIndex);\n const grp = svg.append(\"g\").attr(\"class\", \"ishikawa-sub-group\");\n let bx0 = 0;\n let by0 = 0;\n let bx1 = 0;\n if (e.depth % 2 === 0) {\n const dyP = par.y1 - par.y0;\n bx0 = lerp(par.x0, par.x1, dyP ? (y - par.y0) / dyP : 0.5);\n by0 = y;\n bx1 = bx0 - (e.childCount > 0 ? BONE_BASE + e.childCount * BONE_PER_CHILD : BONE_STUB);\n drawLine(grp, bx0, y, bx1, y, \"ishikawa-sub-branch\", roughContext);\n if (roughContext) {\n drawArrowMarker(grp, bx0, y, 1, 0, roughContext);\n }\n drawMultilineText(grp, e.text, bx1, y, \"ishikawa-label align\", \"end\", fontSize);\n } else {\n const k = par.childrenDrawn++;\n bx0 = lerp(par.x0, par.x1, (par.childCount - k) / (par.childCount + 1));\n by0 = par.y0;\n bx1 = bx0 + diagonalX * ((y - by0) / diagonalY);\n drawLine(grp, bx0, by0, bx1, y, \"ishikawa-sub-branch\", roughContext);\n if (roughContext) {\n drawArrowMarker(grp, bx0, by0, bx0 - bx1, by0 - y, roughContext);\n }\n drawMultilineText(grp, e.text, bx1, y, oddLabel, \"end\", fontSize);\n }\n if (e.childCount > 0) {\n bones.set(i, {\n x0: bx0,\n y0: by0,\n x1: bx1,\n y1: y,\n childCount: e.childCount,\n childrenDrawn: 0\n });\n }\n }\n}, \"drawBranch\");\nvar splitLines = /* @__PURE__ */ __name((text) => text.split(/<br\\s*\\/?>|\\n/), \"splitLines\");\nvar wrapText = /* @__PURE__ */ __name((text, maxChars) => {\n if (text.length <= maxChars) {\n return text;\n }\n const lines = [];\n for (const word of text.split(/\\s+/)) {\n const last = lines.length - 1;\n if (last >= 0 && lines[last].length + 1 + word.length <= maxChars) {\n lines[last] += \" \" + word;\n } else {\n lines.push(word);\n }\n }\n return lines.join(\"\\n\");\n}, \"wrapText\");\nvar drawMultilineText = /* @__PURE__ */ __name((g, text, x, y, cls, anchor, fontSize) => {\n const lines = splitLines(text);\n const lh = fontSize * 1.05;\n const el = g.append(\"text\").attr(\"class\", cls).attr(\"text-anchor\", anchor).attr(\"x\", x).attr(\"y\", y - (lines.length - 1) * lh / 2);\n for (const [i, line] of lines.entries()) {\n el.append(\"tspan\").attr(\"x\", x).attr(\"dy\", i === 0 ? 0 : lh).text(line);\n }\n return el;\n}, \"drawMultilineText\");\nvar lerp = /* @__PURE__ */ __name((a, b, t) => a + (b - a) * t, \"lerp\");\nvar drawLine = /* @__PURE__ */ __name((g, x1, y1, x2, y2, cls, roughContext) => {\n if (roughContext) {\n const roughNode = roughContext.roughSvg.line(x1, y1, x2, y2, {\n roughness: 1.5,\n seed: roughContext.seed,\n stroke: roughContext.lineColor,\n strokeWidth: 2\n });\n g.append(() => roughNode).attr(\"class\", cls);\n return void 0;\n }\n return g.append(\"line\").attr(\"class\", cls).attr(\"x1\", x1).attr(\"y1\", y1).attr(\"x2\", x2).attr(\"y2\", y2);\n}, \"drawLine\");\nvar renderer = { draw };\n\n// src/diagrams/ishikawa/ishikawaStyles.ts\nvar getStyles = /* @__PURE__ */ __name((options) => `\n.ishikawa .ishikawa-spine,\n.ishikawa .ishikawa-branch,\n.ishikawa .ishikawa-sub-branch {\n stroke: ${options.lineColor};\n stroke-width: 2;\n fill: none;\n}\n\n.ishikawa .ishikawa-sub-branch {\n stroke-width: 1;\n}\n\n.ishikawa .ishikawa-arrow {\n fill: ${options.lineColor};\n}\n\n.ishikawa .ishikawa-head {\n fill: ${options.mainBkg};\n stroke: ${options.lineColor};\n stroke-width: 2;\n}\n\n.ishikawa .ishikawa-label-box {\n fill: ${options.mainBkg};\n stroke: ${options.lineColor};\n stroke-width: 2;\n}\n\n.ishikawa text {\n font-family: ${options.fontFamily};\n font-size: ${options.fontSize};\n fill: ${options.textColor};\n}\n\n.ishikawa .ishikawa-head-label {\n font-weight: 600;\n text-anchor: middle;\n dominant-baseline: middle;\n font-size: 14px;\n}\n\n.ishikawa .ishikawa-label {\n text-anchor: end;\n}\n\n.ishikawa .ishikawa-label.cause {\n text-anchor: middle;\n dominant-baseline: middle;\n}\n\n.ishikawa .ishikawa-label.align {\n text-anchor: end;\n dominant-baseline: middle;\n}\n\n.ishikawa .ishikawa-label.up {\n dominant-baseline: baseline;\n}\n\n.ishikawa .ishikawa-label.down {\n dominant-baseline: hanging;\n}\n`, \"getStyles\");\nvar ishikawaStyles_default = getStyles;\n\n// src/diagrams/ishikawa/ishikawaDiagram.ts\nvar diagram = {\n parser: ishikawa_default,\n get db() {\n return new IshikawaDB();\n },\n renderer,\n styles: ishikawaStyles_default\n};\nexport {\n diagram\n};\n"],"names":["parser","o","__name","k","v","o2","l","$V0","$V1","$V2","$V3","$V4","$V5","$V6","$V7","$V8","$V9","$Va","$Vb","$Vc","parser2","yytext","yyleng","yylineno","yy","yystate","$$","_$","$0","str","hash","error","input","self","stack","tstack","vstack","lstack","table","TERROR","EOF","args","lexer2","sharedState","yyloc","ranges","popStack","n","lex","token","symbol","state","action","r","yyval","p","len","newState","expected","errStr","lexer","ch","lines","oldLines","past","next","pre","c","match","indexed_rule","backup","tempMatch","index","rules","i","condition","yy_","$avoiding_name_collisions","YY_START","Parser","ishikawa_default","IshikawaDB","_a","clear","rawLevel","text","label","common_default","getConfig","setDiagramTitle","level","parent","node","getAccTitle","title","setAccTitle","getAccDescription","description","setAccDescription","getDiagramTitle","FONT_SIZE_DEFAULT","SPINE_BASE_LENGTH","BONE_STUB","BONE_BASE","BONE_PER_CHILD","ANGLE","COS_A","SIN_A","applyPaddedViewBox","svgEl","pad","maxW","bbox","w","h","configureSvgSize","draw","_text","id","_version","diagram2","root","drawConfig","look","handDrawnSeed","themeVariables","fontSize","parseFontSize","isHandDrawn","causes","padding","useMaxWidth","_b","svg","selectSvgElement","g","roughSvg","rough","roughContext","markerId","spineX","spineY","spineLine","drawLine","drawHead","upperCauses","_","lowerCauses","upperStats","sideStats","lowerStats","descendantTotal","upperLen","lowerLen","pool","minLen","minSpacing","pairCount","pg","cause","dir","drawBranch","left","markerUrl","nodes","countDescendants","sum","child","stats","descendants","x","y","maxChars","headGroup","textEl","drawMultilineText","wrapText","tb","headPath","roughNode","flattenTree","children","direction","entries","yOrder","walk","pid","depth","ordered","idx","gc","drawCauseLabel","lg","drawArrowMarker","dx","dy","ux","uy","s","px","py","tipX","tipY","d","startX","startY","length","lineLen","endX","endY","entryCount","ys","slot","entryIdx","bones","diagonalX","diagonalY","oddLabel","e","par","grp","bx0","by0","bx1","dyP","lerp","splitLines","word","last","cls","anchor","lh","el","line","a","b","t","x1","y1","x2","y2","renderer","getStyles","options","ishikawaStyles_default","diagram"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{g as gt}from"./chunk-FMBD7UC4-
|
|
1
|
+
import{g as gt}from"./chunk-FMBD7UC4-BmV52drU.js";import{a as mt,g as lt,h as xt,d as kt}from"./chunk-YZCP3GAM-LV4b5o7A.js";import{g as _t,s as vt,a as bt,b as wt,p as Tt,o as St,_ as s,c as R,d as $t,y as Mt}from"./mermaid.core-H7Dmb05b.js";import{s as G}from"./index-B08bCLVX.js";import{d as it}from"./arc-DyFMcdgg.js";var U=function(){var t=s(function(h,r,n,l){for(n=n||{},l=h.length;l--;n[h[l]]=r);return n},"o"),e=[6,8,10,11,12,14,16,17,18],a=[1,9],f=[1,10],i=[1,11],u=[1,12],p=[1,13],o=[1,14],g={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:s(function(r,n,l,y,d,c,v){var k=c.length-1;switch(d){case 1:return c[k-1];case 2:this.$=[];break;case 3:c[k-1].push(c[k]),this.$=c[k-1];break;case 4:case 5:this.$=c[k];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(c[k].substr(6)),this.$=c[k].substr(6);break;case 9:this.$=c[k].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=c[k].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(c[k].substr(8)),this.$=c[k].substr(8);break;case 13:y.addTask(c[k-1],c[k]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:a,12:f,14:i,16:u,17:p,18:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:s(function(r,n){if(n.recoverable)this.trace(r);else{var l=new Error(r);throw l.hash=n,l}},"parseError"),parse:s(function(r){var n=this,l=[0],y=[],d=[null],c=[],v=this.table,k="",C=0,Q=0,yt=2,D=1,dt=c.slice.call(arguments,1),_=Object.create(this.lexer),I={yy:{}};for(var O in this.yy)Object.prototype.hasOwnProperty.call(this.yy,O)&&(I.yy[O]=this.yy[O]);_.setInput(r,I.yy),I.yy.lexer=_,I.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var Y=_.yylloc;c.push(Y);var ft=_.options&&_.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pt(w){l.length=l.length-2*w,d.length=d.length-w,c.length=c.length-w}s(pt,"popStack");function tt(){var w;return w=y.pop()||_.lex()||D,typeof w!="number"&&(w instanceof Array&&(y=w,w=y.pop()),w=n.symbols_[w]||w),w}s(tt,"lex");for(var b,A,T,q,F={},N,M,et,z;;){if(A=l[l.length-1],this.defaultActions[A]?T=this.defaultActions[A]:((b===null||typeof b>"u")&&(b=tt()),T=v[A]&&v[A][b]),typeof T>"u"||!T.length||!T[0]){var X="";z=[];for(N in v[A])this.terminals_[N]&&N>yt&&z.push("'"+this.terminals_[N]+"'");_.showPosition?X="Parse error on line "+(C+1)+`:
|
|
2
2
|
`+_.showPosition()+`
|
|
3
3
|
Expecting `+z.join(", ")+", got '"+(this.terminals_[b]||b)+"'":X="Parse error on line "+(C+1)+": Unexpected "+(b==D?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(X,{text:_.match,token:this.terminals_[b]||b,line:_.yylineno,loc:Y,expected:z})}if(T[0]instanceof Array&&T.length>1)throw new Error("Parse Error: multiple actions possible at state: "+A+", token: "+b);switch(T[0]){case 1:l.push(b),d.push(_.yytext),c.push(_.yylloc),l.push(T[1]),b=null,Q=_.yyleng,k=_.yytext,C=_.yylineno,Y=_.yylloc;break;case 2:if(M=this.productions_[T[1]][1],F.$=d[d.length-M],F._$={first_line:c[c.length-(M||1)].first_line,last_line:c[c.length-1].last_line,first_column:c[c.length-(M||1)].first_column,last_column:c[c.length-1].last_column},ft&&(F._$.range=[c[c.length-(M||1)].range[0],c[c.length-1].range[1]]),q=this.performAction.apply(F,[k,Q,C,I.yy,T[1],d,c].concat(dt)),typeof q<"u")return q;M&&(l=l.slice(0,-1*M*2),d=d.slice(0,-1*M),c=c.slice(0,-1*M)),l.push(this.productions_[T[1]][0]),d.push(F.$),c.push(F._$),et=v[l[l.length-2]][l[l.length-1]],l.push(et);break;case 3:return!0}}return!0},"parse")},m=function(){var h={EOF:1,parseError:s(function(n,l){if(this.yy.parser)this.yy.parser.parseError(n,l);else throw new Error(n)},"parseError"),setInput:s(function(r,n){return this.yy=n||this.yy||{},this._input=r,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:s(function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var n=r.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},"input"),unput:s(function(r){var n=r.length,l=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var y=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),l.length-1&&(this.yylineno-=l.length-1);var d=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:l?(l.length===y.length?this.yylloc.first_column:0)+y[y.length-l.length].length-l[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[d[0],d[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},"unput"),more:s(function(){return this._more=!0,this},"more"),reject:s(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:s(function(r){this.unput(this.match.slice(r))},"less"),pastInput:s(function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:s(function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:s(function(){var r=this.pastInput(),n=new Array(r.length+1).join("-");return r+this.upcomingInput()+`
|
|
@@ -137,4 +137,4 @@ Expecting `+z.join(", ")+", got '"+(this.terminals_[b]||b)+"'":X="Parse error on
|
|
|
137
137
|
}
|
|
138
138
|
${gt()}
|
|
139
139
|
`,"getStyles"),jt=Bt,K=s(function(t,e){return kt(t,e)},"drawRect"),Nt=s(function(t,e){const f=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function u(g){const m=it().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);g.append("path").attr("class","mouth").attr("d",m).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}s(u,"smile");function p(g){const m=it().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);g.append("path").attr("class","mouth").attr("d",m).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}s(p,"sad");function o(g){g.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return s(o,"ambivalent"),e.score>3?u(i):e.score<3?p(i):o(i),f},"drawFace"),ot=s(function(t,e){const a=t.append("circle");return a.attr("cx",e.cx),a.attr("cy",e.cy),a.attr("class","actor-"+e.pos),a.attr("fill",e.fill),a.attr("stroke",e.stroke),a.attr("r",e.r),a.class!==void 0&&a.attr("class",a.class),e.title!==void 0&&a.append("title").text(e.title),a},"drawCircle"),ct=s(function(t,e){return xt(t,e)},"drawText"),zt=s(function(t,e){function a(i,u,p,o,g){return i+","+u+" "+(i+p)+","+u+" "+(i+p)+","+(u+o-g)+" "+(i+p-g*1.2)+","+(u+o)+" "+i+","+(u+o)}s(a,"genPoints");const f=t.append("polygon");f.attr("points",a(e.x,e.y,50,20,7)),f.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,ct(t,e)},"drawLabel"),Wt=s(function(t,e,a){const f=t.append("g"),i=lt();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=a.width*e.taskCount+a.diagramMarginX*(e.taskCount-1),i.height=a.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,K(f,i),ht(a)(e.text,f,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},a,e.colour)},"drawSection"),Z=-1,Ot=s(function(t,e,a,f){const i=e.x+a.width/2,u=t.append("g");Z++;const p=300+5*30;u.append("line").attr("id",f+"-task"+Z).attr("x1",i).attr("y1",e.y).attr("x2",i).attr("y2",p).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Nt(u,{cx:i,cy:300+(5-e.score)*30,score:e.score});const o=lt();o.x=e.x,o.y=e.y,o.fill=e.fill,o.width=a.width,o.height=a.height,o.class="task task-type-"+e.num,o.rx=3,o.ry=3,K(u,o);let g=e.x+14;e.people.forEach(m=>{const x=e.actors[m].color,h={cx:g,cy:e.y,r:7,fill:x,stroke:"#000",title:m,pos:e.actors[m].position};ot(u,h),g+=10}),ht(a)(e.task,u,o.x,o.y,o.width,o.height,{class:"task"},a,e.colour)},"drawTask"),Yt=s(function(t,e){mt(t,e)},"drawBackgroundRect"),ht=function(){function t(i,u,p,o,g,m,x,h){const r=u.append("text").attr("x",p+g/2).attr("y",o+m/2+5).style("font-color",h).style("text-anchor","middle").text(i);f(r,x)}s(t,"byText");function e(i,u,p,o,g,m,x,h,r){const{taskFontSize:n,taskFontFamily:l}=h,y=i.split(/<br\s*\/?>/gi);for(let d=0;d<y.length;d++){const c=d*n-n*(y.length-1)/2,v=u.append("text").attr("x",p+g/2).attr("y",o).attr("fill",r).style("text-anchor","middle").style("font-size",n).style("font-family",l);v.append("tspan").attr("x",p+g/2).attr("dy",c).text(y[d]),v.attr("y",o+m/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),f(v,x)}}s(e,"byTspan");function a(i,u,p,o,g,m,x,h){const r=u.append("switch"),l=r.append("foreignObject").attr("x",p).attr("y",o).attr("width",g).attr("height",m).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");l.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,r,p,o,g,m,x,h),f(l,x)}s(a,"byFo");function f(i,u){for(const p in u)p in u&&i.attr(p,u[p])}return s(f,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?a:i.textPlacement==="old"?t:e}}(),qt=s(function(t,e){Z=-1,t.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics"),j={drawRect:K,drawCircle:ot,drawSection:Wt,drawText:ct,drawLabel:zt,drawTask:Ot,drawBackgroundRect:Yt,initGraphics:qt},Xt=s(function(t){Object.keys(t).forEach(function(a){$[a]=t[a]})},"setConf"),E={},W=0;function ut(t){const e=R().journey,a=e.maxLabelWidth;W=0;let f=60;Object.keys(E).forEach(i=>{const u=E[i].color,p={cx:20,cy:f,r:7,fill:u,stroke:"#000",pos:E[i].position};j.drawCircle(t,p);let o=t.append("text").attr("visibility","hidden").text(i);const g=o.node().getBoundingClientRect().width;o.remove();let m=[];if(g<=a)m=[i];else{const x=i.split(" ");let h="";o=t.append("text").attr("visibility","hidden"),x.forEach(r=>{const n=h?`${h} ${r}`:r;if(o.text(n),o.node().getBoundingClientRect().width>a){if(h&&m.push(h),h=r,o.text(r),o.node().getBoundingClientRect().width>a){let y="";for(const d of r)y+=d,o.text(y+"-"),o.node().getBoundingClientRect().width>a&&(m.push(y.slice(0,-1)+"-"),y=d);h=y}}else h=n}),h&&m.push(h),o.remove()}m.forEach((x,h)=>{const r={x:40,y:f+7+h*20,fill:"#666",text:x,textMargin:e.boxTextMargin??5},l=j.drawText(t,r).node().getBoundingClientRect().width;l>W&&l>e.leftMargin-l&&(W=l)}),f+=Math.max(20,m.length*20)})}s(ut,"drawActorLegend");var $=R().journey,P=0,Gt=s(function(t,e,a,f){const i=R(),u=i.journey.titleColor,p=i.journey.titleFontSize,o=i.journey.titleFontFamily,g=i.securityLevel;let m;g==="sandbox"&&(m=G("#i"+e));const x=g==="sandbox"?G(m.nodes()[0].contentDocument.body):G("body");S.init();const h=x.select("#"+e);j.initGraphics(h,e);const r=f.db.getTasks(),n=f.db.getDiagramTitle(),l=f.db.getActors();for(const C in E)delete E[C];let y=0;l.forEach(C=>{E[C]={color:$.actorColours[y%$.actorColours.length],position:y},y++}),ut(h),P=$.leftMargin+W,S.insert(0,0,P,Object.keys(E).length*50),Ht(h,r,0,e);const d=S.getBounds();n&&h.append("text").text(n).attr("x",P).attr("font-size",p).attr("font-weight","bold").attr("y",25).attr("fill",u).attr("font-family",o);const c=d.stopy-d.starty+2*$.diagramMarginY,v=P+d.stopx+2*$.diagramMarginX;$t(h,c,v,$.useMaxWidth),h.append("line").attr("x1",P).attr("y1",$.height*4).attr("x2",v-P-4).attr("y2",$.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#"+e+"-arrowhead)");const k=n?70:0;h.attr("viewBox",`${d.startx} -25 ${v} ${c+k}`),h.attr("preserveAspectRatio","xMinYMin meet"),h.attr("height",c+k+25)},"draw"),S={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:s(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:s(function(t,e,a,f){t[e]===void 0?t[e]=a:t[e]=f(a,t[e])},"updateVal"),updateBounds:s(function(t,e,a,f){const i=R().journey,u=this;let p=0;function o(g){return s(function(x){p++;const h=u.sequenceItems.length-p+1;u.updateVal(x,"starty",e-h*i.boxMargin,Math.min),u.updateVal(x,"stopy",f+h*i.boxMargin,Math.max),u.updateVal(S.data,"startx",t-h*i.boxMargin,Math.min),u.updateVal(S.data,"stopx",a+h*i.boxMargin,Math.max),g!=="activation"&&(u.updateVal(x,"startx",t-h*i.boxMargin,Math.min),u.updateVal(x,"stopx",a+h*i.boxMargin,Math.max),u.updateVal(S.data,"starty",e-h*i.boxMargin,Math.min),u.updateVal(S.data,"stopy",f+h*i.boxMargin,Math.max))},"updateItemBounds")}s(o,"updateFn"),this.sequenceItems.forEach(o())},"updateBounds"),insert:s(function(t,e,a,f){const i=Math.min(t,a),u=Math.max(t,a),p=Math.min(e,f),o=Math.max(e,f);this.updateVal(S.data,"startx",i,Math.min),this.updateVal(S.data,"starty",p,Math.min),this.updateVal(S.data,"stopx",u,Math.max),this.updateVal(S.data,"stopy",o,Math.max),this.updateBounds(i,p,u,o)},"insert"),bumpVerticalPos:s(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:s(function(){return this.verticalPos},"getVerticalPos"),getBounds:s(function(){return this.data},"getBounds")},H=$.sectionFills,st=$.sectionColours,Ht=s(function(t,e,a,f){const i=R().journey;let u="";const p=i.height*2+i.diagramMarginY,o=a+p;let g=0,m="#CCC",x="black",h=0;for(const[r,n]of e.entries()){if(u!==n.section){m=H[g%H.length],h=g%H.length,x=st[g%st.length];let y=0;const d=n.section;for(let v=r;v<e.length&&e[v].section==d;v++)y=y+1;const c={x:r*i.taskMargin+r*i.width+P,y:50,text:n.section,fill:m,num:h,colour:x,taskCount:y};j.drawSection(t,c,i),u=n.section,g++}const l=n.people.reduce((y,d)=>(E[d]&&(y[d]=E[d]),y),{});n.x=r*i.taskMargin+r*i.width+P,n.y=o,n.width=i.diagramMarginX,n.height=i.diagramMarginY,n.colour=x,n.fill=m,n.num=h,n.actors=l,j.drawTask(t,n,i,f),S.insert(n.x,n.y,n.x+n.width+i.taskMargin,300+5*30)}},"drawTasks"),at={setConf:Xt,draw:Gt},Dt={parser:Et,db:nt,renderer:at,styles:jt,init:s(t=>{at.setConf(t.journey),nt.clear()},"init")};export{Dt as diagram};
|
|
140
|
-
//# sourceMappingURL=journeyDiagram-VCZTEJTY-
|
|
140
|
+
//# sourceMappingURL=journeyDiagram-VCZTEJTY-C-6pvS6y.js.map
|