plum-e2e 1.2.0 → 1.2.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.
- package/backend/_scaffold/utils/browser.ts +1 -0
- package/backend/package-lock.json +2 -2
- package/backend/package.json +1 -1
- package/bin/plum.js +2 -7
- package/frontend/.svelte-kit/adapter-node/.vite/manifest.json +190 -0
- package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/Badge.DLLowvEA.css +17 -0
- package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/Button.cBruH0aD.css +17 -0
- package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_layout.D7eM-6MV.css +17 -0
- package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.BVnUajEa.css +17 -0
- package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.CGnCsn5q.css +17 -0
- package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.DBhBrHFz.css +17 -0
- package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.DOqo0UR4.css +17 -0
- package/frontend/.svelte-kit/adapter-node/chunks/Badge.js +30 -0
- package/frontend/.svelte-kit/adapter-node/chunks/Button.js +32 -0
- package/frontend/.svelte-kit/adapter-node/chunks/attributes.js +34 -0
- package/frontend/.svelte-kit/adapter-node/chunks/client.js +59 -0
- package/frontend/.svelte-kit/adapter-node/chunks/equality.js +31 -0
- package/frontend/.svelte-kit/adapter-node/chunks/escaping.js +36 -0
- package/frontend/.svelte-kit/adapter-node/chunks/exports.js +247 -0
- package/frontend/.svelte-kit/adapter-node/chunks/index.js +1135 -0
- package/frontend/.svelte-kit/adapter-node/chunks/internal.js +695 -0
- package/frontend/.svelte-kit/adapter-node/chunks/reports.js +57 -0
- package/frontend/.svelte-kit/adapter-node/entries/fallbacks/error.svelte.js +44 -0
- package/frontend/.svelte-kit/adapter-node/entries/pages/_layout.svelte.js +181 -0
- package/frontend/.svelte-kit/adapter-node/entries/pages/_page.svelte.js +164 -0
- package/frontend/.svelte-kit/adapter-node/entries/pages/reports/_page.svelte.js +141 -0
- package/frontend/.svelte-kit/adapter-node/entries/pages/reports/_slug_/_page.svelte.js +42 -0
- package/frontend/.svelte-kit/adapter-node/entries/pages/scheduled-tests/_page.svelte.js +179 -0
- package/frontend/.svelte-kit/adapter-node/index.js +3144 -0
- package/frontend/.svelte-kit/adapter-node/internal.js +30 -0
- package/frontend/.svelte-kit/adapter-node/manifest-full.js +77 -0
- package/frontend/.svelte-kit/adapter-node/manifest.js +81 -0
- package/frontend/.svelte-kit/adapter-node/nodes/0.js +25 -0
- package/frontend/.svelte-kit/adapter-node/nodes/1.js +25 -0
- package/frontend/.svelte-kit/adapter-node/nodes/2.js +25 -0
- package/frontend/.svelte-kit/adapter-node/nodes/3.js +25 -0
- package/frontend/.svelte-kit/adapter-node/nodes/4.js +25 -0
- package/frontend/.svelte-kit/adapter-node/nodes/5.js +25 -0
- package/frontend/.svelte-kit/ambient.d.ts +240 -0
- package/frontend/.svelte-kit/generated/client/app.js +51 -0
- package/frontend/.svelte-kit/generated/client/matchers.js +18 -0
- package/frontend/.svelte-kit/generated/client/nodes/0.js +18 -0
- package/frontend/.svelte-kit/generated/client/nodes/1.js +18 -0
- package/frontend/.svelte-kit/generated/client/nodes/2.js +18 -0
- package/frontend/.svelte-kit/generated/client/nodes/3.js +18 -0
- package/frontend/.svelte-kit/generated/client/nodes/4.js +18 -0
- package/frontend/.svelte-kit/generated/client/nodes/5.js +18 -0
- package/frontend/.svelte-kit/generated/client-optimized/app.js +51 -0
- package/frontend/.svelte-kit/generated/client-optimized/matchers.js +18 -0
- package/frontend/.svelte-kit/generated/client-optimized/nodes/0.js +18 -0
- package/frontend/.svelte-kit/generated/client-optimized/nodes/1.js +18 -0
- package/frontend/.svelte-kit/generated/client-optimized/nodes/2.js +18 -0
- package/frontend/.svelte-kit/generated/client-optimized/nodes/3.js +18 -0
- package/frontend/.svelte-kit/generated/client-optimized/nodes/4.js +18 -0
- package/frontend/.svelte-kit/generated/client-optimized/nodes/5.js +18 -0
- package/frontend/.svelte-kit/generated/root.js +20 -0
- package/frontend/.svelte-kit/generated/root.svelte +83 -0
- package/frontend/.svelte-kit/generated/server/internal.js +65 -0
- package/frontend/.svelte-kit/non-ambient.d.ts +42 -0
- package/frontend/.svelte-kit/output/client/.vite/manifest.json +289 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/0.CnXRuPt4.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/2.CGnCsn5q.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/3.BVnUajEa.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/4.DBhBrHFz.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/5.D93VAB-w.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/Badge.DLLowvEA.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/Button.cBruH0aD.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/_layout.D7eM-6MV.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.BVnUajEa.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.CGnCsn5q.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.DBhBrHFz.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.DOqo0UR4.css +17 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/B0bn91RF.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/B1kE5jmt.js +23 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BKz6FZdB.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/Be4iUAB0.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BpaMqo9O.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/Bt3-Z7H1.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CHV2KnPr.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CJ8q7g9Y.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/Cit9MuSg.js +20 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CwBTqcbj.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DBk3zeq4.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DFJLQFic.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DTUE7kkY.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/IYPwzKs_.js +20 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/oc0we5Us.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/chunks/rVEKg0Ak.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/entry/app.C2MbX06K.js +19 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/entry/start.GiBry-lw.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/nodes/0.BsCYK-Tn.js +21 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/nodes/1.N4gjrCnX.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/nodes/2.D9yQNzK8.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/nodes/3.CBC5WvNb.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/nodes/4.BU6UZHSE.js +19 -0
- package/frontend/.svelte-kit/output/client/_app/immutable/nodes/5.Dzzfrntl.js +18 -0
- package/frontend/.svelte-kit/output/client/_app/version.json +1 -0
- package/frontend/.svelte-kit/output/client/favicon.png +0 -0
- package/frontend/.svelte-kit/output/server/.vite/manifest.json +190 -0
- package/frontend/.svelte-kit/output/server/_app/immutable/assets/Badge.DLLowvEA.css +17 -0
- package/frontend/.svelte-kit/output/server/_app/immutable/assets/Button.cBruH0aD.css +17 -0
- package/frontend/.svelte-kit/output/server/_app/immutable/assets/_layout.D7eM-6MV.css +17 -0
- package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.BVnUajEa.css +17 -0
- package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.CGnCsn5q.css +17 -0
- package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.DBhBrHFz.css +17 -0
- package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.DOqo0UR4.css +17 -0
- package/frontend/.svelte-kit/output/server/chunks/Badge.js +30 -0
- package/frontend/.svelte-kit/output/server/chunks/Button.js +32 -0
- package/frontend/.svelte-kit/output/server/chunks/attributes.js +34 -0
- package/frontend/.svelte-kit/output/server/chunks/client.js +59 -0
- package/frontend/.svelte-kit/output/server/chunks/equality.js +31 -0
- package/frontend/.svelte-kit/output/server/chunks/escaping.js +36 -0
- package/frontend/.svelte-kit/output/server/chunks/exports.js +247 -0
- package/frontend/.svelte-kit/output/server/chunks/index.js +1135 -0
- package/frontend/.svelte-kit/output/server/chunks/internal.js +695 -0
- package/frontend/.svelte-kit/output/server/chunks/reports.js +57 -0
- package/frontend/.svelte-kit/output/server/entries/fallbacks/error.svelte.js +44 -0
- package/frontend/.svelte-kit/output/server/entries/pages/_layout.svelte.js +181 -0
- package/frontend/.svelte-kit/output/server/entries/pages/_page.svelte.js +164 -0
- package/frontend/.svelte-kit/output/server/entries/pages/reports/_page.svelte.js +141 -0
- package/frontend/.svelte-kit/output/server/entries/pages/reports/_slug_/_page.svelte.js +42 -0
- package/frontend/.svelte-kit/output/server/entries/pages/scheduled-tests/_page.svelte.js +179 -0
- package/frontend/.svelte-kit/output/server/index.js +3144 -0
- package/frontend/.svelte-kit/output/server/internal.js +30 -0
- package/frontend/.svelte-kit/output/server/manifest-full.js +77 -0
- package/frontend/.svelte-kit/output/server/manifest.js +77 -0
- package/frontend/.svelte-kit/output/server/nodes/0.js +25 -0
- package/frontend/.svelte-kit/output/server/nodes/1.js +25 -0
- package/frontend/.svelte-kit/output/server/nodes/2.js +25 -0
- package/frontend/.svelte-kit/output/server/nodes/3.js +25 -0
- package/frontend/.svelte-kit/output/server/nodes/4.js +25 -0
- package/frontend/.svelte-kit/output/server/nodes/5.js +25 -0
- package/frontend/.svelte-kit/tsconfig.json +49 -0
- package/frontend/build/client/_app/immutable/assets/0.CnXRuPt4.css +17 -0
- package/frontend/build/client/_app/immutable/assets/0.CnXRuPt4.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/0.CnXRuPt4.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/2.CGnCsn5q.css +17 -0
- package/frontend/build/client/_app/immutable/assets/2.CGnCsn5q.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/2.CGnCsn5q.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/3.BVnUajEa.css +17 -0
- package/frontend/build/client/_app/immutable/assets/3.BVnUajEa.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/3.BVnUajEa.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/4.DBhBrHFz.css +17 -0
- package/frontend/build/client/_app/immutable/assets/4.DBhBrHFz.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/4.DBhBrHFz.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/5.D93VAB-w.css +17 -0
- package/frontend/build/client/_app/immutable/assets/5.D93VAB-w.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/5.D93VAB-w.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/Badge.DLLowvEA.css +17 -0
- package/frontend/build/client/_app/immutable/assets/Badge.DLLowvEA.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/Badge.DLLowvEA.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/Button.cBruH0aD.css +17 -0
- package/frontend/build/client/_app/immutable/assets/Button.cBruH0aD.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/Button.cBruH0aD.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/_layout.D7eM-6MV.css +17 -0
- package/frontend/build/client/_app/immutable/assets/_layout.D7eM-6MV.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/_layout.D7eM-6MV.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/_page.BVnUajEa.css +17 -0
- package/frontend/build/client/_app/immutable/assets/_page.BVnUajEa.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/_page.BVnUajEa.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/_page.CGnCsn5q.css +17 -0
- package/frontend/build/client/_app/immutable/assets/_page.CGnCsn5q.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/_page.CGnCsn5q.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/_page.DBhBrHFz.css +17 -0
- package/frontend/build/client/_app/immutable/assets/_page.DBhBrHFz.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/_page.DBhBrHFz.css.gz +0 -0
- package/frontend/build/client/_app/immutable/assets/_page.DOqo0UR4.css +17 -0
- package/frontend/build/client/_app/immutable/assets/_page.DOqo0UR4.css.br +0 -0
- package/frontend/build/client/_app/immutable/assets/_page.DOqo0UR4.css.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/B0bn91RF.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/B0bn91RF.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/B0bn91RF.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/B1kE5jmt.js +23 -0
- package/frontend/build/client/_app/immutable/chunks/B1kE5jmt.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/B1kE5jmt.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/BKz6FZdB.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/BKz6FZdB.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/BKz6FZdB.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/Be4iUAB0.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/Be4iUAB0.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/Be4iUAB0.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/BpaMqo9O.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/BpaMqo9O.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/BpaMqo9O.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/Bt3-Z7H1.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/Bt3-Z7H1.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/Bt3-Z7H1.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/CHV2KnPr.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/CHV2KnPr.js.br +18 -0
- package/frontend/build/client/_app/immutable/chunks/CHV2KnPr.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/CJ8q7g9Y.js +18 -0
- package/{resources/comments-format.text → frontend/build/client/_app/immutable/chunks/CJ8q7g9Y.js.br} +0 -0
- package/frontend/build/client/_app/immutable/chunks/CJ8q7g9Y.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/Cit9MuSg.js +20 -0
- package/frontend/build/client/_app/immutable/chunks/Cit9MuSg.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/Cit9MuSg.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/CwBTqcbj.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/CwBTqcbj.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/CwBTqcbj.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/DBk3zeq4.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/DBk3zeq4.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/DBk3zeq4.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/DFJLQFic.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/DFJLQFic.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/DFJLQFic.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/DTUE7kkY.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/DTUE7kkY.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/DTUE7kkY.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/IYPwzKs_.js +20 -0
- package/frontend/build/client/_app/immutable/chunks/IYPwzKs_.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/IYPwzKs_.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/oc0we5Us.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/oc0we5Us.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/oc0we5Us.js.gz +0 -0
- package/frontend/build/client/_app/immutable/chunks/rVEKg0Ak.js +18 -0
- package/frontend/build/client/_app/immutable/chunks/rVEKg0Ak.js.br +0 -0
- package/frontend/build/client/_app/immutable/chunks/rVEKg0Ak.js.gz +0 -0
- package/frontend/build/client/_app/immutable/entry/app.C2MbX06K.js +19 -0
- package/frontend/build/client/_app/immutable/entry/app.C2MbX06K.js.br +0 -0
- package/frontend/build/client/_app/immutable/entry/app.C2MbX06K.js.gz +0 -0
- package/frontend/build/client/_app/immutable/entry/start.GiBry-lw.js +18 -0
- package/frontend/build/client/_app/immutable/entry/start.GiBry-lw.js.br +18 -0
- package/frontend/build/client/_app/immutable/entry/start.GiBry-lw.js.gz +0 -0
- package/frontend/build/client/_app/immutable/nodes/0.BsCYK-Tn.js +21 -0
- package/frontend/build/client/_app/immutable/nodes/0.BsCYK-Tn.js.br +0 -0
- package/frontend/build/client/_app/immutable/nodes/0.BsCYK-Tn.js.gz +0 -0
- package/frontend/build/client/_app/immutable/nodes/1.N4gjrCnX.js +18 -0
- package/frontend/build/client/_app/immutable/nodes/1.N4gjrCnX.js.br +0 -0
- package/frontend/build/client/_app/immutable/nodes/1.N4gjrCnX.js.gz +0 -0
- package/frontend/build/client/_app/immutable/nodes/2.D9yQNzK8.js +18 -0
- package/frontend/build/client/_app/immutable/nodes/2.D9yQNzK8.js.br +0 -0
- package/frontend/build/client/_app/immutable/nodes/2.D9yQNzK8.js.gz +0 -0
- package/frontend/build/client/_app/immutable/nodes/3.CBC5WvNb.js +18 -0
- package/frontend/build/client/_app/immutable/nodes/3.CBC5WvNb.js.br +0 -0
- package/frontend/build/client/_app/immutable/nodes/3.CBC5WvNb.js.gz +0 -0
- package/frontend/build/client/_app/immutable/nodes/4.BU6UZHSE.js +19 -0
- package/frontend/build/client/_app/immutable/nodes/4.BU6UZHSE.js.br +0 -0
- package/frontend/build/client/_app/immutable/nodes/4.BU6UZHSE.js.gz +0 -0
- package/frontend/build/client/_app/immutable/nodes/5.Dzzfrntl.js +18 -0
- package/frontend/build/client/_app/immutable/nodes/5.Dzzfrntl.js.br +0 -0
- package/frontend/build/client/_app/immutable/nodes/5.Dzzfrntl.js.gz +0 -0
- package/frontend/build/client/_app/version.json +1 -0
- package/frontend/build/client/_app/version.json.br +0 -0
- package/frontend/build/client/_app/version.json.gz +0 -0
- package/frontend/build/client/favicon.png +0 -0
- package/frontend/build/env.js +111 -0
- package/frontend/build/handler.js +1511 -0
- package/frontend/build/index.js +362 -0
- package/frontend/build/server/chunks/0-BFfqmlsS.js +26 -0
- package/frontend/build/server/chunks/0-BFfqmlsS.js.map +17 -0
- package/frontend/build/server/chunks/1-hso3H4Ax.js +26 -0
- package/frontend/build/server/chunks/1-hso3H4Ax.js.map +17 -0
- package/frontend/build/server/chunks/2-BSZWXCWp.js +26 -0
- package/frontend/build/server/chunks/2-BSZWXCWp.js.map +17 -0
- package/frontend/build/server/chunks/3-BYumY9dv.js +26 -0
- package/frontend/build/server/chunks/3-BYumY9dv.js.map +17 -0
- package/frontend/build/server/chunks/4-2UUrCVtM.js +26 -0
- package/frontend/build/server/chunks/4-2UUrCVtM.js.map +17 -0
- package/frontend/build/server/chunks/5-C2_y_fwT.js +26 -0
- package/frontend/build/server/chunks/5-C2_y_fwT.js.map +17 -0
- package/frontend/build/server/chunks/Badge-CC4U7C0c.js +30 -0
- package/frontend/build/server/chunks/Badge-CC4U7C0c.js.map +17 -0
- package/frontend/build/server/chunks/Button-BLkPicwS.js +33 -0
- package/frontend/build/server/chunks/Button-BLkPicwS.js.map +17 -0
- package/frontend/build/server/chunks/_layout.svelte-Bfxcj9C6.js +183 -0
- package/frontend/build/server/chunks/_layout.svelte-Bfxcj9C6.js.map +17 -0
- package/frontend/build/server/chunks/_page.svelte-DEK6UvaI.js +45 -0
- package/frontend/build/server/chunks/_page.svelte-DEK6UvaI.js.map +17 -0
- package/frontend/build/server/chunks/_page.svelte-DScVdHOq.js +142 -0
- package/frontend/build/server/chunks/_page.svelte-DScVdHOq.js.map +17 -0
- package/frontend/build/server/chunks/_page.svelte-Ns7w2sZt.js +180 -0
- package/frontend/build/server/chunks/_page.svelte-Ns7w2sZt.js.map +17 -0
- package/frontend/build/server/chunks/_page.svelte-s6ZIOitT.js +165 -0
- package/frontend/build/server/chunks/_page.svelte-s6ZIOitT.js.map +17 -0
- package/frontend/build/server/chunks/attributes-BeaNKpgU.js +34 -0
- package/frontend/build/server/chunks/attributes-BeaNKpgU.js.map +17 -0
- package/frontend/build/server/chunks/client-C9IaEwNo.js +52 -0
- package/frontend/build/server/chunks/client-C9IaEwNo.js.map +17 -0
- package/frontend/build/server/chunks/error.svelte-HKBv5sQT.js +45 -0
- package/frontend/build/server/chunks/error.svelte-HKBv5sQT.js.map +17 -0
- package/frontend/build/server/chunks/escaping-CqgfEcN3.js +36 -0
- package/frontend/build/server/chunks/escaping-CqgfEcN3.js.map +17 -0
- package/frontend/build/server/chunks/exports-OxlCJ8yE.js +192 -0
- package/frontend/build/server/chunks/exports-OxlCJ8yE.js.map +17 -0
- package/frontend/build/server/chunks/index-CjHlq1kt.js +1076 -0
- package/frontend/build/server/chunks/index-CjHlq1kt.js.map +17 -0
- package/frontend/build/server/chunks/reports-D3ZeYSmi.js +56 -0
- package/frontend/build/server/chunks/reports-D3ZeYSmi.js.map +17 -0
- package/frontend/build/server/index.js +5015 -0
- package/frontend/build/server/index.js.map +17 -0
- package/frontend/build/server/manifest.js +84 -0
- package/frontend/build/server/manifest.js.map +17 -0
- package/frontend/build/shims.js +49 -0
- package/frontend/package-lock.json +2 -2
- package/frontend/package.json +1 -1
- package/package.json +1 -1
- package/.claude/settings.local.json +0 -29
- package/.husky/pre-commit +0 -2
- package/.prettierignore +0 -21
- package/.prettierrc +0 -15
- package/.vscode/settings.json +0 -10
- package/license-config.json +0 -37
|
@@ -0,0 +1,289 @@
|
|
|
1
|
+
{
|
|
2
|
+
".svelte-kit/generated/client-optimized/app.js": {
|
|
3
|
+
"file": "_app/immutable/entry/app.C2MbX06K.js",
|
|
4
|
+
"name": "entry/app",
|
|
5
|
+
"src": ".svelte-kit/generated/client-optimized/app.js",
|
|
6
|
+
"isEntry": true,
|
|
7
|
+
"imports": [
|
|
8
|
+
"_B0bn91RF.js",
|
|
9
|
+
"_DFJLQFic.js",
|
|
10
|
+
"_CwBTqcbj.js",
|
|
11
|
+
"_Be4iUAB0.js",
|
|
12
|
+
"_CHV2KnPr.js"
|
|
13
|
+
],
|
|
14
|
+
"dynamicImports": [
|
|
15
|
+
".svelte-kit/generated/client-optimized/nodes/0.js",
|
|
16
|
+
".svelte-kit/generated/client-optimized/nodes/1.js",
|
|
17
|
+
".svelte-kit/generated/client-optimized/nodes/2.js",
|
|
18
|
+
".svelte-kit/generated/client-optimized/nodes/3.js",
|
|
19
|
+
".svelte-kit/generated/client-optimized/nodes/4.js",
|
|
20
|
+
".svelte-kit/generated/client-optimized/nodes/5.js"
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
".svelte-kit/generated/client-optimized/nodes/0.js": {
|
|
24
|
+
"file": "_app/immutable/nodes/0.BsCYK-Tn.js",
|
|
25
|
+
"name": "nodes/0",
|
|
26
|
+
"src": ".svelte-kit/generated/client-optimized/nodes/0.js",
|
|
27
|
+
"isEntry": true,
|
|
28
|
+
"isDynamicEntry": true,
|
|
29
|
+
"imports": [
|
|
30
|
+
"_DFJLQFic.js",
|
|
31
|
+
"_DTUE7kkY.js",
|
|
32
|
+
"_B0bn91RF.js",
|
|
33
|
+
"_rVEKg0Ak.js",
|
|
34
|
+
"_CwBTqcbj.js",
|
|
35
|
+
"_Bt3-Z7H1.js",
|
|
36
|
+
"_B1kE5jmt.js",
|
|
37
|
+
"_Be4iUAB0.js",
|
|
38
|
+
"_CJ8q7g9Y.js",
|
|
39
|
+
"_BKz6FZdB.js",
|
|
40
|
+
"_IYPwzKs_.js",
|
|
41
|
+
"_BpaMqo9O.js",
|
|
42
|
+
"_CHV2KnPr.js",
|
|
43
|
+
"_DBk3zeq4.js"
|
|
44
|
+
],
|
|
45
|
+
"css": [
|
|
46
|
+
"_app/immutable/assets/0.CnXRuPt4.css"
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
|
+
".svelte-kit/generated/client-optimized/nodes/1.js": {
|
|
50
|
+
"file": "_app/immutable/nodes/1.N4gjrCnX.js",
|
|
51
|
+
"name": "nodes/1",
|
|
52
|
+
"src": ".svelte-kit/generated/client-optimized/nodes/1.js",
|
|
53
|
+
"isEntry": true,
|
|
54
|
+
"isDynamicEntry": true,
|
|
55
|
+
"imports": [
|
|
56
|
+
"_DFJLQFic.js",
|
|
57
|
+
"_DTUE7kkY.js",
|
|
58
|
+
"_B0bn91RF.js",
|
|
59
|
+
"_Cit9MuSg.js"
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
".svelte-kit/generated/client-optimized/nodes/2.js": {
|
|
63
|
+
"file": "_app/immutable/nodes/2.D9yQNzK8.js",
|
|
64
|
+
"name": "nodes/2",
|
|
65
|
+
"src": ".svelte-kit/generated/client-optimized/nodes/2.js",
|
|
66
|
+
"isEntry": true,
|
|
67
|
+
"isDynamicEntry": true,
|
|
68
|
+
"imports": [
|
|
69
|
+
"_DFJLQFic.js",
|
|
70
|
+
"_DTUE7kkY.js",
|
|
71
|
+
"_B0bn91RF.js",
|
|
72
|
+
"_CwBTqcbj.js",
|
|
73
|
+
"_Bt3-Z7H1.js",
|
|
74
|
+
"_B1kE5jmt.js",
|
|
75
|
+
"_BKz6FZdB.js",
|
|
76
|
+
"_IYPwzKs_.js"
|
|
77
|
+
],
|
|
78
|
+
"css": [
|
|
79
|
+
"_app/immutable/assets/2.CGnCsn5q.css"
|
|
80
|
+
]
|
|
81
|
+
},
|
|
82
|
+
".svelte-kit/generated/client-optimized/nodes/3.js": {
|
|
83
|
+
"file": "_app/immutable/nodes/3.CBC5WvNb.js",
|
|
84
|
+
"name": "nodes/3",
|
|
85
|
+
"src": ".svelte-kit/generated/client-optimized/nodes/3.js",
|
|
86
|
+
"isEntry": true,
|
|
87
|
+
"isDynamicEntry": true,
|
|
88
|
+
"imports": [
|
|
89
|
+
"_DFJLQFic.js",
|
|
90
|
+
"_DTUE7kkY.js",
|
|
91
|
+
"_B0bn91RF.js",
|
|
92
|
+
"_CwBTqcbj.js",
|
|
93
|
+
"_Bt3-Z7H1.js",
|
|
94
|
+
"_BpaMqo9O.js",
|
|
95
|
+
"_oc0we5Us.js",
|
|
96
|
+
"_Be4iUAB0.js"
|
|
97
|
+
],
|
|
98
|
+
"css": [
|
|
99
|
+
"_app/immutable/assets/3.BVnUajEa.css"
|
|
100
|
+
]
|
|
101
|
+
},
|
|
102
|
+
".svelte-kit/generated/client-optimized/nodes/4.js": {
|
|
103
|
+
"file": "_app/immutable/nodes/4.BU6UZHSE.js",
|
|
104
|
+
"name": "nodes/4",
|
|
105
|
+
"src": ".svelte-kit/generated/client-optimized/nodes/4.js",
|
|
106
|
+
"isEntry": true,
|
|
107
|
+
"isDynamicEntry": true,
|
|
108
|
+
"imports": [
|
|
109
|
+
"_DFJLQFic.js",
|
|
110
|
+
"_DTUE7kkY.js",
|
|
111
|
+
"_B0bn91RF.js",
|
|
112
|
+
"_CwBTqcbj.js",
|
|
113
|
+
"_Bt3-Z7H1.js",
|
|
114
|
+
"_B1kE5jmt.js",
|
|
115
|
+
"_Be4iUAB0.js",
|
|
116
|
+
"_CJ8q7g9Y.js",
|
|
117
|
+
"_BpaMqo9O.js",
|
|
118
|
+
"_oc0we5Us.js"
|
|
119
|
+
],
|
|
120
|
+
"css": [
|
|
121
|
+
"_app/immutable/assets/4.DBhBrHFz.css"
|
|
122
|
+
]
|
|
123
|
+
},
|
|
124
|
+
".svelte-kit/generated/client-optimized/nodes/5.js": {
|
|
125
|
+
"file": "_app/immutable/nodes/5.Dzzfrntl.js",
|
|
126
|
+
"name": "nodes/5",
|
|
127
|
+
"src": ".svelte-kit/generated/client-optimized/nodes/5.js",
|
|
128
|
+
"isEntry": true,
|
|
129
|
+
"isDynamicEntry": true,
|
|
130
|
+
"imports": [
|
|
131
|
+
"_DFJLQFic.js",
|
|
132
|
+
"_DTUE7kkY.js",
|
|
133
|
+
"_B0bn91RF.js",
|
|
134
|
+
"_CwBTqcbj.js",
|
|
135
|
+
"_Bt3-Z7H1.js",
|
|
136
|
+
"_B1kE5jmt.js",
|
|
137
|
+
"_BKz6FZdB.js",
|
|
138
|
+
"_Be4iUAB0.js",
|
|
139
|
+
"_DBk3zeq4.js",
|
|
140
|
+
"_oc0we5Us.js",
|
|
141
|
+
"_rVEKg0Ak.js"
|
|
142
|
+
],
|
|
143
|
+
"css": [
|
|
144
|
+
"_app/immutable/assets/5.D93VAB-w.css"
|
|
145
|
+
]
|
|
146
|
+
},
|
|
147
|
+
"_B0bn91RF.js": {
|
|
148
|
+
"file": "_app/immutable/chunks/B0bn91RF.js",
|
|
149
|
+
"name": "index"
|
|
150
|
+
},
|
|
151
|
+
"_B1kE5jmt.js": {
|
|
152
|
+
"file": "_app/immutable/chunks/B1kE5jmt.js",
|
|
153
|
+
"name": "index",
|
|
154
|
+
"imports": [
|
|
155
|
+
"_B0bn91RF.js",
|
|
156
|
+
"_DFJLQFic.js"
|
|
157
|
+
]
|
|
158
|
+
},
|
|
159
|
+
"_BKz6FZdB.js": {
|
|
160
|
+
"file": "_app/immutable/chunks/BKz6FZdB.js",
|
|
161
|
+
"name": "input",
|
|
162
|
+
"imports": [
|
|
163
|
+
"_B0bn91RF.js",
|
|
164
|
+
"_DFJLQFic.js"
|
|
165
|
+
]
|
|
166
|
+
},
|
|
167
|
+
"_Badge.DLLowvEA.css": {
|
|
168
|
+
"file": "_app/immutable/assets/Badge.DLLowvEA.css",
|
|
169
|
+
"src": "_Badge.DLLowvEA.css"
|
|
170
|
+
},
|
|
171
|
+
"_Be4iUAB0.js": {
|
|
172
|
+
"file": "_app/immutable/chunks/Be4iUAB0.js",
|
|
173
|
+
"name": "props",
|
|
174
|
+
"imports": [
|
|
175
|
+
"_B0bn91RF.js"
|
|
176
|
+
]
|
|
177
|
+
},
|
|
178
|
+
"_BpaMqo9O.js": {
|
|
179
|
+
"file": "_app/immutable/chunks/BpaMqo9O.js",
|
|
180
|
+
"name": "reports"
|
|
181
|
+
},
|
|
182
|
+
"_Bt3-Z7H1.js": {
|
|
183
|
+
"file": "_app/immutable/chunks/Bt3-Z7H1.js",
|
|
184
|
+
"name": "class",
|
|
185
|
+
"imports": [
|
|
186
|
+
"_B0bn91RF.js",
|
|
187
|
+
"_DFJLQFic.js"
|
|
188
|
+
]
|
|
189
|
+
},
|
|
190
|
+
"_Button.cBruH0aD.css": {
|
|
191
|
+
"file": "_app/immutable/assets/Button.cBruH0aD.css",
|
|
192
|
+
"src": "_Button.cBruH0aD.css"
|
|
193
|
+
},
|
|
194
|
+
"_CHV2KnPr.js": {
|
|
195
|
+
"file": "_app/immutable/chunks/CHV2KnPr.js",
|
|
196
|
+
"name": "this",
|
|
197
|
+
"imports": [
|
|
198
|
+
"_B0bn91RF.js"
|
|
199
|
+
]
|
|
200
|
+
},
|
|
201
|
+
"_CJ8q7g9Y.js": {
|
|
202
|
+
"file": "_app/immutable/chunks/CJ8q7g9Y.js",
|
|
203
|
+
"name": "stores",
|
|
204
|
+
"imports": [
|
|
205
|
+
"_Cit9MuSg.js"
|
|
206
|
+
]
|
|
207
|
+
},
|
|
208
|
+
"_Cit9MuSg.js": {
|
|
209
|
+
"file": "_app/immutable/chunks/Cit9MuSg.js",
|
|
210
|
+
"name": "entry",
|
|
211
|
+
"imports": [
|
|
212
|
+
"_B0bn91RF.js"
|
|
213
|
+
]
|
|
214
|
+
},
|
|
215
|
+
"_CwBTqcbj.js": {
|
|
216
|
+
"file": "_app/immutable/chunks/CwBTqcbj.js",
|
|
217
|
+
"name": "if",
|
|
218
|
+
"imports": [
|
|
219
|
+
"_B0bn91RF.js"
|
|
220
|
+
]
|
|
221
|
+
},
|
|
222
|
+
"_DBk3zeq4.js": {
|
|
223
|
+
"file": "_app/immutable/chunks/DBk3zeq4.js",
|
|
224
|
+
"name": "Button",
|
|
225
|
+
"imports": [
|
|
226
|
+
"_DFJLQFic.js",
|
|
227
|
+
"_DTUE7kkY.js",
|
|
228
|
+
"_B0bn91RF.js",
|
|
229
|
+
"_rVEKg0Ak.js",
|
|
230
|
+
"_Bt3-Z7H1.js",
|
|
231
|
+
"_Be4iUAB0.js"
|
|
232
|
+
],
|
|
233
|
+
"css": [
|
|
234
|
+
"_app/immutable/assets/Button.cBruH0aD.css"
|
|
235
|
+
]
|
|
236
|
+
},
|
|
237
|
+
"_DFJLQFic.js": {
|
|
238
|
+
"file": "_app/immutable/chunks/DFJLQFic.js",
|
|
239
|
+
"name": "disclose-version",
|
|
240
|
+
"imports": [
|
|
241
|
+
"_B0bn91RF.js"
|
|
242
|
+
]
|
|
243
|
+
},
|
|
244
|
+
"_DTUE7kkY.js": {
|
|
245
|
+
"file": "_app/immutable/chunks/DTUE7kkY.js",
|
|
246
|
+
"name": "legacy",
|
|
247
|
+
"imports": [
|
|
248
|
+
"_B0bn91RF.js"
|
|
249
|
+
]
|
|
250
|
+
},
|
|
251
|
+
"_IYPwzKs_.js": {
|
|
252
|
+
"file": "_app/immutable/chunks/IYPwzKs_.js",
|
|
253
|
+
"name": "runner",
|
|
254
|
+
"imports": [
|
|
255
|
+
"_B0bn91RF.js"
|
|
256
|
+
]
|
|
257
|
+
},
|
|
258
|
+
"_oc0we5Us.js": {
|
|
259
|
+
"file": "_app/immutable/chunks/oc0we5Us.js",
|
|
260
|
+
"name": "Badge",
|
|
261
|
+
"imports": [
|
|
262
|
+
"_DFJLQFic.js",
|
|
263
|
+
"_DTUE7kkY.js",
|
|
264
|
+
"_B0bn91RF.js",
|
|
265
|
+
"_rVEKg0Ak.js",
|
|
266
|
+
"_Bt3-Z7H1.js",
|
|
267
|
+
"_Be4iUAB0.js"
|
|
268
|
+
],
|
|
269
|
+
"css": [
|
|
270
|
+
"_app/immutable/assets/Badge.DLLowvEA.css"
|
|
271
|
+
]
|
|
272
|
+
},
|
|
273
|
+
"_rVEKg0Ak.js": {
|
|
274
|
+
"file": "_app/immutable/chunks/rVEKg0Ak.js",
|
|
275
|
+
"name": "slot",
|
|
276
|
+
"imports": [
|
|
277
|
+
"_B0bn91RF.js"
|
|
278
|
+
]
|
|
279
|
+
},
|
|
280
|
+
"node_modules/@sveltejs/kit/src/runtime/client/entry.js": {
|
|
281
|
+
"file": "_app/immutable/entry/start.GiBry-lw.js",
|
|
282
|
+
"name": "entry/start",
|
|
283
|
+
"src": "node_modules/@sveltejs/kit/src/runtime/client/entry.js",
|
|
284
|
+
"isEntry": true,
|
|
285
|
+
"imports": [
|
|
286
|
+
"_Cit9MuSg.js"
|
|
287
|
+
]
|
|
288
|
+
}
|
|
289
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.flex{display:flex}.table{display:table}.contents{display:contents}.hidden{display:none}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-wrap{flex-wrap:wrap}.border{border-width:1px}.uppercase{text-transform:uppercase}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--bg: #fdfcfb;--bg-subtle: #f7f6f4;--bg-elevated: #ffffff;--border: #e9e5df;--text: #18160f;--text-muted: #9c9185;--accent: #5c1b87;--accent-soft: #f3eaff;--pass: #16a34a;--pass-soft: #dcfce7;--fail: #dc2626;--fail-soft: #fee2e2;--warn: #d97706;--warn-soft: #fef3c7;--terminal-bg: #0d0c08;--terminal-text: #d6d0c8;--font-display: "Playfair Display", Georgia, serif;--font-body: "DM Sans", system-ui, -apple-system, sans-serif;--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .14s;--duration-base: .24s;--duration-slow: .4s;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px}[data-theme=dark]{--bg: #101009;--bg-subtle: #1a1910;--bg-elevated: #201f14;--border: #2e2c1e;--text: #f0ede6;--text-muted: #706a5e;--accent: #d0a5f5;--accent-soft: #1b0d30;--pass: #22c55e;--pass-soft: #0d2118;--fail: #f87171;--fail-soft: #2d1010;--warn: #fbbf24;--warn-soft: #2a1f06;--terminal-bg: #080807;--terminal-text: #cbc5bd}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-weight:300;font-size:1rem;line-height:1.65;background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.07'/%3E%3C/svg%3E");background-size:200px 200px;color:var(--text);transition:background-color var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out);-webkit-font-smoothing:antialiased}h1{font-family:var(--font-display);font-weight:400;line-height:1.1;letter-spacing:-.015em;color:var(--text)}h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.2;color:var(--text)}a{color:inherit;text-decoration:none}button{font-family:var(--font-body)}.field{display:flex;flex-direction:column;gap:.375rem}.field-label{display:flex;justify-content:space-between;font-size:.8125rem;font-weight:400;color:var(--text-muted)}.field-hint{font-size:.75rem;color:var(--text-muted)}.field-input{width:100%;padding:.6rem .875rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text);font-family:var(--font-body);font-size:.875rem;font-weight:300;outline:none;transition:border-color var(--duration-fast),box-shadow var(--duration-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none}.field-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field-input:disabled{opacity:.5;cursor:not-allowed}.field-input::-moz-placeholder{color:var(--text-muted)}.field-input::placeholder{color:var(--text-muted)}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{text-align:left;padding:.5rem 1rem;font-family:var(--font-body);font-weight:500;font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border)}.data-table td{padding:.875rem 1rem;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;transition:background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.card-title{font-family:var(--font-display);font-size:1.25rem;font-weight:400;color:var(--text);margin-bottom:.25rem}.card-subtitle{font-size:.8125rem;color:var(--text-muted);margin-bottom:1.25rem}.alert{display:flex;align-items:center;gap:.625rem;padding:.75rem 1rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:400}.alert-success{background:var(--pass-soft);color:var(--pass)}.alert-error{background:var(--fail-soft);color:var(--fail)}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.nav.svelte-6bgush{position:sticky;top:0;z-index:40;background:var(--bg);border-bottom:1px solid var(--border);transition:background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.inner.svelte-6bgush{max-width:1200px;margin:0 auto;padding:0 1.5rem;height:56px;display:flex;align-items:center;gap:2rem}.brand.svelte-6bgush{font-size:1.2rem;letter-spacing:-.02em;flex-shrink:0;text-decoration:none}.brand-serif.svelte-6bgush{font-family:var(--font-display);font-weight:400;color:var(--accent)}.brand-sans.svelte-6bgush{font-family:var(--font-body);font-weight:400;color:var(--text)}.links.svelte-6bgush{display:flex;gap:.125rem;flex:1}.link.svelte-6bgush{font-size:.875rem;font-weight:400;color:var(--text-muted);text-decoration:none;padding:.35rem .75rem;border-radius:var(--radius-sm);transition:color var(--duration-fast),background var(--duration-fast)}.link.svelte-6bgush:hover{color:var(--text);background:var(--bg-subtle)}.link.active.svelte-6bgush{color:var(--accent);background:var(--accent-soft)}.actions.svelte-6bgush{display:flex;align-items:center;gap:.5rem;margin-left:auto}.theme-btn.svelte-6bgush{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}.theme-btn.svelte-6bgush:hover{background:var(--bg-subtle);color:var(--text);border-color:var(--text-muted)}.hamburger.svelte-6bgush{display:none;flex-direction:column;justify-content:center;gap:4px;width:34px;height:34px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:0 8px}.hamburger.svelte-6bgush span:where(.svelte-6bgush){display:block;width:100%;height:1.5px;background:var(--text-muted);border-radius:2px;transform-origin:center;transition:transform var(--duration-base) var(--ease-out),opacity var(--duration-fast)}.hamburger.svelte-6bgush span.rotated:where(.svelte-6bgush){transform:translateY(5.5px) rotate(45deg)}.hamburger.svelte-6bgush span.hidden:where(.svelte-6bgush){opacity:0}.hamburger.svelte-6bgush span.rotated-reverse:where(.svelte-6bgush){transform:translateY(-5.5px) rotate(-45deg)}.mobile-menu.svelte-6bgush{border-top:1px solid var(--border);padding:.75rem 1.5rem 1rem;display:flex;flex-direction:column;gap:.125rem}.mobile-link.svelte-6bgush{color:var(--text-muted);text-decoration:none;font-size:.9375rem;font-weight:400;padding:.5rem .75rem;border-radius:var(--radius-sm);transition:background var(--duration-fast),color var(--duration-fast)}.mobile-link.svelte-6bgush:hover,.mobile-link.active.svelte-6bgush{background:var(--bg-subtle);color:var(--text)}.mobile-link.active.svelte-6bgush{color:var(--accent);background:var(--accent-soft)}@media (max-width: 640px){.links.svelte-6bgush{display:none}.hamburger.svelte-6bgush{display:flex}}.shell.svelte-28zx1m{max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem 5rem}.terminal-wrap.svelte-olniy1{border-radius:var(--radius-md);overflow:hidden;border:1px solid rgba(255,255,255,.06)}.terminal-bar.svelte-olniy1{display:flex;align-items:center;gap:6px;padding:.6rem .875rem;background:#0000004d}.dot.svelte-olniy1{display:block;width:10px;height:10px;border-radius:50%}.red.svelte-olniy1{background:#ff5f57}.yellow.svelte-olniy1{background:#febc2e}.green.svelte-olniy1{background:#28c840}.terminal.svelte-olniy1{font-family:JetBrains Mono,Fira Code,Cascadia Code,Courier New,monospace;font-size:.78rem;line-height:1.75;background:var(--terminal-bg);color:var(--terminal-text);padding:1rem;min-height:220px;max-height:280px;overflow-y:auto;white-space:pre-wrap;word-break:break-word;margin:0}.terminal.svelte-olniy1::-webkit-scrollbar{width:4px}.terminal.svelte-olniy1::-webkit-scrollbar-track{background:transparent}.terminal.svelte-olniy1::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.panel.svelte-ynu3lh{position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--bg-elevated);border-top:1px solid var(--border);box-shadow:0 -4px 24px #0000000f;transition:box-shadow var(--duration-base) var(--ease-out)}.panel.expanded.svelte-ynu3lh{box-shadow:0 -8px 40px #0000001a}.bar.svelte-ynu3lh{display:flex;align-items:center;gap:.75rem;padding:0 1.5rem;height:48px;cursor:default}.bar-left.svelte-ynu3lh{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.status-dot.svelte-ynu3lh{flex-shrink:0;width:8px;height:8px;border-radius:50%;transition:background var(--duration-base)}.status-dot.pulse.svelte-ynu3lh{animation:svelte-ynu3lh-statusPulse 1.6s ease-in-out infinite}@keyframes svelte-ynu3lh-statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}.status-label.svelte-ynu3lh{font-size:.7rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.run-id.svelte-ynu3lh{font-size:.75rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-dots.svelte-ynu3lh{display:flex;align-items:center;gap:4px;flex-shrink:0}.dot.svelte-ynu3lh{width:7px;height:7px;border-radius:50%;background:var(--border);transition:background var(--duration-base),transform var(--duration-fast)}.dot.running.svelte-ynu3lh{background:var(--pass);animation:svelte-ynu3lh-dotBeat 1.4s ease-in-out infinite}.dot.pass.svelte-ynu3lh{background:var(--pass)}.dot.fail.svelte-ynu3lh{background:var(--fail)}@keyframes svelte-ynu3lh-dotBeat{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.65)}}.expand-btn.svelte-ynu3lh{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast)}.expand-btn.svelte-ynu3lh:hover{background:var(--bg-subtle);color:var(--text)}.expand-btn.svelte-ynu3lh svg:where(.svelte-ynu3lh){transition:transform var(--duration-base) var(--ease-out)}.expand-btn.svelte-ynu3lh svg.rotated:where(.svelte-ynu3lh){transform:rotate(180deg)}.body.svelte-ynu3lh{padding:.875rem 1.5rem 1.125rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.75rem}.controls.svelte-ynu3lh{display:flex;align-items:center;gap:.625rem}.run-input.svelte-ynu3lh{flex:1}.workers-control.svelte-ynu3lh{display:flex;gap:2px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px;flex-shrink:0}.worker-btn.svelte-ynu3lh{font-family:var(--font-body);font-size:.75rem;font-weight:400;min-width:2rem;padding:.2rem .5rem;border:none;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast)}.worker-btn.svelte-ynu3lh:hover:not(.active){background:var(--bg-elevated);color:var(--text)}.worker-btn.active.svelte-ynu3lh{background:var(--bg-elevated);color:var(--accent);font-weight:500;box-shadow:0 1px 3px #00000014}.report-row.svelte-ynu3lh{display:flex}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
.page-header.svelte-10529e9{margin-bottom:1.75rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.header-top.svelte-10529e9{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}h1.svelte-10529e9{font-size:2.5rem;margin-bottom:.25rem}.subtitle.svelte-10529e9{color:var(--text-muted);font-size:.875rem}.search-row.svelte-10529e9{display:flex;gap:.75rem}.search-wrap.svelte-10529e9{position:relative;flex:1;max-width:480px}.search-icon.svelte-10529e9{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search-input.svelte-10529e9{width:100%;padding:.55rem .875rem .55rem 2.25rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text);font-family:var(--font-body);font-size:.875rem;font-weight:300;outline:none;transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.search-input.svelte-10529e9:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--bg-elevated)}.search-input.svelte-10529e9::-moz-placeholder{color:var(--text-muted)}.search-input.svelte-10529e9::placeholder{color:var(--text-muted)}.search-clear.svelte-10529e9{position:absolute;right:.625rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:none;background:var(--border);color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast)}.search-clear.svelte-10529e9:hover{background:var(--text-muted);color:var(--bg)}.suites.svelte-10529e9{display:flex;flex-direction:column;gap:1rem}.suite.svelte-10529e9{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:visible;background:var(--bg-elevated);animation:fadeUp .35s var(--ease-out) both}.suite-header.svelte-10529e9{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.25rem;background:var(--bg-subtle);border-bottom:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.suite-meta.svelte-10529e9{display:flex;align-items:center;gap:.625rem;flex:1;min-width:0}.suite-badges.svelte-10529e9{display:flex;gap:.25rem;flex-shrink:0}.suite-name.svelte-10529e9{font-size:.9rem;font-weight:400;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suite-count.svelte-10529e9{font-size:.75rem;color:var(--text-muted);flex-shrink:0}.run-btn.svelte-10529e9{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-body);font-size:.75rem;font-weight:400;padding:.3rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}.run-btn.svelte-10529e9:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.tests.svelte-10529e9{display:flex;flex-direction:column}.test-row.svelte-10529e9{border-bottom:1px solid var(--border);animation:fadeUp .3s var(--ease-out) both}.test-row.svelte-10529e9:last-child{border-bottom:none}.test-main.svelte-10529e9{display:flex;align-items:center;gap:.625rem;padding:.75rem 1.25rem}.run-icon-btn.svelte-10529e9{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}.run-icon-btn.svelte-10529e9:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.test-ids.svelte-10529e9{display:flex;gap:.25rem;flex-shrink:0}.id-pill.svelte-10529e9{position:relative;font-size:.68rem;font-weight:500;letter-spacing:.04em;color:var(--accent);background:var(--accent-soft);border:none;border-radius:100px;padding:.15rem .55rem;cursor:pointer;font-family:JetBrains Mono,monospace;transition:background var(--duration-fast),color var(--duration-fast),filter var(--duration-fast)}.id-pill.svelte-10529e9:hover{filter:brightness(.92)}.id-pill.copied.svelte-10529e9{color:var(--pass);background:var(--pass-soft)}.id-pill.copied.svelte-10529e9:after{content:"Copied";position:absolute;left:50%;bottom:calc(100% + 6px);z-index:50;transform:translate(-50%);padding:.16rem .42rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--pass);box-shadow:0 4px 14px #00000014;font-family:var(--font-body);font-size:.65rem;font-weight:500;letter-spacing:0;pointer-events:none;animation:svelte-10529e9-copiedPop 1.4s var(--ease-out) both}.test-name.svelte-10529e9{flex:1;font-size:.875rem;color:var(--text);min-width:0}.outline-badge.svelte-10529e9{display:inline-block;font-size:.62rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;background:var(--warn-soft);color:var(--warn);padding:.1rem .4rem;border-radius:100px;margin-left:.4rem;vertical-align:middle}.steps-toggle.svelte-10529e9{display:inline-flex;align-items:center;gap:.2rem;font-family:var(--font-body);font-size:.72rem;font-weight:400;color:var(--text-muted);background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);padding:.2rem .5rem;cursor:pointer;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast)}.steps-toggle.svelte-10529e9:hover{background:var(--bg-subtle);color:var(--text)}.steps-toggle.svelte-10529e9 svg:where(.svelte-10529e9){transition:transform var(--duration-fast) var(--ease-out)}.steps-toggle.svelte-10529e9 svg.rotated:where(.svelte-10529e9){transform:rotate(90deg)}.steps.svelte-10529e9{padding:.75rem 1.25rem .875rem 3.75rem;background:var(--bg-subtle);border-top:1px solid var(--border)}.step-list.svelte-10529e9{list-style:none;display:flex;flex-direction:column;gap:.3rem}.step.svelte-10529e9{font-size:.8125rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;line-height:1.5;padding-left:1rem;position:relative}.step.svelte-10529e9:before{content:"›";position:absolute;left:0;color:var(--accent);font-family:var(--font-body)}.examples.svelte-10529e9{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed var(--border)}.examples-label.svelte-10529e9{display:block;font-size:.68rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem}.examples-table-wrap.svelte-10529e9{overflow-x:auto}.examples-table.svelte-10529e9{border-collapse:collapse;font-size:.78rem;font-family:JetBrains Mono,monospace;width:auto}.examples-table.svelte-10529e9 th:where(.svelte-10529e9){text-align:left;padding:.3rem .75rem;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);font-family:var(--font-body);font-weight:500}.examples-table.svelte-10529e9 td:where(.svelte-10529e9){padding:.3rem .75rem;color:var(--text-muted);border-bottom:1px solid var(--border)}.examples-table.svelte-10529e9 tbody:where(.svelte-10529e9) tr:where(.svelte-10529e9):last-child td:where(.svelte-10529e9){border-bottom:none}.empty.svelte-10529e9{color:var(--text-muted);font-size:.9375rem;padding:3rem 0;text-align:center}@keyframes svelte-10529e9-copiedPop{0%{opacity:0;transform:translate(-50%,4px) scale(.96)}12%,78%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-2px) scale(.98)}}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
.pagination.svelte-tsubiy{display:flex;align-items:center;justify-content:center;gap:.25rem}button.svelte-tsubiy{min-width:2rem;height:2rem;padding:0 .25rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-muted);font-family:var(--font-body);font-size:.8125rem;cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}button.svelte-tsubiy:disabled{opacity:.3;cursor:not-allowed}button.active.svelte-tsubiy{background:var(--accent);color:#fff;border-color:var(--accent)}button.svelte-tsubiy:hover:not(:disabled):not(.active){background:var(--bg-subtle);color:var(--text)}.page-header.svelte-wxbf05{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.header-top.svelte-wxbf05{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}h1.svelte-wxbf05{font-size:2.5rem;margin-bottom:.25rem}.subtitle.svelte-wxbf05{color:var(--text-muted);font-size:.875rem}.rate-display.svelte-wxbf05{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.rate-number.svelte-wxbf05{font-family:var(--font-display);font-size:2.75rem;line-height:1;font-weight:400}.rate-number.pass.svelte-wxbf05{color:var(--pass)}.rate-number.warn.svelte-wxbf05{color:var(--warn)}.rate-number.fail.svelte-wxbf05{color:var(--fail)}.rate-label.svelte-wxbf05{font-size:.75rem;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase}.stats-bar.svelte-wxbf05{margin-bottom:1rem}.pass-bar-track.svelte-wxbf05{height:3px;background:var(--fail-soft);border-radius:100px;overflow:hidden;margin-bottom:.5rem}.pass-bar-fill.svelte-wxbf05{height:100%;background:var(--pass);border-radius:100px;transition:width .9s var(--ease-out) .1s}.bar-legend.svelte-wxbf05{display:flex;gap:1rem}.legend-pass.svelte-wxbf05{font-size:.75rem;color:var(--pass);font-weight:500}.legend-fail.svelte-wxbf05{font-size:.75rem;color:var(--fail);font-weight:500}.trend-row.svelte-wxbf05{display:flex;align-items:center;gap:.75rem}.trend-label.svelte-wxbf05{font-size:.7rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.trend-dots.svelte-wxbf05{display:flex;align-items:center;gap:5px}.trend-dot.svelte-wxbf05{width:9px;height:9px;border-radius:50%;transition:transform var(--duration-fast);animation:fadeUp .3s var(--ease-out) both}.trend-dot.svelte-wxbf05:hover{transform:scale(1.4)}.trend-dot.pass.svelte-wxbf05{background:var(--pass)}.trend-dot.fail.svelte-wxbf05{background:var(--fail)}.trend-hint.svelte-wxbf05{font-size:.68rem;color:var(--text-muted);opacity:.6}.report-list.svelte-wxbf05{display:flex;flex-direction:column;gap:.5rem}.report-item.svelte-wxbf05{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);text-decoration:none;color:inherit;border-left-width:3px;transition:background var(--duration-fast),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast);animation:fadeUp .32s var(--ease-out) both}.report-item.svelte-wxbf05:hover{background:var(--bg-subtle);transform:translate(2px);box-shadow:0 2px 12px #0000000a}.report-item.is-pass.svelte-wxbf05{border-left-color:var(--pass)}.report-item.is-fail.svelte-wxbf05{border-left-color:var(--fail)}.item-left.svelte-wxbf05{display:flex;align-items:center;gap:.875rem;min-width:0}.status-mark.svelte-wxbf05{font-size:.875rem;font-weight:600;flex-shrink:0;width:20px;text-align:center}.status-mark.pass.svelte-wxbf05{color:var(--pass)}.status-mark.fail.svelte-wxbf05{color:var(--fail)}.item-meta.svelte-wxbf05{display:flex;align-items:center;gap:.625rem;min-width:0}.item-tags.svelte-wxbf05{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text);white-space:nowrap}.item-badges.svelte-wxbf05{flex-shrink:0}.item-right.svelte-wxbf05{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.item-date.svelte-wxbf05{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.item-arrow.svelte-wxbf05{color:var(--text-muted);transition:transform var(--duration-fast) var(--ease-out),color var(--duration-fast)}.report-item.svelte-wxbf05:hover .item-arrow:where(.svelte-wxbf05){transform:translate(3px);color:var(--text)}.pagination-wrap.svelte-wxbf05{margin-top:1.25rem}.empty.svelte-wxbf05{color:var(--text-muted);font-size:.9375rem;padding:3rem 0;text-align:center}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
.back-row.svelte-pys2u{margin-bottom:1.5rem}.back-link.svelte-pys2u{display:inline-flex;align-items:center;gap:.35rem;font-size:.8125rem;color:var(--text-muted);text-decoration:none;transition:color var(--duration-fast)}.back-link.svelte-pys2u:hover{color:var(--text)}.report-header.svelte-pys2u{border-radius:var(--radius-lg);border:1px solid var(--border);border-left-width:4px;padding:1.5rem;margin-bottom:2rem;background:var(--bg-elevated);animation:fadeUp .35s var(--ease-out) both}.report-header.pass.svelte-pys2u{border-left-color:var(--pass)}.report-header.fail.svelte-pys2u{border-left-color:var(--fail)}.header-main.svelte-pys2u{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.header-status.svelte-pys2u{display:flex;align-items:center;gap:1rem}.status-icon.svelte-pys2u{font-size:2rem;line-height:1;font-weight:600}.report-header.pass.svelte-pys2u .status-icon:where(.svelte-pys2u){color:var(--pass)}.report-header.fail.svelte-pys2u .status-icon:where(.svelte-pys2u){color:var(--fail)}h1.svelte-pys2u{font-size:2rem;margin-bottom:.2rem}.header-meta.svelte-pys2u{font-size:.8125rem;color:var(--text-muted);display:flex;align-items:center;gap:.5rem}.mono.svelte-pys2u{font-family:JetBrains Mono,monospace;font-size:.78rem}.header-stats.svelte-pys2u{display:flex;gap:1.5rem;align-items:flex-start;flex-shrink:0}.stat.svelte-pys2u{display:flex;flex-direction:column;align-items:center;gap:.1rem}.stat-num.svelte-pys2u{font-family:var(--font-display);font-size:1.75rem;line-height:1;font-weight:400;color:var(--text)}.stat-label.svelte-pys2u{font-size:.68rem;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase}.pass-color.svelte-pys2u{color:var(--pass)}.fail-color.svelte-pys2u{color:var(--fail)}.muted-color.svelte-pys2u{color:var(--text-muted)}.feature.svelte-pys2u{margin-bottom:1.5rem;animation:fadeUp .35s var(--ease-out) both}.feature-header.svelte-pys2u{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.feature-name.svelte-pys2u{font-size:1.1rem;font-family:var(--font-display);font-weight:400}.feature-file.svelte-pys2u{font-family:JetBrains Mono,monospace;font-size:.72rem;color:var(--text-muted);margin-left:auto}.scenarios.svelte-pys2u{display:flex;flex-direction:column;gap:.375rem}.scenario.svelte-pys2u{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);overflow:hidden;animation:fadeUp .3s var(--ease-out) both}.scenario-header.svelte-pys2u{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;width:100%;background:transparent;border:none;cursor:pointer;text-align:left;font-family:var(--font-body);transition:background var(--duration-fast)}.scenario-header.svelte-pys2u:hover{background:var(--bg-subtle)}.scenario-status-dot.svelte-pys2u{width:8px;height:8px;border-radius:50%;flex-shrink:0}.scenario-status-dot.pass.svelte-pys2u{background:var(--pass)}.scenario-status-dot.fail.svelte-pys2u{background:var(--fail)}.scenario-status-dot.skip.svelte-pys2u{background:var(--text-muted)}.scenario-name.svelte-pys2u{flex:1;font-size:.875rem;color:var(--text);font-weight:400;text-align:left;display:inline-flex;align-items:center;gap:.4rem;min-width:0}.scenario-count.svelte-pys2u{font-size:.65rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-subtle);border:1px solid var(--border);border-radius:100px;padding:.05rem .4rem;white-space:nowrap}.scenario-tags.svelte-pys2u{display:flex;gap:.25rem;flex-shrink:0}.tag-chip.svelte-pys2u{font-size:.65rem;font-family:JetBrains Mono,monospace;background:var(--accent-soft);color:var(--accent);padding:.1rem .4rem;border-radius:100px}.scenario-duration.svelte-pys2u{font-size:.75rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;flex-shrink:0}.chevron.svelte-pys2u{color:var(--text-muted);flex-shrink:0;transition:transform var(--duration-fast) var(--ease-out)}.chevron.rotated.svelte-pys2u{transform:rotate(90deg)}.steps.svelte-pys2u{border-top:1px solid var(--border);background:var(--bg-subtle);padding:.5rem 0}.example-header.svelte-pys2u{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem .25rem 1.25rem;color:var(--text-muted);font-size:.72rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.example-header.svelte-pys2u:not(:first-child){margin-top:.375rem;border-top:1px dashed var(--border)}.example-header.svelte-pys2u .scenario-duration:where(.svelte-pys2u){margin-left:auto}.step.svelte-pys2u{padding:.375rem 1rem .375rem 1.25rem}.step-fail.svelte-pys2u{background:color-mix(in srgb,var(--fail-soft) 40%,transparent)}.step-skip.svelte-pys2u{opacity:.5}.step-row.svelte-pys2u{display:flex;align-items:baseline;gap:.5rem}.step-status-icon.svelte-pys2u{font-size:.75rem;font-weight:600;width:14px;flex-shrink:0;color:var(--text-muted)}.step-fail.svelte-pys2u .step-status-icon:where(.svelte-pys2u){color:var(--fail)}.step.svelte-pys2u:not(.step-fail):not(.step-skip) .step-status-icon:where(.svelte-pys2u){color:var(--pass)}.kw.svelte-pys2u{font-size:.72rem;font-weight:500;letter-spacing:.04em;flex-shrink:0;padding:.05rem .4rem;border-radius:3px;font-family:JetBrains Mono,monospace}.kw-given.svelte-pys2u{background:var(--accent-soft);color:var(--accent)}.kw-when.svelte-pys2u{background:var(--warn-soft);color:var(--warn)}.kw-then.svelte-pys2u{background:var(--pass-soft);color:var(--pass)}.kw-and.svelte-pys2u{background:var(--bg-elevated);color:var(--text-muted);border:1px solid var(--border)}.step-name.svelte-pys2u{flex:1;font-size:.8125rem;color:var(--text);font-family:JetBrains Mono,monospace}.step-duration.svelte-pys2u{font-size:.7rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;flex-shrink:0}.step-error.svelte-pys2u{margin:.375rem 0 .25rem 1.75rem;padding:.625rem .875rem;background:var(--fail-soft);color:var(--fail);border-radius:var(--radius-sm);font-family:JetBrains Mono,monospace;font-size:.75rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;border-left:2px solid var(--fail)}.screenshot-wrap.svelte-pys2u{margin:.5rem 0 .25rem 1.75rem}.screenshot-toggle.svelte-pys2u{font-size:.75rem;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.screenshot.svelte-pys2u{margin-top:.5rem;max-width:100%;border-radius:var(--radius-sm);border:1px solid var(--border)}.loading-state.svelte-pys2u{display:flex;justify-content:center;padding:4rem 0}.loading-dots.svelte-pys2u{display:flex;gap:6px;align-items:center}.loading-dots.svelte-pys2u span:where(.svelte-pys2u){width:8px;height:8px;border-radius:50%;background:var(--accent);animation:svelte-pys2u-dotBeat 1.2s ease-in-out infinite}.loading-dots.svelte-pys2u span:where(.svelte-pys2u):nth-child(2){animation-delay:.2s}.loading-dots.svelte-pys2u span:where(.svelte-pys2u):nth-child(3){animation-delay:.4s}@keyframes svelte-pys2u-dotBeat{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.6)}}.error-state.svelte-pys2u{padding:3rem 0;color:var(--fail);text-align:center;font-size:.9375rem}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
.backdrop.svelte-aus6t7{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.panel.svelte-aus6t7{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem;width:100%;max-width:480px;box-shadow:0 4px 6px #0000000a,0 24px 64px #00000024}.header.svelte-aus6t7{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.title.svelte-aus6t7{font-family:var(--font-display);font-size:1.2rem;font-weight:400;color:var(--text)}.close-btn.svelte-aus6t7{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast)}.close-btn.svelte-aus6t7:hover{background:var(--bg-subtle);color:var(--text)}.body.svelte-aus6t7{display:flex;flex-direction:column;gap:1rem}.page-header.svelte-1ugkbyh{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.header-row.svelte-1ugkbyh{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.page-header.svelte-1ugkbyh h1:where(.svelte-1ugkbyh){font-size:2.5rem;margin-bottom:.375rem}.subtitle.svelte-1ugkbyh{color:var(--text-muted);font-size:.9375rem}.job-row.svelte-1ugkbyh{animation:fadeUp .32s var(--ease-out) both}.toast.svelte-1ugkbyh{margin-bottom:1.25rem;border-radius:var(--radius-md)}.table-wrap.svelte-1ugkbyh{overflow-x:auto}.job-name.svelte-1ugkbyh{font-weight:400;font-size:.875rem}.tag-text.svelte-1ugkbyh{font-family:JetBrains Mono,monospace;font-size:.78rem;color:var(--text-muted)}.actions-cell.svelte-1ugkbyh{display:flex;gap:.375rem}.empty.svelte-1ugkbyh{padding:3rem 1.5rem;color:var(--text-muted);font-size:.9375rem;text-align:center}.modal-form.svelte-1ugkbyh{display:flex;flex-direction:column;gap:1rem}.form-error.svelte-1ugkbyh{font-size:.8125rem;color:var(--fail)}.confirm-text.svelte-1ugkbyh{font-size:.9375rem;color:var(--text-muted);line-height:1.6}.confirm-text.svelte-1ugkbyh strong:where(.svelte-1ugkbyh){color:var(--text);font-weight:500}.confirm-actions.svelte-1ugkbyh{display:flex;gap:.625rem;padding-top:.25rem}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
.badge.svelte-imjoo5{display:inline-flex;align-items:center;font-size:.68rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;padding:.2rem .6rem;border-radius:100px;white-space:nowrap}.pass.svelte-imjoo5{background:var(--pass-soft);color:var(--pass)}.fail.svelte-imjoo5{background:var(--fail-soft);color:var(--fail)}.tag.svelte-imjoo5{background:var(--accent-soft);color:var(--accent)}.schedule.svelte-imjoo5{background:var(--warn-soft);color:var(--warn)}.neutral.svelte-imjoo5{background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border)}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
.btn.svelte-1mw9qtj{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;font-family:var(--font-body);font-weight:400;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out),opacity var(--duration-fast)}.btn.svelte-1mw9qtj:active:not(:disabled){transform:scale(.97)}.btn.svelte-1mw9qtj:disabled{opacity:.38;cursor:not-allowed}.sm.svelte-1mw9qtj{font-size:.75rem;padding:.3rem .75rem;border-radius:var(--radius-sm)}.md.svelte-1mw9qtj{font-size:.875rem;padding:.55rem 1.25rem}.primary.svelte-1mw9qtj{background:var(--accent);color:#fff;border-color:var(--accent)}.primary.svelte-1mw9qtj:hover:not(:disabled){filter:brightness(1.12);box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 30%,transparent)}.ghost.svelte-1mw9qtj{background:transparent;color:var(--text-muted);border-color:var(--border)}.ghost.svelte-1mw9qtj:hover:not(:disabled){background:var(--bg-subtle);color:var(--text);border-color:var(--text-muted)}.danger.svelte-1mw9qtj{background:transparent;color:var(--fail);border-color:var(--fail)}.danger.svelte-1mw9qtj:hover:not(:disabled){background:var(--fail-soft)}.outline.svelte-1mw9qtj{background:transparent;color:var(--accent);border-color:var(--accent)}.outline.svelte-1mw9qtj:hover:not(:disabled){background:var(--accent-soft)}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.flex{display:flex}.table{display:table}.contents{display:contents}.hidden{display:none}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-wrap{flex-wrap:wrap}.border{border-width:1px}.uppercase{text-transform:uppercase}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--bg: #fdfcfb;--bg-subtle: #f7f6f4;--bg-elevated: #ffffff;--border: #e9e5df;--text: #18160f;--text-muted: #9c9185;--accent: #5c1b87;--accent-soft: #f3eaff;--pass: #16a34a;--pass-soft: #dcfce7;--fail: #dc2626;--fail-soft: #fee2e2;--warn: #d97706;--warn-soft: #fef3c7;--terminal-bg: #0d0c08;--terminal-text: #d6d0c8;--font-display: "Playfair Display", Georgia, serif;--font-body: "DM Sans", system-ui, -apple-system, sans-serif;--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .14s;--duration-base: .24s;--duration-slow: .4s;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px}[data-theme=dark]{--bg: #101009;--bg-subtle: #1a1910;--bg-elevated: #201f14;--border: #2e2c1e;--text: #f0ede6;--text-muted: #706a5e;--accent: #d0a5f5;--accent-soft: #1b0d30;--pass: #22c55e;--pass-soft: #0d2118;--fail: #f87171;--fail-soft: #2d1010;--warn: #fbbf24;--warn-soft: #2a1f06;--terminal-bg: #080807;--terminal-text: #cbc5bd}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-weight:300;font-size:1rem;line-height:1.65;background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.07'/%3E%3C/svg%3E");background-size:200px 200px;color:var(--text);transition:background-color var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out);-webkit-font-smoothing:antialiased}h1{font-family:var(--font-display);font-weight:400;line-height:1.1;letter-spacing:-.015em;color:var(--text)}h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.2;color:var(--text)}a{color:inherit;text-decoration:none}button{font-family:var(--font-body)}.field{display:flex;flex-direction:column;gap:.375rem}.field-label{display:flex;justify-content:space-between;font-size:.8125rem;font-weight:400;color:var(--text-muted)}.field-hint{font-size:.75rem;color:var(--text-muted)}.field-input{width:100%;padding:.6rem .875rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text);font-family:var(--font-body);font-size:.875rem;font-weight:300;outline:none;transition:border-color var(--duration-fast),box-shadow var(--duration-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none}.field-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field-input:disabled{opacity:.5;cursor:not-allowed}.field-input::-moz-placeholder{color:var(--text-muted)}.field-input::placeholder{color:var(--text-muted)}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{text-align:left;padding:.5rem 1rem;font-family:var(--font-body);font-weight:500;font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border)}.data-table td{padding:.875rem 1rem;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;transition:background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.card-title{font-family:var(--font-display);font-size:1.25rem;font-weight:400;color:var(--text);margin-bottom:.25rem}.card-subtitle{font-size:.8125rem;color:var(--text-muted);margin-bottom:1.25rem}.alert{display:flex;align-items:center;gap:.625rem;padding:.75rem 1rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:400}.alert-success{background:var(--pass-soft);color:var(--pass)}.alert-error{background:var(--fail-soft);color:var(--fail)}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.nav.svelte-6bgush{position:sticky;top:0;z-index:40;background:var(--bg);border-bottom:1px solid var(--border);transition:background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.inner.svelte-6bgush{max-width:1200px;margin:0 auto;padding:0 1.5rem;height:56px;display:flex;align-items:center;gap:2rem}.brand.svelte-6bgush{font-size:1.2rem;letter-spacing:-.02em;flex-shrink:0;text-decoration:none}.brand-serif.svelte-6bgush{font-family:var(--font-display);font-weight:400;color:var(--accent)}.brand-sans.svelte-6bgush{font-family:var(--font-body);font-weight:400;color:var(--text)}.links.svelte-6bgush{display:flex;gap:.125rem;flex:1}.link.svelte-6bgush{font-size:.875rem;font-weight:400;color:var(--text-muted);text-decoration:none;padding:.35rem .75rem;border-radius:var(--radius-sm);transition:color var(--duration-fast),background var(--duration-fast)}.link.svelte-6bgush:hover{color:var(--text);background:var(--bg-subtle)}.link.active.svelte-6bgush{color:var(--accent);background:var(--accent-soft)}.actions.svelte-6bgush{display:flex;align-items:center;gap:.5rem;margin-left:auto}.theme-btn.svelte-6bgush{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}.theme-btn.svelte-6bgush:hover{background:var(--bg-subtle);color:var(--text);border-color:var(--text-muted)}.hamburger.svelte-6bgush{display:none;flex-direction:column;justify-content:center;gap:4px;width:34px;height:34px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:0 8px}.hamburger.svelte-6bgush span:where(.svelte-6bgush){display:block;width:100%;height:1.5px;background:var(--text-muted);border-radius:2px;transform-origin:center;transition:transform var(--duration-base) var(--ease-out),opacity var(--duration-fast)}.hamburger.svelte-6bgush span.rotated:where(.svelte-6bgush){transform:translateY(5.5px) rotate(45deg)}.hamburger.svelte-6bgush span.hidden:where(.svelte-6bgush){opacity:0}.hamburger.svelte-6bgush span.rotated-reverse:where(.svelte-6bgush){transform:translateY(-5.5px) rotate(-45deg)}.mobile-menu.svelte-6bgush{border-top:1px solid var(--border);padding:.75rem 1.5rem 1rem;display:flex;flex-direction:column;gap:.125rem}.mobile-link.svelte-6bgush{color:var(--text-muted);text-decoration:none;font-size:.9375rem;font-weight:400;padding:.5rem .75rem;border-radius:var(--radius-sm);transition:background var(--duration-fast),color var(--duration-fast)}.mobile-link.svelte-6bgush:hover,.mobile-link.active.svelte-6bgush{background:var(--bg-subtle);color:var(--text)}.mobile-link.active.svelte-6bgush{color:var(--accent);background:var(--accent-soft)}@media (max-width: 640px){.links.svelte-6bgush{display:none}.hamburger.svelte-6bgush{display:flex}}.shell.svelte-28zx1m{max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem 5rem}.terminal-wrap.svelte-olniy1{border-radius:var(--radius-md);overflow:hidden;border:1px solid rgba(255,255,255,.06)}.terminal-bar.svelte-olniy1{display:flex;align-items:center;gap:6px;padding:.6rem .875rem;background:#0000004d}.dot.svelte-olniy1{display:block;width:10px;height:10px;border-radius:50%}.red.svelte-olniy1{background:#ff5f57}.yellow.svelte-olniy1{background:#febc2e}.green.svelte-olniy1{background:#28c840}.terminal.svelte-olniy1{font-family:JetBrains Mono,Fira Code,Cascadia Code,Courier New,monospace;font-size:.78rem;line-height:1.75;background:var(--terminal-bg);color:var(--terminal-text);padding:1rem;min-height:220px;max-height:280px;overflow-y:auto;white-space:pre-wrap;word-break:break-word;margin:0}.terminal.svelte-olniy1::-webkit-scrollbar{width:4px}.terminal.svelte-olniy1::-webkit-scrollbar-track{background:transparent}.terminal.svelte-olniy1::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.panel.svelte-ynu3lh{position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--bg-elevated);border-top:1px solid var(--border);box-shadow:0 -4px 24px #0000000f;transition:box-shadow var(--duration-base) var(--ease-out)}.panel.expanded.svelte-ynu3lh{box-shadow:0 -8px 40px #0000001a}.bar.svelte-ynu3lh{display:flex;align-items:center;gap:.75rem;padding:0 1.5rem;height:48px;cursor:default}.bar-left.svelte-ynu3lh{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.status-dot.svelte-ynu3lh{flex-shrink:0;width:8px;height:8px;border-radius:50%;transition:background var(--duration-base)}.status-dot.pulse.svelte-ynu3lh{animation:svelte-ynu3lh-statusPulse 1.6s ease-in-out infinite}@keyframes svelte-ynu3lh-statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}.status-label.svelte-ynu3lh{font-size:.7rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.run-id.svelte-ynu3lh{font-size:.75rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-dots.svelte-ynu3lh{display:flex;align-items:center;gap:4px;flex-shrink:0}.dot.svelte-ynu3lh{width:7px;height:7px;border-radius:50%;background:var(--border);transition:background var(--duration-base),transform var(--duration-fast)}.dot.running.svelte-ynu3lh{background:var(--pass);animation:svelte-ynu3lh-dotBeat 1.4s ease-in-out infinite}.dot.pass.svelte-ynu3lh{background:var(--pass)}.dot.fail.svelte-ynu3lh{background:var(--fail)}@keyframes svelte-ynu3lh-dotBeat{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.65)}}.expand-btn.svelte-ynu3lh{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast)}.expand-btn.svelte-ynu3lh:hover{background:var(--bg-subtle);color:var(--text)}.expand-btn.svelte-ynu3lh svg:where(.svelte-ynu3lh){transition:transform var(--duration-base) var(--ease-out)}.expand-btn.svelte-ynu3lh svg.rotated:where(.svelte-ynu3lh){transform:rotate(180deg)}.body.svelte-ynu3lh{padding:.875rem 1.5rem 1.125rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.75rem}.controls.svelte-ynu3lh{display:flex;align-items:center;gap:.625rem}.run-input.svelte-ynu3lh{flex:1}.workers-control.svelte-ynu3lh{display:flex;gap:2px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px;flex-shrink:0}.worker-btn.svelte-ynu3lh{font-family:var(--font-body);font-size:.75rem;font-weight:400;min-width:2rem;padding:.2rem .5rem;border:none;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast)}.worker-btn.svelte-ynu3lh:hover:not(.active){background:var(--bg-elevated);color:var(--text)}.worker-btn.active.svelte-ynu3lh{background:var(--bg-elevated);color:var(--accent);font-weight:500;box-shadow:0 1px 3px #00000014}.report-row.svelte-ynu3lh{display:flex}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
.pagination.svelte-tsubiy{display:flex;align-items:center;justify-content:center;gap:.25rem}button.svelte-tsubiy{min-width:2rem;height:2rem;padding:0 .25rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-muted);font-family:var(--font-body);font-size:.8125rem;cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}button.svelte-tsubiy:disabled{opacity:.3;cursor:not-allowed}button.active.svelte-tsubiy{background:var(--accent);color:#fff;border-color:var(--accent)}button.svelte-tsubiy:hover:not(:disabled):not(.active){background:var(--bg-subtle);color:var(--text)}.page-header.svelte-wxbf05{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.header-top.svelte-wxbf05{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}h1.svelte-wxbf05{font-size:2.5rem;margin-bottom:.25rem}.subtitle.svelte-wxbf05{color:var(--text-muted);font-size:.875rem}.rate-display.svelte-wxbf05{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.rate-number.svelte-wxbf05{font-family:var(--font-display);font-size:2.75rem;line-height:1;font-weight:400}.rate-number.pass.svelte-wxbf05{color:var(--pass)}.rate-number.warn.svelte-wxbf05{color:var(--warn)}.rate-number.fail.svelte-wxbf05{color:var(--fail)}.rate-label.svelte-wxbf05{font-size:.75rem;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase}.stats-bar.svelte-wxbf05{margin-bottom:1rem}.pass-bar-track.svelte-wxbf05{height:3px;background:var(--fail-soft);border-radius:100px;overflow:hidden;margin-bottom:.5rem}.pass-bar-fill.svelte-wxbf05{height:100%;background:var(--pass);border-radius:100px;transition:width .9s var(--ease-out) .1s}.bar-legend.svelte-wxbf05{display:flex;gap:1rem}.legend-pass.svelte-wxbf05{font-size:.75rem;color:var(--pass);font-weight:500}.legend-fail.svelte-wxbf05{font-size:.75rem;color:var(--fail);font-weight:500}.trend-row.svelte-wxbf05{display:flex;align-items:center;gap:.75rem}.trend-label.svelte-wxbf05{font-size:.7rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.trend-dots.svelte-wxbf05{display:flex;align-items:center;gap:5px}.trend-dot.svelte-wxbf05{width:9px;height:9px;border-radius:50%;transition:transform var(--duration-fast);animation:fadeUp .3s var(--ease-out) both}.trend-dot.svelte-wxbf05:hover{transform:scale(1.4)}.trend-dot.pass.svelte-wxbf05{background:var(--pass)}.trend-dot.fail.svelte-wxbf05{background:var(--fail)}.trend-hint.svelte-wxbf05{font-size:.68rem;color:var(--text-muted);opacity:.6}.report-list.svelte-wxbf05{display:flex;flex-direction:column;gap:.5rem}.report-item.svelte-wxbf05{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);text-decoration:none;color:inherit;border-left-width:3px;transition:background var(--duration-fast),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast);animation:fadeUp .32s var(--ease-out) both}.report-item.svelte-wxbf05:hover{background:var(--bg-subtle);transform:translate(2px);box-shadow:0 2px 12px #0000000a}.report-item.is-pass.svelte-wxbf05{border-left-color:var(--pass)}.report-item.is-fail.svelte-wxbf05{border-left-color:var(--fail)}.item-left.svelte-wxbf05{display:flex;align-items:center;gap:.875rem;min-width:0}.status-mark.svelte-wxbf05{font-size:.875rem;font-weight:600;flex-shrink:0;width:20px;text-align:center}.status-mark.pass.svelte-wxbf05{color:var(--pass)}.status-mark.fail.svelte-wxbf05{color:var(--fail)}.item-meta.svelte-wxbf05{display:flex;align-items:center;gap:.625rem;min-width:0}.item-tags.svelte-wxbf05{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text);white-space:nowrap}.item-badges.svelte-wxbf05{flex-shrink:0}.item-right.svelte-wxbf05{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.item-date.svelte-wxbf05{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.item-arrow.svelte-wxbf05{color:var(--text-muted);transition:transform var(--duration-fast) var(--ease-out),color var(--duration-fast)}.report-item.svelte-wxbf05:hover .item-arrow:where(.svelte-wxbf05){transform:translate(3px);color:var(--text)}.pagination-wrap.svelte-wxbf05{margin-top:1.25rem}.empty.svelte-wxbf05{color:var(--text-muted);font-size:.9375rem;padding:3rem 0;text-align:center}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
This file is part of Plum.
|
|
3
|
+
|
|
4
|
+
Plum is free software: you can redistribute it and/or modify
|
|
5
|
+
it under the terms of the GNU General Public License as published by
|
|
6
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
(at your option) any later version.
|
|
8
|
+
|
|
9
|
+
Plum is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with Plum. If not, see https://www.gnu.org/licenses/.
|
|
16
|
+
*/
|
|
17
|
+
.page-header.svelte-10529e9{margin-bottom:1.75rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.header-top.svelte-10529e9{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}h1.svelte-10529e9{font-size:2.5rem;margin-bottom:.25rem}.subtitle.svelte-10529e9{color:var(--text-muted);font-size:.875rem}.search-row.svelte-10529e9{display:flex;gap:.75rem}.search-wrap.svelte-10529e9{position:relative;flex:1;max-width:480px}.search-icon.svelte-10529e9{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search-input.svelte-10529e9{width:100%;padding:.55rem .875rem .55rem 2.25rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text);font-family:var(--font-body);font-size:.875rem;font-weight:300;outline:none;transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.search-input.svelte-10529e9:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--bg-elevated)}.search-input.svelte-10529e9::-moz-placeholder{color:var(--text-muted)}.search-input.svelte-10529e9::placeholder{color:var(--text-muted)}.search-clear.svelte-10529e9{position:absolute;right:.625rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:none;background:var(--border);color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast)}.search-clear.svelte-10529e9:hover{background:var(--text-muted);color:var(--bg)}.suites.svelte-10529e9{display:flex;flex-direction:column;gap:1rem}.suite.svelte-10529e9{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:visible;background:var(--bg-elevated);animation:fadeUp .35s var(--ease-out) both}.suite-header.svelte-10529e9{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.25rem;background:var(--bg-subtle);border-bottom:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.suite-meta.svelte-10529e9{display:flex;align-items:center;gap:.625rem;flex:1;min-width:0}.suite-badges.svelte-10529e9{display:flex;gap:.25rem;flex-shrink:0}.suite-name.svelte-10529e9{font-size:.9rem;font-weight:400;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suite-count.svelte-10529e9{font-size:.75rem;color:var(--text-muted);flex-shrink:0}.run-btn.svelte-10529e9{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-body);font-size:.75rem;font-weight:400;padding:.3rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}.run-btn.svelte-10529e9:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.tests.svelte-10529e9{display:flex;flex-direction:column}.test-row.svelte-10529e9{border-bottom:1px solid var(--border);animation:fadeUp .3s var(--ease-out) both}.test-row.svelte-10529e9:last-child{border-bottom:none}.test-main.svelte-10529e9{display:flex;align-items:center;gap:.625rem;padding:.75rem 1.25rem}.run-icon-btn.svelte-10529e9{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}.run-icon-btn.svelte-10529e9:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.test-ids.svelte-10529e9{display:flex;gap:.25rem;flex-shrink:0}.id-pill.svelte-10529e9{position:relative;font-size:.68rem;font-weight:500;letter-spacing:.04em;color:var(--accent);background:var(--accent-soft);border:none;border-radius:100px;padding:.15rem .55rem;cursor:pointer;font-family:JetBrains Mono,monospace;transition:background var(--duration-fast),color var(--duration-fast),filter var(--duration-fast)}.id-pill.svelte-10529e9:hover{filter:brightness(.92)}.id-pill.copied.svelte-10529e9{color:var(--pass);background:var(--pass-soft)}.id-pill.copied.svelte-10529e9:after{content:"Copied";position:absolute;left:50%;bottom:calc(100% + 6px);z-index:50;transform:translate(-50%);padding:.16rem .42rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--pass);box-shadow:0 4px 14px #00000014;font-family:var(--font-body);font-size:.65rem;font-weight:500;letter-spacing:0;pointer-events:none;animation:svelte-10529e9-copiedPop 1.4s var(--ease-out) both}.test-name.svelte-10529e9{flex:1;font-size:.875rem;color:var(--text);min-width:0}.outline-badge.svelte-10529e9{display:inline-block;font-size:.62rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;background:var(--warn-soft);color:var(--warn);padding:.1rem .4rem;border-radius:100px;margin-left:.4rem;vertical-align:middle}.steps-toggle.svelte-10529e9{display:inline-flex;align-items:center;gap:.2rem;font-family:var(--font-body);font-size:.72rem;font-weight:400;color:var(--text-muted);background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);padding:.2rem .5rem;cursor:pointer;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast)}.steps-toggle.svelte-10529e9:hover{background:var(--bg-subtle);color:var(--text)}.steps-toggle.svelte-10529e9 svg:where(.svelte-10529e9){transition:transform var(--duration-fast) var(--ease-out)}.steps-toggle.svelte-10529e9 svg.rotated:where(.svelte-10529e9){transform:rotate(90deg)}.steps.svelte-10529e9{padding:.75rem 1.25rem .875rem 3.75rem;background:var(--bg-subtle);border-top:1px solid var(--border)}.step-list.svelte-10529e9{list-style:none;display:flex;flex-direction:column;gap:.3rem}.step.svelte-10529e9{font-size:.8125rem;color:var(--text-muted);font-family:JetBrains Mono,monospace;line-height:1.5;padding-left:1rem;position:relative}.step.svelte-10529e9:before{content:"›";position:absolute;left:0;color:var(--accent);font-family:var(--font-body)}.examples.svelte-10529e9{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed var(--border)}.examples-label.svelte-10529e9{display:block;font-size:.68rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem}.examples-table-wrap.svelte-10529e9{overflow-x:auto}.examples-table.svelte-10529e9{border-collapse:collapse;font-size:.78rem;font-family:JetBrains Mono,monospace;width:auto}.examples-table.svelte-10529e9 th:where(.svelte-10529e9){text-align:left;padding:.3rem .75rem;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);font-family:var(--font-body);font-weight:500}.examples-table.svelte-10529e9 td:where(.svelte-10529e9){padding:.3rem .75rem;color:var(--text-muted);border-bottom:1px solid var(--border)}.examples-table.svelte-10529e9 tbody:where(.svelte-10529e9) tr:where(.svelte-10529e9):last-child td:where(.svelte-10529e9){border-bottom:none}.empty.svelte-10529e9{color:var(--text-muted);font-size:.9375rem;padding:3rem 0;text-align:center}@keyframes svelte-10529e9-copiedPop{0%{opacity:0;transform:translate(-50%,4px) scale(.96)}12%,78%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-2px) scale(.98)}}
|