difit 5.0.0 → 5.0.2

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 (182) hide show
  1. package/README.ja.md +0 -1
  2. package/README.ko.md +0 -1
  3. package/README.md +0 -1
  4. package/README.zh.md +0 -1
  5. package/dist/cli/index.js +0 -4
  6. package/dist/cli/index.test.js +0 -110
  7. package/dist/client/assets/{arc-DbOd2jxV.js → arc-6rfKPaO5.js} +1 -1
  8. package/dist/client/assets/architecture-7EHR7CIX-BVjNdUJk.js +1 -0
  9. package/dist/client/assets/{architectureDiagram-Q4EWVU46-BFXI_tUS.js → architectureDiagram-3BPJPVTR-DAPpx935.js} +3 -3
  10. package/dist/client/assets/blockDiagram-GPEHLZMM-CDPNTGF3.js +132 -0
  11. package/dist/client/assets/{c4Diagram-AHTNJAMY-BdIoPSTS.js → c4Diagram-AAUBKEIU-CQ1lD37n.js} +2 -2
  12. package/dist/client/assets/channel-CI_kbhRo.js +1 -0
  13. package/dist/client/assets/{chunk-EDXVE4YY-EPdmphYw.js → chunk-2J33WTMH-wS77xj1o.js} +1 -1
  14. package/dist/client/assets/chunk-3OPIFGDE-DC3iOSQY.js +62 -0
  15. package/dist/client/assets/{chunk-4BX2VUAB-CNkIhTNe.js → chunk-4BX2VUAB-C_jnlJZs.js} +1 -1
  16. package/dist/client/assets/chunk-4EGX6M5U-B5J4lyUG.js +1 -0
  17. package/dist/client/assets/{chunk-55IACEB6-J_10GkPG.js → chunk-55IACEB6-BJ8kKTix.js} +1 -1
  18. package/dist/client/assets/chunk-5DO6E6H7-UL04E-Sm.js +1 -0
  19. package/dist/client/assets/chunk-5ZQYHXKU-Bh6BPUBA.js +2 -0
  20. package/dist/client/assets/chunk-727SXJPM-BKLMyeWY.js +206 -0
  21. package/dist/client/assets/chunk-AQP2D5EJ-Df_usvOe.js +231 -0
  22. package/dist/client/assets/{chunk-LIHQZDEY-BEYvjNoB.js → chunk-BR22UD5L-iAygIt6T.js} +1 -1
  23. package/dist/client/assets/{chunk-BSJP7CBP-DiXS795w.js → chunk-BSJP7CBP-DE9tFfBp.js} +1 -1
  24. package/dist/client/assets/chunk-CSCIHK7Q-4xM5RfGk.js +124 -0
  25. package/dist/client/assets/chunk-FHYWG6QK-BgSLVmZJ.js +1 -0
  26. package/dist/client/assets/{chunk-FMBD7UC4-Dgx4um1Q.js → chunk-FMBD7UC4-Cv9IlI4O.js} +1 -1
  27. package/dist/client/assets/chunk-KSCS5N6A-DWLHH_AM.js +10 -0
  28. package/dist/client/assets/{chunk-ZZ45TVLE-CwpZ5yb7.js → chunk-L5ZTLDWV-DOT8BvSV.js} +1 -1
  29. package/dist/client/assets/chunk-LZXEDZCA-D6qoNMjr.js +2 -0
  30. package/dist/client/assets/chunk-MPE355IW-cyI0EFc3.js +1 -0
  31. package/dist/client/assets/chunk-MZUSXYTE-5xqZ7HV0.js +1 -0
  32. package/dist/client/assets/chunk-N66VUXT2-CoBMKqlP.js +1 -0
  33. package/dist/client/assets/{chunk-YZCP3GAM-D_AeoI3D.js → chunk-ND2GUHAM-CL1pz8JY.js} +1 -1
  34. package/dist/client/assets/chunk-NNHCCRGN-CyaCWJWT.js +159 -0
  35. package/dist/client/assets/{chunk-X2U36JSP-BAcfna0L.js → chunk-NZK2D7GU-C5yW1m8s.js} +1 -1
  36. package/dist/client/assets/{chunk-U2HBQHQK-CpVfEbNc.js → chunk-O5CBEL6O-DxoQOZDE.js} +4 -4
  37. package/dist/client/assets/chunk-PUPMXCY4-DkoNKY6Q.js +1 -0
  38. package/dist/client/assets/chunk-QZHKN3VN-Bo6EoZG3.js +1 -0
  39. package/dist/client/assets/chunk-UIBZB4QT-3h9dqf89.js +1 -0
  40. package/dist/client/assets/chunk-WCWK7LTN-CoJXc1FG.js +1 -0
  41. package/dist/client/assets/chunk-WU5MYG2G-wj9gaxvS.js +1 -0
  42. package/dist/client/assets/{chunk-XPW4576I-D0wrDPCQ.js → chunk-XPW4576I-CaGs7AFA.js} +1 -1
  43. package/dist/client/assets/classDiagram-4FO5ZUOK--B_Qh3IG.js +1 -0
  44. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-ChlqxE3w.js +1 -0
  45. package/dist/client/assets/{cose-bilkent-S5V4N54A-DJvkrscF.js → cose-bilkent-S5V4N54A-0teiw0GI.js} +1 -1
  46. package/dist/client/assets/cytoscape.esm-CJYKJE1R.js +321 -0
  47. package/dist/client/assets/dagre-BLlLfumR.js +1 -0
  48. package/dist/client/assets/dagre-BM42HDAG-D_-3GRUj.js +4 -0
  49. package/dist/client/assets/diagram-2AECGRRQ-_W3aY5Zc.js +43 -0
  50. package/dist/client/assets/{diagram-5BDNPKRD-CJSn8eie.js → diagram-5GNKFQAL-CMT8oSlm.js} +2 -2
  51. package/dist/client/assets/diagram-KO2AKTUF-B9w0z9LU.js +3 -0
  52. package/dist/client/assets/{diagram-TYMM5635-DKIgp_-m.js → diagram-LMA3HP47-BuYAHh0a.js} +1 -1
  53. package/dist/client/assets/diagram-OG6HWLK6-C2f4LrLS.js +24 -0
  54. package/dist/client/assets/{dist-CL_sSZWx.js → dist-DpSceyb-.js} +1 -1
  55. package/dist/client/assets/{erDiagram-SMLLAGMA-Iw0m0edr.js → erDiagram-TEJ5UH35-BDcc9ZeJ.js} +2 -2
  56. package/dist/client/assets/eventmodeling-FCH6USID-BMkJE7Xb.js +1 -0
  57. package/dist/client/assets/{flowDiagram-DWJPFMVM-CtXQs1rX.js → flowDiagram-I6XJVG4X-C46q_MLU.js} +6 -6
  58. package/dist/client/assets/ganttDiagram-6RSMTGT7-DgM194yE.js +292 -0
  59. package/dist/client/assets/gitGraph-WXDBUCRP-hUiiT7ot.js +1 -0
  60. package/dist/client/assets/gitGraphDiagram-PVQCEYII-CpIhNWuv.js +106 -0
  61. package/dist/client/assets/graphlib-DkOQ9ah2.js +1 -0
  62. package/dist/client/assets/index-CFVmjhs_.css +2 -0
  63. package/dist/client/assets/index-abQ5IgAS.js +82 -0
  64. package/dist/client/assets/info-J43DQDTF-Dn8zxm9V.js +1 -0
  65. package/dist/client/assets/{infoDiagram-42DDH7IO-Cfjrwz2v.js → infoDiagram-5YYISTIA-ZvGYZ-kQ.js} +1 -1
  66. package/dist/client/assets/{ishikawaDiagram-UXIWVN3A-Cc-jozqB.js → ishikawaDiagram-YF4QCWOH-B9iBTUWg.js} +2 -2
  67. package/dist/client/assets/{journeyDiagram-VCZTEJTY-Bjx1sC-s.js → journeyDiagram-JHISSGLW-BjR1KB-M.js} +3 -3
  68. package/dist/client/assets/{kanban-definition-6JOO6SKY-CIkJYslO.js → kanban-definition-UN3LZRKU-C-omJVr_.js} +6 -6
  69. package/dist/client/assets/katex-Du_qQZ_j.js +257 -0
  70. package/dist/client/assets/line-BrFp4RcF.js +1 -0
  71. package/dist/client/assets/{linear-DCAQGlgU.js → linear-Ce90hYCv.js} +1 -1
  72. package/dist/client/assets/mermaid-parser.core-DyzS6net.js +4 -0
  73. package/dist/client/assets/mermaid.core-dZvhJRm4.js +9 -0
  74. package/dist/client/assets/{mindmap-definition-QFDTVHPH-CPflWkUN.js → mindmap-definition-RKZ34NQL-B1-aSgk-.js} +28 -28
  75. package/dist/client/assets/{ordinal-DIg8h6NI.js → ordinal-7rXhq2H9.js} +1 -1
  76. package/dist/client/assets/packet-YPE3B663-D4pLqEWp.js +1 -0
  77. package/dist/client/assets/pie-LRSECV5Y-Cl1Syrbg.js +1 -0
  78. package/dist/client/assets/pieDiagram-4H26LBE5-Dsq8XbGX.js +30 -0
  79. package/dist/client/assets/quadrantDiagram-W4KKPZXB-Cown2EYl.js +7 -0
  80. package/dist/client/assets/radar-GUYGQ44K-DJuoaUBO.js +1 -0
  81. package/dist/client/assets/{requirementDiagram-MS252O5E-CZW6zJs_.js → requirementDiagram-4Y6WPE33-IHqUu4n-.js} +4 -4
  82. package/dist/client/assets/{sankeyDiagram-XADWPNL6-D4r0GNlW.js → sankeyDiagram-5OEKKPKP-BvIfULX_.js} +36 -6
  83. package/dist/client/assets/sequenceDiagram-3UESZ5HK-DNZh6NI8.js +162 -0
  84. package/dist/client/assets/src-iMPju4xR.js +1 -0
  85. package/dist/client/assets/stateDiagram-AJRCARHV-CGHI9QKF.js +1 -0
  86. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-Cags9ZgQ.js +1 -0
  87. package/dist/client/assets/{timeline-definition-GMOUNBTQ-DmlaOXs4.js → timeline-definition-PNZ67QCA-C3MNpio4.js} +5 -5
  88. package/dist/client/assets/treeView-BLDUP644-DsanmcrA.js +1 -0
  89. package/dist/client/assets/treemap-LRROVOQU-CCkKzd8F.js +1 -0
  90. package/dist/client/assets/vennDiagram-CIIHVFJN-2XAu0kKE.js +34 -0
  91. package/dist/client/assets/wardley-L42UT6IY-BuMHDenj.js +1 -0
  92. package/dist/client/assets/{wardleyDiagram-NUSXRM2D-B5lHUuTU.js → wardleyDiagram-YWT4CUSO-e5Pq-VXT.js} +61 -3
  93. package/dist/client/assets/{xychartDiagram-5P7HB3ND-D8nLdJo8.js → xychartDiagram-2RQKCTM6-DlYK0YFq.js} +3 -3
  94. package/dist/client/index.html +2 -2
  95. package/dist/server/file-watcher.test.js +40 -36
  96. package/dist/server/git-diff.test.js +6 -4
  97. package/dist/server/server.d.ts +0 -1
  98. package/dist/server/server.js +25 -7
  99. package/dist/server/server.test.js +120 -39
  100. package/dist/types/diff.d.ts +1 -2
  101. package/dist/utils/commentImports.js +4 -1
  102. package/package.json +3 -3
  103. package/dist/client/assets/_baseFor-Dq1lbcoh.js +0 -1
  104. package/dist/client/assets/architecture-YZFGNWBL-0n2ZLuLj.js +0 -1
  105. package/dist/client/assets/blockDiagram-DXYQGD6D-BOEZDsFe.js +0 -132
  106. package/dist/client/assets/channel-DPag0OPA.js +0 -1
  107. package/dist/client/assets/chunk-2KRD3SAO-BaHSMZbk.js +0 -1
  108. package/dist/client/assets/chunk-336JU56O-BGfMTguc.js +0 -2
  109. package/dist/client/assets/chunk-426QAEUC-Ct2OJ1s3.js +0 -1
  110. package/dist/client/assets/chunk-4TB4RGXK-wFMAN-Ug.js +0 -206
  111. package/dist/client/assets/chunk-5FUZZQ4R-0NY9W0kL.js +0 -62
  112. package/dist/client/assets/chunk-5PVQY5BW-nUEO-vub.js +0 -2
  113. package/dist/client/assets/chunk-67CJDMHE-CpK_DCjw.js +0 -1
  114. package/dist/client/assets/chunk-7N4EOEYR-CJfX2SRB.js +0 -1
  115. package/dist/client/assets/chunk-AA7GKIK3-DGHjDQX4.js +0 -1
  116. package/dist/client/assets/chunk-CIAEETIT-DaOGL_z8.js +0 -1
  117. package/dist/client/assets/chunk-ENJZ2VHE-9x7-Qpzy.js +0 -10
  118. package/dist/client/assets/chunk-FOC6F5B3-BaVe0aqm.js +0 -1
  119. package/dist/client/assets/chunk-ICPOFSXX-C9l3r2YR.js +0 -122
  120. package/dist/client/assets/chunk-K5T4RW27-Bv0dnd8C.js +0 -94
  121. package/dist/client/assets/chunk-KGLVRYIC-BdTDi9hU.js +0 -1
  122. package/dist/client/assets/chunk-ORNJ4GCN-CHeeoEx_.js +0 -1
  123. package/dist/client/assets/chunk-OYMX7WX6-Bapbqtyc.js +0 -231
  124. package/dist/client/assets/chunk-QZHKN3VN-CNqVW4m2.js +0 -1
  125. package/dist/client/assets/classDiagram-6PBFFD2Q-aX3PLX0y.js +0 -1
  126. package/dist/client/assets/classDiagram-v2-HSJHXN6E-CshAcrwe.js +0 -1
  127. package/dist/client/assets/clone-J5cJUwR3.js +0 -1
  128. package/dist/client/assets/cytoscape.esm-DdcHPZAZ.js +0 -321
  129. package/dist/client/assets/dagre-BADyoi72.js +0 -1
  130. package/dist/client/assets/dagre-KV5264BT-BDTirpEd.js +0 -4
  131. package/dist/client/assets/diagram-G4DWMVQ6-COzN0wAe.js +0 -24
  132. package/dist/client/assets/diagram-MMDJMWI5-Bau__Yfk.js +0 -43
  133. package/dist/client/assets/flatten-SRIRKgqP.js +0 -1
  134. package/dist/client/assets/ganttDiagram-T4ZO3ILL-B0341I_2.js +0 -292
  135. package/dist/client/assets/gitGraph-7Q5UKJZL-NWgYXB7y.js +0 -1
  136. package/dist/client/assets/gitGraphDiagram-UUTBAWPF-Yv3oicIa.js +0 -106
  137. package/dist/client/assets/graphlib-BLiSTux3.js +0 -1
  138. package/dist/client/assets/index-C2jd9xpN.js +0 -79
  139. package/dist/client/assets/index-v-PY_jQI.css +0 -2
  140. package/dist/client/assets/info-OMHHGYJF-Bvc7BWzq.js +0 -1
  141. package/dist/client/assets/isEmpty-CStpjy4G.js +0 -1
  142. package/dist/client/assets/katex-CeIlAR55.js +0 -257
  143. package/dist/client/assets/line-yxqmb99x.js +0 -1
  144. package/dist/client/assets/mermaid-parser.core-B5ufZrv2.js +0 -4
  145. package/dist/client/assets/mermaid.core-BFOnV1aK.js +0 -11
  146. package/dist/client/assets/packet-4T2RLAQJ-DNpLsp8v.js +0 -1
  147. package/dist/client/assets/pie-ZZUOXDRM-D8uToFEL.js +0 -1
  148. package/dist/client/assets/pieDiagram-DEJITSTG-Dl3gScVb.js +0 -30
  149. package/dist/client/assets/quadrantDiagram-34T5L4WZ-38YyGeXU.js +0 -7
  150. package/dist/client/assets/radar-PYXPWWZC-VrpLp1jL.js +0 -1
  151. package/dist/client/assets/reduce-CG4cgj93.js +0 -1
  152. package/dist/client/assets/sequenceDiagram-FGHM5R23-2xItvAxs.js +0 -157
  153. package/dist/client/assets/src-YK4ClFOB.js +0 -1
  154. package/dist/client/assets/stateDiagram-FHFEXIEX-lBViG7kM.js +0 -1
  155. package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-BcU-AM4S.js +0 -1
  156. package/dist/client/assets/treeView-SZITEDCU-B1qc9ijP.js +0 -1
  157. package/dist/client/assets/treemap-W4RFUUIX-Dl7yWWae.js +0 -1
  158. package/dist/client/assets/vennDiagram-DHZGUBPP-BOLv0A8q.js +0 -34
  159. package/dist/client/assets/wardley-RL74JXVD-CEXd-1Ht.js +0 -1
  160. /package/dist/client/assets/{array-DOVTz2Mq.js → array-yLZkcI6Y.js} +0 -0
  161. /package/dist/client/assets/{defaultLocale-Ck2Xxk-C.js → defaultLocale-Bld4b7vH.js} +0 -0
  162. /package/dist/client/assets/{init-Bft5Ffpj.js → init-rddNFwID.js} +0 -0
  163. /package/dist/client/assets/{path-DfRbCp9y.js → path-BJQEcSo7.js} +0 -0
  164. /package/dist/client/assets/{prism-bash-CPkZUJMA.js → prism-bash-ElxVK2UI.js} +0 -0
  165. /package/dist/client/assets/{prism-clojure-BpoF2XhX.js → prism-clojure-Coed_dlT.js} +0 -0
  166. /package/dist/client/assets/{prism-csharp-BEk8D1-3.js → prism-csharp-BvoTEt-U.js} +0 -0
  167. /package/dist/client/assets/{prism-dart-ByLYrdQB.js → prism-dart-59mV4Nzl.js} +0 -0
  168. /package/dist/client/assets/{prism-elixir-BZtyIEab.js → prism-elixir-VMbXB0ch.js} +0 -0
  169. /package/dist/client/assets/{prism-haskell-NAsbeo3V.js → prism-haskell-DbMQ4t9D.js} +0 -0
  170. /package/dist/client/assets/{prism-hcl-crnGqmVp.js → prism-hcl-DaTFd4M9.js} +0 -0
  171. /package/dist/client/assets/{prism-java-BovStacA.js → prism-java-Bvhe07ID.js} +0 -0
  172. /package/dist/client/assets/{prism-markup-templating-Cl8NiLjy.js → prism-markup-templating-DOf10VS2.js} +0 -0
  173. /package/dist/client/assets/{prism-nix-BS_cm_1n.js → prism-nix-CNZSWapd.js} +0 -0
  174. /package/dist/client/assets/{prism-perl-DGLVMq5H.js → prism-perl-ZBgEPf6s.js} +0 -0
  175. /package/dist/client/assets/{prism-php-BskSwJN8.js → prism-php-CBX1LG5n.js} +0 -0
  176. /package/dist/client/assets/{prism-protobuf-DfbIYpO7.js → prism-protobuf-KYCaTc8s.js} +0 -0
  177. /package/dist/client/assets/{prism-ruby-FBVh1PRE.js → prism-ruby-Dtn_AROP.js} +0 -0
  178. /package/dist/client/assets/{prism-scala--9AfMHPY.js → prism-scala-B4gvAG5X.js} +0 -0
  179. /package/dist/client/assets/{prism-solidity-BgJNkj1z.js → prism-solidity-BS9JVLL6.js} +0 -0
  180. /package/dist/client/assets/{prism-sql-C9Czmpov.js → prism-sql-DL_NEVBy.js} +0 -0
  181. /package/dist/client/assets/{prism-vim-CzUNf0WQ.js → prism-vim-DqdsfG3_.js} +0 -0
  182. /package/dist/client/assets/{rough.esm-Bbn_-PMU.js → rough.esm-KjoEK0it.js} +0 -0
package/README.ja.md CHANGED
@@ -146,7 +146,6 @@ git diff --cached | difit -
146
146
  | `--port` | 4966 | 優先ポート。使用中の場合は+1にフォールバック |
147
147
  | `--host` | 127.0.0.1 | サーバーをバインドするホストアドレス(外部からアクセスしたい場合は0.0.0.0を指定) |
148
148
  | `--no-open` | false | ブラウザを自動的に開かない |
149
- | `--mode` | split | 表示モード。`unified`または`split` |
150
149
  | `--clean` | false | 起動時に既存コメントと閲覧済みファイルをすべてクリア |
151
150
  | `--include-untracked` | false | diffにuntrackedファイルを自動的に含める(`.`または`working`のみ有効) |
152
151
  | `--keep-alive` | false | ブラウザ切断後もサーバーを終了せず起動したままにする(Ctrl+Cで手動停止) |
package/README.ko.md CHANGED
@@ -146,7 +146,6 @@ git diff --cached | difit -
146
146
  | `--port` | 4966 | 선호 포트; 사용 중인 경우 +1로 대체 |
147
147
  | `--host` | 127.0.0.1 | 서버를 바인딩할 호스트 주소 (외부 액세스는 0.0.0.0 사용) |
148
148
  | `--no-open` | false | 브라우저를 자동으로 열지 않음 |
149
- | `--mode` | split | 표시 모드: `unified` 또는 `split` |
150
149
  | `--clean` | false | 시작 시 모든 기존 코멘트와 열람된 파일 표시 초기화 |
151
150
  | `--include-untracked` | false | diff에 untracked 파일 자동 포함 (`.` 또는 `working`에서만 유효) |
152
151
  | `--keep-alive` | false | 브라우저 연결이 끊겨도 서버 유지 (Ctrl+C로 수동 종료) |
package/README.md CHANGED
@@ -151,7 +151,6 @@ Stdin mode is selected with intent-first rules:
151
151
  | `--port` | 4966 | Preferred port; falls back to +1 if occupied |
152
152
  | `--host` | 127.0.0.1 | Host address to bind server to (use 0.0.0.0 for external access) |
153
153
  | `--no-open` | false | Don't automatically open browser |
154
- | `--mode` | split | Display mode: `unified` or `split` |
155
154
  | `--clean` | false | Clear all existing comments and viewed files on startup |
156
155
  | `--include-untracked` | false | Automatically include untracked files in diff (only with `.` or `working`) |
157
156
  | `--keep-alive` | false | Keep server running after browser disconnects (stop manually with Ctrl+C) |
package/README.zh.md CHANGED
@@ -146,7 +146,6 @@ git diff --cached | difit -
146
146
  | `--port` | 4966 | 首选端口;如果被占用则回退到 +1 |
147
147
  | `--host` | 127.0.0.1 | 绑定服务器的主机地址(使用 0.0.0.0 进行外部访问) |
148
148
  | `--no-open` | false | 不自动打开浏览器 |
149
- | `--mode` | split | 显示模式:`unified` 或 `split` |
150
149
  | `--clean` | false | 启动时清除所有现有评论和已查看的文件 |
151
150
  | `--include-untracked` | false | 自动将 untracked 文件包含在 diff 中(仅在 `.` 或 `working` 时有效) |
152
151
  | `--keep-alive` | false | 浏览器断开后保持服务器运行(使用 Ctrl+C 手动停止) |
package/dist/cli/index.js CHANGED
@@ -6,7 +6,6 @@ import pkg from '../../package.json' with { type: 'json' };
6
6
  import { startServer } from '../server/server.js';
7
7
  import { createDiffSelection } from '../utils/diffSelection.js';
8
8
  import { DiffMode } from '../types/watch.js';
9
- import { DEFAULT_DIFF_VIEW_MODE, normalizeDiffViewMode } from '../utils/diffMode.js';
10
9
  import { shouldReadStdin, findUntrackedFiles, markFilesIntentToAdd, promptUser, parseCommentOptions, validateDiffArguments, getGitRoot, readStdin, } from './utils.js';
11
10
  import { createCommentCommand } from './comment.js';
12
11
  import { getPrPatch, getPrCommentImports } from './github.js';
@@ -127,7 +126,6 @@ program
127
126
  .option('--port <port>', 'preferred port (auto-assigned if occupied)', parseInt)
128
127
  .option('--host <host>', 'host address to bind', '')
129
128
  .option('--no-open', 'do not automatically open browser')
130
- .option('--mode <mode>', 'diff mode (split or unified)', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
131
129
  .option('--comment <json>', 'inject initial review comments (repeatable, accepts a JSON object or array)', (value, previous) => [...previous, value], [])
132
130
  .option('--pr <url>', 'GitHub PR URL to review (e.g., https://github.com/owner/repo/pull/123)')
133
131
  .option('--clean', 'start with a clean slate by clearing all existing comments')
@@ -225,7 +223,6 @@ program
225
223
  preferredPort: options.port,
226
224
  host: options.host,
227
225
  openBrowser: options.open,
228
- mode: options.mode,
229
226
  clearComments: options.clean,
230
227
  keepAlive: options.keepAlive,
231
228
  ...(commentImports.length > 0 ? { commentImports } : {}),
@@ -275,7 +272,6 @@ program
275
272
  preferredPort: options.port,
276
273
  host: options.host,
277
274
  openBrowser: options.open,
278
- mode: options.mode,
279
275
  clearComments: options.clean,
280
276
  keepAlive: options.keepAlive,
281
277
  contextLines: options.context,
@@ -1,7 +1,6 @@
1
1
  import { Command } from 'commander';
2
2
  import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
3
3
  import { DiffMode } from '../types/watch.js';
4
- import { DEFAULT_DIFF_VIEW_MODE, normalizeDiffViewMode } from '../utils/diffMode.js';
5
4
  import pkg from '../../package.json' with { type: 'json' };
6
5
  // Mock all external dependencies
7
6
  vi.mock('simple-git');
@@ -127,7 +126,6 @@ describe('CLI index.ts', () => {
127
126
  .option('--port <port>', 'port', parseInt)
128
127
  .option('--host <host>', 'host', '')
129
128
  .option('--no-open', 'no-open')
130
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
131
129
  .option('--merge-base', 'merge-base')
132
130
  .option('--pr <url>', 'pr')
133
131
  .action(async (commitish, _compareWith, options) => {
@@ -160,7 +158,6 @@ describe('CLI index.ts', () => {
160
158
  preferredPort: options.port,
161
159
  host: options.host,
162
160
  openBrowser: options.open,
163
- mode: options.mode,
164
161
  });
165
162
  });
166
163
  await program.parseAsync([...args], { from: 'user' });
@@ -169,7 +166,6 @@ describe('CLI index.ts', () => {
169
166
  preferredPort: undefined,
170
167
  host: '',
171
168
  openBrowser: true,
172
- mode: 'split',
173
169
  });
174
170
  });
175
171
  });
@@ -190,21 +186,6 @@ describe('CLI index.ts', () => {
190
186
  args: ['--no-open'],
191
187
  expectedOptions: { open: false },
192
188
  },
193
- {
194
- name: '--mode option',
195
- args: ['--mode', 'unified'],
196
- expectedOptions: { mode: 'unified' },
197
- },
198
- {
199
- name: '--mode option (legacy inline)',
200
- args: ['--mode', 'inline'],
201
- expectedOptions: { mode: 'unified' },
202
- },
203
- {
204
- name: '--mode option (legacy side-by-side)',
205
- args: ['--mode', 'side-by-side'],
206
- expectedOptions: { mode: 'split' },
207
- },
208
189
  {
209
190
  name: '--clean option',
210
191
  args: ['--clean'],
@@ -234,7 +215,6 @@ describe('CLI index.ts', () => {
234
215
  .option('--port <port>', 'port', parseInt)
235
216
  .option('--host <host>', 'host', '')
236
217
  .option('--no-open', 'no-open')
237
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
238
218
  .option('--pr <url>', 'pr')
239
219
  .option('--merge-base', 'merge-base')
240
220
  .option('--clean', 'start with a clean slate by clearing all existing comments')
@@ -250,7 +230,6 @@ describe('CLI index.ts', () => {
250
230
  preferredPort: options.port,
251
231
  host: options.host,
252
232
  openBrowser: options.open,
253
- mode: options.mode,
254
233
  clearComments: options.clean,
255
234
  keepAlive: options.keepAlive,
256
235
  contextLines: options.context,
@@ -264,7 +243,6 @@ describe('CLI index.ts', () => {
264
243
  preferredPort: expectedOptions.port,
265
244
  host: expectedOptions.host || '',
266
245
  openBrowser: expectedOptions.open !== false,
267
- mode: expectedOptions.mode || 'split',
268
246
  clearComments: expectedOptions.clean,
269
247
  keepAlive: expectedOptions.keepAlive,
270
248
  contextLines: expectedOptions.context,
@@ -480,7 +458,6 @@ describe('CLI index.ts', () => {
480
458
  .option('--port <port>', 'port', parseInt)
481
459
  .option('--host <host>', 'host', '')
482
460
  .option('--no-open', 'no-open')
483
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
484
461
  .option('--pr <url>', 'pr')
485
462
  .action(async (commitish, _compareWith, options) => {
486
463
  if (commitish === 'working' || commitish === '.') {
@@ -493,7 +470,6 @@ describe('CLI index.ts', () => {
493
470
  preferredPort: options.port,
494
471
  host: options.host,
495
472
  openBrowser: options.open,
496
- mode: options.mode,
497
473
  });
498
474
  });
499
475
  await program.parseAsync(['working'], { from: 'user' });
@@ -509,7 +485,6 @@ describe('CLI index.ts', () => {
509
485
  .option('--port <port>', 'port', parseInt)
510
486
  .option('--host <host>', 'host', '')
511
487
  .option('--no-open', 'no-open')
512
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
513
488
  .option('--pr <url>', 'pr')
514
489
  .action(async (commitish, _compareWith, options) => {
515
490
  if (commitish === 'working' || commitish === '.') {
@@ -521,7 +496,6 @@ describe('CLI index.ts', () => {
521
496
  preferredPort: options.port,
522
497
  host: options.host,
523
498
  openBrowser: options.open,
524
- mode: options.mode,
525
499
  });
526
500
  });
527
501
  await program.parseAsync(['HEAD'], { from: 'user' });
@@ -538,7 +512,6 @@ describe('CLI index.ts', () => {
538
512
  .option('--port <port>', 'port', parseInt)
539
513
  .option('--host <host>', 'host', '')
540
514
  .option('--no-open', 'no-open')
541
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
542
515
  .option('--pr <url>', 'pr')
543
516
  .option('--include-untracked', 'include untracked')
544
517
  .action(async (commitish, _compareWith, options) => {
@@ -554,7 +527,6 @@ describe('CLI index.ts', () => {
554
527
  preferredPort: options.port,
555
528
  host: options.host,
556
529
  openBrowser: options.open,
557
- mode: options.mode,
558
530
  });
559
531
  });
560
532
  await program.parseAsync(['.', '--include-untracked'], { from: 'user' });
@@ -572,7 +544,6 @@ describe('CLI index.ts', () => {
572
544
  .option('--port <port>', 'port', parseInt)
573
545
  .option('--host <host>', 'host', '')
574
546
  .option('--no-open', 'no-open')
575
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
576
547
  .option('--pr <url>', 'pr')
577
548
  .option('--include-untracked', 'include untracked')
578
549
  .action(async (commitish, _compareWith, options) => {
@@ -589,7 +560,6 @@ describe('CLI index.ts', () => {
589
560
  preferredPort: options.port,
590
561
  host: options.host,
591
562
  openBrowser: options.open,
592
- mode: options.mode,
593
563
  });
594
564
  });
595
565
  await program.parseAsync(['.'], { from: 'user' });
@@ -633,7 +603,6 @@ describe('CLI index.ts', () => {
633
603
  .option('--port <port>', 'port', parseInt)
634
604
  .option('--host <host>', 'host', '')
635
605
  .option('--no-open', 'no-open')
636
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
637
606
  .option('--pr <url>', 'pr')
638
607
  .action(async (commitish, _compareWith, options) => {
639
608
  const manualCommentImports = actualParseCommentOptions(options.comment);
@@ -651,7 +620,6 @@ describe('CLI index.ts', () => {
651
620
  preferredPort: options.port,
652
621
  host: options.host,
653
622
  openBrowser: options.open,
654
- mode: options.mode,
655
623
  commentImports,
656
624
  });
657
625
  });
@@ -668,7 +636,6 @@ describe('CLI index.ts', () => {
668
636
  preferredPort: undefined,
669
637
  host: '',
670
638
  openBrowser: true,
671
- mode: 'split',
672
639
  commentImports: [
673
640
  ...prCommentImports,
674
641
  {
@@ -698,7 +665,6 @@ describe('CLI index.ts', () => {
698
665
  .option('--port <port>', 'port', parseInt)
699
666
  .option('--host <host>', 'host', '')
700
667
  .option('--no-open', 'no-open')
701
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
702
668
  .option('--pr <url>', 'pr')
703
669
  .action(async (commitish, _compareWith, options) => {
704
670
  const manualCommentImports = actualParseCommentOptions(options.comment);
@@ -721,7 +687,6 @@ describe('CLI index.ts', () => {
721
687
  preferredPort: options.port,
722
688
  host: options.host,
723
689
  openBrowser: options.open,
724
- mode: options.mode,
725
690
  ...(commentImports.length > 0 ? { commentImports } : {}),
726
691
  });
727
692
  });
@@ -732,7 +697,6 @@ describe('CLI index.ts', () => {
732
697
  preferredPort: undefined,
733
698
  host: '',
734
699
  openBrowser: true,
735
- mode: 'split',
736
700
  });
737
701
  });
738
702
  it('rejects PR option with positional arguments', async () => {
@@ -743,7 +707,6 @@ describe('CLI index.ts', () => {
743
707
  .option('--port <port>', 'port', parseInt)
744
708
  .option('--host <host>', 'host', '')
745
709
  .option('--no-open', 'no-open')
746
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
747
710
  .option('--pr <url>', 'pr')
748
711
  .action(async (commitish, _compareWith, options) => {
749
712
  if (options.pr) {
@@ -769,7 +732,6 @@ describe('CLI index.ts', () => {
769
732
  .option('--port <port>', 'port', parseInt)
770
733
  .option('--host <host>', 'host', '')
771
734
  .option('--no-open', 'no-open')
772
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
773
735
  .action(async (commitish, options) => {
774
736
  const commentImports = actualParseCommentOptions(options.comment);
775
737
  await startServer({
@@ -777,7 +739,6 @@ describe('CLI index.ts', () => {
777
739
  preferredPort: options.port,
778
740
  host: options.host,
779
741
  openBrowser: options.open,
780
- mode: options.mode,
781
742
  commentImports,
782
743
  });
783
744
  });
@@ -790,7 +751,6 @@ describe('CLI index.ts', () => {
790
751
  preferredPort: undefined,
791
752
  host: '',
792
753
  openBrowser: true,
793
- mode: 'split',
794
754
  commentImports: [
795
755
  {
796
756
  type: 'thread',
@@ -841,7 +801,6 @@ describe('CLI index.ts', () => {
841
801
  .option('--port <port>', 'port', parseInt)
842
802
  .option('--host <host>', 'host', '')
843
803
  .option('--no-open', 'no-open')
844
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
845
804
  .option('--pr <url>', 'pr')
846
805
  .option('--clean', 'start with a clean slate by clearing all existing comments')
847
806
  .action(async (commitish, _compareWith, options) => {
@@ -850,7 +809,6 @@ describe('CLI index.ts', () => {
850
809
  preferredPort: options.port,
851
810
  host: options.host,
852
811
  openBrowser: options.open,
853
- mode: options.mode,
854
812
  clearComments: options.clean,
855
813
  });
856
814
  console.log(`\n🚀 difit server started on ${url}`);
@@ -879,7 +837,6 @@ describe('CLI index.ts', () => {
879
837
  .option('--port <port>', 'port', parseInt)
880
838
  .option('--host <host>', 'host', '')
881
839
  .option('--no-open', 'no-open')
882
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
883
840
  .option('--pr <url>', 'pr')
884
841
  .option('--clean', 'start with a clean slate by clearing all existing comments')
885
842
  .action(async (commitish, _compareWith, options) => {
@@ -888,7 +845,6 @@ describe('CLI index.ts', () => {
888
845
  preferredPort: options.port,
889
846
  host: options.host,
890
847
  openBrowser: options.open,
891
- mode: options.mode,
892
848
  clearComments: options.clean,
893
849
  });
894
850
  console.log(`\n🚀 difit server started on ${url}`);
@@ -919,7 +875,6 @@ describe('CLI index.ts', () => {
919
875
  .option('--port <port>', 'port', parseInt)
920
876
  .option('--host <host>', 'host', '')
921
877
  .option('--no-open', 'no-open')
922
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
923
878
  .option('--pr <url>', 'pr')
924
879
  .option('--clean', 'start with a clean slate by clearing all existing comments')
925
880
  .option('--keep-alive', 'keep server running even after browser disconnects')
@@ -929,7 +884,6 @@ describe('CLI index.ts', () => {
929
884
  preferredPort: options.port,
930
885
  host: options.host,
931
886
  openBrowser: options.open,
932
- mode: options.mode,
933
887
  clearComments: options.clean,
934
888
  keepAlive: options.keepAlive,
935
889
  });
@@ -959,7 +913,6 @@ describe('CLI index.ts', () => {
959
913
  .option('--port <port>', 'port', parseInt)
960
914
  .option('--host <host>', 'host', '')
961
915
  .option('--no-open', 'no-open')
962
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
963
916
  .option('--pr <url>', 'pr')
964
917
  .option('--clean', 'start with a clean slate by clearing all existing comments')
965
918
  .option('--keep-alive', 'keep server running even after browser disconnects')
@@ -969,7 +922,6 @@ describe('CLI index.ts', () => {
969
922
  preferredPort: options.port,
970
923
  host: options.host,
971
924
  openBrowser: options.open,
972
- mode: options.mode,
973
925
  clearComments: options.clean,
974
926
  keepAlive: options.keepAlive,
975
927
  });
@@ -1001,7 +953,6 @@ describe('CLI index.ts', () => {
1001
953
  .option('--port <port>', 'port', parseInt)
1002
954
  .option('--host <host>', 'host', '')
1003
955
  .option('--no-open', 'no-open')
1004
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
1005
956
  .option('--pr <url>', 'pr')
1006
957
  .action(async (commitish, _compareWith, options) => {
1007
958
  const { url, isEmpty } = await startServer({
@@ -1009,7 +960,6 @@ describe('CLI index.ts', () => {
1009
960
  preferredPort: options.port,
1010
961
  host: options.host,
1011
962
  openBrowser: options.open,
1012
- mode: options.mode,
1013
963
  });
1014
964
  console.log(`\n🚀 difit server started on ${url}`);
1015
965
  console.log(`📋 Reviewing: ${commitish}`);
@@ -1042,7 +992,6 @@ describe('CLI index.ts', () => {
1042
992
  .option('--port <port>', 'port', parseInt)
1043
993
  .option('--host <host>', 'host', '')
1044
994
  .option('--no-open', 'no-open')
1045
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
1046
995
  .option('--pr <url>', 'pr')
1047
996
  .action(async (commitish, _compareWith, options) => {
1048
997
  const { url, isEmpty } = await startServer({
@@ -1050,7 +999,6 @@ describe('CLI index.ts', () => {
1050
999
  preferredPort: options.port,
1051
1000
  host: options.host,
1052
1001
  openBrowser: options.open,
1053
- mode: options.mode,
1054
1002
  });
1055
1003
  console.log(`\n🚀 difit server started on ${url}`);
1056
1004
  console.log(`📋 Reviewing: ${commitish}`);
@@ -1064,58 +1012,6 @@ describe('CLI index.ts', () => {
1064
1012
  expect(console.log).toHaveBeenCalledWith(' Server is running at http://localhost:4966 if you want to check manually.\n');
1065
1013
  });
1066
1014
  });
1067
- describe('Server mode option handling', () => {
1068
- it('passes mode option to startServer', async () => {
1069
- mockFindUntrackedFiles.mockResolvedValue([]);
1070
- const program = new Command();
1071
- program
1072
- .argument('[commit-ish]', 'commit-ish', 'HEAD')
1073
- .argument('[compare-with]', 'compare-with')
1074
- .option('--port <port>', 'port', parseInt)
1075
- .option('--host <host>', 'host', '')
1076
- .option('--no-open', 'no-open')
1077
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
1078
- .option('--pr <url>', 'pr')
1079
- .action(async (commitish, _compareWith, options) => {
1080
- await startServer({
1081
- selection: { targetCommitish: commitish, baseCommitish: commitish + '^' },
1082
- preferredPort: options.port,
1083
- host: options.host,
1084
- openBrowser: options.open,
1085
- mode: options.mode,
1086
- });
1087
- });
1088
- await program.parseAsync(['--mode', 'unified'], { from: 'user' });
1089
- expect(mockStartServer).toHaveBeenCalledWith(expect.objectContaining({
1090
- mode: 'unified',
1091
- }));
1092
- });
1093
- it('uses default mode when not specified', async () => {
1094
- mockFindUntrackedFiles.mockResolvedValue([]);
1095
- const program = new Command();
1096
- program
1097
- .argument('[commit-ish]', 'commit-ish', 'HEAD')
1098
- .argument('[compare-with]', 'compare-with')
1099
- .option('--port <port>', 'port', parseInt)
1100
- .option('--host <host>', 'host', '')
1101
- .option('--no-open', 'no-open')
1102
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
1103
- .option('--pr <url>', 'pr')
1104
- .action(async (commitish, _compareWith, options) => {
1105
- await startServer({
1106
- selection: { targetCommitish: commitish, baseCommitish: commitish + '^' },
1107
- preferredPort: options.port,
1108
- host: options.host,
1109
- openBrowser: options.open,
1110
- mode: options.mode,
1111
- });
1112
- });
1113
- await program.parseAsync([], { from: 'user' });
1114
- expect(mockStartServer).toHaveBeenCalledWith(expect.objectContaining({
1115
- mode: 'split',
1116
- }));
1117
- });
1118
- });
1119
1015
  describe('Diff mode determination', () => {
1120
1016
  const testCases = [
1121
1017
  {
@@ -1159,7 +1055,6 @@ describe('CLI index.ts', () => {
1159
1055
  .option('--port <port>', 'port', parseInt)
1160
1056
  .option('--host <host>', 'host', '')
1161
1057
  .option('--no-open', 'no-open')
1162
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
1163
1058
  .option('--pr <url>', 'pr')
1164
1059
  .action(async (commitish, compareWith, options) => {
1165
1060
  // Simulate determineDiffMode function behavior
@@ -1187,7 +1082,6 @@ describe('CLI index.ts', () => {
1187
1082
  preferredPort: options.port,
1188
1083
  host: options.host,
1189
1084
  openBrowser: options.open,
1190
- mode: options.mode,
1191
1085
  diffMode,
1192
1086
  });
1193
1087
  });
@@ -1206,7 +1100,6 @@ describe('CLI index.ts', () => {
1206
1100
  .option('--port <port>', 'port', parseInt)
1207
1101
  .option('--host <host>', 'host', '')
1208
1102
  .option('--no-open', 'no-open')
1209
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
1210
1103
  .option('--pr <url>', 'pr')
1211
1104
  .action(async (commitish, compareWith, options) => {
1212
1105
  // Simulate determineDiffMode function behavior
@@ -1234,7 +1127,6 @@ describe('CLI index.ts', () => {
1234
1127
  preferredPort: options.port,
1235
1128
  host: options.host,
1236
1129
  openBrowser: options.open,
1237
- mode: options.mode,
1238
1130
  diffMode,
1239
1131
  });
1240
1132
  });
@@ -1253,7 +1145,6 @@ describe('CLI index.ts', () => {
1253
1145
  .option('--port <port>', 'port', parseInt)
1254
1146
  .option('--host <host>', 'host', '')
1255
1147
  .option('--no-open', 'no-open')
1256
- .option('--mode <mode>', 'mode', normalizeDiffViewMode, DEFAULT_DIFF_VIEW_MODE)
1257
1148
  .option('--pr <url>', 'pr')
1258
1149
  .action(async (commitish, compareWith, options) => {
1259
1150
  // Simulate determineDiffMode function behavior with the fix
@@ -1281,7 +1172,6 @@ describe('CLI index.ts', () => {
1281
1172
  preferredPort: options.port,
1282
1173
  host: options.host,
1283
1174
  openBrowser: options.open,
1284
- mode: options.mode,
1285
1175
  diffMode,
1286
1176
  });
1287
1177
  });
@@ -1 +1 @@
1
- import{n as e,t}from"./path-DfRbCp9y.js";import{a as n,c as r,d as i,f as a,i as o,l as s,m as c,n as l,o as u,p as d,r as f,u as p}from"./dist-CL_sSZWx.js";function m(e){return e.innerRadius}function h(e){return e.outerRadius}function g(e){return e.startAngle}function _(e){return e.endAngle}function v(e){return e&&e.padAngle}function y(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<1e-12))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function b(e,t,n,r,i,a,o){var c=e-n,l=t-r,u=(o?a:-a)/d(c*c+l*l),f=u*l,p=-u*c,m=e+f,h=t+p,g=n+f,_=r+p,v=(m+g)/2,y=(h+_)/2,b=g-m,x=_-h,S=b*b+x*x,C=i-a,w=m*_-g*h,T=(x<0?-1:1)*d(s(0,C*C*S-w*w)),E=(w*x-b*T)/S,D=(-w*b-x*T)/S,O=(w*x+b*T)/S,k=(-w*b+x*T)/S,A=E-v,j=D-y,M=O-v,N=k-y;return A*A+j*j>M*M+N*N&&(E=O,D=k),{cx:E,cy:D,x01:-f,y01:-p,x11:E*(i/C-1),y11:D*(i/C-1)}}function x(){var s=m,x=h,S=e(0),C=null,w=g,T=_,E=v,D=null,O=t(k);function k(){var e,t,m=+s.apply(this,arguments),h=+x.apply(this,arguments),g=w.apply(this,arguments)-r,_=T.apply(this,arguments)-r,v=l(_-g),k=_>g;if(D||=e=O(),h<m&&(t=h,h=m,m=t),!(h>1e-12))D.moveTo(0,0);else if(v>c-1e-12)D.moveTo(h*u(g),h*a(g)),D.arc(0,0,h,g,_,!k),m>1e-12&&(D.moveTo(m*u(_),m*a(_)),D.arc(0,0,m,_,g,k));else{var A=g,j=_,M=g,N=_,P=v,F=v,I=E.apply(this,arguments)/2,L=I>1e-12&&(C?+C.apply(this,arguments):d(m*m+h*h)),R=p(l(h-m)/2,+S.apply(this,arguments)),z=R,B=R,V,H;if(L>1e-12){var U=o(L/m*a(I)),W=o(L/h*a(I));(P-=U*2)>1e-12?(U*=k?1:-1,M+=U,N-=U):(P=0,M=N=(g+_)/2),(F-=W*2)>1e-12?(W*=k?1:-1,A+=W,j-=W):(F=0,A=j=(g+_)/2)}var G=h*u(A),K=h*a(A),q=m*u(N),J=m*a(N);if(R>1e-12){var Y=h*u(j),X=h*a(j),Z=m*u(M),Q=m*a(M),$;if(v<i)if($=y(G,K,Z,Q,Y,X,q,J)){var ee=G-$[0],te=K-$[1],ne=Y-$[0],re=X-$[1],ie=1/a(f((ee*ne+te*re)/(d(ee*ee+te*te)*d(ne*ne+re*re)))/2),ae=d($[0]*$[0]+$[1]*$[1]);z=p(R,(m-ae)/(ie-1)),B=p(R,(h-ae)/(ie+1))}else z=B=0}F>1e-12?B>1e-12?(V=b(Z,Q,G,K,h,B,k),H=b(Y,X,q,J,h,B,k),D.moveTo(V.cx+V.x01,V.cy+V.y01),B<R?D.arc(V.cx,V.cy,B,n(V.y01,V.x01),n(H.y01,H.x01),!k):(D.arc(V.cx,V.cy,B,n(V.y01,V.x01),n(V.y11,V.x11),!k),D.arc(0,0,h,n(V.cy+V.y11,V.cx+V.x11),n(H.cy+H.y11,H.cx+H.x11),!k),D.arc(H.cx,H.cy,B,n(H.y11,H.x11),n(H.y01,H.x01),!k))):(D.moveTo(G,K),D.arc(0,0,h,A,j,!k)):D.moveTo(G,K),!(m>1e-12)||!(P>1e-12)?D.lineTo(q,J):z>1e-12?(V=b(q,J,Y,X,m,-z,k),H=b(G,K,Z,Q,m,-z,k),D.lineTo(V.cx+V.x01,V.cy+V.y01),z<R?D.arc(V.cx,V.cy,z,n(V.y01,V.x01),n(H.y01,H.x01),!k):(D.arc(V.cx,V.cy,z,n(V.y01,V.x01),n(V.y11,V.x11),!k),D.arc(0,0,m,n(V.cy+V.y11,V.cx+V.x11),n(H.cy+H.y11,H.cx+H.x11),k),D.arc(H.cx,H.cy,z,n(H.y11,H.x11),n(H.y01,H.x01),!k))):D.arc(0,0,m,N,M,k)}if(D.closePath(),e)return D=null,e+``||null}return k.centroid=function(){var e=(+s.apply(this,arguments)+ +x.apply(this,arguments))/2,t=(+w.apply(this,arguments)+ +T.apply(this,arguments))/2-i/2;return[u(t)*e,a(t)*e]},k.innerRadius=function(t){return arguments.length?(s=typeof t==`function`?t:e(+t),k):s},k.outerRadius=function(t){return arguments.length?(x=typeof t==`function`?t:e(+t),k):x},k.cornerRadius=function(t){return arguments.length?(S=typeof t==`function`?t:e(+t),k):S},k.padRadius=function(t){return arguments.length?(C=t==null?null:typeof t==`function`?t:e(+t),k):C},k.startAngle=function(t){return arguments.length?(w=typeof t==`function`?t:e(+t),k):w},k.endAngle=function(t){return arguments.length?(T=typeof t==`function`?t:e(+t),k):T},k.padAngle=function(t){return arguments.length?(E=typeof t==`function`?t:e(+t),k):E},k.context=function(e){return arguments.length?(D=e??null,k):D},k}export{x as t};
1
+ import{n as e,t}from"./path-BJQEcSo7.js";import{a as n,c as r,d as i,f as a,i as o,l as s,m as c,n as l,o as u,p as d,r as f,u as p}from"./dist-DpSceyb-.js";function m(e){return e.innerRadius}function h(e){return e.outerRadius}function g(e){return e.startAngle}function _(e){return e.endAngle}function v(e){return e&&e.padAngle}function y(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<1e-12))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function b(e,t,n,r,i,a,o){var c=e-n,l=t-r,u=(o?a:-a)/d(c*c+l*l),f=u*l,p=-u*c,m=e+f,h=t+p,g=n+f,_=r+p,v=(m+g)/2,y=(h+_)/2,b=g-m,x=_-h,S=b*b+x*x,C=i-a,w=m*_-g*h,T=(x<0?-1:1)*d(s(0,C*C*S-w*w)),E=(w*x-b*T)/S,D=(-w*b-x*T)/S,O=(w*x+b*T)/S,k=(-w*b+x*T)/S,A=E-v,j=D-y,M=O-v,N=k-y;return A*A+j*j>M*M+N*N&&(E=O,D=k),{cx:E,cy:D,x01:-f,y01:-p,x11:E*(i/C-1),y11:D*(i/C-1)}}function x(){var s=m,x=h,S=e(0),C=null,w=g,T=_,E=v,D=null,O=t(k);function k(){var e,t,m=+s.apply(this,arguments),h=+x.apply(this,arguments),g=w.apply(this,arguments)-r,_=T.apply(this,arguments)-r,v=l(_-g),k=_>g;if(D||=e=O(),h<m&&(t=h,h=m,m=t),!(h>1e-12))D.moveTo(0,0);else if(v>c-1e-12)D.moveTo(h*u(g),h*a(g)),D.arc(0,0,h,g,_,!k),m>1e-12&&(D.moveTo(m*u(_),m*a(_)),D.arc(0,0,m,_,g,k));else{var A=g,j=_,M=g,N=_,P=v,F=v,I=E.apply(this,arguments)/2,L=I>1e-12&&(C?+C.apply(this,arguments):d(m*m+h*h)),R=p(l(h-m)/2,+S.apply(this,arguments)),z=R,B=R,V,H;if(L>1e-12){var U=o(L/m*a(I)),W=o(L/h*a(I));(P-=U*2)>1e-12?(U*=k?1:-1,M+=U,N-=U):(P=0,M=N=(g+_)/2),(F-=W*2)>1e-12?(W*=k?1:-1,A+=W,j-=W):(F=0,A=j=(g+_)/2)}var G=h*u(A),K=h*a(A),q=m*u(N),J=m*a(N);if(R>1e-12){var Y=h*u(j),X=h*a(j),Z=m*u(M),Q=m*a(M),$;if(v<i)if($=y(G,K,Z,Q,Y,X,q,J)){var ee=G-$[0],te=K-$[1],ne=Y-$[0],re=X-$[1],ie=1/a(f((ee*ne+te*re)/(d(ee*ee+te*te)*d(ne*ne+re*re)))/2),ae=d($[0]*$[0]+$[1]*$[1]);z=p(R,(m-ae)/(ie-1)),B=p(R,(h-ae)/(ie+1))}else z=B=0}F>1e-12?B>1e-12?(V=b(Z,Q,G,K,h,B,k),H=b(Y,X,q,J,h,B,k),D.moveTo(V.cx+V.x01,V.cy+V.y01),B<R?D.arc(V.cx,V.cy,B,n(V.y01,V.x01),n(H.y01,H.x01),!k):(D.arc(V.cx,V.cy,B,n(V.y01,V.x01),n(V.y11,V.x11),!k),D.arc(0,0,h,n(V.cy+V.y11,V.cx+V.x11),n(H.cy+H.y11,H.cx+H.x11),!k),D.arc(H.cx,H.cy,B,n(H.y11,H.x11),n(H.y01,H.x01),!k))):(D.moveTo(G,K),D.arc(0,0,h,A,j,!k)):D.moveTo(G,K),!(m>1e-12)||!(P>1e-12)?D.lineTo(q,J):z>1e-12?(V=b(q,J,Y,X,m,-z,k),H=b(G,K,Z,Q,m,-z,k),D.lineTo(V.cx+V.x01,V.cy+V.y01),z<R?D.arc(V.cx,V.cy,z,n(V.y01,V.x01),n(H.y01,H.x01),!k):(D.arc(V.cx,V.cy,z,n(V.y01,V.x01),n(V.y11,V.x11),!k),D.arc(0,0,m,n(V.cy+V.y11,V.cx+V.x11),n(H.cy+H.y11,H.cx+H.x11),k),D.arc(H.cx,H.cy,z,n(H.y11,H.x11),n(H.y01,H.x01),!k))):D.arc(0,0,m,N,M,k)}if(D.closePath(),e)return D=null,e+``||null}return k.centroid=function(){var e=(+s.apply(this,arguments)+ +x.apply(this,arguments))/2,t=(+w.apply(this,arguments)+ +T.apply(this,arguments))/2-i/2;return[u(t)*e,a(t)*e]},k.innerRadius=function(t){return arguments.length?(s=typeof t==`function`?t:e(+t),k):s},k.outerRadius=function(t){return arguments.length?(x=typeof t==`function`?t:e(+t),k):x},k.cornerRadius=function(t){return arguments.length?(S=typeof t==`function`?t:e(+t),k):S},k.padRadius=function(t){return arguments.length?(C=t==null?null:typeof t==`function`?t:e(+t),k):C},k.startAngle=function(t){return arguments.length?(w=typeof t==`function`?t:e(+t),k):w},k.endAngle=function(t){return arguments.length?(T=typeof t==`function`?t:e(+t),k):T},k.padAngle=function(t){return arguments.length?(E=typeof t==`function`?t:e(+t),k):E},k.context=function(e){return arguments.length?(D=e??null,k):D},k}export{x as t};
@@ -0,0 +1 @@
1
+ import"./chunk-NNHCCRGN-CyaCWJWT.js";import{n as e}from"./chunk-4EGX6M5U-B5J4lyUG.js";export{e as createArchitectureServices};