@calmabacus/pi-web 1.1.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (301) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +9 -9
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/next-server.js.nft.json +1 -1
  5. package/.next/prerender-manifest.json +3 -3
  6. package/.next/react-loadable-manifest.json +215 -224
  7. package/.next/required-server-files.js +3 -2
  8. package/.next/required-server-files.json +3 -2
  9. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/_global-error.html +1 -1
  11. package/.next/server/app/_global-error.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  15. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  16. package/.next/server/app/_not-found.html +1 -1
  17. package/.next/server/app/_not-found.rsc +3 -3
  18. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  19. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  20. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  21. package/.next/server/app/api/app-update/route.js +1 -1
  22. package/.next/server/app/api/sessions/[id]/auto-name/route.js.nft.json +1 -1
  23. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  24. package/.next/server/app/index.html +1 -1
  25. package/.next/server/app/index.rsc +5 -5
  26. package/.next/server/app/index.segments/__PAGE__.segment.rsc +5 -5
  27. package/.next/server/app/index.segments/_full.segment.rsc +5 -5
  28. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  29. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  30. package/.next/server/app/login.html +1 -1
  31. package/.next/server/app/login.rsc +3 -3
  32. package/.next/server/app/login.segments/_full.segment.rsc +3 -3
  33. package/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  34. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +3 -3
  35. package/.next/server/app/page.js +21 -21
  36. package/.next/server/app/page.js.nft.json +1 -1
  37. package/.next/server/app/page_client-reference-manifest.js +1 -1
  38. package/.next/server/app-paths-manifest.json +9 -9
  39. package/.next/server/chunks/102.js +90 -0
  40. package/.next/server/chunks/11.js +1 -0
  41. package/.next/server/chunks/1286.js +1 -0
  42. package/.next/server/chunks/{4563.js → 1412.js} +1 -1
  43. package/.next/server/chunks/1605.js +1 -0
  44. package/.next/server/chunks/169.js +1 -0
  45. package/.next/server/chunks/{3186.js → 18.js} +1 -1
  46. package/.next/server/chunks/2022.js +1 -0
  47. package/.next/server/chunks/{4267.js → 2156.js} +1 -1
  48. package/.next/server/chunks/2157.js +1 -0
  49. package/.next/server/chunks/2325.js +3 -3
  50. package/.next/server/chunks/2838.js +1 -0
  51. package/.next/server/chunks/2897.js +79 -0
  52. package/.next/server/chunks/3227.js +1 -0
  53. package/.next/server/chunks/3266.js +1 -0
  54. package/.next/server/chunks/3379.js +1 -1
  55. package/.next/server/chunks/3428.js +32 -0
  56. package/.next/server/chunks/3479.js +1 -0
  57. package/.next/server/chunks/367.js +115 -0
  58. package/.next/server/chunks/3698.js +93 -0
  59. package/.next/server/chunks/{8713.js → 3709.js} +4 -4
  60. package/.next/server/chunks/4107.js +62 -0
  61. package/.next/server/chunks/426.js +10 -10
  62. package/.next/server/chunks/{7799.js → 4569.js} +1 -1
  63. package/.next/server/chunks/{8782.js → 4755.js} +2 -2
  64. package/.next/server/chunks/5002.js +1 -0
  65. package/.next/server/chunks/5112.js +1 -0
  66. package/.next/server/chunks/5289.js +8 -0
  67. package/.next/server/chunks/5452.js +23 -0
  68. package/.next/server/chunks/5453.js +1 -0
  69. package/.next/server/chunks/5582.js +2 -2
  70. package/.next/server/chunks/5749.js +27 -0
  71. package/.next/server/chunks/5782.js +36 -0
  72. package/.next/server/chunks/{6253.js → 6163.js} +1 -1
  73. package/.next/server/chunks/6169.js +64 -0
  74. package/.next/server/chunks/{1094.js → 6208.js} +17 -5
  75. package/.next/server/chunks/6399.js +24 -0
  76. package/.next/server/chunks/6429.js +3 -3
  77. package/.next/server/chunks/6496.js +1 -0
  78. package/.next/server/chunks/6823.js +215 -0
  79. package/.next/server/chunks/{4548.js → 6888.js} +1 -1
  80. package/.next/server/chunks/7245.js +77 -0
  81. package/.next/server/chunks/7307.js +1 -1
  82. package/.next/server/chunks/7372.js +287 -0
  83. package/.next/server/chunks/7384.js +226 -0
  84. package/.next/server/chunks/7516.js +1 -0
  85. package/.next/server/chunks/7531.js +24 -0
  86. package/.next/server/chunks/7591.js +1 -0
  87. package/.next/server/chunks/7755.js +138 -0
  88. package/.next/server/chunks/7916.js +1 -0
  89. package/.next/server/chunks/8078.js +94 -0
  90. package/.next/server/chunks/8253.js +41 -0
  91. package/.next/server/chunks/8635.js +1 -0
  92. package/.next/server/chunks/8688.js +1 -0
  93. package/.next/server/chunks/8872.js +1 -0
  94. package/.next/server/chunks/9006.js +1 -0
  95. package/.next/server/chunks/9018.js +1 -0
  96. package/.next/server/chunks/9047.js +1 -0
  97. package/.next/server/chunks/9108.js +1 -0
  98. package/.next/server/chunks/9280.js +91 -90
  99. package/.next/server/chunks/9419.js +1 -0
  100. package/.next/server/chunks/9430.js +1 -0
  101. package/.next/server/chunks/9586.js +1 -0
  102. package/.next/server/chunks/9775.js +1 -0
  103. package/.next/server/chunks/992.js +1 -0
  104. package/.next/server/chunks/9926.js +1 -0
  105. package/.next/server/middleware-build-manifest.js +1 -1
  106. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  107. package/.next/server/next-font-manifest.js +1 -1
  108. package/.next/server/next-font-manifest.json +1 -1
  109. package/.next/server/pages/404.html +1 -1
  110. package/.next/server/pages/500.html +1 -1
  111. package/.next/server/server-reference-manifest.json +1 -1
  112. package/.next/static/chunks/1213.e5c6e70a79b5f7e6.js +24 -0
  113. package/.next/static/chunks/1519.2f596e5f5af9ef57.js +62 -0
  114. package/.next/static/chunks/1974.9f7176c5854f9939.js +32 -0
  115. package/.next/static/chunks/2280.e03ab3748922284c.js +1 -0
  116. package/.next/static/chunks/{398.ffa02af9062a3950.js → 2521.7f745f50d30076e7.js} +1 -1
  117. package/.next/static/chunks/2585.4d6aa847c780c666.js +1 -0
  118. package/.next/static/chunks/2589.e456c324416f9615.js +1 -0
  119. package/.next/static/chunks/2600.45ba17a0f756fc31.js +1 -0
  120. package/.next/static/chunks/26d302b2.b77b53a34ca944aa.js +122 -0
  121. package/.next/static/chunks/2768.1a75ba9e2be767cf.js +1 -0
  122. package/.next/static/chunks/2931.c2acdbf72808b646.js +41 -0
  123. package/.next/static/chunks/3016.406e568aa95ff867.js +1 -0
  124. package/.next/static/chunks/{4004.74b9bcf5478b1663.js → 3022.972047558a20553a.js} +30 -18
  125. package/.next/static/chunks/3064.3a2a1e7cd4fdca5f.js +1 -0
  126. package/.next/static/chunks/3174.03fbed7b7d7a8256.js +1 -0
  127. package/.next/static/chunks/3189.b048866768087750.js +1 -0
  128. package/.next/static/chunks/3217.1a053843c58b70b5.js +24 -0
  129. package/.next/static/chunks/3308.b58803a5e26a56d8.js +74 -0
  130. package/.next/static/chunks/331.fc5d78e1e91daf43.js +1 -0
  131. package/.next/static/chunks/3510.5d4d1c79533e080c.js +1 -0
  132. package/.next/static/chunks/364.ce5400a9dd70b9dc.js +1 -0
  133. package/.next/static/chunks/3658-625de9bc05634c7f.js +7 -0
  134. package/.next/static/chunks/{9793.4567af813117ad25.js → 3789.c418b69121761983.js} +1 -1
  135. package/.next/static/chunks/3831.25ae62d10dccc27a.js +1 -0
  136. package/.next/static/chunks/395.3621e96c2bdfec18.js +90 -0
  137. package/.next/static/chunks/{da12927c.476aa688a637649c.js → 3a7aa434.280905293fc59b77.js} +3 -3
  138. package/.next/static/chunks/4020.3cc19c463c49f969.js +23 -0
  139. package/.next/static/chunks/{1063.775c442bdbeef08b.js → 4035.0acc428926d5c8dd.js} +1 -1
  140. package/.next/static/chunks/405.0902e4f6eb7bd9a2.js +215 -0
  141. package/.next/static/chunks/4159.bb7124776cbd5f2d.js +138 -0
  142. package/.next/static/chunks/{4405.7a19458960a1058e.js → 4208.8ea72bb20afa959e.js} +2 -2
  143. package/.next/static/chunks/4263.ffa8d9bd8a0faaae.js +1 -0
  144. package/.next/static/chunks/4561.d1a3aaca8bae3224.js +34 -0
  145. package/.next/static/chunks/4592.507c41f345e21bee.js +93 -0
  146. package/.next/static/chunks/4799.3c6182ded3f32244.js +1 -0
  147. package/.next/static/chunks/514.b804c51b26f5e126.js +1 -0
  148. package/.next/static/chunks/{3336.a76f9485fe7cb762.js → 5270.28592864d38e881c.js} +1 -1
  149. package/.next/static/chunks/52733464.b343531c2f886252.js +1 -0
  150. package/.next/static/chunks/5354.b559c717a607dc5c.js +1 -0
  151. package/.next/static/chunks/{3995.eca0f5bef1fc3ae5.js → 5448.d3972d9fb464b54f.js} +2 -2
  152. package/.next/static/chunks/587.d52737d7288c11b4.js +1 -0
  153. package/.next/static/chunks/5909.9e37f7b495b11995.js +115 -0
  154. package/.next/static/chunks/{7331.2add3c4e125a2dba.js → 5949.5504b3545fcc3d34.js} +1 -1
  155. package/.next/static/chunks/{9698.4d09a99b9d99f3e5.js → 6361.893d04ac34fa1b49.js} +3 -3
  156. package/.next/static/chunks/{5526.ff46471041fdcb79.js → 6774.8cd53427dbf32cac.js} +1 -1
  157. package/.next/static/chunks/6968.b80277c724dbc96e.js +1 -0
  158. package/.next/static/chunks/{973.88e865b52eff479a.js → 7113.93146ac5e46c1859.js} +1 -1
  159. package/.next/static/chunks/7236.55a9728d35f5b8a6.js +1 -0
  160. package/.next/static/chunks/7390.bc7f4ed9f76fe9e1.js +1 -0
  161. package/.next/static/chunks/7806.a903780fcfa3a30e.js +1 -0
  162. package/.next/static/chunks/7997.517120d5fcd77d6b.js +1 -0
  163. package/.next/static/chunks/8216.64a72d4d35ea7be0.js +1 -0
  164. package/.next/static/chunks/830.a6da04c322e3204a.js +1 -0
  165. package/.next/static/chunks/{4202.8440832386f023c7.js → 8378.fa91de3406f554c9.js} +1 -1
  166. package/.next/static/chunks/8501.c34c2a9170eb458d.js +79 -0
  167. package/.next/static/chunks/8663.6ec5792fb4952e45.js +27 -0
  168. package/.next/static/chunks/872.96937e758ddce860.js +1 -0
  169. package/.next/static/chunks/8803.75bde095fe3613f5.js +1 -0
  170. package/.next/static/chunks/8863.72f5dbb820a0e4c3.js +1 -0
  171. package/.next/static/chunks/90542734.90283a0c0c838d51.js +1 -0
  172. package/.next/static/chunks/9379.5bc9c9343ec5a16c.js +64 -0
  173. package/.next/static/chunks/9389.906fe7aa9cd6a170.js +1 -0
  174. package/.next/static/chunks/9472.8d21dc4771024c26.js +94 -0
  175. package/.next/static/chunks/966.50e905df30903189.js +1 -0
  176. package/.next/static/chunks/{2703.495a65ed14b2f094.js → 9884.c6cac4659c50ebfa.js} +3 -3
  177. package/.next/static/chunks/app/{layout-6f28a6ca96b468e4.js → layout-900d990b4229e169.js} +1 -1
  178. package/.next/static/chunks/app/page-6e8e4795e738ba8b.js +232 -0
  179. package/.next/static/chunks/{1ba63609.b2ae90f43319a29e.js → e413bedd.3a12a8cb02e28fdf.js} +1 -1
  180. package/.next/static/chunks/ea233666.ebaeaf2eb673ecfa.js +62 -0
  181. package/.next/static/chunks/framework-3a41051109d8ea39.js +1 -0
  182. package/.next/static/chunks/webpack-d022bdbc1a873e3c.js +1 -0
  183. package/.next/static/css/be8ae7904992a245.css +1 -0
  184. package/.next/trace +7 -7
  185. package/.next/trace-build +1 -1
  186. package/next.config.ts +1 -0
  187. package/package.json +5 -5
  188. package/.next/server/chunks/1515.js +0 -1
  189. package/.next/server/chunks/1555.js +0 -1
  190. package/.next/server/chunks/1601.js +0 -24
  191. package/.next/server/chunks/1625.js +0 -1
  192. package/.next/server/chunks/1800.js +0 -1
  193. package/.next/server/chunks/1860.js +0 -1
  194. package/.next/server/chunks/2075.js +0 -23
  195. package/.next/server/chunks/2106.js +0 -1
  196. package/.next/server/chunks/2169.js +0 -36
  197. package/.next/server/chunks/2190.js +0 -1
  198. package/.next/server/chunks/2408.js +0 -1
  199. package/.next/server/chunks/2452.js +0 -93
  200. package/.next/server/chunks/2744.js +0 -1
  201. package/.next/server/chunks/2903.js +0 -1
  202. package/.next/server/chunks/295.js +0 -1
  203. package/.next/server/chunks/3012.js +0 -1
  204. package/.next/server/chunks/3383.js +0 -27
  205. package/.next/server/chunks/3569.js +0 -1
  206. package/.next/server/chunks/3869.js +0 -8
  207. package/.next/server/chunks/3894.js +0 -1
  208. package/.next/server/chunks/4315.js +0 -1
  209. package/.next/server/chunks/4367.js +0 -1
  210. package/.next/server/chunks/4372.js +0 -1
  211. package/.next/server/chunks/4538.js +0 -24
  212. package/.next/server/chunks/4674.js +0 -1
  213. package/.next/server/chunks/4980.js +0 -1
  214. package/.next/server/chunks/5029.js +0 -1
  215. package/.next/server/chunks/5974.js +0 -77
  216. package/.next/server/chunks/6052.js +0 -141
  217. package/.next/server/chunks/611.js +0 -1
  218. package/.next/server/chunks/6337.js +0 -1
  219. package/.next/server/chunks/6366.js +0 -80
  220. package/.next/server/chunks/673.js +0 -287
  221. package/.next/server/chunks/6916.js +0 -226
  222. package/.next/server/chunks/703.js +0 -1
  223. package/.next/server/chunks/7233.js +0 -1
  224. package/.next/server/chunks/7265.js +0 -215
  225. package/.next/server/chunks/7561.js +0 -1
  226. package/.next/server/chunks/7710.js +0 -1
  227. package/.next/server/chunks/7744.js +0 -64
  228. package/.next/server/chunks/7790.js +0 -1
  229. package/.next/server/chunks/7872.js +0 -1
  230. package/.next/server/chunks/8106.js +0 -1
  231. package/.next/server/chunks/8294.js +0 -1
  232. package/.next/server/chunks/8333.js +0 -79
  233. package/.next/server/chunks/835.js +0 -1
  234. package/.next/server/chunks/8397.js +0 -41
  235. package/.next/server/chunks/8604.js +0 -115
  236. package/.next/server/chunks/8920.js +0 -62
  237. package/.next/server/chunks/922.js +0 -5
  238. package/.next/server/chunks/9486.js +0 -1
  239. package/.next/server/chunks/9509.js +0 -1
  240. package/.next/server/chunks/9510.js +0 -90
  241. package/.next/static/chunks/103.23142a67b02246a8.js +0 -215
  242. package/.next/static/chunks/1032.12b382a9096ab2a4.js +0 -1
  243. package/.next/static/chunks/1327.09252bb80616cc3a.js +0 -1
  244. package/.next/static/chunks/1708.d029f8776e4578de.js +0 -1
  245. package/.next/static/chunks/1781.866132cea8e77cd0.js +0 -1
  246. package/.next/static/chunks/2081.47b6e9391094055f.js +0 -1
  247. package/.next/static/chunks/2181.ba21239d3ac39f81.js +0 -1
  248. package/.next/static/chunks/2258.4defa30121ef44a5.js +0 -1
  249. package/.next/static/chunks/2325.23caf22075e51aa5.js +0 -1
  250. package/.next/static/chunks/2356.523277bb8c6bf72a.js +0 -23
  251. package/.next/static/chunks/2418.b5d9e177e10a686e.js +0 -1
  252. package/.next/static/chunks/2480.cf27ca02e5b19761.js +0 -24
  253. package/.next/static/chunks/2539.c5a4f2fd8e421c70.js +0 -41
  254. package/.next/static/chunks/268.72794ee2773c2060.js +0 -80
  255. package/.next/static/chunks/2695.6f49435bae1e6f33.js +0 -90
  256. package/.next/static/chunks/2821.934bcf60fbdc28c6.js +0 -1
  257. package/.next/static/chunks/3251.0dce7a0a0ff67235.js +0 -1
  258. package/.next/static/chunks/3308.be8762955e7155d1.js +0 -73
  259. package/.next/static/chunks/3716.72bf4c9d7325debd.js +0 -1
  260. package/.next/static/chunks/4238.6f102dcbcf2ae339.js +0 -141
  261. package/.next/static/chunks/4424.fd0c93a807a333e1.js +0 -1
  262. package/.next/static/chunks/4866.d1060b4faf2ae1e2.js +0 -1
  263. package/.next/static/chunks/4970.8a63b4953b0e4946.js +0 -1
  264. package/.next/static/chunks/5020.9ac8d0dc8390bb6e.js +0 -1
  265. package/.next/static/chunks/5137.f163e94c74a94d01.js +0 -1
  266. package/.next/static/chunks/5242.7b643c6b3394cac1.js +0 -1
  267. package/.next/static/chunks/5361.afc00ab2626bacbf.js +0 -1
  268. package/.next/static/chunks/5521.cfdf2cfc6db31407.js +0 -1
  269. package/.next/static/chunks/5681.dd0e66b0de16e54b.js +0 -27
  270. package/.next/static/chunks/6121.eb9023b1cbc78ee2.js +0 -1
  271. package/.next/static/chunks/6161.4836cd7d031026bf.js +0 -1
  272. package/.next/static/chunks/6195.1153369f5f8b13a2.js +0 -24
  273. package/.next/static/chunks/6294.24f510c0c3e3714c.js +0 -1
  274. package/.next/static/chunks/6654.16f727522ec47f5a.js +0 -1
  275. package/.next/static/chunks/6794.f746d8fbbf248ecf.js +0 -93
  276. package/.next/static/chunks/7256.e07cf52d87d40252.js +0 -1
  277. package/.next/static/chunks/7268.236544be8e242c16.js +0 -1
  278. package/.next/static/chunks/7543.89f7b805ed0f2901.js +0 -1
  279. package/.next/static/chunks/8200.a36b9f8c983c6b9e.js +0 -5
  280. package/.next/static/chunks/869.7152372b662e31af.js +0 -1
  281. package/.next/static/chunks/8863.fa0320ea586efb3b.js +0 -1
  282. package/.next/static/chunks/8885.cf60cac98bf8b70c.js +0 -79
  283. package/.next/static/chunks/8901.e117d206a917bda0.js +0 -1
  284. package/.next/static/chunks/90542734.ae439f2382f58c51.js +0 -1
  285. package/.next/static/chunks/918.6a9bbe564e4a2d0f.js +0 -115
  286. package/.next/static/chunks/934.9006461bd0548660.js +0 -1
  287. package/.next/static/chunks/9445-fde6feabcb39142c.js +0 -7
  288. package/.next/static/chunks/9522.c7c6e9c330f9ba6b.js +0 -1
  289. package/.next/static/chunks/9614.3221013d7f0af27f.js +0 -64
  290. package/.next/static/chunks/9705.40a82b97f214e28b.js +0 -1
  291. package/.next/static/chunks/9764.2669775c6e107a01.js +0 -62
  292. package/.next/static/chunks/993e5495.8797001fcfcf2889.js +0 -62
  293. package/.next/static/chunks/9974.9a0f79beca65e8c4.js +0 -34
  294. package/.next/static/chunks/app/page-1b94cf40b6b9c77e.js +0 -232
  295. package/.next/static/chunks/bf2ff291.3a109dffc1fe84af.js +0 -122
  296. package/.next/static/chunks/db9d41be.e72ce090a86a3691.js +0 -1
  297. package/.next/static/chunks/framework-b33a8f5d57cd8d87.js +0 -1
  298. package/.next/static/chunks/webpack-25464d90fe89e601.js +0 -1
  299. package/.next/static/css/3afba5dcf1fc15ed.css +0 -1
  300. /package/.next/static/{CAfXUwq4b0HP5p-fE011j → gQm9NqajOt7lJ9sjH6Hab}/_buildManifest.js +0 -0
  301. /package/.next/static/{CAfXUwq4b0HP5p-fE011j → gQm9NqajOt7lJ9sjH6Hab}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[398],{80398:(t,e,a)=>{a.d(e,{diagram:()=>F});var r=a(80650),o=a(56174),n=a(86305),i=a(37325),l=a(56037),s=a(89851),d=a(88863),c=(0,s.K)((t,e)=>{let a=t<=1?100*t:t;if(a<0||a>100)throw Error(`${e} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${t}`);return a},"toPercent"),p=(0,s.K)((t,e,a)=>({x:c(e,`${a} evolution`),y:c(t,`${a} visibility`)}),"toCoordinates"),h=(0,s.K)(t=>{if(t){if("+<>"===t)return"bidirectional";if("+<"===t)return"backward";if("+>"===t)return"forward"}},"getFlowFromPort"),x=(0,s.K)(t=>{if(!t?.startsWith("+"))return{};let e=/^\+'([^']*)'/.exec(t),a=e?.[1];return t.includes("<>")?{flow:"bidirectional",label:a}:t.includes("<")?{flow:"backward",label:a}:t.includes(">")?{flow:"forward",label:a}:{label:a}},"extractFlowFromArrow"),y=(0,s.K)((t,e)=>{if((0,r.S)(t,e),t.size&&e.setSize(t.size.width,t.size.height),t.evolution){let a=t.evolution.stages.map(t=>t.secondName?`${t.name.trim()} / ${t.secondName.trim()}`:t.name.trim()),r=t.evolution.stages.filter(t=>void 0!==t.boundary).map(t=>t.boundary);e.updateAxes({stages:a,stageBoundaries:r})}if(t.anchors.forEach(t=>{let a=p(t.visibility,t.evolution,`Anchor "${t.name}"`);e.addNode(t.name,t.name,a.x,a.y,"anchor")}),t.components.forEach(t=>{let a=p(t.visibility,t.evolution,`Component "${t.name}"`),r=t.label?(t.label.negX?-1:1)*t.label.offsetX:void 0,o=t.label?(t.label.negY?-1:1)*t.label.offsetY:void 0,n=t.decorator?.strategy;e.addNode(t.name,t.name,a.x,a.y,"component",r,o,t.inertia,n)}),t.notes.forEach(t=>{let a=p(t.visibility,t.evolution,`Note "${t.text}"`);e.addNote(t.text,a.x,a.y)}),t.pipelines.forEach(t=>{let a=e.getNode(t.parent);if(!a||"number"!=typeof a.y)throw Error(`Pipeline "${t.parent}" must reference an existing component with coordinates.`);let r=a.y;e.startPipeline(t.parent),t.components.forEach(a=>{let o=`${t.parent}_${a.name}`,n=a.label?(a.label.negX?-1:1)*a.label.offsetX:void 0,i=a.label?(a.label.negY?-1:1)*a.label.offsetY:void 0,l=c(a.evolution,`Pipeline component "${a.name}" evolution`);e.addNode(o,a.name,l,r,"pipeline-component",n,i),e.addPipelineComponent(t.parent,o)})}),t.links.forEach(t=>{let a=!!t.arrow&&(t.arrow.includes("-.->")||t.arrow.includes(".-.")),r=h(t.fromPort)??h(t.toPort),{flow:o,label:n}=x(t.arrow);!r&&o&&(r=o);let i=t.linkLabel;e.addLink(e.resolveNodeId(t.from),e.resolveNodeId(t.to),a,n??i,r)}),t.evolves.forEach(t=>{let a=e.getNode(t.component);if(a?.y!==void 0){let r=c(t.target,`Evolve target for "${t.component}"`);e.addTrend(t.component,r,a.y)}}),t.annotations.length>0){let a=t.annotations[0],r=p(a.x,a.y,"Annotations box");e.setAnnotationsBox(r.x,r.y)}t.annotation.forEach(t=>{let a=p(t.x,t.y,`Annotation ${t.number}`);e.addAnnotation(t.number,[{x:a.x,y:a.y}],t.text)}),t.accelerators.forEach(t=>{let a=p(t.x,t.y,`Accelerator "${t.name}"`);e.addAccelerator(t.name,a.x,a.y)}),t.deaccelerators.forEach(t=>{let a=p(t.x,t.y,`Deaccelerator "${t.name}"`);e.addDeaccelerator(t.name,a.x,a.y)})},"populateDb"),f={parser:{yy:void 0},parse:(0,s.K)(async t=>{let e=await (0,d.qg)("wardley",t);l.R.debug(e);let a=f.parser?.yy;if(!a||"function"!=typeof a.addNode)throw Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");y(e,a)},"parse")},g=new class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{(0,s.K)(this,"WardleyBuilder")}addNode(t){let e=this.nodes.get(t.id)??{id:t.id,label:t.label},a={...e,...t,className:t.className??e.className,labelOffsetX:t.labelOffsetX??e.labelOffsetX,labelOffsetY:t.labelOffsetY??e.labelOffsetY};this.nodes.set(t.id,a)}addLink(t){this.links.push(t)}addTrend(t){this.trends.set(t.nodeId,t)}startPipeline(t){this.pipelines.set(t,{nodeId:t,componentIds:[]});let e=this.nodes.get(t);e&&(e.isPipelineParent=!0)}addPipelineComponent(t,e){let a=this.pipelines.get(t);a&&a.componentIds.push(e);let r=this.nodes.get(e);r&&(r.inPipeline=!0)}addAnnotation(t){this.annotations.push(t)}addNote(t){this.notes.push(t)}addAccelerator(t){this.accelerators.push(t)}addDeaccelerator(t){this.deaccelerators.push(t)}setAnnotationsBox(t,e){this.annotationsBox={x:t,y:e}}setAxes(t){this.axes={...this.axes,...t}}setSize(t,e){this.size={width:t,height:e}}getNode(t){return this.nodes.get(t)}resolveNodeId(t){if(this.nodes.has(t))return t;for(let[e,a]of this.nodes)if(a.label===t)return e;return t}build(){let t=[];for(let e of this.nodes.values()){if("number"!=typeof e.x||"number"!=typeof e.y)throw Error(`Node "${e.label}" is missing coordinates`);t.push(e)}return{nodes:t,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}};function u(){return(0,i.D7)()["wardley-beta"]}function w(t,e,a,r,o,n,i,l,s){g.addNode({id:t,label:e,x:a,y:r,className:o,labelOffsetX:n,labelOffsetY:i,inertia:l,sourceStrategy:s})}function m(t,e,a=!1,r,o){g.addLink({source:t,target:e,dashed:a,label:r,flow:o})}function k(t,e,a){g.addTrend({nodeId:t,targetX:e,targetY:a})}function b(t,e,a){g.addAnnotation({number:t,coordinates:e,text:a})}function $(t,e,a){g.addNote({text:t,x:e,y:a})}function S(t,e,a){g.addAccelerator({name:t,x:e,y:a})}function v(t,e,a){g.addDeaccelerator({name:t,x:e,y:a})}function C(t,e){g.setAnnotationsBox(t,e)}function M(t,e){g.setSize(t,e)}function P(t){g.startPipeline(t)}function N(t,e){g.addPipelineComponent(t,e)}function T(t){g.setAxes(t)}function z(t){return g.getNode(t)}function E(t){return g.resolveNodeId(t)}function L(){return g.build()}function A(){g.clear(),(0,i.IU)()}(0,s.K)(u,"getConfig"),(0,s.K)(w,"addNode"),(0,s.K)(m,"addLink"),(0,s.K)(k,"addTrend"),(0,s.K)(b,"addAnnotation"),(0,s.K)($,"addNote"),(0,s.K)(S,"addAccelerator"),(0,s.K)(v,"addDeaccelerator"),(0,s.K)(C,"setAnnotationsBox"),(0,s.K)(M,"setSize"),(0,s.K)(P,"startPipeline"),(0,s.K)(N,"addPipelineComponent"),(0,s.K)(T,"updateAxes"),(0,s.K)(z,"getNode"),(0,s.K)(E,"resolveNodeId"),(0,s.K)(L,"getWardleyData"),(0,s.K)(A,"clear");var K={getConfig:u,addNode:w,addLink:m,addTrend:k,addAnnotation:b,addNote:$,addAccelerator:S,addDeaccelerator:v,setAnnotationsBox:C,setSize:M,startPipeline:P,addPipelineComponent:N,updateAxes:T,getNode:z,resolveNodeId:E,getWardleyData:L,clear:A,setAccTitle:i.SV,getAccTitle:i.iN,setDiagramTitle:i.ke,getDiagramTitle:i.ab,getAccDescription:i.m7,setAccDescription:i.EI},I=["Genesis","Custom Built","Product","Commodity"],R=(0,s.K)(()=>{let{themeVariables:t}=(0,i.D7)();return{backgroundColor:t.wardley?.backgroundColor??t.background??"#fff",axisColor:t.wardley?.axisColor??"#000",axisTextColor:t.wardley?.axisTextColor??t.primaryTextColor??"#222",gridColor:t.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:t.wardley?.componentFill??"#fff",componentStroke:t.wardley?.componentStroke??"#000",componentLabelColor:t.wardley?.componentLabelColor??t.primaryTextColor??"#222",linkStroke:t.wardley?.linkStroke??"#000",evolutionStroke:t.wardley?.evolutionStroke??"#dc3545",annotationStroke:t.wardley?.annotationStroke??"#000",annotationTextColor:t.wardley?.annotationTextColor??t.primaryTextColor??"#222",annotationFill:t.wardley?.annotationFill??t.background??"#fff"}},"getTheme"),D=(0,s.K)(()=>{let t=(0,i.D7)()["wardley-beta"];return{width:t?.width??900,height:t?.height??600,padding:t?.padding??48,nodeRadius:t?.nodeRadius??6,nodeLabelOffset:t?.nodeLabelOffset??8,axisFontSize:t?.axisFontSize??12,labelFontSize:t?.labelFontSize??10,showGrid:t?.showGrid??!1,useMaxWidth:t?.useMaxWidth??!0}},"getConfigValues"),F={parser:f,db:K,renderer:{draw:(0,s.K)((t,e,a,r)=>{l.R.debug("Rendering Wardley map\n"+t);let n=D(),d=R(),c=1.6*n.nodeRadius,p=r.db,h=p.getWardleyData(),x=p.getDiagramTitle(),y=h.size?.width??n.width,f=h.size?.height??n.height,g=(0,o.D)(e);g.selectAll("*").remove(),(0,i.a$)(g,f,y,n.useMaxWidth),g.attr("viewBox",`0 0 ${y} ${f}`);let u=g.append("g").attr("class","wardley-map"),w=g.append("defs");w.append("marker").attr("id",`arrow-${e}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.evolutionStroke).attr("stroke","none"),w.append("marker").attr("id",`link-arrow-end-${e}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.linkStroke).attr("stroke","none"),w.append("marker").attr("id",`link-arrow-start-${e}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",d.linkStroke).attr("stroke","none"),u.append("rect").attr("class","wardley-background").attr("width",y).attr("height",f).attr("fill",d.backgroundColor);let m=y-2*n.padding,k=f-2*n.padding;x&&u.append("text").attr("class","wardley-title").attr("x",y/2).attr("y",n.padding/2).attr("fill",d.axisTextColor).attr("font-size",1.05*n.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(x);let b=(0,s.K)(t=>n.padding+t/100*m,"projectX"),$=(0,s.K)(t=>f-n.padding-t/100*k,"projectY"),S=u.append("g").attr("class","wardley-axes");S.append("line").attr("x1",n.padding).attr("x2",y-n.padding).attr("y1",f-n.padding).attr("y2",f-n.padding).attr("stroke",d.axisColor).attr("stroke-width",1),S.append("line").attr("x1",n.padding).attr("x2",n.padding).attr("y1",n.padding).attr("y2",f-n.padding).attr("stroke",d.axisColor).attr("stroke-width",1);let v=h.axes.xLabel??"Evolution",C=h.axes.yLabel??"Visibility";S.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",n.padding+m/2).attr("y",f-n.padding/4).attr("fill",d.axisTextColor).attr("font-size",n.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(v),S.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",n.padding/3).attr("y",n.padding+k/2).attr("fill",d.axisTextColor).attr("font-size",n.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${n.padding/3} ${n.padding+k/2})`).text(C);let M=h.axes.stages&&h.axes.stages.length>0?h.axes.stages:I;if(M.length>0){let t=u.append("g").attr("class","wardley-stages"),e=h.axes.stageBoundaries,a=[];if(e&&e.length===M.length){let t=0;e.forEach(e=>{a.push({start:t,end:e}),t=e})}else{let t=1/M.length;M.forEach((e,r)=>{a.push({start:r*t,end:(r+1)*t})})}M.forEach((e,r)=>{let o=a[r],i=n.padding+o.start*m,l=(i+(n.padding+o.end*m))/2;r>0&&t.append("line").attr("x1",i).attr("x2",i).attr("y1",n.padding).attr("y2",f-n.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",.8),t.append("text").attr("class","wardley-stage-label").attr("x",l).attr("y",f-n.padding/1.5).attr("fill",d.axisTextColor).attr("font-size",n.axisFontSize-2).attr("text-anchor","middle").text(e)})}if(n.showGrid){let t=u.append("g").attr("class","wardley-grid");for(let e=1;e<4;e++){let a=e/4,r=n.padding+m*a;t.append("line").attr("x1",r).attr("x2",r).attr("y1",n.padding).attr("y2",f-n.padding).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6"),t.append("line").attr("x1",n.padding).attr("x2",y-n.padding).attr("y1",f-n.padding-k*a).attr("y2",f-n.padding-k*a).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6")}}let P=new Map;if(h.nodes.forEach(t=>{P.set(t.id,{x:b(t.x),y:$(t.y),node:t})}),h.pipelines.length>0){let t=u.append("g").attr("class","wardley-pipelines"),e=u.append("g").attr("class","wardley-pipeline-links");h.pipelines.forEach(a=>{if(0===a.componentIds.length)return;let r=a.componentIds.map(t=>({id:t,pos:P.get(t),node:h.nodes.find(e=>e.id===t)})).filter(t=>t.pos&&t.node).sort((t,e)=>t.node.x-e.node.x);for(let t=0;t<r.length-1;t++){let a=r[t],o=r[t+1];e.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",a.pos.x).attr("y1",a.pos.y).attr("x2",o.pos.x).attr("y2",o.pos.y).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let o=1/0,i=-1/0,l=0;if(a.componentIds.forEach(t=>{let e=P.get(t);e&&(o=Math.min(o,e.x),i=Math.max(i,e.x),l=e.y)}),o!==1/0&&i!==-1/0){let e=4*n.nodeRadius,r=l-e/2,s=P.get(a.nodeId);s&&(s.x=(o+i)/2,s.y=r-c/6),t.append("rect").attr("class","wardley-pipeline-box").attr("x",o-15).attr("y",r).attr("width",i-o+30).attr("height",e).attr("fill","none").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}let N=u.append("g").attr("class","wardley-links"),T=new Map;h.pipelines.forEach(t=>{T.set(t.nodeId,new Set(t.componentIds))});let z=h.links.filter(t=>{if(!P.has(t.source)||!P.has(t.target))return!1;let e=T.get(t.target);return!e?.has(t.source)});N.selectAll("line").data(z).enter().append("line").attr("class",t=>`wardley-link${t.dashed?" wardley-link--dashed":""}`).attr("x1",t=>{let e=P.get(t.source),a=P.get(t.target),r=h.nodes.find(e=>e.id===t.source).isPipelineParent?c/Math.sqrt(2):n.nodeRadius,o=a.x-e.x,i=a.y-e.y,l=Math.sqrt(o*o+i*i);return e.x+o/l*r}).attr("y1",t=>{let e=P.get(t.source),a=P.get(t.target),r=h.nodes.find(e=>e.id===t.source).isPipelineParent?c/Math.sqrt(2):n.nodeRadius,o=a.x-e.x,i=a.y-e.y,l=Math.sqrt(o*o+i*i);return e.y+i/l*r}).attr("x2",t=>{let e=P.get(t.source),a=P.get(t.target),r=h.nodes.find(e=>e.id===t.target).isPipelineParent?c/Math.sqrt(2):n.nodeRadius,o=e.x-a.x,i=e.y-a.y,l=Math.sqrt(o*o+i*i);return a.x+o/l*r}).attr("y2",t=>{let e=P.get(t.source),a=P.get(t.target),r=h.nodes.find(e=>e.id===t.target).isPipelineParent?c/Math.sqrt(2):n.nodeRadius,o=e.x-a.x,i=e.y-a.y,l=Math.sqrt(o*o+i*i);return a.y+i/l*r}).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",t=>t.dashed?"6 6":null).attr("marker-end",t=>"forward"===t.flow||"bidirectional"===t.flow?`url(#link-arrow-end-${e})`:null).attr("marker-start",t=>"backward"===t.flow||"bidirectional"===t.flow?`url(#link-arrow-start-${e})`:null),N.selectAll("text").data(z.filter(t=>t.label)).enter().append("text").attr("class","wardley-link-label").attr("x",t=>{let e=P.get(t.source),a=P.get(t.target),r=(e.x+a.x)/2,o=a.y-e.y,n=a.x-e.x,i=Math.sqrt(n*n+o*o);return r+o/i*8}).attr("y",t=>{let e=P.get(t.source),a=P.get(t.target),r=(e.y+a.y)/2,o=a.x-e.x,n=a.y-e.y,i=Math.sqrt(o*o+n*n);return r+-o/i*8}).attr("fill",d.axisTextColor).attr("font-size",n.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",t=>{let e=P.get(t.source),a=P.get(t.target),r=(e.x+a.x)/2,o=(e.y+a.y)/2,n=a.x-e.x,i=a.y-e.y,l=Math.sqrt(n*n+i*i),s=180*Math.atan2(i,n)/Math.PI;return(s>90||s<-90)&&(s+=180),`rotate(${s} ${r+i/l*8} ${o+-n/l*8})`}).text(t=>t.label);let E=u.append("g").attr("class","wardley-trends"),L=h.trends.map(t=>{let e=P.get(t.nodeId);if(!e)return null;let a=b(t.targetX),r=$(t.targetY),o=a-e.x,i=r-e.y,l=Math.sqrt(o*o+i*i),s=n.nodeRadius+2;return{origin:e,targetX:a,targetY:r,adjustedX2:l>s?a-o/l*s:a,adjustedY2:l>s?r-i/l*s:r}}).filter(t=>null!==t);E.selectAll("line").data(L).enter().append("line").attr("class","wardley-trend").attr("x1",t=>t.origin.x).attr("y1",t=>t.origin.y).attr("x2",t=>t.adjustedX2).attr("y2",t=>t.adjustedY2).attr("stroke",d.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${e})`);let A=u.append("g").attr("class","wardley-nodes").selectAll("g").data(h.nodes).enter().append("g").attr("class",t=>["wardley-node",t.className?`wardley-node--${t.className}`:""].filter(Boolean).join(" "));A.filter(t=>"outsource"===t.sourceStrategy).append("circle").attr("class","wardley-outsource-overlay").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",2*n.nodeRadius).attr("fill","#666").attr("stroke",d.componentStroke).attr("stroke-width",1),A.filter(t=>"buy"===t.sourceStrategy).append("circle").attr("class","wardley-buy-overlay").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",2*n.nodeRadius).attr("fill","#ccc").attr("stroke",d.componentStroke).attr("stroke-width",1),A.filter(t=>"build"===t.sourceStrategy).append("circle").attr("class","wardley-build-overlay").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",2*n.nodeRadius).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);let K=A.filter(t=>"market"===t.sourceStrategy);K.append("circle").attr("class","wardley-market-overlay").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",2*n.nodeRadius).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",1),A.filter(t=>!t.isPipelineParent&&"market"!==t.sourceStrategy&&"anchor"!==t.className).append("circle").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",n.nodeRadius).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1);let F=.7*n.nodeRadius,B=1.2*n.nodeRadius;if(K.append("line").attr("class","wardley-market-line").attr("x1",t=>P.get(t.id).x).attr("y1",t=>P.get(t.id).y-B).attr("x2",t=>P.get(t.id).x-B*Math.cos(Math.PI/6)).attr("y2",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),K.append("line").attr("class","wardley-market-line").attr("x1",t=>P.get(t.id).x-B*Math.cos(Math.PI/6)).attr("y1",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("x2",t=>P.get(t.id).x+B*Math.cos(Math.PI/6)).attr("y2",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),K.append("line").attr("class","wardley-market-line").attr("x1",t=>P.get(t.id).x+B*Math.cos(Math.PI/6)).attr("y1",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("x2",t=>P.get(t.id).x).attr("y2",t=>P.get(t.id).y-B).attr("stroke",d.componentStroke).attr("stroke-width",1),K.append("circle").attr("class","wardley-market-dot").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y-B).attr("r",F).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),K.append("circle").attr("class","wardley-market-dot").attr("cx",t=>P.get(t.id).x-B*Math.cos(Math.PI/6)).attr("cy",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("r",F).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),K.append("circle").attr("class","wardley-market-dot").attr("cx",t=>P.get(t.id).x+B*Math.cos(Math.PI/6)).attr("cy",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("r",F).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),A.filter(t=>!0===t.isPipelineParent).append("rect").attr("x",t=>P.get(t.id).x-c/2).attr("y",t=>P.get(t.id).y-c/2).attr("width",c).attr("height",c).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1),A.filter(t=>!0===t.inertia).append("line").attr("class","wardley-inertia").attr("x1",t=>{let e=P.get(t.id),a=t.isPipelineParent?c/2+15:n.nodeRadius+15;return t.sourceStrategy&&(a+=n.nodeRadius+10),e.x+a}).attr("y1",t=>{let e=P.get(t.id),a=t.isPipelineParent?c:2*n.nodeRadius;return e.y-a/2}).attr("x2",t=>{let e=P.get(t.id),a=t.isPipelineParent?c/2+15:n.nodeRadius+15;return t.sourceStrategy&&(a+=n.nodeRadius+10),e.x+a}).attr("y2",t=>{let e=P.get(t.id),a=t.isPipelineParent?c:2*n.nodeRadius;return e.y+a/2}).attr("stroke",d.componentStroke).attr("stroke-width",6),A.append("text").attr("x",t=>{let e=P.get(t.id);if("anchor"===t.className)return void 0!==t.labelOffsetX?e.x+t.labelOffsetX:e.x;let a=n.nodeLabelOffset;t.sourceStrategy&&void 0===t.labelOffsetX&&(a+=10);let r=t.labelOffsetX??a;return e.x+r}).attr("y",t=>{let e=P.get(t.id);if("anchor"===t.className)return void 0!==t.labelOffsetY?e.y+t.labelOffsetY:e.y-3;let a=-n.nodeLabelOffset;t.sourceStrategy&&void 0===t.labelOffsetY&&(a-=10);let r=t.labelOffsetY??a;return e.y+r}).attr("class","wardley-node-label").attr("fill",t=>"evolved"===t.className?d.evolutionStroke:"anchor"===t.className?"#000":d.componentLabelColor).attr("font-size",n.labelFontSize).attr("font-weight",t=>"anchor"===t.className?"bold":"normal").attr("text-anchor",t=>"anchor"===t.className?"middle":"start").attr("dominant-baseline",t=>"anchor"===t.className?"middle":"auto").text(t=>t.label),h.annotations.length>0){let t=u.append("g").attr("class","wardley-annotations");if(h.annotations.forEach(e=>{let a=e.coordinates.map(t=>({x:b(t.x),y:$(t.y)}));if(a.length>1)for(let e=0;e<a.length-1;e++)t.append("line").attr("class","wardley-annotation-line").attr("x1",a[e].x).attr("y1",a[e].y).attr("x2",a[e+1].x).attr("y2",a[e+1].y).attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");a.forEach(a=>{let r=t.append("g").attr("class","wardley-annotation");r.append("circle").attr("cx",a.x).attr("cy",a.y).attr("r",10).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5),r.append("text").attr("x",a.x).attr("y",a.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",d.axisTextColor).attr("font-weight","bold").text(e.number)})}),h.annotationsBox){let e=b(h.annotationsBox.x),a=$(h.annotationsBox.y),r=t.append("g").attr("class","wardley-annotations-box"),o=[...h.annotations].filter(t=>t.text).sort((t,e)=>t.number-e.number),i=[];if(o.forEach((t,o)=>{let n=r.append("text").attr("x",e+10).attr("y",a+10+(o+1)*16).attr("font-size",11).attr("fill",d.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${t.number}. ${t.text}`);i.push(n)}),i.length>0){let t=0,l=0;i.forEach(e=>{let a=e.node(),r=a.getComputedTextLength();t=Math.max(t,r);let o=a.getBBox();l=Math.max(l,o.height)});let s=t+20+105,c=16*o.length+20+l/2,p=n.padding,h=y-n.padding-s,x=n.padding,g=f-n.padding-c;e=Math.max(p,Math.min(e,h)),a=Math.max(x,Math.min(a,g)),i.forEach((t,r)=>{t.attr("x",e+10).attr("y",a+10+(r+1)*16)}),r.insert("rect","text").attr("x",e).attr("y",a).attr("width",s).attr("height",c).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(h.notes.length>0){let t=u.append("g").attr("class","wardley-notes");h.notes.forEach(e=>{let a=b(e.x),r=$(e.y);t.append("text").attr("x",a).attr("y",r).attr("text-anchor","start").attr("font-size",11).attr("fill",d.axisTextColor).attr("font-weight","bold").text(e.text)})}if(h.accelerators.length>0){let t=u.append("g").attr("class","wardley-accelerators");h.accelerators.forEach(e=>{let a=b(e.x),r=$(e.y),o=`
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2521],{12521:(t,e,a)=>{a.d(e,{diagram:()=>F});var r=a(80650),o=a(9797),n=a(52691),i=a(31775),l=a(56037),s=a(89851),d=a(88863),c=(0,s.K)((t,e)=>{let a=t<=1?100*t:t;if(a<0||a>100)throw Error(`${e} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${t}`);return a},"toPercent"),p=(0,s.K)((t,e,a)=>({x:c(e,`${a} evolution`),y:c(t,`${a} visibility`)}),"toCoordinates"),h=(0,s.K)(t=>{if(t){if("+<>"===t)return"bidirectional";if("+<"===t)return"backward";if("+>"===t)return"forward"}},"getFlowFromPort"),x=(0,s.K)(t=>{if(!t?.startsWith("+"))return{};let e=/^\+'([^']*)'/.exec(t),a=e?.[1];return t.includes("<>")?{flow:"bidirectional",label:a}:t.includes("<")?{flow:"backward",label:a}:t.includes(">")?{flow:"forward",label:a}:{label:a}},"extractFlowFromArrow"),y=(0,s.K)((t,e)=>{if((0,r.S)(t,e),t.size&&e.setSize(t.size.width,t.size.height),t.evolution){let a=t.evolution.stages.map(t=>t.secondName?`${t.name.trim()} / ${t.secondName.trim()}`:t.name.trim()),r=t.evolution.stages.filter(t=>void 0!==t.boundary).map(t=>t.boundary);e.updateAxes({stages:a,stageBoundaries:r})}if(t.anchors.forEach(t=>{let a=p(t.visibility,t.evolution,`Anchor "${t.name}"`);e.addNode(t.name,t.name,a.x,a.y,"anchor")}),t.components.forEach(t=>{let a=p(t.visibility,t.evolution,`Component "${t.name}"`),r=t.label?(t.label.negX?-1:1)*t.label.offsetX:void 0,o=t.label?(t.label.negY?-1:1)*t.label.offsetY:void 0,n=t.decorator?.strategy;e.addNode(t.name,t.name,a.x,a.y,"component",r,o,t.inertia,n)}),t.notes.forEach(t=>{let a=p(t.visibility,t.evolution,`Note "${t.text}"`);e.addNote(t.text,a.x,a.y)}),t.pipelines.forEach(t=>{let a=e.getNode(t.parent);if(!a||"number"!=typeof a.y)throw Error(`Pipeline "${t.parent}" must reference an existing component with coordinates.`);let r=a.y;e.startPipeline(t.parent),t.components.forEach(a=>{let o=`${t.parent}_${a.name}`,n=a.label?(a.label.negX?-1:1)*a.label.offsetX:void 0,i=a.label?(a.label.negY?-1:1)*a.label.offsetY:void 0,l=c(a.evolution,`Pipeline component "${a.name}" evolution`);e.addNode(o,a.name,l,r,"pipeline-component",n,i),e.addPipelineComponent(t.parent,o)})}),t.links.forEach(t=>{let a=!!t.arrow&&(t.arrow.includes("-.->")||t.arrow.includes(".-.")),r=h(t.fromPort)??h(t.toPort),{flow:o,label:n}=x(t.arrow);!r&&o&&(r=o);let i=t.linkLabel;e.addLink(e.resolveNodeId(t.from),e.resolveNodeId(t.to),a,n??i,r)}),t.evolves.forEach(t=>{let a=e.getNode(t.component);if(a?.y!==void 0){let r=c(t.target,`Evolve target for "${t.component}"`);e.addTrend(t.component,r,a.y)}}),t.annotations.length>0){let a=t.annotations[0],r=p(a.x,a.y,"Annotations box");e.setAnnotationsBox(r.x,r.y)}t.annotation.forEach(t=>{let a=p(t.x,t.y,`Annotation ${t.number}`);e.addAnnotation(t.number,[{x:a.x,y:a.y}],t.text)}),t.accelerators.forEach(t=>{let a=p(t.x,t.y,`Accelerator "${t.name}"`);e.addAccelerator(t.name,a.x,a.y)}),t.deaccelerators.forEach(t=>{let a=p(t.x,t.y,`Deaccelerator "${t.name}"`);e.addDeaccelerator(t.name,a.x,a.y)})},"populateDb"),f={parser:{yy:void 0},parse:(0,s.K)(async t=>{let e=await (0,d.qg)("wardley",t);l.R.debug(e);let a=f.parser?.yy;if(!a||"function"!=typeof a.addNode)throw Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");y(e,a)},"parse")},g=new class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{(0,s.K)(this,"WardleyBuilder")}addNode(t){let e=this.nodes.get(t.id)??{id:t.id,label:t.label},a={...e,...t,className:t.className??e.className,labelOffsetX:t.labelOffsetX??e.labelOffsetX,labelOffsetY:t.labelOffsetY??e.labelOffsetY};this.nodes.set(t.id,a)}addLink(t){this.links.push(t)}addTrend(t){this.trends.set(t.nodeId,t)}startPipeline(t){this.pipelines.set(t,{nodeId:t,componentIds:[]});let e=this.nodes.get(t);e&&(e.isPipelineParent=!0)}addPipelineComponent(t,e){let a=this.pipelines.get(t);a&&a.componentIds.push(e);let r=this.nodes.get(e);r&&(r.inPipeline=!0)}addAnnotation(t){this.annotations.push(t)}addNote(t){this.notes.push(t)}addAccelerator(t){this.accelerators.push(t)}addDeaccelerator(t){this.deaccelerators.push(t)}setAnnotationsBox(t,e){this.annotationsBox={x:t,y:e}}setAxes(t){this.axes={...this.axes,...t}}setSize(t,e){this.size={width:t,height:e}}getNode(t){return this.nodes.get(t)}resolveNodeId(t){if(this.nodes.has(t))return t;for(let[e,a]of this.nodes)if(a.label===t)return e;return t}build(){let t=[];for(let e of this.nodes.values()){if("number"!=typeof e.x||"number"!=typeof e.y)throw Error(`Node "${e.label}" is missing coordinates`);t.push(e)}return{nodes:t,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}};function u(){return(0,i.D7)()["wardley-beta"]}function w(t,e,a,r,o,n,i,l,s){g.addNode({id:t,label:e,x:a,y:r,className:o,labelOffsetX:n,labelOffsetY:i,inertia:l,sourceStrategy:s})}function m(t,e,a=!1,r,o){g.addLink({source:t,target:e,dashed:a,label:r,flow:o})}function k(t,e,a){g.addTrend({nodeId:t,targetX:e,targetY:a})}function b(t,e,a){g.addAnnotation({number:t,coordinates:e,text:a})}function $(t,e,a){g.addNote({text:t,x:e,y:a})}function S(t,e,a){g.addAccelerator({name:t,x:e,y:a})}function v(t,e,a){g.addDeaccelerator({name:t,x:e,y:a})}function C(t,e){g.setAnnotationsBox(t,e)}function M(t,e){g.setSize(t,e)}function P(t){g.startPipeline(t)}function N(t,e){g.addPipelineComponent(t,e)}function T(t){g.setAxes(t)}function z(t){return g.getNode(t)}function E(t){return g.resolveNodeId(t)}function L(){return g.build()}function A(){g.clear(),(0,i.IU)()}(0,s.K)(u,"getConfig"),(0,s.K)(w,"addNode"),(0,s.K)(m,"addLink"),(0,s.K)(k,"addTrend"),(0,s.K)(b,"addAnnotation"),(0,s.K)($,"addNote"),(0,s.K)(S,"addAccelerator"),(0,s.K)(v,"addDeaccelerator"),(0,s.K)(C,"setAnnotationsBox"),(0,s.K)(M,"setSize"),(0,s.K)(P,"startPipeline"),(0,s.K)(N,"addPipelineComponent"),(0,s.K)(T,"updateAxes"),(0,s.K)(z,"getNode"),(0,s.K)(E,"resolveNodeId"),(0,s.K)(L,"getWardleyData"),(0,s.K)(A,"clear");var K={getConfig:u,addNode:w,addLink:m,addTrend:k,addAnnotation:b,addNote:$,addAccelerator:S,addDeaccelerator:v,setAnnotationsBox:C,setSize:M,startPipeline:P,addPipelineComponent:N,updateAxes:T,getNode:z,resolveNodeId:E,getWardleyData:L,clear:A,setAccTitle:i.SV,getAccTitle:i.iN,setDiagramTitle:i.ke,getDiagramTitle:i.ab,getAccDescription:i.m7,setAccDescription:i.EI},I=["Genesis","Custom Built","Product","Commodity"],R=(0,s.K)(()=>{let{themeVariables:t}=(0,i.D7)();return{backgroundColor:t.wardley?.backgroundColor??t.background??"#fff",axisColor:t.wardley?.axisColor??"#000",axisTextColor:t.wardley?.axisTextColor??t.primaryTextColor??"#222",gridColor:t.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:t.wardley?.componentFill??"#fff",componentStroke:t.wardley?.componentStroke??"#000",componentLabelColor:t.wardley?.componentLabelColor??t.primaryTextColor??"#222",linkStroke:t.wardley?.linkStroke??"#000",evolutionStroke:t.wardley?.evolutionStroke??"#dc3545",annotationStroke:t.wardley?.annotationStroke??"#000",annotationTextColor:t.wardley?.annotationTextColor??t.primaryTextColor??"#222",annotationFill:t.wardley?.annotationFill??t.background??"#fff"}},"getTheme"),D=(0,s.K)(()=>{let t=(0,i.D7)()["wardley-beta"];return{width:t?.width??900,height:t?.height??600,padding:t?.padding??48,nodeRadius:t?.nodeRadius??6,nodeLabelOffset:t?.nodeLabelOffset??8,axisFontSize:t?.axisFontSize??12,labelFontSize:t?.labelFontSize??10,showGrid:t?.showGrid??!1,useMaxWidth:t?.useMaxWidth??!0}},"getConfigValues"),F={parser:f,db:K,renderer:{draw:(0,s.K)((t,e,a,r)=>{l.R.debug("Rendering Wardley map\n"+t);let n=D(),d=R(),c=1.6*n.nodeRadius,p=r.db,h=p.getWardleyData(),x=p.getDiagramTitle(),y=h.size?.width??n.width,f=h.size?.height??n.height,g=(0,o.D)(e);g.selectAll("*").remove(),(0,i.a$)(g,f,y,n.useMaxWidth),g.attr("viewBox",`0 0 ${y} ${f}`);let u=g.append("g").attr("class","wardley-map"),w=g.append("defs");w.append("marker").attr("id",`arrow-${e}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.evolutionStroke).attr("stroke","none"),w.append("marker").attr("id",`link-arrow-end-${e}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.linkStroke).attr("stroke","none"),w.append("marker").attr("id",`link-arrow-start-${e}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",d.linkStroke).attr("stroke","none"),u.append("rect").attr("class","wardley-background").attr("width",y).attr("height",f).attr("fill",d.backgroundColor);let m=y-2*n.padding,k=f-2*n.padding;x&&u.append("text").attr("class","wardley-title").attr("x",y/2).attr("y",n.padding/2).attr("fill",d.axisTextColor).attr("font-size",1.05*n.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(x);let b=(0,s.K)(t=>n.padding+t/100*m,"projectX"),$=(0,s.K)(t=>f-n.padding-t/100*k,"projectY"),S=u.append("g").attr("class","wardley-axes");S.append("line").attr("x1",n.padding).attr("x2",y-n.padding).attr("y1",f-n.padding).attr("y2",f-n.padding).attr("stroke",d.axisColor).attr("stroke-width",1),S.append("line").attr("x1",n.padding).attr("x2",n.padding).attr("y1",n.padding).attr("y2",f-n.padding).attr("stroke",d.axisColor).attr("stroke-width",1);let v=h.axes.xLabel??"Evolution",C=h.axes.yLabel??"Visibility";S.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",n.padding+m/2).attr("y",f-n.padding/4).attr("fill",d.axisTextColor).attr("font-size",n.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(v),S.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",n.padding/3).attr("y",n.padding+k/2).attr("fill",d.axisTextColor).attr("font-size",n.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${n.padding/3} ${n.padding+k/2})`).text(C);let M=h.axes.stages&&h.axes.stages.length>0?h.axes.stages:I;if(M.length>0){let t=u.append("g").attr("class","wardley-stages"),e=h.axes.stageBoundaries,a=[];if(e&&e.length===M.length){let t=0;e.forEach(e=>{a.push({start:t,end:e}),t=e})}else{let t=1/M.length;M.forEach((e,r)=>{a.push({start:r*t,end:(r+1)*t})})}M.forEach((e,r)=>{let o=a[r],i=n.padding+o.start*m,l=(i+(n.padding+o.end*m))/2;r>0&&t.append("line").attr("x1",i).attr("x2",i).attr("y1",n.padding).attr("y2",f-n.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",.8),t.append("text").attr("class","wardley-stage-label").attr("x",l).attr("y",f-n.padding/1.5).attr("fill",d.axisTextColor).attr("font-size",n.axisFontSize-2).attr("text-anchor","middle").text(e)})}if(n.showGrid){let t=u.append("g").attr("class","wardley-grid");for(let e=1;e<4;e++){let a=e/4,r=n.padding+m*a;t.append("line").attr("x1",r).attr("x2",r).attr("y1",n.padding).attr("y2",f-n.padding).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6"),t.append("line").attr("x1",n.padding).attr("x2",y-n.padding).attr("y1",f-n.padding-k*a).attr("y2",f-n.padding-k*a).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6")}}let P=new Map;if(h.nodes.forEach(t=>{P.set(t.id,{x:b(t.x),y:$(t.y),node:t})}),h.pipelines.length>0){let t=u.append("g").attr("class","wardley-pipelines"),e=u.append("g").attr("class","wardley-pipeline-links");h.pipelines.forEach(a=>{if(0===a.componentIds.length)return;let r=a.componentIds.map(t=>({id:t,pos:P.get(t),node:h.nodes.find(e=>e.id===t)})).filter(t=>t.pos&&t.node).sort((t,e)=>t.node.x-e.node.x);for(let t=0;t<r.length-1;t++){let a=r[t],o=r[t+1];e.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",a.pos.x).attr("y1",a.pos.y).attr("x2",o.pos.x).attr("y2",o.pos.y).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let o=1/0,i=-1/0,l=0;if(a.componentIds.forEach(t=>{let e=P.get(t);e&&(o=Math.min(o,e.x),i=Math.max(i,e.x),l=e.y)}),o!==1/0&&i!==-1/0){let e=4*n.nodeRadius,r=l-e/2,s=P.get(a.nodeId);s&&(s.x=(o+i)/2,s.y=r-c/6),t.append("rect").attr("class","wardley-pipeline-box").attr("x",o-15).attr("y",r).attr("width",i-o+30).attr("height",e).attr("fill","none").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}let N=u.append("g").attr("class","wardley-links"),T=new Map;h.pipelines.forEach(t=>{T.set(t.nodeId,new Set(t.componentIds))});let z=h.links.filter(t=>{if(!P.has(t.source)||!P.has(t.target))return!1;let e=T.get(t.target);return!e?.has(t.source)});N.selectAll("line").data(z).enter().append("line").attr("class",t=>`wardley-link${t.dashed?" wardley-link--dashed":""}`).attr("x1",t=>{let e=P.get(t.source),a=P.get(t.target),r=h.nodes.find(e=>e.id===t.source).isPipelineParent?c/Math.sqrt(2):n.nodeRadius,o=a.x-e.x,i=a.y-e.y,l=Math.sqrt(o*o+i*i);return e.x+o/l*r}).attr("y1",t=>{let e=P.get(t.source),a=P.get(t.target),r=h.nodes.find(e=>e.id===t.source).isPipelineParent?c/Math.sqrt(2):n.nodeRadius,o=a.x-e.x,i=a.y-e.y,l=Math.sqrt(o*o+i*i);return e.y+i/l*r}).attr("x2",t=>{let e=P.get(t.source),a=P.get(t.target),r=h.nodes.find(e=>e.id===t.target).isPipelineParent?c/Math.sqrt(2):n.nodeRadius,o=e.x-a.x,i=e.y-a.y,l=Math.sqrt(o*o+i*i);return a.x+o/l*r}).attr("y2",t=>{let e=P.get(t.source),a=P.get(t.target),r=h.nodes.find(e=>e.id===t.target).isPipelineParent?c/Math.sqrt(2):n.nodeRadius,o=e.x-a.x,i=e.y-a.y,l=Math.sqrt(o*o+i*i);return a.y+i/l*r}).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",t=>t.dashed?"6 6":null).attr("marker-end",t=>"forward"===t.flow||"bidirectional"===t.flow?`url(#link-arrow-end-${e})`:null).attr("marker-start",t=>"backward"===t.flow||"bidirectional"===t.flow?`url(#link-arrow-start-${e})`:null),N.selectAll("text").data(z.filter(t=>t.label)).enter().append("text").attr("class","wardley-link-label").attr("x",t=>{let e=P.get(t.source),a=P.get(t.target),r=(e.x+a.x)/2,o=a.y-e.y,n=a.x-e.x,i=Math.sqrt(n*n+o*o);return r+o/i*8}).attr("y",t=>{let e=P.get(t.source),a=P.get(t.target),r=(e.y+a.y)/2,o=a.x-e.x,n=a.y-e.y,i=Math.sqrt(o*o+n*n);return r+-o/i*8}).attr("fill",d.axisTextColor).attr("font-size",n.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",t=>{let e=P.get(t.source),a=P.get(t.target),r=(e.x+a.x)/2,o=(e.y+a.y)/2,n=a.x-e.x,i=a.y-e.y,l=Math.sqrt(n*n+i*i),s=180*Math.atan2(i,n)/Math.PI;return(s>90||s<-90)&&(s+=180),`rotate(${s} ${r+i/l*8} ${o+-n/l*8})`}).text(t=>t.label);let E=u.append("g").attr("class","wardley-trends"),L=h.trends.map(t=>{let e=P.get(t.nodeId);if(!e)return null;let a=b(t.targetX),r=$(t.targetY),o=a-e.x,i=r-e.y,l=Math.sqrt(o*o+i*i),s=n.nodeRadius+2;return{origin:e,targetX:a,targetY:r,adjustedX2:l>s?a-o/l*s:a,adjustedY2:l>s?r-i/l*s:r}}).filter(t=>null!==t);E.selectAll("line").data(L).enter().append("line").attr("class","wardley-trend").attr("x1",t=>t.origin.x).attr("y1",t=>t.origin.y).attr("x2",t=>t.adjustedX2).attr("y2",t=>t.adjustedY2).attr("stroke",d.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${e})`);let A=u.append("g").attr("class","wardley-nodes").selectAll("g").data(h.nodes).enter().append("g").attr("class",t=>["wardley-node",t.className?`wardley-node--${t.className}`:""].filter(Boolean).join(" "));A.filter(t=>"outsource"===t.sourceStrategy).append("circle").attr("class","wardley-outsource-overlay").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",2*n.nodeRadius).attr("fill","#666").attr("stroke",d.componentStroke).attr("stroke-width",1),A.filter(t=>"buy"===t.sourceStrategy).append("circle").attr("class","wardley-buy-overlay").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",2*n.nodeRadius).attr("fill","#ccc").attr("stroke",d.componentStroke).attr("stroke-width",1),A.filter(t=>"build"===t.sourceStrategy).append("circle").attr("class","wardley-build-overlay").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",2*n.nodeRadius).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);let K=A.filter(t=>"market"===t.sourceStrategy);K.append("circle").attr("class","wardley-market-overlay").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",2*n.nodeRadius).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",1),A.filter(t=>!t.isPipelineParent&&"market"!==t.sourceStrategy&&"anchor"!==t.className).append("circle").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y).attr("r",n.nodeRadius).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1);let F=.7*n.nodeRadius,B=1.2*n.nodeRadius;if(K.append("line").attr("class","wardley-market-line").attr("x1",t=>P.get(t.id).x).attr("y1",t=>P.get(t.id).y-B).attr("x2",t=>P.get(t.id).x-B*Math.cos(Math.PI/6)).attr("y2",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),K.append("line").attr("class","wardley-market-line").attr("x1",t=>P.get(t.id).x-B*Math.cos(Math.PI/6)).attr("y1",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("x2",t=>P.get(t.id).x+B*Math.cos(Math.PI/6)).attr("y2",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),K.append("line").attr("class","wardley-market-line").attr("x1",t=>P.get(t.id).x+B*Math.cos(Math.PI/6)).attr("y1",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("x2",t=>P.get(t.id).x).attr("y2",t=>P.get(t.id).y-B).attr("stroke",d.componentStroke).attr("stroke-width",1),K.append("circle").attr("class","wardley-market-dot").attr("cx",t=>P.get(t.id).x).attr("cy",t=>P.get(t.id).y-B).attr("r",F).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),K.append("circle").attr("class","wardley-market-dot").attr("cx",t=>P.get(t.id).x-B*Math.cos(Math.PI/6)).attr("cy",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("r",F).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),K.append("circle").attr("class","wardley-market-dot").attr("cx",t=>P.get(t.id).x+B*Math.cos(Math.PI/6)).attr("cy",t=>P.get(t.id).y+B*Math.sin(Math.PI/6)).attr("r",F).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),A.filter(t=>!0===t.isPipelineParent).append("rect").attr("x",t=>P.get(t.id).x-c/2).attr("y",t=>P.get(t.id).y-c/2).attr("width",c).attr("height",c).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1),A.filter(t=>!0===t.inertia).append("line").attr("class","wardley-inertia").attr("x1",t=>{let e=P.get(t.id),a=t.isPipelineParent?c/2+15:n.nodeRadius+15;return t.sourceStrategy&&(a+=n.nodeRadius+10),e.x+a}).attr("y1",t=>{let e=P.get(t.id),a=t.isPipelineParent?c:2*n.nodeRadius;return e.y-a/2}).attr("x2",t=>{let e=P.get(t.id),a=t.isPipelineParent?c/2+15:n.nodeRadius+15;return t.sourceStrategy&&(a+=n.nodeRadius+10),e.x+a}).attr("y2",t=>{let e=P.get(t.id),a=t.isPipelineParent?c:2*n.nodeRadius;return e.y+a/2}).attr("stroke",d.componentStroke).attr("stroke-width",6),A.append("text").attr("x",t=>{let e=P.get(t.id);if("anchor"===t.className)return void 0!==t.labelOffsetX?e.x+t.labelOffsetX:e.x;let a=n.nodeLabelOffset;t.sourceStrategy&&void 0===t.labelOffsetX&&(a+=10);let r=t.labelOffsetX??a;return e.x+r}).attr("y",t=>{let e=P.get(t.id);if("anchor"===t.className)return void 0!==t.labelOffsetY?e.y+t.labelOffsetY:e.y-3;let a=-n.nodeLabelOffset;t.sourceStrategy&&void 0===t.labelOffsetY&&(a-=10);let r=t.labelOffsetY??a;return e.y+r}).attr("class","wardley-node-label").attr("fill",t=>"evolved"===t.className?d.evolutionStroke:"anchor"===t.className?"#000":d.componentLabelColor).attr("font-size",n.labelFontSize).attr("font-weight",t=>"anchor"===t.className?"bold":"normal").attr("text-anchor",t=>"anchor"===t.className?"middle":"start").attr("dominant-baseline",t=>"anchor"===t.className?"middle":"auto").text(t=>t.label),h.annotations.length>0){let t=u.append("g").attr("class","wardley-annotations");if(h.annotations.forEach(e=>{let a=e.coordinates.map(t=>({x:b(t.x),y:$(t.y)}));if(a.length>1)for(let e=0;e<a.length-1;e++)t.append("line").attr("class","wardley-annotation-line").attr("x1",a[e].x).attr("y1",a[e].y).attr("x2",a[e+1].x).attr("y2",a[e+1].y).attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");a.forEach(a=>{let r=t.append("g").attr("class","wardley-annotation");r.append("circle").attr("cx",a.x).attr("cy",a.y).attr("r",10).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5),r.append("text").attr("x",a.x).attr("y",a.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",d.axisTextColor).attr("font-weight","bold").text(e.number)})}),h.annotationsBox){let e=b(h.annotationsBox.x),a=$(h.annotationsBox.y),r=t.append("g").attr("class","wardley-annotations-box"),o=[...h.annotations].filter(t=>t.text).sort((t,e)=>t.number-e.number),i=[];if(o.forEach((t,o)=>{let n=r.append("text").attr("x",e+10).attr("y",a+10+(o+1)*16).attr("font-size",11).attr("fill",d.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${t.number}. ${t.text}`);i.push(n)}),i.length>0){let t=0,l=0;i.forEach(e=>{let a=e.node(),r=a.getComputedTextLength();t=Math.max(t,r);let o=a.getBBox();l=Math.max(l,o.height)});let s=t+20+105,c=16*o.length+20+l/2,p=n.padding,h=y-n.padding-s,x=n.padding,g=f-n.padding-c;e=Math.max(p,Math.min(e,h)),a=Math.max(x,Math.min(a,g)),i.forEach((t,r)=>{t.attr("x",e+10).attr("y",a+10+(r+1)*16)}),r.insert("rect","text").attr("x",e).attr("y",a).attr("width",s).attr("height",c).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(h.notes.length>0){let t=u.append("g").attr("class","wardley-notes");h.notes.forEach(e=>{let a=b(e.x),r=$(e.y);t.append("text").attr("x",a).attr("y",r).attr("text-anchor","start").attr("font-size",11).attr("fill",d.axisTextColor).attr("font-weight","bold").text(e.text)})}if(h.accelerators.length>0){let t=u.append("g").attr("class","wardley-accelerators");h.accelerators.forEach(e=>{let a=b(e.x),r=$(e.y),o=`
2
2
  M ${a} ${r-15}
3
3
  L ${a+60-20} ${r-15}
4
4
  L ${a+60-20} ${r-15-8}
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2585],{82585:(e,a,s)=>{s.d(a,{createRailroadServices:()=>c.l});var c=s(76030);s(27698)}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2589],{52589:(e,r,t)=>{t.d(r,{diagram:()=>u});var a=t(98378);t(16443),t(16640),t(41185),t(30790),t(33604),t(78706),t(6741),t(60703),t(10969),t(36351),t(2401),t(52691),t(31775),t(56037);var s=t(89851),u={parser:a.Zk,get db(){return new a.u4(2)},renderer:a.q7,styles:a.tM,init:(0,s.K)(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2600],{92600:(e,s,a)=>{a.d(s,{createTreemapServices:()=>c.d});var c=a(59323);a(27698)}}]);