@huydao/karrot 0.1.5 → 0.1.6
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.
- package/dist/reports/report.js +52 -42
- package/package.json +1 -1
package/dist/reports/report.js
CHANGED
|
@@ -279,60 +279,70 @@ function buildScenarioRunHtml(payload) {
|
|
|
279
279
|
'<meta name="viewport" content="width=device-width, initial-scale=1" />',
|
|
280
280
|
`<title>${escapeHtml(`${payload.projectName} AI Scenario Report`)}</title>`,
|
|
281
281
|
'<style>',
|
|
282
|
-
'
|
|
283
|
-
'
|
|
284
|
-
'
|
|
285
|
-
'.
|
|
286
|
-
'.hero
|
|
287
|
-
'.summary-
|
|
288
|
-
'.
|
|
289
|
-
'.
|
|
290
|
-
'.
|
|
291
|
-
'.
|
|
292
|
-
'.summary-
|
|
293
|
-
'.
|
|
294
|
-
'.
|
|
295
|
-
'.
|
|
296
|
-
'.
|
|
282
|
+
':root{--ink:#0b1220;--text:#273247;--muted:#6f7b91;--line:#e3ebf5;--panel:#fff;--panel-soft:#f8fafd;--page:#eaf1f8;--blue:#2f63e5;--blue-dark:#153f9f;--green:#3f9a8f;--red:#dc3d4d;--amber:#b7791f;--shadow:0 14px 34px rgba(21,45,85,.08);}',
|
|
283
|
+
'*{box-sizing:border-box;}',
|
|
284
|
+
'body{margin:0;font-family:"Avenir Next","Nunito Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 8% -10%,rgba(47,99,229,.13),transparent 26rem),linear-gradient(180deg,#edf4fb 0%,var(--page) 100%);color:var(--text);font-size:15px;line-height:1.55;}',
|
|
285
|
+
'.page{max-width:1360px;margin:0 auto;padding:24px 18px 56px;}',
|
|
286
|
+
'.hero,.summary-card,.panel,.turn-card,.scenario-card{position:relative;background:var(--panel);border:1px solid #d8e3f0;border-radius:10px;box-shadow:var(--shadow);overflow:hidden;}',
|
|
287
|
+
'.hero::before,.summary-card::before,.panel::before,.turn-card::before,.scenario-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#071326 0%,var(--blue) 78%,#4b7cff 100%);}',
|
|
288
|
+
'.hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:26px 30px 24px;margin-bottom:22px;}',
|
|
289
|
+
'.hero h1{grid-column:1/-1;margin:0 0 2px;color:var(--ink);font-size:29px;line-height:1.16;font-weight:700;letter-spacing:-.02em;}',
|
|
290
|
+
'.hero p{margin:0;color:var(--muted);font-weight:700;}',
|
|
291
|
+
'.hero strong{color:var(--ink);font-weight:700;}',
|
|
292
|
+
'.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin:0 0 18px;}',
|
|
293
|
+
'.summary-card{padding:22px 22px 18px;min-height:124px;}',
|
|
294
|
+
'.summary-card .label,.score-card .label,.meta-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;margin-bottom:8px;}',
|
|
295
|
+
'.summary-card .value{font-size:31px;line-height:1.06;font-weight:700;color:var(--ink);letter-spacing:-.025em;}',
|
|
296
|
+
'.summary-card .sub{margin-top:8px;font-size:14px;color:var(--muted);font-weight:700;}',
|
|
297
|
+
'.panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:18px;}',
|
|
298
|
+
'.panel{padding:22px;}',
|
|
299
|
+
'.panel h2{margin:0 0 14px;color:var(--ink);font-size:17px;line-height:1.22;font-weight:700;letter-spacing:-.01em;}',
|
|
300
|
+
'.panel pre{margin:0;white-space:pre-wrap;word-break:break-word;background:var(--panel-soft);border:1px solid #edf2f8;border-radius:6px;padding:14px;font-size:13px;color:#334155;}',
|
|
297
301
|
'.scenario-list{display:grid;gap:18px;}',
|
|
298
|
-
'.scenario-card summary{list-style:none;display:
|
|
302
|
+
'.scenario-card summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(160px,36%);gap:14px;align-items:center;padding:20px 24px 18px;cursor:pointer;}',
|
|
299
303
|
'.scenario-card summary::-webkit-details-marker{display:none;}',
|
|
300
|
-
'.scenario-title{font-weight:700;font-size:
|
|
301
|
-
'.summary-note{color
|
|
302
|
-
'.scenario-body{padding:0
|
|
303
|
-
'.meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(
|
|
304
|
-
'.meta-grid>div{background
|
|
305
|
-
'.
|
|
306
|
-
'.turn-card{
|
|
307
|
-
'.turn-card h4,.content-block h5{margin:0 0 10px;}',
|
|
304
|
+
'.scenario-title{font-weight:700;font-size:17px;color:var(--ink);letter-spacing:-.01em;overflow-wrap:anywhere;}',
|
|
305
|
+
'.summary-note{color:var(--muted);font-size:14px;font-weight:400;text-align:right;overflow-wrap:anywhere;}',
|
|
306
|
+
'.scenario-body{padding:0 24px 24px;}',
|
|
307
|
+
'.meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:8px 0 18px;}',
|
|
308
|
+
'.meta-grid>div{background:var(--panel-soft);border:1px solid #edf2f8;border-radius:6px;padding:13px 14px;}',
|
|
309
|
+
'.turn-card{padding:22px;margin-top:16px;border-radius:8px;box-shadow:0 10px 24px rgba(21,45,85,.06);}',
|
|
310
|
+
'.turn-card h4{margin:0 0 14px;color:var(--ink);font-size:16px;font-weight:700;letter-spacing:0;}',
|
|
308
311
|
'.content-block{margin-top:14px;}',
|
|
309
|
-
'.content-block
|
|
310
|
-
'.content-block p{margin:0;background
|
|
311
|
-
'.
|
|
312
|
+
'.content-block h5{margin:0 0 8px;color:var(--ink);font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;}',
|
|
313
|
+
'.content-block pre,.content-block p{margin:0;background:var(--panel-soft);border:1px solid #edf2f8;border-radius:6px;padding:14px;}',
|
|
314
|
+
'.content-block pre{white-space:pre-wrap;word-break:break-word;max-height:420px;overflow:auto;color:#29364b;}',
|
|
315
|
+
'.assertions,.evaluations{width:100%;border-collapse:separate;border-spacing:0 8px;font-size:14px;}',
|
|
312
316
|
'.assertions{table-layout:fixed;}',
|
|
313
|
-
'.assertions th,.assertions td,.evaluations th,.evaluations td{padding:10px 12px;
|
|
314
|
-
'.assertions th,.evaluations th{font-size:
|
|
317
|
+
'.assertions th,.assertions td,.evaluations th,.evaluations td{padding:10px 12px;vertical-align:top;text-align:left;}',
|
|
318
|
+
'.assertions th,.evaluations th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;}',
|
|
319
|
+
'.assertions tbody tr,.evaluations tbody tr{background:var(--panel-soft);}',
|
|
320
|
+
'.assertions tbody td,.evaluations tbody td{border-top:1px solid #edf2f8;border-bottom:1px solid #edf2f8;}',
|
|
321
|
+
'.assertions tbody td:first-child,.evaluations tbody td:first-child{border-left:1px solid #edf2f8;border-radius:6px 0 0 6px;}',
|
|
322
|
+
'.assertions tbody td:last-child,.evaluations tbody td:last-child{border-right:1px solid #edf2f8;border-radius:0 6px 6px 0;}',
|
|
315
323
|
'.assertions td{word-break:break-word;overflow-wrap:anywhere;}',
|
|
316
324
|
'.assertions th:nth-child(1),.assertions td:nth-child(1){width:8%;}',
|
|
317
325
|
'.assertions th:nth-child(2),.assertions td:nth-child(2){width:12%;}',
|
|
318
326
|
'.assertions th:nth-child(3),.assertions td:nth-child(3){width:34%;}',
|
|
319
327
|
'.assertions th:nth-child(4),.assertions td:nth-child(4){width:16%;}',
|
|
320
328
|
'.assertions th:nth-child(5),.assertions td:nth-child(5){width:30%;}',
|
|
321
|
-
'.assertions .assertion-expected-object{margin:0;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;background:#
|
|
322
|
-
'.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px
|
|
323
|
-
'.badge.pass{background:#
|
|
324
|
-
'.badge.fail{background:#
|
|
325
|
-
'.badge.skip{background:#
|
|
326
|
-
'.
|
|
329
|
+
'.assertions .assertion-expected-object{margin:0;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;background:#fff;border:1px solid #e5edf7;border-radius:6px;padding:12px;font-size:12px;line-height:1.45;max-height:none;overflow:visible;}',
|
|
330
|
+
'.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:900;min-width:58px;letter-spacing:.02em;}',
|
|
331
|
+
'.badge.pass{background:#e4f8ef;color:#157347;}',
|
|
332
|
+
'.badge.fail{background:#ffe8eb;color:#b42332;}',
|
|
333
|
+
'.badge.skip{background:#edf2f7;color:#4a5568;}',
|
|
334
|
+
'.scenario-card.pass::before{background:linear-gradient(90deg,#071326 0%,#22a06b 100%);}',
|
|
335
|
+
'.scenario-card.fail::before{background:linear-gradient(90deg,#071326 0%,var(--red) 100%);}',
|
|
336
|
+
'.scenario-card.skip::before{background:linear-gradient(90deg,#071326 0%,#8a94a6 100%);}',
|
|
337
|
+
'.dimension-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 11px;margin:0 6px 6px 0;background:#eef4ff;color:var(--blue);font-size:12px;font-weight:900;}',
|
|
327
338
|
'.score-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;}',
|
|
328
|
-
'.score-card{background
|
|
329
|
-
'.score-card .
|
|
330
|
-
'.score-
|
|
331
|
-
'.
|
|
332
|
-
'.muted{color:#7c8ba1;}',
|
|
339
|
+
'.score-card{background:var(--panel-soft);border:1px solid #edf2f8;border-radius:6px;padding:14px;}',
|
|
340
|
+
'.score-card .value{font-size:23px;font-weight:700;color:var(--ink);letter-spacing:-.015em;}',
|
|
341
|
+
'.score-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 11px;background:#e8f0ff;color:var(--blue);font-weight:900;min-width:58px;}',
|
|
342
|
+
'.muted{color:#8a95a8;}',
|
|
333
343
|
'code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:12px;word-break:break-all;}',
|
|
334
|
-
'.footer{margin
|
|
335
|
-
'@media (max-width:900px){.scenario-card summary{
|
|
344
|
+
'.footer{margin:24px 4px 0;color:var(--muted);font-size:13px;font-weight:700;}',
|
|
345
|
+
'@media (max-width:900px){.hero{display:block;padding:24px 20px;}.hero p{margin-top:6px;}.scenario-card summary{grid-template-columns:1fr;align-items:start;}.summary-note{text-align:left;}.page{padding:14px 10px 40px;}.assertions,.evaluations{display:block;overflow-x:auto;white-space:normal;}.summary-card .value{font-size:30px;}}',
|
|
336
346
|
'</style>',
|
|
337
347
|
'</head>',
|
|
338
348
|
'<body>',
|