@reddoorla/maintenance 0.95.1 → 0.97.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (316) hide show
  1. package/README.md +41 -7
  2. package/dist/{announce-CLQYX5I4.js → announce-5ZD2SBGD.js} +39 -31
  3. package/dist/announce-5ZD2SBGD.js.map +1 -0
  4. package/dist/attachments-JFGFQRXQ.js +10 -0
  5. package/dist/{blux-4KNXUP2K.js → blux-NXQLMS4W.js} +1 -1
  6. package/dist/{bump-deps-C5G2EFBB.js → bump-deps-775VLDYB.js} +6 -6
  7. package/dist/{chunk-FUWFLAWQ.js → chunk-3RLDX3Q2.js} +5 -5
  8. package/dist/{chunk-XHHMM5HX.js → chunk-43SW3FGW.js} +63 -1
  9. package/dist/chunk-43SW3FGW.js.map +1 -0
  10. package/dist/{chunk-R53VL3RI.js → chunk-5CJVUPJU.js} +1 -1
  11. package/dist/{chunk-R53VL3RI.js.map → chunk-5CJVUPJU.js.map} +1 -1
  12. package/dist/{chunk-S7RYFUIK.js → chunk-6PGXKN6F.js} +2 -2
  13. package/dist/{chunk-HTABUCF4.js → chunk-6THEZQLA.js} +3 -3
  14. package/dist/chunk-A5QKNOXW.js +72 -0
  15. package/dist/chunk-A5QKNOXW.js.map +1 -0
  16. package/dist/chunk-ASLDCWBF.js +41 -0
  17. package/dist/chunk-ASLDCWBF.js.map +1 -0
  18. package/dist/{chunk-CWXTNPNZ.js → chunk-AYDQQBNG.js} +3 -3
  19. package/dist/chunk-AYDQQBNG.js.map +1 -0
  20. package/dist/{chunk-WVNDEYXL.js → chunk-BINFZQ2T.js} +57 -6
  21. package/dist/chunk-BINFZQ2T.js.map +1 -0
  22. package/dist/{chunk-2NQUCS7O.js → chunk-BIYQN7FH.js} +3 -1
  23. package/dist/{chunk-2NQUCS7O.js.map → chunk-BIYQN7FH.js.map} +1 -1
  24. package/dist/{chunk-YLYXW5PH.js → chunk-CXICCLNM.js} +34 -4
  25. package/dist/chunk-CXICCLNM.js.map +1 -0
  26. package/dist/{chunk-BYGPUUCT.js → chunk-DRNZVORX.js} +66 -30
  27. package/dist/chunk-DRNZVORX.js.map +1 -0
  28. package/dist/{chunk-LM2NHRCJ.js → chunk-DYTYPKFN.js} +4 -4
  29. package/dist/chunk-DYTYPKFN.js.map +1 -0
  30. package/dist/{chunk-DFKBTBO3.js → chunk-EN6CTBUN.js} +35 -6
  31. package/dist/chunk-EN6CTBUN.js.map +1 -0
  32. package/dist/{chunk-5EEMTJMT.js → chunk-FHFXJ3EM.js} +8 -6
  33. package/dist/chunk-FHFXJ3EM.js.map +1 -0
  34. package/dist/{chunk-Z2K4JPQ3.js → chunk-FP6HOW6J.js} +10 -7
  35. package/dist/chunk-FP6HOW6J.js.map +1 -0
  36. package/dist/{chunk-2LYOAB2E.js → chunk-HSMN35LU.js} +2 -2
  37. package/dist/chunk-ICSRWW5Q.js +148 -0
  38. package/dist/chunk-ICSRWW5Q.js.map +1 -0
  39. package/dist/{chunk-FSGICFXB.js → chunk-IDBPII6G.js} +17 -5
  40. package/dist/chunk-IDBPII6G.js.map +1 -0
  41. package/dist/{chunk-C3IQQKXL.js → chunk-IOTOOTII.js} +121 -1
  42. package/dist/{chunk-C3IQQKXL.js.map → chunk-IOTOOTII.js.map} +1 -1
  43. package/dist/{chunk-BCKEP5S6.js → chunk-JHJNNJLG.js} +2 -2
  44. package/dist/{chunk-TO7DJYLZ.js → chunk-L3S3QZXL.js} +178 -39
  45. package/dist/chunk-L3S3QZXL.js.map +1 -0
  46. package/dist/{chunk-WSJ7RO54.js → chunk-LAG6IP7Y.js} +23 -5
  47. package/dist/chunk-LAG6IP7Y.js.map +1 -0
  48. package/dist/{chunk-WJMPCVOR.js → chunk-LAJ3FF54.js} +12 -4
  49. package/dist/chunk-LAJ3FF54.js.map +1 -0
  50. package/dist/{chunk-2ZAZ7ETT.js → chunk-LDHRIQUW.js} +32 -18
  51. package/dist/chunk-LDHRIQUW.js.map +1 -0
  52. package/dist/{chunk-6R56OKJZ.js → chunk-LF2TJN4X.js} +2 -2
  53. package/dist/chunk-LF2TJN4X.js.map +1 -0
  54. package/dist/{chunk-ZQV7UQNE.js → chunk-LUF52EIY.js} +2 -2
  55. package/dist/{chunk-5UINJNAJ.js → chunk-LZMAG73U.js} +34 -21
  56. package/dist/chunk-LZMAG73U.js.map +1 -0
  57. package/dist/{chunk-VSGMCCGQ.js → chunk-MMSMZC7S.js} +2 -2
  58. package/dist/chunk-MVKNU4QD.js +37 -0
  59. package/dist/chunk-MVKNU4QD.js.map +1 -0
  60. package/dist/{chunk-XPJQXSC4.js → chunk-P7323YVW.js} +27 -5
  61. package/dist/chunk-P7323YVW.js.map +1 -0
  62. package/dist/{chunk-KJRVMMM3.js → chunk-PARKXDXI.js} +36 -5
  63. package/dist/chunk-PARKXDXI.js.map +1 -0
  64. package/dist/{chunk-4763KQ6O.js → chunk-PXRN2MER.js} +2 -2
  65. package/dist/{chunk-WMBLR5VA.js → chunk-PZZ6HM5T.js} +3 -3
  66. package/dist/{chunk-TR3HFH6J.js → chunk-QFSL2L2B.js} +67 -10
  67. package/dist/chunk-QFSL2L2B.js.map +1 -0
  68. package/dist/chunk-RQJFGK3A.js +51 -0
  69. package/dist/chunk-RQJFGK3A.js.map +1 -0
  70. package/dist/{chunk-3Z6X3BHU.js → chunk-TC4GANMX.js} +53 -150
  71. package/dist/chunk-TC4GANMX.js.map +1 -0
  72. package/dist/{chunk-F3JWOPTG.js → chunk-TEMQPSCM.js} +45 -105
  73. package/dist/chunk-TEMQPSCM.js.map +1 -0
  74. package/dist/chunk-TJLKWQOX.js +52 -0
  75. package/dist/chunk-TJLKWQOX.js.map +1 -0
  76. package/dist/{chunk-CJ2RMTT7.js → chunk-TV76A6GN.js} +2 -2
  77. package/dist/{chunk-KZRR4NFG.js → chunk-TVZ6QCOE.js} +3 -3
  78. package/dist/{chunk-BVEDKMNG.js → chunk-U2ZI6G7H.js} +29 -11
  79. package/dist/chunk-U2ZI6G7H.js.map +1 -0
  80. package/dist/chunk-UPE6D4AT.js +69 -0
  81. package/dist/chunk-UPE6D4AT.js.map +1 -0
  82. package/dist/{chunk-R5IMFAFR.js → chunk-VMGHQUTV.js} +7 -16
  83. package/dist/chunk-VMGHQUTV.js.map +1 -0
  84. package/dist/chunk-VQMAAQ5M.js +53 -0
  85. package/dist/chunk-VQMAAQ5M.js.map +1 -0
  86. package/dist/{chunk-AVEQUR44.js → chunk-WMF5S2MB.js} +60 -17
  87. package/dist/chunk-WMF5S2MB.js.map +1 -0
  88. package/dist/{chunk-SVAAONYB.js → chunk-WQLNUEZL.js} +12 -2
  89. package/dist/{chunk-SVAAONYB.js.map → chunk-WQLNUEZL.js.map} +1 -1
  90. package/dist/{chunk-XN37VTDB.js → chunk-X56LAKPR.js} +3 -3
  91. package/dist/chunk-X56LAKPR.js.map +1 -0
  92. package/dist/{chunk-ZCL7C5LH.js → chunk-Y6FCXRIC.js} +1661 -387
  93. package/dist/chunk-Y6FCXRIC.js.map +1 -0
  94. package/dist/{chunk-2SLED3NB.js → chunk-YDZ7XGPZ.js} +1 -1
  95. package/dist/{chunk-2SLED3NB.js.map → chunk-YDZ7XGPZ.js.map} +1 -1
  96. package/dist/{chunk-IY6256GK.js → chunk-YJBSB4LP.js} +6 -1
  97. package/dist/chunk-YJBSB4LP.js.map +1 -0
  98. package/dist/{chunk-BI2VI6EM.js → chunk-YXWBM26P.js} +2 -2
  99. package/dist/{chunk-QF6IQQFP.js → chunk-Z7FDJ35L.js} +18 -12
  100. package/dist/chunk-Z7FDJ35L.js.map +1 -0
  101. package/dist/cli/bin.js +111 -51
  102. package/dist/cli/bin.js.map +1 -1
  103. package/dist/cli/commands/audit.d.ts +33 -3
  104. package/dist/cli/commands/audit.js +28 -25
  105. package/dist/cli/commands/audit.js.map +1 -1
  106. package/dist/client-DGTO65WB.js +11 -0
  107. package/dist/configs/playwright-a11y.d.ts +11 -1
  108. package/dist/configs/playwright-a11y.js +3 -1
  109. package/dist/{convert-to-pnpm-YTFREUJK.js → convert-to-pnpm-KLWA53N5.js} +6 -6
  110. package/dist/{db-XKZYDCKM.js → db-II5WAK4D.js} +45 -20
  111. package/dist/db-II5WAK4D.js.map +1 -0
  112. package/dist/deadletter-G4M3HSVM.js +17 -0
  113. package/dist/{digest-7UBGUBRK.js → digest-CWKK2DMR.js} +56 -32
  114. package/dist/digest-CWKK2DMR.js.map +1 -0
  115. package/dist/{digest-collectors-DJFN5ZDK.js → digest-collectors-CYTN2EUX.js} +17 -12
  116. package/dist/{digest-state-3KHZF7GD.js → digest-state-ZDPKR7MW.js} +18 -2
  117. package/dist/digest-state-ZDPKR7MW.js.map +1 -0
  118. package/dist/ensure-site-2QZHFVQ3.js +70 -0
  119. package/dist/ensure-site-2QZHFVQ3.js.map +1 -0
  120. package/dist/ensure-site-JEKV2ODE.js +105 -0
  121. package/dist/ensure-site-JEKV2ODE.js.map +1 -0
  122. package/dist/{ensure-site-OAAE5YE2.js → ensure-site-OO4UPWNQ.js} +49 -44
  123. package/dist/ensure-site-OO4UPWNQ.js.map +1 -0
  124. package/dist/fleet-events-CkOZpMVC.d.ts +435 -0
  125. package/dist/{fleet-state-UEVZ3X3J.js → fleet-state-RJROYXKO.js} +19 -7
  126. package/dist/{forms-notify-target-UC6PF3AE.js → forms-notify-target-X6UEOI2M.js} +19 -15
  127. package/dist/forms-notify-target-X6UEOI2M.js.map +1 -0
  128. package/dist/{freeze-A6MUCZU4.js → freeze-GUQ43EAU.js} +2 -2
  129. package/dist/{github-signals-TX5FPYP6.js → github-signals-QIRTHHET.js} +22 -17
  130. package/dist/github-signals-QIRTHHET.js.map +1 -0
  131. package/dist/{header-image-PSPT7CUM.js → header-image-H7ZJAV26.js} +15 -18
  132. package/dist/header-image-H7ZJAV26.js.map +1 -0
  133. package/dist/{health-endpoint-KVCJYWET.js → health-endpoint-BJ6BKRHF.js} +8 -7
  134. package/dist/{health-endpoint-KVCJYWET.js.map → health-endpoint-BJ6BKRHF.js.map} +1 -1
  135. package/dist/{health-mirror-XJAKA3EY.js → health-mirror-KU3G7V2Y.js} +10 -10
  136. package/dist/{import-airtable-TAKSN4NV.js → import-airtable-UBF5GYAL.js} +3 -3
  137. package/dist/index.d.ts +158 -419
  138. package/dist/index.js +91 -46
  139. package/dist/index.js.map +1 -1
  140. package/dist/{init-FFE4FCO2.js → init-GOWDA5QS.js} +19 -18
  141. package/dist/{init-FFE4FCO2.js.map → init-GOWDA5QS.js.map} +1 -1
  142. package/dist/{launch-UD36AHUN.js → launch-7N3X2MXB.js} +229 -79
  143. package/dist/launch-7N3X2MXB.js.map +1 -0
  144. package/dist/{lighthouse-VHI77PFB.js → lighthouse-52WSPZ5D.js} +2 -2
  145. package/dist/lighthouse-airtable-M45OPVRV.js +14 -0
  146. package/dist/match-harness-GBCDSVPS.js +417 -0
  147. package/dist/match-harness-GBCDSVPS.js.map +1 -0
  148. package/dist/migrate-XZ7U5DFC.js +7 -0
  149. package/dist/{notify-IISTHNBR.js → notify-K3WVH3DM.js} +4 -4
  150. package/dist/{onboard-TM2KESGF.js → onboard-JQQIMQW7.js} +6 -6
  151. package/dist/{orchestrate-HYVQPRCE.js → orchestrate-L2A5BZFY.js} +13 -10
  152. package/dist/parity-2JGVUCZD.js +14 -0
  153. package/dist/{pipeline-YROAY6DT.js → pipeline-UUPXOS2J.js} +3 -3
  154. package/dist/{preflight-RYIP54NY.js → preflight-O7Q6FWHU.js} +35 -11
  155. package/dist/preflight-O7Q6FWHU.js.map +1 -0
  156. package/dist/{prismic-ci-6GKKZGB5.js → prismic-ci-NAPWOXXD.js} +39 -9
  157. package/dist/prismic-ci-NAPWOXXD.js.map +1 -0
  158. package/dist/{prismic-models-P6FWWVRS.js → prismic-models-LL6ORTQ2.js} +20 -17
  159. package/dist/prismic-models-LL6ORTQ2.js.map +1 -0
  160. package/dist/prospect/types.d.ts +72 -0
  161. package/dist/prospect/types.js +1 -1
  162. package/dist/{prospect-audit-PRHU53HS.js → prospect-audit-FMPGQIRQ.js} +16 -7
  163. package/dist/prospect-audit-FMPGQIRQ.js.map +1 -0
  164. package/dist/{prospect-audits-R3LWF6U7.js → prospect-audits-IZVQY3OQ.js} +4 -2
  165. package/dist/protection-audit-YXJKFU6O.js +413 -0
  166. package/dist/protection-audit-YXJKFU6O.js.map +1 -0
  167. package/dist/recipes/sync-configs.js +3 -3
  168. package/dist/{render-YGNGTX3W.js → render-MHUUHPLN.js} +36 -9
  169. package/dist/render-MHUUHPLN.js.map +1 -0
  170. package/dist/{render-from-row-IFSBHWDH.js → render-from-row-75JTED2Z.js} +6 -4
  171. package/dist/{renovate-dispatch-U5Q52SKT.js → renovate-dispatch-2IHAZDVA.js} +14 -9
  172. package/dist/{renovate-dispatch-U5Q52SKT.js.map → renovate-dispatch-2IHAZDVA.js.map} +1 -1
  173. package/dist/{replay-PCSQOGCZ.js → replay-4FVFOMHH.js} +10 -23
  174. package/dist/replay-4FVFOMHH.js.map +1 -0
  175. package/dist/{report-LQS4ECTM.js → report-IAHXN5CW.js} +103 -57
  176. package/dist/report-IAHXN5CW.js.map +1 -0
  177. package/dist/{report-mirror-HDTOJE64.js → report-mirror-4QM57LMS.js} +34 -12
  178. package/dist/report-mirror-4QM57LMS.js.map +1 -0
  179. package/dist/roster-GDNSIRAK.js +19 -0
  180. package/dist/roster-GDNSIRAK.js.map +1 -0
  181. package/dist/{schema-A4WCPIF4.js → schema-KWUQEZ5O.js} +1 -1
  182. package/dist/schema-KWUQEZ5O.js.map +1 -0
  183. package/dist/{self-updating-MWXIZLL7.js → self-updating-ZUWPGYUP.js} +8 -7
  184. package/dist/{self-updating-MWXIZLL7.js.map → self-updating-ZUWPGYUP.js.map} +1 -1
  185. package/dist/{selftest-VXTHRPRN.js → selftest-G4W3LIBQ.js} +21 -17
  186. package/dist/{selftest-VXTHRPRN.js.map → selftest-G4W3LIBQ.js.map} +1 -1
  187. package/dist/site-create-ZU3ACBTO.js +45 -0
  188. package/dist/site-create-ZU3ACBTO.js.map +1 -0
  189. package/dist/site-lookup-DTOLJ4EA.js +27 -0
  190. package/dist/site-lookup-DTOLJ4EA.js.map +1 -0
  191. package/dist/{site-mirror-WON4FTJ2.js → site-mirror-WR7ACXOV.js} +26 -12
  192. package/dist/site-mirror-WR7ACXOV.js.map +1 -0
  193. package/dist/{smoke-suite-7DGITCTZ.js → smoke-suite-WAUPI6EJ.js} +8 -7
  194. package/dist/{smoke-suite-7DGITCTZ.js.map → smoke-suite-WAUPI6EJ.js.map} +1 -1
  195. package/dist/{submissions-OVZPVBYG.js → submissions-2SHCFOKD.js} +12 -7
  196. package/dist/submissions-2SHCFOKD.js.map +1 -0
  197. package/dist/{submissions-3I3GAQAX.js → submissions-JDZP35JM.js} +49 -9
  198. package/dist/submissions-JDZP35JM.js.map +1 -0
  199. package/dist/{svelte-codemods-WSV2FGNG.js → svelte-codemods-VOLOKKFI.js} +6 -6
  200. package/dist/{sync-K3PKHVLH.js → sync-F4USL4K5.js} +6 -6
  201. package/dist/{sync-configs-RRIHNLIJ.js → sync-configs-OXSWKVZ2.js} +6 -6
  202. package/dist/turso-KQKBBQCK.js +24 -0
  203. package/dist/turso-KQKBBQCK.js.map +1 -0
  204. package/dist/{upgrade-VTD6V4HS.js → upgrade-EVAL3JTO.js} +6 -6
  205. package/dist/util/git.d.ts +49 -10
  206. package/dist/util/git.js +1 -1
  207. package/dist/{webflow-IRKOIT7S.js → webflow-624FEBFD.js} +4 -4
  208. package/dist/{websites-TB4TCAWM.js → websites-Y6FN2XFD.js} +27 -20
  209. package/dist/{write-audits-to-airtable-53EVXKMU.js → write-audits-to-airtable-TI3JMWSY.js} +7 -5
  210. package/package.json +3 -2
  211. package/dist/airtable-JGCPS7JH.js +0 -9
  212. package/dist/announce-CLQYX5I4.js.map +0 -1
  213. package/dist/attachments-NLZIJ5NU.js +0 -9
  214. package/dist/chunk-2ZAZ7ETT.js.map +0 -1
  215. package/dist/chunk-3Z6X3BHU.js.map +0 -1
  216. package/dist/chunk-5EEMTJMT.js.map +0 -1
  217. package/dist/chunk-5GUJ36TL.js +0 -53
  218. package/dist/chunk-5GUJ36TL.js.map +0 -1
  219. package/dist/chunk-5UINJNAJ.js.map +0 -1
  220. package/dist/chunk-6R56OKJZ.js.map +0 -1
  221. package/dist/chunk-AVEQUR44.js.map +0 -1
  222. package/dist/chunk-BVEDKMNG.js.map +0 -1
  223. package/dist/chunk-BYGPUUCT.js.map +0 -1
  224. package/dist/chunk-CWXTNPNZ.js.map +0 -1
  225. package/dist/chunk-DFKBTBO3.js.map +0 -1
  226. package/dist/chunk-F3JWOPTG.js.map +0 -1
  227. package/dist/chunk-FSGICFXB.js.map +0 -1
  228. package/dist/chunk-GASBX52O.js +0 -12
  229. package/dist/chunk-GASBX52O.js.map +0 -1
  230. package/dist/chunk-IY6256GK.js.map +0 -1
  231. package/dist/chunk-KJRVMMM3.js.map +0 -1
  232. package/dist/chunk-LM2NHRCJ.js.map +0 -1
  233. package/dist/chunk-QF6IQQFP.js.map +0 -1
  234. package/dist/chunk-R5IMFAFR.js.map +0 -1
  235. package/dist/chunk-TO7DJYLZ.js.map +0 -1
  236. package/dist/chunk-TR3HFH6J.js.map +0 -1
  237. package/dist/chunk-WJMPCVOR.js.map +0 -1
  238. package/dist/chunk-WSJ7RO54.js.map +0 -1
  239. package/dist/chunk-WVNDEYXL.js.map +0 -1
  240. package/dist/chunk-XHHMM5HX.js.map +0 -1
  241. package/dist/chunk-XN37VTDB.js.map +0 -1
  242. package/dist/chunk-XPJQXSC4.js.map +0 -1
  243. package/dist/chunk-YFAXOD7Z.js +0 -42
  244. package/dist/chunk-YFAXOD7Z.js.map +0 -1
  245. package/dist/chunk-YLYXW5PH.js.map +0 -1
  246. package/dist/chunk-Z2K4JPQ3.js.map +0 -1
  247. package/dist/chunk-ZCL7C5LH.js.map +0 -1
  248. package/dist/client-G2WGWPCA.js +0 -11
  249. package/dist/db-XKZYDCKM.js.map +0 -1
  250. package/dist/digest-7UBGUBRK.js.map +0 -1
  251. package/dist/digest-state-3KHZF7GD.js.map +0 -1
  252. package/dist/ensure-site-OAAE5YE2.js.map +0 -1
  253. package/dist/fleet-events-cF2Om88w.d.ts +0 -24
  254. package/dist/forms-notify-target-UC6PF3AE.js.map +0 -1
  255. package/dist/github-signals-TX5FPYP6.js.map +0 -1
  256. package/dist/header-image-PSPT7CUM.js.map +0 -1
  257. package/dist/launch-UD36AHUN.js.map +0 -1
  258. package/dist/lighthouse-airtable-YMH4UA7R.js +0 -12
  259. package/dist/match-harness-QRG6XZAR.js +0 -70
  260. package/dist/match-harness-QRG6XZAR.js.map +0 -1
  261. package/dist/migrate-Y7R4CESL.js +0 -7
  262. package/dist/parity-CAJ477PS.js +0 -14
  263. package/dist/preflight-RYIP54NY.js.map +0 -1
  264. package/dist/prismic-ci-6GKKZGB5.js.map +0 -1
  265. package/dist/prismic-models-P6FWWVRS.js.map +0 -1
  266. package/dist/prospect-audit-PRHU53HS.js.map +0 -1
  267. package/dist/protection-audit-SJO53MEQ.js +0 -168
  268. package/dist/protection-audit-SJO53MEQ.js.map +0 -1
  269. package/dist/render-YGNGTX3W.js.map +0 -1
  270. package/dist/replay-PCSQOGCZ.js.map +0 -1
  271. package/dist/report-LQS4ECTM.js.map +0 -1
  272. package/dist/report-mirror-HDTOJE64.js.map +0 -1
  273. package/dist/schema-A4WCPIF4.js.map +0 -1
  274. package/dist/site-mirror-WON4FTJ2.js.map +0 -1
  275. package/dist/submissions-3I3GAQAX.js.map +0 -1
  276. package/dist/submissions-OVZPVBYG.js.map +0 -1
  277. /package/dist/{airtable-JGCPS7JH.js.map → attachments-JFGFQRXQ.js.map} +0 -0
  278. /package/dist/{blux-4KNXUP2K.js.map → blux-NXQLMS4W.js.map} +0 -0
  279. /package/dist/{bump-deps-C5G2EFBB.js.map → bump-deps-775VLDYB.js.map} +0 -0
  280. /package/dist/{chunk-FUWFLAWQ.js.map → chunk-3RLDX3Q2.js.map} +0 -0
  281. /package/dist/{chunk-S7RYFUIK.js.map → chunk-6PGXKN6F.js.map} +0 -0
  282. /package/dist/{chunk-HTABUCF4.js.map → chunk-6THEZQLA.js.map} +0 -0
  283. /package/dist/{chunk-2LYOAB2E.js.map → chunk-HSMN35LU.js.map} +0 -0
  284. /package/dist/{chunk-BCKEP5S6.js.map → chunk-JHJNNJLG.js.map} +0 -0
  285. /package/dist/{chunk-ZQV7UQNE.js.map → chunk-LUF52EIY.js.map} +0 -0
  286. /package/dist/{chunk-VSGMCCGQ.js.map → chunk-MMSMZC7S.js.map} +0 -0
  287. /package/dist/{chunk-4763KQ6O.js.map → chunk-PXRN2MER.js.map} +0 -0
  288. /package/dist/{chunk-WMBLR5VA.js.map → chunk-PZZ6HM5T.js.map} +0 -0
  289. /package/dist/{chunk-CJ2RMTT7.js.map → chunk-TV76A6GN.js.map} +0 -0
  290. /package/dist/{chunk-KZRR4NFG.js.map → chunk-TVZ6QCOE.js.map} +0 -0
  291. /package/dist/{chunk-BI2VI6EM.js.map → chunk-YXWBM26P.js.map} +0 -0
  292. /package/dist/{attachments-NLZIJ5NU.js.map → client-DGTO65WB.js.map} +0 -0
  293. /package/dist/{convert-to-pnpm-YTFREUJK.js.map → convert-to-pnpm-KLWA53N5.js.map} +0 -0
  294. /package/dist/{client-G2WGWPCA.js.map → deadletter-G4M3HSVM.js.map} +0 -0
  295. /package/dist/{digest-collectors-DJFN5ZDK.js.map → digest-collectors-CYTN2EUX.js.map} +0 -0
  296. /package/dist/{fleet-state-UEVZ3X3J.js.map → fleet-state-RJROYXKO.js.map} +0 -0
  297. /package/dist/{freeze-A6MUCZU4.js.map → freeze-GUQ43EAU.js.map} +0 -0
  298. /package/dist/{health-mirror-XJAKA3EY.js.map → health-mirror-KU3G7V2Y.js.map} +0 -0
  299. /package/dist/{import-airtable-TAKSN4NV.js.map → import-airtable-UBF5GYAL.js.map} +0 -0
  300. /package/dist/{lighthouse-VHI77PFB.js.map → lighthouse-52WSPZ5D.js.map} +0 -0
  301. /package/dist/{lighthouse-airtable-YMH4UA7R.js.map → lighthouse-airtable-M45OPVRV.js.map} +0 -0
  302. /package/dist/{migrate-Y7R4CESL.js.map → migrate-XZ7U5DFC.js.map} +0 -0
  303. /package/dist/{notify-IISTHNBR.js.map → notify-K3WVH3DM.js.map} +0 -0
  304. /package/dist/{onboard-TM2KESGF.js.map → onboard-JQQIMQW7.js.map} +0 -0
  305. /package/dist/{orchestrate-HYVQPRCE.js.map → orchestrate-L2A5BZFY.js.map} +0 -0
  306. /package/dist/{parity-CAJ477PS.js.map → parity-2JGVUCZD.js.map} +0 -0
  307. /package/dist/{pipeline-YROAY6DT.js.map → pipeline-UUPXOS2J.js.map} +0 -0
  308. /package/dist/{prospect-audits-R3LWF6U7.js.map → prospect-audits-IZVQY3OQ.js.map} +0 -0
  309. /package/dist/{render-from-row-IFSBHWDH.js.map → render-from-row-75JTED2Z.js.map} +0 -0
  310. /package/dist/{svelte-codemods-WSV2FGNG.js.map → svelte-codemods-VOLOKKFI.js.map} +0 -0
  311. /package/dist/{sync-K3PKHVLH.js.map → sync-F4USL4K5.js.map} +0 -0
  312. /package/dist/{sync-configs-RRIHNLIJ.js.map → sync-configs-OXSWKVZ2.js.map} +0 -0
  313. /package/dist/{upgrade-VTD6V4HS.js.map → upgrade-EVAL3JTO.js.map} +0 -0
  314. /package/dist/{webflow-IRKOIT7S.js.map → webflow-624FEBFD.js.map} +0 -0
  315. /package/dist/{websites-TB4TCAWM.js.map → websites-Y6FN2XFD.js.map} +0 -0
  316. /package/dist/{write-audits-to-airtable-53EVXKMU.js.map → write-audits-to-airtable-TI3JMWSY.js.map} +0 -0
package/dist/index.js CHANGED
@@ -1,39 +1,43 @@
1
- import "./chunk-2SLED3NB.js";
1
+ import "./chunk-YDZ7XGPZ.js";
2
+ import {
3
+ draftReportForSite
4
+ } from "./chunk-DRNZVORX.js";
2
5
  import {
3
6
  DEFAULT_INIT_STEPS,
4
7
  a11yFixturesPage,
5
8
  init
6
- } from "./chunk-BVEDKMNG.js";
9
+ } from "./chunk-U2ZI6G7H.js";
10
+ import "./chunk-EN6CTBUN.js";
7
11
  import {
8
12
  onboard,
9
13
  selfCaretRange,
10
14
  selfPackageVersion
11
- } from "./chunk-S7RYFUIK.js";
15
+ } from "./chunk-6PGXKN6F.js";
16
+ import "./chunk-UPE6D4AT.js";
12
17
  import {
13
- draftReportForSite
14
- } from "./chunk-BYGPUUCT.js";
15
- import "./chunk-YFAXOD7Z.js";
18
+ bumpDeps
19
+ } from "./chunk-TV76A6GN.js";
16
20
  import {
17
21
  upgradeSvelte4to5
18
- } from "./chunk-BCKEP5S6.js";
22
+ } from "./chunk-JHJNNJLG.js";
19
23
  import {
20
24
  convertToPnpm
21
- } from "./chunk-CWXTNPNZ.js";
25
+ } from "./chunk-AYDQQBNG.js";
22
26
  import {
23
27
  svelteCodemods
24
- } from "./chunk-2LYOAB2E.js";
28
+ } from "./chunk-HSMN35LU.js";
25
29
  import "./chunk-J7SZQUCW.js";
26
- import "./chunk-WSJ7RO54.js";
27
- import "./chunk-ZCL7C5LH.js";
28
- import "./chunk-DFKBTBO3.js";
29
- import "./chunk-R53VL3RI.js";
30
+ import "./chunk-LAG6IP7Y.js";
31
+ import "./chunk-TJLKWQOX.js";
32
+ import "./chunk-5CJVUPJU.js";
30
33
  import {
31
- bumpDeps
32
- } from "./chunk-CJ2RMTT7.js";
33
- import "./chunk-KJRVMMM3.js";
34
+ requireFleetWorkdir,
35
+ selectFleetSites
36
+ } from "./chunk-VQMAAQ5M.js";
37
+ import "./chunk-PARKXDXI.js";
34
38
  import {
35
39
  approveBlockers
36
- } from "./chunk-R5IMFAFR.js";
40
+ } from "./chunk-VMGHQUTV.js";
37
41
  import {
38
42
  findDueReports
39
43
  } from "./chunk-PZR4EBPY.js";
@@ -41,23 +45,21 @@ import {
41
45
  parseAddresses,
42
46
  sendApprovedReports,
43
47
  withGlobalCc
44
- } from "./chunk-2ZAZ7ETT.js";
48
+ } from "./chunk-LDHRIQUW.js";
49
+ import "./chunk-TEMQPSCM.js";
50
+ import "./chunk-BRYXFH77.js";
51
+ import "./chunk-P7323YVW.js";
45
52
  import {
46
53
  isPendingApproval
47
- } from "./chunk-F3JWOPTG.js";
54
+ } from "./chunk-ASLDCWBF.js";
48
55
  import {
49
56
  checklistFor,
50
57
  gatingFields,
51
58
  isHealthGateClear
52
59
  } from "./chunk-VAD43MOR.js";
53
- import "./chunk-BRYXFH77.js";
54
- import "./chunk-XPJQXSC4.js";
55
- import {
56
- fromAirtableBase
57
- } from "./chunk-5GUJ36TL.js";
58
- import "./chunk-IY6256GK.js";
60
+ import "./chunk-YJBSB4LP.js";
59
61
  import "./chunk-HN6I2XWI.js";
60
- import "./chunk-HTABUCF4.js";
62
+ import "./chunk-6THEZQLA.js";
61
63
  import "./chunk-GECESMVS.js";
62
64
  import {
63
65
  BLURRED_CID,
@@ -71,24 +73,30 @@ import {
71
73
  safeUrl
72
74
  } from "./chunk-BGTYPVLT.js";
73
75
  import {
76
+ CANVAS,
77
+ SCREEN,
74
78
  domainFromUrl,
75
79
  generateHeaderImage,
76
80
  loadHeadline,
77
81
  loadPlate
78
- } from "./chunk-5UINJNAJ.js";
82
+ } from "./chunk-LZMAG73U.js";
83
+ import {
84
+ listWebsites,
85
+ toAirtableStatus
86
+ } from "./chunk-TC4GANMX.js";
79
87
  import {
80
88
  CANONICAL_STATUSES,
81
89
  SEVERITY_RANK,
82
- siteSlug,
83
- toAirtableStatus
84
- } from "./chunk-3Z6X3BHU.js";
90
+ siteSlug
91
+ } from "./chunk-ICSRWW5Q.js";
92
+ import "./chunk-RQJFGK3A.js";
85
93
  import "./chunk-WEKL2HYJ.js";
86
94
  import "./chunk-T7ZUUOZ2.js";
87
95
  import {
88
96
  syncConfigs
89
- } from "./chunk-FUWFLAWQ.js";
90
- import "./chunk-ZQV7UQNE.js";
97
+ } from "./chunk-3RLDX3Q2.js";
91
98
  import "./chunk-SLFG7Y76.js";
99
+ import "./chunk-LUF52EIY.js";
92
100
  import "./chunk-OTGB6YQO.js";
93
101
  import {
94
102
  ALL_AUDIT_NAMES,
@@ -98,33 +106,33 @@ import {
98
106
  runAudits,
99
107
  runAuditsAcross,
100
108
  securityAudit
101
- } from "./chunk-TO7DJYLZ.js";
109
+ } from "./chunk-L3S3QZXL.js";
102
110
  import "./chunk-LKGVSM2O.js";
103
- import "./chunk-GASBX52O.js";
104
- import "./chunk-XHHMM5HX.js";
111
+ import "./chunk-MVKNU4QD.js";
112
+ import "./chunk-43SW3FGW.js";
105
113
  import {
106
114
  fromJsonFile,
107
115
  localPath
108
116
  } from "./chunk-Z3JXLULD.js";
109
- import "./chunk-BI2VI6EM.js";
110
- import "./chunk-VSGMCCGQ.js";
111
- import "./chunk-C3IQQKXL.js";
117
+ import "./chunk-YXWBM26P.js";
118
+ import "./chunk-MMSMZC7S.js";
112
119
  import {
113
120
  lighthouseAudit
114
- } from "./chunk-2NQUCS7O.js";
121
+ } from "./chunk-BIYQN7FH.js";
115
122
  import "./chunk-UDRHAQT7.js";
116
123
  import "./chunk-PTDMVGKL.js";
117
124
  import "./chunk-LBYOLBW7.js";
125
+ import "./chunk-IOTOOTII.js";
118
126
  import "./chunk-A3WDWNN5.js";
119
127
  import {
120
128
  isLeadFormType
121
129
  } from "./chunk-2OP4JKIQ.js";
122
130
  import "./chunk-RARREDQE.js";
123
131
  import "./chunk-XXTZBPUY.js";
124
- import "./chunk-AVEQUR44.js";
132
+ import "./chunk-WMF5S2MB.js";
125
133
  import "./chunk-6VAL7XJT.js";
126
134
  import "./chunk-NMAWXBJA.js";
127
- import "./chunk-YLYXW5PH.js";
135
+ import "./chunk-CXICCLNM.js";
128
136
 
129
137
  // src/recipes/index.ts
130
138
  var ALL_RECIPE_NAMES = [
@@ -146,6 +154,18 @@ function isRecipeName(value) {
146
154
  return ALL_RECIPE_NAMES.includes(value);
147
155
  }
148
156
 
157
+ // src/inventory/airtable.ts
158
+ function fromAirtableBase(base, opts = {}) {
159
+ return async () => {
160
+ const workdir = requireFleetWorkdir(opts.workdir, "fromAirtableBase");
161
+ const websites = await listWebsites(base);
162
+ return selectFleetSites(websites, workdir).map((s) => ({
163
+ ...s,
164
+ meta: { airtableRowId: s.meta?.siteId, ...s.meta }
165
+ }));
166
+ };
167
+ }
168
+
149
169
  // src/dashboard/favicon.ts
150
170
  var REDDOOR_FAVICON_PNG_BASE64 = "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAACXBIWXMAAAAnAAAAJwEqCZFPAAAAk1BMVEVHcEzkGTfjGDbjGTfjGTfjGTfjGTfjGDbjGDbjGTfjGTfjGTfkGTfjGTfjGDbjGDbkGTfjGDbjGDbjGTfjGTfjGDbjGTfjGDbjGTfjGDbjGTfjGTfjGDbjGDbjGDbjGDbjGTfjGTbjGDbjGDbjGDbjGDbjGTfjGTfjGTfjGDbjGDbjGTfjGDbjGDbjGTfjGTbkGTfxxbwzAAAALXRSTlMA4DABMOD8cOBwDltwi+bFLMlk54/BDVPk/I61/u2cFaBw9nqO1izBIQE+Becdo6eEAAABBElEQVQ4y91SCVYCMQwt4kxbcEHFfUFFcMGf9P6nM0kXEPEAmtdJs+cnU+f+He2fIIEAYuVgkmvDfTG9Rh+6LoRBUBqE7gi09l9eAeeTrZJoFd5uQWfj4VbPvRqwmj9zfzP6CYpyi48F6HW5A3WuMHsEPsfvO8cSkMPTe+pfRr/MTckdg+4enqL3PkYf/YFIqiiP8VAw6EZkH6QEO0xJLUhmdbY5+TjHkCVohprlcpzlnJw9GlNkrZC16uCmWIaAZItNrT4xV0T2yxrIWoNKy4rdVXOq0MycWp4r43FOMQWciibMYaOHCXKSPhapqTupGFAnwHoVuUUZq7jaSkqDb0/uD9MXqvJMDtU7lL0AAAAASUVORK5CYII=";
151
171
  var FAVICON_LINK = `<link rel="icon" type="image/png" href="data:image/png;base64,${REDDOOR_FAVICON_PNG_BASE64}" />`;
@@ -245,7 +265,13 @@ function renderSubmissionRowInner(s) {
245
265
  const reasonChip = reasonTokens.length > 0 ? ` <span class="subm-reasons">${escapeHtml(reasonChipText(reasonTokens))}</span>` : "";
246
266
  const provenance = s.status === "spam_auto" && s.spamScore !== null && s.spamScore !== void 0 ? ` <span class="subm-provenance" title="${escapeHtml(s.spamReason ?? "")}">auto-spam \xB7 ${escapeHtml(String(s.spamScore))}</span>${reasonChip}` : "";
247
267
  const recover = s.status === "spam_auto" ? btn("Not spam \u2192 new", "new") : "";
248
- const bounceChip = s.notifyStatus === "bounced" ? ` <span class="subm-bounce" title="The lead notification email bounced \u2014 the point-of-contact address may be dead">notify bounced</span>` : "";
268
+ const bouncePermanent = (s.bounceType ?? "").toLowerCase() === "permanent";
269
+ const bounceAcked = typeof s.bounceAckAt === "string" && s.bounceAckAt !== "";
270
+ const bounceLabel = s.bounceSubType ?? s.bounceType ?? null;
271
+ const bounceTitle = bouncePermanent ? "The lead notification email bounced \u2014 the point-of-contact address may be dead" : bounceLabel !== null ? "The receiving server refused this message \u2014 the client's mail filter is rejecting lead notifications, which is not the same as a dead address" : "The lead notification email bounced \u2014 Resend recorded no classification for it";
272
+ const bounceChipText = `notify bounced${bounceLabel !== null ? ` \xB7 ${bounceLabel}` : ""}${bounceAcked ? " \xB7 acknowledged" : ""}`;
273
+ const bounceChip = s.notifyStatus === "bounced" ? ` <span class="subm-bounce${bounceAcked ? " acked" : ""}" title="${escapeHtml(bounceTitle)}">${escapeHtml(bounceChipText)}</span>` : "";
274
+ const ackBounce = s.notifyStatus === "bounced" && !bounceAcked ? `<button class="subm-status" data-id="${id}" data-ack="notify-bounce" data-url="${url}">Not dead \u2014 acknowledge</button>` : "";
249
275
  const fanoutBad = fanoutFailures(s.fanoutStatus);
250
276
  const fanoutChip = fanoutBad.length > 0 ? ` <span class="subm-fanout-fail" title="This signup did not reach every configured destination">fan-out: ${escapeHtml(fanoutBad.join(" \xB7 "))}</span>` : "";
251
277
  const kv = (label, value) => value === null || value === "" ? "" : `<div class="subm-kv"><span class="k">${label}</span> ${escapeHtml(String(value))}</div>`;
@@ -261,6 +287,11 @@ function renderSubmissionRowInner(s) {
261
287
  extraFieldsList(s.extraFields),
262
288
  kv("Spam", spamDetail),
263
289
  kv("Notify", s.notifyStatus),
290
+ kv("Bounce", [s.bounceType, s.bounceSubType].filter((x) => !!x).join(" / ")),
291
+ // The receiving server's own words — the single most useful line when
292
+ // deciding whether an address is dead or a filter is being strict.
293
+ kv("Bounce message", s.bounceMessage ?? null),
294
+ kv("Bounce acknowledged", s.bounceAckAt ?? null),
264
295
  kv("Fan-out", s.fanoutStatus ?? null),
265
296
  kv("Resend ID", s.resendMessageId),
266
297
  kv("Submission #", s.submissionId)
@@ -269,7 +300,7 @@ function renderSubmissionRowInner(s) {
269
300
  <summary class="subm-head"><strong>${type}</strong> \xB7 ${who} <span class="muted">${email}</span> <span class="pill subm-${status}">${status}</span>${provenance}${bounceChip}${fanoutChip} <span class="muted">${when}</span></summary>
270
301
  <div class="subm-detail">${details}</div>
271
302
  </details>
272
- <div class="subm-actions">${recover}${btn("Read", "read")}${btn("Archive", "archived")}${btn("Spam", "spam")}</div>`;
303
+ <div class="subm-actions">${recover}${ackBounce}${btn("Read", "read")}${btn("Archive", "archived")}${btn("Spam", "spam")}</div>`;
273
304
  }
274
305
  function renderSubmissionRow(s) {
275
306
  return `<li class="subm-item">${renderSubmissionRowInner(s)}</li>`;
@@ -296,6 +327,7 @@ button.subm-status:disabled { opacity: 0.6; cursor: default; }
296
327
  .pill.subm-spam_auto { background: #fff4e5; color: #a65a00; }
297
328
  .subm-provenance { font-size: 0.72rem; border-radius: 0.25rem; padding: 0 0.35rem; white-space: nowrap; background: #fff4e5; color: #a65a00; }
298
329
  .subm-bounce { font-size: 0.72rem; border-radius: 0.25rem; padding: 0 0.35rem; white-space: nowrap; background: #fdecea; color: #b00; font-weight: 700; }
330
+ .subm-bounce.acked { background: #f0f0f0; color: #666; font-weight: 400; }
299
331
  .subm-fanout-fail { font-size: 0.72rem; border-radius: 0.25rem; padding: 0 0.35rem; white-space: nowrap; background: #fdecea; color: #b00; font-weight: 700; }
300
332
  .subm-reasons { font-size: 0.72rem; color: #999; }
301
333
  .subm-viewall { font-size: 0.8rem; font-weight: normal; margin-left: 0.4rem; white-space: nowrap; }`;
@@ -306,7 +338,9 @@ var SUBMISSION_STATUS_SCRIPT = `document.querySelectorAll("button.subm-status").
306
338
  const res = await fetch(b.dataset.url, {
307
339
  method: "POST",
308
340
  headers: { "content-type": "application/json" },
309
- body: JSON.stringify({ status: b.dataset.status }),
341
+ body: JSON.stringify(
342
+ b.dataset.ack ? { ack: b.dataset.ack } : { status: b.dataset.status },
343
+ ),
310
344
  });
311
345
  b.textContent = res.ok ? "\u2713" : "Failed";
312
346
  if (!res.ok) b.disabled = false;
@@ -866,7 +900,7 @@ function renderSiteDashboardHtml(site, reports, submissions = [], spamTotals = n
866
900
  const name = escapeHtml(site.name);
867
901
  const urlSafe = safeUrl(site.url);
868
902
  const allScoresNull = site.pScore === null && site.rScore === null && site.bpScore === null && site.seoScore === null;
869
- const scoresSection = allScoresNull ? `<div class="empty">No lighthouse data yet \u2014 run <code>reddoor-maint audit --write-airtable</code> from the site checkout.</div>` : `<div class="tiles">
903
+ const scoresSection = allScoresNull ? `<div class="empty">No lighthouse data yet \u2014 run <code>reddoor-maint audit --write-back</code> from the site checkout.</div>` : `<div class="tiles">
870
904
  ${scoreTile("Performance", site.pScore)}
871
905
  ${scoreTile("Accessibility", site.rScore)}
872
906
  ${scoreTile("Best Practices", site.bpScore)}
@@ -874,7 +908,7 @@ function renderSiteDashboardHtml(site, reports, submissions = [], spamTotals = n
874
908
  </div>`;
875
909
  const secTotal = securityTotal(site);
876
910
  const allHealthNull = site.a11yViolations === null && site.depsDrifted === null && secTotal === null;
877
- const healthSection = allHealthNull ? `<div class="empty">No health data yet \u2014 run <code>reddoor-maint audit --write-airtable</code> from the site checkout.</div>` : `<div class="tiles">
911
+ const healthSection = allHealthNull ? `<div class="empty">No health data yet \u2014 run <code>reddoor-maint audit --write-back</code> from the site checkout.</div>` : `<div class="tiles">
878
912
  ${healthTile("Accessibility issues", site.a11yViolations, null)}
879
913
  ${healthTile("Dependency updates", site.depsDrifted, depsSub(site.depsMajorBehind))}
880
914
  ${healthTile("Security alerts", secTotal, securitySub(site))}
@@ -1638,6 +1672,14 @@ function renderArchivedLane(model) {
1638
1672
  ).join("");
1639
1673
  return `<details class="archived"><summary>\u{1F5C4} Archived (${rows.length})</summary>${lis}</details>`;
1640
1674
  }
1675
+ function renderCardlessLane(model) {
1676
+ const items = model.cardless ?? [];
1677
+ if (items.length === 0) return "";
1678
+ const rows = items.map(
1679
+ (i) => `<div class="approve-row"><strong>${escapeHtml(i.siteName)}</strong> <span class="muted">${escapeHtml(i.title)}</span></div>`
1680
+ ).join("");
1681
+ return `<details class="cardless"><summary>\u26A0 Not on any site card (${items.length})</summary>${rows}</details>`;
1682
+ }
1641
1683
  function renderInboxLane(model) {
1642
1684
  const subs = model.submissions ?? [];
1643
1685
  const spam = model.spam;
@@ -1812,6 +1854,7 @@ function renderCockpitHtml(model, operatorEmail = null) {
1812
1854
  ${renderFleetBrowsePanel(model)}
1813
1855
  ${renderRecentlyLane(model)}
1814
1856
  ${renderArchivedLane(model)}
1857
+ ${renderCardlessLane(model)}
1815
1858
  ${renderInboxLane(model)}
1816
1859
  ${AUDIT_SCRIPT}
1817
1860
  ${FLEET_BROWSE_SCRIPT}
@@ -1854,8 +1897,10 @@ export {
1854
1897
  ALL_AUDIT_NAMES,
1855
1898
  ALL_RECIPE_NAMES,
1856
1899
  BLURRED_CID,
1900
+ CANVAS,
1857
1901
  CHECK_CID,
1858
1902
  DEFAULT_INIT_STEPS,
1903
+ SCREEN,
1859
1904
  a11yAudit,
1860
1905
  a11yFixturesPage,
1861
1906
  bumpDeps,