@screenbook/ui 0.0.1 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/dist/client/_astro/coverage.BnE2oGo8.css +1 -0
- package/dist/client/_astro/coverage.Cb0pX2ic.css +1 -0
- package/dist/client/_astro/graph.astro_astro_type_script_index_0_lang.B0fEnVdy.js +1 -0
- package/dist/server/_@astrojs-ssr-adapter.mjs +1 -1
- package/dist/server/chunks/{_@astrojs-ssr-adapter_DgsYudHz.mjs → _@astrojs-ssr-adapter_BCPoO8PO.mjs} +1 -1
- package/dist/server/chunks/{astro-designed-error-pages_BvPhMmw0.mjs → astro-designed-error-pages_7IL58RLD.mjs} +2 -2
- package/dist/server/chunks/{impactAnalysis_Bz5lMdmy.mjs → impactAnalysis_LvYEc57d.mjs} +11 -4
- package/dist/server/chunks/loadScreens_JhK3F9tC.mjs +39 -0
- package/dist/server/chunks/{node_DoTkMCOi.mjs → node_u1SigWFL.mjs} +5 -5
- package/dist/server/chunks/{sharp_DHNfMLYY.mjs → sharp_ADxfwDJE.mjs} +1 -1
- package/dist/server/entry.mjs +5 -5
- package/dist/server/manifest_CicDtuHD.mjs +101 -0
- package/dist/server/pages/_image.astro.mjs +1 -1
- package/dist/server/pages/coverage.astro.mjs +8 -8
- package/dist/server/pages/graph.astro.mjs +8 -8
- package/dist/server/pages/impact.astro.mjs +10 -10
- package/dist/server/pages/index.astro.mjs +5 -5
- package/dist/server/pages/screen/_id_.astro.mjs +9 -9
- package/package.json +41 -41
- package/src/layouts/Layout.astro +28 -11
- package/src/pages/coverage.astro +6 -6
- package/src/pages/graph.astro +16 -12
- package/src/pages/impact.astro +12 -9
- package/src/pages/index.astro +18 -9
- package/src/pages/screen/[id].astro +6 -6
- package/src/styles/global.css +55 -13
- package/src/utils/impactAnalysis.ts +12 -5
- package/.astro/data-store.json +0 -1
- package/.astro/settings.json +0 -5
- package/.screenbook/coverage.json +0 -37
- package/.screenbook/screens.json +0 -90
- package/LICENSE +0 -21
- package/dist/client/_astro/coverage.CKIVg4LY.css +0 -1
- package/dist/client/_astro/coverage.DDJMzKCq.css +0 -1
- package/dist/client/_astro/graph.astro_astro_type_script_index_0_lang.1HlATQ1g.js +0 -1
- package/dist/server/chunks/loadScreens_DJf-tycc.mjs +0 -39
- package/dist/server/manifest_-V1HEnR8.mjs +0 -101
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# @screenbook/ui
|
|
2
|
+
|
|
3
|
+
## 0.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`0067b16`](https://github.com/wadakatu/screenbook/commit/0067b16006cdf9d0a52e89558b42d33a5a4b0679) - Initial release of Screenbook - screen catalog and navigation graph generator for frontend applications.
|
|
8
|
+
|
|
9
|
+
Features:
|
|
10
|
+
- `defineScreen()` for type-safe screen metadata definitions
|
|
11
|
+
- `screenbook build` to generate screens.json
|
|
12
|
+
- `screenbook dev` to start the UI server
|
|
13
|
+
- `screenbook lint` to detect missing screen.meta files
|
|
14
|
+
- `screenbook init` to scaffold initial configuration
|
|
15
|
+
- `screenbook generate` to generate screen.meta.ts files
|
|
16
|
+
- `screenbook pr-impact` for PR impact analysis
|
|
17
|
+
- Screen list with search and filtering
|
|
18
|
+
- Navigation graph visualization with Mermaid
|
|
19
|
+
|
|
20
|
+
### Patch Changes
|
|
21
|
+
|
|
22
|
+
- Updated dependencies [[`0067b16`](https://github.com/wadakatu/screenbook/commit/0067b16006cdf9d0a52e89558b42d33a5a4b0679)]:
|
|
23
|
+
- @screenbook/core@0.1.0
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#111;--color-bg-muted:#222;--color-surface:#1a1a1a;--color-surface-hover:#252525;--color-border:#2e2e2e;--color-border-hover:#3a3a3a;--color-text:#eee;--color-text-secondary:#a0a0a0;--color-text-muted:#8a8a8a;--color-accent:#5eead4;--color-accent-hover:#99f6e4;--color-accent-bg:#5eead41a;--color-success:#4ade80;--color-warning:#fbbf24}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.hidden{display:none}.flex-shrink{flex-shrink:1}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.border-green-500\/30{border-color:#00c7584d}@supports (color:color-mix(in lab,red,red)){.border-green-500\/30{border-color:color-mix(in oklab,var(--color-green-500)30%,transparent)}}.border-red-500\/30{border-color:#fb2c364d}@supports (color:color-mix(in lab,red,red)){.border-red-500\/30{border-color:color-mix(in oklab,var(--color-red-500)30%,transparent)}}.border-yellow-500\/30{border-color:#edb2004d}@supports (color:color-mix(in lab,red,red)){.border-yellow-500\/30{border-color:color-mix(in oklab,var(--color-yellow-500)30%,transparent)}}.bg-green-500\/20{background-color:#00c75833}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/20{background-color:color-mix(in oklab,var(--color-green-500)20%,transparent)}}.bg-red-500\/20{background-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/20{background-color:color-mix(in oklab,var(--color-red-500)20%,transparent)}}.bg-yellow-500\/20{background-color:#edb20033}@supports (color:color-mix(in lab,red,red)){.bg-yellow-500\/20{background-color:color-mix(in oklab,var(--color-yellow-500)20%,transparent)}}.text-green-400{color:var(--color-green-400)}.text-red-400{color:var(--color-red-400)}.text-yellow-400{color:var(--color-yellow-400)}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-text);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:var(--text-base);line-height:1.6}h1,h2,h3,h4{color:var(--color-text);font-weight:600;line-height:1.3}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}p{color:var(--color-text-secondary)}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover)}code{background:var(--color-bg-muted);border-radius:var(--radius-sm);padding:.2em .4em;font-family:ui-monospace,SF Mono,Menlo,Monaco,monospace;font-size:.9em}::selection{background:#5eead433}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.header{border-bottom:1px solid var(--color-border);background:var(--color-bg);z-index:100;padding:16px 0;position:sticky;top:0}.header-content{justify-content:space-between;align-items:center;gap:24px;display:flex}.logo{font-weight:600;font-size:var(--text-lg);color:var(--color-text);align-items:center;gap:10px;display:flex}.logo:hover{color:var(--color-text)}.logo-icon{width:28px;height:28px;color:var(--color-accent)}.nav{align-items:center;gap:4px;display:flex}.nav-link{font-size:var(--text-sm);color:var(--color-text-secondary);border-radius:var(--radius-md);align-items:center;gap:6px;padding:8px 14px;font-weight:500;transition:all .15s;display:flex}.nav-link:hover{color:var(--color-text);background:var(--color-surface-hover)}.nav-link.active{color:var(--color-accent);background:var(--color-accent-bg)}.nav-link svg{width:16px;height:16px}.page-header{padding:48px 0 32px}.page-title{margin-bottom:8px}.page-description{font-size:var(--text-lg);color:var(--color-text-muted);max-width:600px}.search-wrapper{max-width:400px;margin-bottom:32px;position:relative}.search-icon{width:18px;height:18px;color:var(--color-text-muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input{width:100%;font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);outline:none;padding:10px 14px 10px 42px;transition:border-color .15s}.search-input::placeholder{color:var(--color-text-muted)}.search-input:focus{border-color:var(--color-accent)}.tags{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.tag{font-size:var(--text-xs);color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;border-radius:9999px;align-items:center;padding:5px 12px;font-weight:500;transition:all .15s;display:inline-flex}.tag:hover{border-color:var(--color-border-hover);color:var(--color-text)}.tag.active{background:var(--color-accent-bg);border-color:var(--color-accent);color:var(--color-accent)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;transition:border-color .15s}.card-link{color:inherit;display:block}.card-link:hover{color:inherit}.card-link:hover .card{border-color:var(--color-border-hover)}.card-link:hover .card-title{color:var(--color-accent)}.card-title{font-size:var(--text-base);margin-bottom:4px;font-weight:600;transition:color .15s}.card-route{font-family:ui-monospace,monospace;font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:12px}.card-meta{font-size:var(--text-xs);color:var(--color-text-muted);flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.card-meta-item{align-items:center;gap:4px;display:flex}.card-meta-item svg{width:14px;height:14px}.card-tags{flex-wrap:wrap;gap:6px;display:flex}.card-tag{font-size:var(--text-xs);background:var(--color-bg-muted);color:var(--color-text-secondary);border-radius:4px;padding:3px 8px}.screen-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;display:grid}.section{margin-bottom:32px}.section-title{font-size:var(--text-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border);margin-bottom:16px;padding-bottom:8px;font-weight:600}.detail-header{border-bottom:1px solid var(--color-border);margin-bottom:32px;padding:32px 0}.detail-title{font-size:var(--text-2xl);margin-bottom:8px}.detail-route{font-family:ui-monospace,monospace;font-size:var(--text-sm);color:var(--color-accent);background:var(--color-accent-bg);border-radius:var(--radius-md);align-items:center;gap:8px;padding:6px 12px;display:inline-flex}.detail-route svg{width:16px;height:16px}.detail-content{grid-template-columns:1fr 320px;gap:48px;display:grid}@media(max-width:900px){.detail-content{grid-template-columns:1fr;gap:32px}}.info-list{flex-direction:column;gap:16px;display:flex}.info-item{gap:16px;display:flex}.info-label{width:100px;font-size:var(--text-sm);color:var(--color-text-muted);flex-shrink:0}.info-value{font-size:var(--text-sm);color:var(--color-text)}.dep-list{flex-direction:column;gap:8px;display:flex}.dep-item{background:var(--color-bg-muted);border-radius:var(--radius-md);font-family:ui-monospace,monospace;font-size:var(--text-sm);align-items:center;gap:10px;padding:10px 12px;display:flex}.dep-item svg{width:16px;height:16px;color:var(--color-text-muted)}.dep-item-link{color:inherit;justify-content:space-between;align-items:center;text-decoration:none;transition:all .15s;display:flex}.dep-item-link:hover{background:var(--color-surface-hover);color:inherit}.dep-item-main{align-items:center;gap:10px;display:flex}.dep-item-meta{align-items:center;gap:8px;display:flex}.dep-count{font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-bg);border-radius:var(--radius-sm);padding:2px 8px}.dep-arrow{width:14px;height:14px;color:var(--color-accent);opacity:0;transition:opacity .15s}.dep-item-link:hover .dep-arrow{opacity:1}.screen-link-list{flex-direction:column;gap:8px;display:flex}.screen-link{background:var(--color-bg-muted);border-radius:var(--radius-md);color:var(--color-text);justify-content:space-between;align-items:center;padding:12px;transition:background .15s;display:flex}.screen-link:hover{background:var(--color-surface-hover);color:var(--color-text)}.screen-link-info{flex-direction:column;gap:2px;display:flex}.screen-link-title{font-size:var(--text-sm);font-weight:500}.screen-link-id{font-size:var(--text-xs);color:var(--color-text-muted);font-family:ui-monospace,monospace}.screen-link-arrow{width:16px;height:16px;color:var(--color-text-muted)}.sidebar-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:16px;padding:20px}.sidebar-card-title{font-size:var(--text-sm);color:var(--color-text-muted);align-items:center;gap:8px;margin-bottom:16px;font-weight:600;display:flex}.sidebar-card-title svg{width:16px;height:16px}.graph-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);justify-content:center;align-items:center;min-height:400px;padding:32px;display:flex}.graph-legend{font-size:var(--text-sm);color:var(--color-text-muted);justify-content:center;gap:32px;margin-top:24px;display:flex}.graph-legend-item{align-items:center;gap:8px;display:flex}.legend-node{background:var(--color-bg-muted);border:1px solid var(--color-border-hover);border-radius:4px;width:32px;height:20px}.legend-edge{background:var(--color-accent);width:32px;height:2px}.empty-state{text-align:center;max-width:400px;margin:0 auto;padding:64px 24px}.empty-state-icon{width:48px;height:48px;color:var(--color-text-muted);margin:0 auto 16px}.empty-state-title{font-size:var(--text-lg);margin-bottom:8px}.empty-state-description{color:var(--color-text-muted);margin-bottom:24px}.empty-state-code{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:ui-monospace,monospace;font-size:var(--text-sm);align-items:center;gap:8px;padding:12px 20px;display:inline-flex}.empty-state-code .prompt{color:var(--color-text-muted)}.empty-state-steps{text-align:left;flex-direction:column;gap:16px;margin:32px 0;display:flex}.empty-state-step{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:flex-start;gap:16px;padding:16px;display:flex}.step-number{background:var(--color-accent-bg);width:28px;height:28px;color:var(--color-accent);font-size:var(--text-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.step-content{flex:1}.step-title{font-size:var(--text-sm);color:var(--color-text);margin-bottom:4px}.step-code{font-family:ui-monospace,monospace;font-size:var(--text-sm);color:var(--color-text-secondary);background:var(--color-bg);border-radius:var(--radius-sm);padding:4px 8px}.empty-state-features{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:left;margin-top:32px;padding:20px}.features-title{font-size:var(--text-sm);color:var(--color-text);margin-bottom:12px;font-weight:500}.features-list{margin:0;padding:0;list-style:none}.features-list li{font-size:var(--text-sm);color:var(--color-text-secondary);padding:6px 0 6px 20px;position:relative}.features-list li:before{content:"";background:var(--color-accent);border-radius:50%;width:6px;height:6px;position:absolute;top:12px;left:0}.back-link{font-size:var(--text-sm);color:var(--color-text-muted);align-items:center;gap:6px;margin-bottom:24px;display:inline-flex}.back-link:hover{color:var(--color-text)}.back-link svg{width:16px;height:16px}.stats{gap:24px;display:flex}.stat{text-align:center}.stat-value{font-size:var(--text-2xl);color:var(--color-text);font-weight:600}.stat-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.mermaid{background:0 0}.mermaid .node rect{fill:var(--color-bg-muted);stroke:var(--color-border-hover);stroke-width:1px;rx:6px}.mermaid .nodeLabel{color:var(--color-text);font-family:system-ui,sans-serif;font-size:13px}.mermaid .edgePath .path{stroke:var(--color-accent);stroke-width:1.5px}.mermaid .edgeLabel{background:var(--color-bg);color:var(--color-text-muted)}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;background:var(--color-accent);color:var(--color-bg);font-weight:600;font-size:var(--text-sm);border-radius:var(--radius-md);padding:12px 24px;text-decoration:none;transition:top .2s;position:absolute;top:-100%;left:16px}.skip-link:focus{outline:none;top:16px}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.coverage-hero[data-astro-cid-vq7rje7m]{display:flex;gap:32px;align-items:center;margin-bottom:48px}.coverage-percentage[data-astro-cid-vq7rje7m]{display:flex;flex-direction:column;align-items:center;justify-content:center;width:180px;height:180px;border-radius:50%;border:3px solid;flex-shrink:0}.percentage-value[data-astro-cid-vq7rje7m]{font-size:3.5rem;font-weight:700;line-height:1}.percentage-label[data-astro-cid-vq7rje7m]{font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:4px}.coverage-stats[data-astro-cid-vq7rje7m]{display:flex;gap:24px;flex-wrap:wrap}.stat-card[data-astro-cid-vq7rje7m]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px 32px;text-align:center;min-width:120px}.stat-value[data-astro-cid-vq7rje7m]{font-size:var(--text-3xl);font-weight:700;color:var(--color-text)}.stat-label[data-astro-cid-vq7rje7m]{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:4px}.coverage-grid[data-astro-cid-vq7rje7m]{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:32px;margin-bottom:48px}.coverage-section[data-astro-cid-vq7rje7m]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px}.section-title[data-astro-cid-vq7rje7m]{display:flex;align-items:center;gap:10px;font-size:var(--text-lg);font-weight:600;margin-bottom:20px;color:var(--color-text)}.section-title[data-astro-cid-vq7rje7m] svg[data-astro-cid-vq7rje7m]{width:20px;height:20px;color:var(--color-accent)}.section-description[data-astro-cid-vq7rje7m]{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:16px}.owner-list[data-astro-cid-vq7rje7m]{display:flex;flex-direction:column;gap:16px}.owner-item[data-astro-cid-vq7rje7m]{display:flex;flex-direction:column;gap:8px}.owner-info[data-astro-cid-vq7rje7m]{display:flex;justify-content:space-between;align-items:center}.owner-name[data-astro-cid-vq7rje7m]{font-size:var(--text-sm);font-weight:500;color:var(--color-text)}.owner-count[data-astro-cid-vq7rje7m]{font-size:var(--text-xs);color:var(--color-text-muted)}.owner-bar[data-astro-cid-vq7rje7m]{height:8px;background:var(--color-bg-muted);border-radius:4px;overflow:hidden}.owner-bar-fill[data-astro-cid-vq7rje7m]{height:100%;background:var(--color-accent);border-radius:4px;transition:width .3s ease}.tags-grid[data-astro-cid-vq7rje7m]{display:flex;flex-wrap:wrap;gap:8px}.tag-card[data-astro-cid-vq7rje7m]{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-bg-muted);border-radius:var(--radius-md);text-decoration:none;transition:background .15s ease}.tag-card[data-astro-cid-vq7rje7m]:hover{background:var(--color-surface-hover)}.tag-name[data-astro-cid-vq7rje7m]{font-size:var(--text-sm);color:var(--color-text)}.tag-count[data-astro-cid-vq7rje7m]{font-size:var(--text-xs);color:var(--color-accent);font-weight:600;background:var(--color-accent-bg);padding:2px 6px;border-radius:4px}.missing-section[data-astro-cid-vq7rje7m]{grid-column:1 / -1}.missing-list[data-astro-cid-vq7rje7m]{display:flex;flex-direction:column;gap:12px}.missing-item[data-astro-cid-vq7rje7m]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--color-bg-muted);border-radius:var(--radius-md);border-left:3px solid var(--color-warning)}.missing-route[data-astro-cid-vq7rje7m]{display:flex;align-items:center;gap:10px;font-size:var(--text-sm);color:var(--color-text)}.missing-route[data-astro-cid-vq7rje7m] svg[data-astro-cid-vq7rje7m]{width:16px;height:16px;color:var(--color-text-muted)}.suggested-path[data-astro-cid-vq7rje7m]{font-size:var(--text-xs);color:var(--color-text-muted)}.coverage-footer[data-astro-cid-vq7rje7m]{text-align:center;padding-top:24px;border-top:1px solid var(--color-border)}.timestamp[data-astro-cid-vq7rje7m]{font-size:var(--text-xs);color:var(--color-text-muted)}@media(max-width:768px){.coverage-hero[data-astro-cid-vq7rje7m]{flex-direction:column;text-align:center}.coverage-stats[data-astro-cid-vq7rje7m]{justify-content:center}.missing-item[data-astro-cid-vq7rje7m]{flex-direction:column;align-items:flex-start;gap:8px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{m as c}from"./mermaid.core.CReXU7YN.js";const m={startOnLoad:!1,theme:"dark",themeVariables:{darkMode:!0,background:"transparent",primaryColor:"#222222",primaryBorderColor:"#3a3a3a",primaryTextColor:"#eeeeee",lineColor:"#5eead4",fontFamily:"system-ui, sans-serif"},flowchart:{useMaxWidth:!0,htmlLabels:!0,curve:"basis",padding:20,nodeSpacing:50,rankSpacing:60}};c.initialize(m);async function g(){const e=document.querySelectorAll(".mermaid");for(const t of e){const a=t.getAttribute("data-graph"),l=t.textContent||"";try{const{svg:r}=await c.render(`mermaid-${a}`,l);t.innerHTML=r}catch(r){console.error(`Failed to render ${a} graph:`,r)}}}g();const s=document.querySelectorAll(".toggle-btn"),n=document.getElementById("navigation-graph"),i=document.getElementById("api-graph"),d=document.getElementById("navigation-legend"),o=document.getElementById("api-legend");s.forEach(e=>{e.addEventListener("click",()=>{const t=e.getAttribute("data-view");s.forEach(a=>{a.classList.remove("active"),a.setAttribute("aria-pressed","false")}),e.classList.add("active"),e.setAttribute("aria-pressed","true"),t==="navigation"?(n?.classList.remove("hidden"),i?.classList.add("hidden"),d?.classList.remove("hidden"),o?.classList.add("hidden")):(n?.classList.add("hidden"),i?.classList.remove("hidden"),d?.classList.add("hidden"),o?.classList.remove("hidden"))})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { c as createExports, a as start } from './chunks/_@astrojs-ssr-
|
|
1
|
+
export { c as createExports, a as start } from './chunks/_@astrojs-ssr-adapter_BCPoO8PO.mjs';
|
package/dist/server/chunks/{_@astrojs-ssr-adapter_DgsYudHz.mjs → _@astrojs-ssr-adapter_BCPoO8PO.mjs}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { v as decryptString, w as createSlotValueFromString, x as isAstroComponentFactory, k as renderComponent, r as renderTemplate, R as ROUTE_TYPE_HEADER, y as REROUTE_DIRECTIVE_HEADER, A as AstroError, z as i18nNoLocaleFoundInPath, B as ResponseSentError, C as ActionNotFoundError, D as MiddlewareNoDataOrNextCalled, G as MiddlewareNotAResponse, H as originPathnameSymbol, J as RewriteWithBodyUsed, K as GetStaticPathsRequired, O as InvalidGetStaticPathsReturn, P as InvalidGetStaticPathsEntry, Q as GetStaticPathsExpectedParams, S as GetStaticPathsInvalidRouteParam, T as PageNumberParamNotFound, V as DEFAULT_404_COMPONENT, W as NoMatchingStaticPathFound, X as PrerenderDynamicEndpointPathCollide, Y as ReservedSlotName, Z as renderSlotToString, _ as renderJSX, $ as chunkToString, a0 as isRenderInstruction, a1 as ForbiddenRewrite, a2 as SessionStorageInitError, a3 as SessionStorageSaveError, a4 as ASTRO_VERSION, a5 as CspNotEnabled, a6 as LocalsReassigned, a7 as generateCspDigest, a8 as PrerenderClientAddressNotAvailable, a9 as clientAddressSymbol, aa as ClientAddressNotAvailable, ab as StaticClientAddressNotAvailable, ac as AstroResponseHeadersReassigned, ad as responseSentSymbol$1, ae as renderPage, af as REWRITE_DIRECTIVE_HEADER_KEY, ag as REWRITE_DIRECTIVE_HEADER_VALUE, ah as renderEndpoint, ai as LocalsNotAnObject, aj as REROUTABLE_STATUS_CODES, ak as nodeRequestAbortControllerCleanupSymbol } from './astro/server_m7yT4wCr.mjs';
|
|
2
2
|
import colors from 'piccolore';
|
|
3
3
|
import 'clsx';
|
|
4
|
-
import { A as ActionError, d as deserializeActionResult, s as serializeActionResult, a as ACTION_RPC_ROUTE_PATTERN, b as ACTION_QUERY_PARAMS, g as getActionQueryString, D as DEFAULT_404_ROUTE, c as default404Instance, N as NOOP_MIDDLEWARE_FN, e as ensure404Route } from './astro-designed-error-
|
|
4
|
+
import { A as ActionError, d as deserializeActionResult, s as serializeActionResult, a as ACTION_RPC_ROUTE_PATTERN, b as ACTION_QUERY_PARAMS, g as getActionQueryString, D as DEFAULT_404_ROUTE, c as default404Instance, N as NOOP_MIDDLEWARE_FN, e as ensure404Route } from './astro-designed-error-pages_7IL58RLD.mjs';
|
|
5
5
|
import 'es-module-lexer';
|
|
6
6
|
import buffer from 'node:buffer';
|
|
7
7
|
import crypto$1 from 'node:crypto';
|
|
@@ -126,7 +126,7 @@ function getActionQueryString(name) {
|
|
|
126
126
|
}
|
|
127
127
|
function serializeActionResult(res) {
|
|
128
128
|
if (res.error) {
|
|
129
|
-
if (Object.assign(__vite_import_meta_env__, {})?.DEV) {
|
|
129
|
+
if (Object.assign(__vite_import_meta_env__, { CI: true, _: process.env._ })?.DEV) {
|
|
130
130
|
actionResultErrorStack.set(res.error.stack);
|
|
131
131
|
}
|
|
132
132
|
let body2;
|
|
@@ -193,7 +193,7 @@ function deserializeActionResult(res) {
|
|
|
193
193
|
})
|
|
194
194
|
};
|
|
195
195
|
}
|
|
196
|
-
if (Object.assign(__vite_import_meta_env__, {})?.PROD) {
|
|
196
|
+
if (Object.assign(__vite_import_meta_env__, { CI: true, _: process.env._ })?.PROD) {
|
|
197
197
|
return { error: ActionError.fromJson(json), data: void 0 };
|
|
198
198
|
} else {
|
|
199
199
|
const error = ActionError.fromJson(json);
|
|
@@ -23,7 +23,7 @@ function buildNavigationGraph(screens) {
|
|
|
23
23
|
graph.set(screen.id, /* @__PURE__ */ new Set());
|
|
24
24
|
}
|
|
25
25
|
for (const nextId of screen.next) {
|
|
26
|
-
graph.get(screen.id)
|
|
26
|
+
graph.get(screen.id)?.add(nextId);
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
return graph;
|
|
@@ -35,6 +35,7 @@ function findPathToDirectDependent(startId, targetIds, graph, maxDepth) {
|
|
|
35
35
|
const localVisited = /* @__PURE__ */ new Set([startId]);
|
|
36
36
|
while (queue.length > 0) {
|
|
37
37
|
const current = queue.shift();
|
|
38
|
+
if (!current) break;
|
|
38
39
|
if (current.path.length > maxDepth + 1) {
|
|
39
40
|
continue;
|
|
40
41
|
}
|
|
@@ -120,9 +121,15 @@ function generateImpactMermaid(screens, result) {
|
|
|
120
121
|
const directIds = new Set(result.direct.map((s) => s.id));
|
|
121
122
|
const transitiveIds = new Set(result.transitive.map((t) => t.screen.id));
|
|
122
123
|
const lines = ["flowchart TD"];
|
|
123
|
-
lines.push(
|
|
124
|
-
|
|
125
|
-
|
|
124
|
+
lines.push(
|
|
125
|
+
" classDef direct fill:#dc2626,stroke:#fef2f2,color:#ffffff,stroke-width:3px,font-weight:bold"
|
|
126
|
+
);
|
|
127
|
+
lines.push(
|
|
128
|
+
" classDef transitive fill:#ea580c,stroke:#fff7ed,color:#ffffff,stroke-width:3px,font-weight:bold"
|
|
129
|
+
);
|
|
130
|
+
lines.push(
|
|
131
|
+
" classDef normal fill:#1e293b,stroke:#64748b,color:#e2e8f0,stroke-width:1px"
|
|
132
|
+
);
|
|
126
133
|
for (const screen of screens) {
|
|
127
134
|
const label = screen.title.replace(/"/g, "'");
|
|
128
135
|
const id = screen.id.replace(/\./g, "_");
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { e as createComponent, f as createAstro, o as renderHead, h as addAttribute, p as renderSlot, r as renderTemplate } from './astro/server_m7yT4wCr.mjs';
|
|
2
|
+
import 'piccolore';
|
|
3
|
+
import 'clsx';
|
|
4
|
+
/* empty css */
|
|
5
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
6
|
+
import { join } from 'node:path';
|
|
7
|
+
|
|
8
|
+
const $$Astro = createAstro();
|
|
9
|
+
const $$Layout = createComponent(($$result, $$props, $$slots) => {
|
|
10
|
+
const Astro2 = $$result.createAstro($$Astro, $$props, $$slots);
|
|
11
|
+
Astro2.self = $$Layout;
|
|
12
|
+
const { title, currentPage } = Astro2.props;
|
|
13
|
+
return renderTemplate`<html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>${title} | Screenbook</title>${renderHead()}</head> <body> <a href="#main-content" class="skip-link">Skip to main content</a> <header class="header"> <div class="container"> <div class="header-content"> <a href="/" class="logo"> <img src="/logo.svg" alt="Screenbook home" class="logo-icon" width="24" height="24">
|
|
14
|
+
Screenbook
|
|
15
|
+
</a> <nav class="nav" aria-label="Main navigation"> <a href="/"${addAttribute(["nav-link", { active: currentPage === "screens" }], "class:list")}${addAttribute(currentPage === "screens" ? "page" : void 0, "aria-current")}> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"> <path stroke-linecap="round" stroke-linejoin="round" d="M3.75 6A2.25 2.25 0 016 3.75h2.25A2.25 2.25 0 0110.5 6v2.25a2.25 2.25 0 01-2.25 2.25H6a2.25 2.25 0 01-2.25-2.25V6zM3.75 15.75A2.25 2.25 0 016 13.5h2.25a2.25 2.25 0 012.25 2.25V18a2.25 2.25 0 01-2.25 2.25H6A2.25 2.25 0 013.75 18v-2.25zM13.5 6a2.25 2.25 0 012.25-2.25H18A2.25 2.25 0 0120.25 6v2.25A2.25 2.25 0 0118 10.5h-2.25a2.25 2.25 0 01-2.25-2.25V6zM13.5 15.75a2.25 2.25 0 012.25-2.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-2.25A2.25 2.25 0 0113.5 18v-2.25z"></path> </svg>
|
|
16
|
+
Screens
|
|
17
|
+
</a> <a href="/graph"${addAttribute(["nav-link", { active: currentPage === "graph" }], "class:list")}${addAttribute(currentPage === "graph" ? "page" : void 0, "aria-current")}> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"> <path stroke-linecap="round" stroke-linejoin="round" d="M7.5 21L3 16.5m0 0L7.5 12M3 16.5h13.5m0-13.5L21 7.5m0 0L16.5 12M21 7.5H7.5"></path> </svg>
|
|
18
|
+
Graph
|
|
19
|
+
</a> <a href="/impact"${addAttribute(["nav-link", { active: currentPage === "impact" }], "class:list")}${addAttribute(currentPage === "impact" ? "page" : void 0, "aria-current")}> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"> <path stroke-linecap="round" stroke-linejoin="round" d="M3.75 13.5l10.5-11.25L12 10.5h8.25L9.75 21.75 12 13.5H3.75z"></path> </svg>
|
|
20
|
+
Impact
|
|
21
|
+
</a> <a href="/coverage"${addAttribute(["nav-link", { active: currentPage === "coverage" }], "class:list")}${addAttribute(currentPage === "coverage" ? "page" : void 0, "aria-current")}> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"> <path stroke-linecap="round" stroke-linejoin="round" d="M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 013 19.875v-6.75zM9.75 8.625c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 01-1.125-1.125V8.625zM16.5 4.125c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 01-1.125-1.125V4.125z"></path> </svg>
|
|
22
|
+
Coverage
|
|
23
|
+
</a> </nav> </div> </div> </header> <main id="main-content"> ${renderSlot($$result, $$slots["default"])} </main> </body></html>`;
|
|
24
|
+
}, "/home/runner/work/screenbook/screenbook/packages/ui/src/layouts/Layout.astro", void 0);
|
|
25
|
+
|
|
26
|
+
function loadScreens() {
|
|
27
|
+
const screensPath = join(process.cwd(), ".screenbook", "screens.json");
|
|
28
|
+
if (!existsSync(screensPath)) {
|
|
29
|
+
return [];
|
|
30
|
+
}
|
|
31
|
+
try {
|
|
32
|
+
const content = readFileSync(screensPath, "utf-8");
|
|
33
|
+
return JSON.parse(content);
|
|
34
|
+
} catch {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export { $$Layout as $, loadScreens as l };
|
|
@@ -1228,7 +1228,7 @@ async function getConfiguredImageService() {
|
|
|
1228
1228
|
if (!globalThis?.astroAsset?.imageService) {
|
|
1229
1229
|
const { default: service } = await import(
|
|
1230
1230
|
// @ts-expect-error
|
|
1231
|
-
'./
|
|
1231
|
+
'./sharp_ADxfwDJE.mjs'
|
|
1232
1232
|
).catch((e) => {
|
|
1233
1233
|
const error = new AstroError(InvalidImageService);
|
|
1234
1234
|
error.cause = e;
|
|
@@ -1410,7 +1410,7 @@ const $$Image = createComponent(async ($$result, $$props, $$slots) => {
|
|
|
1410
1410
|
}
|
|
1411
1411
|
const { class: className, ...attributes } = { ...additionalAttributes, ...image.attributes };
|
|
1412
1412
|
return renderTemplate`${maybeRenderHead()}<img${addAttribute(image.src, "src")}${spreadAttributes(attributes)}${addAttribute(className, "class")}>`;
|
|
1413
|
-
}, "/
|
|
1413
|
+
}, "/home/runner/work/screenbook/screenbook/node_modules/.pnpm/astro@5.16.6_@types+node@25.0.3_jiti@2.6.1_lightningcss@1.30.2_rollup@4.54.0_tsx@4.21.0_typescript@5.9.3_yaml@2.8.2/node_modules/astro/components/Image.astro", void 0);
|
|
1414
1414
|
|
|
1415
1415
|
const $$Astro$1 = createAstro();
|
|
1416
1416
|
const $$Picture = createComponent(async ($$result, $$props, $$slots) => {
|
|
@@ -1481,7 +1481,7 @@ const $$Picture = createComponent(async ($$result, $$props, $$slots) => {
|
|
|
1481
1481
|
const srcsetAttribute = props.densities || !props.densities && !props.widths && !useResponsive ? `${image.src}${image.srcSet.values.length > 0 ? ", " + image.srcSet.attribute : ""}` : image.srcSet.attribute;
|
|
1482
1482
|
return renderTemplate`<source${addAttribute(srcsetAttribute, "srcset")}${addAttribute(mime.lookup(image.options.format ?? image.src) ?? `image/${image.options.format}`, "type")}${spreadAttributes(sourceAdditionalAttributes)}>`;
|
|
1483
1483
|
})} <img${addAttribute(fallbackImage.src, "src")}${spreadAttributes(attributes)}${addAttribute(className, "class")}> </picture>`;
|
|
1484
|
-
}, "/
|
|
1484
|
+
}, "/home/runner/work/screenbook/screenbook/node_modules/.pnpm/astro@5.16.6_@types+node@25.0.3_jiti@2.6.1_lightningcss@1.30.2_rollup@4.54.0_tsx@4.21.0_typescript@5.9.3_yaml@2.8.2/node_modules/astro/components/Picture.astro", void 0);
|
|
1485
1485
|
|
|
1486
1486
|
const fontsMod = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
|
1487
1487
|
__proto__: null
|
|
@@ -1540,7 +1540,7 @@ const $$Font = createComponent(($$result, $$props, $$slots) => {
|
|
|
1540
1540
|
}
|
|
1541
1541
|
const filteredPreloadData = filterPreloads(data.preloadData, preload);
|
|
1542
1542
|
return renderTemplate`<style>${unescapeHTML(data.css)}</style>${filteredPreloadData?.map(({ url, type }) => renderTemplate`<link rel="preload"${addAttribute(url, "href")} as="font"${addAttribute(`font/${type}`, "type")} crossorigin>`)}`;
|
|
1543
|
-
}, "/
|
|
1543
|
+
}, "/home/runner/work/screenbook/screenbook/node_modules/.pnpm/astro@5.16.6_@types+node@25.0.3_jiti@2.6.1_lightningcss@1.30.2_rollup@4.54.0_tsx@4.21.0_typescript@5.9.3_yaml@2.8.2/node_modules/astro/components/Font.astro", void 0);
|
|
1544
1544
|
|
|
1545
1545
|
const assetQueryParams = undefined;
|
|
1546
1546
|
const imageConfig = {"endpoint":{"route":"/_image","entrypoint":"astro/assets/endpoint/node"},"service":{"entrypoint":"astro/assets/services/sharp","config":{}},"domains":[],"remotePatterns":[],"responsiveStyles":false};
|
|
@@ -1555,7 +1555,7 @@ const assetQueryParams = undefined;
|
|
|
1555
1555
|
// in the Lambda bundle, which would bloat the bundle with images.
|
|
1556
1556
|
// To prevent this, we mark the URL construction as pure,
|
|
1557
1557
|
// so that it's tree-shaken away for all platforms that don't need it.
|
|
1558
|
-
const outDir = /* #__PURE__ */ new URL("file:///
|
|
1558
|
+
const outDir = /* #__PURE__ */ new URL("file:///home/runner/work/screenbook/screenbook/packages/ui/dist/client/");
|
|
1559
1559
|
const getImage = async (options) => await getImage$1(options, imageConfig);
|
|
1560
1560
|
|
|
1561
1561
|
const fnv1a52 = (str) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { A as AstroError, ao as MissingSharp } from './astro/server_m7yT4wCr.mjs';
|
|
2
|
-
import { b as baseService, p as parseQuality } from './
|
|
2
|
+
import { b as baseService, p as parseQuality } from './node_u1SigWFL.mjs';
|
|
3
3
|
|
|
4
4
|
let sharp;
|
|
5
5
|
const qualityTable = {
|
package/dist/server/entry.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { renderers } from './renderers.mjs';
|
|
2
|
-
import { c as createExports, s as serverEntrypointModule } from './chunks/_@astrojs-ssr-
|
|
3
|
-
import { manifest } from './
|
|
2
|
+
import { c as createExports, s as serverEntrypointModule } from './chunks/_@astrojs-ssr-adapter_BCPoO8PO.mjs';
|
|
3
|
+
import { manifest } from './manifest_CicDtuHD.mjs';
|
|
4
4
|
|
|
5
5
|
const serverIslandMap = new Map();;
|
|
6
6
|
|
|
@@ -11,7 +11,7 @@ const _page3 = () => import('./pages/impact.astro.mjs');
|
|
|
11
11
|
const _page4 = () => import('./pages/screen/_id_.astro.mjs');
|
|
12
12
|
const _page5 = () => import('./pages/index.astro.mjs');
|
|
13
13
|
const pageMap = new Map([
|
|
14
|
-
["../../node_modules/.pnpm/astro@5.16.6_@types+node@25.0.3_jiti@2.6.1_lightningcss@1.30.2_rollup@4.54.0_typescript@5.9.
|
|
14
|
+
["../../node_modules/.pnpm/astro@5.16.6_@types+node@25.0.3_jiti@2.6.1_lightningcss@1.30.2_rollup@4.54.0_tsx@4.21.0_typescript@5.9.3_yaml@2.8.2/node_modules/astro/dist/assets/endpoint/node.js", _page0],
|
|
15
15
|
["src/pages/coverage.astro", _page1],
|
|
16
16
|
["src/pages/graph.astro", _page2],
|
|
17
17
|
["src/pages/impact.astro", _page3],
|
|
@@ -28,8 +28,8 @@ const _manifest = Object.assign(manifest, {
|
|
|
28
28
|
});
|
|
29
29
|
const _args = {
|
|
30
30
|
"mode": "standalone",
|
|
31
|
-
"client": "file:///
|
|
32
|
-
"server": "file:///
|
|
31
|
+
"client": "file:///home/runner/work/screenbook/screenbook/packages/ui/dist/client/",
|
|
32
|
+
"server": "file:///home/runner/work/screenbook/screenbook/packages/ui/dist/server/",
|
|
33
33
|
"host": false,
|
|
34
34
|
"port": 4321,
|
|
35
35
|
"assets": "_astro",
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import 'piccolore';
|
|
2
|
+
import { q as decodeKey } from './chunks/astro/server_m7yT4wCr.mjs';
|
|
3
|
+
import 'clsx';
|
|
4
|
+
import { N as NOOP_MIDDLEWARE_FN } from './chunks/astro-designed-error-pages_7IL58RLD.mjs';
|
|
5
|
+
import 'es-module-lexer';
|
|
6
|
+
|
|
7
|
+
function sanitizeParams(params) {
|
|
8
|
+
return Object.fromEntries(
|
|
9
|
+
Object.entries(params).map(([key, value]) => {
|
|
10
|
+
if (typeof value === "string") {
|
|
11
|
+
return [key, value.normalize().replace(/#/g, "%23").replace(/\?/g, "%3F")];
|
|
12
|
+
}
|
|
13
|
+
return [key, value];
|
|
14
|
+
})
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
function getParameter(part, params) {
|
|
18
|
+
if (part.spread) {
|
|
19
|
+
return params[part.content.slice(3)] || "";
|
|
20
|
+
}
|
|
21
|
+
if (part.dynamic) {
|
|
22
|
+
if (!params[part.content]) {
|
|
23
|
+
throw new TypeError(`Missing parameter: ${part.content}`);
|
|
24
|
+
}
|
|
25
|
+
return params[part.content];
|
|
26
|
+
}
|
|
27
|
+
return part.content.normalize().replace(/\?/g, "%3F").replace(/#/g, "%23").replace(/%5B/g, "[").replace(/%5D/g, "]");
|
|
28
|
+
}
|
|
29
|
+
function getSegment(segment, params) {
|
|
30
|
+
const segmentPath = segment.map((part) => getParameter(part, params)).join("");
|
|
31
|
+
return segmentPath ? "/" + segmentPath : "";
|
|
32
|
+
}
|
|
33
|
+
function getRouteGenerator(segments, addTrailingSlash) {
|
|
34
|
+
return (params) => {
|
|
35
|
+
const sanitizedParams = sanitizeParams(params);
|
|
36
|
+
let trailing = "";
|
|
37
|
+
if (addTrailingSlash === "always" && segments.length) {
|
|
38
|
+
trailing = "/";
|
|
39
|
+
}
|
|
40
|
+
const path = segments.map((segment) => getSegment(segment, sanitizedParams)).join("") + trailing;
|
|
41
|
+
return path || "/";
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
function deserializeRouteData(rawRouteData) {
|
|
46
|
+
return {
|
|
47
|
+
route: rawRouteData.route,
|
|
48
|
+
type: rawRouteData.type,
|
|
49
|
+
pattern: new RegExp(rawRouteData.pattern),
|
|
50
|
+
params: rawRouteData.params,
|
|
51
|
+
component: rawRouteData.component,
|
|
52
|
+
generate: getRouteGenerator(rawRouteData.segments, rawRouteData._meta.trailingSlash),
|
|
53
|
+
pathname: rawRouteData.pathname || void 0,
|
|
54
|
+
segments: rawRouteData.segments,
|
|
55
|
+
prerender: rawRouteData.prerender,
|
|
56
|
+
redirect: rawRouteData.redirect,
|
|
57
|
+
redirectRoute: rawRouteData.redirectRoute ? deserializeRouteData(rawRouteData.redirectRoute) : void 0,
|
|
58
|
+
fallbackRoutes: rawRouteData.fallbackRoutes.map((fallback) => {
|
|
59
|
+
return deserializeRouteData(fallback);
|
|
60
|
+
}),
|
|
61
|
+
isIndex: rawRouteData.isIndex,
|
|
62
|
+
origin: rawRouteData.origin
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
function deserializeManifest(serializedManifest) {
|
|
67
|
+
const routes = [];
|
|
68
|
+
for (const serializedRoute of serializedManifest.routes) {
|
|
69
|
+
routes.push({
|
|
70
|
+
...serializedRoute,
|
|
71
|
+
routeData: deserializeRouteData(serializedRoute.routeData)
|
|
72
|
+
});
|
|
73
|
+
const route = serializedRoute;
|
|
74
|
+
route.routeData = deserializeRouteData(serializedRoute.routeData);
|
|
75
|
+
}
|
|
76
|
+
const assets = new Set(serializedManifest.assets);
|
|
77
|
+
const componentMetadata = new Map(serializedManifest.componentMetadata);
|
|
78
|
+
const inlinedScripts = new Map(serializedManifest.inlinedScripts);
|
|
79
|
+
const clientDirectives = new Map(serializedManifest.clientDirectives);
|
|
80
|
+
const serverIslandNameMap = new Map(serializedManifest.serverIslandNameMap);
|
|
81
|
+
const key = decodeKey(serializedManifest.key);
|
|
82
|
+
return {
|
|
83
|
+
// in case user middleware exists, this no-op middleware will be reassigned (see plugin-ssr.ts)
|
|
84
|
+
middleware() {
|
|
85
|
+
return { onRequest: NOOP_MIDDLEWARE_FN };
|
|
86
|
+
},
|
|
87
|
+
...serializedManifest,
|
|
88
|
+
assets,
|
|
89
|
+
componentMetadata,
|
|
90
|
+
inlinedScripts,
|
|
91
|
+
clientDirectives,
|
|
92
|
+
routes,
|
|
93
|
+
serverIslandNameMap,
|
|
94
|
+
key
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
const manifest = deserializeManifest({"hrefRoot":"file:///home/runner/work/screenbook/screenbook/packages/ui/","cacheDir":"file:///home/runner/work/screenbook/screenbook/packages/ui/node_modules/.astro/","outDir":"file:///home/runner/work/screenbook/screenbook/packages/ui/dist/","srcDir":"file:///home/runner/work/screenbook/screenbook/packages/ui/src/","publicDir":"file:///home/runner/work/screenbook/screenbook/packages/ui/public/","buildClientDir":"file:///home/runner/work/screenbook/screenbook/packages/ui/dist/client/","buildServerDir":"file:///home/runner/work/screenbook/screenbook/packages/ui/dist/server/","adapterName":"@astrojs/node","routes":[{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"type":"page","component":"_server-islands.astro","params":["name"],"segments":[[{"content":"_server-islands","dynamic":false,"spread":false}],[{"content":"name","dynamic":true,"spread":false}]],"pattern":"^\\/_server-islands\\/([^/]+?)\\/?$","prerender":false,"isIndex":false,"fallbackRoutes":[],"route":"/_server-islands/[name]","origin":"internal","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[],"routeData":{"type":"endpoint","isIndex":false,"route":"/_image","pattern":"^\\/_image\\/?$","segments":[[{"content":"_image","dynamic":false,"spread":false}]],"params":[],"component":"../../node_modules/.pnpm/astro@5.16.6_@types+node@25.0.3_jiti@2.6.1_lightningcss@1.30.2_rollup@4.54.0_tsx@4.21.0_typescript@5.9.3_yaml@2.8.2/node_modules/astro/dist/assets/endpoint/node.js","pathname":"/_image","prerender":false,"fallbackRoutes":[],"origin":"internal","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/coverage.BnE2oGo8.css"},{"type":"external","src":"/_astro/coverage.Cb0pX2ic.css"}],"routeData":{"route":"/coverage","isIndex":false,"type":"page","pattern":"^\\/coverage\\/?$","segments":[[{"content":"coverage","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/coverage.astro","pathname":"/coverage","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/coverage.BnE2oGo8.css"},{"type":"inline","content":".graph-controls[data-astro-cid-oy34yelw]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.view-toggle[data-astro-cid-oy34yelw]{display:flex;gap:8px;background:var(--color-surface);padding:4px;border-radius:var(--radius-lg);border:1px solid var(--color-border)}.toggle-btn[data-astro-cid-oy34yelw]{display:flex;align-items:center;gap:8px;padding:8px 16px;border:none;background:transparent;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease}.toggle-btn[data-astro-cid-oy34yelw]:hover{color:var(--color-text)}.toggle-btn[data-astro-cid-oy34yelw].active{background:var(--color-accent);color:var(--color-bg)}.toggle-btn[data-astro-cid-oy34yelw] svg[data-astro-cid-oy34yelw]{width:16px;height:16px}.graph-stats[data-astro-cid-oy34yelw]{display:flex;gap:16px}.stat[data-astro-cid-oy34yelw]{font-size:var(--text-sm);color:var(--color-text-muted)}.hidden[data-astro-cid-oy34yelw]{display:none!important}.legend-api[data-astro-cid-oy34yelw]{background:#14b8a6!important;border-color:#5eead4!important}\n"}],"routeData":{"route":"/graph","isIndex":false,"type":"page","pattern":"^\\/graph\\/?$","segments":[[{"content":"graph","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/graph.astro","pathname":"/graph","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/coverage.BnE2oGo8.css"},{"type":"external","src":"/_astro/impact.Cvhl64u1.css"}],"routeData":{"route":"/impact","isIndex":false,"type":"page","pattern":"^\\/impact\\/?$","segments":[[{"content":"impact","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/impact.astro","pathname":"/impact","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/coverage.BnE2oGo8.css"}],"routeData":{"route":"/screen/[id]","isIndex":false,"type":"page","pattern":"^\\/screen\\/([^/]+?)\\/?$","segments":[[{"content":"screen","dynamic":false,"spread":false}],[{"content":"id","dynamic":true,"spread":false}]],"params":["id"],"component":"src/pages/screen/[id].astro","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/coverage.BnE2oGo8.css"}],"routeData":{"route":"/","isIndex":true,"type":"page","pattern":"^\\/$","segments":[],"params":[],"component":"src/pages/index.astro","pathname":"/","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}}],"base":"/","trailingSlash":"ignore","compressHTML":true,"componentMetadata":[["/home/runner/work/screenbook/screenbook/packages/ui/src/pages/coverage.astro",{"propagation":"none","containsHead":true}],["/home/runner/work/screenbook/screenbook/packages/ui/src/pages/graph.astro",{"propagation":"none","containsHead":true}],["/home/runner/work/screenbook/screenbook/packages/ui/src/pages/impact.astro",{"propagation":"none","containsHead":true}],["/home/runner/work/screenbook/screenbook/packages/ui/src/pages/index.astro",{"propagation":"none","containsHead":true}],["/home/runner/work/screenbook/screenbook/packages/ui/src/pages/screen/[id].astro",{"propagation":"none","containsHead":true}]],"renderers":[],"clientDirectives":[["idle","(()=>{var l=(n,t)=>{let i=async()=>{await(await n())()},e=typeof t.value==\"object\"?t.value:void 0,s={timeout:e==null?void 0:e.timeout};\"requestIdleCallback\"in window?window.requestIdleCallback(i,s):setTimeout(i,s.timeout||200)};(self.Astro||(self.Astro={})).idle=l;window.dispatchEvent(new Event(\"astro:idle\"));})();"],["load","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event(\"astro:load\"));})();"],["media","(()=>{var n=(a,t)=>{let i=async()=>{await(await a())()};if(t.value){let e=matchMedia(t.value);e.matches?i():e.addEventListener(\"change\",i,{once:!0})}};(self.Astro||(self.Astro={})).media=n;window.dispatchEvent(new Event(\"astro:media\"));})();"],["only","(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).only=e;window.dispatchEvent(new Event(\"astro:only\"));})();"],["visible","(()=>{var a=(s,i,o)=>{let r=async()=>{await(await s())()},t=typeof i.value==\"object\"?i.value:void 0,c={rootMargin:t==null?void 0:t.rootMargin},n=new IntersectionObserver(e=>{for(let l of e)if(l.isIntersecting){n.disconnect(),r();break}},c);for(let e of o.children)n.observe(e)};(self.Astro||(self.Astro={})).visible=a;window.dispatchEvent(new Event(\"astro:visible\"));})();"]],"entryModules":{"\u0000noop-middleware":"_noop-middleware.mjs","\u0000virtual:astro:actions/noop-entrypoint":"noop-entrypoint.mjs","\u0000@astro-page:src/pages/coverage@_@astro":"pages/coverage.astro.mjs","\u0000@astro-page:src/pages/graph@_@astro":"pages/graph.astro.mjs","\u0000@astro-page:src/pages/impact@_@astro":"pages/impact.astro.mjs","\u0000@astro-page:src/pages/screen/[id]@_@astro":"pages/screen/_id_.astro.mjs","\u0000@astro-page:src/pages/index@_@astro":"pages/index.astro.mjs","\u0000@astrojs-ssr-virtual-entry":"entry.mjs","\u0000@astro-renderers":"renderers.mjs","\u0000@astro-page:../../node_modules/.pnpm/astro@5.16.6_@types+node@25.0.3_jiti@2.6.1_lightningcss@1.30.2_rollup@4.54.0_tsx@4.21.0_typescript@5.9.3_yaml@2.8.2/node_modules/astro/dist/assets/endpoint/node@_@js":"pages/_image.astro.mjs","\u0000@astrojs-ssr-adapter":"_@astrojs-ssr-adapter.mjs","\u0000@astrojs-manifest":"manifest_CicDtuHD.mjs","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/unstorage@1.17.3/node_modules/unstorage/drivers/fs-lite.mjs":"chunks/fs-lite_COtHaKzy.mjs","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/astro@5.16.6_@types+node@25.0.3_jiti@2.6.1_lightningcss@1.30.2_rollup@4.54.0_tsx@4.21.0_typescript@5.9.3_yaml@2.8.2/node_modules/astro/dist/assets/services/sharp.js":"chunks/sharp_ADxfwDJE.mjs","/home/runner/work/screenbook/screenbook/packages/ui/src/pages/impact.astro?astro&type=script&index=0&lang.ts":"_astro/impact.astro_astro_type_script_index_0_lang.D4cAR9AL.js","/home/runner/work/screenbook/screenbook/packages/ui/src/pages/graph.astro?astro&type=script&index=0&lang.ts":"_astro/graph.astro_astro_type_script_index_0_lang.B0fEnVdy.js","/home/runner/work/screenbook/screenbook/packages/ui/src/pages/index.astro?astro&type=script&index=0&lang.ts":"_astro/index.astro_astro_type_script_index_0_lang.D9WgmwrZ.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/c4Diagram-YG6GDRKO.mjs":"_astro/c4Diagram-YG6GDRKO.DfgUlHvt.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/flowDiagram-NV44I4VS.mjs":"_astro/flowDiagram-NV44I4VS.Bb1qJLxr.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/erDiagram-Q2GNP2WA.mjs":"_astro/erDiagram-Q2GNP2WA.B7oID6oT.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-NY62KEGX.mjs":"_astro/gitGraphDiagram-NY62KEGX.Co2SKcif.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-WHAUD3N6.mjs":"_astro/infoDiagram-WHAUD3N6.B6ULtps1.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/quadrantDiagram-AYHSOK5B.mjs":"_astro/quadrantDiagram-AYHSOK5B.BlLaQQxO.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/requirementDiagram-UZGBJVZJ.mjs":"_astro/requirementDiagram-UZGBJVZJ.DHRnMofO.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/sequenceDiagram-WL72ISMW.mjs":"_astro/sequenceDiagram-WL72ISMW.CnU62wqy.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-2ON5EDUG.mjs":"_astro/classDiagram-2ON5EDUG.CxT3aW-h.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-v2-WZHVMYZB.mjs":"_astro/classDiagram-v2-WZHVMYZB.CxT3aW-h.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-FKZM4ZOC.mjs":"_astro/stateDiagram-FKZM4ZOC.CewI55YO.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-4FDKWEC3.mjs":"_astro/stateDiagram-v2-4FDKWEC3.7xUQqoNr.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/journeyDiagram-XKPGCS4Q.mjs":"_astro/journeyDiagram-XKPGCS4Q.BSOCzWmw.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-IT6M3QCI.mjs":"_astro/timeline-definition-IT6M3QCI.D1PLRwss.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/kanban-definition-3W4ZIXB7.mjs":"_astro/kanban-definition-3W4ZIXB7.D8KKGc1o.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/diagram-S2PKOQOG.mjs":"_astro/diagram-S2PKOQOG.BWisaYrQ.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/diagram-QEK2KX5R.mjs":"_astro/diagram-QEK2KX5R.DvS33xWZ.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/blockDiagram-VD42YOAC.mjs":"_astro/blockDiagram-VD42YOAC.BBt_VNhR.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/katex@0.16.27/node_modules/katex/dist/katex.mjs":"_astro/katex.XbL3y5x-.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/dagre-6UL2VRFP.mjs":"_astro/dagre-6UL2VRFP.LKVH7b30.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/xychartDiagram-PRI3JC2R.mjs":"_astro/xychartDiagram-PRI3JC2R.CQex0-ul.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-ADFJNKIX.mjs":"_astro/pieDiagram-ADFJNKIX.bC2VkyoW.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/mindmap-definition-VGOIOE7T.mjs":"_astro/mindmap-definition-VGOIOE7T.G14HgtDw.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/architectureDiagram-VXUJARFQ.mjs":"_astro/architectureDiagram-VXUJARFQ.De_Gt-YC.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/cose-bilkent-S5V4N54A.mjs":"_astro/cose-bilkent-S5V4N54A.D48yfMll.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/sankeyDiagram-TZEHDZUN.mjs":"_astro/sankeyDiagram-TZEHDZUN.BMuaJBmt.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/diagram-PSM6KHXK.mjs":"_astro/diagram-PSM6KHXK.AHgUjH56.js","/home/runner/work/screenbook/screenbook/node_modules/.pnpm/mermaid@11.12.2/node_modules/mermaid/dist/chunks/mermaid.core/ganttDiagram-JELNMOA3.mjs":"_astro/ganttDiagram-JELNMOA3.3vGHETyo.js","astro:scripts/before-hydration.js":""},"inlinedScripts":[["/home/runner/work/screenbook/screenbook/packages/ui/src/pages/index.astro?astro&type=script&index=0&lang.ts","const l=document.getElementById(\"search\"),g=document.getElementById(\"screen-list\"),c=document.querySelectorAll(\".tag\");let s=null;function n(){const t=l?.value.toLowerCase()??\"\";g?.querySelectorAll(\".card-link\")?.forEach(e=>{const i=e.dataset.title??\"\",r=e.dataset.id??\"\",o=e.dataset.tags??\"\",d=i.includes(t)||r.includes(t),u=!s||o.includes(s);e.style.display=d&&u?\"block\":\"none\"})}l?.addEventListener(\"input\",n);c.forEach(t=>{t.addEventListener(\"click\",()=>{const a=t.dataset.tag;s===a?(s=null,c.forEach(e=>{e.classList.remove(\"active\"),e.setAttribute(\"aria-pressed\",\"false\")})):(c.forEach(e=>{e.classList.remove(\"active\"),e.setAttribute(\"aria-pressed\",\"false\")}),s=a??null,t.classList.add(\"active\"),t.setAttribute(\"aria-pressed\",\"true\")),n()})});"]],"assets":["/_astro/coverage.BnE2oGo8.css","/_astro/coverage.Cb0pX2ic.css","/_astro/impact.Cvhl64u1.css","/logo.svg","/_astro/_baseUniq.BGai4mcc.js","/_astro/arc.DUp0dfXj.js","/_astro/architectureDiagram-VXUJARFQ.De_Gt-YC.js","/_astro/blockDiagram-VD42YOAC.BBt_VNhR.js","/_astro/c4Diagram-YG6GDRKO.DfgUlHvt.js","/_astro/channel.CNyr52v1.js","/_astro/chunk-4BX2VUAB.BL0ar6du.js","/_astro/chunk-55IACEB6.CI6SkZkY.js","/_astro/chunk-B4BG7PRW.Z25N80K6.js","/_astro/chunk-DI55MBZ5.BqjPVmi1.js","/_astro/chunk-FMBD7UC4.bZ9DWnFm.js","/_astro/chunk-QN33PNHL.BkzuUgWB.js","/_astro/chunk-QZHKN3VN.C__d68N_.js","/_astro/chunk-TZMSLE5B.BIpu8bMn.js","/_astro/classDiagram-2ON5EDUG.CxT3aW-h.js","/_astro/classDiagram-v2-WZHVMYZB.CxT3aW-h.js","/_astro/clone.U_lSZ6fe.js","/_astro/cose-bilkent-S5V4N54A.D48yfMll.js","/_astro/cytoscape.esm.DtBltrT8.js","/_astro/dagre-6UL2VRFP.LKVH7b30.js","/_astro/defaultLocale.C4B-KCzX.js","/_astro/diagram-PSM6KHXK.AHgUjH56.js","/_astro/diagram-QEK2KX5R.DvS33xWZ.js","/_astro/diagram-S2PKOQOG.BWisaYrQ.js","/_astro/erDiagram-Q2GNP2WA.B7oID6oT.js","/_astro/flowDiagram-NV44I4VS.Bb1qJLxr.js","/_astro/ganttDiagram-JELNMOA3.3vGHETyo.js","/_astro/gitGraphDiagram-NY62KEGX.Co2SKcif.js","/_astro/graph.B5fevUwB.js","/_astro/graph.astro_astro_type_script_index_0_lang.B0fEnVdy.js","/_astro/impact.astro_astro_type_script_index_0_lang.D4cAR9AL.js","/_astro/infoDiagram-WHAUD3N6.B6ULtps1.js","/_astro/init.Gi6I4Gst.js","/_astro/journeyDiagram-XKPGCS4Q.BSOCzWmw.js","/_astro/kanban-definition-3W4ZIXB7.D8KKGc1o.js","/_astro/katex.XbL3y5x-.js","/_astro/layout.8vv24qEg.js","/_astro/linear.B6O9ymuK.js","/_astro/mermaid.core.CReXU7YN.js","/_astro/min.CdGMGVU0.js","/_astro/mindmap-definition-VGOIOE7T.G14HgtDw.js","/_astro/ordinal.BYWQX77i.js","/_astro/pieDiagram-ADFJNKIX.bC2VkyoW.js","/_astro/quadrantDiagram-AYHSOK5B.BlLaQQxO.js","/_astro/requirementDiagram-UZGBJVZJ.DHRnMofO.js","/_astro/sankeyDiagram-TZEHDZUN.BMuaJBmt.js","/_astro/sequenceDiagram-WL72ISMW.CnU62wqy.js","/_astro/stateDiagram-FKZM4ZOC.CewI55YO.js","/_astro/stateDiagram-v2-4FDKWEC3.7xUQqoNr.js","/_astro/timeline-definition-IT6M3QCI.D1PLRwss.js","/_astro/treemap-KMMF4GRG.D3VNVvXF.js","/_astro/xychartDiagram-PRI3JC2R.CQex0-ul.js"],"buildFormat":"directory","checkOrigin":true,"allowedDomains":[],"serverIslandNameMap":[],"key":"mZ8nFSs8Bh+YzrIevrTLXHY6E2j/f6mZgc5P1bLo6qw=","sessionConfig":{"driver":"fs-lite","options":{"base":"/home/runner/work/screenbook/screenbook/packages/ui/node_modules/.astro/sessions"}}});
|
|
99
|
+
if (manifest.sessionConfig) manifest.sessionConfig.driverModule = () => import('./chunks/fs-lite_COtHaKzy.mjs');
|
|
100
|
+
|
|
101
|
+
export { manifest };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { a as page } from '../chunks/
|
|
1
|
+
export { a as page } from '../chunks/node_u1SigWFL.mjs';
|
|
2
2
|
export { renderers } from '../renderers.mjs';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { e as createComponent, k as renderComponent, r as renderTemplate, m as maybeRenderHead, l as Fragment, h as addAttribute } from '../chunks/astro/server_m7yT4wCr.mjs';
|
|
2
2
|
import 'piccolore';
|
|
3
|
-
import { l as loadScreens, $ as $$Layout } from '../chunks/
|
|
3
|
+
import { l as loadScreens, $ as $$Layout } from '../chunks/loadScreens_JhK3F9tC.mjs';
|
|
4
4
|
import { existsSync, readFileSync } from 'node:fs';
|
|
5
5
|
import { join } from 'node:path';
|
|
6
6
|
/* empty css */
|
|
@@ -34,23 +34,23 @@ const $$Coverage = createComponent(($$result, $$props, $$slots) => {
|
|
|
34
34
|
}
|
|
35
35
|
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "Coverage", "currentPage": "coverage", "data-astro-cid-vq7rje7m": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<div class="container" data-astro-cid-vq7rje7m> <div class="page-header" data-astro-cid-vq7rje7m> <h1 class="page-title" data-astro-cid-vq7rje7m>Coverage Dashboard</h1> <p class="page-description" data-astro-cid-vq7rje7m>
|
|
36
36
|
Track documentation coverage across your screens.
|
|
37
|
-
</p> </div> ${!coverage ? renderTemplate`<div class="empty-state" data-astro-cid-vq7rje7m> <svg class="empty-state-icon" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 013 19.875v-6.75zM9.75 8.625c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 01-1.125-1.125V8.625zM16.5 4.125c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 01-1.125-1.125V4.125z" data-astro-cid-vq7rje7m></path> </svg> <h2 class="empty-state-title" data-astro-cid-vq7rje7m>No coverage data</h2> <p class="empty-state-description" data-astro-cid-vq7rje7m>
|
|
37
|
+
</p> </div> ${!coverage ? renderTemplate`<div class="empty-state" data-astro-cid-vq7rje7m> <svg class="empty-state-icon" aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 013 19.875v-6.75zM9.75 8.625c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 01-1.125-1.125V8.625zM16.5 4.125c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 01-1.125-1.125V4.125z" data-astro-cid-vq7rje7m></path> </svg> <h2 class="empty-state-title" data-astro-cid-vq7rje7m>No coverage data</h2> <p class="empty-state-description" data-astro-cid-vq7rje7m>
|
|
38
38
|
Run the build command to generate coverage data.
|
|
39
39
|
</p> <code class="empty-state-code" data-astro-cid-vq7rje7m> <span class="prompt" data-astro-cid-vq7rje7m>$</span> screenbook build
|
|
40
40
|
</code> </div>` : renderTemplate`${renderComponent($$result2, "Fragment", Fragment, { "data-astro-cid-vq7rje7m": true }, { "default": ($$result3) => renderTemplate`<div class="coverage-hero" data-astro-cid-vq7rje7m> <div${addAttribute(`coverage-percentage ${getPercentageBg(coverage.percentage)}`, "class")} data-astro-cid-vq7rje7m> <span${addAttribute(`percentage-value ${getPercentageColor(coverage.percentage)}`, "class")} data-astro-cid-vq7rje7m> ${coverage.percentage}%
|
|
41
|
-
</span> <span class="percentage-label" data-astro-cid-vq7rje7m>Coverage</span> </div> <div class="coverage-stats" data-astro-cid-vq7rje7m> <div class="stat-card" data-astro-cid-vq7rje7m> <div class="stat-value" data-astro-cid-vq7rje7m>${coverage.covered}</div> <div class="stat-label" data-astro-cid-vq7rje7m>Documented</div> </div> <div class="stat-card" data-astro-cid-vq7rje7m> <div class="stat-value" data-astro-cid-vq7rje7m>${coverage.total}</div> <div class="stat-label" data-astro-cid-vq7rje7m>Total Routes</div> </div> <div class="stat-card" data-astro-cid-vq7rje7m> <div class="stat-value" data-astro-cid-vq7rje7m>${coverage.missing.length}</div> <div class="stat-label" data-astro-cid-vq7rje7m>Missing</div> </div> </div> </div> <div class="coverage-grid" data-astro-cid-vq7rje7m> <div class="coverage-section" data-astro-cid-vq7rje7m> <h2 class="section-title" data-astro-cid-vq7rje7m> <svg fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M15 19.128a9.38 9.38 0 002.625.372 9.337 9.337 0 004.121-.952 4.125 4.125 0 00-7.533-2.493M15 19.128v-.003c0-1.113-.285-2.16-.786-3.07M15 19.128v.106A12.318 12.318 0 018.624 21c-2.331 0-4.512-.645-6.374-1.766l-.001-.109a6.375 6.375 0 0111.964-3.07M12 6.375a3.375 3.375 0 11-6.75 0 3.375 3.375 0 016.75 0zm8.25 2.25a2.625 2.625 0 11-5.25 0 2.625 2.625 0 015.25 0z" data-astro-cid-vq7rje7m></path> </svg>
|
|
41
|
+
</span> <span class="percentage-label" data-astro-cid-vq7rje7m>Coverage</span> </div> <div class="coverage-stats" data-astro-cid-vq7rje7m> <div class="stat-card" data-astro-cid-vq7rje7m> <div class="stat-value" data-astro-cid-vq7rje7m>${coverage.covered}</div> <div class="stat-label" data-astro-cid-vq7rje7m>Documented</div> </div> <div class="stat-card" data-astro-cid-vq7rje7m> <div class="stat-value" data-astro-cid-vq7rje7m>${coverage.total}</div> <div class="stat-label" data-astro-cid-vq7rje7m>Total Routes</div> </div> <div class="stat-card" data-astro-cid-vq7rje7m> <div class="stat-value" data-astro-cid-vq7rje7m>${coverage.missing.length}</div> <div class="stat-label" data-astro-cid-vq7rje7m>Missing</div> </div> </div> </div> <div class="coverage-grid" data-astro-cid-vq7rje7m> <div class="coverage-section" data-astro-cid-vq7rje7m> <h2 class="section-title" data-astro-cid-vq7rje7m> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M15 19.128a9.38 9.38 0 002.625.372 9.337 9.337 0 004.121-.952 4.125 4.125 0 00-7.533-2.493M15 19.128v-.003c0-1.113-.285-2.16-.786-3.07M15 19.128v.106A12.318 12.318 0 018.624 21c-2.331 0-4.512-.645-6.374-1.766l-.001-.109a6.375 6.375 0 0111.964-3.07M12 6.375a3.375 3.375 0 11-6.75 0 3.375 3.375 0 016.75 0zm8.25 2.25a2.625 2.625 0 11-5.25 0 2.625 2.625 0 015.25 0z" data-astro-cid-vq7rje7m></path> </svg>
|
|
42
42
|
By Owner
|
|
43
|
-
</h2> <div class="owner-list" data-astro-cid-vq7rje7m> ${Object.entries(coverage.byOwner).map(([owner, data]) => renderTemplate`<div class="owner-item" data-astro-cid-vq7rje7m> <div class="owner-info" data-astro-cid-vq7rje7m> <span class="owner-name" data-astro-cid-vq7rje7m>${owner}</span> <span class="owner-count" data-astro-cid-vq7rje7m>${data.count} screen${data.count > 1 ? "s" : ""}</span> </div> <div class="owner-bar" data-astro-cid-vq7rje7m> <div class="owner-bar-fill"${addAttribute(`width: ${Math.round(data.count / coverage.covered * 100)}%`, "style")} data-astro-cid-vq7rje7m></div> </div> </div>`)} </div> </div> <div class="coverage-section" data-astro-cid-vq7rje7m> <h2 class="section-title" data-astro-cid-vq7rje7m> <svg fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M9.568 3H5.25A2.25 2.25 0 003 5.25v4.318c0 .597.237 1.17.659 1.591l9.581 9.581c.699.699 1.78.872 2.607.33a18.095 18.095 0 005.223-5.223c.542-.827.369-1.908-.33-2.607L11.16 3.66A2.25 2.25 0 009.568 3z" data-astro-cid-vq7rje7m></path> <path stroke-linecap="round" stroke-linejoin="round" d="M6 6h.008v.008H6V6z" data-astro-cid-vq7rje7m></path> </svg>
|
|
43
|
+
</h2> <div class="owner-list" data-astro-cid-vq7rje7m> ${Object.entries(coverage.byOwner).map(([owner, data]) => renderTemplate`<div class="owner-item" data-astro-cid-vq7rje7m> <div class="owner-info" data-astro-cid-vq7rje7m> <span class="owner-name" data-astro-cid-vq7rje7m>${owner}</span> <span class="owner-count" data-astro-cid-vq7rje7m>${data.count} screen${data.count > 1 ? "s" : ""}</span> </div> <div class="owner-bar" data-astro-cid-vq7rje7m> <div class="owner-bar-fill"${addAttribute(`width: ${Math.round(data.count / coverage.covered * 100)}%`, "style")} data-astro-cid-vq7rje7m></div> </div> </div>`)} </div> </div> <div class="coverage-section" data-astro-cid-vq7rje7m> <h2 class="section-title" data-astro-cid-vq7rje7m> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M9.568 3H5.25A2.25 2.25 0 003 5.25v4.318c0 .597.237 1.17.659 1.591l9.581 9.581c.699.699 1.78.872 2.607.33a18.095 18.095 0 005.223-5.223c.542-.827.369-1.908-.33-2.607L11.16 3.66A2.25 2.25 0 009.568 3z" data-astro-cid-vq7rje7m></path> <path stroke-linecap="round" stroke-linejoin="round" d="M6 6h.008v.008H6V6z" data-astro-cid-vq7rje7m></path> </svg>
|
|
44
44
|
By Tag
|
|
45
|
-
</h2> <div class="tags-grid" data-astro-cid-vq7rje7m> ${Object.entries(coverage.byTag).sort(([, a], [, b]) => b - a).map(([tag, count]) => renderTemplate`<a${addAttribute(`/?tag=${encodeURIComponent(tag)}`, "href")} class="tag-card" data-astro-cid-vq7rje7m> <span class="tag-name" data-astro-cid-vq7rje7m>${tag}</span> <span class="tag-count" data-astro-cid-vq7rje7m>${count}</span> </a>`)} </div> </div> </div> ${coverage.missing.length > 0 && renderTemplate`<div class="coverage-section missing-section" data-astro-cid-vq7rje7m> <h2 class="section-title" data-astro-cid-vq7rje7m> <svg fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" data-astro-cid-vq7rje7m></path> </svg>
|
|
45
|
+
</h2> <div class="tags-grid" data-astro-cid-vq7rje7m> ${Object.entries(coverage.byTag).sort(([, a], [, b]) => b - a).map(([tag, count]) => renderTemplate`<a${addAttribute(`/?tag=${encodeURIComponent(tag)}`, "href")} class="tag-card" data-astro-cid-vq7rje7m> <span class="tag-name" data-astro-cid-vq7rje7m>${tag}</span> <span class="tag-count" data-astro-cid-vq7rje7m>${count}</span> </a>`)} </div> </div> </div> ${coverage.missing.length > 0 && renderTemplate`<div class="coverage-section missing-section" data-astro-cid-vq7rje7m> <h2 class="section-title" data-astro-cid-vq7rje7m> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" data-astro-cid-vq7rje7m></path> </svg>
|
|
46
46
|
Missing Documentation (${coverage.missing.length})
|
|
47
47
|
</h2> <p class="section-description" data-astro-cid-vq7rje7m>
|
|
48
48
|
These routes don't have a <code data-astro-cid-vq7rje7m>screen.meta.ts</code> file yet.
|
|
49
|
-
</p> <div class="missing-list" data-astro-cid-vq7rje7m> ${coverage.missing.map((item) => renderTemplate`<div class="missing-item" data-astro-cid-vq7rje7m> <div class="missing-route" data-astro-cid-vq7rje7m> <svg fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z" data-astro-cid-vq7rje7m></path> </svg> <span data-astro-cid-vq7rje7m>${item.route}</span> </div> <div class="missing-action" data-astro-cid-vq7rje7m> <code class="suggested-path" data-astro-cid-vq7rje7m>${item.suggestedPath}</code> </div> </div>`)} </div> </div>`}<div class="coverage-footer" data-astro-cid-vq7rje7m> <p class="timestamp" data-astro-cid-vq7rje7m>
|
|
49
|
+
</p> <div class="missing-list" data-astro-cid-vq7rje7m> ${coverage.missing.map((item) => renderTemplate`<div class="missing-item" data-astro-cid-vq7rje7m> <div class="missing-route" data-astro-cid-vq7rje7m> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-vq7rje7m> <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z" data-astro-cid-vq7rje7m></path> </svg> <span data-astro-cid-vq7rje7m>${item.route}</span> </div> <div class="missing-action" data-astro-cid-vq7rje7m> <code class="suggested-path" data-astro-cid-vq7rje7m>${item.suggestedPath}</code> </div> </div>`)} </div> </div>`}<div class="coverage-footer" data-astro-cid-vq7rje7m> <p class="timestamp" data-astro-cid-vq7rje7m>
|
|
50
50
|
Last updated: ${new Date(coverage.timestamp).toLocaleString()} </p> </div> ` })}`} </div> ` })} `;
|
|
51
|
-
}, "/
|
|
51
|
+
}, "/home/runner/work/screenbook/screenbook/packages/ui/src/pages/coverage.astro", void 0);
|
|
52
52
|
|
|
53
|
-
const $$file = "/
|
|
53
|
+
const $$file = "/home/runner/work/screenbook/screenbook/packages/ui/src/pages/coverage.astro";
|
|
54
54
|
const $$url = "/coverage";
|
|
55
55
|
|
|
56
56
|
const _page = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { e as createComponent, k as renderComponent, r as renderTemplate, m as maybeRenderHead, n as renderScript, l as Fragment } from '../chunks/astro/server_m7yT4wCr.mjs';
|
|
1
|
+
import { e as createComponent, k as renderComponent, r as renderTemplate, m as maybeRenderHead, n as renderScript, l as Fragment, h as addAttribute } from '../chunks/astro/server_m7yT4wCr.mjs';
|
|
2
2
|
import 'piccolore';
|
|
3
|
-
import { l as loadScreens, $ as $$Layout } from '../chunks/
|
|
3
|
+
import { l as loadScreens, $ as $$Layout } from '../chunks/loadScreens_JhK3F9tC.mjs';
|
|
4
4
|
/* empty css */
|
|
5
5
|
export { renderers } from '../renderers.mjs';
|
|
6
6
|
|
|
@@ -82,17 +82,17 @@ const $$Graph = createComponent(async ($$result, $$props, $$slots) => {
|
|
|
82
82
|
).size;
|
|
83
83
|
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "Graph", "currentPage": "graph", "data-astro-cid-oy34yelw": true }, { "default": async ($$result2) => renderTemplate` ${maybeRenderHead()}<div class="container" data-astro-cid-oy34yelw> <div class="page-header" data-astro-cid-oy34yelw> <h1 class="page-title" data-astro-cid-oy34yelw>Dependency Graph</h1> <p class="page-description" data-astro-cid-oy34yelw>
|
|
84
84
|
Visualize relationships between screens and APIs.
|
|
85
|
-
</p> </div> ${screens.length === 0 ? renderTemplate`<div class="empty-state" data-astro-cid-oy34yelw> <svg class="empty-state-icon" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5" data-astro-cid-oy34yelw> <path stroke-linecap="round" stroke-linejoin="round" d="M7.5 21L3 16.5m0 0L7.5 12M3 16.5h13.5m0-13.5L21 7.5m0 0L16.5 12M21 7.5H7.5" data-astro-cid-oy34yelw></path> </svg> <h2 class="empty-state-title" data-astro-cid-oy34yelw>No graph data</h2> <p class="empty-state-description" data-astro-cid-oy34yelw>
|
|
85
|
+
</p> </div> ${screens.length === 0 ? renderTemplate`<div class="empty-state" data-astro-cid-oy34yelw> <svg class="empty-state-icon" aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5" data-astro-cid-oy34yelw> <path stroke-linecap="round" stroke-linejoin="round" d="M7.5 21L3 16.5m0 0L7.5 12M3 16.5h13.5m0-13.5L21 7.5m0 0L16.5 12M21 7.5H7.5" data-astro-cid-oy34yelw></path> </svg> <h2 class="empty-state-title" data-astro-cid-oy34yelw>No graph data</h2> <p class="empty-state-description" data-astro-cid-oy34yelw>
|
|
86
86
|
Run the build command to generate screen metadata.
|
|
87
87
|
</p> <code class="empty-state-code" data-astro-cid-oy34yelw> <span class="prompt" data-astro-cid-oy34yelw>$</span> screenbook build
|
|
88
|
-
</code> </div>` : renderTemplate`${renderComponent($$result2, "Fragment", Fragment, { "data-astro-cid-oy34yelw": true }, { "default": async ($$result3) => renderTemplate` <div class="graph-controls" data-astro-cid-oy34yelw> <div class="view-toggle" data-astro-cid-oy34yelw> <button class="toggle-btn active" data-view="navigation" data-astro-cid-oy34yelw> <svg fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-oy34yelw> <path stroke-linecap="round" stroke-linejoin="round" d="M7.5 21L3 16.5m0 0L7.5 12M3 16.5h13.5m0-13.5L21 7.5m0 0L16.5 12M21 7.5H7.5" data-astro-cid-oy34yelw></path> </svg>
|
|
88
|
+
</code> </div>` : renderTemplate`${renderComponent($$result2, "Fragment", Fragment, { "data-astro-cid-oy34yelw": true }, { "default": async ($$result3) => renderTemplate` <div class="graph-controls" data-astro-cid-oy34yelw> <div class="view-toggle" role="group" aria-label="Graph view" data-astro-cid-oy34yelw> <button class="toggle-btn active" data-view="navigation" aria-pressed="true" data-astro-cid-oy34yelw> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-oy34yelw> <path stroke-linecap="round" stroke-linejoin="round" d="M7.5 21L3 16.5m0 0L7.5 12M3 16.5h13.5m0-13.5L21 7.5m0 0L16.5 12M21 7.5H7.5" data-astro-cid-oy34yelw></path> </svg>
|
|
89
89
|
Navigation
|
|
90
|
-
</button> <button class="toggle-btn" data-view="api" data-astro-cid-oy34yelw> <svg fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-oy34yelw> <path stroke-linecap="round" stroke-linejoin="round" d="M5.25 14.25h13.5m-13.5 0a3 3 0 01-3-3m3 3a3 3 0 100 6h13.5a3 3 0 100-6m-16.5-3a3 3 0 013-3h13.5a3 3 0 013 3m-19.5 0a4.5 4.5 0 01.9-2.7L5.737 5.1a3.375 3.375 0 012.7-1.35h7.126c1.062 0 2.062.5 2.7 1.35l2.587 3.45a4.5 4.5 0 01.9 2.7m0 0a3 3 0 01-3 3m0 3h.008v.008h-.008v-.008zm0-6h.008v.008h-.008v-.008zm-3 6h.008v.008h-.008v-.008zm0-6h.008v.008h-.008v-.008z" data-astro-cid-oy34yelw></path> </svg>
|
|
90
|
+
</button> <button class="toggle-btn" data-view="api" aria-pressed="false" data-astro-cid-oy34yelw> <svg aria-hidden="true" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" data-astro-cid-oy34yelw> <path stroke-linecap="round" stroke-linejoin="round" d="M5.25 14.25h13.5m-13.5 0a3 3 0 01-3-3m3 3a3 3 0 100 6h13.5a3 3 0 100-6m-16.5-3a3 3 0 013-3h13.5a3 3 0 013 3m-19.5 0a4.5 4.5 0 01.9-2.7L5.737 5.1a3.375 3.375 0 012.7-1.35h7.126c1.062 0 2.062.5 2.7 1.35l2.587 3.45a4.5 4.5 0 01.9 2.7m0 0a3 3 0 01-3 3m0 3h.008v.008h-.008v-.008zm0-6h.008v.008h-.008v-.008zm-3 6h.008v.008h-.008v-.008zm0-6h.008v.008h-.008v-.008z" data-astro-cid-oy34yelw></path> </svg>
|
|
91
91
|
API Dependencies
|
|
92
|
-
</button> </div> <div class="graph-stats" data-astro-cid-oy34yelw> <span class="stat" data-astro-cid-oy34yelw>${screens.length} screens</span> <span class="stat" data-astro-cid-oy34yelw>${apiCount} APIs</span> </div> </div> <div class="graph-container" id="navigation-graph" data-astro-cid-oy34yelw> <pre class="mermaid" data-graph="navigation" data-astro-cid-oy34yelw>${navigationGraph}</pre> </div> <div class="graph-container hidden" id="api-graph" data-astro-cid-oy34yelw> <pre class="mermaid" data-graph="api" data-astro-cid-oy34yelw>${apiGraph}</pre> </div> <div class="graph-legend" id="navigation-legend" data-astro-cid-oy34yelw> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-node" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>Screen</span> </div> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-edge" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>Navigation flow</span> </div> </div> <div class="graph-legend hidden" id="api-legend" data-astro-cid-oy34yelw> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-node legend-api" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>API</span> </div> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-node" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>Screen</span> </div> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-edge" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>Depends on</span> </div> </div> ` })}`} </div> ${renderScript($$result2, "/
|
|
93
|
-
}, "/
|
|
92
|
+
</button> </div> <div class="graph-stats" data-astro-cid-oy34yelw> <span class="stat" data-astro-cid-oy34yelw>${screens.length} screens</span> <span class="stat" data-astro-cid-oy34yelw>${apiCount} APIs</span> </div> </div> <div class="graph-container" id="navigation-graph" role="img"${addAttribute(`Navigation graph showing ${screens.length} screens and their navigation relationships`, "aria-label")} data-astro-cid-oy34yelw> <pre class="mermaid" data-graph="navigation" aria-hidden="true" data-astro-cid-oy34yelw>${navigationGraph}</pre> </div> <div class="graph-container hidden" id="api-graph" role="img"${addAttribute(`API dependency graph showing ${screens.length} screens and ${apiCount} APIs`, "aria-label")} data-astro-cid-oy34yelw> <pre class="mermaid" data-graph="api" aria-hidden="true" data-astro-cid-oy34yelw>${apiGraph}</pre> </div> <div class="graph-legend" id="navigation-legend" data-astro-cid-oy34yelw> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-node" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>Screen</span> </div> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-edge" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>Navigation flow</span> </div> </div> <div class="graph-legend hidden" id="api-legend" data-astro-cid-oy34yelw> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-node legend-api" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>API</span> </div> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-node" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>Screen</span> </div> <div class="graph-legend-item" data-astro-cid-oy34yelw> <div class="legend-edge" data-astro-cid-oy34yelw></div> <span data-astro-cid-oy34yelw>Depends on</span> </div> </div> ` })}`} </div> ${renderScript($$result2, "/home/runner/work/screenbook/screenbook/packages/ui/src/pages/graph.astro?astro&type=script&index=0&lang.ts")} ` })} `;
|
|
93
|
+
}, "/home/runner/work/screenbook/screenbook/packages/ui/src/pages/graph.astro", void 0);
|
|
94
94
|
|
|
95
|
-
const $$file = "/
|
|
95
|
+
const $$file = "/home/runner/work/screenbook/screenbook/packages/ui/src/pages/graph.astro";
|
|
96
96
|
const $$url = "/graph";
|
|
97
97
|
|
|
98
98
|
const _page = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|