test-lah 1.0.2 → 1.0.4
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/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-build-manifest.json +28 -21
- package/.next/standalone/.next/app-path-routes-manifest.json +2 -1
- package/.next/standalone/.next/build-manifest.json +2 -2
- package/.next/standalone/.next/prerender-manifest.json +21 -21
- package/.next/standalone/.next/server/app/(dashboard)/integrations/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/integrations/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/integrations/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[projectId]/page.js +6 -3
- package/.next/standalone/.next/server/app/(dashboard)/projects/[projectId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[projectId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[projectId]/summary/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/[projectId]/summary/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[projectId]/summary/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +2 -2
- package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/.next/server/app/api/e2e/route.js +131 -0
- package/.next/standalone/.next/server/app/api/e2e/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/e2e/route_client-reference-manifest.js +1 -0
- package/.next/standalone/.next/server/app/api/generate/route.js +3 -3
- package/.next/standalone/.next/server/app/api/generate/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/generate/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/llm/encrypt/route.js +1 -1
- package/.next/standalone/.next/server/app/api/llm/encrypt/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/llm/encrypt/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/llm/test/route.js +3 -3
- package/.next/standalone/.next/server/app/api/llm/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/llm/test/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/weather/route.js +1 -1
- package/.next/standalone/.next/server/app/api/weather/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/weather/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/favicon.ico/route.js +1 -1
- package/.next/standalone/.next/server/app/favicon.ico/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +2 -2
- package/.next/standalone/.next/server/app/integrations.html +1 -1
- package/.next/standalone/.next/server/app/integrations.rsc +4 -4
- package/.next/standalone/.next/server/app/login/page.js +1 -1
- package/.next/standalone/.next/server/app/login/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login.html +1 -1
- package/.next/standalone/.next/server/app/login.rsc +2 -2
- package/.next/standalone/.next/server/app/page.js +1 -1
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects.html +1 -1
- package/.next/standalone/.next/server/app/projects.rsc +4 -4
- package/.next/standalone/.next/server/app-paths-manifest.json +2 -1
- package/.next/standalone/.next/server/chunks/615.js +2 -2
- package/.next/standalone/.next/server/chunks/692.js +1 -1
- package/.next/standalone/.next/server/chunks/{984.js → 736.js} +4 -4
- package/.next/standalone/.next/server/chunks/824.js +2 -2
- package/.next/standalone/.next/server/chunks/{174.js → 845.js} +3 -3
- package/.next/standalone/.next/server/chunks/{331.js → 873.js} +3 -3
- package/.next/standalone/.next/server/chunks/917.js +1 -0
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/9OtwPzpy1ovRWzffCh95h/_buildManifest.js +1 -0
- package/.next/standalone/.next/static/chunks/246-1673b37cc8edb269.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/integrations/page-ef2f1f3c1d497f2a.js +1 -0
- package/.next/{static/chunks/app/(dashboard)/layout-897f5e42d6866a6e.js → standalone/.next/static/chunks/app/(dashboard)/layout-69e4ea7abe9faff3.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[projectId]/page-500a663fdab52791.js +1 -0
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[projectId]/summary/{page-524594daf0494836.js → page-b69fc155f1796e19.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/{page-f3e1d8b28a760b83.js → page-11a49918142004f5.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/api/e2e/route-ccff81cd0a5704f2.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/generate/route-ccff81cd0a5704f2.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/llm/encrypt/route-ccff81cd0a5704f2.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/llm/test/route-ccff81cd0a5704f2.js +1 -0
- package/.next/standalone/.next/static/chunks/app/api/weather/route-ccff81cd0a5704f2.js +1 -0
- package/.next/standalone/.next/static/css/0ecf0abc0513341e.css +3 -0
- package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +1 -0
- package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
- package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +42 -0
- package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +30 -0
- package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/LICENSE +191 -0
- package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
- package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +46 -0
- package/.next/standalone/node_modules/playwright/index.js +17 -0
- package/.next/standalone/node_modules/playwright/index.mjs +18 -0
- package/.next/standalone/node_modules/playwright/package.json +61 -0
- package/.next/standalone/node_modules/playwright-core/browsers.json +81 -0
- package/.next/standalone/node_modules/playwright-core/index.js +32 -0
- package/.next/standalone/node_modules/playwright-core/index.mjs +28 -0
- package/.next/standalone/node_modules/playwright-core/lib/coreBundle.js +69799 -0
- package/.next/standalone/node_modules/playwright-core/lib/utilsBundle.js +85418 -0
- package/.next/standalone/node_modules/playwright-core/lib/xdg-open +1066 -0
- package/.next/standalone/node_modules/playwright-core/package.json +34 -0
- package/.next/standalone/package.json +5 -2
- package/.next/static/9OtwPzpy1ovRWzffCh95h/_buildManifest.js +1 -0
- package/.next/static/chunks/246-1673b37cc8edb269.js +1 -0
- package/.next/static/chunks/app/(dashboard)/integrations/page-ef2f1f3c1d497f2a.js +1 -0
- package/.next/{standalone/.next/static/chunks/app/(dashboard)/layout-897f5e42d6866a6e.js → static/chunks/app/(dashboard)/layout-69e4ea7abe9faff3.js} +1 -1
- package/.next/static/chunks/app/(dashboard)/projects/[projectId]/page-500a663fdab52791.js +1 -0
- package/.next/static/chunks/app/(dashboard)/projects/[projectId]/summary/{page-524594daf0494836.js → page-b69fc155f1796e19.js} +1 -1
- package/.next/static/chunks/app/(dashboard)/projects/{page-f3e1d8b28a760b83.js → page-11a49918142004f5.js} +1 -1
- package/.next/static/chunks/app/api/e2e/route-ccff81cd0a5704f2.js +1 -0
- package/.next/static/chunks/app/api/generate/route-ccff81cd0a5704f2.js +1 -0
- package/.next/static/chunks/app/api/llm/encrypt/route-ccff81cd0a5704f2.js +1 -0
- package/.next/static/chunks/app/api/llm/test/route-ccff81cd0a5704f2.js +1 -0
- package/.next/static/chunks/app/api/weather/route-ccff81cd0a5704f2.js +1 -0
- package/.next/static/css/0ecf0abc0513341e.css +3 -0
- package/package.json +4 -1
- package/.next/standalone/.next/static/3YcKKljN8y2beg2wtB7D2/_buildManifest.js +0 -1
- package/.next/standalone/.next/static/chunks/882-cc9789441250ca9d.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/integrations/page-bb73e3391f40493c.js +0 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[projectId]/page-d04f72d976710ff8.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/generate/route-1bebaa46eebbcd06.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/llm/encrypt/route-1bebaa46eebbcd06.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/llm/test/route-1bebaa46eebbcd06.js +0 -1
- package/.next/standalone/.next/static/chunks/app/api/weather/route-1bebaa46eebbcd06.js +0 -1
- package/.next/standalone/.next/static/css/148903621a1952c4.css +0 -3
- package/.next/static/3YcKKljN8y2beg2wtB7D2/_buildManifest.js +0 -1
- package/.next/static/chunks/882-cc9789441250ca9d.js +0 -1
- package/.next/static/chunks/app/(dashboard)/integrations/page-bb73e3391f40493c.js +0 -1
- package/.next/static/chunks/app/(dashboard)/projects/[projectId]/page-d04f72d976710ff8.js +0 -1
- package/.next/static/chunks/app/api/generate/route-1bebaa46eebbcd06.js +0 -1
- package/.next/static/chunks/app/api/llm/encrypt/route-1bebaa46eebbcd06.js +0 -1
- package/.next/static/chunks/app/api/llm/test/route-1bebaa46eebbcd06.js +0 -1
- package/.next/static/chunks/app/api/weather/route-1bebaa46eebbcd06.js +0 -1
- package/.next/static/css/148903621a1952c4.css +0 -3
- /package/.next/standalone/.next/static/{3YcKKljN8y2beg2wtB7D2 → 9OtwPzpy1ovRWzffCh95h}/_ssgManifest.js +0 -0
- /package/.next/static/{3YcKKljN8y2beg2wtB7D2 → 9OtwPzpy1ovRWzffCh95h}/_ssgManifest.js +0 -0
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
3:I[9766,[],""]
|
|
4
4
|
4:I[8924,[],""]
|
|
5
5
|
5:I[7989,[],"ClientSegmentRoot"]
|
|
6
|
-
6:I[8609,["619","static/chunks/619-ba102abea3e3d0e4.js","
|
|
6
|
+
6:I[8609,["619","static/chunks/619-ba102abea3e3d0e4.js","246","static/chunks/246-1673b37cc8edb269.js","305","static/chunks/app/(dashboard)/layout-69e4ea7abe9faff3.js"],"default"]
|
|
7
7
|
8:I[1959,[],"ClientPageRoot"]
|
|
8
|
-
9:I[7193,["343","static/chunks/6edf0643-cff15dee501a82ef.js","909","static/chunks/909-a5da60d248a1c133.js","485","static/chunks/485-23e4a6e33ee79f14.js","619","static/chunks/619-ba102abea3e3d0e4.js","
|
|
8
|
+
9:I[7193,["343","static/chunks/6edf0643-cff15dee501a82ef.js","909","static/chunks/909-a5da60d248a1c133.js","485","static/chunks/485-23e4a6e33ee79f14.js","619","static/chunks/619-ba102abea3e3d0e4.js","246","static/chunks/246-1673b37cc8edb269.js","709","static/chunks/app/(dashboard)/projects/page-11a49918142004f5.js"],"default"]
|
|
9
9
|
c:I[4431,[],"OutletBoundary"]
|
|
10
10
|
e:I[5278,[],"AsyncMetadataOutlet"]
|
|
11
11
|
10:I[4431,[],"ViewportBoundary"]
|
|
@@ -13,8 +13,8 @@ e:I[5278,[],"AsyncMetadataOutlet"]
|
|
|
13
13
|
13:"$Sreact.suspense"
|
|
14
14
|
15:I[7150,[],""]
|
|
15
15
|
:HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
|
16
|
-
:HL["/_next/static/css/
|
|
17
|
-
0:{"P":null,"b":"
|
|
16
|
+
:HL["/_next/static/css/0ecf0abc0513341e.css","style"]
|
|
17
|
+
0:{"P":null,"b":"9OtwPzpy1ovRWzffCh95h","p":"","c":["","projects"],"i":false,"f":[[["",{"children":["(dashboard)",{"children":["projects",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/0ecf0abc0513341e.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__variable_f367f3","style":{"fontFamily":"Inter, system-ui, sans-serif"},"children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",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":["(dashboard)",["$","$1","c",{"children":[null,["$","$L5",null,{"Component":"$6","slots":{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:style","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":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@7"}]]}],{"children":["projects",["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L8",null,{"Component":"$9","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@a","$@b"]}],null,["$","$Lc",null,{"children":["$Ld",["$","$Le",null,{"promise":"$@f"}]]}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$L10",null,{"children":"$L11"}],["$","meta",null,{"name":"next-size-adjust","content":""}]],["$","$L12",null,{"children":["$","div",null,{"hidden":true,"children":["$","$13",null,{"fallback":null,"children":"$L14"}]}]}]]}],false]],"m":"$undefined","G":["$15",[]],"s":false,"S":true}
|
|
18
18
|
7:"$0:f:0:1:2:children:1:props:children:1:props:params"
|
|
19
19
|
a:{}
|
|
20
20
|
b:"$0:f:0:1:2:children:1:props:children:1:props:params"
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"/_not-found/page": "app/_not-found/page.js",
|
|
3
3
|
"/api/generate/route": "app/api/generate/route.js",
|
|
4
|
+
"/api/e2e/route": "app/api/e2e/route.js",
|
|
4
5
|
"/api/llm/encrypt/route": "app/api/llm/encrypt/route.js",
|
|
5
6
|
"/api/llm/test/route": "app/api/llm/test/route.js",
|
|
6
7
|
"/api/weather/route": "app/api/weather/route.js",
|
|
@@ -8,7 +9,7 @@
|
|
|
8
9
|
"/login/page": "app/login/page.js",
|
|
9
10
|
"/page": "app/page.js",
|
|
10
11
|
"/(dashboard)/integrations/page": "app/(dashboard)/integrations/page.js",
|
|
11
|
-
"/(dashboard)/projects/[projectId]/summary/page": "app/(dashboard)/projects/[projectId]/summary/page.js",
|
|
12
12
|
"/(dashboard)/projects/[projectId]/page": "app/(dashboard)/projects/[projectId]/page.js",
|
|
13
|
+
"/(dashboard)/projects/[projectId]/summary/page": "app/(dashboard)/projects/[projectId]/summary/page.js",
|
|
13
14
|
"/(dashboard)/projects/page": "app/(dashboard)/projects/page.js"
|
|
14
15
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
exports.id=615,exports.ids=[615],exports.modules={2453:(a,b,c)=>{Promise.resolve().then(c.bind(c,97788))},3136:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81170,23)),Promise.resolve().then(c.t.bind(c,23597,23)),Promise.resolve().then(c.t.bind(c,36893,23)),Promise.resolve().then(c.t.bind(c,89748,23)),Promise.resolve().then(c.t.bind(c,6060,23)),Promise.resolve().then(c.t.bind(c,7184,23)),Promise.resolve().then(c.t.bind(c,69576,23)),Promise.resolve().then(c.t.bind(c,73041,23)),Promise.resolve().then(c.t.bind(c,51384,23))},19188:(a,b,c)=>{"use strict";c.d(b,{D_:()=>e,IU:()=>g,T7:()=>f,_X:()=>d});let d=[{key:"code",label:"ID",visible:!0},{key:"title",label:"Test Case",visible:!0},{key:"steps",label:"Steps",visible:!0},{key:"expected",label:"Expected Result",visible:!0},{key:"status",label:"Status",visible:!0},{key:"case_type",label:"Case Type",visible:!1},{key:"notes",label:"Notes",visible:!0},{key:"links",label:"Links",visible:!1}],e=["General","Positive","Negative"],f=["#E57373","#F06292","#BA68C8","#9575CD","#7986CB","#64B5F6","#4FC3F7","#4DD0E1","#4DB6AC","#81C784","#AED581","#FFD54F","#FFB74D","#FF8A65","#A1887F","#90A4AE"];function g(a,b,c,d){return{id:a,code:b,label:c,parentId:d,children:[],shape:"rounded",notes:"",position:null}}},22048:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>B});var d=c(21124),e=c(38301),f=c(42378),g=c(93873),h=c(3991),i=c.n(h),j=c(34776),k=c(19188);let l=["https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_11.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_12.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_13.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_14.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_15.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_16.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_17.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_18.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_19.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_20.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_21.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_22.png"],m=["https://i.pinimg.com/736x/ed/74/06/ed74063ade6d66fce2ca19acbe74babc.jpg","https://i.pinimg.com/736x/8c/6d/56/8c6d563311f0917d45d1f2ce5d7c1a2d.jpg","https://i.pinimg.com/736x/86/b8/be/86b8bea1c772cf5c540e6f01e6acce59.jpg","https://i.pinimg.com/736x/78/d4/b1/78d4b1787a4fd23c2a8d21e4fbbc016f.jpg","https://i.pinimg.com/1200x/87/de/e6/87dee6d33b04f1df28bc85702ee12d4b.jpg","https://i.pinimg.com/1200x/3b/e3/95/3be395c4a94705f95e0603afb04f9d56.jpg","https://media.licdn.com/dms/image/v2/D5603AQHBu4wrzFWoTw/profile-displayphoto-crop_800_800/B56Zq.Sy6LKsAI-/0/1764129191465?e=1782345600&v=beta&t=79y6xLivwcpvwy53sy1TuVopK4FMp6O8uAu7QxlIxDo"],n=["QA Engineer","QA Lead","Developer","Designer","Manager"];function o(a,b){let c=parseInt(a.replace("#",""),16),d=Math.min(255,(c>>16)+Math.round((255-(c>>16))*b)),e=Math.min(255,(c>>8&255)+Math.round((255-(c>>8&255))*b)),f=Math.min(255,(255&c)+Math.round((255-(255&c))*b));return`#${(d<<16|e<<8|f).toString(16).padStart(6,"0")}`}function p({profile:a,initials:b,onSetName:c,onSetBannerColor:f,onSetAvatarUrl:g,onSetRole:h}){let[i,j]=(0,e.useState)(!1),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(!1),[t,u]=(0,e.useState)(a.name),[v,w]=(0,e.useState)(a.role||""),x=(0,e.useRef)(null),y=(0,e.useRef)(null),z=(0,e.useRef)(null),A=()=>{c(t.trim()),q(!1)},B=()=>{h(v.trim()),s(!1)},C=!!a.avatarUrl;return(0,d.jsxs)("div",{className:"relative",ref:x,children:[(0,d.jsx)("button",{onClick:()=>j(!i),className:"w-9 h-9 rounded-full flex items-center justify-center text-xs font-medium overflow-hidden border-2 transition-all hover:scale-105",style:{borderColor:i?"var(--accent)":"transparent",boxShadow:i?"0 0 0 2px var(--accent), 0 2px 8px rgba(0,0,0,0.1)":"0 1px 3px rgba(0,0,0,0.08)"},children:C?(0,d.jsx)("img",{src:a.avatarUrl,alt:"Avatar",className:"w-full h-full object-cover"}):(0,d.jsx)("span",{className:"w-full h-full flex items-center justify-center",style:{backgroundColor:a.bannerColor,color:"#fff"},children:b})}),i&&(0,d.jsxs)("div",{className:"absolute right-0 top-full mt-2 w-80 border z-50 overflow-hidden",style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)",borderRadius:"var(--radius-lg)",boxShadow:"var(--shadow-xl)",animation:"fadeIn 150ms ease-out"},children:[(0,d.jsxs)("div",{className:"relative px-5 pt-5 pb-4",style:{background:`linear-gradient(135deg, ${a.bannerColor} 0%, ${o(a.bannerColor,.4)} 50%, ${a.bannerColor} 100%)`},children:[(0,d.jsx)("div",{className:"absolute inset-0 opacity-10",style:{backgroundImage:"radial-gradient(circle at 20% 50%, white 1px, transparent 1px), radial-gradient(circle at 80% 20%, white 1px, transparent 1px)",backgroundSize:"30px 30px"}}),(0,d.jsxs)("div",{className:"relative flex items-end gap-4",children:[(0,d.jsxs)("div",{className:"relative group",children:[(0,d.jsx)("div",{className:"w-16 h-16 rounded-xl overflow-hidden border-3 flex-shrink-0",style:{borderColor:"rgba(255,255,255,0.3)",boxShadow:"0 4px 12px rgba(0,0,0,0.2)"},children:C?(0,d.jsx)("img",{src:a.avatarUrl,alt:"Avatar",className:"w-full h-full object-cover"}):(0,d.jsx)("div",{className:"w-full h-full flex items-center justify-center text-xl font-bold",style:{backgroundColor:a.bannerColor,color:"#fff"},children:b})}),(0,d.jsx)("div",{className:"absolute inset-0 rounded-xl flex items-center justify-center opacity-0 group-hover:opacity-100 cursor-pointer transition-opacity",style:{backgroundColor:"rgba(0,0,0,0.4)"},onClick:a=>{a.stopPropagation(),document.getElementById("avatar-gallery")?.scrollIntoView({behavior:"smooth"})},children:(0,d.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"white",children:(0,d.jsx)("path",{d:"M14 11V14H2V11H0V14C0 15.1.9 16 2 16H14C15.1 16 16 15.1 16 14V11H14ZM7 9L4.5 6.5L3 8L8 13L13 8L11.5 6.5L9 9V0H7V9Z"})})})]}),(0,d.jsxs)("div",{className:"flex-1 min-w-0 pb-1",children:[p?(0,d.jsx)("input",{ref:y,value:t,onChange:a=>u(a.target.value),onBlur:A,onKeyDown:a=>{"Enter"===a.key&&A(),"Escape"===a.key&&q(!1)},className:"w-full bg-white/20 backdrop-blur-sm outline-none text-white text-sm font-semibold px-2 py-1 rounded placeholder-white/50",placeholder:"Your name..."}):(0,d.jsx)("div",{className:"text-sm font-semibold text-white cursor-pointer hover:opacity-80 truncate",onClick:()=>{u(a.name),q(!0)},children:a.name||"Click to set name"}),(0,d.jsx)("div",{className:"text-[11px] mt-0.5 px-2 py-0.5 rounded-full inline-block cursor-pointer hover:opacity-80",style:{backgroundColor:"rgba(255,255,255,0.15)",color:"rgba(255,255,255,0.9)"},onClick:()=>{w(a.role||""),s(!0)},children:r?(0,d.jsx)("input",{ref:z,value:v,onChange:a=>w(a.target.value),onBlur:B,onKeyDown:a=>{"Enter"===a.key&&B(),"Escape"===a.key&&s(!1)},className:"bg-transparent outline-none text-white text-[11px] w-24 placeholder-white/50",placeholder:"Your role..."}):a.role||"Set role..."})]})]})]}),(0,d.jsxs)("div",{className:"px-4 pt-3 pb-2",children:[(0,d.jsx)("label",{className:"text-[10px] font-semibold uppercase tracking-wider block mb-2",style:{color:"var(--text-tertiary)"},children:"Role"}),(0,d.jsx)("div",{className:"flex flex-wrap gap-1.5",children:n.map(b=>(0,d.jsx)("button",{onClick:()=>h(b),className:"px-2 py-1 text-[10px] rounded-md border transition-colors",style:{borderColor:a.role===b?"var(--accent)":"var(--border)",color:a.role===b?"var(--accent)":"var(--text-secondary)",backgroundColor:a.role===b?"var(--accent)10":"transparent",fontWeight:a.role===b?600:400},children:b},b))})]}),(0,d.jsxs)("div",{id:"avatar-gallery",className:"px-4 pt-2 pb-3",children:[(0,d.jsx)("label",{className:"text-[10px] font-semibold uppercase tracking-wider block mb-2",style:{color:"var(--text-tertiary)"},children:"Choose Avatar"}),(0,d.jsx)("div",{className:"grid grid-cols-6 gap-2",children:l.map((b,c)=>(0,d.jsx)("button",{onClick:()=>g(b),className:"w-10 h-10 rounded-lg overflow-hidden border-2 transition-all hover:scale-110 hover:shadow-md",style:{borderColor:a.avatarUrl===b?"var(--accent)":"transparent",boxShadow:a.avatarUrl===b?"0 0 0 2px var(--accent)":"none"},children:(0,d.jsx)("img",{src:b,alt:`Avatar ${c+11}`,className:"w-full h-full object-cover",loading:"lazy"})},b))}),(0,d.jsx)("div",{className:"grid grid-cols-6 gap-2 mt-2",children:m.map((b,c)=>(0,d.jsx)("button",{onClick:()=>g(b),className:"w-10 h-10 rounded-lg overflow-hidden border-2 transition-all hover:scale-110 hover:shadow-md",style:{borderColor:a.avatarUrl===b?"var(--accent)":"transparent",boxShadow:a.avatarUrl===b?"0 0 0 2px var(--accent)":"none"},children:(0,d.jsx)("img",{src:b,alt:`Avatar ${c+23}`,className:"w-full h-full object-cover",loading:"lazy"})},b))})]}),(0,d.jsxs)("div",{className:"px-4 pb-4",children:[(0,d.jsx)("label",{className:"text-[10px] font-semibold uppercase tracking-wider block mb-2",style:{color:"var(--text-tertiary)"},children:"Banner Color"}),(0,d.jsx)("div",{className:"grid grid-cols-8 gap-1.5",children:k.T7.map(b=>(0,d.jsx)("button",{onClick:()=>f(b),className:"w-6 h-6 rounded-full transition-transform hover:scale-110 relative overflow-hidden",style:{background:`linear-gradient(135deg, ${function(a,b){let c=parseInt(a.replace("#",""),16),d=Math.max(0,(c>>16)-Math.round((c>>16)*.3)),e=Math.max(0,(c>>8&255)-Math.round((c>>8&255)*.3)),f=Math.max(0,(255&c)-Math.round((255&c)*b));return`#${(d<<16|e<<8|f).toString(16).padStart(6,"0")}`}(b,.3)} 0%, ${b} 50%, ${o(b,.3)} 100%)`,outline:a.bannerColor!==b||a.avatarUrl?"none":"2px solid var(--accent)",outlineOffset:2},children:(0,d.jsx)("div",{className:"absolute inset-0",style:{background:"linear-gradient(135deg, transparent 0%, rgba(255,255,255,0.3) 50%, transparent 100%)",animation:"shimmer 2s ease-in-out infinite"}})},b))})]}),(0,d.jsxs)("div",{className:"px-4 py-2.5 border-t flex items-center justify-between",style:{borderColor:"var(--border)",backgroundColor:"var(--bg-secondary)"},children:[(0,d.jsx)("span",{className:"text-[10px]",style:{color:"var(--text-tertiary)"},children:"Profile data stored locally"}),(0,d.jsx)("button",{onClick:()=>j(!1),className:"text-[10px] font-medium px-2 py-0.5 rounded",style:{color:"var(--accent)"},children:"Done"})]})]})]})}function q({open:a,onClose:b,profile:c,initials:f,stats:g}){let[h,i]=(0,e.useState)(!1);if(!a)return null;let j=`My Test Lah!:
|
|
2
|
-
${g.projects} Projects | ${g.testCases} Cases | ${g.passRate}% Pass Rate`,k=async()=>{if(navigator.share)try{await navigator.share({title:"Test Lah! Stats",text:j})}catch{}else navigator.clipboard.writeText(j)};return(0,d.jsx)("div",{className:"fixed inset-0 z-[300] flex items-center justify-center",style:{backgroundColor:"rgba(0,0,0,0.3)",animation:"fadeIn 150ms ease-out"},onClick:b,children:(0,d.jsxs)("div",{className:"w-72 mx-4",onClick:a=>a.stopPropagation(),style:{perspective:"1000px"},children:[(0,d.jsxs)("div",{className:"relative w-full",style:{transformStyle:"preserve-3d",transform:h?"rotateY(180deg)":"rotateY(0)",transition:"transform 0.5s ease",height:"380px"},children:[(0,d.jsxs)("div",{className:"absolute inset-0 rounded-xl overflow-hidden border",style:{backfaceVisibility:"hidden",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)"},children:[(0,d.jsx)("div",{className:"absolute inset-0",style:{background:`linear-gradient(160deg, ${function(a,b){let c=parseInt(a.replace("#",""),16),d=Math.max(0,(c>>16)-Math.round((c>>16)*.25)),e=Math.max(0,(c>>8&255)-Math.round((c>>8&255)*b)),f=Math.max(0,(255&c)-Math.round((255&c)*b));return`#${(d<<16|e<<8|f).toString(16).padStart(6,"0")}`}(c.bannerColor,.25)} 0%, ${c.bannerColor} 50%, ${function(a,b){let c=parseInt(a.replace("#",""),16),d=Math.min(255,(c>>16)+Math.round((255-(c>>16))*.2)),e=Math.min(255,(c>>8&255)+Math.round((255-(c>>8&255))*b)),f=Math.min(255,(255&c)+Math.round((255-(255&c))*b));return`#${(d<<16|e<<8|f).toString(16).padStart(6,"0")}`}(c.bannerColor,.2)} 100%)`}}),(0,d.jsxs)("div",{className:"relative h-full flex flex-col items-center justify-center px-4",children:[(0,d.jsx)("div",{className:"w-20 h-20 rounded-xl overflow-hidden border-2 mb-3",style:{borderColor:"rgba(255,255,255,0.3)"},children:c.avatarUrl?(0,d.jsx)("img",{src:c.avatarUrl,alt:"Avatar",className:"w-full h-full object-cover"}):(0,d.jsx)("div",{className:"w-full h-full flex items-center justify-center text-2xl font-bold",style:{backgroundColor:"rgba(0,0,0,0.2)",color:"#fff"},children:f})}),(0,d.jsx)("h3",{className:"text-base font-semibold text-white drop-shadow-sm",children:c.name||"Anonymous Tester"}),(0,d.jsx)("p",{className:"text-xs mt-0.5 text-white/70",children:c.role||"No role set"}),(0,d.jsxs)("div",{className:"flex items-center gap-4 mt-4",children:[(0,d.jsx)(r,{value:g.projects,label:"Projects"}),(0,d.jsx)("div",{className:"w-px h-6 bg-white/20"}),(0,d.jsx)(r,{value:g.testCases,label:"Cases"}),(0,d.jsx)("div",{className:"w-px h-6 bg-white/20"}),(0,d.jsx)(r,{value:`${g.passRate}%`,label:"Pass"})]}),(0,d.jsx)("button",{onClick:()=>i(!0),className:"mt-5 px-4 py-1.5 text-[11px] font-medium rounded-full transition-colors",style:{backgroundColor:"rgba(255,255,255,0.2)",color:"#fff"},children:"View stats"})]})]}),(0,d.jsx)("div",{className:"absolute inset-0 rounded-xl overflow-hidden border",style:{backfaceVisibility:"hidden",transform:"rotateY(180deg)",borderColor:"var(--border)",backgroundColor:"var(--bg-card)",boxShadow:"var(--shadow-lg)"},children:(0,d.jsxs)("div",{className:"h-full flex flex-col",children:[(0,d.jsxs)("div",{className:"px-4 py-3 border-b flex items-center justify-between",style:{borderColor:"var(--border)"},children:[(0,d.jsx)("span",{className:"text-xs font-semibold",style:{color:"var(--text-primary)"},children:"Statistics"}),(0,d.jsx)("button",{onClick:()=>i(!1),className:"text-[10px] px-2 py-0.5 rounded border transition-colors hover:bg-[var(--bg-secondary)]",style:{color:"var(--text-tertiary)",borderColor:"var(--border)"},children:"Back"})]}),(0,d.jsxs)("div",{className:"flex-1 overflow-auto p-4 space-y-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-1.5",children:[(0,d.jsx)("span",{className:"text-[10px] uppercase tracking-wider",style:{color:"var(--text-tertiary)"},children:"Pass Rate"}),(0,d.jsxs)("span",{className:"text-sm font-semibold",style:{color:g.passRate>=80?"var(--status-pass-text)":g.passRate>=50?"var(--status-skip-text)":"var(--status-fail-text)"},children:[g.passRate,"%"]})]}),(0,d.jsx)("div",{className:"h-1.5 rounded-full overflow-hidden",style:{backgroundColor:"var(--bg-secondary)"},children:(0,d.jsx)("div",{className:"h-full rounded-full",style:{width:`${g.passRate}%`,backgroundColor:g.passRate>=80?"var(--status-pass-text)":g.passRate>=50?"var(--status-skip-text)":"var(--status-fail-text)"}})})]}),(0,d.jsxs)("div",{className:"grid grid-cols-4 gap-1.5",children:[(0,d.jsx)(s,{label:"Pass",value:g.pass,color:"var(--status-pass-text)"}),(0,d.jsx)(s,{label:"Fail",value:g.fail,color:"var(--status-fail-text)"}),(0,d.jsx)(s,{label:"Skip",value:g.skip,color:"var(--status-skip-text)"}),(0,d.jsx)(s,{label:"New",value:g.untested})]}),(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)(t,{label:"Test Cases",value:g.testCases}),(0,d.jsx)(t,{label:"Flow Nodes",value:g.nodes}),(0,d.jsx)(t,{label:"Edges",value:g.edges}),(0,d.jsx)(t,{label:"Projects",value:g.projects})]}),(0,d.jsxs)("button",{onClick:k,className:"w-full px-3 py-2 text-[11px] font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)] flex items-center justify-center gap-1.5",style:{borderColor:"var(--border)",color:"var(--text-secondary)"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M4 12v8a2 2 0 002 2h12a2 2 0 002-2v-8"}),(0,d.jsx)("polyline",{points:"16 6 12 2 8 6"}),(0,d.jsx)("line",{x1:"12",y1:"2",x2:"12",y2:"15"})]}),"Share"]})]})]})})]}),(0,d.jsx)("button",{onClick:b,className:"w-full mt-2 px-3 py-2 text-[11px] font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)]",style:{borderColor:"var(--border)",color:"var(--text-secondary)",backgroundColor:"var(--bg-card)"},children:"Close"})]})})}function r({value:a,label:b}){return(0,d.jsxs)("div",{className:"text-center",children:[(0,d.jsx)("div",{className:"text-sm font-semibold text-white",children:a}),(0,d.jsx)("div",{className:"text-[9px] uppercase tracking-wider text-white/60",children:b})]})}function s({label:a,value:b,color:c}){return(0,d.jsxs)("div",{className:"py-2 rounded-lg text-center",style:{backgroundColor:"var(--bg-secondary)"},children:[(0,d.jsx)("div",{className:"text-sm font-medium",style:{color:c??"var(--text-secondary)"},children:b}),(0,d.jsx)("div",{className:"text-[8px] uppercase tracking-wider",style:{color:"var(--text-tertiary)"},children:a})]})}function t({label:a,value:b}){return(0,d.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 rounded-lg",style:{backgroundColor:"var(--bg-secondary)"},children:[(0,d.jsx)("span",{className:"text-[11px]",style:{color:"var(--text-tertiary)"},children:a}),(0,d.jsx)("span",{className:"text-xs font-medium",style:{color:"var(--text-primary)"},children:b})]})}var u=c(64271);function v(){let{projects:a,activeProject:b,activeProjectId:c,profile:h,profileInitials:k,setProfileName:l,setProfileBannerColor:m,setProfileAvatarUrl:n,setProfileRole:o}=(0,g.M)(),{logout:r}=(0,j.A)(),s=(0,f.useRouter)(),t=(0,f.usePathname)(),{startProgress:v,completeProgress:x}=(0,u.p1)(),[y,z]=(0,e.useState)(!1),[A,B]=(0,e.useState)(!1),C=Object.values(a),D=(0,e.useMemo)(()=>{let a=C.flatMap(a=>Object.values(a.testCases).flat()),b=a.length,c=a.filter(a=>"pass"===a.status).length,d=a.filter(a=>"fail"===a.status).length,e=a.filter(a=>"skip"===a.status).length,f=a.filter(a=>"untested"===a.status).length,g=C.reduce((a,b)=>a+b.flows.length,0),h=C.reduce((a,b)=>a+(b.edges??[]).length,0),i=b-e,j=i>0?Math.round(c/i*100):0;return{projects:C.length,testCases:b,passRate:j,nodes:g,edges:h,pass:c,fail:d,skip:e,untested:f}},[C]),E=t.startsWith("/integrations")?"integrations":"projects";return(0,d.jsxs)("header",{className:"flex flex-col border-b flex-shrink-0 relative",style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)"},children:[(0,d.jsx)("div",{className:"absolute inset-0 overflow-hidden flex items-center justify-center pointer-events-none group/duck",children:(0,d.jsx)("img",{src:"https://static.vecteezy.com/system/resources/thumbnails/067/162/149/small/cute-duck-meme-sticker-transparent-cute-illustration-free-png.png",alt:"",className:"h-[85%] object-contain select-none transition-all duration-300 group-hover/duck:scale-110 group-hover/duck:opacity-[0.15] cursor-pointer",style:{opacity:.09,pointerEvents:"auto"},onClick:()=>s.push("/projects"),title:"Quack! \uD83E\uDD86"})}),(0,d.jsxs)("div",{className:"relative z-10 flex items-center justify-between px-6 py-2.5",children:[(0,d.jsx)("div",{className:"flex items-center gap-3",children:(0,d.jsxs)(i(),{href:"/projects",className:"flex items-center gap-2",children:[(0,d.jsx)("div",{className:"w-8 h-8 rounded-md overflow-hidden bg-white flex-shrink-0",style:{boxShadow:"0 1px 4px rgba(0,0,0,0.08)"},children:(0,d.jsx)("img",{src:"https://static.vecteezy.com/system/resources/thumbnails/067/162/149/small/cute-duck-meme-sticker-transparent-cute-illustration-free-png.png",alt:"Logo",width:32,height:32,className:"w-full h-full object-contain"})}),(0,d.jsx)("span",{className:"shimmer-text text-sm font-bold tracking-wide select-none",style:{background:"linear-gradient(90deg, var(--text-primary) 0%, var(--text-primary) 40%, #FFD54F 50%, var(--text-primary) 60%, var(--text-primary) 100%)",backgroundSize:"200% 100%",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",backgroundClip:"text",animation:"shimmerText 3s ease-in-out infinite"},children:"Test Lah!"})]})}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("button",{onClick:()=>z(!0),className:"hidden md:block px-3 py-1.5 text-[11px] font-medium rounded-md border transition-colors hover:bg-[var(--bg-secondary)]",style:{borderColor:"var(--border)",color:"var(--text-secondary)"},children:"My Card"}),(0,d.jsx)("div",{className:"hidden md:block w-px h-5 mx-0.5",style:{backgroundColor:"var(--border)"}}),(0,d.jsx)("div",{className:"relative z-[60]",children:(0,d.jsx)(p,{profile:h,initials:k,onSetName:l,onSetBannerColor:m,onSetAvatarUrl:n,onSetRole:o})}),(0,d.jsx)("button",{onClick:()=>{B(!0)},className:"w-8 h-8 flex items-center justify-center text-xs rounded-md border transition-colors hover:bg-[var(--bg-secondary)] hover:border-[var(--status-fail-text)]",style:{borderColor:"var(--border)",color:"var(--text-tertiary)"},title:"Logout",children:(0,d.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:(0,d.jsx)("path",{d:"M5 2H3.5A1.5 1.5 0 002 3.5v7A1.5 1.5 0 003.5 12H5M9 10l3-3-3-3M6 7h6",stroke:"currentColor",strokeWidth:"1.3",strokeLinecap:"round",strokeLinejoin:"round"})})})]})]}),(0,d.jsxs)("div",{className:"relative z-10 flex items-center gap-1 px-6 pb-1.5",children:[(0,d.jsx)(w,{label:"All Projects",href:"/projects",icon:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 14 14",fill:"none",children:[(0,d.jsx)("rect",{x:"1",y:"1",width:"5",height:"5",rx:"1",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("rect",{x:"8",y:"1",width:"5",height:"5",rx:"1",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("rect",{x:"1",y:"8",width:"5",height:"5",rx:"1",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("rect",{x:"8",y:"8",width:"5",height:"5",rx:"1",stroke:"currentColor",strokeWidth:"1.2",fill:"none"})]}),active:"projects"===E}),(0,d.jsx)(w,{label:"Integrations",href:"/integrations",icon:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 14 14",fill:"none",children:[(0,d.jsx)("circle",{cx:"5",cy:"5",r:"2.5",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("circle",{cx:"9",cy:"9",r:"2.5",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("path",{d:"M7.5 5.5L6.5 8.5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round"})]}),active:"integrations"===E})]}),(0,d.jsx)(q,{open:y,onClose:()=>z(!1),profile:h,initials:k,stats:D}),A&&(0,d.jsx)("div",{className:"fixed inset-0 z-[400] flex items-center justify-center",style:{backgroundColor:"rgba(0,0,0,0.3)",animation:"fadeIn 150ms ease-out"},onClick:()=>B(!1),children:(0,d.jsxs)("div",{className:"w-full max-w-sm mx-4 rounded-xl border overflow-hidden",style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)",animation:"fadeInUp 200ms ease-out"},onClick:a=>a.stopPropagation(),children:[(0,d.jsxs)("div",{className:"px-6 pt-6 pb-4 text-center",children:[(0,d.jsx)("div",{className:"w-14 h-14 mx-auto mb-4 rounded-full flex items-center justify-center",style:{backgroundColor:"var(--status-skip-bg)"},children:(0,d.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 24 24",fill:"none",stroke:"var(--status-skip-text)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4"}),(0,d.jsx)("polyline",{points:"16 17 21 12 16 7"}),(0,d.jsx)("line",{x1:"21",y1:"12",x2:"9",y2:"12"})]})}),(0,d.jsx)("h3",{className:"text-base font-semibold mb-2",style:{color:"var(--text-primary)"},children:"Mau Keluar? Sedekahnya mana??"}),(0,d.jsx)("p",{className:"text-xs leading-relaxed",style:{color:"var(--text-tertiary)"},children:"Sebelum keluar, mungkin bisa traktir developer secangkir kopi? ☕"})]}),(0,d.jsxs)("div",{className:"px-6 pb-5 flex gap-2",children:[(0,d.jsx)("button",{onClick:()=>B(!1),className:"flex-1 px-3 py-2.5 text-xs font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)]",style:{borderColor:"var(--border)",color:"var(--text-secondary)"},children:"Batal"}),(0,d.jsx)("button",{onClick:()=>{B(!1),v("Logging out..."),r(),setTimeout(()=>{x("Logged out!"),s.push("/login")},500)},className:"flex-1 px-3 py-2.5 text-xs font-medium rounded-lg transition-opacity hover:opacity-80",style:{backgroundColor:"var(--status-fail-text)",color:"#fff"},children:"Keluar"})]})]})})]})}function w({label:a,icon:b,active:c,href:e,badge:f}){return(0,d.jsxs)(i(),{href:e,className:"flex items-center gap-2 px-3 py-2 text-xs font-medium rounded-t-md transition-colors relative",style:{color:c?"var(--accent)":"var(--text-tertiary)",backgroundColor:c?"var(--bg-secondary)":"transparent"},children:[b,a,f&&(0,d.jsx)("span",{className:"ml-1 px-1.5 py-0.5 text-[9px] font-semibold rounded-full leading-none",style:{backgroundColor:c?"var(--accent)":"var(--bg-secondary)",color:c?"#fff":"var(--text-tertiary)"},children:f}),c&&(0,d.jsx)("div",{className:"absolute bottom-0 left-2 right-2 h-0.5 rounded-t-full",style:{backgroundColor:"var(--accent)"}})]})}var x=c(42423);function y({children:a}){(0,f.useRouter)();let{isLoggedIn:b,loaded:c}=(0,j.A)();return c?b?(0,d.jsx)(d.Fragment,{children:a}):null:(0,d.jsx)("div",{className:"h-screen flex items-center justify-center",style:{backgroundColor:"var(--bg-primary)"},children:(0,d.jsx)("div",{className:"text-sm",style:{color:"var(--text-tertiary)"},children:"Loading..."})})}function z(){let{undo:a,redo:b,canUndo:c,canRedo:d}=(0,g.M)();return null}function A({children:a}){let{dialog:b}=(0,g.M)();return(0,d.jsxs)(d.Fragment,{children:[a,(0,d.jsx)(x.q,{dialog:b})]})}function B({children:a}){return(0,d.jsx)(y,{children:(0,d.jsx)(g.q,{children:(0,d.jsx)(A,{children:(0,d.jsxs)("div",{className:"h-screen flex flex-col",style:{backgroundColor:"var(--bg-primary)"},children:[(0,d.jsx)(z,{}),(0,d.jsx)(v,{}),(0,d.jsx)("div",{className:"flex-1 min-h-0",children:a})]})})})})}},26239:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call Providers() from the server but Providers is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/sltr91025/code-repository/open-source/test-lah/src/components/shared/Providers.tsx","Providers")},34776:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});var d=c(38301);function e(a){try{sessionStorage.setItem("qa-auth",JSON.stringify(a))}catch{}}function f(){let[a,b]=(0,d.useState)({name:"",isLoggedIn:!1}),[c,f]=(0,d.useState)(!1),g=(0,d.useCallback)(a=>{let c={name:a,isLoggedIn:!0};e(c),b(c)},[]),h=(0,d.useCallback)(()=>{let a={name:"",isLoggedIn:!1};e(a),b(a)},[]);return{...a,loaded:c,login:g,logout:h}}},35473:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>f});var d=c(21124),e=c(64271);function f({children:a}){return(0,d.jsx)(e.Vx,{children:a})}},37687:(a,b,c)=>{Promise.resolve().then(c.bind(c,26239))},42423:(a,b,c)=>{"use strict";c.d(b,{q:()=>g,s:()=>f});var d=c(21124),e=c(38301);function f(){let[a,b]=(0,e.useState)(null),c=(0,e.useCallback)((a,c)=>new Promise(d=>{b({type:"alert",title:a,message:c,resolve:()=>{b(null),d()}})}),[]);return{dialog:a,alert:c,confirm:(0,e.useCallback)((a,c)=>new Promise(d=>{b({type:"confirm",title:a,message:c,resolve:a=>{b(null),d(!0===a)}})}),[]),prompt:(0,e.useCallback)((a,c,d="")=>new Promise(e=>{b({type:"prompt",title:a,message:c,defaultValue:d,resolve:a=>{b(null),e("string"==typeof a?a:null)}})}),[])}}function g({dialog:a}){let[b,c]=(0,e.useState)(""),f=(0,e.useRef)(null);return a?(0,d.jsx)("div",{className:"fixed inset-0 z-[400] flex items-center justify-center",style:{backgroundColor:"rgba(0,0,0,0.3)",animation:"fadeIn 150ms ease-out"},onClick:()=>a.resolve("prompt"===a.type&&null),children:(0,d.jsx)("div",{className:"relative w-full max-w-sm mx-4",onClick:a=>a.stopPropagation(),children:(0,d.jsx)("div",{className:"p-[2px] rounded-xl overflow-hidden",style:{background:"linear-gradient(135deg, #9E7AFF 0%, #FE8BBB 50%, #9E7AFF 100%)",backgroundSize:"200% 200%",animation:"borderShine 3s linear infinite"},children:(0,d.jsxs)("div",{className:"rounded-[10px] p-5",style:{backgroundColor:"var(--bg-card)",boxShadow:"var(--shadow-xl)"},children:[(0,d.jsx)("h3",{className:"text-sm font-semibold mb-2",style:{color:"var(--text-primary)"},children:a.title}),(0,d.jsx)("p",{className:"text-xs mb-4",style:{color:"var(--text-secondary)"},children:a.message}),"prompt"===a.type&&(0,d.jsx)("input",{ref:f,value:b,onChange:a=>c(a.target.value),onKeyDown:c=>{"Enter"===c.key&&a.resolve(b.trim()||null)},className:"w-full px-3 py-2 text-sm rounded-lg border outline-none transition-colors focus:border-[var(--accent)] mb-4",style:{borderColor:"var(--border)",backgroundColor:"var(--bg-secondary)",color:"var(--text-primary)"},placeholder:"Enter value..."}),(0,d.jsxs)("div",{className:"flex gap-2 justify-end",children:["alert"!==a.type&&(0,d.jsx)("button",{onClick:()=>a.resolve("prompt"===a.type&&null),className:"px-3 py-1.5 text-xs font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)]",style:{borderColor:"var(--border)",color:"var(--text-secondary)"},children:"Cancel"}),(0,d.jsx)("button",{onClick:()=>{"confirm"===a.type?a.resolve(!0):"prompt"===a.type?a.resolve(b.trim()||null):a.resolve(null)},className:"px-3 py-1.5 text-xs font-medium rounded-lg transition-opacity hover:opacity-80",style:{backgroundColor:"var(--accent)",color:"var(--bg-primary)"},children:"confirm"===a.type?"Confirm":"OK"})]})]})})})}):null}},44309:(a,b,c)=>{Promise.resolve().then(c.bind(c,22048))},51472:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>i,metadata:()=>h});var d=c(75338),e=c(76555),f=c.n(e);c(61135);var g=c(26239);let h={title:"Test Lah!",description:"Test Lah! — Your Boss's Favorite QA Tool",icons:{icon:"/favicon.ico"}};function i({children:a}){return(0,d.jsx)("html",{lang:"en",children:(0,d.jsx)("body",{className:f().variable,style:{fontFamily:"Inter, system-ui, sans-serif"},children:(0,d.jsx)(g.Providers,{children:a})})})}},61135:()=>{},64271:(a,b,c)=>{"use strict";c.d(b,{Vx:()=>h,p1:()=>g});var d=c(21124),e=c(38301);let f=(0,e.createContext)(null);function g(){let a=(0,e.useContext)(f);if(!a)throw Error("useProgress must be used within ProgressProvider");return a}function h({children:a}){let[b,c]=(0,e.useState)(0),[g,h]=(0,e.useState)(""),[i,j]=(0,e.useState)(!1),k=(0,e.useRef)(null),l=(0,e.useRef)(null),m=(0,e.useCallback)(()=>{k.current&&(clearInterval(k.current),k.current=null),l.current&&(clearTimeout(l.current),l.current=null)},[]),n=(0,e.useCallback)(()=>{j(!1),c(0),h("")},[]),o=(0,e.useCallback)(a=>{m(),c(0),h(a||""),j(!0),k.current=setInterval(()=>{c(a=>a>=90?(k.current&&clearInterval(k.current),k.current=null,90):a+15*Math.random())},300),l.current=setTimeout(()=>{n()},8e3)},[m,n]),p=(0,e.useCallback)((a,b)=>{c(Math.min(95,a)),b&&h(b)},[]),q=(0,e.useCallback)(a=>{m(),c(100),a&&h(a),setTimeout(()=>{n()},500)},[m,n]),r=(0,e.useCallback)(()=>{m(),n()},[m,n]);return(0,d.jsxs)(f.Provider,{value:{startProgress:o,updateProgress:p,completeProgress:q,cancelProgress:r,isProgressing:i},children:[a,(0,d.jsxs)("div",{className:"fixed bottom-0 left-0 right-0 z-[600] transition-all duration-300 ease-out",style:{opacity:+!!i,transform:i?"translateY(0)":"translateY(100%)",pointerEvents:i?"auto":"none"},children:[(0,d.jsx)("div",{className:"h-1 w-full",style:{backgroundColor:"var(--bg-secondary)"},children:(0,d.jsx)("div",{className:"h-full transition-all duration-200 ease-out",style:{width:`${b}%`,backgroundColor:b>=100?"var(--status-pass-text)":"var(--accent)",boxShadow:b>=100?"0 0 10px var(--status-pass-text)":"none"}})}),g&&(0,d.jsxs)("div",{className:"flex items-center justify-center py-2 px-4 text-xs font-medium cursor-pointer",onClick:r,style:{backgroundColor:"var(--bg-card)",color:b>=100?"var(--status-pass-text)":"var(--text-secondary)",borderTop:"1px solid var(--border)"},children:[b>=100&&(0,d.jsx)("svg",{className:"mr-2",width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",children:(0,d.jsx)("path",{d:"M2 6l3 3 5-5",stroke:"var(--status-pass-text)",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),g]})]})]})}},66688:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,54160,23)),Promise.resolve().then(c.t.bind(c,31603,23)),Promise.resolve().then(c.t.bind(c,68495,23)),Promise.resolve().then(c.t.bind(c,75170,23)),Promise.resolve().then(c.t.bind(c,77526,23)),Promise.resolve().then(c.t.bind(c,78922,23)),Promise.resolve().then(c.t.bind(c,29234,23)),Promise.resolve().then(c.t.bind(c,12263,23)),Promise.resolve().then(c.bind(c,82146))},70440:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e});var d=c(97523);let e=async a=>[{type:"image/x-icon",sizes:"350x350",url:(0,d.fillMetadataSegment)(".",await a.params,"favicon.ico")+""}]},90831:(a,b,c)=>{Promise.resolve().then(c.bind(c,35473))},93873:(a,b,c)=>{"use strict";c.d(b,{q:()=>l,M:()=>m});var d=c(21124),e=c(38301);function f(a,b){let[c,d]=(0,e.useState)(()=>b),[f,g]=(0,e.useState)(null),h=(0,e.useRef)(null);return[c,(0,e.useCallback)(a=>{d(b=>{let c=a instanceof Function?a(b):a;return h.current&&clearTimeout(h.current),h.current=setTimeout(()=>{g(new Date().toISOString())},300),c})},[a]),f]}var g=c(19188);let h={projects:{},activeProjectId:null,selectedNodeId:null},i={name:"",bannerColor:"#64B5F6",avatarUrl:"",role:"QA Engineer"};var j=c(42423);let k=(0,e.createContext)(null);function l({children:a}){let b=function(){let[a,b,c]=f("qa-dashboard",h),d=(0,e.useCallback)(a=>{let c=crypto.randomUUID(),d={id:c,name:a,createdAt:new Date().toISOString(),flows:[],testCases:{},columnConfig:[...g._X],columnConfigs:{},edges:[],userProfile:{name:"",bannerColor:"#64B5F6"},nodeCounter:0,tcCounter:{}};return b(a=>({...a,projects:{...a.projects,[c]:d},activeProjectId:c,selectedNodeId:null})),c},[b]),i=(0,e.useCallback)(a=>{b(b=>{let{[a]:c,...d}=b.projects,e=Object.keys(d);return{...b,projects:d,activeProjectId:b.activeProjectId===a?e[0]??null:b.activeProjectId,selectedNodeId:b.activeProjectId===a?null:b.selectedNodeId}})},[b]),j=(0,e.useCallback)(a=>{b(b=>({...b,activeProjectId:a,selectedNodeId:null}))},[b]),k=(0,e.useCallback)((a,c)=>{b(b=>({...b,projects:{...b.projects,[a]:{...b.projects[a],name:c}}}))},[b]),l=(0,e.useCallback)(a=>{b(b=>{let c=b.projects[a];if(!c)return b;let d=crypto.randomUUID(),e=new Date().toISOString(),f={...JSON.parse(JSON.stringify(c)),id:d,name:`${c.name} (Copy)`,createdAt:e};return{...b,projects:{...b.projects,[d]:f},activeProjectId:d,selectedNodeId:null}})},[b]),m=(0,e.useCallback)(a=>{try{let c=JSON.parse(a);if(!c||"object"!=typeof c)return{ok:!1,error:"Invalid JSON"};if(!c.name||!c.flows)return{ok:!1,error:"Missing required fields (name, flows)"};let d=crypto.randomUUID(),e={id:d,name:c.name,createdAt:c.createdAt||new Date().toISOString(),flows:Array.isArray(c.flows)?c.flows:[],testCases:c.testCases&&"object"==typeof c.testCases?c.testCases:{},columnConfig:Array.isArray(c.columnConfig)?c.columnConfig:[...g._X],columnConfigs:c.columnConfigs&&"object"==typeof c.columnConfigs?c.columnConfigs:{},edges:Array.isArray(c.edges)?c.edges:[],userProfile:c.userProfile&&"object"==typeof c.userProfile?c.userProfile:{name:"",bannerColor:"#64B5F6"},nodeCounter:"number"==typeof c.nodeCounter?c.nodeCounter:0,tcCounter:c.tcCounter&&"object"==typeof c.tcCounter?c.tcCounter:{}};return b(a=>({...a,projects:{...a.projects,[d]:e},activeProjectId:d,selectedNodeId:null})),{ok:!0}}catch{return{ok:!1,error:"Failed to parse project file"}}},[b]),n=(0,e.useCallback)(a=>{b(b=>({...b,selectedNodeId:a}))},[b]),o=(0,e.useCallback)((a,c)=>{b(b=>({...b,projects:{...b.projects,[a]:c(b.projects[a])}}))},[b]),p=a.activeProjectId?a.projects[a.activeProjectId]??null:null;return{state:a,setState:b,projects:a.projects,activeProject:p,activeProjectId:a.activeProjectId,selectedNodeId:a.selectedNodeId,createProject:d,deleteProject:i,duplicateProject:l,importProject:m,switchProject:j,renameProject:k,setSelectedNodeId:n,updateProject:o,lastSaved:c}}(),c=function(){let[a,b]=f("qa-profile",i),c=a.name.split(" ").map(a=>a[0]).filter(Boolean).slice(0,2).join("").toUpperCase()||"?";return{profile:a,setName:a=>b(b=>({...b,name:a})),setBannerColor:a=>b(b=>({...b,bannerColor:a})),setAvatarUrl:a=>b(b=>({...b,avatarUrl:a})),setRole:a=>b(b=>({...b,role:a})),initials:c}}(),l=function(a,b){let[c,d]=(0,e.useState)([]),[f,g]=(0,e.useState)(-1),h=(0,e.useRef)(!1),i=(0,e.useCallback)(b=>{if(!a||h.current){h.current=!1;return}d(c=>{let d=[...c.slice(0,f+1),{label:b,projectSnapshot:JSON.parse(JSON.stringify(a))}];return d.length>50&&d.shift(),d}),g(a=>Math.min(a+1,49))},[a,f]),j=(0,e.useCallback)(()=>{if(f<0||!a)return;let d=c[f];d&&(h.current=!0,b(a.id,()=>d.projectSnapshot),g(a=>a-1))},[c,f,a,b]),k=(0,e.useCallback)(()=>{if(f>=c.length-1||!a)return;let d=c[f+1];d&&(h.current=!0,b(a.id,()=>d.projectSnapshot),g(a=>a+1))},[c,f,a,b]),l=f>=0;return{pushState:i,undo:j,redo:k,canUndo:l,canRedo:f<c.length-1,recentActions:c.slice(-10).map(a=>a.label).reverse()}}(b.activeProject,b.updateProject),m=function(a,b,c,d){let f=a?.flows??[],h=a?.edges??[],i=(0,e.useCallback)((c,e,f,h)=>{if(!a)return null;let i=crypto.randomUUID(),j="";return b(a.id,a=>{let b=(a.nodeCounter??0)+1,d=(e||"").trim().replace(/[^a-zA-Z0-9\s]/g,"").split(/\s+/);j=d.length>=2?d.slice(0,2).map(a=>a.charAt(0).toUpperCase()).join("")+String(b).padStart(2,"0"):d[0]&&d[0].length>=2?d[0].slice(0,3).toUpperCase()+String(b).padStart(2,"0"):`N${String(b).padStart(3,"0")}`;let k=(0,g.IU)(i,j,e,c);f&&(k.position=f),h&&(k.direction=h);let l=[...a.flows];if(c){let a=l.findIndex(a=>a.id===c);-1!==a&&(l[a]={...l[a],children:[...l[a].children,i]})}return l.push(k),{...a,flows:l,testCases:{...a.testCases,[i]:[]},nodeCounter:b}}),d(i),i},[a,b,d]),j=(0,e.useCallback)(e=>{if(!a)return;let f=new Set,g=b=>{f.add(b);let c=a.flows.find(a=>a.id===b);c?.children.forEach(g)};g(e),b(a.id,a=>{let b=a.flows.filter(a=>!f.has(a.id)).map(a=>({...a,children:a.children.filter(a=>!f.has(a))})),c={...a.testCases};f.forEach(a=>delete c[a]);let d=(a.edges??[]).filter(a=>!f.has(a.fromId)&&!f.has(a.toId));return{...a,flows:b,testCases:c,edges:d}}),f.has(c??"")&&d(null)},[a,b,c,d]),k=(0,e.useCallback)(e=>{if(!a||0===e.length)return;let f=new Set,g=b=>{f.add(b);let c=a.flows.find(a=>a.id===b);c?.children.forEach(g)};e.forEach(g),b(a.id,a=>{let b=a.flows.filter(a=>!f.has(a.id)).map(a=>({...a,children:a.children.filter(a=>!f.has(a))})),c={...a.testCases};f.forEach(a=>delete c[a]);let d=(a.edges??[]).filter(a=>!f.has(a.fromId)&&!f.has(a.toId));return{...a,flows:b,testCases:c,edges:d}}),f.has(c??"")&&d(null)},[a,b,c,d]),l=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>({...a,flows:a.flows.map(a=>a.id===c?{...a,label:d}:a)}))},[a,b]),m=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>({...a,flows:a.flows.map(a=>a.id===c?{...a,...d}:a)}))},[a,b]),n=(0,e.useCallback)(c=>{a&&b(a.id,a=>{let b=a.flows.find(a=>a.id===c);return b&&b.parentId?{...a,flows:a.flows.map(a=>a.id===c?{...a,parentId:null}:a.id===b.parentId?{...a,children:a.children.filter(a=>a!==c)}:a)}:a})},[a,b]),o=(0,e.useCallback)(a=>{d(a)},[d]),p=(0,e.useCallback)((c,d,e)=>{if(!a)return;let f={id:crypto.randomUUID(),fromId:c,toId:d,type:e};b(a.id,a=>({...a,edges:[...a.edges??[],f]}))},[a,b]),q=(0,e.useCallback)(c=>{a&&b(a.id,a=>({...a,edges:(a.edges??[]).filter(a=>a.id!==c)}))},[a,b]);return{nodes:f,edges:h,selectedNodeId:c,addNode:i,deleteNode:j,deleteNodes:k,unlinkNode:n,renameNode:l,updateNode:m,selectNode:o,addEdge:p,deleteEdge:q,updateEdge:(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>({...a,edges:(a.edges??[]).map(a=>a.id===c?{...a,...d}:a)}))},[a,b]),resetLayout:(0,e.useCallback)(()=>{a&&b(a.id,a=>({...a,flows:a.flows.map(a=>({...a,position:null}))}))},[a,b])}}(b.activeProject,b.updateProject,b.selectedNodeId,b.setSelectedNodeId),n=function(a,b,c){let d=c&&a?a.testCases[c]??[]:[],f=function(a){let b=a.length,c=a.filter(a=>"pass"===a.status).length,d=a.filter(a=>"fail"===a.status).length,e=a.filter(a=>"skip"===a.status).length,f=a.filter(a=>"untested"===a.status).length,g=b-e,h=g>0?Math.round(c/g*100):0;return{total:b,pass:c,fail:d,skip:e,untested:f,passRate:h}}(d),h=(0,e.useCallback)((c,d,e,f)=>{if(!a)return;let g=a.flows.find(a=>a.id===c),h=g?.code??"N000",i=a.testCases[c]??[],j="";b(a.id,a=>{let b={...a.tcCounter??{}},g=(b[c]??0)+1;b[c]=g,j=`${h}-TC${String(g).padStart(3,"0")}`;let k={id:crypto.randomUUID(),code:j,title:d,steps:e??"",expected:f??"",status:"untested",case_type:"General",notes:"",links:"",order:i.length};return{...a,testCases:{...a.testCases,[c]:[...a.testCases[c]??[],k]},tcCounter:b}})},[a,b]),i=(0,e.useCallback)((c,d,e)=>{a&&b(a.id,a=>({...a,testCases:{...a.testCases,[c]:(a.testCases[c]??[]).map(a=>a.id===d?{...a,...e}:a)}}))},[a,b]),j=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>({...a,testCases:{...a.testCases,[c]:(a.testCases[c]??[]).filter(a=>a.id!==d)}}))},[a,b]),k=(0,e.useCallback)((c,d)=>{if(!a||0===d.length)return;let e=new Set(d);b(a.id,a=>({...a,testCases:{...a.testCases,[c]:(a.testCases[c]??[]).filter(a=>!e.has(a.id))}}))},[a,b]),l=(0,e.useCallback)((c,d,e)=>{if(!a||0===d.length)return;let f=new Set(d);b(a.id,a=>({...a,testCases:{...a.testCases,[c]:(a.testCases[c]??[]).map(a=>f.has(a.id)?{...a,...e}:a)}}))},[a,b]),m=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>{let b=new Map((a.testCases[c]??[]).map(a=>[a.id,a])),e=d.map((a,c)=>{let d=b.get(a);return d?{...d,order:c}:null}).filter(Boolean);return{...a,testCases:{...a.testCases,[c]:e}}})},[a,b]),n=(0,e.useCallback)((c,d,e)=>{a&&b(a.id,a=>{let b={...a.columnConfigs??{}},f=b[c]??[...g._X];return b[c]=f.map(a=>a.key===d?{...a,label:e}:a),{...a,columnConfigs:b}})},[a,b]),o=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>{let b={...a.columnConfigs??{}},e=b[c]??[...g._X];return b[c]=e.map(a=>a.key===d?{...a,visible:!a.visible}:a),{...a,columnConfigs:b}})},[a,b]),p=(0,e.useCallback)((c,d)=>{if(!a)return;let e=d.toLowerCase().replace(/\s+/g,"_");b(a.id,a=>{let b={...a.columnConfigs??{}},f=b[c]??[...g._X];return b[c]=[...f,{key:e,label:d,visible:!0}],{...a,columnConfigs:b}})},[a,b]);return{testCases:d,stats:f,addTestCase:h,updateTestCase:i,deleteTestCase:j,bulkDeleteTestCases:k,bulkUpdateTestCases:l,reorderTestCases:m,updateColumnConfig:n,toggleColumnVisibility:o,addColumn:p,deleteColumn:(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>{let b={...a.columnConfigs??{}},e=b[c]??[...g._X];return b[c]=e.filter(a=>a.key!==d),{...a,columnConfigs:b}})},[a,b]),reorderColumn:(0,e.useCallback)((c,d,e)=>{a&&b(a.id,a=>{let b={...a.columnConfigs??{}},f=[...b[c]??[...g._X]],h=f.findIndex(a=>a.key===d);if(-1===h)return a;let i="up"===e?h-1:h+1;if(i<0||i>=f.length)return a;let j=f[h];return f[h]=f[i],f[i]=j,b[c]=f,{...a,columnConfigs:b}})},[a,b])}}(b.activeProject,b.updateProject,b.selectedNodeId),o=(0,j.s)(),p=(0,e.useMemo)(()=>({projects:b.projects,activeProject:b.activeProject,activeProjectId:b.activeProjectId,selectedNodeId:b.selectedNodeId,createProject:b.createProject,deleteProject:b.deleteProject,duplicateProject:b.duplicateProject,importProject:b.importProject,switchProject:b.switchProject,renameProject:b.renameProject,setSelectedNodeId:b.setSelectedNodeId,updateProject:b.updateProject,profile:c.profile,profileInitials:c.initials,setProfileName:c.setName,setProfileBannerColor:c.setBannerColor,setProfileAvatarUrl:c.setAvatarUrl,setProfileRole:c.setRole,canUndo:l.canUndo,canRedo:l.canRedo,undo:l.undo,redo:l.redo,pushState:l.pushState,mindmap:m,testCases:n,dialog:o.dialog,alertDialog:o.alert,confirmDialog:o.confirm,promptDialog:o.prompt,lastSaved:b.lastSaved}),[b,c,l,m,n,o]);return(0,d.jsx)(k.Provider,{value:p,children:a})}function m(){let a=(0,e.useContext)(k);if(!a)throw Error("useDashboard must be used within DashboardProvider");return a}},97788:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/sltr91025/code-repository/open-source/test-lah/src/app/(dashboard)/layout.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/sltr91025/code-repository/open-source/test-lah/src/app/(dashboard)/layout.tsx","default")}};
|
|
1
|
+
exports.id=615,exports.ids=[615],exports.modules={2453:(a,b,c)=>{Promise.resolve().then(c.bind(c,97788))},3136:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81170,23)),Promise.resolve().then(c.t.bind(c,23597,23)),Promise.resolve().then(c.t.bind(c,36893,23)),Promise.resolve().then(c.t.bind(c,89748,23)),Promise.resolve().then(c.t.bind(c,6060,23)),Promise.resolve().then(c.t.bind(c,7184,23)),Promise.resolve().then(c.t.bind(c,69576,23)),Promise.resolve().then(c.t.bind(c,73041,23)),Promise.resolve().then(c.t.bind(c,51384,23))},5908:(a,b,c)=>{"use strict";c.d(b,{q:()=>m,M:()=>n});var d=c(21124),e=c(38301);function f(a,b){let[c,d]=(0,e.useState)(()=>b),[f,g]=(0,e.useState)(null),h=(0,e.useRef)(null);return[c,(0,e.useCallback)(a=>{d(b=>{let c=a instanceof Function?a(b):a;return h.current&&clearTimeout(h.current),h.current=setTimeout(()=>{g(new Date().toISOString())},300),c})},[a]),f]}var g=c(19188);let h={projects:{},activeProjectId:null,selectedNodeId:null},i={name:"",bannerColor:"#64B5F6",avatarUrl:"",role:"QA Engineer"},j={baseUrl:"http://localhost:3000",browser:"chromium",headless:!0,timeout:3e4};var k=c(42423);let l=(0,e.createContext)(null);function m({children:a}){let b=function(){let[a,b,c]=f("qa-dashboard",h),d=(0,e.useCallback)(a=>{let c=crypto.randomUUID(),d={id:c,name:a,createdAt:new Date().toISOString(),flows:[],testCases:{},columnConfig:[...g._X],columnConfigs:{},edges:[],userProfile:{name:"",bannerColor:"#64B5F6"},nodeCounter:0,tcCounter:{}};return b(a=>({...a,projects:{...a.projects,[c]:d},activeProjectId:c,selectedNodeId:null})),c},[b]),i=(0,e.useCallback)(a=>{b(b=>{let{[a]:c,...d}=b.projects,e=Object.keys(d);return{...b,projects:d,activeProjectId:b.activeProjectId===a?e[0]??null:b.activeProjectId,selectedNodeId:b.activeProjectId===a?null:b.selectedNodeId}})},[b]),j=(0,e.useCallback)(a=>{b(b=>({...b,activeProjectId:a,selectedNodeId:null}))},[b]),k=(0,e.useCallback)((a,c)=>{b(b=>({...b,projects:{...b.projects,[a]:{...b.projects[a],name:c}}}))},[b]),l=(0,e.useCallback)(a=>{b(b=>{let c=b.projects[a];if(!c)return b;let d=crypto.randomUUID(),e=new Date().toISOString(),f={...JSON.parse(JSON.stringify(c)),id:d,name:`${c.name} (Copy)`,createdAt:e};return{...b,projects:{...b.projects,[d]:f},activeProjectId:d,selectedNodeId:null}})},[b]),m=(0,e.useCallback)(a=>{try{let c=JSON.parse(a);if(!c||"object"!=typeof c)return{ok:!1,error:"Invalid JSON"};if(!c.name||!c.flows)return{ok:!1,error:"Missing required fields (name, flows)"};let d=crypto.randomUUID(),e={id:d,name:c.name,createdAt:c.createdAt||new Date().toISOString(),flows:Array.isArray(c.flows)?c.flows:[],testCases:c.testCases&&"object"==typeof c.testCases?c.testCases:{},columnConfig:Array.isArray(c.columnConfig)?c.columnConfig:[...g._X],columnConfigs:c.columnConfigs&&"object"==typeof c.columnConfigs?c.columnConfigs:{},edges:Array.isArray(c.edges)?c.edges:[],userProfile:c.userProfile&&"object"==typeof c.userProfile?c.userProfile:{name:"",bannerColor:"#64B5F6"},nodeCounter:"number"==typeof c.nodeCounter?c.nodeCounter:0,tcCounter:c.tcCounter&&"object"==typeof c.tcCounter?c.tcCounter:{}};return b(a=>({...a,projects:{...a.projects,[d]:e},activeProjectId:d,selectedNodeId:null})),{ok:!0}}catch{return{ok:!1,error:"Failed to parse project file"}}},[b]),n=(0,e.useCallback)(a=>{b(b=>({...b,selectedNodeId:a}))},[b]),o=(0,e.useCallback)((a,c)=>{b(b=>({...b,projects:{...b.projects,[a]:c(b.projects[a])}}))},[b]),p=a.activeProjectId?a.projects[a.activeProjectId]??null:null;return{state:a,setState:b,projects:a.projects,activeProject:p,activeProjectId:a.activeProjectId,selectedNodeId:a.selectedNodeId,createProject:d,deleteProject:i,duplicateProject:l,importProject:m,switchProject:j,renameProject:k,setSelectedNodeId:n,updateProject:o,lastSaved:c}}(),c=function(){let[a,b]=f("qa-profile",i),c=a.name.split(" ").map(a=>a[0]).filter(Boolean).slice(0,2).join("").toUpperCase()||"?";return{profile:a,setName:a=>b(b=>({...b,name:a})),setBannerColor:a=>b(b=>({...b,bannerColor:a})),setAvatarUrl:a=>b(b=>({...b,avatarUrl:a})),setRole:a=>b(b=>({...b,role:a})),initials:c}}(),m=function(a,b){let[c,d]=(0,e.useState)([]),[f,g]=(0,e.useState)(-1),h=(0,e.useRef)(!1),i=(0,e.useCallback)(b=>{if(!a||h.current){h.current=!1;return}d(c=>{let d=[...c.slice(0,f+1),{label:b,projectSnapshot:JSON.parse(JSON.stringify(a))}];return d.length>50&&d.shift(),d}),g(a=>Math.min(a+1,49))},[a,f]),j=(0,e.useCallback)(()=>{if(f<0||!a)return;let d=c[f];d&&(h.current=!0,b(a.id,()=>d.projectSnapshot),g(a=>a-1))},[c,f,a,b]),k=(0,e.useCallback)(()=>{if(f>=c.length-1||!a)return;let d=c[f+1];d&&(h.current=!0,b(a.id,()=>d.projectSnapshot),g(a=>a+1))},[c,f,a,b]),l=f>=0;return{pushState:i,undo:j,redo:k,canUndo:l,canRedo:f<c.length-1,recentActions:c.slice(-10).map(a=>a.label).reverse()}}(b.activeProject,b.updateProject),n=function(a,b,c,d){let f=a?.flows??[],h=a?.edges??[],i=(0,e.useCallback)((c,e,f,h)=>{if(!a)return null;let i=crypto.randomUUID(),j="";return b(a.id,a=>{let b=(a.nodeCounter??0)+1,d=(e||"").trim().replace(/[^a-zA-Z0-9\s]/g,"").split(/\s+/);j=d.length>=2?d.slice(0,2).map(a=>a.charAt(0).toUpperCase()).join("")+String(b).padStart(2,"0"):d[0]&&d[0].length>=2?d[0].slice(0,3).toUpperCase()+String(b).padStart(2,"0"):`N${String(b).padStart(3,"0")}`;let k=(0,g.IU)(i,j,e,c);f&&(k.position=f),h&&(k.direction=h);let l=[...a.flows];if(c){let a=l.findIndex(a=>a.id===c);-1!==a&&(l[a]={...l[a],children:[...l[a].children,i]})}return l.push(k),{...a,flows:l,testCases:{...a.testCases,[i]:[]},nodeCounter:b}}),d(i),i},[a,b,d]),j=(0,e.useCallback)(e=>{if(!a)return;let f=new Set,g=b=>{f.add(b);let c=a.flows.find(a=>a.id===b);c?.children.forEach(g)};g(e),b(a.id,a=>{let b=a.flows.filter(a=>!f.has(a.id)).map(a=>({...a,children:a.children.filter(a=>!f.has(a))})),c={...a.testCases};f.forEach(a=>delete c[a]);let d=(a.edges??[]).filter(a=>!f.has(a.fromId)&&!f.has(a.toId));return{...a,flows:b,testCases:c,edges:d}}),f.has(c??"")&&d(null)},[a,b,c,d]),k=(0,e.useCallback)(e=>{if(!a||0===e.length)return;let f=new Set,g=b=>{f.add(b);let c=a.flows.find(a=>a.id===b);c?.children.forEach(g)};e.forEach(g),b(a.id,a=>{let b=a.flows.filter(a=>!f.has(a.id)).map(a=>({...a,children:a.children.filter(a=>!f.has(a))})),c={...a.testCases};f.forEach(a=>delete c[a]);let d=(a.edges??[]).filter(a=>!f.has(a.fromId)&&!f.has(a.toId));return{...a,flows:b,testCases:c,edges:d}}),f.has(c??"")&&d(null)},[a,b,c,d]),l=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>({...a,flows:a.flows.map(a=>a.id===c?{...a,label:d}:a)}))},[a,b]),m=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>({...a,flows:a.flows.map(a=>a.id===c?{...a,...d}:a)}))},[a,b]),n=(0,e.useCallback)(c=>{a&&b(a.id,a=>{let b=a.flows.find(a=>a.id===c);return b&&b.parentId?{...a,flows:a.flows.map(a=>a.id===c?{...a,parentId:null}:a.id===b.parentId?{...a,children:a.children.filter(a=>a!==c)}:a)}:a})},[a,b]),o=(0,e.useCallback)(a=>{d(a)},[d]),p=(0,e.useCallback)((c,d,e)=>{if(!a)return;let f={id:crypto.randomUUID(),fromId:c,toId:d,type:e};b(a.id,a=>({...a,edges:[...a.edges??[],f]}))},[a,b]),q=(0,e.useCallback)(c=>{a&&b(a.id,a=>({...a,edges:(a.edges??[]).filter(a=>a.id!==c)}))},[a,b]);return{nodes:f,edges:h,selectedNodeId:c,addNode:i,deleteNode:j,deleteNodes:k,unlinkNode:n,renameNode:l,updateNode:m,selectNode:o,addEdge:p,deleteEdge:q,updateEdge:(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>({...a,edges:(a.edges??[]).map(a=>a.id===c?{...a,...d}:a)}))},[a,b]),resetLayout:(0,e.useCallback)(()=>{a&&b(a.id,a=>({...a,flows:a.flows.map(a=>({...a,position:null}))}))},[a,b])}}(b.activeProject,b.updateProject,b.selectedNodeId,b.setSelectedNodeId),o=function(a,b,c){let d=c&&a?a.testCases[c]??[]:[],f=function(a){let b=a.length,c=a.filter(a=>"pass"===a.status).length,d=a.filter(a=>"fail"===a.status).length,e=a.filter(a=>"skip"===a.status).length,f=a.filter(a=>"untested"===a.status).length,g=b-e,h=g>0?Math.round(c/g*100):0;return{total:b,pass:c,fail:d,skip:e,untested:f,passRate:h}}(d),h=(0,e.useCallback)((c,d,e,f)=>{if(!a)return;let g=a.flows.find(a=>a.id===c),h=g?.code??"N000",i=a.testCases[c]??[],j="";b(a.id,a=>{let b={...a.tcCounter??{}},g=(b[c]??0)+1;b[c]=g,j=`${h}-TC${String(g).padStart(3,"0")}`;let k={id:crypto.randomUUID(),code:j,title:d,steps:e??"",expected:f??"",status:"untested",case_type:"General",notes:"",links:"",order:i.length};return{...a,testCases:{...a.testCases,[c]:[...a.testCases[c]??[],k]},tcCounter:b}})},[a,b]),i=(0,e.useCallback)((c,d,e)=>{a&&b(a.id,a=>({...a,testCases:{...a.testCases,[c]:(a.testCases[c]??[]).map(a=>a.id===d?{...a,...e}:a)}}))},[a,b]),j=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>({...a,testCases:{...a.testCases,[c]:(a.testCases[c]??[]).filter(a=>a.id!==d)}}))},[a,b]),k=(0,e.useCallback)((c,d)=>{if(!a||0===d.length)return;let e=new Set(d);b(a.id,a=>({...a,testCases:{...a.testCases,[c]:(a.testCases[c]??[]).filter(a=>!e.has(a.id))}}))},[a,b]),l=(0,e.useCallback)((c,d,e)=>{if(!a||0===d.length)return;let f=new Set(d);b(a.id,a=>({...a,testCases:{...a.testCases,[c]:(a.testCases[c]??[]).map(a=>f.has(a.id)?{...a,...e}:a)}}))},[a,b]),m=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>{let b=new Map((a.testCases[c]??[]).map(a=>[a.id,a])),e=d.map((a,c)=>{let d=b.get(a);return d?{...d,order:c}:null}).filter(Boolean);return{...a,testCases:{...a.testCases,[c]:e}}})},[a,b]),n=(0,e.useCallback)((c,d,e)=>{a&&b(a.id,a=>{let b={...a.columnConfigs??{}},f=b[c]??[...g._X];return b[c]=f.map(a=>a.key===d?{...a,label:e}:a),{...a,columnConfigs:b}})},[a,b]),o=(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>{let b={...a.columnConfigs??{}},e=b[c]??[...g._X];return b[c]=e.map(a=>a.key===d?{...a,visible:!a.visible}:a),{...a,columnConfigs:b}})},[a,b]),p=(0,e.useCallback)((c,d)=>{if(!a)return;let e=d.toLowerCase().replace(/\s+/g,"_");b(a.id,a=>{let b={...a.columnConfigs??{}},f=b[c]??[...g._X];return b[c]=[...f,{key:e,label:d,visible:!0}],{...a,columnConfigs:b}})},[a,b]);return{testCases:d,stats:f,addTestCase:h,updateTestCase:i,deleteTestCase:j,bulkDeleteTestCases:k,bulkUpdateTestCases:l,reorderTestCases:m,updateColumnConfig:n,toggleColumnVisibility:o,addColumn:p,deleteColumn:(0,e.useCallback)((c,d)=>{a&&b(a.id,a=>{let b={...a.columnConfigs??{}},e=b[c]??[...g._X];return b[c]=e.filter(a=>a.key!==d),{...a,columnConfigs:b}})},[a,b]),reorderColumn:(0,e.useCallback)((c,d,e)=>{a&&b(a.id,a=>{let b={...a.columnConfigs??{}},f=[...b[c]??[...g._X]],h=f.findIndex(a=>a.key===d);if(-1===h)return a;let i="up"===e?h-1:h+1;if(i<0||i>=f.length)return a;let j=f[h];return f[h]=f[i],f[i]=j,b[c]=f,{...a,columnConfigs:b}})},[a,b])}}(b.activeProject,b.updateProject,b.selectedNodeId),p=function(a,b){let c=a?.id,d=(0,e.useMemo)(()=>a?.e2eData||{config:j,runs:[],savedScripts:[]},[a?.e2eData]),f=(0,e.useCallback)(a=>{c&&b(c,b=>({...b,e2eData:a(b.e2eData||{config:j,runs:[],savedScripts:[]})}))},[c,b]),g=(0,e.useCallback)(a=>{f(b=>({...b,config:{...b.config,...a}}))},[f]),h=(0,e.useCallback)(a=>{let b={...a,id:`run-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,timestamp:new Date().toISOString()};return f(a=>({...a,runs:[b,...a.runs].slice(0,20)})),b},[f]),i=(0,e.useCallback)(a=>{f(b=>({...b,runs:b.runs.filter(b=>b.id!==a)}))},[f]),k=(0,e.useCallback)(()=>{f(a=>({...a,runs:[]}))},[f]),l=(0,e.useCallback)((a,b,d,e)=>{f(f=>{let g=f.savedScripts.findIndex(b=>b.testCaseId===a),h={id:g>=0?f.savedScripts[g].id:`script-${Date.now()}`,projectId:c,testCaseId:a,title:b,code:d,script:e,updatedAt:new Date().toISOString()},i=[...f.savedScripts];return g>=0?i[g]=h:i.push(h),{...f,savedScripts:i}})},[c,f]),m=(0,e.useCallback)(a=>{f(b=>({...b,savedScripts:b.savedScripts.filter(b=>b.testCaseId!==a)}))},[f]),n=(0,e.useCallback)(a=>d.savedScripts.find(b=>b.testCaseId===a),[d.savedScripts]);return{config:d.config,runs:d.runs,savedScripts:d.savedScripts,saveConfig:g,saveRun:h,deleteRun:i,clearRuns:k,saveScript:l,deleteScript:m,getScript:n}}(b.activeProject,b.updateProject),q=(0,k.s)(),r=(0,e.useMemo)(()=>({projects:b.projects,activeProject:b.activeProject,activeProjectId:b.activeProjectId,selectedNodeId:b.selectedNodeId,createProject:b.createProject,deleteProject:b.deleteProject,duplicateProject:b.duplicateProject,importProject:b.importProject,switchProject:b.switchProject,renameProject:b.renameProject,setSelectedNodeId:b.setSelectedNodeId,updateProject:b.updateProject,profile:c.profile,profileInitials:c.initials,setProfileName:c.setName,setProfileBannerColor:c.setBannerColor,setProfileAvatarUrl:c.setAvatarUrl,setProfileRole:c.setRole,canUndo:m.canUndo,canRedo:m.canRedo,undo:m.undo,redo:m.redo,pushState:m.pushState,mindmap:n,testCases:o,e2e:p,dialog:q.dialog,alertDialog:q.alert,confirmDialog:q.confirm,promptDialog:q.prompt,lastSaved:b.lastSaved}),[b,c,m,n,o,p,q]);return(0,d.jsx)(l.Provider,{value:r,children:a})}function n(){let a=(0,e.useContext)(l);if(!a)throw Error("useDashboard must be used within DashboardProvider");return a}},19188:(a,b,c)=>{"use strict";c.d(b,{D_:()=>e,IU:()=>g,T7:()=>f,_X:()=>d});let d=[{key:"code",label:"ID",visible:!0},{key:"title",label:"Test Case",visible:!0},{key:"steps",label:"Steps",visible:!0},{key:"expected",label:"Expected Result",visible:!0},{key:"status",label:"Status",visible:!0},{key:"case_type",label:"Case Type",visible:!1},{key:"notes",label:"Notes",visible:!0},{key:"links",label:"Links",visible:!1}],e=["General","Positive","Negative"],f=["#E57373","#F06292","#BA68C8","#9575CD","#7986CB","#64B5F6","#4FC3F7","#4DD0E1","#4DB6AC","#81C784","#AED581","#FFD54F","#FFB74D","#FF8A65","#A1887F","#90A4AE"];function g(a,b,c,d){return{id:a,code:b,label:c,parentId:d,children:[],shape:"rounded",notes:"",position:null}}},22048:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>B});var d=c(21124),e=c(38301),f=c(42378),g=c(5908),h=c(3991),i=c.n(h),j=c(34776),k=c(19188);let l=["https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_11.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_12.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_13.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_14.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_15.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_16.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_17.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_18.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_19.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_20.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_21.png","https://cdn.jsdelivr.net/gh/alohe/avatars/png/upstream_22.png"],m=["https://i.pinimg.com/736x/ed/74/06/ed74063ade6d66fce2ca19acbe74babc.jpg","https://i.pinimg.com/736x/8c/6d/56/8c6d563311f0917d45d1f2ce5d7c1a2d.jpg","https://i.pinimg.com/736x/86/b8/be/86b8bea1c772cf5c540e6f01e6acce59.jpg","https://i.pinimg.com/736x/78/d4/b1/78d4b1787a4fd23c2a8d21e4fbbc016f.jpg","https://i.pinimg.com/1200x/87/de/e6/87dee6d33b04f1df28bc85702ee12d4b.jpg","https://i.pinimg.com/1200x/3b/e3/95/3be395c4a94705f95e0603afb04f9d56.jpg","https://media.licdn.com/dms/image/v2/D5603AQHBu4wrzFWoTw/profile-displayphoto-crop_800_800/B56Zq.Sy6LKsAI-/0/1764129191465?e=1782345600&v=beta&t=79y6xLivwcpvwy53sy1TuVopK4FMp6O8uAu7QxlIxDo"],n=["QA Engineer","QA Lead","Developer","Designer","Manager"];function o(a,b){let c=parseInt(a.replace("#",""),16),d=Math.min(255,(c>>16)+Math.round((255-(c>>16))*b)),e=Math.min(255,(c>>8&255)+Math.round((255-(c>>8&255))*b)),f=Math.min(255,(255&c)+Math.round((255-(255&c))*b));return`#${(d<<16|e<<8|f).toString(16).padStart(6,"0")}`}function p({profile:a,initials:b,onSetName:c,onSetBannerColor:f,onSetAvatarUrl:g,onSetRole:h}){let[i,j]=(0,e.useState)(!1),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(!1),[t,u]=(0,e.useState)(a.name),[v,w]=(0,e.useState)(a.role||""),x=(0,e.useRef)(null),y=(0,e.useRef)(null),z=(0,e.useRef)(null),A=()=>{c(t.trim()),q(!1)},B=()=>{h(v.trim()),s(!1)},C=!!a.avatarUrl;return(0,d.jsxs)("div",{className:"relative",ref:x,children:[(0,d.jsx)("button",{onClick:()=>j(!i),className:"w-9 h-9 rounded-full flex items-center justify-center text-xs font-medium overflow-hidden border-2 transition-all hover:scale-105",style:{borderColor:i?"var(--accent)":"transparent",boxShadow:i?"0 0 0 2px var(--accent), 0 2px 8px rgba(0,0,0,0.1)":"0 1px 3px rgba(0,0,0,0.08)"},children:C?(0,d.jsx)("img",{src:a.avatarUrl,alt:"Avatar",className:"w-full h-full object-cover"}):(0,d.jsx)("span",{className:"w-full h-full flex items-center justify-center",style:{backgroundColor:a.bannerColor,color:"#fff"},children:b})}),i&&(0,d.jsxs)("div",{className:"absolute right-0 top-full mt-2 w-80 border z-50 overflow-hidden",style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)",borderRadius:"var(--radius-lg)",boxShadow:"var(--shadow-xl)",animation:"fadeIn 150ms ease-out"},children:[(0,d.jsxs)("div",{className:"relative px-5 pt-5 pb-4",style:{background:`linear-gradient(135deg, ${a.bannerColor} 0%, ${o(a.bannerColor,.4)} 50%, ${a.bannerColor} 100%)`},children:[(0,d.jsx)("div",{className:"absolute inset-0 opacity-10",style:{backgroundImage:"radial-gradient(circle at 20% 50%, white 1px, transparent 1px), radial-gradient(circle at 80% 20%, white 1px, transparent 1px)",backgroundSize:"30px 30px"}}),(0,d.jsxs)("div",{className:"relative flex items-end gap-4",children:[(0,d.jsxs)("div",{className:"relative group",children:[(0,d.jsx)("div",{className:"w-16 h-16 rounded-xl overflow-hidden border-3 flex-shrink-0",style:{borderColor:"rgba(255,255,255,0.3)",boxShadow:"0 4px 12px rgba(0,0,0,0.2)"},children:C?(0,d.jsx)("img",{src:a.avatarUrl,alt:"Avatar",className:"w-full h-full object-cover"}):(0,d.jsx)("div",{className:"w-full h-full flex items-center justify-center text-xl font-bold",style:{backgroundColor:a.bannerColor,color:"#fff"},children:b})}),(0,d.jsx)("div",{className:"absolute inset-0 rounded-xl flex items-center justify-center opacity-0 group-hover:opacity-100 cursor-pointer transition-opacity",style:{backgroundColor:"rgba(0,0,0,0.4)"},onClick:a=>{a.stopPropagation(),document.getElementById("avatar-gallery")?.scrollIntoView({behavior:"smooth"})},children:(0,d.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"white",children:(0,d.jsx)("path",{d:"M14 11V14H2V11H0V14C0 15.1.9 16 2 16H14C15.1 16 16 15.1 16 14V11H14ZM7 9L4.5 6.5L3 8L8 13L13 8L11.5 6.5L9 9V0H7V9Z"})})})]}),(0,d.jsxs)("div",{className:"flex-1 min-w-0 pb-1",children:[p?(0,d.jsx)("input",{ref:y,value:t,onChange:a=>u(a.target.value),onBlur:A,onKeyDown:a=>{"Enter"===a.key&&A(),"Escape"===a.key&&q(!1)},className:"w-full bg-white/20 backdrop-blur-sm outline-none text-white text-sm font-semibold px-2 py-1 rounded placeholder-white/50",placeholder:"Your name..."}):(0,d.jsx)("div",{className:"text-sm font-semibold text-white cursor-pointer hover:opacity-80 truncate",onClick:()=>{u(a.name),q(!0)},children:a.name||"Click to set name"}),(0,d.jsx)("div",{className:"text-[11px] mt-0.5 px-2 py-0.5 rounded-full inline-block cursor-pointer hover:opacity-80",style:{backgroundColor:"rgba(255,255,255,0.15)",color:"rgba(255,255,255,0.9)"},onClick:()=>{w(a.role||""),s(!0)},children:r?(0,d.jsx)("input",{ref:z,value:v,onChange:a=>w(a.target.value),onBlur:B,onKeyDown:a=>{"Enter"===a.key&&B(),"Escape"===a.key&&s(!1)},className:"bg-transparent outline-none text-white text-[11px] w-24 placeholder-white/50",placeholder:"Your role..."}):a.role||"Set role..."})]})]})]}),(0,d.jsxs)("div",{className:"px-4 pt-3 pb-2",children:[(0,d.jsx)("label",{className:"text-[10px] font-semibold uppercase tracking-wider block mb-2",style:{color:"var(--text-tertiary)"},children:"Role"}),(0,d.jsx)("div",{className:"flex flex-wrap gap-1.5",children:n.map(b=>(0,d.jsx)("button",{onClick:()=>h(b),className:"px-2 py-1 text-[10px] rounded-md border transition-colors",style:{borderColor:a.role===b?"var(--accent)":"var(--border)",color:a.role===b?"var(--accent)":"var(--text-secondary)",backgroundColor:a.role===b?"var(--accent)10":"transparent",fontWeight:a.role===b?600:400},children:b},b))})]}),(0,d.jsxs)("div",{id:"avatar-gallery",className:"px-4 pt-2 pb-3",children:[(0,d.jsx)("label",{className:"text-[10px] font-semibold uppercase tracking-wider block mb-2",style:{color:"var(--text-tertiary)"},children:"Choose Avatar"}),(0,d.jsx)("div",{className:"grid grid-cols-6 gap-2",children:l.map((b,c)=>(0,d.jsx)("button",{onClick:()=>g(b),className:"w-10 h-10 rounded-lg overflow-hidden border-2 transition-all hover:scale-110 hover:shadow-md",style:{borderColor:a.avatarUrl===b?"var(--accent)":"transparent",boxShadow:a.avatarUrl===b?"0 0 0 2px var(--accent)":"none"},children:(0,d.jsx)("img",{src:b,alt:`Avatar ${c+11}`,className:"w-full h-full object-cover",loading:"lazy"})},b))}),(0,d.jsx)("div",{className:"grid grid-cols-6 gap-2 mt-2",children:m.map((b,c)=>(0,d.jsx)("button",{onClick:()=>g(b),className:"w-10 h-10 rounded-lg overflow-hidden border-2 transition-all hover:scale-110 hover:shadow-md",style:{borderColor:a.avatarUrl===b?"var(--accent)":"transparent",boxShadow:a.avatarUrl===b?"0 0 0 2px var(--accent)":"none"},children:(0,d.jsx)("img",{src:b,alt:`Avatar ${c+23}`,className:"w-full h-full object-cover",loading:"lazy"})},b))})]}),(0,d.jsxs)("div",{className:"px-4 pb-4",children:[(0,d.jsx)("label",{className:"text-[10px] font-semibold uppercase tracking-wider block mb-2",style:{color:"var(--text-tertiary)"},children:"Banner Color"}),(0,d.jsx)("div",{className:"grid grid-cols-8 gap-1.5",children:k.T7.map(b=>(0,d.jsx)("button",{onClick:()=>f(b),className:"w-6 h-6 rounded-full transition-transform hover:scale-110 relative overflow-hidden",style:{background:`linear-gradient(135deg, ${function(a,b){let c=parseInt(a.replace("#",""),16),d=Math.max(0,(c>>16)-Math.round((c>>16)*.3)),e=Math.max(0,(c>>8&255)-Math.round((c>>8&255)*.3)),f=Math.max(0,(255&c)-Math.round((255&c)*b));return`#${(d<<16|e<<8|f).toString(16).padStart(6,"0")}`}(b,.3)} 0%, ${b} 50%, ${o(b,.3)} 100%)`,outline:a.bannerColor!==b||a.avatarUrl?"none":"2px solid var(--accent)",outlineOffset:2},children:(0,d.jsx)("div",{className:"absolute inset-0",style:{background:"linear-gradient(135deg, transparent 0%, rgba(255,255,255,0.3) 50%, transparent 100%)",animation:"shimmer 2s ease-in-out infinite"}})},b))})]}),(0,d.jsxs)("div",{className:"px-4 py-2.5 border-t flex items-center justify-between",style:{borderColor:"var(--border)",backgroundColor:"var(--bg-secondary)"},children:[(0,d.jsx)("span",{className:"text-[10px]",style:{color:"var(--text-tertiary)"},children:"Profile data stored locally"}),(0,d.jsx)("button",{onClick:()=>j(!1),className:"text-[10px] font-medium px-2 py-0.5 rounded",style:{color:"var(--accent)"},children:"Done"})]})]})]})}function q({open:a,onClose:b,profile:c,initials:f,stats:g}){let[h,i]=(0,e.useState)(!1);if(!a)return null;let j=`My Test Lah!:
|
|
2
|
+
${g.projects} Projects | ${g.testCases} Cases | ${g.passRate}% Pass Rate`,k=async()=>{if(navigator.share)try{await navigator.share({title:"Test Lah! Stats",text:j})}catch{}else navigator.clipboard.writeText(j)};return(0,d.jsx)("div",{className:"fixed inset-0 z-[300] flex items-center justify-center",style:{backgroundColor:"rgba(0,0,0,0.3)",animation:"fadeIn 150ms ease-out"},onClick:b,children:(0,d.jsxs)("div",{className:"w-72 mx-4",onClick:a=>a.stopPropagation(),style:{perspective:"1000px"},children:[(0,d.jsxs)("div",{className:"relative w-full",style:{transformStyle:"preserve-3d",transform:h?"rotateY(180deg)":"rotateY(0)",transition:"transform 0.5s ease",height:"380px"},children:[(0,d.jsxs)("div",{className:"absolute inset-0 rounded-xl overflow-hidden border",style:{backfaceVisibility:"hidden",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)"},children:[(0,d.jsx)("div",{className:"absolute inset-0",style:{background:`linear-gradient(160deg, ${function(a,b){let c=parseInt(a.replace("#",""),16),d=Math.max(0,(c>>16)-Math.round((c>>16)*.25)),e=Math.max(0,(c>>8&255)-Math.round((c>>8&255)*b)),f=Math.max(0,(255&c)-Math.round((255&c)*b));return`#${(d<<16|e<<8|f).toString(16).padStart(6,"0")}`}(c.bannerColor,.25)} 0%, ${c.bannerColor} 50%, ${function(a,b){let c=parseInt(a.replace("#",""),16),d=Math.min(255,(c>>16)+Math.round((255-(c>>16))*.2)),e=Math.min(255,(c>>8&255)+Math.round((255-(c>>8&255))*b)),f=Math.min(255,(255&c)+Math.round((255-(255&c))*b));return`#${(d<<16|e<<8|f).toString(16).padStart(6,"0")}`}(c.bannerColor,.2)} 100%)`}}),(0,d.jsxs)("div",{className:"relative h-full flex flex-col items-center justify-center px-4",children:[(0,d.jsx)("div",{className:"w-20 h-20 rounded-xl overflow-hidden border-2 mb-3",style:{borderColor:"rgba(255,255,255,0.3)"},children:c.avatarUrl?(0,d.jsx)("img",{src:c.avatarUrl,alt:"Avatar",className:"w-full h-full object-cover"}):(0,d.jsx)("div",{className:"w-full h-full flex items-center justify-center text-2xl font-bold",style:{backgroundColor:"rgba(0,0,0,0.2)",color:"#fff"},children:f})}),(0,d.jsx)("h3",{className:"text-base font-semibold text-white drop-shadow-sm",children:c.name||"Anonymous Tester"}),(0,d.jsx)("p",{className:"text-xs mt-0.5 text-white/70",children:c.role||"No role set"}),(0,d.jsxs)("div",{className:"flex items-center gap-4 mt-4",children:[(0,d.jsx)(r,{value:g.projects,label:"Projects"}),(0,d.jsx)("div",{className:"w-px h-6 bg-white/20"}),(0,d.jsx)(r,{value:g.testCases,label:"Cases"}),(0,d.jsx)("div",{className:"w-px h-6 bg-white/20"}),(0,d.jsx)(r,{value:`${g.passRate}%`,label:"Pass"})]}),(0,d.jsx)("button",{onClick:()=>i(!0),className:"mt-5 px-4 py-1.5 text-[11px] font-medium rounded-full transition-colors",style:{backgroundColor:"rgba(255,255,255,0.2)",color:"#fff"},children:"View stats"})]})]}),(0,d.jsx)("div",{className:"absolute inset-0 rounded-xl overflow-hidden border",style:{backfaceVisibility:"hidden",transform:"rotateY(180deg)",borderColor:"var(--border)",backgroundColor:"var(--bg-card)",boxShadow:"var(--shadow-lg)"},children:(0,d.jsxs)("div",{className:"h-full flex flex-col",children:[(0,d.jsxs)("div",{className:"px-4 py-3 border-b flex items-center justify-between",style:{borderColor:"var(--border)"},children:[(0,d.jsx)("span",{className:"text-xs font-semibold",style:{color:"var(--text-primary)"},children:"Statistics"}),(0,d.jsx)("button",{onClick:()=>i(!1),className:"text-[10px] px-2 py-0.5 rounded border transition-colors hover:bg-[var(--bg-secondary)]",style:{color:"var(--text-tertiary)",borderColor:"var(--border)"},children:"Back"})]}),(0,d.jsxs)("div",{className:"flex-1 overflow-auto p-4 space-y-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-1.5",children:[(0,d.jsx)("span",{className:"text-[10px] uppercase tracking-wider",style:{color:"var(--text-tertiary)"},children:"Pass Rate"}),(0,d.jsxs)("span",{className:"text-sm font-semibold",style:{color:g.passRate>=80?"var(--status-pass-text)":g.passRate>=50?"var(--status-skip-text)":"var(--status-fail-text)"},children:[g.passRate,"%"]})]}),(0,d.jsx)("div",{className:"h-1.5 rounded-full overflow-hidden",style:{backgroundColor:"var(--bg-secondary)"},children:(0,d.jsx)("div",{className:"h-full rounded-full",style:{width:`${g.passRate}%`,backgroundColor:g.passRate>=80?"var(--status-pass-text)":g.passRate>=50?"var(--status-skip-text)":"var(--status-fail-text)"}})})]}),(0,d.jsxs)("div",{className:"grid grid-cols-4 gap-1.5",children:[(0,d.jsx)(s,{label:"Pass",value:g.pass,color:"var(--status-pass-text)"}),(0,d.jsx)(s,{label:"Fail",value:g.fail,color:"var(--status-fail-text)"}),(0,d.jsx)(s,{label:"Skip",value:g.skip,color:"var(--status-skip-text)"}),(0,d.jsx)(s,{label:"New",value:g.untested})]}),(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)(t,{label:"Test Cases",value:g.testCases}),(0,d.jsx)(t,{label:"Flow Nodes",value:g.nodes}),(0,d.jsx)(t,{label:"Edges",value:g.edges}),(0,d.jsx)(t,{label:"Projects",value:g.projects})]}),(0,d.jsxs)("button",{onClick:k,className:"w-full px-3 py-2 text-[11px] font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)] flex items-center justify-center gap-1.5",style:{borderColor:"var(--border)",color:"var(--text-secondary)"},children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M4 12v8a2 2 0 002 2h12a2 2 0 002-2v-8"}),(0,d.jsx)("polyline",{points:"16 6 12 2 8 6"}),(0,d.jsx)("line",{x1:"12",y1:"2",x2:"12",y2:"15"})]}),"Share"]})]})]})})]}),(0,d.jsx)("button",{onClick:b,className:"w-full mt-2 px-3 py-2 text-[11px] font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)]",style:{borderColor:"var(--border)",color:"var(--text-secondary)",backgroundColor:"var(--bg-card)"},children:"Close"})]})})}function r({value:a,label:b}){return(0,d.jsxs)("div",{className:"text-center",children:[(0,d.jsx)("div",{className:"text-sm font-semibold text-white",children:a}),(0,d.jsx)("div",{className:"text-[9px] uppercase tracking-wider text-white/60",children:b})]})}function s({label:a,value:b,color:c}){return(0,d.jsxs)("div",{className:"py-2 rounded-lg text-center",style:{backgroundColor:"var(--bg-secondary)"},children:[(0,d.jsx)("div",{className:"text-sm font-medium",style:{color:c??"var(--text-secondary)"},children:b}),(0,d.jsx)("div",{className:"text-[8px] uppercase tracking-wider",style:{color:"var(--text-tertiary)"},children:a})]})}function t({label:a,value:b}){return(0,d.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 rounded-lg",style:{backgroundColor:"var(--bg-secondary)"},children:[(0,d.jsx)("span",{className:"text-[11px]",style:{color:"var(--text-tertiary)"},children:a}),(0,d.jsx)("span",{className:"text-xs font-medium",style:{color:"var(--text-primary)"},children:b})]})}var u=c(64271);function v(){let{projects:a,activeProject:b,activeProjectId:c,profile:h,profileInitials:k,setProfileName:l,setProfileBannerColor:m,setProfileAvatarUrl:n,setProfileRole:o}=(0,g.M)(),{logout:r}=(0,j.A)(),s=(0,f.useRouter)(),t=(0,f.usePathname)(),{startProgress:v,completeProgress:x}=(0,u.p1)(),[y,z]=(0,e.useState)(!1),[A,B]=(0,e.useState)(!1),C=Object.values(a),D=(0,e.useMemo)(()=>{let a=C.flatMap(a=>Object.values(a.testCases).flat()),b=a.length,c=a.filter(a=>"pass"===a.status).length,d=a.filter(a=>"fail"===a.status).length,e=a.filter(a=>"skip"===a.status).length,f=a.filter(a=>"untested"===a.status).length,g=C.reduce((a,b)=>a+b.flows.length,0),h=C.reduce((a,b)=>a+(b.edges??[]).length,0),i=b-e,j=i>0?Math.round(c/i*100):0;return{projects:C.length,testCases:b,passRate:j,nodes:g,edges:h,pass:c,fail:d,skip:e,untested:f}},[C]),E=t.startsWith("/integrations")?"integrations":"projects";return(0,d.jsxs)("header",{className:"flex flex-col border-b flex-shrink-0 relative",style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)"},children:[(0,d.jsx)("div",{className:"absolute inset-0 overflow-hidden flex items-center justify-center pointer-events-none group/duck",children:(0,d.jsx)("img",{src:"https://static.vecteezy.com/system/resources/thumbnails/067/162/149/small/cute-duck-meme-sticker-transparent-cute-illustration-free-png.png",alt:"",className:"h-[85%] object-contain select-none transition-all duration-300 group-hover/duck:scale-110 group-hover/duck:opacity-[0.15] cursor-pointer",style:{opacity:.09,pointerEvents:"auto"},onClick:()=>s.push("/projects"),title:"Quack! \uD83E\uDD86"})}),(0,d.jsxs)("div",{className:"relative z-10 flex items-center justify-between px-6 py-2.5",children:[(0,d.jsx)("div",{className:"flex items-center gap-3",children:(0,d.jsxs)(i(),{href:"/projects",className:"flex items-center gap-2",children:[(0,d.jsx)("div",{className:"w-8 h-8 rounded-md overflow-hidden bg-white flex-shrink-0",style:{boxShadow:"0 1px 4px rgba(0,0,0,0.08)"},children:(0,d.jsx)("img",{src:"https://static.vecteezy.com/system/resources/thumbnails/067/162/149/small/cute-duck-meme-sticker-transparent-cute-illustration-free-png.png",alt:"Logo",width:32,height:32,className:"w-full h-full object-contain"})}),(0,d.jsx)("span",{className:"shimmer-text text-sm font-bold tracking-wide select-none",style:{background:"linear-gradient(90deg, var(--text-primary) 0%, var(--text-primary) 40%, #FFD54F 50%, var(--text-primary) 60%, var(--text-primary) 100%)",backgroundSize:"200% 100%",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",backgroundClip:"text",animation:"shimmerText 3s ease-in-out infinite"},children:"Test Lah!"})]})}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("button",{onClick:()=>z(!0),className:"hidden md:block px-3 py-1.5 text-[11px] font-medium rounded-md border transition-colors hover:bg-[var(--bg-secondary)]",style:{borderColor:"var(--border)",color:"var(--text-secondary)"},children:"My Card"}),(0,d.jsx)("div",{className:"hidden md:block w-px h-5 mx-0.5",style:{backgroundColor:"var(--border)"}}),(0,d.jsx)("div",{className:"relative z-[60]",children:(0,d.jsx)(p,{profile:h,initials:k,onSetName:l,onSetBannerColor:m,onSetAvatarUrl:n,onSetRole:o})}),(0,d.jsx)("button",{onClick:()=>{B(!0)},className:"w-8 h-8 flex items-center justify-center text-xs rounded-md border transition-colors hover:bg-[var(--bg-secondary)] hover:border-[var(--status-fail-text)]",style:{borderColor:"var(--border)",color:"var(--text-tertiary)"},title:"Logout",children:(0,d.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:(0,d.jsx)("path",{d:"M5 2H3.5A1.5 1.5 0 002 3.5v7A1.5 1.5 0 003.5 12H5M9 10l3-3-3-3M6 7h6",stroke:"currentColor",strokeWidth:"1.3",strokeLinecap:"round",strokeLinejoin:"round"})})})]})]}),(0,d.jsxs)("div",{className:"relative z-10 flex items-center gap-1 px-6 pb-1.5",children:[(0,d.jsx)(w,{label:"All Projects",href:"/projects",icon:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 14 14",fill:"none",children:[(0,d.jsx)("rect",{x:"1",y:"1",width:"5",height:"5",rx:"1",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("rect",{x:"8",y:"1",width:"5",height:"5",rx:"1",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("rect",{x:"1",y:"8",width:"5",height:"5",rx:"1",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("rect",{x:"8",y:"8",width:"5",height:"5",rx:"1",stroke:"currentColor",strokeWidth:"1.2",fill:"none"})]}),active:"projects"===E}),(0,d.jsx)(w,{label:"Integrations",href:"/integrations",icon:(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 14 14",fill:"none",children:[(0,d.jsx)("circle",{cx:"5",cy:"5",r:"2.5",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("circle",{cx:"9",cy:"9",r:"2.5",stroke:"currentColor",strokeWidth:"1.2",fill:"none"}),(0,d.jsx)("path",{d:"M7.5 5.5L6.5 8.5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round"})]}),active:"integrations"===E})]}),(0,d.jsx)(q,{open:y,onClose:()=>z(!1),profile:h,initials:k,stats:D}),A&&(0,d.jsx)("div",{className:"fixed inset-0 z-[400] flex items-center justify-center",style:{backgroundColor:"rgba(0,0,0,0.3)",animation:"fadeIn 150ms ease-out"},onClick:()=>B(!1),children:(0,d.jsxs)("div",{className:"w-full max-w-sm mx-4 rounded-xl border overflow-hidden",style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)",animation:"fadeInUp 200ms ease-out"},onClick:a=>a.stopPropagation(),children:[(0,d.jsxs)("div",{className:"px-6 pt-6 pb-4 text-center",children:[(0,d.jsx)("div",{className:"w-14 h-14 mx-auto mb-4 rounded-full flex items-center justify-center",style:{backgroundColor:"var(--status-skip-bg)"},children:(0,d.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 24 24",fill:"none",stroke:"var(--status-skip-text)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4"}),(0,d.jsx)("polyline",{points:"16 17 21 12 16 7"}),(0,d.jsx)("line",{x1:"21",y1:"12",x2:"9",y2:"12"})]})}),(0,d.jsx)("h3",{className:"text-base font-semibold mb-2",style:{color:"var(--text-primary)"},children:"Mau Keluar? Sedekahnya mana??"}),(0,d.jsx)("p",{className:"text-xs leading-relaxed",style:{color:"var(--text-tertiary)"},children:"Sebelum keluar, mungkin bisa traktir developer secangkir kopi? ☕"})]}),(0,d.jsxs)("div",{className:"px-6 pb-5 flex gap-2",children:[(0,d.jsx)("button",{onClick:()=>B(!1),className:"flex-1 px-3 py-2.5 text-xs font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)]",style:{borderColor:"var(--border)",color:"var(--text-secondary)"},children:"Batal"}),(0,d.jsx)("button",{onClick:()=>{B(!1),v("Logging out..."),r(),setTimeout(()=>{x("Logged out!"),s.push("/login")},500)},className:"flex-1 px-3 py-2.5 text-xs font-medium rounded-lg transition-opacity hover:opacity-80",style:{backgroundColor:"var(--status-fail-text)",color:"#fff"},children:"Keluar"})]})]})})]})}function w({label:a,icon:b,active:c,href:e,badge:f}){return(0,d.jsxs)(i(),{href:e,className:"flex items-center gap-2 px-3 py-2 text-xs font-medium rounded-t-md transition-colors relative",style:{color:c?"var(--accent)":"var(--text-tertiary)",backgroundColor:c?"var(--bg-secondary)":"transparent"},children:[b,a,f&&(0,d.jsx)("span",{className:"ml-1 px-1.5 py-0.5 text-[9px] font-semibold rounded-full leading-none",style:{backgroundColor:c?"var(--accent)":"var(--bg-secondary)",color:c?"#fff":"var(--text-tertiary)"},children:f}),c&&(0,d.jsx)("div",{className:"absolute bottom-0 left-2 right-2 h-0.5 rounded-t-full",style:{backgroundColor:"var(--accent)"}})]})}var x=c(42423);function y({children:a}){(0,f.useRouter)();let{isLoggedIn:b,loaded:c}=(0,j.A)();return c?b?(0,d.jsx)(d.Fragment,{children:a}):null:(0,d.jsx)("div",{className:"h-screen flex items-center justify-center",style:{backgroundColor:"var(--bg-primary)"},children:(0,d.jsx)("div",{className:"text-sm",style:{color:"var(--text-tertiary)"},children:"Loading..."})})}function z(){let{undo:a,redo:b,canUndo:c,canRedo:d}=(0,g.M)();return null}function A({children:a}){let{dialog:b}=(0,g.M)();return(0,d.jsxs)(d.Fragment,{children:[a,(0,d.jsx)(x.q,{dialog:b})]})}function B({children:a}){return(0,d.jsx)(y,{children:(0,d.jsx)(g.q,{children:(0,d.jsx)(A,{children:(0,d.jsxs)("div",{className:"h-screen flex flex-col",style:{backgroundColor:"var(--bg-primary)"},children:[(0,d.jsx)(z,{}),(0,d.jsx)(v,{}),(0,d.jsx)("div",{className:"flex-1 min-h-0",children:a})]})})})})}},26239:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call Providers() from the server but Providers is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/sltr91025/code-repository/open-source/test-lah/src/components/shared/Providers.tsx","Providers")},34776:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});var d=c(38301);function e(a){try{sessionStorage.setItem("qa-auth",JSON.stringify(a))}catch{}}function f(){let[a,b]=(0,d.useState)({name:"",isLoggedIn:!1}),[c,f]=(0,d.useState)(!1),g=(0,d.useCallback)(a=>{let c={name:a,isLoggedIn:!0};e(c),b(c)},[]),h=(0,d.useCallback)(()=>{let a={name:"",isLoggedIn:!1};e(a),b(a)},[]);return{...a,loaded:c,login:g,logout:h}}},35473:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>f});var d=c(21124),e=c(64271);function f({children:a}){return(0,d.jsx)(e.Vx,{children:a})}},37687:(a,b,c)=>{Promise.resolve().then(c.bind(c,26239))},42423:(a,b,c)=>{"use strict";c.d(b,{q:()=>g,s:()=>f});var d=c(21124),e=c(38301);function f(){let[a,b]=(0,e.useState)(null),c=(0,e.useCallback)((a,c)=>new Promise(d=>{b({type:"alert",title:a,message:c,resolve:()=>{b(null),d()}})}),[]);return{dialog:a,alert:c,confirm:(0,e.useCallback)((a,c)=>new Promise(d=>{b({type:"confirm",title:a,message:c,resolve:a=>{b(null),d(!0===a)}})}),[]),prompt:(0,e.useCallback)((a,c,d="")=>new Promise(e=>{b({type:"prompt",title:a,message:c,defaultValue:d,resolve:a=>{b(null),e("string"==typeof a?a:null)}})}),[])}}function g({dialog:a}){let[b,c]=(0,e.useState)(""),f=(0,e.useRef)(null);return a?(0,d.jsx)("div",{className:"fixed inset-0 z-[400] flex items-center justify-center",style:{backgroundColor:"rgba(0,0,0,0.3)",animation:"fadeIn 150ms ease-out"},onClick:()=>a.resolve("prompt"===a.type&&null),children:(0,d.jsx)("div",{className:"relative w-full max-w-sm mx-4",onClick:a=>a.stopPropagation(),children:(0,d.jsx)("div",{className:"p-[2px] rounded-xl overflow-hidden",style:{background:"linear-gradient(135deg, #9E7AFF 0%, #FE8BBB 50%, #9E7AFF 100%)",backgroundSize:"200% 200%",animation:"borderShine 3s linear infinite"},children:(0,d.jsxs)("div",{className:"rounded-[10px] p-5",style:{backgroundColor:"var(--bg-card)",boxShadow:"var(--shadow-xl)"},children:[(0,d.jsx)("h3",{className:"text-sm font-semibold mb-2",style:{color:"var(--text-primary)"},children:a.title}),(0,d.jsx)("p",{className:"text-xs mb-4",style:{color:"var(--text-secondary)"},children:a.message}),"prompt"===a.type&&(0,d.jsx)("input",{ref:f,value:b,onChange:a=>c(a.target.value),onKeyDown:c=>{"Enter"===c.key&&a.resolve(b.trim()||null)},className:"w-full px-3 py-2 text-sm rounded-lg border outline-none transition-colors focus:border-[var(--accent)] mb-4",style:{borderColor:"var(--border)",backgroundColor:"var(--bg-secondary)",color:"var(--text-primary)"},placeholder:"Enter value..."}),(0,d.jsxs)("div",{className:"flex gap-2 justify-end",children:["alert"!==a.type&&(0,d.jsx)("button",{onClick:()=>a.resolve("prompt"===a.type&&null),className:"px-3 py-1.5 text-xs font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)]",style:{borderColor:"var(--border)",color:"var(--text-secondary)"},children:"Cancel"}),(0,d.jsx)("button",{onClick:()=>{"confirm"===a.type?a.resolve(!0):"prompt"===a.type?a.resolve(b.trim()||null):a.resolve(null)},className:"px-3 py-1.5 text-xs font-medium rounded-lg transition-opacity hover:opacity-80",style:{backgroundColor:"var(--accent)",color:"var(--bg-primary)"},children:"confirm"===a.type?"Confirm":"OK"})]})]})})})}):null}},44309:(a,b,c)=>{Promise.resolve().then(c.bind(c,22048))},51472:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>i,metadata:()=>h});var d=c(75338),e=c(76555),f=c.n(e);c(61135);var g=c(26239);let h={title:"Test Lah!",description:"Test Lah! — Your Boss's Favorite QA Tool",icons:{icon:"/favicon.ico"}};function i({children:a}){return(0,d.jsx)("html",{lang:"en",children:(0,d.jsx)("body",{className:f().variable,style:{fontFamily:"Inter, system-ui, sans-serif"},children:(0,d.jsx)(g.Providers,{children:a})})})}},61135:()=>{},64271:(a,b,c)=>{"use strict";c.d(b,{Vx:()=>h,p1:()=>g});var d=c(21124),e=c(38301);let f=(0,e.createContext)(null);function g(){let a=(0,e.useContext)(f);if(!a)throw Error("useProgress must be used within ProgressProvider");return a}function h({children:a}){let[b,c]=(0,e.useState)(0),[g,h]=(0,e.useState)(""),[i,j]=(0,e.useState)(!1),k=(0,e.useRef)(null),l=(0,e.useRef)(null),m=(0,e.useCallback)(()=>{k.current&&(clearInterval(k.current),k.current=null),l.current&&(clearTimeout(l.current),l.current=null)},[]),n=(0,e.useCallback)(()=>{j(!1),c(0),h("")},[]),o=(0,e.useCallback)(a=>{m(),c(0),h(a||""),j(!0),k.current=setInterval(()=>{c(a=>a>=90?(k.current&&clearInterval(k.current),k.current=null,90):a+15*Math.random())},300),l.current=setTimeout(()=>{n()},8e3)},[m,n]),p=(0,e.useCallback)((a,b)=>{c(Math.min(95,a)),b&&h(b)},[]),q=(0,e.useCallback)(a=>{m(),c(100),a&&h(a),setTimeout(()=>{n()},500)},[m,n]),r=(0,e.useCallback)(()=>{m(),n()},[m,n]);return(0,d.jsxs)(f.Provider,{value:{startProgress:o,updateProgress:p,completeProgress:q,cancelProgress:r,isProgressing:i},children:[a,(0,d.jsxs)("div",{className:"fixed bottom-0 left-0 right-0 z-[600] transition-all duration-300 ease-out",style:{opacity:+!!i,transform:i?"translateY(0)":"translateY(100%)",pointerEvents:i?"auto":"none"},children:[(0,d.jsx)("div",{className:"h-1 w-full",style:{backgroundColor:"var(--bg-secondary)"},children:(0,d.jsx)("div",{className:"h-full transition-all duration-200 ease-out",style:{width:`${b}%`,backgroundColor:b>=100?"var(--status-pass-text)":"var(--accent)",boxShadow:b>=100?"0 0 10px var(--status-pass-text)":"none"}})}),g&&(0,d.jsxs)("div",{className:"flex items-center justify-center py-2 px-4 text-xs font-medium cursor-pointer",onClick:r,style:{backgroundColor:"var(--bg-card)",color:b>=100?"var(--status-pass-text)":"var(--text-secondary)",borderTop:"1px solid var(--border)"},children:[b>=100&&(0,d.jsx)("svg",{className:"mr-2",width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",children:(0,d.jsx)("path",{d:"M2 6l3 3 5-5",stroke:"var(--status-pass-text)",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),g]})]})]})}},66688:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,54160,23)),Promise.resolve().then(c.t.bind(c,31603,23)),Promise.resolve().then(c.t.bind(c,68495,23)),Promise.resolve().then(c.t.bind(c,75170,23)),Promise.resolve().then(c.t.bind(c,77526,23)),Promise.resolve().then(c.t.bind(c,78922,23)),Promise.resolve().then(c.t.bind(c,29234,23)),Promise.resolve().then(c.t.bind(c,12263,23)),Promise.resolve().then(c.bind(c,82146))},70440:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e});var d=c(97523);let e=async a=>[{type:"image/x-icon",sizes:"350x350",url:(0,d.fillMetadataSegment)(".",await a.params,"favicon.ico")+""}]},90831:(a,b,c)=>{Promise.resolve().then(c.bind(c,35473))},97788:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/sltr91025/code-repository/open-source/test-lah/src/app/(dashboard)/layout.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/sltr91025/code-repository/open-source/test-lah/src/app/(dashboard)/layout.tsx","default")}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
exports.id=692,exports.ids=[692],exports.modules={3421:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(71237),e=c(55088),f=c(17679);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},10641:(a,b,c)=>{"use strict";var d=c(55174);c.o(d,"NextResponse")&&c.d(b,{NextResponse:function(){return d.NextResponse}})},15622:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"URLPattern",{enumerable:!0,get:function(){return c}});let c="undefined"==typeof URLPattern?void 0:URLPattern},55174:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{ImageResponse:function(){return d.ImageResponse},NextRequest:function(){return e.NextRequest},NextResponse:function(){return f.NextResponse},URLPattern:function(){return h.URLPattern},after:function(){return i.after},connection:function(){return j.connection},unstable_rootParams:function(){return k.unstable_rootParams},userAgent:function(){return g.userAgent},userAgentFromString:function(){return g.userAgentFromString}});let d=c(98197),e=c(87129),f=c(71589),g=c(86005),h=c(15622),i=c(87522),j=c(65281),k=c(97324)},65281:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"connection",{enumerable:!0,get:function(){return j}});let d=c(29294),e=c(63033),f=c(26906),g=c(11938),h=c(82831),i=c(31716);function j(){let a=d.workAsyncStorage.getStore(),b=e.workUnitAsyncStorage.getStore();if(a){if(b&&"after"===b.phase&&!(0,i.isRequestAPICallableInsideAfter)())throw Object.defineProperty(Error(`Route ${a.route} used "connection" inside "after(...)". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but "after(...)" executes after the request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/canary/app/api-reference/functions/after`),"__NEXT_ERROR_CODE",{value:"E186",enumerable:!1,configurable:!0});if(a.forceStatic)return Promise.resolve(void 0);if(a.dynamicShouldError)throw Object.defineProperty(new g.StaticGenBailoutError(`Route ${a.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`connection\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E562",enumerable:!1,configurable:!0});if(b)switch(b.type){case"cache":{let b=Object.defineProperty(Error(`Route ${a.route} used "connection" inside "use cache". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual request, but caches must be able to be produced before a request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E752",enumerable:!1,configurable:!0});throw Error.captureStackTrace(b,j),a.invalidDynamicUsageError??=b,b}case"private-cache":{let b=Object.defineProperty(Error(`Route ${a.route} used "connection" inside "use cache: private". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual navigation request, but caches must be able to be produced before a navigation request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E753",enumerable:!1,configurable:!0});throw Error.captureStackTrace(b,j),a.invalidDynamicUsageError??=b,b}case"unstable-cache":throw Object.defineProperty(Error(`Route ${a.route} used "connection" inside a function cached with "unstable_cache(...)". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but caches must be able to be produced before a Request so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`),"__NEXT_ERROR_CODE",{value:"E1",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-runtime":return(0,h.makeHangingPromise)(b.renderSignal,a.route,"`connection()`");case"prerender-ppr":return(0,f.postponeWithTracking)(a.route,"connection",b.dynamicTracking);case"prerender-legacy":return(0,f.throwToInterruptStaticGeneration)("connection",a,b);case"request":return(0,f.trackDynamicDataInDynamicRender)(b),Promise.resolve(void 0)}}(0,e.throwForMissingRequestStore)("connection")}},71589:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"NextResponse",{enumerable:!0,get:function(){return l}});let d=c(33675),e=c(78001),f=c(17679),g=c(63036),h=c(33675),i=Symbol("internal response"),j=new Set([301,302,303,307,308]);function k(a,b){var c;if(null==a||null==(c=a.request)?void 0:c.headers){if(!(a.request.headers instanceof Headers))throw Object.defineProperty(Error("request.headers must be an instance of Headers"),"__NEXT_ERROR_CODE",{value:"E119",enumerable:!1,configurable:!0});let c=[];for(let[d,e]of a.request.headers)b.set("x-middleware-request-"+d,e),c.push(d);b.set("x-middleware-override-headers",c.join(","))}}class l extends Response{constructor(a,b={}){super(a,b);let c=this.headers,j=new Proxy(new h.ResponseCookies(c),{get(a,e,f){switch(e){case"delete":case"set":return(...f)=>{let g=Reflect.apply(a[e],a,f),i=new Headers(c);return g instanceof h.ResponseCookies&&c.set("x-middleware-set-cookie",g.getAll().map(a=>(0,d.stringifyCookie)(a)).join(",")),k(b,i),g};default:return g.ReflectAdapter.get(a,e,f)}}});this[i]={cookies:j,url:b.url?new e.NextURL(b.url,{headers:(0,f.toNodeOutgoingHttpHeaders)(c),nextConfig:b.nextConfig}):void 0}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,url:this.url,body:this.body,bodyUsed:this.bodyUsed,headers:Object.fromEntries(this.headers),ok:this.ok,redirected:this.redirected,status:this.status,statusText:this.statusText,type:this.type}}get cookies(){return this[i].cookies}static json(a,b){let c=Response.json(a,b);return new l(c.body,c)}static redirect(a,b){let c="number"==typeof b?b:(null==b?void 0:b.status)??307;if(!j.has(c))throw Object.defineProperty(RangeError('Failed to execute "redirect" on "response": Invalid status code'),"__NEXT_ERROR_CODE",{value:"E529",enumerable:!1,configurable:!0});let d="object"==typeof b?b:{},e=new Headers(null==d?void 0:d.headers);return e.set("Location",(0,f.validateURL)(a)),new l(null,{...d,headers:e,status:c})}static rewrite(a,b){let c=new Headers(null==b?void 0:b.headers);return c.set("x-middleware-rewrite",(0,f.validateURL)(a)),k(b,c),new l(null,{...b,headers:c})}static next(a){let b=new Headers(null==a?void 0:a.headers);return b.set("x-middleware-next","1"),k(a,b),new l(null,{...a,headers:b})}}},86005:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isBot:function(){return e},userAgent:function(){return g},userAgentFromString:function(){return f}});let d=function(a){return a&&a.__esModule?a:{default:a}}(c(86404));function e(a){return/Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Google-InspectionTool|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver/i.test(a)}function f(a){return{...(0,d.default)(a),isBot:void 0!==a&&e(a)}}function g({headers:a}){return f(a.get("user-agent")||void 0)}},86404:(a,b,c)=>{var d;(()=>{var e={226:function(e,f){!function(g,h){"use strict";var i="function",j="undefined",k="object",l="string",m="major",n="model",o="name",p="type",q="vendor",r="version",s="architecture",t="console",u="mobile",v="tablet",w="smarttv",x="wearable",y="embedded",z="Amazon",A="Apple",B="ASUS",C="BlackBerry",D="Browser",E="Chrome",F="Firefox",G="Google",H="Huawei",I="Microsoft",J="Motorola",K="Opera",L="Samsung",M="Sharp",N="Sony",O="Xiaomi",P="Zebra",Q="Facebook",R="Chromium OS",S="Mac OS",T=function(a,b){var c={};for(var d in a)b[d]&&b[d].length%2==0?c[d]=b[d].concat(a[d]):c[d]=a[d];return c},U=function(a){for(var b={},c=0;c<a.length;c++)b[a[c].toUpperCase()]=a[c];return b},V=function(a,b){return typeof a===l&&-1!==W(b).indexOf(W(a))},W=function(a){return a.toLowerCase()},X=function(a,b){if(typeof a===l)return a=a.replace(/^\s\s*/,""),typeof b===j?a:a.substring(0,350)},Y=function(a,b){for(var c,d,e,f,g,j,l=0;l<b.length&&!g;){var m=b[l],n=b[l+1];for(c=d=0;c<m.length&&!g&&m[c];)if(g=m[c++].exec(a))for(e=0;e<n.length;e++)j=g[++d],typeof(f=n[e])===k&&f.length>0?2===f.length?typeof f[1]==i?this[f[0]]=f[1].call(this,j):this[f[0]]=f[1]:3===f.length?typeof f[1]!==i||f[1].exec&&f[1].test?this[f[0]]=j?j.replace(f[1],f[2]):void 0:this[f[0]]=j?f[1].call(this,j,f[2]):void 0:4===f.length&&(this[f[0]]=j?f[3].call(this,j.replace(f[1],f[2])):h):this[f]=j||h;l+=2}},Z=function(a,b){for(var c in b)if(typeof b[c]===k&&b[c].length>0){for(var d=0;d<b[c].length;d++)if(V(b[c][d],a))return"?"===c?h:c}else if(V(b[c],a))return"?"===c?h:c;return a},$={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},_={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[r,[o,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[r,[o,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[o,r],[/opios[\/ ]+([\w\.]+)/i],[r,[o,K+" Mini"]],[/\bopr\/([\w\.]+)/i],[r,[o,K]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,/(ba?idubrowser)[\/ ]?([\w\.]+)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,/(heytap|ovi)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[o,r],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[r,[o,"UC"+D]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i],[r,[o,"WeChat(Win) Desktop"]],[/micromessenger\/([\w\.]+)/i],[r,[o,"WeChat"]],[/konqueror\/([\w\.]+)/i],[r,[o,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[r,[o,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[r,[o,"Yandex"]],[/(avast|avg)\/([\w\.]+)/i],[[o,/(.+)/,"$1 Secure "+D],r],[/\bfocus\/([\w\.]+)/i],[r,[o,F+" Focus"]],[/\bopt\/([\w\.]+)/i],[r,[o,K+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[r,[o,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[r,[o,"Dolphin"]],[/coast\/([\w\.]+)/i],[r,[o,K+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[r,[o,"MIUI "+D]],[/fxios\/([-\w\.]+)/i],[r,[o,F]],[/\bqihu|(qi?ho?o?|360)browser/i],[[o,"360 "+D]],[/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i],[[o,/(.+)/,"$1 "+D],r],[/(comodo_dragon)\/([\w\.]+)/i],[[o,/_/g," "],r],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i],[o,r],[/(metasr)[\/ ]?([\w\.]+)/i,/(lbbrowser)/i,/\[(linkedin)app\]/i],[o],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[o,Q],r],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(chromium|instagram)[\/ ]([-\w\.]+)/i],[o,r],[/\bgsa\/([\w\.]+) .*safari\//i],[r,[o,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[r,[o,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[r,[o,E+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[o,E+" WebView"],r],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[r,[o,"Android "+D]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[o,r],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[r,[o,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[r,o],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[o,[r,Z,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[o,r],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[o,"Netscape"],r],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[r,[o,F+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i,/panasonic;(viera)/i],[o,r],[/(cobalt)\/([\w\.]+)/i],[o,[r,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[s,"amd64"]],[/(ia32(?=;))/i],[[s,W]],[/((?:i[346]|x)86)[;\)]/i],[[s,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[s,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[s,"armhf"]],[/windows (ce|mobile); ppc;/i],[[s,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[s,/ower/,"",W]],[/(sun4\w)[;\)]/i],[[s,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[s,W]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[n,[q,L],[p,v]],[/\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[n,[q,L],[p,u]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[n,[q,A],[p,u]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[n,[q,A],[p,v]],[/(macintosh);/i],[n,[q,A]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[n,[q,M],[p,u]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[n,[q,H],[p,v]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[n,[q,H],[p,u]],[/\b(poco[\w ]+)(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[n,/_/g," "],[q,O],[p,u]],[/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[n,/_/g," "],[q,O],[p,v]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[n,[q,"OPPO"],[p,u]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[n,[q,"Vivo"],[p,u]],[/\b(rmx[12]\d{3})(?: bui|;|\))/i],[n,[q,"Realme"],[p,u]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[n,[q,J],[p,u]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[n,[q,J],[p,v]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[n,[q,"LG"],[p,v]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[n,[q,"LG"],[p,u]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[n,[q,"Lenovo"],[p,v]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[n,/_/g," "],[q,"Nokia"],[p,u]],[/(pixel c)\b/i],[n,[q,G],[p,v]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[n,[q,G],[p,u]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[n,[q,N],[p,u]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[n,"Xperia Tablet"],[q,N],[p,v]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[n,[q,"OnePlus"],[p,u]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[n,[q,z],[p,v]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[n,/(.+)/g,"Fire Phone $1"],[q,z],[p,u]],[/(playbook);[-\w\),; ]+(rim)/i],[n,q,[p,v]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[n,[q,C],[p,u]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[n,[q,B],[p,v]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[n,[q,B],[p,u]],[/(nexus 9)/i],[n,[q,"HTC"],[p,v]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[q,[n,/_/g," "],[p,u]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[n,[q,"Acer"],[p,v]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[n,[q,"Meizu"],[p,u]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[q,n,[p,u]],[/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[q,n,[p,v]],[/(surface duo)/i],[n,[q,I],[p,v]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[n,[q,"Fairphone"],[p,u]],[/(u304aa)/i],[n,[q,"AT&T"],[p,u]],[/\bsie-(\w*)/i],[n,[q,"Siemens"],[p,u]],[/\b(rct\w+) b/i],[n,[q,"RCA"],[p,v]],[/\b(venue[\d ]{2,7}) b/i],[n,[q,"Dell"],[p,v]],[/\b(q(?:mv|ta)\w+) b/i],[n,[q,"Verizon"],[p,v]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[n,[q,"Barnes & Noble"],[p,v]],[/\b(tm\d{3}\w+) b/i],[n,[q,"NuVision"],[p,v]],[/\b(k88) b/i],[n,[q,"ZTE"],[p,v]],[/\b(nx\d{3}j) b/i],[n,[q,"ZTE"],[p,u]],[/\b(gen\d{3}) b.+49h/i],[n,[q,"Swiss"],[p,u]],[/\b(zur\d{3}) b/i],[n,[q,"Swiss"],[p,v]],[/\b((zeki)?tb.*\b) b/i],[n,[q,"Zeki"],[p,v]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[q,"Dragon Touch"],n,[p,v]],[/\b(ns-?\w{0,9}) b/i],[n,[q,"Insignia"],[p,v]],[/\b((nxa|next)-?\w{0,9}) b/i],[n,[q,"NextBook"],[p,v]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[q,"Voice"],n,[p,u]],[/\b(lvtel\-)?(v1[12]) b/i],[[q,"LvTel"],n,[p,u]],[/\b(ph-1) /i],[n,[q,"Essential"],[p,u]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[n,[q,"Envizen"],[p,v]],[/\b(trio[-\w\. ]+) b/i],[n,[q,"MachSpeed"],[p,v]],[/\btu_(1491) b/i],[n,[q,"Rotor"],[p,v]],[/(shield[\w ]+) b/i],[n,[q,"Nvidia"],[p,v]],[/(sprint) (\w+)/i],[q,n,[p,u]],[/(kin\.[onetw]{3})/i],[[n,/\./g," "],[q,I],[p,u]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[n,[q,P],[p,v]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[n,[q,P],[p,u]],[/smart-tv.+(samsung)/i],[q,[p,w]],[/hbbtv.+maple;(\d+)/i],[[n,/^/,"SmartTV"],[q,L],[p,w]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[q,"LG"],[p,w]],[/(apple) ?tv/i],[q,[n,A+" TV"],[p,w]],[/crkey/i],[[n,E+"cast"],[q,G],[p,w]],[/droid.+aft(\w)( bui|\))/i],[n,[q,z],[p,w]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[n,[q,M],[p,w]],[/(bravia[\w ]+)( bui|\))/i],[n,[q,N],[p,w]],[/(mitv-\w{5}) bui/i],[n,[q,O],[p,w]],[/Hbbtv.*(technisat) (.*);/i],[q,n,[p,w]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[q,X],[n,X],[p,w]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[p,w]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[q,n,[p,t]],[/droid.+; (shield) bui/i],[n,[q,"Nvidia"],[p,t]],[/(playstation [345portablevi]+)/i],[n,[q,N],[p,t]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[n,[q,I],[p,t]],[/((pebble))app/i],[q,n,[p,x]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[n,[q,A],[p,x]],[/droid.+; (glass) \d/i],[n,[q,G],[p,x]],[/droid.+; (wt63?0{2,3})\)/i],[n,[q,P],[p,x]],[/(quest( 2| pro)?)/i],[n,[q,Q],[p,x]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[q,[p,y]],[/(aeobc)\b/i],[n,[q,z],[p,y]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i],[n,[p,u]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[n,[p,v]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[p,v]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[p,u]],[/(android[-\w\. ]{0,9});.+buil/i],[n,[q,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[r,[o,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[r,[o,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[o,r],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[r,o]],os:[[/microsoft (windows) (vista|xp)/i],[o,r],[/(windows) nt 6\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,/(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i],[o,[r,Z,$]],[/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[o,"Windows"],[r,Z,$]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/ios;fbsv\/([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[r,/_/g,"."],[o,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[o,S],[r,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[r,o],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[o,r],[/\(bb(10);/i],[r,[o,C]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[r,[o,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[r,[o,F+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[r,[o,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[r,[o,"watchOS"]],[/crkey\/([\d\.]+)/i],[r,[o,E+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[o,R],r],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[o,r],[/(sunos) ?([\w\.\d]*)/i],[[o,"Solaris"],r],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[o,r]]},aa=function(a,b){if(typeof a===k&&(b=a,a=h),!(this instanceof aa))return new aa(a,b).getResult();var c=typeof g!==j&&g.navigator?g.navigator:h,d=a||(c&&c.userAgent?c.userAgent:""),e=c&&c.userAgentData?c.userAgentData:h,f=b?T(_,b):_,t=c&&c.userAgent==d;return this.getBrowser=function(){var a,b={};return b[o]=h,b[r]=h,Y.call(b,d,f.browser),b[m]=typeof(a=b[r])===l?a.replace(/[^\d\.]/g,"").split(".")[0]:h,t&&c&&c.brave&&typeof c.brave.isBrave==i&&(b[o]="Brave"),b},this.getCPU=function(){var a={};return a[s]=h,Y.call(a,d,f.cpu),a},this.getDevice=function(){var a={};return a[q]=h,a[n]=h,a[p]=h,Y.call(a,d,f.device),t&&!a[p]&&e&&e.mobile&&(a[p]=u),t&&"Macintosh"==a[n]&&c&&typeof c.standalone!==j&&c.maxTouchPoints&&c.maxTouchPoints>2&&(a[n]="iPad",a[p]=v),a},this.getEngine=function(){var a={};return a[o]=h,a[r]=h,Y.call(a,d,f.engine),a},this.getOS=function(){var a={};return a[o]=h,a[r]=h,Y.call(a,d,f.os),t&&!a[o]&&e&&"Unknown"!=e.platform&&(a[o]=e.platform.replace(/chrome os/i,R).replace(/macos/i,S)),a},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return d},this.setUA=function(a){return d=typeof a===l&&a.length>350?X(a,350):a,this},this.setUA(d),this};aa.VERSION="1.0.35",aa.BROWSER=U([o,r,m]),aa.CPU=U([s]),aa.DEVICE=U([n,q,p,t,u,w,v,x,y]),aa.ENGINE=aa.OS=U([o,r]),typeof f!==j?(e.exports&&(f=e.exports=aa),f.UAParser=aa):c.amdO?void 0===(d=(function(){return aa}).call(b,c,b,a))||(a.exports=d):typeof g!==j&&(g.UAParser=aa);var ab=typeof g!==j&&(g.jQuery||g.Zepto);if(ab&&!ab.ua){var ac=new aa;ab.ua=ac.getResult(),ab.ua.get=function(){return ac.getUA()},ab.ua.set=function(a){ac.setUA(a);var b=ac.getResult();for(var c in b)ab.ua[c]=b[c]}}}("object"==typeof window?window:this)}},f={};function g(a){var b=f[a];if(void 0!==b)return b.exports;var c=f[a]={exports:{}},d=!0;try{e[a].call(c.exports,c,c.exports,g),d=!1}finally{d&&delete f[a]}return c.exports}g.ab=__dirname+"/",a.exports=g(226)})()},87522:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),function(a,b){Object.keys(a).forEach(function(c){"default"===c||Object.prototype.hasOwnProperty.call(b,c)||Object.defineProperty(b,c,{enumerable:!0,get:function(){return a[c]}})})}(c(92588),b)},92588:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"after",{enumerable:!0,get:function(){return e}});let d=c(29294);function e(a){let b=d.workAsyncStorage.getStore();if(!b)throw Object.defineProperty(Error("`after` was called outside a request scope. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context"),"__NEXT_ERROR_CODE",{value:"E468",enumerable:!1,configurable:!0});let{afterContext:c}=b;return c.after(a)}},95736:(a,b,c)=>{"use strict";a.exports=c(44870)},97324:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getRootParam:function(){return n},unstable_rootParams:function(){return m}});let d=c(49290),e=c(26906),f=c(29294),g=c(63033),h=c(82831),i=c(84226),j=c(19121),k=c(310),l=new WeakMap;async function m(){(0,k.warnOnce)("`unstable_rootParams()` is deprecated and will be removed in an upcoming major release. Import specific root params from `next/root-params` instead.");let a=f.workAsyncStorage.getStore();if(!a)throw Object.defineProperty(new d.InvariantError("Missing workStore in unstable_rootParams"),"__NEXT_ERROR_CODE",{value:"E615",enumerable:!1,configurable:!0});let b=g.workUnitAsyncStorage.getStore();if(!b)throw Object.defineProperty(Error(`Route ${a.route} used \`unstable_rootParams()\` in Pages Router. This API is only available within App Router.`),"__NEXT_ERROR_CODE",{value:"E641",enumerable:!1,configurable:!0});switch(b.type){case"cache":case"unstable-cache":throw Object.defineProperty(Error(`Route ${a.route} used \`unstable_rootParams()\` inside \`"use cache"\` or \`unstable_cache\`. Support for this API inside cache scopes is planned for a future version of Next.js.`),"__NEXT_ERROR_CODE",{value:"E642",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":return function(a,b,c){switch(c.type){case"prerender-client":{let a="`unstable_rootParams`";throw Object.defineProperty(new d.InvariantError(`${a} must not be used within a client component. Next.js should be preventing ${a} from being included in client components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E693",enumerable:!1,configurable:!0})}case"prerender":{let d=c.fallbackRouteParams;if(d){for(let e in a)if(d.has(e)){let d=l.get(a);if(d)return d;let e=(0,h.makeHangingPromise)(c.renderSignal,b.route,"`unstable_rootParams`");return l.set(a,e),e}}break}case"prerender-ppr":{let d=c.fallbackRouteParams;if(d){for(let f in a)if(d.has(f))return function(a,b,c,d){let f=l.get(a);if(f)return f;let g={...a},h=Promise.resolve(g);return l.set(a,h),Object.keys(a).forEach(f=>{i.wellKnownProperties.has(f)||(b.has(f)?Object.defineProperty(g,f,{get(){let a=(0,i.describeStringPropertyAccess)("unstable_rootParams",f);"prerender-ppr"===d.type?(0,e.postponeWithTracking)(c.route,a,d.dynamicTracking):(0,e.throwToInterruptStaticGeneration)(a,c,d)},enumerable:!0}):h[f]=a[f])}),h}(a,d,b,c)}}}return Promise.resolve(a)}(b.rootParams,a,b);case"private-cache":case"prerender-runtime":case"request":return Promise.resolve(b.rootParams);default:return b}}function n(a){let b=`\`import('next/root-params').${a}()\``,c=f.workAsyncStorage.getStore();if(!c)throw Object.defineProperty(new d.InvariantError(`Missing workStore in ${b}`),"__NEXT_ERROR_CODE",{value:"E764",enumerable:!1,configurable:!0});let e=g.workUnitAsyncStorage.getStore();if(!e)throw Object.defineProperty(Error(`Route ${c.route} used ${b} outside of a Server Component. This is not allowed.`),"__NEXT_ERROR_CODE",{value:"E774",enumerable:!1,configurable:!0});let i=j.actionAsyncStorage.getStore();if(i){if(i.isAppRoute)throw Object.defineProperty(Error(`Route ${c.route} used ${b} inside a Route Handler. Support for this API in Route Handlers is planned for a future version of Next.js.`),"__NEXT_ERROR_CODE",{value:"E765",enumerable:!1,configurable:!0});if(i.isAction&&"action"===e.phase)throw Object.defineProperty(Error(`${b} was used inside a Server Action. This is not supported. Functions from 'next/root-params' can only be called in the context of a route.`),"__NEXT_ERROR_CODE",{value:"E766",enumerable:!1,configurable:!0})}switch(e.type){case"unstable-cache":case"cache":throw Object.defineProperty(Error(`Route ${c.route} used ${b} inside \`"use cache"\` or \`unstable_cache\`. Support for this API inside cache scopes is planned for a future version of Next.js.`),"__NEXT_ERROR_CODE",{value:"E760",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":var k=a,l=c,m=e,n=b;if("prerender-client"===m.type)throw Object.defineProperty(new d.InvariantError(`${n} must not be used within a client component. Next.js should be preventing ${n} from being included in client components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E693",enumerable:!1,configurable:!0});let p=m.rootParams;switch(m.type){case"prerender":if(m.fallbackRouteParams&&m.fallbackRouteParams.has(k))return(0,h.makeHangingPromise)(m.renderSignal,l.route,n);break;case"prerender-ppr":if(m.fallbackRouteParams&&m.fallbackRouteParams.has(k))return o(k,l,m,n)}return Promise.resolve(p[k])}return Promise.resolve(e.rootParams[a])}async function o(a,b,c,d){let f=(0,i.describeStringPropertyAccess)(d,a);switch(c.type){case"prerender-ppr":return(0,e.postponeWithTracking)(b.route,f,c.dynamicTracking);case"prerender-legacy":return(0,e.throwToInterruptStaticGeneration)(f,b,c)}}},98197:(a,b)=>{"use strict";function c(){throw Object.defineProperty(Error('ImageResponse moved from "next/server" to "next/og" since Next.js 14, please import from "next/og" instead'),"__NEXT_ERROR_CODE",{value:"E183",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"ImageResponse",{enumerable:!0,get:function(){return c}})}};
|
|
1
|
+
exports.id=692,exports.ids=[692],exports.modules={3421:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(71237),e=c(55088),f=c(17679);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},10641:(a,b,c)=>{"use strict";var d=c(55174);c.o(d,"NextResponse")&&c.d(b,{NextResponse:function(){return d.NextResponse}})},15622:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"URLPattern",{enumerable:!0,get:function(){return c}});let c="undefined"==typeof URLPattern?void 0:URLPattern},31716:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isRequestAPICallableInsideAfter:function(){return i},throwForSearchParamsAccessInUseCache:function(){return h},throwWithStaticGenerationBailoutError:function(){return f},throwWithStaticGenerationBailoutErrorWithDynamicError:function(){return g}});let d=c(11938),e=c(3295);function f(a,b){throw Object.defineProperty(new d.StaticGenBailoutError(`Route ${a} couldn't be rendered statically because it used ${b}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E576",enumerable:!1,configurable:!0})}function g(a,b){throw Object.defineProperty(new d.StaticGenBailoutError(`Route ${a} with \`dynamic = "error"\` couldn't be rendered statically because it used ${b}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E543",enumerable:!1,configurable:!0})}function h(a,b){let c=Object.defineProperty(Error(`Route ${a.route} used "searchParams" inside "use cache". Accessing dynamic request data inside a cache scope is not supported. If you need some search params inside a cached function await "searchParams" outside of the cached function and pass only the required search params as arguments to the cached function. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E779",enumerable:!1,configurable:!0});throw Error.captureStackTrace(c,b),a.invalidDynamicUsageError??=c,c}function i(){let a=e.afterTaskAsyncStorage.getStore();return(null==a?void 0:a.rootTaskSpawnPhase)==="action"}},55174:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{ImageResponse:function(){return d.ImageResponse},NextRequest:function(){return e.NextRequest},NextResponse:function(){return f.NextResponse},URLPattern:function(){return h.URLPattern},after:function(){return i.after},connection:function(){return j.connection},unstable_rootParams:function(){return k.unstable_rootParams},userAgent:function(){return g.userAgent},userAgentFromString:function(){return g.userAgentFromString}});let d=c(98197),e=c(87129),f=c(71589),g=c(86005),h=c(15622),i=c(87522),j=c(65281),k=c(97324)},65281:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"connection",{enumerable:!0,get:function(){return j}});let d=c(29294),e=c(63033),f=c(26906),g=c(11938),h=c(82831),i=c(31716);function j(){let a=d.workAsyncStorage.getStore(),b=e.workUnitAsyncStorage.getStore();if(a){if(b&&"after"===b.phase&&!(0,i.isRequestAPICallableInsideAfter)())throw Object.defineProperty(Error(`Route ${a.route} used "connection" inside "after(...)". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but "after(...)" executes after the request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/canary/app/api-reference/functions/after`),"__NEXT_ERROR_CODE",{value:"E186",enumerable:!1,configurable:!0});if(a.forceStatic)return Promise.resolve(void 0);if(a.dynamicShouldError)throw Object.defineProperty(new g.StaticGenBailoutError(`Route ${a.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`connection\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E562",enumerable:!1,configurable:!0});if(b)switch(b.type){case"cache":{let b=Object.defineProperty(Error(`Route ${a.route} used "connection" inside "use cache". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual request, but caches must be able to be produced before a request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E752",enumerable:!1,configurable:!0});throw Error.captureStackTrace(b,j),a.invalidDynamicUsageError??=b,b}case"private-cache":{let b=Object.defineProperty(Error(`Route ${a.route} used "connection" inside "use cache: private". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual navigation request, but caches must be able to be produced before a navigation request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E753",enumerable:!1,configurable:!0});throw Error.captureStackTrace(b,j),a.invalidDynamicUsageError??=b,b}case"unstable-cache":throw Object.defineProperty(Error(`Route ${a.route} used "connection" inside a function cached with "unstable_cache(...)". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but caches must be able to be produced before a Request so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`),"__NEXT_ERROR_CODE",{value:"E1",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-runtime":return(0,h.makeHangingPromise)(b.renderSignal,a.route,"`connection()`");case"prerender-ppr":return(0,f.postponeWithTracking)(a.route,"connection",b.dynamicTracking);case"prerender-legacy":return(0,f.throwToInterruptStaticGeneration)("connection",a,b);case"request":return(0,f.trackDynamicDataInDynamicRender)(b),Promise.resolve(void 0)}}(0,e.throwForMissingRequestStore)("connection")}},71589:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"NextResponse",{enumerable:!0,get:function(){return l}});let d=c(33675),e=c(78001),f=c(17679),g=c(63036),h=c(33675),i=Symbol("internal response"),j=new Set([301,302,303,307,308]);function k(a,b){var c;if(null==a||null==(c=a.request)?void 0:c.headers){if(!(a.request.headers instanceof Headers))throw Object.defineProperty(Error("request.headers must be an instance of Headers"),"__NEXT_ERROR_CODE",{value:"E119",enumerable:!1,configurable:!0});let c=[];for(let[d,e]of a.request.headers)b.set("x-middleware-request-"+d,e),c.push(d);b.set("x-middleware-override-headers",c.join(","))}}class l extends Response{constructor(a,b={}){super(a,b);let c=this.headers,j=new Proxy(new h.ResponseCookies(c),{get(a,e,f){switch(e){case"delete":case"set":return(...f)=>{let g=Reflect.apply(a[e],a,f),i=new Headers(c);return g instanceof h.ResponseCookies&&c.set("x-middleware-set-cookie",g.getAll().map(a=>(0,d.stringifyCookie)(a)).join(",")),k(b,i),g};default:return g.ReflectAdapter.get(a,e,f)}}});this[i]={cookies:j,url:b.url?new e.NextURL(b.url,{headers:(0,f.toNodeOutgoingHttpHeaders)(c),nextConfig:b.nextConfig}):void 0}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,url:this.url,body:this.body,bodyUsed:this.bodyUsed,headers:Object.fromEntries(this.headers),ok:this.ok,redirected:this.redirected,status:this.status,statusText:this.statusText,type:this.type}}get cookies(){return this[i].cookies}static json(a,b){let c=Response.json(a,b);return new l(c.body,c)}static redirect(a,b){let c="number"==typeof b?b:(null==b?void 0:b.status)??307;if(!j.has(c))throw Object.defineProperty(RangeError('Failed to execute "redirect" on "response": Invalid status code'),"__NEXT_ERROR_CODE",{value:"E529",enumerable:!1,configurable:!0});let d="object"==typeof b?b:{},e=new Headers(null==d?void 0:d.headers);return e.set("Location",(0,f.validateURL)(a)),new l(null,{...d,headers:e,status:c})}static rewrite(a,b){let c=new Headers(null==b?void 0:b.headers);return c.set("x-middleware-rewrite",(0,f.validateURL)(a)),k(b,c),new l(null,{...b,headers:c})}static next(a){let b=new Headers(null==a?void 0:a.headers);return b.set("x-middleware-next","1"),k(a,b),new l(null,{...a,headers:b})}}},84226:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{describeHasCheckingStringProperty:function(){return e},describeStringPropertyAccess:function(){return d},wellKnownProperties:function(){return f}});let c=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function d(a,b){return c.test(b)?"`"+a+"."+b+"`":"`"+a+"["+JSON.stringify(b)+"]`"}function e(a,b){let c=JSON.stringify(b);return"`Reflect.has("+a+", "+c+")`, `"+c+" in "+a+"`, or similar"}let f=new Set(["hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toString","valueOf","toLocaleString","then","catch","finally","status","displayName","_debugInfo","toJSON","$$typeof","__esModule"])},86005:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isBot:function(){return e},userAgent:function(){return g},userAgentFromString:function(){return f}});let d=function(a){return a&&a.__esModule?a:{default:a}}(c(86404));function e(a){return/Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Google-InspectionTool|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver/i.test(a)}function f(a){return{...(0,d.default)(a),isBot:void 0!==a&&e(a)}}function g({headers:a}){return f(a.get("user-agent")||void 0)}},86404:(a,b,c)=>{var d;(()=>{var e={226:function(e,f){!function(g,h){"use strict";var i="function",j="undefined",k="object",l="string",m="major",n="model",o="name",p="type",q="vendor",r="version",s="architecture",t="console",u="mobile",v="tablet",w="smarttv",x="wearable",y="embedded",z="Amazon",A="Apple",B="ASUS",C="BlackBerry",D="Browser",E="Chrome",F="Firefox",G="Google",H="Huawei",I="Microsoft",J="Motorola",K="Opera",L="Samsung",M="Sharp",N="Sony",O="Xiaomi",P="Zebra",Q="Facebook",R="Chromium OS",S="Mac OS",T=function(a,b){var c={};for(var d in a)b[d]&&b[d].length%2==0?c[d]=b[d].concat(a[d]):c[d]=a[d];return c},U=function(a){for(var b={},c=0;c<a.length;c++)b[a[c].toUpperCase()]=a[c];return b},V=function(a,b){return typeof a===l&&-1!==W(b).indexOf(W(a))},W=function(a){return a.toLowerCase()},X=function(a,b){if(typeof a===l)return a=a.replace(/^\s\s*/,""),typeof b===j?a:a.substring(0,350)},Y=function(a,b){for(var c,d,e,f,g,j,l=0;l<b.length&&!g;){var m=b[l],n=b[l+1];for(c=d=0;c<m.length&&!g&&m[c];)if(g=m[c++].exec(a))for(e=0;e<n.length;e++)j=g[++d],typeof(f=n[e])===k&&f.length>0?2===f.length?typeof f[1]==i?this[f[0]]=f[1].call(this,j):this[f[0]]=f[1]:3===f.length?typeof f[1]!==i||f[1].exec&&f[1].test?this[f[0]]=j?j.replace(f[1],f[2]):void 0:this[f[0]]=j?f[1].call(this,j,f[2]):void 0:4===f.length&&(this[f[0]]=j?f[3].call(this,j.replace(f[1],f[2])):h):this[f]=j||h;l+=2}},Z=function(a,b){for(var c in b)if(typeof b[c]===k&&b[c].length>0){for(var d=0;d<b[c].length;d++)if(V(b[c][d],a))return"?"===c?h:c}else if(V(b[c],a))return"?"===c?h:c;return a},$={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},_={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[r,[o,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[r,[o,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[o,r],[/opios[\/ ]+([\w\.]+)/i],[r,[o,K+" Mini"]],[/\bopr\/([\w\.]+)/i],[r,[o,K]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,/(ba?idubrowser)[\/ ]?([\w\.]+)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,/(heytap|ovi)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[o,r],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[r,[o,"UC"+D]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i],[r,[o,"WeChat(Win) Desktop"]],[/micromessenger\/([\w\.]+)/i],[r,[o,"WeChat"]],[/konqueror\/([\w\.]+)/i],[r,[o,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[r,[o,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[r,[o,"Yandex"]],[/(avast|avg)\/([\w\.]+)/i],[[o,/(.+)/,"$1 Secure "+D],r],[/\bfocus\/([\w\.]+)/i],[r,[o,F+" Focus"]],[/\bopt\/([\w\.]+)/i],[r,[o,K+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[r,[o,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[r,[o,"Dolphin"]],[/coast\/([\w\.]+)/i],[r,[o,K+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[r,[o,"MIUI "+D]],[/fxios\/([-\w\.]+)/i],[r,[o,F]],[/\bqihu|(qi?ho?o?|360)browser/i],[[o,"360 "+D]],[/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i],[[o,/(.+)/,"$1 "+D],r],[/(comodo_dragon)\/([\w\.]+)/i],[[o,/_/g," "],r],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i],[o,r],[/(metasr)[\/ ]?([\w\.]+)/i,/(lbbrowser)/i,/\[(linkedin)app\]/i],[o],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[o,Q],r],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(chromium|instagram)[\/ ]([-\w\.]+)/i],[o,r],[/\bgsa\/([\w\.]+) .*safari\//i],[r,[o,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[r,[o,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[r,[o,E+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[o,E+" WebView"],r],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[r,[o,"Android "+D]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[o,r],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[r,[o,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[r,o],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[o,[r,Z,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[o,r],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[o,"Netscape"],r],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[r,[o,F+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i,/panasonic;(viera)/i],[o,r],[/(cobalt)\/([\w\.]+)/i],[o,[r,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[s,"amd64"]],[/(ia32(?=;))/i],[[s,W]],[/((?:i[346]|x)86)[;\)]/i],[[s,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[s,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[s,"armhf"]],[/windows (ce|mobile); ppc;/i],[[s,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[s,/ower/,"",W]],[/(sun4\w)[;\)]/i],[[s,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[s,W]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[n,[q,L],[p,v]],[/\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[n,[q,L],[p,u]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[n,[q,A],[p,u]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[n,[q,A],[p,v]],[/(macintosh);/i],[n,[q,A]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[n,[q,M],[p,u]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[n,[q,H],[p,v]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[n,[q,H],[p,u]],[/\b(poco[\w ]+)(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[n,/_/g," "],[q,O],[p,u]],[/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[n,/_/g," "],[q,O],[p,v]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[n,[q,"OPPO"],[p,u]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[n,[q,"Vivo"],[p,u]],[/\b(rmx[12]\d{3})(?: bui|;|\))/i],[n,[q,"Realme"],[p,u]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[n,[q,J],[p,u]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[n,[q,J],[p,v]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[n,[q,"LG"],[p,v]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[n,[q,"LG"],[p,u]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[n,[q,"Lenovo"],[p,v]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[n,/_/g," "],[q,"Nokia"],[p,u]],[/(pixel c)\b/i],[n,[q,G],[p,v]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[n,[q,G],[p,u]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[n,[q,N],[p,u]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[n,"Xperia Tablet"],[q,N],[p,v]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[n,[q,"OnePlus"],[p,u]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[n,[q,z],[p,v]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[n,/(.+)/g,"Fire Phone $1"],[q,z],[p,u]],[/(playbook);[-\w\),; ]+(rim)/i],[n,q,[p,v]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[n,[q,C],[p,u]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[n,[q,B],[p,v]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[n,[q,B],[p,u]],[/(nexus 9)/i],[n,[q,"HTC"],[p,v]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[q,[n,/_/g," "],[p,u]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[n,[q,"Acer"],[p,v]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[n,[q,"Meizu"],[p,u]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[q,n,[p,u]],[/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[q,n,[p,v]],[/(surface duo)/i],[n,[q,I],[p,v]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[n,[q,"Fairphone"],[p,u]],[/(u304aa)/i],[n,[q,"AT&T"],[p,u]],[/\bsie-(\w*)/i],[n,[q,"Siemens"],[p,u]],[/\b(rct\w+) b/i],[n,[q,"RCA"],[p,v]],[/\b(venue[\d ]{2,7}) b/i],[n,[q,"Dell"],[p,v]],[/\b(q(?:mv|ta)\w+) b/i],[n,[q,"Verizon"],[p,v]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[n,[q,"Barnes & Noble"],[p,v]],[/\b(tm\d{3}\w+) b/i],[n,[q,"NuVision"],[p,v]],[/\b(k88) b/i],[n,[q,"ZTE"],[p,v]],[/\b(nx\d{3}j) b/i],[n,[q,"ZTE"],[p,u]],[/\b(gen\d{3}) b.+49h/i],[n,[q,"Swiss"],[p,u]],[/\b(zur\d{3}) b/i],[n,[q,"Swiss"],[p,v]],[/\b((zeki)?tb.*\b) b/i],[n,[q,"Zeki"],[p,v]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[q,"Dragon Touch"],n,[p,v]],[/\b(ns-?\w{0,9}) b/i],[n,[q,"Insignia"],[p,v]],[/\b((nxa|next)-?\w{0,9}) b/i],[n,[q,"NextBook"],[p,v]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[q,"Voice"],n,[p,u]],[/\b(lvtel\-)?(v1[12]) b/i],[[q,"LvTel"],n,[p,u]],[/\b(ph-1) /i],[n,[q,"Essential"],[p,u]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[n,[q,"Envizen"],[p,v]],[/\b(trio[-\w\. ]+) b/i],[n,[q,"MachSpeed"],[p,v]],[/\btu_(1491) b/i],[n,[q,"Rotor"],[p,v]],[/(shield[\w ]+) b/i],[n,[q,"Nvidia"],[p,v]],[/(sprint) (\w+)/i],[q,n,[p,u]],[/(kin\.[onetw]{3})/i],[[n,/\./g," "],[q,I],[p,u]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[n,[q,P],[p,v]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[n,[q,P],[p,u]],[/smart-tv.+(samsung)/i],[q,[p,w]],[/hbbtv.+maple;(\d+)/i],[[n,/^/,"SmartTV"],[q,L],[p,w]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[q,"LG"],[p,w]],[/(apple) ?tv/i],[q,[n,A+" TV"],[p,w]],[/crkey/i],[[n,E+"cast"],[q,G],[p,w]],[/droid.+aft(\w)( bui|\))/i],[n,[q,z],[p,w]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[n,[q,M],[p,w]],[/(bravia[\w ]+)( bui|\))/i],[n,[q,N],[p,w]],[/(mitv-\w{5}) bui/i],[n,[q,O],[p,w]],[/Hbbtv.*(technisat) (.*);/i],[q,n,[p,w]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[q,X],[n,X],[p,w]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[p,w]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[q,n,[p,t]],[/droid.+; (shield) bui/i],[n,[q,"Nvidia"],[p,t]],[/(playstation [345portablevi]+)/i],[n,[q,N],[p,t]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[n,[q,I],[p,t]],[/((pebble))app/i],[q,n,[p,x]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[n,[q,A],[p,x]],[/droid.+; (glass) \d/i],[n,[q,G],[p,x]],[/droid.+; (wt63?0{2,3})\)/i],[n,[q,P],[p,x]],[/(quest( 2| pro)?)/i],[n,[q,Q],[p,x]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[q,[p,y]],[/(aeobc)\b/i],[n,[q,z],[p,y]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i],[n,[p,u]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[n,[p,v]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[p,v]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[p,u]],[/(android[-\w\. ]{0,9});.+buil/i],[n,[q,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[r,[o,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[r,[o,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[o,r],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[r,o]],os:[[/microsoft (windows) (vista|xp)/i],[o,r],[/(windows) nt 6\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,/(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i],[o,[r,Z,$]],[/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[o,"Windows"],[r,Z,$]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/ios;fbsv\/([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[r,/_/g,"."],[o,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[o,S],[r,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[r,o],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[o,r],[/\(bb(10);/i],[r,[o,C]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[r,[o,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[r,[o,F+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[r,[o,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[r,[o,"watchOS"]],[/crkey\/([\d\.]+)/i],[r,[o,E+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[o,R],r],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[o,r],[/(sunos) ?([\w\.\d]*)/i],[[o,"Solaris"],r],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[o,r]]},aa=function(a,b){if(typeof a===k&&(b=a,a=h),!(this instanceof aa))return new aa(a,b).getResult();var c=typeof g!==j&&g.navigator?g.navigator:h,d=a||(c&&c.userAgent?c.userAgent:""),e=c&&c.userAgentData?c.userAgentData:h,f=b?T(_,b):_,t=c&&c.userAgent==d;return this.getBrowser=function(){var a,b={};return b[o]=h,b[r]=h,Y.call(b,d,f.browser),b[m]=typeof(a=b[r])===l?a.replace(/[^\d\.]/g,"").split(".")[0]:h,t&&c&&c.brave&&typeof c.brave.isBrave==i&&(b[o]="Brave"),b},this.getCPU=function(){var a={};return a[s]=h,Y.call(a,d,f.cpu),a},this.getDevice=function(){var a={};return a[q]=h,a[n]=h,a[p]=h,Y.call(a,d,f.device),t&&!a[p]&&e&&e.mobile&&(a[p]=u),t&&"Macintosh"==a[n]&&c&&typeof c.standalone!==j&&c.maxTouchPoints&&c.maxTouchPoints>2&&(a[n]="iPad",a[p]=v),a},this.getEngine=function(){var a={};return a[o]=h,a[r]=h,Y.call(a,d,f.engine),a},this.getOS=function(){var a={};return a[o]=h,a[r]=h,Y.call(a,d,f.os),t&&!a[o]&&e&&"Unknown"!=e.platform&&(a[o]=e.platform.replace(/chrome os/i,R).replace(/macos/i,S)),a},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return d},this.setUA=function(a){return d=typeof a===l&&a.length>350?X(a,350):a,this},this.setUA(d),this};aa.VERSION="1.0.35",aa.BROWSER=U([o,r,m]),aa.CPU=U([s]),aa.DEVICE=U([n,q,p,t,u,w,v,x,y]),aa.ENGINE=aa.OS=U([o,r]),typeof f!==j?(e.exports&&(f=e.exports=aa),f.UAParser=aa):c.amdO?void 0===(d=(function(){return aa}).call(b,c,b,a))||(a.exports=d):typeof g!==j&&(g.UAParser=aa);var ab=typeof g!==j&&(g.jQuery||g.Zepto);if(ab&&!ab.ua){var ac=new aa;ab.ua=ac.getResult(),ab.ua.get=function(){return ac.getUA()},ab.ua.set=function(a){ac.setUA(a);var b=ac.getResult();for(var c in b)ab.ua[c]=b[c]}}}("object"==typeof window?window:this)}},f={};function g(a){var b=f[a];if(void 0!==b)return b.exports;var c=f[a]={exports:{}},d=!0;try{e[a].call(c.exports,c,c.exports,g),d=!1}finally{d&&delete f[a]}return c.exports}g.ab=__dirname+"/",a.exports=g(226)})()},87522:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),function(a,b){Object.keys(a).forEach(function(c){"default"===c||Object.prototype.hasOwnProperty.call(b,c)||Object.defineProperty(b,c,{enumerable:!0,get:function(){return a[c]}})})}(c(92588),b)},92588:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"after",{enumerable:!0,get:function(){return e}});let d=c(29294);function e(a){let b=d.workAsyncStorage.getStore();if(!b)throw Object.defineProperty(Error("`after` was called outside a request scope. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context"),"__NEXT_ERROR_CODE",{value:"E468",enumerable:!1,configurable:!0});let{afterContext:c}=b;return c.after(a)}},95736:(a,b,c)=>{"use strict";a.exports=c(44870)},97324:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getRootParam:function(){return n},unstable_rootParams:function(){return m}});let d=c(49290),e=c(26906),f=c(29294),g=c(63033),h=c(82831),i=c(84226),j=c(19121),k=c(310),l=new WeakMap;async function m(){(0,k.warnOnce)("`unstable_rootParams()` is deprecated and will be removed in an upcoming major release. Import specific root params from `next/root-params` instead.");let a=f.workAsyncStorage.getStore();if(!a)throw Object.defineProperty(new d.InvariantError("Missing workStore in unstable_rootParams"),"__NEXT_ERROR_CODE",{value:"E615",enumerable:!1,configurable:!0});let b=g.workUnitAsyncStorage.getStore();if(!b)throw Object.defineProperty(Error(`Route ${a.route} used \`unstable_rootParams()\` in Pages Router. This API is only available within App Router.`),"__NEXT_ERROR_CODE",{value:"E641",enumerable:!1,configurable:!0});switch(b.type){case"cache":case"unstable-cache":throw Object.defineProperty(Error(`Route ${a.route} used \`unstable_rootParams()\` inside \`"use cache"\` or \`unstable_cache\`. Support for this API inside cache scopes is planned for a future version of Next.js.`),"__NEXT_ERROR_CODE",{value:"E642",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":return function(a,b,c){switch(c.type){case"prerender-client":{let a="`unstable_rootParams`";throw Object.defineProperty(new d.InvariantError(`${a} must not be used within a client component. Next.js should be preventing ${a} from being included in client components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E693",enumerable:!1,configurable:!0})}case"prerender":{let d=c.fallbackRouteParams;if(d){for(let e in a)if(d.has(e)){let d=l.get(a);if(d)return d;let e=(0,h.makeHangingPromise)(c.renderSignal,b.route,"`unstable_rootParams`");return l.set(a,e),e}}break}case"prerender-ppr":{let d=c.fallbackRouteParams;if(d){for(let f in a)if(d.has(f))return function(a,b,c,d){let f=l.get(a);if(f)return f;let g={...a},h=Promise.resolve(g);return l.set(a,h),Object.keys(a).forEach(f=>{i.wellKnownProperties.has(f)||(b.has(f)?Object.defineProperty(g,f,{get(){let a=(0,i.describeStringPropertyAccess)("unstable_rootParams",f);"prerender-ppr"===d.type?(0,e.postponeWithTracking)(c.route,a,d.dynamicTracking):(0,e.throwToInterruptStaticGeneration)(a,c,d)},enumerable:!0}):h[f]=a[f])}),h}(a,d,b,c)}}}return Promise.resolve(a)}(b.rootParams,a,b);case"private-cache":case"prerender-runtime":case"request":return Promise.resolve(b.rootParams);default:return b}}function n(a){let b=`\`import('next/root-params').${a}()\``,c=f.workAsyncStorage.getStore();if(!c)throw Object.defineProperty(new d.InvariantError(`Missing workStore in ${b}`),"__NEXT_ERROR_CODE",{value:"E764",enumerable:!1,configurable:!0});let e=g.workUnitAsyncStorage.getStore();if(!e)throw Object.defineProperty(Error(`Route ${c.route} used ${b} outside of a Server Component. This is not allowed.`),"__NEXT_ERROR_CODE",{value:"E774",enumerable:!1,configurable:!0});let i=j.actionAsyncStorage.getStore();if(i){if(i.isAppRoute)throw Object.defineProperty(Error(`Route ${c.route} used ${b} inside a Route Handler. Support for this API in Route Handlers is planned for a future version of Next.js.`),"__NEXT_ERROR_CODE",{value:"E765",enumerable:!1,configurable:!0});if(i.isAction&&"action"===e.phase)throw Object.defineProperty(Error(`${b} was used inside a Server Action. This is not supported. Functions from 'next/root-params' can only be called in the context of a route.`),"__NEXT_ERROR_CODE",{value:"E766",enumerable:!1,configurable:!0})}switch(e.type){case"unstable-cache":case"cache":throw Object.defineProperty(Error(`Route ${c.route} used ${b} inside \`"use cache"\` or \`unstable_cache\`. Support for this API inside cache scopes is planned for a future version of Next.js.`),"__NEXT_ERROR_CODE",{value:"E760",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":var k=a,l=c,m=e,n=b;if("prerender-client"===m.type)throw Object.defineProperty(new d.InvariantError(`${n} must not be used within a client component. Next.js should be preventing ${n} from being included in client components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E693",enumerable:!1,configurable:!0});let p=m.rootParams;switch(m.type){case"prerender":if(m.fallbackRouteParams&&m.fallbackRouteParams.has(k))return(0,h.makeHangingPromise)(m.renderSignal,l.route,n);break;case"prerender-ppr":if(m.fallbackRouteParams&&m.fallbackRouteParams.has(k))return o(k,l,m,n)}return Promise.resolve(p[k])}return Promise.resolve(e.rootParams[a])}async function o(a,b,c,d){let f=(0,i.describeStringPropertyAccess)(d,a);switch(c.type){case"prerender-ppr":return(0,e.postponeWithTracking)(b.route,f,c.dynamicTracking);case"prerender-legacy":return(0,e.throwToInterruptStaticGeneration)(f,b,c)}}},98197:(a,b)=>{"use strict";function c(){throw Object.defineProperty(Error('ImageResponse moved from "next/server" to "next/og" since Next.js 14, please import from "next/og" instead'),"__NEXT_ERROR_CODE",{value:"E183",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"ImageResponse",{enumerable:!0,get:function(){return c}})}};
|