@maycombhq/atticus 2.0.0-beta.27.1 → 2.0.0-beta.28

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 (278) hide show
  1. package/dist/bin.js +3 -3
  2. package/dist/{chunk-N5DLB74D.js → chunk-22MCNFEB.js} +4 -4
  3. package/dist/{chunk-C5DY4R7R.js → chunk-25GG2NAU.js} +2 -2
  4. package/dist/{chunk-YAPVAYZN.js → chunk-2C3KACPH.js} +3 -3
  5. package/dist/{chunk-NNURP7VO.js → chunk-2D5YPHEF.js} +11 -11
  6. package/dist/{chunk-3CMGSQIA.js → chunk-2E3TK22H.js} +2 -2
  7. package/dist/{chunk-GZSOZYEP.js → chunk-2E725C6E.js} +2 -2
  8. package/dist/{chunk-AOQG37K4.js → chunk-2FJ2GBMY.js} +8 -2
  9. package/dist/{chunk-JF2HM2IF.js → chunk-2GP3OTVG.js} +3 -3
  10. package/dist/{chunk-QLT3WYTD.js → chunk-2Q5TFDLI.js} +3 -3
  11. package/dist/{chunk-JGR4X2UA.js → chunk-2YB35HY6.js} +19 -19
  12. package/dist/{chunk-7LOXUBRB.js → chunk-2Z2CIBGD.js} +11 -11
  13. package/dist/{chunk-ZNZYMUBK.js → chunk-32KKFIIP.js} +23 -23
  14. package/dist/{chunk-TPKDYSHO.js → chunk-3AZEQIXD.js} +9 -9
  15. package/dist/{chunk-MNOZDE6W.js → chunk-3BOKR3RU.js} +10 -10
  16. package/dist/chunk-3MKQXZWB.js +67 -0
  17. package/dist/{chunk-JRXFZB6J.js → chunk-3MXX45EF.js} +3 -3
  18. package/dist/{chunk-MA44TMTL.js → chunk-3STTGZFW.js} +1 -1
  19. package/dist/{chunk-P7H5WZH6.js → chunk-3URSPNDW.js} +6 -6
  20. package/dist/{chunk-6ESJWPR3.js → chunk-3YR2EYJP.js} +4 -4
  21. package/dist/{chunk-WNPGLGCJ.js → chunk-42CRNKOT.js} +1 -1
  22. package/dist/{chunk-2WPUSHB6.js → chunk-43DFUZ5J.js} +9 -9
  23. package/dist/{chunk-DDRTAEFZ.js → chunk-4BIG3Y3L.js} +7 -7
  24. package/dist/{chunk-PPKH6ULR.js → chunk-4EBXR37M.js} +1 -1
  25. package/dist/{chunk-SRIU7L4Z.js → chunk-4GR77BYQ.js} +11 -11
  26. package/dist/{chunk-66CMRGI2.js → chunk-4OITEXVX.js} +18 -18
  27. package/dist/{chunk-UGJSKAZ2.js → chunk-4PYY4TMT.js} +3 -3
  28. package/dist/{chunk-LH52QGNY.js → chunk-4QCR6HE3.js} +7 -7
  29. package/dist/{chunk-DNKYWTVZ.js → chunk-5DTLTADG.js} +14 -14
  30. package/dist/{chunk-INCFIDCB.js → chunk-5KRMFM3P.js} +1 -1
  31. package/dist/{chunk-O5BUMSB3.js → chunk-5PWXWUW3.js} +6 -6
  32. package/dist/{chunk-AQLDQK2M.js → chunk-5RCX7YFH.js} +3 -3
  33. package/dist/{chunk-7BOGXFZ3.js → chunk-5U4KA353.js} +7 -7
  34. package/dist/{chunk-MP7W6OKP.js → chunk-65VII57C.js} +12 -12
  35. package/dist/{chunk-EFDUC35B.js → chunk-665VDAU4.js} +2 -2
  36. package/dist/{chunk-3NGHSBVS.js → chunk-6D7HF6V4.js} +21 -21
  37. package/dist/{chunk-R7VX5BSP.js → chunk-6J4PQWNI.js} +12 -12
  38. package/dist/{chunk-MUXYUIBV.js → chunk-6LGI3LIF.js} +3 -3
  39. package/dist/{chunk-ZQZRNVNS.js → chunk-6LIHNYLJ.js} +20 -20
  40. package/dist/{chunk-UMIZYX3U.js → chunk-6RKZYQTL.js} +12 -12
  41. package/dist/chunk-6WIYOGDU.js +23 -0
  42. package/dist/{chunk-ZIAMPN7N.js → chunk-72FLXGSN.js} +3 -3
  43. package/dist/{chunk-USYDJY63.js → chunk-7CBLSYKC.js} +12 -12
  44. package/dist/{chunk-6DHGNY3O.js → chunk-7DMQXEKN.js} +12 -12
  45. package/dist/chunk-7GBVL7JC.js +51 -0
  46. package/dist/{chunk-FVT6LUOC.js → chunk-7IEQFI4L.js} +4 -4
  47. package/dist/{chunk-LAPVW2F6.js → chunk-7NU54VAT.js} +3 -3
  48. package/dist/{chunk-PVJZR4JB.js → chunk-7O22X554.js} +372 -37
  49. package/dist/{chunk-5CIW5RMP.js → chunk-7RBQP7PY.js} +3 -3
  50. package/dist/{chunk-VSED7FYC.js → chunk-7SJ7D6Q7.js} +4 -4
  51. package/dist/{chunk-XKWPEY4B.js → chunk-7SVS7PBB.js} +10 -10
  52. package/dist/{chunk-6MSACVCY.js → chunk-7T73PJED.js} +17 -17
  53. package/dist/{chunk-LCQIRCOT.js → chunk-A2PNCDY2.js} +5 -5
  54. package/dist/{chunk-ELZGWEK4.js → chunk-A5IJVTLL.js} +4 -4
  55. package/dist/{chunk-QXXEOH3A.js → chunk-ABY7IKHT.js} +3 -3
  56. package/dist/{chunk-MSNEGKI3.js → chunk-AGTB5CRY.js} +13 -11
  57. package/dist/{chunk-X5B7KYPD.js → chunk-AIM4ER32.js} +1 -1
  58. package/dist/{chunk-CLM5Z3R5.js → chunk-AKC5NKH6.js} +4 -4
  59. package/dist/{chunk-HNU4AQXB.js → chunk-AKMOH4JL.js} +17 -17
  60. package/dist/{chunk-OBQL7GX4.js → chunk-APVNK4WC.js} +23 -23
  61. package/dist/{chunk-5YX7MJWW.js → chunk-AQOFIHBO.js} +20 -20
  62. package/dist/{chunk-6OTGCKYH.js → chunk-AT7JJQGK.js} +6 -6
  63. package/dist/{chunk-2J2GMERV.js → chunk-ATMILKLM.js} +12 -12
  64. package/dist/{chunk-VVLWEM2Y.js → chunk-AWICXXAC.js} +4 -4
  65. package/dist/{chunk-QU3ENIJV.js → chunk-AY7Z2MFH.js} +22 -22
  66. package/dist/{chunk-PGAXZLNF.js → chunk-B23Z4Y25.js} +9 -9
  67. package/dist/{chunk-AHAEHBH5.js → chunk-B6N2QL5F.js} +7 -7
  68. package/dist/{chunk-YRHKEXTP.js → chunk-BCMXPM2J.js} +7 -7
  69. package/dist/{chunk-L4WFMAHI.js → chunk-BEDHU324.js} +11 -11
  70. package/dist/{chunk-QNXMVJMA.js → chunk-BJZ5BPJU.js} +4 -4
  71. package/dist/{chunk-FT55WYNB.js → chunk-BKHDWJYK.js} +18 -18
  72. package/dist/{chunk-3M3MDBOG.js → chunk-BPWOKVPJ.js} +1 -1
  73. package/dist/{chunk-3YL2GZZH.js → chunk-BULKZIYH.js} +20 -20
  74. package/dist/{chunk-4NPWOUI2.js → chunk-CBYJQD7C.js} +2 -2
  75. package/dist/{chunk-OUALZ5RA.js → chunk-CLH4QLIH.js} +1 -1
  76. package/dist/{chunk-W6OY2PMB.js → chunk-CP4KZA33.js} +6 -6
  77. package/dist/{chunk-V6BP4XHZ.js → chunk-CSP2VZQ2.js} +20 -20
  78. package/dist/{chunk-ORGB6645.js → chunk-CX7WKIUV.js} +12 -12
  79. package/dist/{chunk-4FLIW5PJ.js → chunk-CXGGT3LX.js} +1 -1
  80. package/dist/{chunk-Y6S7VCYN.js → chunk-CYPQ3PBB.js} +3 -3
  81. package/dist/{chunk-XZY4GTCX.js → chunk-D6GPG32H.js} +2 -2
  82. package/dist/{chunk-DTW37FJ6.js → chunk-D6WUJFQH.js} +12 -12
  83. package/dist/{chunk-UXETN43F.js → chunk-DEQGTRMM.js} +5 -5
  84. package/dist/{chunk-VWCNMDMZ.js → chunk-DJLVEPNP.js} +2 -2
  85. package/dist/{chunk-JD3QDLM2.js → chunk-DR2NZ2O6.js} +24 -24
  86. package/dist/{chunk-KOITA526.js → chunk-DSLVJKCF.js} +19 -19
  87. package/dist/{chunk-OOZKLLW7.js → chunk-DXSZXPFF.js} +23 -23
  88. package/dist/{chunk-GEHB2LMA.js → chunk-E2V7Z5PS.js} +26 -26
  89. package/dist/{chunk-YTPND655.js → chunk-E4AUZ5AC.js} +14 -14
  90. package/dist/{chunk-CPB4XMFI.js → chunk-E7O2WMDW.js} +5 -5
  91. package/dist/{chunk-DNDIT3LD.js → chunk-EC6YA766.js} +5 -5
  92. package/dist/{chunk-2AIOOA3U.js → chunk-EGHG6K65.js} +4 -4
  93. package/dist/{chunk-W5UMEIYG.js → chunk-ESOOGVOM.js} +17 -17
  94. package/dist/{chunk-ZT6GPGZ4.js → chunk-EVWTVCFN.js} +34 -34
  95. package/dist/{chunk-XRTECHVH.js → chunk-EXGL7CWI.js} +6 -6
  96. package/dist/{chunk-IPSZDVLI.js → chunk-FEJPEDDX.js} +4 -4
  97. package/dist/{chunk-BUBKKEUV.js → chunk-FHTOS6DU.js} +2 -2
  98. package/dist/{chunk-LP6BFBE5.js → chunk-FIYGZJF6.js} +4 -4
  99. package/dist/{chunk-NNRQZUVW.js → chunk-FJ6YX4K2.js} +22 -22
  100. package/dist/{chunk-I57IH5X6.js → chunk-FRSDREKQ.js} +1 -1
  101. package/dist/{chunk-LKLB5IJ7.js → chunk-FUKL7PUS.js} +4 -4
  102. package/dist/{chunk-U36V664P.js → chunk-G4USCLYQ.js} +87 -42
  103. package/dist/{chunk-5KR2DHDW.js → chunk-G5CXRFI5.js} +14 -14
  104. package/dist/{chunk-MBIJNU3D.js → chunk-G5ZQLW5K.js} +500 -369
  105. package/dist/{chunk-OILAH2C7.js → chunk-GAACSJWG.js} +17 -17
  106. package/dist/{chunk-44XGOSUU.js → chunk-GCT6HBIU.js} +4 -4
  107. package/dist/{chunk-CHS5BJ34.js → chunk-GGCRLU4L.js} +3 -3
  108. package/dist/{chunk-S6TLXRBR.js → chunk-GNY4LOHN.js} +3 -3
  109. package/dist/{chunk-VTQ55N4O.js → chunk-GOB2TYE5.js} +14 -14
  110. package/dist/{chunk-UDM7LXNJ.js → chunk-H4JC4U44.js} +3 -3
  111. package/dist/{chunk-I4P72R2F.js → chunk-H7BHL2KV.js} +21 -21
  112. package/dist/{chunk-J4L64TUA.js → chunk-HBBMRFSQ.js} +25 -25
  113. package/dist/{chunk-RDFRB26Z.js → chunk-HBRMXFMC.js} +3 -3
  114. package/dist/chunk-HBWRKIJI.js +68 -0
  115. package/dist/{chunk-OUGTAOGA.js → chunk-HE4O7PLD.js} +1 -1
  116. package/dist/{chunk-HOEZQRZU.js → chunk-HPKQIRQR.js} +5 -5
  117. package/dist/{chunk-XIIT4PVT.js → chunk-HQG5AGT2.js} +2 -2
  118. package/dist/{chunk-O6UC7ASJ.js → chunk-HWXEPWHW.js} +5 -5
  119. package/dist/{chunk-L3KSU4QU.js → chunk-HZ65CLTT.js} +8 -8
  120. package/dist/{chunk-FZ2K3IXP.js → chunk-HZPHNRHV.js} +23 -23
  121. package/dist/{chunk-SFCFL7Y5.js → chunk-I3ZJTM2T.js} +3 -1
  122. package/dist/{chunk-FADIWOA5.js → chunk-IEGOFWZC.js} +2 -2
  123. package/dist/{chunk-4BK5EJ2C.js → chunk-IQYR73ED.js} +6 -6
  124. package/dist/{chunk-DS2OZXBN.js → chunk-J3G3YZSE.js} +17 -17
  125. package/dist/{chunk-W4SWXJZQ.js → chunk-J5AJRTID.js} +14 -14
  126. package/dist/{chunk-QK3UFHFC.js → chunk-JCZSY5ZC.js} +1 -1
  127. package/dist/{chunk-2ANBMA74.js → chunk-JMU2NZ4W.js} +2 -2
  128. package/dist/{chunk-HDWVR5KD.js → chunk-JNAJH2KI.js} +1 -1
  129. package/dist/{chunk-DVQCYF3V.js → chunk-JQARUMXI.js} +2 -2
  130. package/dist/{chunk-Z245SJ64.js → chunk-JS2QR752.js} +20 -20
  131. package/dist/{chunk-D566V3T3.js → chunk-JTTTC5AI.js} +11 -11
  132. package/dist/{chunk-3PN7KJBA.js → chunk-JUY5VPJL.js} +19 -19
  133. package/dist/{chunk-JA7AUBHU.js → chunk-JZ5UJ5AM.js} +19 -19
  134. package/dist/{chunk-5GCCG3GJ.js → chunk-KIRQVVEQ.js} +2 -2
  135. package/dist/{chunk-SF3HXNXR.js → chunk-KLTHX4MU.js} +3 -3
  136. package/dist/{chunk-7GZ46N4V.js → chunk-KNHV3DEJ.js} +14 -14
  137. package/dist/{chunk-6GX3OFEZ.js → chunk-KOTDH7M2.js} +5 -5
  138. package/dist/{chunk-FBNJZ3VH.js → chunk-KS3XFDGF.js} +2 -2
  139. package/dist/{chunk-XRNMQZFC.js → chunk-L72673XW.js} +8 -8
  140. package/dist/{chunk-SKVLJL2E.js → chunk-LBLYKXFO.js} +23 -23
  141. package/dist/{chunk-LCWC6NDE.js → chunk-LD35W2PC.js} +3 -3
  142. package/dist/{chunk-TM2WY65Q.js → chunk-LD5YRRZW.js} +20 -20
  143. package/dist/{chunk-MA73J3E6.js → chunk-LDHTS4DI.js} +10 -10
  144. package/dist/{chunk-EHXEJFHD.js → chunk-LHSKJEIP.js} +2 -2
  145. package/dist/{chunk-SSYD4XIW.js → chunk-LQM2YZUX.js} +15 -15
  146. package/dist/{chunk-QPAANKUR.js → chunk-LSRKXZI4.js} +4 -4
  147. package/dist/{chunk-TRSNIJNM.js → chunk-LWCWGLLZ.js} +3 -3
  148. package/dist/{chunk-2FORECYK.js → chunk-LWUWPGQV.js} +6 -6
  149. package/dist/{chunk-VGXE7XFO.js → chunk-M4XMRGH3.js} +14 -14
  150. package/dist/{chunk-6VFR3DYS.js → chunk-M5RJE72K.js} +8 -8
  151. package/dist/{chunk-NK6JCNJX.js → chunk-M76MYSFZ.js} +16 -16
  152. package/dist/{chunk-6TXB2WR6.js → chunk-M7H7U62C.js} +4 -4
  153. package/dist/{chunk-BSGOUHL6.js → chunk-MBBWY2MA.js} +12 -12
  154. package/dist/{chunk-5YEUAZZE.js → chunk-MM2SZYPS.js} +4 -4
  155. package/dist/{chunk-3BQDBTQJ.js → chunk-MO6D2ZO6.js} +8 -8
  156. package/dist/{chunk-JOG5O2ZH.js → chunk-MUTSQOQ7.js} +11 -11
  157. package/dist/{chunk-GBJRFFDW.js → chunk-MVZYCDIX.js} +1 -1
  158. package/dist/{chunk-TMMGQBLO.js → chunk-MWEJAEX5.js} +15 -15
  159. package/dist/{chunk-3PBIZBWN.js → chunk-MZ2ITC2C.js} +1 -1
  160. package/dist/{chunk-HBHPOKL2.js → chunk-MZ7LTRE4.js} +4 -4
  161. package/dist/{chunk-AXJCABA5.js → chunk-N2IVTVXW.js} +5 -5
  162. package/dist/{chunk-YIGSUTW2.js → chunk-N5IGQQM4.js} +3 -3
  163. package/dist/{chunk-LTVOQJKT.js → chunk-NC6ET2OI.js} +3 -3
  164. package/dist/{chunk-S5O57P5P.js → chunk-NNRU2B3U.js} +13 -13
  165. package/dist/{chunk-NJ5IEZIG.js → chunk-NQFBTZWW.js} +7 -7
  166. package/dist/{chunk-TFN2N227.js → chunk-NT4SCIRT.js} +3 -3
  167. package/dist/{chunk-LQEMCF43.js → chunk-NTWOEULN.js} +12 -12
  168. package/dist/{chunk-NWAMUD7B.js → chunk-NWZPMZUR.js} +22 -22
  169. package/dist/{chunk-7HUCEHUK.js → chunk-O77FAGKZ.js} +12 -12
  170. package/dist/chunk-ODCC5CRP.js +62 -0
  171. package/dist/{chunk-YBAJ5SAR.js → chunk-OFHPXH3N.js} +4 -4
  172. package/dist/{chunk-OY2VC2IU.js → chunk-OHAMT5OA.js} +21 -21
  173. package/dist/{chunk-D3L5SO27.js → chunk-OJ7KHS4P.js} +2 -2
  174. package/dist/{chunk-I2NGDERG.js → chunk-OJE4JK45.js} +12 -12
  175. package/dist/{chunk-AZBP5DTU.js → chunk-OMGEHUXV.js} +9 -9
  176. package/dist/chunk-ON2W7SWK.js +60 -0
  177. package/dist/{chunk-VX5CORDG.js → chunk-OU35MAMV.js} +19 -19
  178. package/dist/{chunk-GF6GBHFN.js → chunk-OUVEXAM2.js} +7 -7
  179. package/dist/{chunk-G33UIUG3.js → chunk-OXDMFJHR.js} +2 -2
  180. package/dist/{chunk-W7NNZFIL.js → chunk-OZN3KT74.js} +15 -15
  181. package/dist/{chunk-RX2SMQV3.js → chunk-P37XFTBW.js} +14 -14
  182. package/dist/{chunk-JWIAVNEC.js → chunk-P6WPQQ5K.js} +15 -15
  183. package/dist/{chunk-KMBI6IQD.js → chunk-PEIGHDVC.js} +4 -4
  184. package/dist/{chunk-523NRKHF.js → chunk-PHXTGKLG.js} +2 -2
  185. package/dist/{chunk-Z5CIRZNO.js → chunk-PI5G43TD.js} +42 -42
  186. package/dist/{chunk-APYIIVBH.js → chunk-PKQJANRL.js} +31 -31
  187. package/dist/{chunk-Q7YDUGVZ.js → chunk-PL4EFATK.js} +1 -1
  188. package/dist/{chunk-CWKQRP6Y.js → chunk-PNU5SNYP.js} +23 -23
  189. package/dist/{chunk-QUFZDWPC.js → chunk-PTFOD2OZ.js} +4 -4
  190. package/dist/{chunk-R6KZWNZM.js → chunk-PUORKWTG.js} +27 -27
  191. package/dist/{chunk-UDM6HGF4.js → chunk-PXUNPXAB.js} +4 -4
  192. package/dist/{chunk-U4K34CXK.js → chunk-PZY4M3AZ.js} +16 -16
  193. package/dist/{chunk-5ZFLP2IK.js → chunk-Q2KK7SXF.js} +3 -3
  194. package/dist/{chunk-HUMM4S5I.js → chunk-QAKAUMAK.js} +3 -3
  195. package/dist/{chunk-WPZCSFND.js → chunk-QEODQXAV.js} +16 -16
  196. package/dist/{chunk-QQUAEM3U.js → chunk-QIUQHNEC.js} +22 -22
  197. package/dist/{chunk-TMETWJFO.js → chunk-QKDVSKSI.js} +7 -7
  198. package/dist/{chunk-PCIENCB7.js → chunk-QYK2G2YA.js} +12 -12
  199. package/dist/{chunk-6H62UHY5.js → chunk-QZIXAFV2.js} +109 -15
  200. package/dist/{chunk-QXSYFB5L.js → chunk-R3BSM6HV.js} +3 -3
  201. package/dist/{chunk-GZILYRGC.js → chunk-R5X4CNVG.js} +2 -2
  202. package/dist/{chunk-RZEYZOLW.js → chunk-RA5Y7WI7.js} +12 -12
  203. package/dist/{chunk-WTLFRINF.js → chunk-RGL7ZSJ7.js} +32 -32
  204. package/dist/{chunk-5PAIR73N.js → chunk-RIXLWV3X.js} +22 -22
  205. package/dist/{chunk-YHS7TSQS.js → chunk-RKDZ2LAO.js} +4 -4
  206. package/dist/{chunk-R7NPDUBL.js → chunk-RLGDSUJM.js} +12 -12
  207. package/dist/{chunk-RTHQIGGY.js → chunk-RUCNERM2.js} +23 -23
  208. package/dist/{chunk-RZYRUXSU.js → chunk-RV32IY7X.js} +1 -1
  209. package/dist/{chunk-BV7WB32T.js → chunk-RXCYV2QS.js} +22 -22
  210. package/dist/{chunk-HPCGQAYH.js → chunk-SFWTGHHU.js} +14 -14
  211. package/dist/{chunk-IDFUGYTS.js → chunk-SG4PMGZS.js} +12 -12
  212. package/dist/{chunk-AKZTCZ6F.js → chunk-SGFFO45X.js} +1 -1
  213. package/dist/{chunk-KZ5G3KEN.js → chunk-STJYW2X2.js} +3 -3
  214. package/dist/{chunk-YPXBGNUV.js → chunk-SU2JHMIS.js} +17 -17
  215. package/dist/{chunk-3PG6QOQF.js → chunk-T62FEOSG.js} +8 -8
  216. package/dist/{chunk-TQISA4VW.js → chunk-T7FFW2NN.js} +19 -19
  217. package/dist/{chunk-WJWSB65O.js → chunk-T7QW62TW.js} +204 -10
  218. package/dist/{chunk-WNRIL6JQ.js → chunk-TCHA7MWY.js} +12 -12
  219. package/dist/{chunk-IPMPLTEG.js → chunk-TCYVFE6T.js} +2 -2
  220. package/dist/{chunk-7SO6CGJH.js → chunk-TEESLG4C.js} +8 -8
  221. package/dist/{chunk-OY6H7JX6.js → chunk-TIQMGQPM.js} +3 -3
  222. package/dist/chunk-TQP6HR52.js +43 -0
  223. package/dist/{chunk-FYRBBFIF.js → chunk-TUYZSEKB.js} +4 -4
  224. package/dist/{chunk-4UVTNHA6.js → chunk-TYC6ILJ5.js} +1 -1
  225. package/dist/chunk-U25OIWWE.js +55 -0
  226. package/dist/{chunk-4HMOOBIR.js → chunk-U3SLTDOW.js} +10 -10
  227. package/dist/{chunk-ZW3OEHLT.js → chunk-UMP3TCNX.js} +25 -25
  228. package/dist/{chunk-OUDGBJC2.js → chunk-UZ45RC2L.js} +3 -3
  229. package/dist/{chunk-NWQ76YQ5.js → chunk-V44VIUP2.js} +16 -16
  230. package/dist/{chunk-SJ2Z3AWF.js → chunk-VEI22AS7.js} +2 -2
  231. package/dist/{chunk-M25UUEKC.js → chunk-VKBJ4JDV.js} +21 -21
  232. package/dist/{chunk-I5X4WU7U.js → chunk-VMNBSQIV.js} +2 -2
  233. package/dist/{chunk-TOSHT6NJ.js → chunk-VQKBO73Y.js} +6 -6
  234. package/dist/{chunk-DX7WEXYG.js → chunk-VQX2XXTI.js} +13 -13
  235. package/dist/{chunk-DGNTEKF6.js → chunk-VTE3MIWY.js} +119 -119
  236. package/dist/{chunk-YZUOOTC3.js → chunk-VX5WA6M2.js} +22 -22
  237. package/dist/{chunk-5A4FHGTI.js → chunk-W66GLVBI.js} +15 -15
  238. package/dist/{chunk-2MRYL45Z.js → chunk-W7U3NIUF.js} +102 -10
  239. package/dist/{chunk-CWJDZ5VP.js → chunk-WAEYJ6XE.js} +5 -5
  240. package/dist/{chunk-ELJ5Q4J2.js → chunk-WX2EYZTA.js} +2 -2
  241. package/dist/{chunk-FBG3QHOL.js → chunk-WZPPCEAK.js} +8 -8
  242. package/dist/{chunk-TUMHMISE.js → chunk-X3JAILX6.js} +18 -18
  243. package/dist/{chunk-V7DGFWDB.js → chunk-X4HPOZCJ.js} +22 -22
  244. package/dist/{chunk-J3ZUKQLV.js → chunk-XGOLAZSH.js} +4 -4
  245. package/dist/{chunk-3XNE6XXF.js → chunk-XLONNKSI.js} +4 -4
  246. package/dist/{chunk-ZOAX7W5S.js → chunk-XNZCTQ5C.js} +8 -8
  247. package/dist/{chunk-TLSL7OII.js → chunk-XPE3V7ZN.js} +7 -7
  248. package/dist/{chunk-B4WPO6FX.js → chunk-XSLFANKH.js} +12 -12
  249. package/dist/{chunk-LJEEVZIH.js → chunk-Y3AA4RZA.js} +12 -12
  250. package/dist/{chunk-SP5BWA5H.js → chunk-Y55ADAF3.js} +27 -27
  251. package/dist/chunk-YM2X57FO.js +157 -0
  252. package/dist/{chunk-GLNSLQSV.js → chunk-YRK6FTYB.js} +21 -21
  253. package/dist/{chunk-UEUPEUZX.js → chunk-YV75FKIY.js} +3 -3
  254. package/dist/{chunk-PT77IUYQ.js → chunk-Z56NN3AX.js} +19 -19
  255. package/dist/{chunk-EM6DKBTJ.js → chunk-ZBW2UO5M.js} +3 -3
  256. package/dist/{chunk-ZCARJ77R.js → chunk-ZGOQY4UB.js} +27 -27
  257. package/dist/{chunk-A3QZZEJA.js → chunk-ZHNZZ642.js} +63 -37
  258. package/dist/{chunk-NV5S63YK.js → chunk-ZLPTFC2O.js} +4 -4
  259. package/dist/{chunk-E7Q52EOO.js → chunk-ZLQQJBPF.js} +5 -5
  260. package/dist/{chunk-23OQZY5Z.js → chunk-ZUSKC4YT.js} +6 -6
  261. package/dist/{chunk-3TWERSTY.js → chunk-ZVCF5PBG.js} +11 -11
  262. package/dist/files.json +588 -580
  263. package/dist/fixtures/forge/slots/build.json +1 -1
  264. package/dist/packages/sdk/npm/index.js +144 -1
  265. package/dist/packages/ui/dist/assets/{elk-api-CPE6PVL8.js → elk-api-dCIOhvlC.js} +2 -2
  266. package/dist/packages/ui/dist/assets/index-B1Jr0xH8.js +63 -0
  267. package/dist/packages/ui/dist/assets/index-BqafgeqY.css +1 -0
  268. package/dist/packages/ui/dist/index.html +2 -2
  269. package/package.json +5 -5
  270. package/dist/chunk-CBFQO2F2.js +0 -62
  271. package/dist/chunk-EHT2KP5A.js +0 -43
  272. package/dist/chunk-FFIHRQ3O.js +0 -67
  273. package/dist/chunk-G4TFQ4EG.js +0 -60
  274. package/dist/chunk-MIKRDA2P.js +0 -68
  275. package/dist/chunk-RCPWEZD7.js +0 -47
  276. package/dist/chunk-WTGQJXRJ.js +0 -55
  277. package/dist/packages/ui/dist/assets/index-BYcVqj0l.js +0 -65
  278. package/dist/packages/ui/dist/assets/index-DF52Ejvz.css +0 -1
@@ -8,7 +8,7 @@ import {
8
8
  pageChanged,
9
9
  prunePlanHash,
10
10
  undoPlanHash
11
- } from "./chunk-3XNE6XXF.js";
11
+ } from "./chunk-XLONNKSI.js";
12
12
  import {
13
13
  UPGRADE_UNDONE,
14
14
  applyUndo,
@@ -27,27 +27,29 @@ import {
27
27
  undoDirOf,
28
28
  undoHandEdits,
29
29
  writeCuratedEdits
30
- } from "./chunk-6H62UHY5.js";
31
- import "./chunk-YIGSUTW2.js";
32
- import "./chunk-N5DLB74D.js";
30
+ } from "./chunk-QZIXAFV2.js";
31
+ import "./chunk-N5IGQQM4.js";
32
+ import "./chunk-22MCNFEB.js";
33
33
  import {
34
34
  sha256Of
35
- } from "./chunk-4NPWOUI2.js";
35
+ } from "./chunk-CBYJQD7C.js";
36
36
  import {
37
37
  gitUser
38
- } from "./chunk-X5B7KYPD.js";
39
- import "./chunk-IPSZDVLI.js";
40
- import "./chunk-2MRYL45Z.js";
41
- import "./chunk-ELJ5Q4J2.js";
42
- import "./chunk-XZY4GTCX.js";
43
- import "./chunk-3M3MDBOG.js";
38
+ } from "./chunk-AIM4ER32.js";
39
+ import "./chunk-FEJPEDDX.js";
40
+ import "./chunk-W7U3NIUF.js";
41
+ import "./chunk-WX2EYZTA.js";
42
+ import "./chunk-D6GPG32H.js";
43
+ import "./chunk-BPWOKVPJ.js";
44
44
  import {
45
45
  catalogDirOf,
46
+ declareLink,
46
47
  deserializeRecord,
47
48
  parseRecord,
48
49
  recordPath,
49
- serializeRecord
50
- } from "./chunk-WJWSB65O.js";
50
+ serializeRecord,
51
+ undeclareLink
52
+ } from "./chunk-T7QW62TW.js";
51
53
  import {
52
54
  LockHeldError,
53
55
  acquireLock,
@@ -166,7 +168,7 @@ async function catalogBuild(root, o, io) {
166
168
  io.err(`${p.repo ? `${p.repo}: ` : ""}${p.source}: ${p.message}`);
167
169
  return r.guard.refused ? 1 : 0;
168
170
  };
169
- const code = o.check ? await run() : await locked(root, command, io, run);
171
+ const code = o.check || o.held ? await run() : await locked(root, command, io, run);
170
172
  return code;
171
173
  }
172
174
  function undoneRenames(copies) {
@@ -544,34 +546,22 @@ async function catalogEdits(root, o, io) {
544
546
  });
545
547
  continue;
546
548
  }
547
- const placed = await decisionFor(curatedDir, slug(`cd-edit-${String(p.decision.action)}-${String(p.decision.target)}`), p.decision, at);
548
- if ("keep" in placed) {
549
- kept.push({
550
- path: p.path,
551
- decision: `${posix(relative(root, curatedDir))}/curateddecision/${placed.keep}`
552
- });
553
- curated.push(p.path);
554
- continue;
555
- }
556
- const record = parseRecord({
557
- kind: "CuratedDecision",
558
- id: placed.id,
559
- schemaVersion: 2,
560
- status: "current",
561
- confidence: "asserted",
562
- ...p.decision,
549
+ const w = await writeDecision(root, curatedDir, p.decision, {
550
+ idBase: `cd-edit-${String(p.decision.action)}-${String(p.decision.target)}`,
563
551
  reason: `A hand edit to ${p.path}, made curated (atticus catalog edits --curate).`,
564
552
  by,
565
- at: placed.at
553
+ at
566
554
  });
567
- if (!record.ok) {
568
- left.push({ path: p.path, why: record.issues.map((i) => i.message).join("; ") });
555
+ if ("kept" in w) {
556
+ kept.push({ path: p.path, decision: w.kept });
557
+ curated.push(p.path);
558
+ continue;
559
+ }
560
+ if ("problem" in w) {
561
+ left.push({ path: p.path, why: w.problem });
569
562
  continue;
570
563
  }
571
- const full = join(curatedDir, ...recordPath(record.record).split("/"));
572
- await mkdir(dirname(full), { recursive: true });
573
- await writeFileAtomic(full, serializeRecord(record.record));
574
- written.push(posix(relative(root, full)));
564
+ written.push(w.written);
575
565
  curated.push(p.path);
576
566
  }
577
567
  if (o.dropFields !== void 0 && !confirmed)
@@ -612,6 +602,29 @@ var pick = (p) => ({
612
602
  fields: p.fields ?? [],
613
603
  ...p.removed?.length ? { removed: p.removed } : {}
614
604
  });
605
+ async function writeDecision(root, curatedDir, decision, o) {
606
+ const placed = await decisionFor(curatedDir, slug(o.idBase), decision, o.at);
607
+ if ("keep" in placed)
608
+ return { kept: `${posix(relative(root, curatedDir))}/curateddecision/${placed.keep}` };
609
+ const record = parseRecord({
610
+ kind: "CuratedDecision",
611
+ id: placed.id,
612
+ schemaVersion: 2,
613
+ status: "current",
614
+ confidence: "asserted",
615
+ ...decision,
616
+ reason: o.reason,
617
+ by: o.by,
618
+ at: placed.at
619
+ });
620
+ if (!record.ok)
621
+ return { problem: record.issues.map((i) => i.message).join("; ") };
622
+ const full = join(curatedDir, ...recordPath(record.record).split("/"));
623
+ await mkdir(dirname(full), { recursive: true });
624
+ const bytes = serializeRecord(record.record);
625
+ await writeFileAtomic(full, bytes);
626
+ return { written: posix(relative(root, full)), id: placed.id, bytes };
627
+ }
615
628
  async function decisionFor(curatedDir, id, decision, now) {
616
629
  const dir = join(curatedDir, "curateddecision");
617
630
  const held = [];
@@ -637,17 +650,339 @@ async function decisionFor(curatedDir, id, decision, now) {
637
650
  if (!existsSync(fileOf(`${id}-${n}`)))
638
651
  return { id: `${id}-${n}`, at };
639
652
  }
653
+ var LINK_DELETE_PREFIX = "cd-link-delete-";
654
+ var linkDeleteReason = (from, to, n, group) => `Deleted on the canvas: the link ${JSON.stringify(from)} \u2192 ${JSON.stringify(to)} (${n} call${n === 1 ? "" : "s"}) [${group}].`;
655
+ var LINK_DELETE_REASON = /^Deleted on the canvas: the link ("(?:[^"\\]|\\.)*") → ("(?:[^"\\]|\\.)*") \((\d+) calls?\) \[([a-z0-9-]+)\]\.$/;
656
+ var LINK_DELETE_REASON_0 = /^Deleted on the canvas: the link (.+) → (.+) \((\d+) calls?\)\.$/;
657
+ function linkOfReason(reason) {
658
+ const m = LINK_DELETE_REASON.exec(reason);
659
+ if (m) {
660
+ try {
661
+ return {
662
+ from: JSON.parse(m[1]),
663
+ to: JSON.parse(m[2]),
664
+ calls: Number(m[3]),
665
+ group: m[4]
666
+ };
667
+ } catch {
668
+ }
669
+ }
670
+ const o = LINK_DELETE_REASON_0.exec(reason);
671
+ return o ? { from: o[1], to: o[2], calls: Number(o[3]) } : { from: "", to: "", calls: 0 };
672
+ }
673
+ var decisionDirOf = (root) => join(catalogDirOf(root), "curated", "curateddecision");
674
+ function isLinkDelete(d) {
675
+ return d?.kind === "CuratedDecision" && typeof d.id === "string" && d.id.startsWith(LINK_DELETE_PREFIX) && d.action === "suppress" && d.status === "current" && (d.value ?? null) === null;
676
+ }
677
+ async function deletedLinks(root, o = {}) {
678
+ const dir = decisionDirOf(root);
679
+ const rel = posix(relative(root, dir));
680
+ const groups = /* @__PURE__ */ new Map();
681
+ for (const n of (await readdir(dir).catch(() => [])).sort(cmpText)) {
682
+ if (!n.endsWith(".yaml"))
683
+ continue;
684
+ const p = deserializeRecord(await readFile(join(dir, n), "utf8").catch(() => ""));
685
+ const d = p.ok ? p.record : void 0;
686
+ if (!d || !isLinkDelete(d))
687
+ continue;
688
+ const m = linkOfReason(String(d.reason ?? ""));
689
+ const by = String(d.by ?? "");
690
+ const at = String(d.at ?? "");
691
+ const key = m.group ? `g\0${m.group}` : `${String(d.reason)}\0${by}\0${at}`;
692
+ const g = groups.get(key) ?? {
693
+ from: m.from,
694
+ to: m.to,
695
+ calls: m.calls,
696
+ by,
697
+ at,
698
+ ...m.group?.startsWith("r-") ? { redirect: true } : {},
699
+ decisions: []
700
+ };
701
+ const target = String(d.target);
702
+ g.decisions.push({
703
+ id: String(d.id),
704
+ target,
705
+ file: `${rel}/${n}`,
706
+ ...o.suppressed && !o.suppressed.has(target) ? { gone: true } : {}
707
+ });
708
+ groups.set(key, g);
709
+ }
710
+ const links = [...groups.values()].map((l) => l.decisions.every((x) => x.gone) && o.suppressed ? { ...l, gone: true } : l).sort((a, b) => a.at === b.at ? cmpText(`${a.from}>${a.to}`, `${b.from}>${b.to}`) : a.at < b.at ? 1 : -1);
711
+ return { links };
712
+ }
713
+ async function suppressedNow(root) {
714
+ const r = await buildAndWrite(root, { command: "atticus catalog build", check: true });
715
+ return new Set(r.build.curated.suppressed);
716
+ }
717
+ async function buildAfterDecisions(root, targets, io, o = {}) {
718
+ const command = "atticus catalog build";
719
+ const listed = await buildAndWrite(root, { command, check: true });
720
+ const r = listed.guard.refused;
721
+ const removals = listed.guard.removals;
722
+ const byInput = (x) => !o.pending?.has(x.id) && x.reasons.every((k) => k === "input") && x.explainedBy.every((w) => {
723
+ const m = /^an input changed \((.+)\)$/.exec(w);
724
+ return !!m && !!o.inputs?.has(m[1]);
725
+ });
726
+ const ours = !!r && r.reasons.length === 1 && r.reasons[0] === "large-removals" && removals.length > 0 && removals.every((x) => targets.has(x.id) || byInput(x));
727
+ if (ours)
728
+ for (const x of removals.filter((y) => !targets.has(y.id)))
729
+ io.out(`Also takes away ${x.kind}/${x.id}: ${x.explainedBy.join("; ")}.`);
730
+ return catalogBuild(root, {
731
+ ...ours ? { allowRemovals: removals.length, plan: buildPlanOf(listed.guard) } : {},
732
+ held: true
733
+ }, io);
734
+ }
735
+ async function deleteLink(root, o, io) {
736
+ const r = await applyMapEdits(root, {
737
+ edits: [
738
+ { kind: "delete", delete: { interfaces: [...o.interfaces], from: o.from, to: o.to } }
739
+ ],
740
+ ...o.by ? { by: o.by } : {},
741
+ ...o.now ? { now: o.now } : {},
742
+ what: "Delete this link"
743
+ }, io);
744
+ return r.code;
745
+ }
746
+ async function undeleteLink(root, o, io) {
747
+ const dir = decisionDirOf(root);
748
+ return locked(root, "Bring back the link", io, async () => {
749
+ const targets = /* @__PURE__ */ new Set();
750
+ const files = [];
751
+ for (const id of new Set(o.decisions)) {
752
+ const path = join(dir, `${id}.yaml`);
753
+ const p = deserializeRecord(await readFile(path, "utf8").catch(() => ""));
754
+ const d = p.ok ? p.record : void 0;
755
+ if (!isLinkDelete(d) || d.id !== id) {
756
+ io.err(`${id} isn't a link deleted on the canvas: nothing removed.`);
757
+ return 1;
758
+ }
759
+ files.push({ path, target: String(d.target) });
760
+ }
761
+ for (const f of files) {
762
+ await rm(f.path, { force: true });
763
+ targets.add(f.target);
764
+ io.out(`Removed ${posix(relative(root, f.path))}: Interface/${f.target} is drawn again.`);
765
+ }
766
+ return buildAfterDecisions(root, targets, io);
767
+ });
768
+ }
769
+ var addWords = (e) => {
770
+ if ("pair" in e) {
771
+ const p = e.pair;
772
+ const n = p.pairs.length;
773
+ return `${p.from} \u2192 ${p.to.repo ?? p.to.system} (${n} call${n === 1 ? "" : "s"} paired)`;
774
+ }
775
+ if (!("add" in e))
776
+ return "";
777
+ const a = e.add;
778
+ return a.kind === "call" ? `${a.system} calls ${a.route}` : `${a.system} ${a.side} ${a.topic}`;
779
+ };
780
+ function mapEditWords(e) {
781
+ if (e.kind === "delete")
782
+ return `delete ${e.delete.from} \u2192 ${e.delete.to}`;
783
+ if (e.kind === "add")
784
+ return `add: ${addWords(e)}`;
785
+ return `redirect ${e.delete.from} \u2192 ${e.delete.to} to: ${addWords(e)}`;
786
+ }
787
+ var mapEditHooks = {};
788
+ async function applyMapEdits(root, o, io) {
789
+ const outcomes = o.edits.map((e, edit) => ({
790
+ edit,
791
+ kind: e.kind,
792
+ state: "not-tried"
793
+ }));
794
+ const n = o.edits.length;
795
+ let built = false;
796
+ const code = await locked(root, o.what ?? "Edit the map", io, async () => {
797
+ const by = o.by ?? (await gitUser(root)).handle;
798
+ const at = (o.now ?? /* @__PURE__ */ new Date()).toISOString().replace(/\.\d{3}Z$/, "Z");
799
+ const stamp = at.replace(/\D/g, "").slice(0, 14);
800
+ const { correctionLine, factsDirOf } = await import("./chunk-4EBXR37M.js");
801
+ const records = (await (await import("./chunk-AGTB5CRY.js")).readCatalog(join(catalogDirOf(root), "generated"), { fresh: true })).records;
802
+ const byId = new Map(records.map((r) => [r.id, r]));
803
+ const targets = /* @__PURE__ */ new Set();
804
+ const pending = new Set((await buildAndWrite(root, { command: "atticus catalog build", check: true })).guard.removals.map((x) => x.id));
805
+ const inputs = /* @__PURE__ */ new Set();
806
+ const files = /* @__PURE__ */ new Map();
807
+ const replaced = (f, i, r) => {
808
+ const x = files.get(f);
809
+ if (x?.how === "replace") {
810
+ if (r.before !== x.wrote)
811
+ x.between = true;
812
+ x.wrote = r.wrote ?? x.wrote;
813
+ x.edits.add(i);
814
+ } else
815
+ files.set(f, {
816
+ how: "replace",
817
+ before: r.before,
818
+ wrote: r.wrote ?? r.before,
819
+ edits: /* @__PURE__ */ new Set([i])
820
+ });
821
+ };
822
+ for (const [i, e] of o.edits.entries()) {
823
+ const said = `Change ${i + 1} of ${n}, ${mapEditWords(e)}`;
824
+ try {
825
+ await mapEditHooks.beforeWrite?.(i);
826
+ if (e.kind !== "add") {
827
+ const d = e.delete;
828
+ const ids = [...new Set(d.interfaces)];
829
+ const group = `${e.kind === "redirect" ? "r" : "d"}-${stamp}-${i + 1}`;
830
+ const reason = linkDeleteReason(d.from, d.to, ids.length, group);
831
+ for (const target of ids) {
832
+ const decl = await canvasDeclarationOf(root, byId.get(target));
833
+ if (decl) {
834
+ const res = await undeclareLink(root, decl);
835
+ replaced(join(root, ...res.rel.split("/")), i, res);
836
+ inputs.add("org-pack");
837
+ io.out(`${said}: withdrew ${decl.value} from ${decl.system}'s declarations in ${res.rel}.`);
838
+ targets.add(target);
839
+ continue;
840
+ }
841
+ const w = await writeDecision(root, join(catalogDirOf(root), "curated"), { action: "suppress", target, value: null }, { idBase: `${LINK_DELETE_PREFIX}${target}`, reason, by, at });
842
+ if ("problem" in w)
843
+ throw new Error(`Interface/${target}: ${w.problem}`);
844
+ if ("written" in w) {
845
+ const file = join(root, ...w.written.split("/"));
846
+ files.set(file, { how: "new", wrote: w.bytes, edits: /* @__PURE__ */ new Set([i]) });
847
+ io.out(`${said}: wrote ${w.written}, the person's suppress of Interface/${target}.`);
848
+ } else
849
+ io.out(`${said}: ${w.kept} suppresses Interface/${target} already.`);
850
+ targets.add(target);
851
+ }
852
+ }
853
+ if ("pair" in e) {
854
+ const { pairingsOf } = await import("./chunk-7GBVL7JC.js");
855
+ const { appendLines } = await import("./chunk-6WIYOGDU.js");
856
+ const p = await pairingsOf(root, e.pair, { by, at });
857
+ const lines = p.corrections.map(correctionLine);
858
+ await mkdir(factsDirOf(root), { recursive: true });
859
+ const appended = await appendLines(p.file, lines);
860
+ const x = files.get(p.file);
861
+ if (x?.how === "append") {
862
+ x.lines.push(...lines);
863
+ x.edits.add(i);
864
+ } else
865
+ files.set(p.file, {
866
+ how: "append",
867
+ lines: [...lines],
868
+ edits: /* @__PURE__ */ new Set([i]),
869
+ ...appended.before === null ? { created: true } : {}
870
+ });
871
+ inputs.add(p.rel);
872
+ io.out(`${said}: wrote ${lines.length} pairing${lines.length === 1 ? "" : "s"} in ${p.rel}, the person's word for ${e.pair.from}'s call${lines.length === 1 ? "" : "s"}.`);
873
+ } else if ("add" in e) {
874
+ const a = e.add;
875
+ const d = a.kind === "call" ? { kind: "call", system: a.system, route: a.route } : { kind: "topic", system: a.system, topic: a.topic, side: a.side };
876
+ const res = await declareLink(root, d, { by, at });
877
+ replaced(join(root, ...res.rel.split("/")), i, res);
878
+ inputs.add("org-pack");
879
+ io.out(`${said}: declared in ${res.rel}.`);
880
+ }
881
+ outcomes[i].state = "saved";
882
+ await mapEditHooks.afterWrite?.(i);
883
+ } catch (err) {
884
+ const why = err instanceof Error ? err.message : String(err);
885
+ outcomes[i] = { ...outcomes[i], state: "failed", message: why };
886
+ io.err(`${said}: not saved: ${why}`);
887
+ const { removeCorrectionLines } = await import("./chunk-7GBVL7JC.js");
888
+ const { FileChangedError, writeFileIfUnchanged } = await import("./chunk-4EBXR37M.js");
889
+ const kept = /* @__PURE__ */ new Set();
890
+ const changedSince = [];
891
+ for (const [f, x] of files) {
892
+ try {
893
+ if (x.how === "replace") {
894
+ if (x.between)
895
+ throw new FileChangedError(f);
896
+ await writeFileIfUnchanged(f, x.wrote, x.before);
897
+ } else if (x.how === "append") {
898
+ await removeCorrectionLines(f, x.lines);
899
+ if (x.created && (await readFile(f, "utf8").catch(() => null))?.trim() === "")
900
+ await rm(f, { force: true });
901
+ } else if (await readFile(f, "utf8").catch(() => null) === x.wrote)
902
+ await rm(f, { force: true });
903
+ else
904
+ throw new FileChangedError(f);
905
+ } catch (e2) {
906
+ if (!(e2 instanceof FileChangedError))
907
+ throw e2;
908
+ changedSince.push(posix(relative(root, f)));
909
+ for (const k of x.edits)
910
+ kept.add(k);
911
+ }
912
+ }
913
+ for (let k = 0; k < i; k++)
914
+ outcomes[k] = kept.has(k) ? {
915
+ ...outcomes[k],
916
+ state: "saved",
917
+ message: `couldn't be taken back: ${changedSince.join(", ")} changed since`
918
+ } : { ...outcomes[k], state: "taken-back" };
919
+ if (kept.has(i))
920
+ outcomes[i] = {
921
+ ...outcomes[i],
922
+ message: `${why} (what it wrote first couldn't be taken back: ${changedSince.join(", ")} changed since)`
923
+ };
924
+ io.err(changedSince.length ? `Nothing was built. ${changedSince.join(", ")} changed while this ran, so what was written there couldn't be taken back and is left as it is: look at ${changedSince.length === 1 ? "it" : "them"}, then fix change ${i + 1} (or remove it from your changes) and apply again.` : `Nothing was built. Every change written before it was taken back, each file as it was; fix change ${i + 1} (or remove it from your changes) and apply again.`);
925
+ return 1;
926
+ }
927
+ }
928
+ io.out(`${n} change${n === 1 ? "" : "s"} saved. Building the catalog once, with all of them.`);
929
+ await mapEditHooks.beforeBuild?.();
930
+ const c = await buildAfterDecisions(root, targets, io, { inputs, pending });
931
+ built = c === 0;
932
+ if (c !== 0)
933
+ io.err("The changes are saved; the catalog is built with them once the build above is confirmed on Set up \u203A Scans \u203A Catalog builds.");
934
+ return c;
935
+ });
936
+ if (outcomes.every((x) => x.state === "not-tried") && code !== 0)
937
+ io.err("Nothing was saved and nothing was built.");
938
+ return { code, edits: outcomes, built };
939
+ }
940
+ async function canvasDeclarationOf(root, r) {
941
+ if (r?.kind !== "Interface")
942
+ return void 0;
943
+ if (!r.evidence.some((e) => e.source === "manual"))
944
+ return void 0;
945
+ const { declaredOf } = await import("./chunk-4EBXR37M.js");
946
+ const norm = (p) => p.replace(/\{[^}]*\}/g, "{}").replace(/\/+$/, "").toLowerCase();
947
+ const flags = r.flags ?? [];
948
+ if (flags.includes("declared-caller")) {
949
+ const list = (await declaredOf(root, r.from)).list.filter((x) => x.kind === "call" && x.by);
950
+ const route = `${(r.method ?? "").toUpperCase()} ${norm(r.normalizedPath)}`;
951
+ const these = list.filter((x) => {
952
+ const [m, ...rest] = x.value.trim().split(/\s+/);
953
+ return `${(m ?? "").toUpperCase()} ${norm(rest.join(" "))}` === route;
954
+ });
955
+ return these.length === 1 ? { kind: "call", system: r.from, value: these[0].value } : void 0;
956
+ }
957
+ for (const system of [r.from, r.to]) {
958
+ const list = (await declaredOf(root, system)).list.filter((x) => x.kind === "topic" && x.by);
959
+ const these = list.filter((x) => x.value === r.normalizedPath);
960
+ if (these.length === 1)
961
+ return { kind: "topic", system, value: these[0].value };
962
+ }
963
+ return void 0;
964
+ }
640
965
  export {
966
+ LINK_DELETE_PREFIX,
641
967
  afterListed,
968
+ applyMapEdits,
969
+ buildAfterDecisions,
642
970
  buildJson,
971
+ canvasDeclarationOf,
643
972
  catalogBuild,
644
973
  catalogEdits,
645
974
  catalogPrune,
646
975
  catalogUndo,
976
+ deleteLink,
977
+ deletedLinks,
647
978
  listHooks,
979
+ mapEditHooks,
980
+ mapEditWords,
648
981
  netRenames,
649
982
  pruneList,
650
983
  refusalHint,
651
984
  renameUndone,
985
+ suppressedNow,
986
+ undeleteLink,
652
987
  undoneRenames
653
988
  };
@@ -15,13 +15,13 @@ import {
15
15
  releaseNotes,
16
16
  securityReview,
17
17
  writeEvidencePack
18
- } from "./chunk-MNOZDE6W.js";
18
+ } from "./chunk-3BOKR3RU.js";
19
19
  import {
20
20
  judgingRuntime
21
- } from "./chunk-4UVTNHA6.js";
21
+ } from "./chunk-TYC6ILJ5.js";
22
22
  import {
23
23
  changeStore
24
- } from "./chunk-YBAJ5SAR.js";
24
+ } from "./chunk-OFHPXH3N.js";
25
25
 
26
26
  // packages/cli/dist/release-commands.js
27
27
  import { resolve } from "node:path";
@@ -5,7 +5,7 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  judgingRuntime
8
- } from "./chunk-4UVTNHA6.js";
8
+ } from "./chunk-TYC6ILJ5.js";
9
9
  import {
10
10
  draftChange,
11
11
  draftTemplates,
@@ -16,17 +16,17 @@ import {
16
16
  storyBar,
17
17
  submitRequests,
18
18
  syncWorkItems
19
- } from "./chunk-DTW37FJ6.js";
19
+ } from "./chunk-D6WUJFQH.js";
20
20
  import {
21
21
  table
22
22
  } from "./chunk-VOGCSYOI.js";
23
23
  import {
24
24
  runtimeForCli
25
- } from "./chunk-2MRYL45Z.js";
25
+ } from "./chunk-W7U3NIUF.js";
26
26
  import {
27
27
  changesRelOf,
28
28
  proposalsRelOf
29
- } from "./chunk-WJWSB65O.js";
29
+ } from "./chunk-T7QW62TW.js";
30
30
 
31
31
  // packages/cli/dist/plan-commands.js
32
32
  import { resolve } from "node:path";
@@ -5,15 +5,15 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  askHosts
8
- } from "./chunk-FVT6LUOC.js";
9
- import {
10
- driftAfterScan
11
- } from "./chunk-L3KSU4QU.js";
8
+ } from "./chunk-7IEQFI4L.js";
12
9
  import {
13
10
  buildPlanOf,
14
11
  pageChanged,
15
12
  refusalPlanOf
16
- } from "./chunk-3XNE6XXF.js";
13
+ } from "./chunk-XLONNKSI.js";
14
+ import {
15
+ driftAfterScan
16
+ } from "./chunk-HZ65CLTT.js";
17
17
  import {
18
18
  buildAndWrite,
19
19
  buildLines,
@@ -22,20 +22,20 @@ import {
22
22
  readCatalog,
23
23
  scanEstate,
24
24
  writeRefusedReport
25
- } from "./chunk-6H62UHY5.js";
25
+ } from "./chunk-QZIXAFV2.js";
26
26
  import {
27
27
  readersSlotPath,
28
28
  serializeReadersSlot,
29
29
  sourcesRelOf,
30
30
  writeReadersSlots
31
- } from "./chunk-4NPWOUI2.js";
31
+ } from "./chunk-CBYJQD7C.js";
32
32
  import {
33
33
  loadRepos
34
- } from "./chunk-X5B7KYPD.js";
34
+ } from "./chunk-AIM4ER32.js";
35
35
  import {
36
36
  catalogDirOf,
37
37
  throwIfCancelled
38
- } from "./chunk-WJWSB65O.js";
38
+ } from "./chunk-T7QW62TW.js";
39
39
  import {
40
40
  LockHeldError,
41
41
  acquireLock
@@ -235,7 +235,7 @@ async function scanCommand(root, o, io) {
235
235
  }
236
236
  try {
237
237
  if (o.ref) {
238
- const { scanBranch } = await import("./chunk-ZQZRNVNS.js");
238
+ const { scanBranch } = await import("./chunk-6LIHNYLJ.js");
239
239
  return await scanBranch(root, o.ref, {
240
240
  ...o.repos ? { repos: o.repos } : {},
241
241
  ...o.full ? { full: true } : {},
@@ -8,28 +8,28 @@ import {
8
8
  knowledgeAppliesMarkdown,
9
9
  readKnowledgeApplies,
10
10
  setKnowledgeStatus
11
- } from "./chunk-DTW37FJ6.js";
12
- import "./chunk-INCFIDCB.js";
13
- import "./chunk-LP6BFBE5.js";
14
- import "./chunk-YBAJ5SAR.js";
11
+ } from "./chunk-D6WUJFQH.js";
12
+ import "./chunk-5KRMFM3P.js";
13
+ import "./chunk-FIYGZJF6.js";
14
+ import "./chunk-OFHPXH3N.js";
15
15
  import "./chunk-23TTURB2.js";
16
- import "./chunk-6H62UHY5.js";
17
- import "./chunk-YIGSUTW2.js";
16
+ import "./chunk-QZIXAFV2.js";
17
+ import "./chunk-N5IGQQM4.js";
18
18
  import {
19
19
  conflictLine
20
- } from "./chunk-N5DLB74D.js";
21
- import "./chunk-4NPWOUI2.js";
22
- import "./chunk-I57IH5X6.js";
23
- import "./chunk-LCQIRCOT.js";
24
- import "./chunk-X5B7KYPD.js";
25
- import "./chunk-IPSZDVLI.js";
26
- import "./chunk-2MRYL45Z.js";
27
- import "./chunk-ELJ5Q4J2.js";
28
- import "./chunk-XZY4GTCX.js";
29
- import "./chunk-3M3MDBOG.js";
20
+ } from "./chunk-22MCNFEB.js";
21
+ import "./chunk-CBYJQD7C.js";
22
+ import "./chunk-FRSDREKQ.js";
23
+ import "./chunk-A2PNCDY2.js";
24
+ import "./chunk-AIM4ER32.js";
25
+ import "./chunk-FEJPEDDX.js";
26
+ import "./chunk-W7U3NIUF.js";
27
+ import "./chunk-WX2EYZTA.js";
28
+ import "./chunk-D6GPG32H.js";
29
+ import "./chunk-BPWOKVPJ.js";
30
30
  import {
31
31
  changesRelOf
32
- } from "./chunk-WJWSB65O.js";
32
+ } from "./chunk-T7QW62TW.js";
33
33
  import "./chunk-SMFFUFMN.js";
34
34
  import "./chunk-A3LVMCA5.js";
35
35
  import "./chunk-NWMFVPEP.js";
@@ -6,7 +6,7 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  dotInt8,
8
8
  textSha
9
- } from "./chunk-2MRYL45Z.js";
9
+ } from "./chunk-W7U3NIUF.js";
10
10
  import {
11
11
  JOINED_BY_PERSON,
12
12
  changesDirOf,
@@ -30,7 +30,7 @@ import {
30
30
  stateDirOf,
31
31
  toCanonicalYaml,
32
32
  walkRepo
33
- } from "./chunk-WJWSB65O.js";
33
+ } from "./chunk-T7QW62TW.js";
34
34
  import {
35
35
  isBinaryPath
36
36
  } from "./chunk-SMFFUFMN.js";
@@ -1057,8 +1057,8 @@ var DOCUMENT_EXTENSIONS = /\.(docx|pptx|xlsx|pdf|md|markdown|html?|txt)$/i;
1057
1057
  async function documentNodes(path, bytes) {
1058
1058
  const out = { nodes: [], names: [], links: [] };
1059
1059
  const [{ readDocument }, { screenFile }] = await Promise.all([
1060
- import("./chunk-NV5S63YK.js"),
1061
- import("./chunk-W6OY2PMB.js")
1060
+ import("./chunk-ZLPTFC2O.js"),
1061
+ import("./chunk-CP4KZA33.js")
1062
1062
  ]);
1063
1063
  const screen = screenFile(path, bytes);
1064
1064
  if (screen.problem)
@@ -2338,7 +2338,7 @@ function openDb(file) {
2338
2338
  var vectorsFileOf = (file) => join3(dirname2(file), "vectors.sqlite");
2339
2339
  var notInstalled = (e, pkg) => e.code === "ERR_MODULE_NOT_FOUND" && String(e.message).includes(pkg);
2340
2340
  var embedders = /* @__PURE__ */ new Map();
2341
- async function embedderOf(root, setting, load = () => import("./chunk-I5X4WU7U.js")) {
2341
+ async function embedderOf(root, setting, load = () => import("./chunk-VMNBSQIV.js")) {
2342
2342
  if (setting === "off")
2343
2343
  return { why: "turned off for this command" };
2344
2344
  if (setting && setting !== "auto")