@screenbook/ui 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +30 -0
  2. package/dist/client/_astro/coverage.BzPU-EGZ.css +1 -0
  3. package/dist/server/entry.mjs +1 -1
  4. package/dist/server/{manifest_smcahUO6.mjs → manifest_BGl49hHW.mjs} +1 -1
  5. package/dist/server/pages/coverage.astro.mjs +1 -1
  6. package/dist/server/pages/editor.astro.mjs +1 -1
  7. package/dist/server/pages/graph.astro.mjs +1 -1
  8. package/dist/server/pages/impact.astro.mjs +1 -1
  9. package/dist/server/pages/index.astro.mjs +1 -1
  10. package/dist/server/pages/screen/_id_.astro.mjs +1 -1
  11. package/package.json +5 -1
  12. package/.astro/content-assets.mjs +0 -1
  13. package/.astro/content-modules.mjs +0 -1
  14. package/.astro/content.d.ts +0 -199
  15. package/.astro/types.d.ts +0 -2
  16. package/.prettierrc +0 -15
  17. package/CHANGELOG.md +0 -77
  18. package/astro.config.mjs +0 -20
  19. package/dist/client/_astro/coverage.DLKSOM4m.css +0 -1
  20. package/public/logo.svg +0 -5
  21. package/src/components/MockFormEditor.tsx +0 -1280
  22. package/src/components/MockPreview.astro +0 -811
  23. package/src/layouts/Layout.astro +0 -77
  24. package/src/pages/api/save-mock.ts +0 -182
  25. package/src/pages/coverage.astro +0 -399
  26. package/src/pages/editor.astro +0 -33
  27. package/src/pages/graph.astro +0 -368
  28. package/src/pages/impact.astro +0 -462
  29. package/src/pages/index.astro +0 -176
  30. package/src/pages/screen/[id].astro +0 -195
  31. package/src/styles/global.css +0 -904
  32. package/src/styles/mock-editor.css +0 -1351
  33. package/src/utils/impactAnalysis.ts +0 -304
  34. package/src/utils/loadCoverage.ts +0 -30
  35. package/src/utils/loadScreens.ts +0 -18
  36. package/tsconfig.json +0 -10
  37. /package/dist/server/chunks/{loadScreens_CkCqdbH2.mjs → loadScreens_B8bVK3q5.mjs} +0 -0
package/README.md ADDED
@@ -0,0 +1,30 @@
1
+ # @screenbook/ui
2
+
3
+ Web UI for Screenbook - screen catalog, navigation graph, and impact analysis.
4
+
5
+ > **Note**: This package is part of [Screenbook](https://github.com/wadakatu/screenbook).
6
+ > For installation and usage, see the main documentation.
7
+
8
+ ## Installation
9
+
10
+ ```bash
11
+ npm i -D screenbook
12
+ # or
13
+ pnpm add -D screenbook
14
+ ```
15
+
16
+ ## Features
17
+
18
+ - **Screen Catalog** - Browse and search all screens
19
+ - **Navigation Graph** - Visualize user flows
20
+ - **Impact Analysis** - Find affected screens when APIs change
21
+ - **Coverage Dashboard** - Track documentation completeness
22
+
23
+ ## Links
24
+
25
+ - [Documentation](https://github.com/wadakatu/screenbook#readme)
26
+ - [GitHub](https://github.com/wadakatu/screenbook)
27
+
28
+ ## License
29
+
30
+ MIT
@@ -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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--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}.absolute{position:absolute}.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}.grid{display:grid}.hidden{display:none}.list-item{display:list-item}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.flex-shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.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-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@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}
@@ -1,6 +1,6 @@
1
1
  import { renderers } from './renderers.mjs';
2
2
  import { c as createExports, s as serverEntrypointModule } from './chunks/_@astrojs-ssr-adapter_BCPoO8PO.mjs';
3
- import { manifest } from './manifest_smcahUO6.mjs';
3
+ import { manifest } from './manifest_BGl49hHW.mjs';
4
4
 
5
5
  const serverIslandMap = new Map();;
6
6
 
@@ -95,7 +95,7 @@ function deserializeManifest(serializedManifest) {
95
95
  };
96
96
  }
97
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":[],"routeData":{"route":"/api/save-mock","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/save-mock\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"save-mock","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/save-mock.ts","pathname":"/api/save-mock","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/coverage.DLKSOM4m.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.DLKSOM4m.css"},{"type":"inline","content":".editor-container[data-astro-cid-nmyy7qaa]{position:fixed;inset:60px 0 0;background:#141822}\n"},{"type":"external","src":"/_astro/MockFormEditor.OiYzJAtR.css"}],"routeData":{"route":"/editor","isIndex":false,"type":"page","pattern":"^\\/editor\\/?$","segments":[[{"content":"editor","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/editor.astro","pathname":"/editor","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/coverage.DLKSOM4m.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}.legend-mock[data-astro-cid-oy34yelw]{border-color:#14b8a6!important;border-width:2px!important}.stat-mock[data-astro-cid-oy34yelw]{color:#14b8a6}\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.DLKSOM4m.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.DLKSOM4m.css"},{"type":"external","src":"/_astro/_id_.BqQf-JH6.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.DLKSOM4m.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/editor.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/api/save-mock@_@ts":"pages/api/save-mock.astro.mjs","\u0000@astro-page:src/pages/coverage@_@astro":"pages/coverage.astro.mjs","\u0000@astro-page:src/pages/editor@_@astro":"pages/editor.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_smcahUO6.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/graph.astro?astro&type=script&index=0&lang.ts":"_astro/graph.astro_astro_type_script_index_0_lang.BxaPom9e.js","/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.VjeLQGe6.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.BqntXNsZ.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.CV4Oenkb.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.B4hpr69H.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.BeY3JZYI.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.D2_J_fR6.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.Cma08fPv.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.BlhVOrX0.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.3cZYkaSP.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.DMv55r4w.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.DMv55r4w.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.DdlRd9N7.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.DCPDjwi7.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.7c4ngVDw.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.BshW8mMW.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.D_eWex6x.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.T8h5wODN.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.BoqLvsuS.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.6LO7yu7m.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.tCLd0f1c.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.Mg5_s08f.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.D18DPyo6.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.CjNYt18e.js","@/components/MockFormEditor":"_astro/MockFormEditor.0L29BkPy.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.BF0V2v9-.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.DlRxGhCG.js","@astrojs/react/client.js":"_astro/client.9unXo8s5.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.HRsqw4ej.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.CJA_rnN3.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.DdpXJeX3.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/_id_.BqQf-JH6.css","/_astro/coverage.Cb0pX2ic.css","/_astro/coverage.DLKSOM4m.css","/_astro/impact.Cvhl64u1.css","/logo.svg","/_astro/MockFormEditor.0L29BkPy.js","/_astro/MockFormEditor.OiYzJAtR.css","/_astro/_baseUniq.D9ouiLRJ.js","/_astro/arc.CLU0JlVT.js","/_astro/architectureDiagram-VXUJARFQ.BF0V2v9-.js","/_astro/blockDiagram-VD42YOAC.6LO7yu7m.js","/_astro/c4Diagram-YG6GDRKO.BqntXNsZ.js","/_astro/channel._8es88oH.js","/_astro/chunk-4BX2VUAB.b97OIY94.js","/_astro/chunk-55IACEB6.Cf9hglsl.js","/_astro/chunk-B4BG7PRW.vDfM6vb1.js","/_astro/chunk-DI55MBZ5.8pHdnkw9.js","/_astro/chunk-FMBD7UC4.l_Ue7ZYJ.js","/_astro/chunk-QN33PNHL.CyBZ7SCx.js","/_astro/chunk-QZHKN3VN.BC5tI2Vw.js","/_astro/chunk-TZMSLE5B.DxkkbOL4.js","/_astro/classDiagram-2ON5EDUG.DMv55r4w.js","/_astro/classDiagram-v2-WZHVMYZB.DMv55r4w.js","/_astro/client.9unXo8s5.js","/_astro/clone.COAvtnt5.js","/_astro/cose-bilkent-S5V4N54A.DlRxGhCG.js","/_astro/cytoscape.esm.DtBltrT8.js","/_astro/dagre-6UL2VRFP.tCLd0f1c.js","/_astro/defaultLocale.C4B-KCzX.js","/_astro/diagram-PSM6KHXK.CJA_rnN3.js","/_astro/diagram-QEK2KX5R.BoqLvsuS.js","/_astro/diagram-S2PKOQOG.T8h5wODN.js","/_astro/erDiagram-Q2GNP2WA.B4hpr69H.js","/_astro/flowDiagram-NV44I4VS.CV4Oenkb.js","/_astro/ganttDiagram-JELNMOA3.DdpXJeX3.js","/_astro/gitGraphDiagram-NY62KEGX.BeY3JZYI.js","/_astro/graph.CO6LxWoK.js","/_astro/graph.astro_astro_type_script_index_0_lang.BxaPom9e.js","/_astro/impact.astro_astro_type_script_index_0_lang.VjeLQGe6.js","/_astro/index.WFquGv8Z.js","/_astro/infoDiagram-WHAUD3N6.D2_J_fR6.js","/_astro/init.Gi6I4Gst.js","/_astro/journeyDiagram-XKPGCS4Q.7c4ngVDw.js","/_astro/kanban-definition-3W4ZIXB7.D_eWex6x.js","/_astro/katex.XbL3y5x-.js","/_astro/layout.Cn9EjNLq.js","/_astro/linear.BlE_mLsy.js","/_astro/mermaid.core.CgCLOZ6t.js","/_astro/min.OtQS-qlD.js","/_astro/mindmap-definition-VGOIOE7T.CjNYt18e.js","/_astro/ordinal.BYWQX77i.js","/_astro/pieDiagram-ADFJNKIX.D18DPyo6.js","/_astro/quadrantDiagram-AYHSOK5B.Cma08fPv.js","/_astro/requirementDiagram-UZGBJVZJ.BlhVOrX0.js","/_astro/sankeyDiagram-TZEHDZUN.HRsqw4ej.js","/_astro/sequenceDiagram-WL72ISMW.3cZYkaSP.js","/_astro/stateDiagram-FKZM4ZOC.DdlRd9N7.js","/_astro/stateDiagram-v2-4FDKWEC3.DCPDjwi7.js","/_astro/timeline-definition-IT6M3QCI.BshW8mMW.js","/_astro/treemap-KMMF4GRG.BxXN_YfK.js","/_astro/xychartDiagram-PRI3JC2R.Mg5_s08f.js"],"buildFormat":"directory","checkOrigin":true,"allowedDomains":[],"serverIslandNameMap":[],"key":"mQ38y1oN6xfnLTL1uEooMTXhSaXzapghhblrLljvBIc=","sessionConfig":{"driver":"fs-lite","options":{"base":"/home/runner/work/screenbook/screenbook/packages/ui/node_modules/.astro/sessions"}}});
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":[],"routeData":{"route":"/api/save-mock","isIndex":false,"type":"endpoint","pattern":"^\\/api\\/save-mock\\/?$","segments":[[{"content":"api","dynamic":false,"spread":false}],[{"content":"save-mock","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/api/save-mock.ts","pathname":"/api/save-mock","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/coverage.BzPU-EGZ.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.BzPU-EGZ.css"},{"type":"inline","content":".editor-container[data-astro-cid-nmyy7qaa]{position:fixed;inset:60px 0 0;background:#141822}\n"},{"type":"external","src":"/_astro/MockFormEditor.OiYzJAtR.css"}],"routeData":{"route":"/editor","isIndex":false,"type":"page","pattern":"^\\/editor\\/?$","segments":[[{"content":"editor","dynamic":false,"spread":false}]],"params":[],"component":"src/pages/editor.astro","pathname":"/editor","prerender":false,"fallbackRoutes":[],"distURL":[],"origin":"project","_meta":{"trailingSlash":"ignore"}}},{"file":"","links":[],"scripts":[],"styles":[{"type":"external","src":"/_astro/coverage.BzPU-EGZ.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}.legend-mock[data-astro-cid-oy34yelw]{border-color:#14b8a6!important;border-width:2px!important}.stat-mock[data-astro-cid-oy34yelw]{color:#14b8a6}\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.BzPU-EGZ.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.BzPU-EGZ.css"},{"type":"external","src":"/_astro/_id_.BqQf-JH6.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.BzPU-EGZ.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/editor.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/api/save-mock@_@ts":"pages/api/save-mock.astro.mjs","\u0000@astro-page:src/pages/coverage@_@astro":"pages/coverage.astro.mjs","\u0000@astro-page:src/pages/editor@_@astro":"pages/editor.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_BGl49hHW.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/graph.astro?astro&type=script&index=0&lang.ts":"_astro/graph.astro_astro_type_script_index_0_lang.BxaPom9e.js","/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.VjeLQGe6.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.BqntXNsZ.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.CV4Oenkb.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.B4hpr69H.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.BeY3JZYI.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.D2_J_fR6.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.Cma08fPv.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.BlhVOrX0.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.3cZYkaSP.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.DMv55r4w.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.DMv55r4w.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.DdlRd9N7.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.DCPDjwi7.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.7c4ngVDw.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.BshW8mMW.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.D_eWex6x.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.T8h5wODN.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.BoqLvsuS.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.6LO7yu7m.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.tCLd0f1c.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.Mg5_s08f.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.D18DPyo6.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.CjNYt18e.js","@/components/MockFormEditor":"_astro/MockFormEditor.0L29BkPy.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.BF0V2v9-.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.DlRxGhCG.js","@astrojs/react/client.js":"_astro/client.9unXo8s5.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.HRsqw4ej.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.CJA_rnN3.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.DdpXJeX3.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/_id_.BqQf-JH6.css","/_astro/coverage.Cb0pX2ic.css","/_astro/coverage.BzPU-EGZ.css","/_astro/impact.Cvhl64u1.css","/logo.svg","/_astro/MockFormEditor.0L29BkPy.js","/_astro/MockFormEditor.OiYzJAtR.css","/_astro/_baseUniq.D9ouiLRJ.js","/_astro/arc.CLU0JlVT.js","/_astro/architectureDiagram-VXUJARFQ.BF0V2v9-.js","/_astro/blockDiagram-VD42YOAC.6LO7yu7m.js","/_astro/c4Diagram-YG6GDRKO.BqntXNsZ.js","/_astro/channel._8es88oH.js","/_astro/chunk-4BX2VUAB.b97OIY94.js","/_astro/chunk-55IACEB6.Cf9hglsl.js","/_astro/chunk-B4BG7PRW.vDfM6vb1.js","/_astro/chunk-DI55MBZ5.8pHdnkw9.js","/_astro/chunk-FMBD7UC4.l_Ue7ZYJ.js","/_astro/chunk-QN33PNHL.CyBZ7SCx.js","/_astro/chunk-QZHKN3VN.BC5tI2Vw.js","/_astro/chunk-TZMSLE5B.DxkkbOL4.js","/_astro/classDiagram-2ON5EDUG.DMv55r4w.js","/_astro/classDiagram-v2-WZHVMYZB.DMv55r4w.js","/_astro/client.9unXo8s5.js","/_astro/clone.COAvtnt5.js","/_astro/cose-bilkent-S5V4N54A.DlRxGhCG.js","/_astro/cytoscape.esm.DtBltrT8.js","/_astro/dagre-6UL2VRFP.tCLd0f1c.js","/_astro/defaultLocale.C4B-KCzX.js","/_astro/diagram-PSM6KHXK.CJA_rnN3.js","/_astro/diagram-QEK2KX5R.BoqLvsuS.js","/_astro/diagram-S2PKOQOG.T8h5wODN.js","/_astro/erDiagram-Q2GNP2WA.B4hpr69H.js","/_astro/flowDiagram-NV44I4VS.CV4Oenkb.js","/_astro/ganttDiagram-JELNMOA3.DdpXJeX3.js","/_astro/gitGraphDiagram-NY62KEGX.BeY3JZYI.js","/_astro/graph.CO6LxWoK.js","/_astro/graph.astro_astro_type_script_index_0_lang.BxaPom9e.js","/_astro/impact.astro_astro_type_script_index_0_lang.VjeLQGe6.js","/_astro/index.WFquGv8Z.js","/_astro/infoDiagram-WHAUD3N6.D2_J_fR6.js","/_astro/init.Gi6I4Gst.js","/_astro/journeyDiagram-XKPGCS4Q.7c4ngVDw.js","/_astro/kanban-definition-3W4ZIXB7.D_eWex6x.js","/_astro/katex.XbL3y5x-.js","/_astro/layout.Cn9EjNLq.js","/_astro/linear.BlE_mLsy.js","/_astro/mermaid.core.CgCLOZ6t.js","/_astro/min.OtQS-qlD.js","/_astro/mindmap-definition-VGOIOE7T.CjNYt18e.js","/_astro/ordinal.BYWQX77i.js","/_astro/pieDiagram-ADFJNKIX.D18DPyo6.js","/_astro/quadrantDiagram-AYHSOK5B.Cma08fPv.js","/_astro/requirementDiagram-UZGBJVZJ.BlhVOrX0.js","/_astro/sankeyDiagram-TZEHDZUN.HRsqw4ej.js","/_astro/sequenceDiagram-WL72ISMW.3cZYkaSP.js","/_astro/stateDiagram-FKZM4ZOC.DdlRd9N7.js","/_astro/stateDiagram-v2-4FDKWEC3.DCPDjwi7.js","/_astro/timeline-definition-IT6M3QCI.BshW8mMW.js","/_astro/treemap-KMMF4GRG.BxXN_YfK.js","/_astro/xychartDiagram-PRI3JC2R.Mg5_s08f.js"],"buildFormat":"directory","checkOrigin":true,"allowedDomains":[],"serverIslandNameMap":[],"key":"EoprQf2rQrRBIAw8HesJb6iO5xu3hwlfC20OFHiaHSk=","sessionConfig":{"driver":"fs-lite","options":{"base":"/home/runner/work/screenbook/screenbook/packages/ui/node_modules/.astro/sessions"}}});
99
99
  if (manifest.sessionConfig) manifest.sessionConfig.driverModule = () => import('./chunks/fs-lite_COtHaKzy.mjs');
100
100
 
101
101
  export { manifest };
@@ -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/loadScreens_CkCqdbH2.mjs';
3
+ import { l as loadScreens, $ as $$Layout } from '../chunks/loadScreens_B8bVK3q5.mjs';
4
4
  import { existsSync, readFileSync } from 'node:fs';
5
5
  import { join } from 'node:path';
6
6
  /* empty css */
@@ -1,6 +1,6 @@
1
1
  import { e as createComponent, f as createAstro, k as renderComponent, r as renderTemplate, m as maybeRenderHead } from '../chunks/astro/server_m7yT4wCr.mjs';
2
2
  import 'piccolore';
3
- import { l as loadScreens, $ as $$Layout } from '../chunks/loadScreens_CkCqdbH2.mjs';
3
+ import { l as loadScreens, $ as $$Layout } from '../chunks/loadScreens_B8bVK3q5.mjs';
4
4
  /* empty css */
5
5
  export { renderers } from '../renderers.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
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/loadScreens_CkCqdbH2.mjs';
3
+ import { l as loadScreens, $ as $$Layout } from '../chunks/loadScreens_B8bVK3q5.mjs';
4
4
  /* empty css */
5
5
  export { renderers } from '../renderers.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { e as createComponent, f as createAstro, 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/loadScreens_CkCqdbH2.mjs';
3
+ import { l as loadScreens, $ as $$Layout } from '../chunks/loadScreens_B8bVK3q5.mjs';
4
4
  import { g as getAllApis, a as analyzeImpact, b as generateImpactMermaid, f as formatImpactMarkdown } from '../chunks/impactAnalysis_LvYEc57d.mjs';
5
5
  /* empty css */
6
6
  export { renderers } from '../renderers.mjs';
@@ -1,6 +1,6 @@
1
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/loadScreens_CkCqdbH2.mjs';
3
+ import { l as loadScreens, $ as $$Layout } from '../chunks/loadScreens_B8bVK3q5.mjs';
4
4
  export { renderers } from '../renderers.mjs';
5
5
 
6
6
  const $$Index = createComponent(($$result, $$props, $$slots) => {
@@ -1,6 +1,6 @@
1
1
  import { e as createComponent, f as createAstro, m as maybeRenderHead, h as addAttribute, r as renderTemplate, k as renderComponent } from '../../chunks/astro/server_m7yT4wCr.mjs';
2
2
  import 'piccolore';
3
- import { l as loadScreens, $ as $$Layout } from '../../chunks/loadScreens_CkCqdbH2.mjs';
3
+ import { l as loadScreens, $ as $$Layout } from '../../chunks/loadScreens_B8bVK3q5.mjs';
4
4
  import 'clsx';
5
5
  /* empty css */
6
6
  import { c as getApiDependencyCount } from '../../chunks/impactAnalysis_LvYEc57d.mjs';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@screenbook/ui",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "description": "UI for Screenbook - screen catalog and navigation graph viewer",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -38,6 +38,10 @@
38
38
  "bugs": {
39
39
  "url": "https://github.com/wadakatu/screenbook/issues"
40
40
  },
41
+ "files": [
42
+ "dist",
43
+ "README.md"
44
+ ],
41
45
  "devDependencies": {
42
46
  "@types/react": "^19.2.7",
43
47
  "@types/react-dom": "^19.2.3",
@@ -1 +0,0 @@
1
- export default new Map();
@@ -1 +0,0 @@
1
- export default new Map();
@@ -1,199 +0,0 @@
1
- declare module 'astro:content' {
2
- export interface RenderResult {
3
- Content: import('astro/runtime/server/index.js').AstroComponentFactory;
4
- headings: import('astro').MarkdownHeading[];
5
- remarkPluginFrontmatter: Record<string, any>;
6
- }
7
- interface Render {
8
- '.md': Promise<RenderResult>;
9
- }
10
-
11
- export interface RenderedContent {
12
- html: string;
13
- metadata?: {
14
- imagePaths: Array<string>;
15
- [key: string]: unknown;
16
- };
17
- }
18
- }
19
-
20
- declare module 'astro:content' {
21
- type Flatten<T> = T extends { [K: string]: infer U } ? U : never;
22
-
23
- export type CollectionKey = keyof AnyEntryMap;
24
- export type CollectionEntry<C extends CollectionKey> = Flatten<AnyEntryMap[C]>;
25
-
26
- export type ContentCollectionKey = keyof ContentEntryMap;
27
- export type DataCollectionKey = keyof DataEntryMap;
28
-
29
- type AllValuesOf<T> = T extends any ? T[keyof T] : never;
30
- type ValidContentEntrySlug<C extends keyof ContentEntryMap> = AllValuesOf<
31
- ContentEntryMap[C]
32
- >['slug'];
33
-
34
- export type ReferenceDataEntry<
35
- C extends CollectionKey,
36
- E extends keyof DataEntryMap[C] = string,
37
- > = {
38
- collection: C;
39
- id: E;
40
- };
41
- export type ReferenceContentEntry<
42
- C extends keyof ContentEntryMap,
43
- E extends ValidContentEntrySlug<C> | (string & {}) = string,
44
- > = {
45
- collection: C;
46
- slug: E;
47
- };
48
- export type ReferenceLiveEntry<C extends keyof LiveContentConfig['collections']> = {
49
- collection: C;
50
- id: string;
51
- };
52
-
53
- /** @deprecated Use `getEntry` instead. */
54
- export function getEntryBySlug<
55
- C extends keyof ContentEntryMap,
56
- E extends ValidContentEntrySlug<C> | (string & {}),
57
- >(
58
- collection: C,
59
- // Note that this has to accept a regular string too, for SSR
60
- entrySlug: E,
61
- ): E extends ValidContentEntrySlug<C>
62
- ? Promise<CollectionEntry<C>>
63
- : Promise<CollectionEntry<C> | undefined>;
64
-
65
- /** @deprecated Use `getEntry` instead. */
66
- export function getDataEntryById<C extends keyof DataEntryMap, E extends keyof DataEntryMap[C]>(
67
- collection: C,
68
- entryId: E,
69
- ): Promise<CollectionEntry<C>>;
70
-
71
- export function getCollection<C extends keyof AnyEntryMap, E extends CollectionEntry<C>>(
72
- collection: C,
73
- filter?: (entry: CollectionEntry<C>) => entry is E,
74
- ): Promise<E[]>;
75
- export function getCollection<C extends keyof AnyEntryMap>(
76
- collection: C,
77
- filter?: (entry: CollectionEntry<C>) => unknown,
78
- ): Promise<CollectionEntry<C>[]>;
79
-
80
- export function getLiveCollection<C extends keyof LiveContentConfig['collections']>(
81
- collection: C,
82
- filter?: LiveLoaderCollectionFilterType<C>,
83
- ): Promise<
84
- import('astro').LiveDataCollectionResult<LiveLoaderDataType<C>, LiveLoaderErrorType<C>>
85
- >;
86
-
87
- export function getEntry<
88
- C extends keyof ContentEntryMap,
89
- E extends ValidContentEntrySlug<C> | (string & {}),
90
- >(
91
- entry: ReferenceContentEntry<C, E>,
92
- ): E extends ValidContentEntrySlug<C>
93
- ? Promise<CollectionEntry<C>>
94
- : Promise<CollectionEntry<C> | undefined>;
95
- export function getEntry<
96
- C extends keyof DataEntryMap,
97
- E extends keyof DataEntryMap[C] | (string & {}),
98
- >(
99
- entry: ReferenceDataEntry<C, E>,
100
- ): E extends keyof DataEntryMap[C]
101
- ? Promise<DataEntryMap[C][E]>
102
- : Promise<CollectionEntry<C> | undefined>;
103
- export function getEntry<
104
- C extends keyof ContentEntryMap,
105
- E extends ValidContentEntrySlug<C> | (string & {}),
106
- >(
107
- collection: C,
108
- slug: E,
109
- ): E extends ValidContentEntrySlug<C>
110
- ? Promise<CollectionEntry<C>>
111
- : Promise<CollectionEntry<C> | undefined>;
112
- export function getEntry<
113
- C extends keyof DataEntryMap,
114
- E extends keyof DataEntryMap[C] | (string & {}),
115
- >(
116
- collection: C,
117
- id: E,
118
- ): E extends keyof DataEntryMap[C]
119
- ? string extends keyof DataEntryMap[C]
120
- ? Promise<DataEntryMap[C][E]> | undefined
121
- : Promise<DataEntryMap[C][E]>
122
- : Promise<CollectionEntry<C> | undefined>;
123
- export function getLiveEntry<C extends keyof LiveContentConfig['collections']>(
124
- collection: C,
125
- filter: string | LiveLoaderEntryFilterType<C>,
126
- ): Promise<import('astro').LiveDataEntryResult<LiveLoaderDataType<C>, LiveLoaderErrorType<C>>>;
127
-
128
- /** Resolve an array of entry references from the same collection */
129
- export function getEntries<C extends keyof ContentEntryMap>(
130
- entries: ReferenceContentEntry<C, ValidContentEntrySlug<C>>[],
131
- ): Promise<CollectionEntry<C>[]>;
132
- export function getEntries<C extends keyof DataEntryMap>(
133
- entries: ReferenceDataEntry<C, keyof DataEntryMap[C]>[],
134
- ): Promise<CollectionEntry<C>[]>;
135
-
136
- export function render<C extends keyof AnyEntryMap>(
137
- entry: AnyEntryMap[C][string],
138
- ): Promise<RenderResult>;
139
-
140
- export function reference<C extends keyof AnyEntryMap>(
141
- collection: C,
142
- ): import('astro/zod').ZodEffects<
143
- import('astro/zod').ZodString,
144
- C extends keyof ContentEntryMap
145
- ? ReferenceContentEntry<C, ValidContentEntrySlug<C>>
146
- : ReferenceDataEntry<C, keyof DataEntryMap[C]>
147
- >;
148
- // Allow generic `string` to avoid excessive type errors in the config
149
- // if `dev` is not running to update as you edit.
150
- // Invalid collection names will be caught at build time.
151
- export function reference<C extends string>(
152
- collection: C,
153
- ): import('astro/zod').ZodEffects<import('astro/zod').ZodString, never>;
154
-
155
- type ReturnTypeOrOriginal<T> = T extends (...args: any[]) => infer R ? R : T;
156
- type InferEntrySchema<C extends keyof AnyEntryMap> = import('astro/zod').infer<
157
- ReturnTypeOrOriginal<Required<ContentConfig['collections'][C]>['schema']>
158
- >;
159
-
160
- type ContentEntryMap = {
161
-
162
- };
163
-
164
- type DataEntryMap = {
165
-
166
- };
167
-
168
- type AnyEntryMap = ContentEntryMap & DataEntryMap;
169
-
170
- type ExtractLoaderTypes<T> = T extends import('astro/loaders').LiveLoader<
171
- infer TData,
172
- infer TEntryFilter,
173
- infer TCollectionFilter,
174
- infer TError
175
- >
176
- ? { data: TData; entryFilter: TEntryFilter; collectionFilter: TCollectionFilter; error: TError }
177
- : { data: never; entryFilter: never; collectionFilter: never; error: never };
178
- type ExtractDataType<T> = ExtractLoaderTypes<T>['data'];
179
- type ExtractEntryFilterType<T> = ExtractLoaderTypes<T>['entryFilter'];
180
- type ExtractCollectionFilterType<T> = ExtractLoaderTypes<T>['collectionFilter'];
181
- type ExtractErrorType<T> = ExtractLoaderTypes<T>['error'];
182
-
183
- type LiveLoaderDataType<C extends keyof LiveContentConfig['collections']> =
184
- LiveContentConfig['collections'][C]['schema'] extends undefined
185
- ? ExtractDataType<LiveContentConfig['collections'][C]['loader']>
186
- : import('astro/zod').infer<
187
- Exclude<LiveContentConfig['collections'][C]['schema'], undefined>
188
- >;
189
- type LiveLoaderEntryFilterType<C extends keyof LiveContentConfig['collections']> =
190
- ExtractEntryFilterType<LiveContentConfig['collections'][C]['loader']>;
191
- type LiveLoaderCollectionFilterType<C extends keyof LiveContentConfig['collections']> =
192
- ExtractCollectionFilterType<LiveContentConfig['collections'][C]['loader']>;
193
- type LiveLoaderErrorType<C extends keyof LiveContentConfig['collections']> = ExtractErrorType<
194
- LiveContentConfig['collections'][C]['loader']
195
- >;
196
-
197
- export type ContentConfig = typeof import("../src/content.config.mjs");
198
- export type LiveContentConfig = never;
199
- }
package/.astro/types.d.ts DELETED
@@ -1,2 +0,0 @@
1
- /// <reference types="astro/client" />
2
- /// <reference path="content.d.ts" />
package/.prettierrc DELETED
@@ -1,15 +0,0 @@
1
- {
2
- "useTabs": true,
3
- "semi": false,
4
- "singleQuote": false,
5
- "printWidth": 80,
6
- "plugins": ["prettier-plugin-astro"],
7
- "overrides": [
8
- {
9
- "files": "*.astro",
10
- "options": {
11
- "parser": "astro"
12
- }
13
- }
14
- ]
15
- }
package/CHANGELOG.md DELETED
@@ -1,77 +0,0 @@
1
- # @screenbook/ui
2
-
3
- ## 1.1.0
4
-
5
- ### Patch Changes
6
-
7
- - [#48](https://github.com/wadakatu/screenbook/pull/48) [`f046e2b`](https://github.com/wadakatu/screenbook/commit/f046e2bfac29cf3a81417430f0bbb3077be57874) Thanks [@wadakatu](https://github.com/wadakatu)! - feat: add unified screenbook package for simplified installation
8
- - New `screenbook` umbrella package that includes core, cli, and ui
9
- - Simplified installation: `pnpm add -D screenbook`
10
- - Unified imports: `import { defineScreen } from "screenbook"`
11
- - Mock Editor redesign with 3-column tabbed panels layout
12
- - Improved accessibility (Lighthouse 100%)
13
-
14
- ## 1.0.0
15
-
16
- ### Major Changes
17
-
18
- - # Screenbook v1.0.0
19
-
20
- First stable release of Screenbook - Screen catalog and navigation graph generator for frontend applications.
21
-
22
- ## @screenbook/core
23
- - `defineScreen()` function for declaring screen metadata
24
- - `defineConfig()` function for configuration
25
- - TypeScript types and Zod validation
26
-
27
- ## @screenbook/cli
28
- - `screenbook init` - Initialize Screenbook in a project with framework detection
29
- - `screenbook generate` - Auto-generate screen.meta.ts files from routes
30
- - `screenbook build` - Build screen metadata JSON with validation
31
- - `screenbook dev` - Start the development server
32
- - `screenbook lint` - Detect routes without screen.meta (CI-ready)
33
- - `screenbook impact` - Analyze API dependency impact
34
- - `screenbook pr-impact` - Analyze PR changes impact on screens
35
- - `screenbook doctor` - Diagnose common setup issues
36
-
37
- ### CLI Features
38
- - Circular navigation detection with allowCycles option
39
- - Screen reference validation
40
- - Progressive adoption mode
41
- - Interactive mode for generate command
42
- - Colored output with actionable error messages
43
-
44
- ## @screenbook/ui
45
- - Screen catalog with search and filtering
46
- - Screen detail view with metadata
47
- - Navigation graph visualization (Mermaid)
48
- - Impact analysis view
49
- - Coverage report
50
- - Responsive design with accessibility improvements
51
-
52
- ### Patch Changes
53
-
54
- - Updated dependencies []:
55
- - @screenbook/core@1.0.0
56
-
57
- ## 0.1.0
58
-
59
- ### Minor Changes
60
-
61
- - [`0067b16`](https://github.com/wadakatu/screenbook/commit/0067b16006cdf9d0a52e89558b42d33a5a4b0679) - Initial release of Screenbook - screen catalog and navigation graph generator for frontend applications.
62
-
63
- Features:
64
- - `defineScreen()` for type-safe screen metadata definitions
65
- - `screenbook build` to generate screens.json
66
- - `screenbook dev` to start the UI server
67
- - `screenbook lint` to detect missing screen.meta files
68
- - `screenbook init` to scaffold initial configuration
69
- - `screenbook generate` to generate screen.meta.ts files
70
- - `screenbook pr-impact` for PR impact analysis
71
- - Screen list with search and filtering
72
- - Navigation graph visualization with Mermaid
73
-
74
- ### Patch Changes
75
-
76
- - Updated dependencies [[`0067b16`](https://github.com/wadakatu/screenbook/commit/0067b16006cdf9d0a52e89558b42d33a5a4b0679)]:
77
- - @screenbook/core@0.1.0
package/astro.config.mjs DELETED
@@ -1,20 +0,0 @@
1
- import node from "@astrojs/node"
2
- import react from "@astrojs/react"
3
- import tailwindcss from "@tailwindcss/vite"
4
- import { defineConfig } from "astro/config"
5
-
6
- export default defineConfig({
7
- integrations: [react()],
8
- srcDir: "./src",
9
- outDir: "./dist",
10
- output: "server",
11
- adapter: node({
12
- mode: "standalone",
13
- }),
14
- devToolbar: {
15
- enabled: false,
16
- },
17
- vite: {
18
- plugins: [tailwindcss()],
19
- },
20
- })