tuffgal 0.1.0-alpha.9 → 0.2.0-alpha.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 (89) hide show
  1. package/CHANGELOG.md +149 -2
  2. package/README.md +78 -3
  3. package/dist/cli.d.ts +50 -0
  4. package/dist/cli.d.ts.map +1 -1
  5. package/dist/cli.js +204 -18
  6. package/dist/cli.js.map +1 -1
  7. package/dist/commands/init.d.ts +1 -1
  8. package/dist/commands/init.d.ts.map +1 -1
  9. package/dist/commands/init.js +11 -1
  10. package/dist/commands/init.js.map +1 -1
  11. package/dist/config.d.ts +38 -1
  12. package/dist/config.d.ts.map +1 -1
  13. package/dist/config.js +20 -1
  14. package/dist/config.js.map +1 -1
  15. package/dist/coverage/screens.d.ts +11 -6
  16. package/dist/coverage/screens.d.ts.map +1 -1
  17. package/dist/coverage/screens.js +12 -7
  18. package/dist/coverage/screens.js.map +1 -1
  19. package/dist/reporter/assets/report.css +415 -51
  20. package/dist/reporter/assets/report.js +502 -68
  21. package/dist/reporter/template.d.ts +8 -1
  22. package/dist/reporter/template.d.ts.map +1 -1
  23. package/dist/reporter/template.js +517 -85
  24. package/dist/reporter/template.js.map +1 -1
  25. package/dist/reporter/writeReport.d.ts +2 -2
  26. package/dist/reporter/writeReport.d.ts.map +1 -1
  27. package/dist/reporter/writeReport.js +3 -3
  28. package/dist/reporter/writeReport.js.map +1 -1
  29. package/dist/runner/approve.d.ts +34 -9
  30. package/dist/runner/approve.d.ts.map +1 -1
  31. package/dist/runner/approve.js +54 -10
  32. package/dist/runner/approve.js.map +1 -1
  33. package/dist/runner/approveFrom.d.ts +58 -0
  34. package/dist/runner/approveFrom.d.ts.map +1 -0
  35. package/dist/runner/approveFrom.js +384 -0
  36. package/dist/runner/approveFrom.js.map +1 -0
  37. package/dist/runner/breakpointPasses.d.ts +39 -0
  38. package/dist/runner/breakpointPasses.d.ts.map +1 -0
  39. package/dist/runner/breakpointPasses.js +107 -0
  40. package/dist/runner/breakpointPasses.js.map +1 -0
  41. package/dist/runner/bridges/database.d.ts +4 -3
  42. package/dist/runner/bridges/database.d.ts.map +1 -1
  43. package/dist/runner/bridges/database.js +4 -3
  44. package/dist/runner/bridges/database.js.map +1 -1
  45. package/dist/runner/exitCode.d.ts +34 -0
  46. package/dist/runner/exitCode.d.ts.map +1 -0
  47. package/dist/runner/exitCode.js +41 -0
  48. package/dist/runner/exitCode.js.map +1 -0
  49. package/dist/runner/manifest.d.ts +149 -0
  50. package/dist/runner/manifest.d.ts.map +1 -0
  51. package/dist/runner/manifest.js +229 -0
  52. package/dist/runner/manifest.js.map +1 -0
  53. package/dist/runner/mode.d.ts +41 -0
  54. package/dist/runner/mode.d.ts.map +1 -0
  55. package/dist/runner/mode.js +43 -0
  56. package/dist/runner/mode.js.map +1 -0
  57. package/dist/runner/orphanScan.d.ts +68 -0
  58. package/dist/runner/orphanScan.d.ts.map +1 -0
  59. package/dist/runner/orphanScan.js +150 -0
  60. package/dist/runner/orphanScan.js.map +1 -0
  61. package/dist/runner/run.d.ts +85 -1
  62. package/dist/runner/run.d.ts.map +1 -1
  63. package/dist/runner/run.js +267 -41
  64. package/dist/runner/run.js.map +1 -1
  65. package/dist/runner/runAction.d.ts +16 -0
  66. package/dist/runner/runAction.d.ts.map +1 -1
  67. package/dist/runner/runAction.js +112 -13
  68. package/dist/runner/runAction.js.map +1 -1
  69. package/dist/runner/runStory.d.ts +15 -4
  70. package/dist/runner/runStory.d.ts.map +1 -1
  71. package/dist/runner/runStory.js +41 -19
  72. package/dist/runner/runStory.js.map +1 -1
  73. package/dist/runner/storyFilter.d.ts +8 -0
  74. package/dist/runner/storyFilter.d.ts.map +1 -1
  75. package/dist/runner/storyFilter.js +11 -0
  76. package/dist/runner/storyFilter.js.map +1 -1
  77. package/dist/schema/action.d.ts +11 -11
  78. package/dist/schema/result.d.ts +125 -6
  79. package/dist/schema/result.d.ts.map +1 -1
  80. package/dist/schema/result.js.map +1 -1
  81. package/dist/screenshots/baselineStore.d.ts +92 -10
  82. package/dist/screenshots/baselineStore.d.ts.map +1 -1
  83. package/dist/screenshots/baselineStore.js +102 -18
  84. package/dist/screenshots/baselineStore.js.map +1 -1
  85. package/dist/screenshots/capture.d.ts +10 -5
  86. package/dist/screenshots/capture.d.ts.map +1 -1
  87. package/dist/screenshots/capture.js +31 -18
  88. package/dist/screenshots/capture.js.map +1 -1
  89. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/reporter/template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/reporter/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AASrC,MAAM,aAAa,GAAiC;IAClD,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,GAAG,EAAE,cAAc;CACpB,CAAC;AAEF;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,OAAO,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;AACrC,CAAC;AAED,MAAM,cAAc,GAAiC;IACnD,IAAI,EAAE,GAAG;IACT,OAAO,EAAE,GAAG;IACZ,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,GAAG;IACZ,GAAG,EAAE,GAAG;CACT,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,YAAY,CAC1B,MAAiB,EACjB,SAAiB,EACjB,eAAe,GAAG,KAAK;IAEvB,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAChD,OAAO;;;;;;8BAMqB,SAAS;;;;;;;;0BAQb,MAAM,CAAC,UAAU,KAAK,SAAS;;4CAEb,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC;;;;QAIrE,iBAAiB,CAAC,MAAM,CAAC;QACzB,aAAa,CAAC,MAAM,CAAC;QACrB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC;QACjD,aAAa,CAAC,MAAM,CAAC;;;;;CAK5B,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,aAAa,CAAC,MAAiB;IACtC,OAAO;;;;MAIH,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,qBAAqB,CAAC;MACnF,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,4BAA4B,CAAC;MAC1F,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,CAAC;MAChF,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,6BAA6B,CAAC;MAChG,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,4BAA4B,CAAC;;;;;;;;IAQ9F,uBAAuB,CAAC,MAAM,CAAC;;CAElC,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,mBAAmB,CAC1B,MAAiB;IAEjB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,QAAQ,GAA4D,EAAE,CAAC;IAC7E,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnC,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC;gBACZ,GAAG;gBACH,KAAK,EAAE,MAAM,CAAC,eAAe;gBAC7B,MAAM,EAAE,MAAM,CAAC,gBAAgB;aAChC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAS,uBAAuB,CAAC,MAAiB;IAChD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtE,OAAO;;;;;IAKL,KAAK;;CAER,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CAAC,EAIzB;IACC,MAAM,QAAQ,GAAG,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,eAAe,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,QAAQ;QACnB,CAAC,CAAC,6DAA6D;QAC/D,CAAC,CAAC,GAAG,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IAC5B,MAAM,UAAU,GACd,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS;QAC/C,CAAC,CAAC,2DAA2D,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,iCAAiC,EAAE,CAAC,KAAK,OAAO,EAAE,CAAC,MAAM,gBAAgB;QAC3J,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,2EAA2E,UAAU,CAAC,KAAK,CAAC;kEACnC,IAAI,UAAU,UAAU;YAC9E,CAAC;AACb,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,aAAa,CACpB,KAAa,EACb,KAAa,EACb,MAA4B,EAC5B,OAAgB,EAChB,YAAoB;IAEpB,OAAO;wCAC+B,MAAM;0CACJ,MAAM,KAAK,KAAK,oEAAoE,MAAM,mBAAmB,OAAO,kEAAkE,MAAM,mCAAmC,KAAK,gCAAgC,YAAY;;;CAGzT,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAS,iBAAiB,CAAC,MAAiB;IAC1C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACvC,IAAI,WAAW,EAAE,QAAQ,KAAK,IAAI,EAAE,CAAC;QACnC,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,kBAAkB,GACtB,WAAW,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;QACrC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC;IAC7C,MAAM,IAAI,GAAG,kBAAkB;QAC7B,CAAC,CAAC,mIAAmI;QACrI,CAAC,CAAC;;QAEE,WAAW,CAAC,YAAY;aACvB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC;aACxD,IAAI,CAAC,UAAU,CAAC;UACf,CAAC;IACT,OAAO;;;IAGL,IAAI;;CAEP,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,MAAiB;IACtC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO;SACzB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;SACzC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClB,OAAO;;;;;MAKH,KAAK;;;CAGV,CAAC;AACF,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAsB;IAChD,MAAM,UAAU,GACd,KAAK,CAAC,UAAU,KAAK,QAAQ;QAC3B,CAAC,CAAC,6DAA6D;QAC/D,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACnC,OAAO,aAAa,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,UAAU,OAAO,CAAC;AAC3E,CAAC;AAED,SAAS,aAAa,CACpB,MAAiB,EACjB,SAAiB,EACjB,eAAwB;IAExB,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO;SACzB,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACpB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,eAAe,CAAC,CACtD;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;IACpC,2EAA2E;IAC3E,8EAA8E;IAC9E,0EAA0E;IAC1E,6EAA6E;IAC7E,OAAO;;;mGAG0F,KAAK;;;MAGlG,KAAK;;;;CAIV,CAAC;AACF,CAAC;AAED,SAAS,WAAW,CAClB,KAAkB,EAClB,UAAkB,EAClB,SAAiB,EACjB,eAAwB;IAExB,OAAO;iCACwB,KAAK,CAAC,MAAM;;oDAEO,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC;4BACpD,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC;+BACxB,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;mCAClB,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC;;2BAExC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;;IAE9C,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC;;CAEpE,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAS,kBAAkB,CACzB,KAAkB,EAClB,UAAkB,EAClB,SAAiB,EACjB,eAAwB;IAExB,6DAA6D;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,IAAI,GAAG,EAGpB,CAAC;IACJ,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,UAAU,KAAK,WAAW,EAAE,EAAE,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,2EAA2E;IAC3E,6EAA6E;IAC7E,wEAAwE;IACxE,0EAA0E;IAC1E,4DAA4D;IAC5D,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO;aAC1B,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAC3B,YAAY,CACV,MAAM,EACN,IAAI,UAAU,KAAK,WAAW,EAAE,EAChC,SAAS,EACT,eAAe,CAChB,CACF;aACA,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,6DAA6D,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;MAC7G,OAAO;QACL,CAAC;IACP,CAAC;IAED,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CACvB,qBAAqB,CACnB,GAAG,EACH,OAAO,CAAC,GAAG,CAAC,GAAG,CAAE,EACjB,IAAI,UAAU,MAAM,UAAU,EAAE,EAChC,SAAS,EACT,eAAe,CAChB,CACF;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAS,qBAAqB,CAC5B,GAAW,EACX,OAAoD,EACpD,OAAe,EACf,SAAiB,EACjB,eAAwB;IAExB,MAAM,OAAO,GAAG,GAAG,OAAO,QAAQ,CAAC;IACnC,MAAM,IAAI,GAAG,GAAG,CAAC;IACjB,uEAAuE;IACvE,8EAA8E;IAC9E,0EAA0E;IAC1E,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACpC,MAAM,UAAU,GACd,QAAQ,EAAE,eAAe,KAAK,SAAS;QACvC,QAAQ,CAAC,gBAAgB,KAAK,SAAS;QACrC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,QAAQ,CAAC,gBAAgB,EAAE;QACxE,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,eAAe,GAAG,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,MAAM,OAAO,GAAG,OAAO;SACpB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CACtB,YAAY,CAAC,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,eAAe,CAAC,CACrD;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO;iDACwC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;oCAC7C,OAAO;oCACP,UAAU,CAAC,IAAI,CAAC;MAC9C,eAAe;;;yCAGoB,OAAO;MAC1C,OAAO;;;CAGZ,CAAC;AACF,CAAC;AAED,SAAS,YAAY,CACnB,MAAoB,EACpB,QAAgB,EAChB,SAAiB,EACjB,eAAwB;IAExB,MAAM,WAAW,GAAG,iBAAiB,CACnC,MAAM,EACN,QAAQ,EACR,SAAS,EACT,eAAe,CAChB,CAAC;IACF,MAAM,UAAU,GACd,MAAM,CAAC,MAAM,KAAK,QAAQ;QACxB,CAAC,CAAC,6BAA6B,UAAU,CAAC,MAAM,CAAC,cAAc,IAAI,eAAe,CAAC,QAAQ;QAC3F,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAEvD,MAAM,QAAQ,GAAG;EACjB,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;4BACA,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;gCACrB,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC;CAChE,CAAC;IAEA,MAAM,GAAG,GAAG,WAAW;QACrB,CAAC,CAAC;;;MAGA,QAAQ;;;IAGV,WAAW;WACJ;QACP,CAAC,CAAC;;IAEF,QAAQ;;CAEX,CAAC;IAEA,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEnD,OAAO;kCACyB,MAAM,CAAC,MAAM;IAC3C,GAAG;IACH,UAAU;IACV,UAAU;IACV,KAAK;;CAER,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAS,iBAAiB,CAAC,MAAoB,EAAE,SAAiB;IAChE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QAC3D,KAAK,CAAC,IAAI,CACR,sGAAsG,CACvG,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACrC,MAAM,WAAW,GACf,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrE,MAAM,UAAU,GACd,WAAW,KAAK,SAAS;YACvB,CAAC,CAAC,4CAA4C,UAAU,CAAC,WAAW,CAAC,UAAU;YAC/E,CAAC,CAAC,EAAE,CAAC;QACT,KAAK,CAAC,IAAI,CACR,yEAAyE,UAAU,MAAM,CAC1F,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,gBAAgB,CACvB,UAA8C;IAE9C,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;SACvC,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,OAAO,UAAU,CAAC,GAAG,CAAC,YAAY,UAAU,CAAC,KAAK,CAAC,OAAO,CAC7D;SACA,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,OAAO,iCAAiC,OAAO,OAAO,CAAC;AACzD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,MAAoB;IAC7C,OAAO,CACL,MAAM,CAAC,SAAS,KAAK,SAAS;QAC9B,MAAM,CAAC,MAAM,KAAK,SAAS;QAC3B,CAAC,CAAC,MAAM,CAAC,cAAc,CACxB,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAoB,EACpB,QAAgB,EAChB,SAAiB,EACjB,eAAwB;IAExB,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAC/C,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,kEAAkE;IAClE,4EAA4E;IAC5E,8EAA8E;IAC9E,EAAE;IACF,6EAA6E;IAC7E,+EAA+E;IAC/E,uEAAuE;IACvE,2EAA2E;IAC3E,6EAA6E;IAC7E,qEAAqE;IACrE,MAAM,gBAAgB,GACpB,MAAM,CAAC,YAAY,KAAK,SAAS;QACjC,MAAM,CAAC,UAAU,KAAK,SAAS;QAC/B,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC5B,IAAI,eAAe,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACzC,OAAO,4BAA4B,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IACnE,CAAC;IACD,+EAA+E;IAC/E,6EAA6E;IAC7E,+EAA+E;IAC/E,4EAA4E;IAC5E,MAAM,QAAQ,GACZ,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK;QAC5C,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC;QAClD,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU;QAC9B,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC;QAChD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ;QAC1B,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC;QAC9C,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,UAAU,GAAG,QAAQ,CAAC;IAC5B,MAAM,SAAS,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC7C,MAAM,UAAU,GACd,SAAS,CAAC,UAAU,CAAC,KAAK,SAAS;QACjC,CAAC,CAAC,UAAU;QACZ,CAAC,CAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAW,CAAC,IAAI,CAC5C,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,SAAS,CACxC,CAAC;IACR,MAAM,WAAW,GAAG,GAAG,QAAQ,aAAa,CAAC;IAC7C,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvD,+EAA+E;IAC/E,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,sDAAsD;IACtD,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACtD,6EAA6E;IAC7E,2EAA2E;IAC3E,+EAA+E;IAC/E,6EAA6E;IAC7E,kEAAkE;IAClE,MAAM,WAAW,GAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAW,CAAC,MAAM,CAClE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,SAAS,CACxC,CAAC;IACF,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,IAAI,GAAG,SAAS,CACpB,QAAQ,EACR,IAAI,EACJ,SAAS,CAAC,IAAI,CAAC,EACf,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EACtB,IAAI,CACL,CAAC;QACF,OAAO,GAAG,SAAS,GAAG,IAAI,EAAE,CAAC;IAC/B,CAAC;IACD,OAAO;iDACwC,UAAU;;IAEvD,SAAS,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,KAAK,SAAS,EAAE,UAAU,KAAK,UAAU,CAAC;IAClF,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,KAAK,SAAS,EAAE,UAAU,KAAK,QAAQ,CAAC;IAC5E,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,KAAK,SAAS,EAAE,UAAU,KAAK,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACxI,SAAS;;EAEX,SAAS,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,KAAK,UAAU,CAAC;EAC/F,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,KAAK,QAAQ,CAAC;EACvF,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,KAAK,MAAM,EAAE,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;CAC1I,CAAC;AACF,CAAC;AAED,qFAAqF;AACrF,MAAM,QAAQ,GAGV;IACF,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,sBAAsB;IAC5D,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,kCAAkC;IACtE,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CACf,0BAA0B,MAAM,CAAC,MAAM,mCAAmC;CAC7E,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,SAAS,eAAe,CAAC,MAAoB,EAAE,WAAmB;IAChE,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,OAAO,6BAA6B,WAAW,yBAAyB,UAAU,CAAC,CAAC,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,+EAA+E,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC;IAC7Q,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1D,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY;QAC/B,CAAC,CAAC,2CAA2C,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG;QAC3I,CAAC,CAAC,kBAAkB,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;IAC1D,OAAO,qDAAqD,WAAW,yBAAyB,KAAK,aAAa,CAAC;AACrH,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,aAAa,CAAC,IAAuC;IAC5D,OAAO,0DAA0D,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,gCAAgC,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,MAAM,gBAAgB,CAAC;AACzK,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAS,4BAA4B,CACnC,MAAoB,EACpB,QAAgB,EAChB,SAAiB;IAEjB,+EAA+E;IAC/E,6EAA6E;IAC7E,+EAA+E;IAC/E,gFAAgF;IAChF,MAAM,QAAQ,GACZ,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK;QAC5C,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC;QAClD,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU;QAC9B,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC;QAChD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ;QAC1B,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC;QAC9C,CAAC,CAAC,SAAS,CAAC;IAEd,6EAA6E;IAC7E,0EAA0E;IAC1E,8EAA8E;IAC9E,8DAA8D;IAC9D,MAAM,SAAS,GACb,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IAC/C,MAAM,YAAY,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAExE,6EAA6E;IAC7E,+EAA+E;IAC/E,iFAAiF;IACjF,6EAA6E;IAC7E,oEAAoE;IACpE,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,MAAM,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CACvB,CAAC,MAAM,CAAC;IACT,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;;;;WAIA,UAAU,CAAC,YAAY,CAAC;WACxB,UAAU,CAAC,iBAAiB,MAAM,CAAC,MAAM,EAAE,CAAC;;;;CAItD,CAAC;IACA,CAAC;IAED,MAAM,WAAW,GAAG,GAAG,QAAQ,aAAa,CAAC;IAC7C,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEvD,MAAM,MAAM,GAAG;QACb,QAAQ,KAAK,SAAS;YACpB,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,KAAK,UAAU,EAAE;gBAC/D,KAAK,EAAE,UAAU;aAClB,CAAC;YACJ,CAAC,CAAC,EAAE;QACN,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,KAAK,QAAQ,EAAE;gBAC3D,KAAK,EAAE,QAAQ;aAChB,CAAC;YACJ,CAAC,CAAC,EAAE;QACN,IAAI,KAAK,SAAS;YAChB,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE;gBACxC,KAAK,EAAE,MAAM;gBACb,aAAa,EAAE,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;aAC1D,CAAC;YACJ,CAAC,CAAC,EAAE;KACP,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEX,MAAM,YAAY,GAAG,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IACpE,MAAM,OAAO,GAAG;QACd,QAAQ,KAAK,SAAS;YACpB,CAAC,CAAC,uBAAuB,UAAU,CAAC,QAAQ,CAAC,GAAG;YAChD,CAAC,CAAC,EAAE;QACN,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,qBAAqB,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACtE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,mBAAmB,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;KACjE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEX,OAAO;;4BAEmB,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;IACjD,MAAM;2FACiF,YAAY;IACnG,SAAS;;;;;WAKF,UAAU,CAAC,YAAY,CAAC;WACxB,UAAU,CAAC,iBAAiB,MAAM,CAAC,MAAM,EAAE,CAAC;;MAEjD,OAAO;;;CAGZ,CAAC;AACF,CAAC;AAED,SAAS,SAAS,CAChB,QAAgB,EAChB,IAAY,EACZ,QAAiB,EACjB,OAAgB,EAChB,IAAiD;IAEjD,MAAM,OAAO,GAAG,GAAG,QAAQ,UAAU,IAAI,EAAE,CAAC;IAC5C,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC;IAClC,MAAM,WAAW,GAAG,IAAI,EAAE,aAAa;QACrC,CAAC,CAAC,sBAAsB,IAAI,CAAC,aAAa,GAAG;QAC7C,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;cACK,OAAO;;;YAGT,QAAQ;UACV,OAAO;aACJ,IAAI;gBACD,IAAI,IAAI,WAAW;MAC7B,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;MAC1B,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;;IAE1B,KAAK;;CAER,CAAC;AACF,CAAC;AAED,SAAS,SAAS,CAChB,QAAgB,EAChB,IAAY,EACZ,GAAuB,EACvB,GAAW,EACX,OAAgB,EAChB,aAAsB;IAEtB,OAAO;;;cAGK,QAAQ,IAAI,IAAI;cAChB,IAAI;IACd,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ;;IAGvB,GAAG;QACD,CAAC,CAAC,aAAa,UAAU,CAAC,GAAG,CAAC,UAAU,UAAU,CAAC,GAAG,CAAC,mBAAmB,aAAa,CAAC,CAAC,CAAC,sBAAsB,aAAa,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK;QAC1I,CAAC,CAAC,8BAA8B,IAAI,iCACxC;;CAED,CAAC;AACF,CAAC;AAED,SAAS,WAAW,CAAC,MAAoB;IACvC,OAAO;oCAC2B,MAAM;0BAChB,aAAa,CAAC,MAAM,CAAC;kDACG,aAAa,CAAC,MAAM,CAAC;;CAEtE,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAiB,EAAE,QAAgB;IAC3D,OAAO,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,WAAW,GAAG;IAClB,SAAS;IACT,UAAU;IACV,OAAO;IACP,OAAO;IACP,KAAK;IACL,MAAM;IACN,MAAM;IACN,QAAQ;IACR,WAAW;IACX,SAAS;IACT,UAAU;IACV,UAAU;CACX,CAAC;AAEF,SAAS,UAAU,CAAC,GAAW;IAC7B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,MAAM,OAAO,GAAG,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC;IACvD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3D,OAAO,GAAG,KAAK,IAAI,GAAG,KAAK,OAAO,IAAI,OAAO,GAAG,QAAQ,EAAE,CAAC;AAC7D,CAAC;AAED,SAAS,cAAc,CAAC,EAAU;IAChC,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,EAAE,IAAI,CAAC;IAChC,OAAO,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACtC,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,KAAK;SACT,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC9B,CAAC"}
@@ -2,7 +2,7 @@ import type { RunResult } from '../schema/result.ts';
2
2
  /**
3
3
  * Writes the HTML report, the static CSS/JS assets, and the raw `results.json`
4
4
  * to the configured report directory. The JSON file is what `tuffgal approve`
5
- * reads to locate actuals that should be promoted to baselines.
5
+ * reads to locate the actuals it copies into the local comparison cache.
6
6
  */
7
- export declare function writeReport(reportDir: string, result: RunResult): Promise<string>;
7
+ export declare function writeReport(reportDir: string, result: RunResult, interactiveMode: boolean): Promise<string>;
8
8
  //# sourceMappingURL=writeReport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"writeReport.d.ts","sourceRoot":"","sources":["../../src/reporter/writeReport.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAMrD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,MAAM,CAAC,CAmBjB"}
1
+ {"version":3,"file":"writeReport.d.ts","sourceRoot":"","sources":["../../src/reporter/writeReport.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAMrD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,EACjB,eAAe,EAAE,OAAO,GACvB,OAAO,CAAC,MAAM,CAAC,CAmBjB"}
@@ -7,11 +7,11 @@ const ASSETS_SOURCE_DIR = join(moduleDir, 'assets');
7
7
  /**
8
8
  * Writes the HTML report, the static CSS/JS assets, and the raw `results.json`
9
9
  * to the configured report directory. The JSON file is what `tuffgal approve`
10
- * reads to locate actuals that should be promoted to baselines.
10
+ * reads to locate the actuals it copies into the local comparison cache.
11
11
  */
12
- export async function writeReport(reportDir, result) {
12
+ export async function writeReport(reportDir, result, interactiveMode) {
13
13
  await mkdir(join(reportDir, 'assets'), { recursive: true });
14
- const html = renderReport(result, reportDir);
14
+ const html = renderReport(result, reportDir, interactiveMode);
15
15
  const htmlPath = join(reportDir, 'index.html');
16
16
  await writeFile(htmlPath, html, 'utf8');
17
17
  await writeFile(join(reportDir, 'results.json'), JSON.stringify(result, null, 2), 'utf8');
@@ -1 +1 @@
1
- {"version":3,"file":"writeReport.js","sourceRoot":"","sources":["../../src/reporter/writeReport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAEpD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,MAAiB;IAEjB,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAC/C,MAAM,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,MAAM,SAAS,CACb,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,EAC/B,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAC/B,MAAM,CACP,CAAC;IACF,MAAM,QAAQ,CACZ,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,EACrC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CACxC,CAAC;IACF,MAAM,QAAQ,CACZ,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,EACpC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CACvC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"writeReport.js","sourceRoot":"","sources":["../../src/reporter/writeReport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAEpD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,MAAiB,EACjB,eAAwB;IAExB,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAC/C,MAAM,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,MAAM,SAAS,CACb,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,EAC/B,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAC/B,MAAM,CACP,CAAC;IACF,MAAM,QAAQ,CACZ,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,EACrC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CACxC,CAAC;IACF,MAAM,QAAQ,CACZ,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,EACpC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CACvC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -2,24 +2,49 @@ import type { ResolvedConfig } from '../config.ts';
2
2
  export interface ApproveOptions {
3
3
  storyFilter?: string;
4
4
  /**
5
- * When `true`, only promote actions whose status is `new` (i.e. baselines
5
+ * When `true`, only refresh actions whose status is `new` (i.e. cache entries
6
6
  * that don't exist yet). Actions with status `changed` are counted as
7
- * skipped. Lets users baseline newly-introduced stories without accepting
8
- * drift on existing baselines.
7
+ * skipped. Lets users cache newly-introduced stories without accepting drift
8
+ * on existing cache entries.
9
9
  */
10
10
  newOnly?: boolean;
11
+ /**
12
+ * When non-empty, only refresh actions whose `breakpoint` is in this set
13
+ * (matched by mode name, e.g. `desktop`). Lets a reviewer accept a drift at
14
+ * one viewport without touching the others. Empty/undefined approves every
15
+ * breakpoint. Composes with `storyFilter` and `newOnly` as an AND filter.
16
+ */
17
+ breakpoints?: string[];
11
18
  }
12
19
  export interface ApproveSummary {
13
20
  approved: number;
14
21
  skipped: number;
15
22
  }
16
23
  /**
17
- * Reads `<report>/results.json` from the previous run and promotes every
18
- * `changed` or `new` action's actual screenshot to its baseline. The
19
- * accessibility-tree snapshot (`a11y.yaml`) is promoted alongside the PNG
20
- * so the a11y baseline stays in lock-step with the visual one. Optional
21
- * `storyFilter` limits the approval to one story file. Optional `newOnly`
22
- * limits promotion to `new` actions, leaving `changed` baselines untouched.
24
+ * `approve` is dual-mode. Plain `approve` (this module, {@link approveAll})
25
+ * refreshes the local per-machine comparison cache (`paths.localCache`) from the
26
+ * last run's `<report>/results.json`. Advisory — it never writes committed
27
+ * baselines. The other half, `approve --from <dir>` (`approveFrom`), promotes a
28
+ * CI candidate tree into the committed `paths.baselines` set and lives in its
29
+ * own module (`approveFrom.ts`), since the two commands share no code beyond the
30
+ * `copyRecompressedPng` helper.
31
+ */
32
+ /**
33
+ * Reads `<report>/results.json` from the previous run and refreshes the local
34
+ * comparison cache with every `changed` or `new` action's actual screenshot.
35
+ * The accessibility-tree snapshot (`a11y.yaml`) travels alongside the PNG so
36
+ * the cached a11y baseline stays in lock-step with the visual one. The optional
37
+ * filters — `storyFilter` (one story), `breakpoints` (named modes), and
38
+ * `newOnly` (new not changed) — compose as an AND: an action is refreshed only
39
+ * when it clears every filter that was supplied.
40
+ *
41
+ * This command targets `paths.localCache` ONLY. It never writes the committed
42
+ * `paths.baselines` set — those are owned by CI and written solely through the
43
+ * approval flow (`approve --from`, a later wave). Each recorded baseline path is
44
+ * re-rooted onto `paths.localCache`, keeping its `<action>/<file>` tail, so a
45
+ * plain `approve` refreshes the cache regardless of which mode produced the run
46
+ * (the recorded root may be the cache or, for an older CI run's results, the
47
+ * committed baselines dir — either way the copy lands in the cache).
23
48
  */
24
49
  export declare function approveAll(config: ResolvedConfig, options: ApproveOptions): Promise<ApproveSummary>;
25
50
  //# sourceMappingURL=approve.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"approve.d.ts","sourceRoot":"","sources":["../../src/runner/approve.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAOnD,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC,CAsCzB"}
1
+ {"version":3,"file":"approve.d.ts","sourceRoot":"","sources":["../../src/runner/approve.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAOnD,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC,CA0DzB"}
@@ -1,16 +1,34 @@
1
1
  import { readFile } from 'node:fs/promises';
2
- import { join } from 'node:path';
3
- import { copyToBaseline } from "../screenshots/baselineStore.js";
2
+ import { basename, dirname, join } from 'node:path';
3
+ import { copyRecompressedPng } from "../screenshots/baselineStore.js";
4
4
  import { parseRunResult } from "../schema/result.js";
5
5
  import { pathExists } from "../util.js";
6
6
  import { storyMatchesFilter } from "./storyFilter.js";
7
7
  /**
8
- * Reads `<report>/results.json` from the previous run and promotes every
9
- * `changed` or `new` action's actual screenshot to its baseline. The
10
- * accessibility-tree snapshot (`a11y.yaml`) is promoted alongside the PNG
11
- * so the a11y baseline stays in lock-step with the visual one. Optional
12
- * `storyFilter` limits the approval to one story file. Optional `newOnly`
13
- * limits promotion to `new` actions, leaving `changed` baselines untouched.
8
+ * `approve` is dual-mode. Plain `approve` (this module, {@link approveAll})
9
+ * refreshes the local per-machine comparison cache (`paths.localCache`) from the
10
+ * last run's `<report>/results.json`. Advisory — it never writes committed
11
+ * baselines. The other half, `approve --from <dir>` (`approveFrom`), promotes a
12
+ * CI candidate tree into the committed `paths.baselines` set and lives in its
13
+ * own module (`approveFrom.ts`), since the two commands share no code beyond the
14
+ * `copyRecompressedPng` helper.
15
+ */
16
+ /**
17
+ * Reads `<report>/results.json` from the previous run and refreshes the local
18
+ * comparison cache with every `changed` or `new` action's actual screenshot.
19
+ * The accessibility-tree snapshot (`a11y.yaml`) travels alongside the PNG so
20
+ * the cached a11y baseline stays in lock-step with the visual one. The optional
21
+ * filters — `storyFilter` (one story), `breakpoints` (named modes), and
22
+ * `newOnly` (new not changed) — compose as an AND: an action is refreshed only
23
+ * when it clears every filter that was supplied.
24
+ *
25
+ * This command targets `paths.localCache` ONLY. It never writes the committed
26
+ * `paths.baselines` set — those are owned by CI and written solely through the
27
+ * approval flow (`approve --from`, a later wave). Each recorded baseline path is
28
+ * re-rooted onto `paths.localCache`, keeping its `<action>/<file>` tail, so a
29
+ * plain `approve` refreshes the cache regardless of which mode produced the run
30
+ * (the recorded root may be the cache or, for an older CI run's results, the
31
+ * committed baselines dir — either way the copy lands in the cache).
14
32
  */
15
33
  export async function approveAll(config, options) {
16
34
  const resultsPath = join(config.paths.report, 'results.json');
@@ -18,6 +36,11 @@ export async function approveAll(config, options) {
18
36
  throw new Error(`No prior run found at ${resultsPath}. Run \`tuffgal run\` first.`);
19
37
  });
20
38
  const result = parseRunResult(raw, resultsPath);
39
+ // An empty/undefined breakpoint list means "every breakpoint"; otherwise only
40
+ // actions tagged with one of these mode names are eligible.
41
+ const breakpointFilter = options.breakpoints && options.breakpoints.length > 0
42
+ ? new Set(options.breakpoints)
43
+ : undefined;
21
44
  let approved = 0;
22
45
  let skipped = 0;
23
46
  for (const story of result.stories) {
@@ -26,15 +49,21 @@ export async function approveAll(config, options) {
26
49
  continue;
27
50
  }
28
51
  for (const action of story.actions) {
52
+ if (breakpointFilter &&
53
+ (action.breakpoint === undefined ||
54
+ !breakpointFilter.has(action.breakpoint))) {
55
+ skipped += 1;
56
+ continue;
57
+ }
29
58
  if (!isApprovable(action, options.newOnly === true)) {
30
59
  skipped += 1;
31
60
  continue;
32
61
  }
33
- await copyToBaseline(action.actualPath, action.baselinePath);
62
+ await copyRecompressedPng(action.actualPath, cacheDestination(config, action.baselinePath));
34
63
  if (action.a11yActualPath &&
35
64
  action.a11yBaselinePath &&
36
65
  (await pathExists(action.a11yActualPath))) {
37
- await copyToBaseline(action.a11yActualPath, action.a11yBaselinePath);
66
+ await copyRecompressedPng(action.a11yActualPath, cacheDestination(config, action.a11yBaselinePath));
38
67
  }
39
68
  approved += 1;
40
69
  process.stdout.write(` approved ${action.action}\n`);
@@ -42,6 +71,21 @@ export async function approveAll(config, options) {
42
71
  }
43
72
  return { approved, skipped };
44
73
  }
74
+ /**
75
+ * Re-roots a recorded baseline path onto `paths.localCache`, preserving its
76
+ * trailing `<action>/<file>` layout. Every baseline path `pathsFor` emits is
77
+ * exactly `<root>/<action>/<file>` (action names are validated lowercase-kebab
78
+ * with no slashes), so keeping the last two segments and re-joining under the
79
+ * cache is a mode-agnostic remap: it lands the copy in the cache whether the
80
+ * run recorded a cache-rooted path (local mode) or a baselines-rooted one (an
81
+ * older CI run's results). The committed `paths.baselines` set is never a
82
+ * destination here.
83
+ */
84
+ function cacheDestination(config, baselinePath) {
85
+ const actionDir = basename(dirname(baselinePath));
86
+ const file = basename(baselinePath);
87
+ return join(config.paths.localCache, actionDir, file);
88
+ }
45
89
  function isApprovable(action, newOnly) {
46
90
  if (action.status !== 'changed' && action.status !== 'new') {
47
91
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"approve.js","sourceRoot":"","sources":["../../src/runner/approve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAkBtD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAsB,EACtB,OAAuB;IAEvB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACzD,MAAM,IAAI,KAAK,CACb,yBAAyB,WAAW,8BAA8B,CACnE,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAChD,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnC,IACE,OAAO,CAAC,WAAW;YACnB,CAAC,kBAAkB,CACjB,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,EAAE,EAC5C,OAAO,CAAC,WAAW,CACpB,EACD,CAAC;YACD,SAAS;QACX,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,EAAE,CAAC;gBACpD,OAAO,IAAI,CAAC,CAAC;gBACb,SAAS;YACX,CAAC;YACD,MAAM,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC7D,IACE,MAAM,CAAC,cAAc;gBACrB,MAAM,CAAC,gBAAgB;gBACvB,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EACzC,CAAC;gBACD,MAAM,cAAc,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;YACvE,CAAC;YACD,QAAQ,IAAI,CAAC,CAAC;YACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AAC/B,CAAC;AAOD,SAAS,YAAY,CACnB,MAAoB,EACpB,OAAgB;IAEhB,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QAC3D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"approve.js","sourceRoot":"","sources":["../../src/runner/approve.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import type { ResolvedConfig } from '../config.ts';
2
+ export interface ApproveFromOptions {
3
+ /** Absolute (or cwd-relative) path to the candidate tree to promote. */
4
+ from: string;
5
+ /**
6
+ * When `true`, delete committed baseline entries the candidate run's
7
+ * `results.json` recorded as orphaned (`results.deleted`). Prune targets are
8
+ * always recomputed locally under `paths.baselines` from each entry's
9
+ * `action`/`breakpoint` — never the artifact's own `baselinePaths[]` strings,
10
+ * which describe another machine's filesystem.
11
+ */
12
+ prune?: boolean;
13
+ }
14
+ export interface ApproveFromSummary {
15
+ /** Baseline PNG files written (a11y companions not counted). */
16
+ written: number;
17
+ /** Baseline file groups pruned (`--prune`); `0` without it. */
18
+ pruned: number;
19
+ }
20
+ /**
21
+ * Error thrown when the candidate tree fails a trust-boundary check. Carries no
22
+ * extra data — the message is the whole contract. Distinct type so the CLI can
23
+ * present it plainly; every throw here happens BEFORE any write, so the promise
24
+ * rejecting guarantees `paths.baselines` was not touched.
25
+ */
26
+ export declare class ApproveFromError extends Error {
27
+ constructor(message: string);
28
+ }
29
+ /**
30
+ * Promotes a CI candidate tree (`<dir>/<action>/<breakpoint>.png` + optional
31
+ * `.a11y.yaml`, plus a top-level `results.json`) into the committed
32
+ * `paths.baselines` set, and writes `<baselines>/manifest.json` from the
33
+ * candidate run's captured environment.
34
+ *
35
+ * TRUST BOUNDARY. `<dir>` is an untrusted artifact — a human or bot unzipped it
36
+ * from CI. This is the only path that writes committed baselines, so it is
37
+ * fail-closed and validate-all-then-write:
38
+ * 1. `results.json` must parse, describe a clean CI run (`mode: 'ci'` with
39
+ * `totals.failed === 0` — never promote a local or broken run's partial
40
+ * tree, see {@link assertPromotableRun}), and carry a well-shaped
41
+ * `environment.actual` block (validated against the manifest shape, not
42
+ * just present).
43
+ * 2. Every tree entry is validated (allowed shape, safe names, no symlinks, no
44
+ * traversal) and every PNG is decoded to prove it is a real PNG.
45
+ * 3. ONLY after the whole tree passes are any bytes written. A single bad
46
+ * entry aborts with {@link ApproveFromError} and zero filesystem changes.
47
+ *
48
+ * Every candidate file's bytes are read once during phase 1 and RETAINED for
49
+ * phase 2, which writes exactly those bytes — the sources are never re-read, so
50
+ * the committed baseline is provably the payload that passed validation (no
51
+ * decode-swap / symlink-swap window between the check and the write).
52
+ *
53
+ * PNGs are written through {@link writePng} (decode→recompress→encode), so the
54
+ * promoted baseline is losslessly recompressed and provably decodable in one
55
+ * step — never a raw `copyFile` of unvalidated artifact bytes.
56
+ */
57
+ export declare function approveFrom(config: ResolvedConfig, options: ApproveFromOptions): Promise<ApproveFromSummary>;
58
+ //# sourceMappingURL=approveFrom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approveFrom.d.ts","sourceRoot":"","sources":["../../src/runner/approveFrom.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AA2BnD,MAAM,WAAW,kBAAkB;IACjC,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,MAAM,EAAE,MAAM,CAAC;CAChB;AAuBD;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,kBAAkB,CAAC,CAuC7B"}