tether-ui 0.1.0 → 0.3.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/README.md +82 -23
- package/dist/cli/format.js +4 -3
- package/dist/cli/index.js +21 -8
- package/dist/cli/json.d.ts +41 -0
- package/dist/cli/json.js +59 -0
- package/dist/contract/describe.d.ts +2 -0
- package/dist/contract/describe.js +6 -0
- package/dist/contract/infer.d.ts +2 -2
- package/dist/contract/infer.js +70 -3
- package/dist/contract/read.d.ts +3 -0
- package/dist/contract/read.js +67 -0
- package/dist/contract/scopes.d.ts +5 -0
- package/dist/contract/scopes.js +150 -0
- package/dist/drift/compare.js +52 -18
- package/dist/drift/evidence.d.ts +4 -0
- package/dist/drift/evidence.js +41 -0
- package/dist/scanner/collect.d.ts +5 -3
- package/dist/scanner/collect.js +78 -2
- package/dist/scanner/identity.d.ts +15 -0
- package/dist/scanner/identity.js +86 -0
- package/dist/scanner/scan.js +9 -1
- package/dist/types.d.ts +68 -1
- package/dist/utils/config.js +3 -0
- package/package.json +13 -4
- package/report/out/404/index.html +1 -1
- package/report/out/404.html +1 -1
- package/report/out/__next.__PAGE__.txt +3 -3
- package/report/out/__next._full.txt +4 -4
- package/report/out/__next._tree.txt +2 -2
- package/report/out/_next/static/chunks/679-a159f64a448d339d.js +1 -0
- package/report/out/_next/static/chunks/app/_not-found/{page-e3039971fa1f5f8d.js → page-032313fc4524b472.js} +1 -1
- package/report/out/_next/static/chunks/app/contract/{page-340f86944045adea.js → page-60f6d610ece63f59.js} +1 -1
- package/report/out/_next/static/chunks/app/drift/{page-559460ac1a19903b.js → page-655683d6032a79a8.js} +1 -1
- package/report/out/_next/static/chunks/app/layout-16ba70b55e65864f.js +1 -0
- package/report/out/_next/static/chunks/app/{page-ab86e7319bb488c8.js → page-bdfcce47bd844e7e.js} +1 -1
- package/report/out/_next/static/chunks/app/viewports/{page-8970bc5bd4e2e4f2.js → page-6e44561586c30871.js} +1 -1
- package/report/out/_next/static/chunks/main-app-e3082ce30f616b80.js +1 -0
- package/report/out/_next/static/chunks/next/dist/client/components/builtin/global-error-d142454d28d73f8d.js +1 -0
- package/report/out/_next/static/css/7fbedb5502367c5e.css +1 -0
- package/report/out/_not-found/__next._full.txt +3 -3
- package/report/out/_not-found/__next._not-found.__PAGE__.txt +2 -2
- package/report/out/_not-found/__next._tree.txt +2 -2
- package/report/out/_not-found/index.html +1 -1
- package/report/out/_not-found/index.txt +3 -3
- package/report/out/contract/__next._full.txt +4 -4
- package/report/out/contract/__next._tree.txt +2 -2
- package/report/out/contract/__next.contract.__PAGE__.txt +3 -3
- package/report/out/contract/index.html +1 -1
- package/report/out/contract/index.txt +4 -4
- package/report/out/drift/__next._full.txt +4 -4
- package/report/out/drift/__next._tree.txt +2 -2
- package/report/out/drift/__next.drift.__PAGE__.txt +3 -3
- package/report/out/drift/index.html +1 -1
- package/report/out/drift/index.txt +4 -4
- package/report/out/index.html +1 -1
- package/report/out/index.txt +4 -4
- package/report/out/viewports/__next._full.txt +4 -4
- package/report/out/viewports/__next._tree.txt +2 -2
- package/report/out/viewports/__next.viewports.__PAGE__.txt +3 -3
- package/report/out/viewports/index.html +1 -1
- package/report/out/viewports/index.txt +4 -4
- package/report/out/_next/static/chunks/100-cde31512e90ea4ee.js +0 -1
- package/report/out/_next/static/chunks/app/layout-6c6cbe0311c0f643.js +0 -1
- package/report/out/_next/static/chunks/main-app-91d98c37495a2d56.js +0 -1
- package/report/out/_next/static/chunks/next/dist/client/components/builtin/global-error-657c3d8e42266fe3.js +0 -1
- package/report/out/_next/static/css/b85889345c486052.css +0 -1
- /package/report/out/_next/static/{NEP_BMzhg1ixudz9w2f3I → l8qlXIaCzWbRx2ZWOTp_i}/_buildManifest.js +0 -0
- /package/report/out/_next/static/{NEP_BMzhg1ixudz9w2f3I → l8qlXIaCzWbRx2ZWOTp_i}/_ssgManifest.js +0 -0
package/report/out/index.txt
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[1133,[],""]
|
|
3
3
|
3:I[4297,[],""]
|
|
4
|
-
4:I[
|
|
4
|
+
4:I[6652,["979","static/chunks/979-2cc4e681ca63e0b3.js","679","static/chunks/679-a159f64a448d339d.js","974","static/chunks/app/page-bdfcce47bd844e7e.js"],"default"]
|
|
5
5
|
5:I[1872,[],"OutletBoundary"]
|
|
6
6
|
6:"$Sreact.suspense"
|
|
7
7
|
8:I[1872,[],"ViewportBoundary"]
|
|
8
8
|
a:I[1872,[],"MetadataBoundary"]
|
|
9
9
|
c:I[7567,[],"default",1]
|
|
10
|
-
:HL["/_next/static/css/
|
|
11
|
-
0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/
|
|
10
|
+
:HL["/_next/static/css/7fbedb5502367c5e.css","style"]
|
|
11
|
+
0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/7fbedb5502367c5e.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{"page":"overview"}],null,["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],{},null,false,null]},null,false,null],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$6",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],null]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"l8qlXIaCzWbRx2ZWOTp_i"}
|
|
12
12
|
9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
13
13
|
d:I[2569,[],"IconMark"]
|
|
14
14
|
7:null
|
|
15
|
-
b:[["$","title","0",{"children":"tether — Visual
|
|
15
|
+
b:[["$","title","0",{"children":"tether — Visual linting"}],["$","meta","1",{"name":"description","content":"tether learns your UI’s existing design language, then catches drift as humans and agents make changes."}],["$","link","2",{"rel":"icon","href":"/knot.svg"}],["$","$Ld","3",{}]]
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[1133,[],""]
|
|
3
3
|
3:I[4297,[],""]
|
|
4
|
-
4:I[
|
|
4
|
+
4:I[6652,["979","static/chunks/979-2cc4e681ca63e0b3.js","679","static/chunks/679-a159f64a448d339d.js","230","static/chunks/app/viewports/page-6e44561586c30871.js"],"default"]
|
|
5
5
|
5:I[1872,[],"OutletBoundary"]
|
|
6
6
|
6:"$Sreact.suspense"
|
|
7
7
|
9:I[1872,[],"ViewportBoundary"]
|
|
8
8
|
b:I[1872,[],"MetadataBoundary"]
|
|
9
9
|
d:I[7567,[],"default",1]
|
|
10
|
-
:HL["/_next/static/css/
|
|
10
|
+
:HL["/_next/static/css/7fbedb5502367c5e.css","style"]
|
|
11
11
|
8:X
|
|
12
|
-
0:{"P":null,"c":["","viewports",""],"q":"","i":false,"f":[[["",{"children":["viewports",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/
|
|
12
|
+
0:{"P":null,"c":["","viewports",""],"q":"","i":false,"f":[[["",{"children":["viewports",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/7fbedb5502367c5e.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{"page":"viewports"}],null,["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],{},null,false,null]},null,false,"$8"]},null,false,null],["$","$1","h",{"children":[null,["$","$L9",null,{"children":"$La"}],["$","div",null,{"hidden":true,"children":["$","$Lb",null,{"children":["$","$6",null,{"name":"Next.Metadata","children":"$Lc"}]}]}],null]}],false]],"m":"$undefined","G":["$d",[]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"l8qlXIaCzWbRx2ZWOTp_i"}
|
|
13
13
|
8:C
|
|
14
14
|
a:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
15
15
|
e:I[2569,[],"IconMark"]
|
|
16
16
|
7:null
|
|
17
|
-
c:[["$","title","0",{"children":"tether — Visual
|
|
17
|
+
c:[["$","title","0",{"children":"tether — Visual linting"}],["$","meta","1",{"name":"description","content":"tether learns your UI’s existing design language, then catches drift as humans and agents make changes."}],["$","link","2",{"rel":"icon","href":"/knot.svg"}],["$","$Le","3",{}]]
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
:HL["/_next/static/css/
|
|
2
|
-
0:{"tree":{"name":"","param":null,"prefetchHints":4176,"slots":{"children":{"name":"viewports","param":null,"prefetchHints":4192,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":4256,"slots":null}}}}},"staleTime":300,"buildId":"
|
|
1
|
+
:HL["/_next/static/css/7fbedb5502367c5e.css","style"]
|
|
2
|
+
0:{"tree":{"name":"","param":null,"prefetchHints":4176,"slots":{"children":{"name":"viewports","param":null,"prefetchHints":4192,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":4256,"slots":null}}}}},"staleTime":300,"buildId":"l8qlXIaCzWbRx2ZWOTp_i"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
|
-
2:I[
|
|
2
|
+
2:I[6652,["979","static/chunks/979-2cc4e681ca63e0b3.js","679","static/chunks/679-a159f64a448d339d.js","230","static/chunks/app/viewports/page-6e44561586c30871.js"],"default"]
|
|
3
3
|
3:I[1872,[],"OutletBoundary"]
|
|
4
4
|
4:"$Sreact.suspense"
|
|
5
5
|
8:I[1872,[],"ViewportBoundary"]
|
|
@@ -7,11 +7,11 @@
|
|
|
7
7
|
a:I[2569,[],"IconMark"]
|
|
8
8
|
c:I[1133,[],""]
|
|
9
9
|
d:I[4297,[],""]
|
|
10
|
-
:HL["/_next/static/css/
|
|
10
|
+
:HL["/_next/static/css/7fbedb5502367c5e.css","style"]
|
|
11
11
|
7:X
|
|
12
12
|
f:X
|
|
13
13
|
f:C
|
|
14
|
-
0:{"buildId":"
|
|
14
|
+
0:{"buildId":"l8qlXIaCzWbRx2ZWOTp_i","data":[{"rsc":["$","$1","c",{"children":[["$","$L2",null,{"page":"viewports"}],null,["$","$L3",null,{"children":["$","$4",null,{"name":"Next.MetadataOutlet","children":"$@5"}]}]]}],"isPartial":"$@6","staleTime":"$7","varyParams":null},{"rsc":["$","$1","h",{"children":[null,["$","$L8",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L9",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"tether — Visual linting"}],["$","meta","1",{"name":"description","content":"tether learns your UI’s existing design language, then catches drift as humans and agents make changes."}],["$","link","2",{"rel":"icon","href":"/knot.svg"}],["$","$La","3",{}]]}]}]}],null]}],"isPartial":"$@b","staleTime":"$7","varyParams":null},{"rsc":["$","$1","c",{"children":[null,["$","$Lc",null,{"parallelRouterKey":"children","template":["$","$Ld",null,{}]}]]}],"isPartial":"$@e","staleTime":"$7","varyParams":"$f"},{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/7fbedb5502367c5e.css","precedence":"next"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$Lc",null,{"parallelRouterKey":"children","template":["$","$Ld",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]}]]}],"isPartial":"$@10","staleTime":"$7","varyParams":null}],"isUpgradeableISRFallback":false,"a":"$@11","rootVaryParams":null,"needsRuntimeRequest":"$@12"}
|
|
15
15
|
5:null
|
|
16
16
|
7:300
|
|
17
17
|
12:true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/knot.svg"/><link rel="stylesheet" href="/_next/static/css/b85889345c486052.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-21c0bda91597affb.js"/><script src="/_next/static/chunks/c7879cf7-33323d49ba6da96a.js" async=""></script><script src="/_next/static/chunks/158-65f5491737ca4c2e.js" async=""></script><script src="/_next/static/chunks/main-app-91d98c37495a2d56.js" async=""></script><script src="/_next/static/chunks/979-2cc4e681ca63e0b3.js" async=""></script><script src="/_next/static/chunks/100-cde31512e90ea4ee.js" async=""></script><script src="/_next/static/chunks/app/viewports/page-8970bc5bd4e2e4f2.js" async=""></script><title>tether — Visual QA</title><meta name="description" content="Compare your frontend with its saved visual baseline."/><link rel="icon" href="/knot.svg"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div class="shell"><a href="#main" class="skip">Skip to report</a><aside class="sidebar"><a class="brand" href="/"><img class="brand-symbol" src="/knot.svg" alt="" width="34" height="34"/>tether<span class="version">0.1</span></a><div class="workspace"><div class="workspace-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-line" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><path d="M7 12h10"></path></svg></div><div><strong>Local workspace</strong><small>Latest scan</small></div><span class="connection" title="Local report"></span></div><nav aria-label="Report navigation"><a class="" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-dashboard" aria-hidden="true"><rect width="7" height="9" x="3" y="3" rx="1"></rect><rect width="7" height="5" x="14" y="3" rx="1"></rect><rect width="7" height="9" x="14" y="12" rx="1"></rect><rect width="7" height="5" x="3" y="16" rx="1"></rect></svg>Overview</a><a class="" href="/drift/"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg>Drift</a><a class="" href="/contract/"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-fingerprint-pattern" aria-hidden="true"><path d="M12 10a2 2 0 0 0-2 2c0 1.02-.1 2.51-.26 4"></path><path d="M14 13.12c0 2.38 0 6.38-1 8.88"></path><path d="M17.29 21.02c.12-.6.43-2.3.5-3.02"></path><path d="M2 12a10 10 0 0 1 18-6"></path><path d="M2 16h.01"></path><path d="M21.8 16c.2-2 .131-5.354 0-6"></path><path d="M5 19.5C5.5 18 6 15 6 12a6 6 0 0 1 .34-2"></path><path d="M8.65 22c.21-.66.45-1.32.57-2"></path><path d="M9 6.8a6 6 0 0 1 9 5.2v2"></path></svg>Visual contract</a><a class="active" aria-current="page" href="/viewports/"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-monitor" aria-hidden="true"><rect width="20" height="14" x="2" y="3" rx="2"></rect><line x1="8" x2="16" y1="21" y2="21"></line><line x1="12" x2="12" y1="17" y2="21"></line></svg>Viewports</a></nav><div class="sidebar-bottom"><div class="local-note"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-check" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="m9 12 2 2 4-4"></path></svg><span>Data stays on this device</span></div></div></aside><div class="main-shell"><header class="topbar"><div>tether <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right" aria-hidden="true"><path d="m9 18 6-6-6-6"></path></svg><b>Viewports</b></div><span class="local-pill"><i></i> Local report</span></header><main id="main"><div class="page-heading"><div><h1>Viewports</h1><p>Screenshots and layout issues at each screen size.</p></div><button class="button" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clipboard" aria-hidden="true"><rect width="8" height="4" x="8" y="2" rx="1" ry="1"></rect><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path></svg>Copy agent brief</button></div><div class="empty" role="status">Loading scan…</div></main></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-21c0bda91597affb.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1133,[],\"\"]\n3:I[4297,[],\"\"]\n4:I[1350,[\"979\",\"static/chunks/979-2cc4e681ca63e0b3.js\",\"100\",\"static/chunks/100-cde31512e90ea4ee.js\",\"230\",\"static/chunks/app/viewports/page-8970bc5bd4e2e4f2.js\"],\"default\"]\n5:I[1872,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n9:I[1872,[],\"ViewportBoundary\"]\nb:I[1872,[],\"MetadataBoundary\"]\nd:I[7567,[],\"default\",1]\n:HL[\"/_next/static/css/b85889345c486052.css\",\"style\"]\n8:X\n0:{\"P\":null,\"c\":[\"\",\"viewports\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"viewports\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/b85889345c486052.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L4\",null,{\"page\":\"viewports\"}],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,\"$8\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"NEP_BMzhg1ixudz9w2f3I\"}\n8:C\na:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\ne:I[2569,[],\"IconMark\"]\n7:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"tether — Visual QA\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Compare your frontend with its saved visual baseline.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/knot.svg\"}],[\"$\",\"$Le\",\"3\",{}]]\n"])</script></body></html>
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/knot.svg"/><link rel="stylesheet" href="/_next/static/css/7fbedb5502367c5e.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-21c0bda91597affb.js"/><script src="/_next/static/chunks/c7879cf7-33323d49ba6da96a.js" async=""></script><script src="/_next/static/chunks/158-65f5491737ca4c2e.js" async=""></script><script src="/_next/static/chunks/main-app-e3082ce30f616b80.js" async=""></script><script src="/_next/static/chunks/979-2cc4e681ca63e0b3.js" async=""></script><script src="/_next/static/chunks/679-a159f64a448d339d.js" async=""></script><script src="/_next/static/chunks/app/viewports/page-6e44561586c30871.js" async=""></script><title>tether — Visual linting</title><meta name="description" content="tether learns your UI’s existing design language, then catches drift as humans and agents make changes."/><link rel="icon" href="/knot.svg"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div class="shell"><a href="#main" class="skip">Skip to report</a><aside class="sidebar"><a class="brand" href="/"><img class="brand-symbol" src="/knot.svg" alt="" width="34" height="34"/>tether<span class="version">0.3</span></a><div class="workspace"><div class="workspace-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-line" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><path d="M7 12h10"></path></svg></div><div><strong>Local workspace</strong><small>Latest scan</small></div><span class="connection" title="Local report"></span></div><nav aria-label="Report navigation"><a class="" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layout-dashboard" aria-hidden="true"><rect width="7" height="9" x="3" y="3" rx="1"></rect><rect width="7" height="5" x="14" y="3" rx="1"></rect><rect width="7" height="9" x="14" y="12" rx="1"></rect><rect width="7" height="5" x="3" y="16" rx="1"></rect></svg>Overview</a><a class="" href="/drift/"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg>Drift</a><a class="" href="/contract/"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-fingerprint-pattern" aria-hidden="true"><path d="M12 10a2 2 0 0 0-2 2c0 1.02-.1 2.51-.26 4"></path><path d="M14 13.12c0 2.38 0 6.38-1 8.88"></path><path d="M17.29 21.02c.12-.6.43-2.3.5-3.02"></path><path d="M2 12a10 10 0 0 1 18-6"></path><path d="M2 16h.01"></path><path d="M21.8 16c.2-2 .131-5.354 0-6"></path><path d="M5 19.5C5.5 18 6 15 6 12a6 6 0 0 1 .34-2"></path><path d="M8.65 22c.21-.66.45-1.32.57-2"></path><path d="M9 6.8a6 6 0 0 1 9 5.2v2"></path></svg>Visual contract</a><a class="active" aria-current="page" href="/viewports/"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-monitor" aria-hidden="true"><rect width="20" height="14" x="2" y="3" rx="2"></rect><line x1="8" x2="16" y1="21" y2="21"></line><line x1="12" x2="12" y1="17" y2="21"></line></svg>Viewports</a></nav><div class="sidebar-bottom"><div class="local-note"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-check" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="m9 12 2 2 4-4"></path></svg><span>Data stays on this device</span></div></div></aside><div class="main-shell"><header class="topbar"><div>tether <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right" aria-hidden="true"><path d="m9 18 6-6-6-6"></path></svg><b>Viewports</b></div><span class="local-pill"><i></i> Local report</span></header><main id="main"><div class="page-heading"><div><h1>Viewports</h1><p>Screenshots and layout issues at each screen size.</p></div><button class="button" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clipboard" aria-hidden="true"><rect width="8" height="4" x="8" y="2" rx="1" ry="1"></rect><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path></svg>Copy agent brief</button></div><div class="empty" role="status">Loading scan…</div></main></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-21c0bda91597affb.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1133,[],\"\"]\n3:I[4297,[],\"\"]\n4:I[6652,[\"979\",\"static/chunks/979-2cc4e681ca63e0b3.js\",\"679\",\"static/chunks/679-a159f64a448d339d.js\",\"230\",\"static/chunks/app/viewports/page-6e44561586c30871.js\"],\"default\"]\n5:I[1872,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n9:I[1872,[],\"ViewportBoundary\"]\nb:I[1872,[],\"MetadataBoundary\"]\nd:I[7567,[],\"default\",1]\n:HL[\"/_next/static/css/7fbedb5502367c5e.css\",\"style\"]\n8:X\n0:{\"P\":null,\"c\":[\"\",\"viewports\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"viewports\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/7fbedb5502367c5e.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L4\",null,{\"page\":\"viewports\"}],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,\"$8\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"l8qlXIaCzWbRx2ZWOTp_i\"}\n8:C\na:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\ne:I[2569,[],\"IconMark\"]\n7:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"tether — Visual linting\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"tether learns your UI’s existing design language, then catches drift as humans and agents make changes.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/knot.svg\"}],[\"$\",\"$Le\",\"3\",{}]]\n"])</script></body></html>
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[1133,[],""]
|
|
3
3
|
3:I[4297,[],""]
|
|
4
|
-
4:I[
|
|
4
|
+
4:I[6652,["979","static/chunks/979-2cc4e681ca63e0b3.js","679","static/chunks/679-a159f64a448d339d.js","230","static/chunks/app/viewports/page-6e44561586c30871.js"],"default"]
|
|
5
5
|
5:I[1872,[],"OutletBoundary"]
|
|
6
6
|
6:"$Sreact.suspense"
|
|
7
7
|
9:I[1872,[],"ViewportBoundary"]
|
|
8
8
|
b:I[1872,[],"MetadataBoundary"]
|
|
9
9
|
d:I[7567,[],"default",1]
|
|
10
|
-
:HL["/_next/static/css/
|
|
10
|
+
:HL["/_next/static/css/7fbedb5502367c5e.css","style"]
|
|
11
11
|
8:X
|
|
12
|
-
0:{"P":null,"c":["","viewports",""],"q":"","i":false,"f":[[["",{"children":["viewports",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/
|
|
12
|
+
0:{"P":null,"c":["","viewports",""],"q":"","i":false,"f":[[["",{"children":["viewports",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/7fbedb5502367c5e.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{"page":"viewports"}],null,["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],{},null,false,null]},null,false,"$8"]},null,false,null],["$","$1","h",{"children":[null,["$","$L9",null,{"children":"$La"}],["$","div",null,{"hidden":true,"children":["$","$Lb",null,{"children":["$","$6",null,{"name":"Next.Metadata","children":"$Lc"}]}]}],null]}],false]],"m":"$undefined","G":["$d",[]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"l8qlXIaCzWbRx2ZWOTp_i"}
|
|
13
13
|
8:C
|
|
14
14
|
a:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
15
15
|
e:I[2569,[],"IconMark"]
|
|
16
16
|
7:null
|
|
17
|
-
c:[["$","title","0",{"children":"tether — Visual
|
|
17
|
+
c:[["$","title","0",{"children":"tether — Visual linting"}],["$","meta","1",{"name":"description","content":"tether learns your UI’s existing design language, then catches drift as humans and agents make changes."}],["$","link","2",{"rel":"icon","href":"/knot.svg"}],["$","$Le","3",{}]]
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[100],{100:(s,e,a)=>{Promise.resolve().then(a.bind(a,1350))},1350:(s,e,a)=>{"use strict";a.d(e,{default:()=>R});var i=a(3365),n=a(1521),l=a(9568),c=a.n(l),r=a(9376),t=a(21),d=a(4639),o=a(2665),h=a(8768),x=a(3960),j=a(634),m=a(4582),p=a(7494),v=a(8232),u=a(1613),g=a(6687),N=a(6504),w=a(1838),y=a(2293),f=a(3382);let b={overview:"Overview",drift:"Visual drift",contract:"Visual contract",viewports:"Viewports"},k={colors:"Color",fontFamilies:"Typography",fontSizes:"Typography",fontWeights:"Typography",lineHeights:"Typography",spacing:"Spacing",radii:"Radius",shadows:"Shadow",borders:"Border",elementHeights:"Height",layout:"Layout"},S=["All","Color","Typography","Spacing","Radius","Layout","Shadow","Border","Height"];function A(s){return new Date(s).toLocaleString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function z({children:s}){return(0,i.jsx)("span",{className:"count",children:s})}function C({severity:s}){return(0,i.jsxs)("span",{className:`severity ${s}`,children:[(0,i.jsx)("i",{}),s]})}function E(){return(0,i.jsx)("p",{className:"muted",children:"No recurring values in this category."})}function T({issue:s}){return(0,i.jsxs)("article",{className:"issue-card",children:[(0,i.jsxs)("div",{className:"issue-heading",children:[(0,i.jsx)("span",{className:"category",children:k[s.category]}),(0,i.jsx)(C,{severity:s.severity})]}),(0,i.jsx)("h3",{children:s.title}),(0,i.jsxs)("div",{className:"comparison",children:[(0,i.jsxs)("div",{children:[(0,i.jsx)("span",{className:"micro",children:"CURRENT"}),(0,i.jsxs)("code",{className:"current",children:["colors"===s.category&&(0,i.jsx)("i",{className:"tiny-swatch",style:{background:s.current}}),s.current]})]}),(0,i.jsx)(r.A,{size:15,className:"muted"}),(0,i.jsxs)("div",{children:[(0,i.jsx)("span",{className:"micro",children:"EXPECTED"}),(0,i.jsx)("p",{className:"expected",children:s.expected.join(" \xb7 ")||"Review baseline"})]})]}),(0,i.jsxs)("div",{className:"issue-meta",children:[(0,i.jsx)("code",{children:s.selector}),(0,i.jsxs)("span",{children:[s.route," ",(0,i.jsx)("span",{className:"dot",children:"\xb7"})," ",s.viewports.join(", ")]})]}),(0,i.jsxs)("details",{children:[(0,i.jsx)("summary",{children:"Inspect property"}),(0,i.jsx)("code",{children:s.property})]})]})}function R({page:s}){let[e,a]=(0,n.useState)(null),[l,C]=(0,n.useState)(""),[E,L]=(0,n.useState)("All"),[H,$]=(0,n.useState)("all"),[D,M]=(0,n.useState)(!1),[V,B]=(0,n.useState)(!1),[I,P]=(0,n.useState)(null);async function _(){if(e)try{await navigator.clipboard.writeText(e.agentMarkdown),M(!0),B(!1),setTimeout(()=>M(!1),2200)}catch{B(!0)}}(0,n.useEffect)(()=>{fetch("/report.json",{cache:"no-store"}).then(s=>{if(!s.ok)throw Error("No scan data found. Run tether check, then reopen tether report.");return s.json()}).then(a).catch(s=>C(s.message))},[]),(0,n.useEffect)(()=>{if(!I)return;let s=s=>{"Escape"===s.key&&P(null)};return document.addEventListener("keydown",s),()=>document.removeEventListener("keydown",s)},[I]);let O=[{key:"overview",href:"/",icon:t.A},{key:"drift",href:"/drift/",icon:d.A},{key:"contract",href:"/contract/",icon:o.A},{key:"viewports",href:"/viewports/",icon:h.A}],U=new Set,W=(e?.issues??[]).filter(s=>{let e=k[s.category];return!U.has(e)&&(U.add(e),!0)}).slice(0,4),q=e?.issues.filter(s=>("All"===E||k[s.category]===E)&&("all"===H||s.severity===H))??[];return(0,i.jsxs)("div",{className:"shell",children:[(0,i.jsx)("a",{href:"#main",className:"skip",children:"Skip to report"}),(0,i.jsxs)("aside",{className:"sidebar",children:[(0,i.jsxs)(c(),{href:"/",className:"brand",children:[(0,i.jsx)("img",{className:"brand-symbol",src:"/knot.svg",alt:"",width:34,height:34}),"tether",(0,i.jsx)("span",{className:"version",children:"0.1"})]}),(0,i.jsxs)("div",{className:"workspace",children:[(0,i.jsx)("div",{className:"workspace-icon",children:(0,i.jsx)(x.A,{size:18})}),(0,i.jsxs)("div",{children:[(0,i.jsx)("strong",{children:"Local workspace"}),(0,i.jsx)("small",{children:"Latest scan"})]}),(0,i.jsx)("span",{className:"connection",title:"Local report"})]}),(0,i.jsx)("nav",{"aria-label":"Report navigation",children:O.map(({key:a,href:n,icon:l})=>(0,i.jsxs)(c(),{href:n,className:s===a?"active":"","aria-current":s===a?"page":void 0,children:[(0,i.jsx)(l,{size:17}),"drift"===a?"Drift":b[a],"drift"===a&&!!e?.issues.length&&(0,i.jsx)(z,{children:e.issues.length})]},a))}),(0,i.jsx)("div",{className:"sidebar-bottom",children:(0,i.jsxs)("div",{className:"local-note",children:[(0,i.jsx)(j.A,{size:16}),(0,i.jsx)("span",{children:"Data stays on this device"})]})})]}),(0,i.jsxs)("div",{className:"main-shell",children:[(0,i.jsxs)("header",{className:"topbar",children:[(0,i.jsxs)("div",{children:["tether ",(0,i.jsx)(m.A,{size:13}),(0,i.jsx)("b",{children:b[s]})]}),(0,i.jsxs)("span",{className:"local-pill",children:[(0,i.jsx)("i",{})," Local report"]})]}),(0,i.jsxs)("main",{id:"main",children:[(0,i.jsxs)("div",{className:"page-heading",children:[(0,i.jsxs)("div",{children:[(0,i.jsx)("h1",{children:b[s]}),(0,i.jsx)("p",{children:"overview"===s?"Changes since your baseline scan.":"drift"===s?"Review changes by category and severity.":"contract"===s?"Saved colors, typography, spacing, and other styles.":"Screenshots and layout issues at each screen size."})]}),(0,i.jsxs)("button",{className:"button",onClick:_,disabled:!e,children:[D?(0,i.jsx)(p.A,{size:15}):(0,i.jsx)(v.A,{size:15}),D?"Copied to clipboard":"Copy agent brief"]})]}),V&&(0,i.jsxs)("p",{role:"status",className:"notice",children:["Clipboard unavailable."," ",(0,i.jsx)("a",{href:"data:text/markdown;charset=utf-8,"+encodeURIComponent(e?.agentMarkdown??""),download:"tether-agent.md",children:"Download the agent brief"}),"."]}),l&&(0,i.jsxs)("div",{role:"alert",className:"empty",children:[(0,i.jsx)(u.A,{}),(0,i.jsx)("h2",{children:"No scan yet"}),(0,i.jsx)("p",{children:l}),(0,i.jsx)("code",{children:"tether init && tether check"})]}),!l&&!e&&(0,i.jsx)("div",{className:"empty",role:"status",children:"Loading scan…"}),e&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("div",{className:"scan-strip",children:[(0,i.jsxs)("span",{className:"scan-state",children:[(0,i.jsx)(g.A,{size:15})," Scan complete"]}),(0,i.jsx)("code",{children:e.scan.url}),(0,i.jsx)("span",{className:"scan-time",children:A(e.scan.createdAt)}),(0,i.jsxs)("span",{className:"snapshot-label",children:[e.scan.snapshots.length," snapshots"]})]}),e.scan.snapshots.some(s=>s.truncated)&&(0,i.jsx)("p",{className:"notice",children:"Partial coverage: an element limit was reached. Increase maxElements and scan again."}),"overview"===s&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("section",{className:"stats-grid",children:[(0,i.jsxs)("div",{className:"score-stat",children:[(0,i.jsxs)("div",{className:"stat-label",children:["Visual consistency"," ",(0,i.jsx)("span",{title:"Heuristic: 100 minus 8 per high, 4 per medium, and 2 per low deviation.",children:"ⓘ"})]}),(0,i.jsxs)("div",{className:"score-number",children:[e.score,(0,i.jsx)("span",{children:"/ 100"})]}),(0,i.jsx)("div",{className:"score-track",children:(0,i.jsx)("span",{style:{width:`${e.score}%`}})}),(0,i.jsxs)("small",{children:["Heuristic score \xb7"," ",e.issues.length?"Changes detected":"No changes detected"]})]}),(0,i.jsxs)("div",{className:"stat",children:[(0,i.jsx)("span",{className:"stat-label",children:"Deviations"}),(0,i.jsx)("strong",{children:e.issues.length.toString().padStart(2,"0")}),(0,i.jsxs)("small",{children:[(0,i.jsx)("span",{className:"warning-dot"}),e.issues.filter(s=>"high"===s.severity).length," ","high priority"]})]}),(0,i.jsxs)("div",{className:"stat",children:[(0,i.jsx)("span",{className:"stat-label",children:"Elements inspected"}),(0,i.jsx)("strong",{children:e.elementCount}),(0,i.jsx)("small",{children:"Across all snapshots"})]}),(0,i.jsxs)("div",{className:"stat",children:[(0,i.jsx)("span",{className:"stat-label",children:"Routes covered"}),(0,i.jsx)("strong",{children:new Set(e.scan.snapshots.map(s=>s.route)).size.toString().padStart(2,"0")}),(0,i.jsxs)("small",{children:[new Set(e.scan.snapshots.map(s=>s.viewport.name)).size," ","viewport sizes"]})]})]}),(0,i.jsxs)("div",{className:"overview-columns",children:[(0,i.jsxs)("section",{children:[(0,i.jsxs)("div",{className:"section-heading",children:[(0,i.jsxs)("h2",{children:["Visual drift ",(0,i.jsx)(z,{children:e.issues.length})]}),(0,i.jsxs)(c(),{href:"/drift/",children:["View all deviations ",(0,i.jsx)(N.A,{size:14})]})]}),(0,i.jsx)("p",{className:"section-description",children:"One finding from each affected category."}),(0,i.jsxs)("div",{className:"issue-list",children:[W.map(s=>(0,i.jsx)(T,{issue:s},s.id)),!e.issues.length&&(0,i.jsxs)("div",{className:"empty",children:[(0,i.jsx)(g.A,{}),(0,i.jsx)("h3",{children:"No drift detected"}),(0,i.jsx)("p",{children:"The scan matches your visual contract."})]})]})]}),(0,i.jsxs)("aside",{className:"overview-aside",children:[(0,i.jsxs)("div",{className:"contract-summary",children:[(0,i.jsx)("div",{className:"small-icon",children:(0,i.jsx)(o.A,{size:22})}),(0,i.jsx)("h3",{children:"Baseline styles"}),(0,i.jsx)("p",{children:"Styles saved from your baseline scan."}),(0,i.jsx)("div",{className:"palette-strip",children:e.contract.colors.slice(0,7).map(s=>(0,i.jsx)("span",{style:{background:s.value},title:s.value},s.value))}),(0,i.jsxs)("div",{className:"summary-pairs",children:[(0,i.jsx)("span",{children:"Color palette"}),(0,i.jsxs)("b",{children:[e.contract.colors.length," colors"]}),(0,i.jsx)("span",{children:"Type scale"}),(0,i.jsxs)("b",{children:[e.contract.fontSizes.length," sizes"]}),(0,i.jsx)("span",{children:"Spacing scale"}),(0,i.jsxs)("b",{children:[e.contract.spacing.length," values"]})]}),(0,i.jsxs)(c(),{className:"text-link",href:"/contract/",children:["View contract ",(0,i.jsx)(r.A,{size:15})]})]}),(0,i.jsxs)("div",{className:"viewport-summary",children:[(0,i.jsxs)("div",{className:"section-heading",children:[(0,i.jsx)("h3",{children:"Responsive checks"}),(0,i.jsx)(h.A,{size:16})]}),Array.from(new Map(e.scan.snapshots.map(s=>[s.viewport.name,s.viewport])).values()).map(s=>{let a=e.issues.filter(e=>"layout"===e.category&&e.viewports.includes(s.name)).length;return(0,i.jsxs)("div",{className:"viewport-line",children:[(0,i.jsxs)("span",{children:[s.name," ",(0,i.jsxs)("small",{children:[s.width,"px"]})]}),a?(0,i.jsxs)("span",{className:"layout-warning",children:[a," layout issues"]}):(0,i.jsx)(p.A,{size:15,className:"green"})]},s.name)}),(0,i.jsxs)(c(),{href:"/viewports/",className:"text-link",children:["Inspect screenshots ",(0,i.jsx)(r.A,{size:15})]})]}),(0,i.jsxs)("div",{className:"baseline-note",children:[(0,i.jsx)(j.A,{size:15}),(0,i.jsxs)("span",{children:["Baseline created ",A(e.baselineAt),(0,i.jsx)("br",{}),"Stored locally in ",(0,i.jsx)("code",{children:".tether/"})]})]})]})]})]}),"drift"===s&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("div",{className:"filter-toolbar",children:[(0,i.jsx)("div",{className:"filters","aria-label":"Filter by category",children:S.map(s=>(0,i.jsx)("button",{onClick:()=>L(s),"aria-pressed":E===s,className:E===s?"selected":"",children:s},s))}),(0,i.jsxs)("label",{className:"severity-select",children:[(0,i.jsx)("span",{className:"sr-only",children:"Severity"}),(0,i.jsxs)("select",{value:H,onChange:s=>$(s.target.value),children:[(0,i.jsx)("option",{value:"all",children:"All severities"}),(0,i.jsx)("option",{value:"high",children:"High severity"}),(0,i.jsx)("option",{value:"medium",children:"Medium severity"}),(0,i.jsx)("option",{value:"low",children:"Low severity"})]})]})]}),(0,i.jsxs)("div",{className:"results-line",children:[q.length," ",1===q.length?"deviation":"deviations",(0,i.jsx)("span",{children:"Sorted by severity"})]}),(0,i.jsx)("div",{className:"drift-grid",children:q.map(s=>(0,i.jsx)(T,{issue:s},s.id))}),!q.length&&(0,i.jsxs)("div",{className:"empty",children:[(0,i.jsx)(g.A,{}),(0,i.jsx)("h2",{children:"No matching deviations"}),(0,i.jsx)("p",{children:"No deviations match these filters."})]})]}),"contract"===s&&(0,i.jsx)(F,{report:e}),"viewports"===s&&(0,i.jsx)(i.Fragment,{children:(0,i.jsx)("div",{className:"viewport-grid",children:e.scan.snapshots.map(s=>{let a=e.issues.filter(e=>e.route===s.route&&e.viewports.includes(s.viewport.name)),n=a.filter(s=>"layout"===s.category);return(0,i.jsxs)("article",{className:"viewport-card",children:[(0,i.jsxs)("div",{className:"viewport-card-heading",children:[s.viewport.width<500?(0,i.jsx)(w.A,{size:18}):(0,i.jsx)(h.A,{size:18}),(0,i.jsx)("h3",{children:s.viewport.name}),(0,i.jsxs)("span",{children:[s.viewport.width," \xd7 ",s.viewport.height]})]}),(0,i.jsx)("button",{className:"screenshot-button",onClick:()=>P("/"+s.screenshot),"aria-label":`Enlarge ${s.viewport.name} screenshot for ${s.route}`,children:(0,i.jsx)("img",{src:"/"+s.screenshot,alt:`${s.route} at ${s.viewport.width} pixels`})}),(0,i.jsxs)("div",{className:"viewport-caption",children:[(0,i.jsx)("code",{children:s.route}),(0,i.jsxs)("span",{children:[a.length," deviations"]})]}),(0,i.jsxs)("div",{className:n.length?"viewport-status warning":"viewport-status",children:[n.length?(0,i.jsx)(u.A,{size:14}):(0,i.jsx)(g.A,{size:14}),n.length?n.map(s=>s.title).join(" \xb7 "):"Content fits the viewport"]}),(0,i.jsxs)("a",{href:"/"+s.screenshot,download:!0,className:"download-shot",children:[(0,i.jsx)(y.A,{size:13}),"Download capture"]})]},`${s.route}-${s.viewport.name}`)})})})]})]})]}),I&&(0,i.jsxs)("div",{className:"preview",role:"dialog","aria-modal":"true","aria-label":"Screenshot preview",onClick:()=>P(null),children:[(0,i.jsx)("button",{autoFocus:!0,onClick:()=>P(null),"aria-label":"Close preview",children:(0,i.jsx)(f.A,{size:22})}),(0,i.jsx)("img",{src:I,alt:"Full viewport capture",onClick:s=>s.stopPropagation()})]})]})}function F({report:s}){let e=s.contract,a=s=>[...s].sort((s,e)=>parseFloat(s.value)-parseFloat(e.value));return(0,i.jsxs)("div",{className:"contract-content",children:[(0,i.jsxs)("div",{className:"contract-banner",children:[(0,i.jsx)(o.A,{size:20}),(0,i.jsxs)("div",{children:[(0,i.jsx)("b",{children:"Saved tokens"}),(0,i.jsxs)("span",{children:["Recurring values \xb7 target of ",e.minOccurrences,"+ distinct elements per token"]})]}),(0,i.jsxs)("span",{className:"contract-date",children:["Baseline \xb7 ",A(s.baselineAt)]})]}),(0,i.jsxs)("section",{className:"token-section",children:[(0,i.jsxs)("div",{className:"section-heading",children:[(0,i.jsxs)("h2",{children:["01 ",(0,i.jsx)("span",{children:"Color palette"})]}),(0,i.jsxs)(z,{children:[e.colors.length," tokens"]})]}),(0,i.jsxs)("div",{className:"color-grid",children:[e.colors.map(s=>(0,i.jsxs)("div",{className:"color-token",children:[(0,i.jsx)("div",{className:"swatch",style:{background:s.value}}),(0,i.jsxs)("div",{children:[(0,i.jsx)("code",{children:s.value}),(0,i.jsxs)("small",{children:[s.count," elements"]})]})]},s.value)),!e.colors.length&&(0,i.jsx)(E,{})]})]}),(0,i.jsxs)("div",{className:"contract-two-columns",children:[(0,i.jsxs)("section",{className:"token-section",children:[(0,i.jsxs)("div",{className:"section-heading",children:[(0,i.jsxs)("h2",{children:["02 ",(0,i.jsx)("span",{children:"Typography"})]}),(0,i.jsxs)(z,{children:[e.fontSizes.length," sizes"]})]}),(0,i.jsxs)("div",{className:"type-info",children:[(0,i.jsx)("span",{children:e.fontFamilies.map(s=>s.value).join(" \xb7 ")}),(0,i.jsx)("code",{children:e.fontWeights.map(s=>s.value).join(" / ")})]}),(0,i.jsxs)("div",{className:"type-scale",children:[a(e.fontSizes).reverse().map(s=>(0,i.jsxs)("div",{children:[(0,i.jsx)("code",{children:s.value}),(0,i.jsx)("span",{style:{fontSize:s.value},children:"The quick brown fox"}),(0,i.jsxs)("small",{children:["\xd7",s.count]})]},s.value)),!e.fontSizes.length&&(0,i.jsx)(E,{})]}),(0,i.jsxs)("p",{className:"token-footnote",children:["Line heights:"," ",e.lineHeights.map(s=>s.value).join(" \xb7 ")||"Browser default"]})]}),(0,i.jsxs)("section",{className:"token-section",children:[(0,i.jsxs)("div",{className:"section-heading",children:[(0,i.jsxs)("h2",{children:["03 ",(0,i.jsx)("span",{children:"Spacing"})]}),(0,i.jsxs)(z,{children:[e.spacing.length," steps"]})]}),(0,i.jsx)("p",{className:"token-caption",children:"Margins, padding, and gaps."}),(0,i.jsxs)("div",{className:"spacing-scale",children:[a(e.spacing).map(s=>(0,i.jsxs)("div",{children:[(0,i.jsx)("code",{children:s.value}),(0,i.jsx)("div",{className:"spacing-track",children:(0,i.jsx)("span",{style:{width:`${Math.min(4*Math.abs(parseFloat(s.value)),260)}px`}})}),(0,i.jsxs)("small",{children:["\xd7",s.count]})]},s.value)),!e.spacing.length&&(0,i.jsx)(E,{})]})]})]}),(0,i.jsxs)("div",{className:"contract-two-columns",children:[(0,i.jsxs)("section",{className:"token-section",children:[(0,i.jsxs)("div",{className:"section-heading",children:[(0,i.jsxs)("h2",{children:["04 ",(0,i.jsx)("span",{children:"Corner radii"})]}),(0,i.jsxs)(z,{children:[e.radii.length," tokens"]})]}),(0,i.jsxs)("div",{className:"radius-grid",children:[a(e.radii).map(s=>(0,i.jsxs)("div",{children:[(0,i.jsx)("div",{className:"radius-example",style:{borderRadius:s.value}}),(0,i.jsx)("code",{children:s.value}),(0,i.jsxs)("small",{children:[s.count," elements"]})]},s.value)),!e.radii.length&&(0,i.jsx)(E,{})]})]}),(0,i.jsxs)("section",{className:"token-section",children:[(0,i.jsx)("div",{className:"section-heading",children:(0,i.jsxs)("h2",{children:["05 ",(0,i.jsx)("span",{children:"Shadows & borders"})]})}),(0,i.jsxs)("div",{className:"shadow-grid",children:[e.shadows.map(s=>(0,i.jsxs)("div",{children:[(0,i.jsx)("div",{className:"shadow-example",style:{boxShadow:s.value},children:"Aa"}),(0,i.jsx)("code",{children:s.value})]},s.value)),!e.shadows.length&&(0,i.jsx)(E,{})]}),(0,i.jsx)("div",{className:"border-list",children:e.borders.map(s=>(0,i.jsxs)("div",{children:[(0,i.jsx)("span",{style:{borderTop:s.value}}),(0,i.jsx)("code",{children:s.value}),(0,i.jsxs)("small",{children:["\xd7",s.count]})]},s.value))})]})]}),(0,i.jsxs)("section",{className:"token-section control-section",children:[(0,i.jsx)("div",{className:"section-heading",children:(0,i.jsxs)("h2",{children:["06 ",(0,i.jsx)("span",{children:"Control heights"})]})}),(0,i.jsxs)("div",{children:[a(e.elementHeights).map(s=>(0,i.jsxs)("span",{className:"control-token",children:[(0,i.jsx)("code",{children:s.value}),(0,i.jsxs)("small",{children:[s.count," controls"]})]},s.value)),!e.elementHeights.length&&(0,i.jsx)(E,{})]})]})]})}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[177],{894:()=>{},6417:(e,s,_)=>{Promise.resolve().then(_.t.bind(_,894,23))}},e=>{e.O(0,[611,347,158,358],()=>e(e.s=6417)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[358],{6499:()=>{},8170:(e,s,n)=>{Promise.resolve().then(n.t.bind(n,7567,23)),Promise.resolve().then(n.t.bind(n,1076,23)),Promise.resolve().then(n.t.bind(n,1580,23)),Promise.resolve().then(n.t.bind(n,7245,23)),Promise.resolve().then(n.t.bind(n,1133,23)),Promise.resolve().then(n.t.bind(n,4297,23)),Promise.resolve().then(n.t.bind(n,1872,23)),Promise.resolve().then(n.bind(n,2569))}},e=>{var s=s=>e(e.s=s);e.O(0,[347,158],()=>(s(2521),s(8170))),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[337],{6935:(e,s,_)=>{Promise.resolve().then(_.t.bind(_,7567,23))}},e=>{e.O(0,[347,158,358],()=>e(e.s=6935)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! tailwindcss v4.3.3 | 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)))){*,::backdrop,:after,:before{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--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{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;--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)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.sticky{position:sticky}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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))}}:root{--white:#fff;--muted:#7d7d7d;--line:#e4e4e4;--green:#606060;--sage:#efefef;--amber:#6c6c6c;--rose:#656565}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;line-height:1.55}a,button,input,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}a,button{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:4px}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}h1,h2,h3,p{margin:0}h2{letter-spacing:-.3px;font-size:16px}h2,h3{font-weight:550}h3{font-size:14px}svg{flex-shrink:0}small{font-size:11px}button{border:0}.muted{color:var(--muted)}.green{color:var(--green)}.sidebar{border-right:1px solid var(--line);background:#f0f0f0;flex-direction:column;width:218px;padding:29px 16px 0;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:9px;padding:0 12px;font-size:24px;font-weight:600;display:flex}.version{letter-spacing:0;color:var(--muted);border:1px solid #d8d8d8;border-radius:4px;margin-left:3px;padding:1px 5px;font-size:10px;font-weight:400}.workspace{background:#f7f7f7;border:1px solid #e0e0e0;border-radius:7px;align-items:center;gap:9px;margin:32px 0 27px;padding:11px 10px;display:flex}.workspace-icon{color:var(--green);background:#e9e9e9;border:1px solid #dedede;border-radius:5px;padding:7px}.workspace strong{font-size:11px;font-weight:550;display:block}.workspace small{color:var(--muted);font-size:10px}.connection{background:#7d7d7d;border-radius:50%;width:5px;height:5px;margin-left:auto}.nav-label{letter-spacing:1.25px;color:#8c8c8c;margin-bottom:10px;padding:0 12px;font-size:9px}nav{gap:4px;display:grid}nav a{color:#6d6d6d;border-radius:6px;align-items:center;gap:10px;padding:10px 12px;font-size:12px;display:flex}nav a.active{color:#3d3d3d;background:#e4e4e4;font-weight:550}nav .count{background:#f8f8f8;margin-left:auto}.sidebar-bottom{margin-top:auto}.local-note{color:#717171;gap:9px;padding:24px 10px;font-size:11px;line-height:1.7;display:flex}.local-note small{color:#8e8e8e;font-size:10px}.sidebar-footer{color:#949494;border-top:1px solid #e1e1e1;justify-content:space-between;align-items:center;margin:0 -16px;padding:16px 23px;font-size:9px;display:flex}.main-shell{margin-left:218px}.topbar{border-bottom:1px solid var(--line);height:68px;color:var(--muted);background:#fbfbfb;justify-content:space-between;padding:0 40px;font-size:11px}.topbar,.topbar>div{align-items:center;display:flex}.topbar>div{gap:14px}.topbar b{color:var(--ink);font-weight:500}.local-pill{border:1px solid var(--line);color:#747474;border-radius:20px;align-items:center;gap:6px;padding:4px 9px;font-size:10px;display:flex}.local-pill i{background:#8c8c8c;border-radius:50%;width:5px;height:5px}main{max-width:1600px;margin:auto;padding:34px 40px 0}.page-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px;display:flex}.eyebrow{letter-spacing:1.45px;color:#949494;margin-bottom:9px;font-size:9px}h1{letter-spacing:-1.2px;font-size:32px;font-weight:550;line-height:1.15}.page-heading p{color:var(--muted);margin-top:9px;font-size:12px}.button{background:var(--white);white-space:nowrap;border:1px solid #dbdbdb;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:9px 12px;font-size:11px;display:flex;box-shadow:0 1px 2px #28282805}.button:hover{background:#f1f1f1}.scan-strip{border:1px solid var(--line);color:var(--muted);background:#f4f4f4;border-radius:6px;gap:18px;padding:10px 13px;font-size:10px}.scan-state,.scan-strip{align-items:center;display:flex}.scan-state{color:#707070;white-space:nowrap;gap:7px}.scan-strip code{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.scan-time{white-space:nowrap;margin-left:auto}.snapshot-label{white-space:nowrap;border-left:1px solid #dedede;padding-left:16px}.stats-grid{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:1.25fr 1fr 1.15fr 1fr;margin-top:22px;display:grid;overflow:hidden}.stats-grid>div{border-right:1px solid var(--line);padding:21px 25px}.stats-grid>div:last-child{border-right:0}.stat-label{color:#757575;align-items:center;gap:8px;font-size:11px;display:flex}.stat-label>span{color:#a7a7a7;font-size:11px}.score-number{letter-spacing:-1.5px;font-size:40px;font-weight:500;line-height:1.4}.score-number>span{color:#9b9b9b;letter-spacing:0;margin-left:7px;font-size:13px}.score-track{background:#ebebeb;border-radius:10px;margin:3px 0 10px}.score-track span{background:#878787;height:100%;display:block}.stats-grid small{color:#909090;font-size:10px}.stat>strong{letter-spacing:-1.5px;margin:3px 0 11px;font-size:40px;font-weight:500;line-height:1.4;display:block}.stat small{align-items:center;gap:5px;display:flex}.warning-dot{background:#9c9c9c;border-radius:50%;width:5px;height:5px}.overview-columns{grid-template-columns:minmax(0,1fr) 290px;gap:25px;margin-top:29px;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading h2{align-items:center;gap:9px;display:flex}.section-heading>a,.section-heading>span{color:var(--muted);align-items:center;gap:4px;font-size:10px;display:flex}.count{color:#767676;white-space:nowrap;letter-spacing:0;background:#efefef;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:400}.section-description{color:var(--muted);margin-top:4px;margin-bottom:17px;font-size:11px}.issue-list{gap:12px;display:grid}.issue-card{border:1px solid var(--line);background:#fff;border-radius:7px;min-width:0;padding:15px 17px;box-shadow:0 2px 3px #31313102}.issue-heading{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.category{color:#959595;text-transform:uppercase;letter-spacing:1px;font-size:9px}.severity{text-transform:capitalize;border-radius:4px;align-items:center;gap:5px;padding:1px 6px;font-size:9px;display:flex}.severity i{background:currentColor;border-radius:100%;width:4px;height:4px}.issue-card h3{font-size:13px}.comparison{grid-template-columns:minmax(90px,1fr) 16px minmax(0,1.7fr);align-items:center;gap:12px;margin:11px 0 12px;display:grid}.micro{letter-spacing:.8px;color:#a2a2a2;margin-bottom:4px;font-size:8px;display:block}.current{color:#686868;align-items:center;gap:6px;font-size:11px;display:flex}.current,.expected{overflow-wrap:anywhere}.expected{color:#797979;font:10px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace}.tiny-swatch{border-radius:3px;flex-shrink:0;width:11px;height:11px;display:inline-block}.issue-meta{border-top:1px solid #f0f0f0;justify-content:space-between;align-items:center;gap:8px;padding-top:10px;display:flex}.issue-meta code{color:#747474;overflow-wrap:anywhere;font-size:9px}.issue-meta>span{color:#959595;text-align:right;font-size:9px}.dot{padding:0 4px}details{color:var(--muted);margin-top:7px;font-size:10px}summary{cursor:pointer;color:#959595;font-size:9px}details code{overflow-wrap:anywhere;margin-top:6px;font-size:10px;display:block}.overview-aside{padding-top:2px}.contract-summary{background:#f0f0f0;border:1px solid #e2e2e2;border-radius:7px;padding:22px}.small-icon{color:#818181;margin-bottom:15px}.contract-summary h3{letter-spacing:-.25px;font-size:14px}.contract-summary>p{color:#858585;margin-top:7px;font-size:11px;line-height:1.8}.palette-strip{border-radius:4px;gap:4px;height:28px;margin:20px 0;display:flex;overflow:hidden}.palette-strip span{border:1px solid #00000007;border-radius:3px;flex:1}.summary-pairs{color:#8c8c8c;grid-template-columns:1fr auto;row-gap:8px;font-size:10px;display:grid}.summary-pairs b{color:#6a6a6a;font-weight:450}.text-link{color:#6a6a6a;border-top:1px solid #e2e2e2;justify-content:space-between;align-items:center;margin-top:19px;padding-top:14px;font-size:10px;display:flex}.viewport-summary{border:1px solid var(--line);background:#fff;border-radius:7px;margin-top:17px;padding:18px 20px}.viewport-summary h3{font-size:12px}.viewport-summary .section-heading svg{color:#919191}.viewport-line{text-transform:capitalize;justify-content:space-between;align-items:center;padding-top:15px;font-size:11px;display:flex}.viewport-line small{color:#9a9a9a;padding-left:5px;font-size:9px}.layout-warning{color:#7b7b7b;text-transform:none;font-size:9px}.baseline-note{color:#9d9d9d;gap:7px;margin-top:19px;font-size:9px;line-height:1.9;display:flex}.baseline-note code{font-size:9px}.report-footer{border-top:1px solid var(--line);color:#9e9e9e;justify-content:space-between;align-items:center;margin-top:35px;padding:20px 0;font-size:9px;display:flex}.report-footer>span:first-child{align-items:center;gap:6px;display:flex}.filter-toolbar{justify-content:space-between;align-items:center;gap:12px;margin:24px 0 18px}.filter-toolbar,.filters{flex-wrap:wrap;display:flex}.filters{gap:3px}.filters button{color:var(--muted);background:0 0;border-radius:5px;padding:6px 10px;font-size:11px}.filters button.selected{color:#585858;background:#e9e9e9}.severity-select select{border:1px solid var(--line);color:#707070;background:#fff;border-radius:5px;padding:6px 9px;font-size:11px}.results-line{color:var(--muted);justify-content:space-between;margin-bottom:12px;font-size:11px;display:flex}.results-line>span{font-size:10px}.drift-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.drift-grid .issue-card{padding:20px}.empty{text-align:center;border:1px dashed var(--line);color:var(--muted);border-radius:8px;margin-top:20px;padding:50px 20px}.empty>svg{margin:0 auto 12px}.empty h2,.empty h3{color:var(--ink);margin:10px 0}.empty code{margin-top:15px;display:inline-block}.notice{background:#eee;border-radius:5px;margin:15px 0;padding:12px;font-size:12px}.notice a{text-decoration:underline}.contract-banner{color:#848484;border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:20px 0;display:flex}.contract-banner b{color:#5e5e5e;font-size:12px;font-weight:500;display:block}.contract-banner span{color:#9c9c9c;font-size:10px;display:block}.contract-date{margin-left:auto}.token-section{border-bottom:1px solid var(--line);min-width:0;padding:24px 0}.token-section h2{color:#a9a9a9;gap:12px;font-size:11px}.token-section h2>span{color:var(--ink);font-size:15px}.color-grid{grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:12px;margin-top:20px;display:grid}.swatch{border:1px solid #00000009;border-radius:5px;height:65px}.color-token>div:last-child{padding:9px 1px 0}.color-token code{font-size:10px;display:block}.color-token small{color:#a3a3a3;margin-top:3px;font-size:9px;display:block}.contract-two-columns{grid-template-columns:1fr 1fr;gap:35px;display:grid}.type-info{color:#969696;justify-content:space-between;align-items:flex-start;gap:12px;margin:17px 0;font-size:10px;display:flex}.type-info>span{overflow-wrap:anywhere;max-width:290px}.type-info code{white-space:nowrap;font-size:9px}.type-scale>div{align-items:center;gap:15px;padding:6px 0;display:flex}.type-scale code{color:#929292;width:35px;font-size:10px}.type-scale>div>span{letter-spacing:-.5px;white-space:nowrap;line-height:1.5}.type-scale small{color:#a6a6a6;margin-left:auto;font-size:9px}.token-footnote{color:#a6a6a6;margin-top:14px;font-size:9px}.token-caption{color:#979797;margin:16px 0;font-size:11px}.spacing-scale{gap:10px;display:grid}.spacing-scale>div{align-items:center;gap:12px;display:flex}.spacing-scale code{color:#858585;width:35px;font-size:10px}.spacing-track{flex:1}.spacing-track>span{background:#e0e0e0;border-left:2px solid #a4a4a4;border-radius:0 2px 2px 0;max-width:100%;height:13px;display:block}.spacing-scale small{color:#a6a6a6;font-size:9px}.radius-grid{flex-wrap:wrap;gap:22px;padding-top:24px;display:flex}.radius-example{background:#f0f0f0;border:1px solid #d2d2d2;width:60px;height:55px;margin-bottom:9px}.radius-grid code,.radius-grid small{font-size:10px;display:block}.radius-grid small{color:#a6a6a6;margin-top:3px;font-size:9px}.shadow-grid{flex-wrap:wrap;gap:15px;margin-top:24px;display:flex}.shadow-grid>div{max-width:190px}.shadow-example{color:#828282;background:#fff;border:1px solid #f0f0f0;border-radius:8px;place-items:center;width:100px;height:55px;margin:0 0 12px;font-size:20px;display:grid}.shadow-grid code{color:#a1a1a1;overflow-wrap:anywhere;font-size:9px;display:block}.border-list{gap:10px;margin-top:20px;display:grid}.border-list>div{align-items:center;gap:10px;display:flex}.border-list>div>span{width:25px}.border-list code{color:#999;font-size:9px}.border-list small{color:#a6a6a6;margin-left:auto;font-size:9px}.control-section>div:last-child{flex-wrap:wrap;gap:12px;margin-top:15px;display:flex}.control-token{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;display:flex}.control-token small{color:#979797;font-size:10px}.viewport-intro{margin:26px 0 18px}.viewport-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.viewport-card{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.viewport-card-heading{color:#888;align-items:center;gap:9px;padding:16px;display:flex}.viewport-card-heading h3{text-transform:capitalize;color:var(--ink)}.viewport-card-heading>span{color:#999;margin-left:auto;font-size:10px}.screenshot-button{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#eee;justify-content:center;width:100%;height:300px;padding:16px;display:flex;overflow:hidden}.screenshot-button img{object-fit:contain;object-position:top;max-width:100%;height:100%;box-shadow:0 3px 12px #2e2e2e12}.viewport-caption{color:#949494;justify-content:space-between;align-items:center;padding:15px 17px 7px;font-size:11px;display:flex}.viewport-status{color:#909090;align-items:center;gap:7px;padding:0 17px 13px;font-size:10px;display:flex}.viewport-status.warning{color:#7b7b7b}.download-shot{color:#8e8e8e;gap:5px;padding:0 17px 16px;font-size:10px}.download-shot,.preview{align-items:center;display:flex}.preview{z-index:50;background:#262626dd;justify-content:center;padding:45px;position:fixed;inset:0}.preview img{object-fit:contain;max-width:100%;max-height:100%}.preview>button{background:#fff;border-radius:100%;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:12px;right:14px}.skip{z-index:100;background:#fff;padding:12px;position:fixed;top:-100px}.skip:focus{top:10px;left:10px}@media (min-width:1500px){main{padding-left:55px;padding-right:55px}.overview-columns{grid-template-columns:minmax(0,1fr) 330px}}@media (max-width:1150px){.sidebar{width:190px}.main-shell{margin-left:190px}main{padding:28px}.topbar{padding:0 28px}.overview-columns{grid-template-columns:minmax(0,1fr) 245px;gap:18px}.contract-summary,.stats-grid>div{padding:18px}.type-scale>div>span{white-space:normal}.comparison{grid-template-columns:minmax(70px,1fr) 13px minmax(0,1.5fr)}}@media (max-width:900px){.sidebar{width:175px;padding-left:12px;padding-right:12px}.brand{padding:0 4px;font-size:21px}.workspace{padding:8px}.workspace-icon{display:none}nav a{padding:10px 8px;font-size:11px}.main-shell{margin-left:175px}.overview-columns{grid-template-columns:1fr}.overview-aside{grid-template-columns:1fr 1fr;gap:16px;display:grid}.viewport-summary{margin-top:0}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid>div:nth-child(2){border-right:0}.stats-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.scan-time{display:none}.snapshot-label{margin-left:auto}.contract-two-columns,.drift-grid{grid-template-columns:1fr}.contract-two-columns{gap:0}.contract-date{display:none}.viewport-grid{grid-template-columns:1fr}.filter-toolbar{align-items:flex-start}.type-info>span{max-width:none}.contract-two-columns .type-scale>div>span{white-space:nowrap}}@media (max-width:600px){.sidebar{width:100%;height:auto;padding:16px;position:relative}.brand{font-size:22px}.nav-label,.sidebar-bottom,.workspace{display:none}nav{justify-content:space-between;gap:3px;margin-top:16px;display:flex}nav a{gap:5px;padding:8px 7px;font-size:10px}nav svg{width:13px}.main-shell{margin:0}.topbar{height:45px;padding:0 20px}main{padding:24px 18px 0}.page-heading{flex-direction:column;align-items:flex-start;gap:18px}.eyebrow{font-size:8px}.scan-strip{flex-wrap:wrap;gap:9px}.scan-strip code{max-width:180px}.snapshot-label{display:none}.overview-aside{display:block}.viewport-summary{margin-top:16px}.stats-grid>div{padding:17px}.score-number,.stat>strong{font-size:34px}.stat-label{font-size:10px}.comparison{gap:8px}.issue-meta{flex-direction:column;align-items:flex-start}.issue-meta>span{text-align:left}.report-footer>span:last-child{display:none}.contract-banner{align-items:flex-start}.type-scale>div>span{font-size:min(28px,1em)}.radius-grid{gap:17px}.color-grid{grid-template-columns:repeat(3,1fr)}.preview{padding:36px 12px}.viewport-intro{flex-direction:column;align-items:flex-start}}@media (min-width:1100px){.contract-banner{padding:14px 0}.token-section{padding:18px 0}.color-grid{margin-top:14px}.swatch{height:52px}.type-info{margin:12px 0}.spacing-scale{gap:6px}.radius-grid{padding-top:15px}.shadow-grid{margin-top:15px}}:root{--paper:#f5f5f7;--ink:#1d1d1f;--muted:#707075;--line:#1c1c2013;--green:#535359;--sage:#eeeef0}body{letter-spacing:-.1px}.sidebar{-webkit-backdrop-filter:blur(28px)saturate(115%);background:#ffffff94;border:1px solid #ffffffe6;border-radius:18px;width:198px;inset:12px auto 12px 12px;overflow:hidden;box-shadow:0 8px 32px #00000006,inset 0 1px #fff}.brand{letter-spacing:-1px;padding:0 7px;font-size:23px}.brand-symbol{object-fit:contain;flex-shrink:0;width:34px;height:34px}.workspace{background:#fff8;border-color:#e4e4e8;border-radius:10px}.workspace-icon{color:#62626a;background:#f4f4f6;border-color:#e5e5e8;border-radius:7px}.connection,.local-pill i{background:#85858b}nav a{border-radius:9px}nav a.active{color:#252528;background:#ffffffcf;box-shadow:0 1px 4px #00000009,inset 0 0 0 1px #fff}nav a:hover{background:#ffffffa8}.sidebar-footer{border-color:#e7e7eb}.topbar{-webkit-backdrop-filter:blur(24px)}.local-pill,.topbar{background:#ffffff70}.local-pill{color:#77777d}h1{letter-spacing:-1.35px;font-size:34px;font-weight:600}.page-heading p{color:#77777d;font-size:13px}.eyebrow{color:#898990;letter-spacing:1.6px}.button{color:#3e3e43;background:#ffffffbe;border-color:#fff;border-radius:9px;transition:background .14s,box-shadow .14s;box-shadow:0 0 0 1px #00000009,0 3px 8px #00000006}.button:hover{background:#fff;box-shadow:0 0 0 1px #00000012,0 4px 12px #0000000b}.scan-strip{background:#ffffff65;border-color:#e6e6e9;border-radius:10px}.scan-state{color:#66666d}.stats-grid{background:#ffffffbf;border-color:#fff;border-radius:16px;box-shadow:0 0 0 1px #00000007,0 4px 20px #00000004}.score-number,.stat>strong{letter-spacing:-1.8px;font-weight:500}.score-track{background:#e8e8ec;height:3px}.score-track span{background:#71717a;border-radius:5px}.contract-summary,.issue-card,.viewport-card,.viewport-summary{-webkit-backdrop-filter:blur(16px);background:#ffffffc9;border-color:#fff;border-radius:14px;box-shadow:0 0 0 1px #00000008,0 4px 16px #00000004,inset 0 1px #fff}.issue-card{padding:17px 19px}.issue-card h3{letter-spacing:-.25px;font-size:14px}.issue-meta{border-color:#ededf0}.current{color:#3e3e43}.expected{color:#707078}.category,.micro{color:#85858d}.severity{border:1px solid #00000004}.severity.high{color:#925a53;background:#f6eeec}.severity.medium{color:#827052;background:#f4f1eb}.severity.low{color:#76767e;background:#f0f0f3}.contract-summary{background:#ffffff85}.baseline-note,.contract-summary>p,.summary-pairs{color:#85858d}.local-note,.summary-pairs b,.text-link{color:#66666e}.palette-strip{gap:5px}.palette-strip span{border-radius:5px}.small-icon{color:#72727c}.count{color:#777780;background:#eeeef2;border-radius:5px}.filters{background:#e8e8ed66;border-radius:10px;padding:4px}.filters button.selected{color:#303035;background:#ffffffdc;border-radius:7px;box-shadow:0 1px 4px #00000009}.filters button:hover{background:#ffffff85}.severity-select select{background:#ffffffb0;border-radius:9px}.contract-banner{color:#75757e}.contract-banner b{color:#55555d}.token-section h2{color:#96969f}.swatch{border-radius:9px;box-shadow:inset 0 0 0 1px #00000003}.type-scale>div>span{letter-spacing:-.6px}.spacing-track>span{background:#dcdce3;border-color:#9999a4}.radius-example{background:#ffffffa8;border-color:#d9d9df;box-shadow:0 2px 8px #00000003}.control-token{background:#ffffffb0;border-radius:9px}.screenshot-button{background:#eeeef2}.screenshot-button img{border-radius:5px;box-shadow:0 5px 18px #0000000d}.preview{-webkit-backdrop-filter:blur(18px);background:#16161c8c}.preview img{border-radius:9px;box-shadow:0 20px 80px #00000040}@media (max-width:1150px) and (min-width:901px){.sidebar{width:170px}}@media (max-width:900px) and (min-width:601px){.sidebar{width:155px}.workspace{padding:8px}.brand{font-size:20px}.version{display:none}}@media (max-width:600px){.sidebar{width:calc(100% - 20px);margin:10px;padding:16px;position:relative;inset:auto}.main-shell{margin-left:0}.brand{font-size:23px}.filters{max-width:100%}.page-heading{gap:18px}}@media (prefers-reduced-transparency:reduce){.contract-summary,.issue-card,.sidebar,.stats-grid,.topbar,.viewport-card,.viewport-summary{-webkit-backdrop-filter:none;background:#fff}}@media (prefers-reduced-motion:reduce){.button{transition:none}}@media (min-width:1100px){.color-grid{grid-template-columns:repeat(auto-fit,minmax(78px,1fr))}.workspace{gap:7px;padding:10px 8px}.local-note,.workspace strong{font-size:10px}.local-note{gap:7px}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@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}
|
/package/report/out/_next/static/{NEP_BMzhg1ixudz9w2f3I → l8qlXIaCzWbRx2ZWOTp_i}/_buildManifest.js
RENAMED
|
File without changes
|
/package/report/out/_next/static/{NEP_BMzhg1ixudz9w2f3I → l8qlXIaCzWbRx2ZWOTp_i}/_ssgManifest.js
RENAMED
|
File without changes
|