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
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[709],{158:(e,t,s)=>{"use strict";s.d(t,{Bf:()=>A,G$:()=>w,Rz:()=>b,Vj:()=>f,hX:()=>x,ii:()=>c,k5:()=>u,sy:()=>N,wy:()=>i});var r=s(8566),a=s(9280),o=s.n(a);let n={untested:"⬜ Untested",pass:"✅ Pass",fail:"❌ Fail",skip:"⏭ Skip"},l=e=>e.replace(/\n/g,"<br>").replace(/\|/g,"\\|");function i(e,t,s){let a=(s.length>0?s:r._X).filter(e=>e.visible),o=a.map(e=>e.label).join(" | "),i=a.map(()=>"---").join(" | "),d="# ".concat(e.code?e.code+" — ":"").concat(e.label,"\n\n");d+="| # | ".concat(o," |\n"),d+="|---|".concat(i,"|\n"),t.forEach((e,t)=>{let s=a.map(t=>"status"===t.key?n[e.status]:l(e[t.key]||""));d+="| ".concat(t+1," | ").concat(s.join(" | ")," |\n")});let c=t.length,f=t.filter(e=>"skip"===e.status).length,u=t.filter(e=>"pass"===e.status).length,x=c-f>0?Math.round(u/(c-f)*100):0;return d+="\n**Pass rate: ".concat(u,"/").concat(c-f," (").concat(x,"%)**\n")}function d(e,t,s){let r=new Blob([e],{type:s}),a=URL.createObjectURL(r),o=document.createElement("a");o.href=a,o.download=t,o.click(),URL.revokeObjectURL(a)}function c(e){d(function(e){let t="# ".concat(e.name,"\n\n");for(let f of e.flows){var s,a,o,i,d,c;let u=e.testCases[f.id];if(!u||0===u.length)continue;let x=((null!=(i=null!=(o=null==(s=e.columnConfigs)?void 0:s[f.id])?o:e.columnConfig)?i:[]).length>0?null!=(c=null!=(d=null==(a=e.columnConfigs)?void 0:a[f.id])?d:e.columnConfig)?c:[]:r._X).filter(e=>e.visible),p=x.map(e=>e.label).join(" | "),h=x.map(()=>"---").join(" | ");t+="## ".concat(f.code?f.code+" — ":"").concat(f.label,"\n\n"),t+="| # | ".concat(p," |\n"),t+="|---|".concat(h,"|\n"),u.forEach((e,s)=>{let r=x.map(t=>"status"===t.key?n[e.status]:l(e[t.key]||""));t+="| ".concat(s+1," | ").concat(r.join(" | ")," |\n")});let m=u.length,b=u.filter(e=>"skip"===e.status).length,g=u.filter(e=>"pass"===e.status).length,j=m-b>0?Math.round(g/(m-b)*100):0;t+="\n**Pass rate: ".concat(g,"/").concat(m-b," (").concat(j,"%)**\n\n---\n\n")}return t}(e),"".concat(e.name,".md"),"text/markdown")}function f(e){d(JSON.stringify(e,null,2),"".concat(e.name,".json"),"application/json")}function u(e,t,s){let r=(e.code||e.label).replace(/[^a-zA-Z0-9_-]/g,"_");d(i(e,t,s),"".concat(r,".md"),"text/markdown")}function x(e,t){let s=(e.code||e.label).replace(/[^a-zA-Z0-9_-]/g,"_");d(JSON.stringify({node:e,testCases:t},null,2),"".concat(s,".json"),"application/json")}function p(e,t){let s=e&&e.length>0?e:t;return s.length>0?s:r._X}function h(e,t){return t.map(t=>"status"===t.key?n[e.status]:e[t.key]||"")}function m(e){return e.includes(",")||e.includes('"')||e.includes("\n")?'"'.concat(e.replace(/"/g,'""'),'"'):e}function b(e,t,s){let a=(e.code||e.label).replace(/[^a-zA-Z0-9_-]/g,"_");d(function(e,t,s){let a=p(s,r._X).filter(e=>e.visible);return[["#",...a.map(e=>m(e.label))].join(","),...t.map((e,t)=>[String(t+1),...h(e,a).map(m)].join(","))].join("\n")}(0,t,s),"".concat(a,".csv"),"text/csv")}function g(e,t){var s,a,o;let n=null!=(o=null!=(a=null==(s=e.columnConfigs)?void 0:s[t])?a:e.columnConfig)?o:[];return n.length>0?n:r._X}function j(e){e.fill={type:"pattern",pattern:"solid",fgColor:{argb:"FFdbd8d3"}},e.font={name:"Inter",bold:!0,size:11},e.border={top:{style:"thin"},bottom:{style:"thin"},left:{style:"thin"},right:{style:"thin"}},e.alignment={vertical:"middle",horizontal:"left",wrapText:!0}}function v(e){e.border={top:{style:"thin"},bottom:{style:"thin"},left:{style:"thin"},right:{style:"thin"}},e.font={name:"Inter",size:11},e.alignment={vertical:"middle",horizontal:"left",wrapText:!0}}function y(e,t,s,r,a){let o=e.addWorksheet(t);return o.columns=[{header:"#",key:"row",width:6},...a.map(e=>({header:e.label,key:e.key,width:Math.max(e.label.length+4,18)}))],o.getRow(1).eachCell(j),r.forEach((e,t)=>{let s={row:t+1};a.forEach(t=>{"status"===t.key?s[t.key]=n[e.status]:s[t.key]=e[t.key]||""}),o.addRow(s).eachCell(v)}),o}async function k(e,t,s){let a=p(s,r._X).filter(e=>e.visible),n=new(o()).Workbook;return n.creator="Ayu Management Tools",y(n,e.label,e.label,t,a),new Blob([await n.xlsx.writeBuffer()],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"})}async function w(e,t,s){let r=(e.code||e.label).replace(/[^a-zA-Z0-9_-]/g,"_"),a=await k(e,t,s),o=URL.createObjectURL(a),n=document.createElement("a");n.href=o,n.download="".concat(r,".xlsx"),n.click(),URL.revokeObjectURL(o)}async function C(e){let t=new(o()).Workbook;for(let s of(t.creator="Ayu Management Tools",e.flows)){let r=e.testCases[s.id];if(!r||0===r.length)continue;let a=g(e,s.id).filter(e=>e.visible);y(t,(s.code||s.label).substring(0,31).replace(/[\\/*?[\]]/g,"_"),s.label,r,a)}return new Blob([await t.xlsx.writeBuffer()],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"})}async function N(e){let t=await C(e),s=URL.createObjectURL(t),r=document.createElement("a");r.href=s,r.download="".concat(e.name,".xlsx"),r.click(),URL.revokeObjectURL(s)}function A(e){d(function(e){let t="";for(let s of e.flows){let r=e.testCases[s.id];if(!r||0===r.length)continue;let a=g(e,s.id).filter(e=>e.visible);t+="# ".concat(s.code?s.code+" — ":"").concat(s.label,"\n"),t+=["#",...a.map(e=>m(e.label))].join(",")+"\n",r.forEach((e,s)=>{let r=[String(s+1),...h(e,a).map(m)];t+=r.join(",")+"\n"}),t+="\n"}return t}(e),"".concat(e.name,".csv"),"text/csv")}},2053:(e,t,s)=>{Promise.resolve().then(s.bind(s,7193))},3350:(e,t,s)=>{"use strict";s.d(t,{d:()=>l});var r=s(2039),a=s(2115),o=s(3127),n=s(4416);function l(e){let t=(0,n.M)(()=>(0,r.OQ)(e)),{isStatic:s}=(0,a.useContext)(o.Q);if(s){let[,s]=(0,a.useState)(e);(0,a.useEffect)(()=>t.on("change",s),[])}return t}},4269:(e,t,s)=>{"use strict";s.d(t,{cn:()=>o});var r=s(2821),a=s(5889);function o(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,a.QP)((0,r.$)(t))}},5307:(e,t,s)=>{"use strict";s.d(t,{b:()=>n});var r=s(5155),a=s(2115),o=s(4269);function n(e){let{width:t=40,height:s=40,x:n=-1,y:l=-1,strokeDasharray:i="0",squares:d,className:c,...f}=e,u=(0,a.useId)();return(0,r.jsxs)("svg",{"aria-hidden":"true",className:(0,o.cn)("pointer-events-none absolute inset-0 h-full w-full fill-gray-400/30 stroke-gray-400/30",c),...f,children:[(0,r.jsx)("defs",{children:(0,r.jsx)("pattern",{id:u,width:t,height:s,patternUnits:"userSpaceOnUse",x:n,y:l,children:(0,r.jsx)("path",{d:"M.5 ".concat(s,"V.5H").concat(t),fill:"none",strokeDasharray:i})})}),(0,r.jsx)("rect",{width:"100%",height:"100%",strokeWidth:0,fill:"url(#".concat(u,")")}),d&&(0,r.jsx)("svg",{x:n,y:l,className:"overflow-visible",children:d.map(e=>{let[a,o]=e;return(0,r.jsx)("rect",{strokeWidth:"0",width:t-1,height:s-1,x:a*t+1,y:o*s+1},"".concat(a,"-").concat(o))})})]})}},5815:(e,t,s)=>{"use strict";s.d(t,{p:()=>a});var r=s(5155);function a(e){let{message:t,action:s}=e;return(0,r.jsxs)("div",{className:"flex flex-col items-center justify-center h-full gap-4 px-6 text-center",children:[(0,r.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:"w-28 h-28 object-contain select-none opacity-15",draggable:!1}),(0,r.jsx)("p",{className:"text-sm max-w-[280px]",style:{color:"var(--text-tertiary)"},children:t}),s&&(0,r.jsx)("button",{onClick:s.onClick,className:"px-4 py-2 text-sm font-medium rounded-md transition-opacity hover:opacity-80",style:{backgroundColor:"var(--accent)",color:"var(--bg-primary)",borderRadius:"var(--radius-pill)"},children:s.label})]})}},7193:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>w});var r=s(5155),a=s(8661),o=s.n(a),n=s(2115),l=s(2619),i=s.n(l),d=s(3882),c=s(158),f=s(5815),u=s(4269);function x(e){let{width:t=40,height:s=40,squares:a=[24,24],className:o,squaresClassName:l,...i}=e,[d,c]=a,[f,x]=(0,n.useState)(null);return(0,r.jsx)("svg",{width:t*d,height:s*c,className:(0,u.cn)("absolute inset-0 h-full w-full border border-gray-400/30",o),...i,children:Array.from({length:d*c}).map((e,a)=>{let o=a%d*t,n=Math.floor(a/d)*s;return(0,r.jsx)("rect",{x:o,y:n,width:t,height:s,className:(0,u.cn)("stroke-gray-400/30 transition-all duration-100 ease-in-out not-[&:hover]:duration-1000",f===a?"fill-gray-300/30":"fill-transparent",l),onMouseEnter:()=>x(a),onMouseLeave:()=>x(null)},a)})})}var p=s(5307),h=s(3350),m=s(7952),b=s(8561);let g={some:0,all:1};function j(e){let{value:t,startValue:s=0,direction:a="up",delay:o=0,className:l,decimalPlaces:i=0,...d}=e,c=(0,n.useRef)(null),f=(0,h.d)("down"===a?t:s),x=(0,m.z)(f,{damping:60,stiffness:100}),p=function(e){let{root:t,margin:s,amount:r,once:a=!1,initial:o=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},[l,i]=(0,n.useState)(o);return(0,n.useEffect)(()=>{if(!e.current||a&&l)return;let o={root:t&&t.current||void 0,margin:s,amount:r};return function(e,t,{root:s,margin:r,amount:a="some"}={}){let o=(0,b.K)(e),n=new WeakMap,l=new IntersectionObserver(e=>{e.forEach(e=>{let s=n.get(e.target);if(!!s!==e.isIntersecting)if(e.isIntersecting){let s=t(e.target,e);"function"==typeof s?n.set(e.target,s):l.unobserve(e.target)}else"function"==typeof s&&(s(e),n.delete(e.target))})},{root:s,rootMargin:r,threshold:"number"==typeof a?a:g[a]});return o.forEach(e=>l.observe(e)),()=>l.disconnect()}(e.current,()=>(i(!0),a?void 0:()=>i(!1)),o)},[t,e,s,a,r]),l}(c,{once:!0,margin:"0px"});return(0,n.useEffect)(()=>{let e=null;return p&&(e=setTimeout(()=>{f.set("down"===a?s:t)},1e3*o)),()=>{null!==e&&clearTimeout(e)}},[f,p,o,t,a,s]),(0,n.useEffect)(()=>x.on("change",e=>{c.current&&(c.current.textContent=Intl.NumberFormat("en-US",{minimumFractionDigits:i,maximumFractionDigits:i}).format(Number(e.toFixed(i))))}),[x,i]),(0,r.jsx)("span",{ref:c,className:(0,u.cn)("inline-block tracking-wider text-black tabular-nums dark:text-white",l),...d,children:s})}var v=s(9534);let y=[{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 00-2.91-.09z"}),(0,r.jsx)("path",{d:"M12 15l-3-3a22 22 0 012-3.95A12.88 12.88 0 0122 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 01-4 2z"}),(0,r.jsx)("path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0"}),(0,r.jsx)("path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5"})]}),bg:"#F5F0EB"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,r.jsx)("circle",{cx:"12",cy:"12",r:"6"}),(0,r.jsx)("circle",{cx:"12",cy:"12",r:"2",fill:"#6F4E37"})]}),bg:"#EDE6DD"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M10 2v7.527a2 2 0 01-.211.896L4.72 20.55a1 1 0 00.9 1.45h12.76a1 1 0 00.9-1.45l-5.069-10.127A2 2 0 0114 9.527V2"}),(0,r.jsx)("path",{d:"M8.5 2h7"}),(0,r.jsx)("path",{d:"M7 16h10"})]}),bg:"#F7F3EE"},{icon:(0,r.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,r.jsx)("path",{d:"M8.5 14.5A2.5 2.5 0 0011 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 11-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 002.5 2.5z"})}),bg:"#F5F0EB"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 006 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5"}),(0,r.jsx)("path",{d:"M9 18h6"}),(0,r.jsx)("path",{d:"M10 22h4"})]}),bg:"#EDE6DD"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 01-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 011-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 011.52 0C14.51 3.81 17 5 19 5a1 1 0 011 1z"}),(0,r.jsx)("path",{d:"M12 8v4"}),(0,r.jsx)("path",{d:"M12 16h.01"})]}),bg:"#F7F3EE"},{icon:(0,r.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,r.jsx)("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2",fill:"#6F4E37",opacity:"0.2"})}),bg:"#F5F0EB"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("line",{x1:"6",y1:"11",x2:"10",y2:"11"}),(0,r.jsx)("line",{x1:"8",y1:"9",x2:"8",y2:"13"}),(0,r.jsx)("line",{x1:"15",y1:"12",x2:"15.01",y2:"12"}),(0,r.jsx)("line",{x1:"18",y1:"10",x2:"18.01",y2:"10"}),(0,r.jsx)("path",{d:"M17.32 5H6.68a4 4 0 00-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 003 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 019.828 16h4.344a2 2 0 011.414.586L17 18c.5.5 1 1 2 1a3 3 0 003-3c0-1.544-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0017.32 5z"})]}),bg:"#EDE6DD"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M12 2L2 7l10 5 10-5-10-5z"}),(0,r.jsx)("path",{d:"M2 17l10 5 10-5"}),(0,r.jsx)("path",{d:"M2 12l10 5 10-5",fill:"#6F4E37",opacity:"0.15"})]}),bg:"#F7F3EE"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M12 2a10 10 0 1010 10 4 4 0 01-5-5 4 4 0 01-5-5"}),(0,r.jsx)("path",{d:"M8.5 8.5v.01"}),(0,r.jsx)("path",{d:"M16 15.5v.01"}),(0,r.jsx)("path",{d:"M12 12v.01"}),(0,r.jsx)("path",{d:"M11 17v.01"}),(0,r.jsx)("path",{d:"M7 14v.01"})]}),bg:"#F5F0EB"},{icon:(0,r.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,r.jsx)("polygon",{points:"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2",fill:"#6F4E37",opacity:"0.2"})}),bg:"#EDE6DD"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,r.jsx)("polygon",{points:"16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76",fill:"#6F4E37",opacity:"0.2"})]}),bg:"#F7F3EE"},{icon:(0,r.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,r.jsx)("path",{d:"M19.439 7.85c-.049.322.059.648.289.878l1.568 1.568c.47.47.706 1.087.706 1.704s-.235 1.233-.706 1.704l-1.611 1.611a.98.98 0 01-.837.276c-.47-.07-.802-.48-.968-.925a2.501 2.501 0 10-3.214 3.214c.446.166.855.497.925.968a.979.979 0 01-.276.837l-1.61 1.611a2.404 2.404 0 01-1.705.707 2.402 2.402 0 01-1.704-.706l-1.568-1.568a1.026 1.026 0 00-.877-.29c-.493.074-.84.504-1.02.968a2.5 2.5 0 11-3.237-3.237c.464-.18.894-.527.967-1.02a1.026 1.026 0 00-.289-.877l-1.568-1.568A2.402 2.402 0 011.998 12c0-.617.236-1.234.706-1.704L4.23 8.77c.24-.24.581-.353.917-.303.515.077.877.528 1.073.978a2.5 2.5 0 103.259-3.259c-.45-.196-.9-.558-.977-1.073-.05-.336.062-.676.303-.917l1.525-1.525A2.402 2.402 0 0112 1.998c.617 0 1.234.236 1.704.706l1.568 1.568c.23.23.556.338.877.29.493-.074.84-.504 1.02-.968a2.5 2.5 0 113.237 3.237c-.464.18-.894.527-.967 1.02z"})}),bg:"#F5F0EB"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M21 16V8a2 2 0 00-1-1.73l-7-4a2 2 0 00-2 0l-7 4A2 2 0 003 8v8a2 2 0 001 1.73l7 4a2 2 0 002 0l7-4A2 2 0 0021 16z"}),(0,r.jsx)("polyline",{points:"3.27 6.96 12 12.01 20.73 6.96"}),(0,r.jsx)("line",{x1:"12",y1:"22.08",x2:"12",y2:"12"})]}),bg:"#EDE6DD"}];function k(e){let t=0;for(let s=0;s<e.length;s++)t=(t<<5)-t+e.charCodeAt(s)|0;return y[Math.abs(t)%y.length]}function w(){let{projects:e,createProject:t,deleteProject:s,duplicateProject:a,importProject:l,renameProject:u,profile:h,profileInitials:m,promptDialog:b,confirmDialog:g}=(0,d.M)(),y=Object.values(e),[w,C]=(0,n.useState)(null),[N,A]=(0,n.useState)(""),[E,L]=(0,n.useState)(null),[M,D]=(0,n.useState)(!1),[F,S]=(0,n.useState)(!1),[P,B]=(0,n.useState)(null),I=(0,n.useRef)(null),R=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(!E)return;let e=e=>{I.current&&!I.current.contains(e.target)&&L(null)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[E]),(0,n.useEffect)(()=>{(0,v.nU)()},[]);let W=(0,n.useMemo)(()=>{let e=y.flatMap(e=>Object.values(e.testCases).flat()),t=e.length,s=e.filter(e=>"pass"===e.status).length,r=e.filter(e=>"skip"===e.status).length,a=y.reduce((e,t)=>e+t.flows.length,0),o=t-r;return{totalCases:t,totalNodes:a,overallPassRate:o>0?Math.round(s/o*100):0}},[y]);if(0===y.length)return(0,r.jsx)("div",{className:"h-full overflow-auto p-6",children:(0,r.jsx)(f.p,{message:"No projects yet. Create your first project to get started.",action:{label:"+ New Project",onClick:async()=>{let e=await b("New Project","Enter project name:");(null==e?void 0:e.trim())&&t(e.trim())}}})});let _=()=>{w&&N.trim()&&u(w,N.trim()),C(null)},U=async(e,t)=>{L(null),await g("Delete Project",'Delete "'.concat(t,'"? This cannot be undone.'))&&s(e)};return(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 h-full overflow-auto relative",children:[(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 absolute inset-0 overflow-hidden pointer-events-none",children:[(0,r.jsx)(x,{width:48,height:48,squares:[32,32],className:"opacity-30",squaresClassName:"fill-neutral-200/20"}),(0,r.jsx)("div",{style:{background:"linear-gradient(to bottom, var(--bg-primary) 0%, transparent 15%, transparent 85%, var(--bg-primary) 100%)"},className:"jsx-ef3362fdbd774571 absolute inset-0"})]}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 relative p-6",children:[(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex items-center justify-between mb-6",children:[(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("h2",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-lg font-medium",children:"All Projects"}),(0,r.jsxs)("p",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-xs mt-0.5",children:[y.length," project",1!==y.length?"s":""]})]}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex items-center gap-2",children:[(0,r.jsx)("button",{onClick:()=>D(!0),style:{borderColor:"#6F4E37",color:"#6F4E37",borderRadius:"var(--radius-pill)",boxShadow:"0 0 12px rgba(111,78,55,0.3), 0 0 24px rgba(111,78,55,0.15)",animation:"glowPulse 2s ease-in-out infinite"},className:"jsx-ef3362fdbd774571 px-4 py-2 text-sm font-medium rounded-md border transition-all hover:scale-105",children:"Donate Please \uD83E\uDD7A\uD83D\uDC49\uD83D\uDC48"}),(0,r.jsx)("button",{onClick:()=>{var e;return null==(e=R.current)?void 0:e.click()},style:{borderColor:"var(--border)",color:"var(--text-secondary)",borderRadius:"var(--radius-pill)"},className:"jsx-ef3362fdbd774571 px-4 py-2 text-sm font-medium rounded-md border transition-opacity hover:opacity-80",children:"Import Project"}),(0,r.jsx)("input",{ref:R,type:"file",accept:".json",onChange:e=>{var t;let s=null==(t=e.target.files)?void 0:t[0];if(!s)return;let r=new FileReader;r.onload=()=>{let e=l(r.result);e.ok?B(null):B(e.error||"Import failed")},r.readAsText(s),e.target.value=""},className:"jsx-ef3362fdbd774571 hidden"}),(0,r.jsx)("button",{onClick:async()=>{let e=await b("New Project","Enter project name:");(null==e?void 0:e.trim())&&t(e.trim())},style:{backgroundColor:"var(--accent)",color:"var(--bg-primary)",borderRadius:"var(--radius-pill)"},className:"jsx-ef3362fdbd774571 px-4 py-2 text-sm font-medium rounded-md transition-opacity hover:opacity-80",children:"+ New Project"})]})]}),P&&(0,r.jsxs)("div",{style:{backgroundColor:"var(--status-fail-bg)",color:"var(--status-fail-text)"},className:"jsx-ef3362fdbd774571 mb-4 text-xs px-3 py-2 rounded-lg flex items-center justify-between",children:[(0,r.jsxs)("span",{className:"jsx-ef3362fdbd774571",children:["Import failed: ",P]}),(0,r.jsx)("button",{onClick:()=>B(null),className:"jsx-ef3362fdbd774571 ml-2 font-bold",children:"\\u00d7"})]}),(0,r.jsx)("div",{className:"jsx-ef3362fdbd774571 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-5",children:y.map(e=>{let t=Object.values(e.testCases).flat(),s=t.length,o=t.filter(e=>"pass"===e.status).length,n=t.filter(e=>"fail"===e.status).length,l=t.filter(e=>"skip"===e.status).length,d=t.filter(e=>"untested"===e.status).length,f=s-l,u=f>0?Math.round(o/f*100):0,x=w===e.id;return(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 group relative flex flex-col rounded-xl border overflow-hidden transition-all duration-200 hover:shadow-lg hover:border-[var(--border-hover)]",children:[(0,r.jsxs)("div",{style:{background:"linear-gradient(135deg, #F7F5F1 0%, #EDEAE3 100%)"},className:"jsx-ef3362fdbd774571 relative h-24 overflow-hidden",children:[(0,r.jsx)(p.b,{width:28,height:28,x:-1,y:-1,strokeDasharray:"4 2",className:"text-neutral-400/20"}),(0,r.jsx)("div",{className:"jsx-ef3362fdbd774571 absolute inset-0 flex items-center justify-center pointer-events-none",children:(0,r.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:"",style:{opacity:.08},className:"jsx-ef3362fdbd774571 h-[70%] object-contain select-none"})}),(0,r.jsx)("div",{style:{background:u>=80?"var(--status-pass-text)":u>=50?"var(--status-skip-text)":s>0?"var(--status-fail-text)":"var(--border)"},className:"jsx-ef3362fdbd774571 absolute bottom-0 left-0 right-0 h-1"}),(0,r.jsx)("div",{style:{backgroundColor:k(e.id).bg},className:"jsx-ef3362fdbd774571 absolute top-4 left-4 w-10 h-10 rounded-lg flex items-center justify-center",children:k(e.id).icon})]}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex-1 p-4 flex flex-col gap-3",children:[x?(0,r.jsx)("input",{autoFocus:!0,value:N,onChange:e=>A(e.target.value),onBlur:_,onKeyDown:e=>{"Enter"===e.key&&_(),"Escape"===e.key&&C(null)},style:{borderColor:"var(--accent)",color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-sm font-semibold bg-transparent outline-none border-b px-0 py-0.5"}):(0,r.jsx)("h3",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-sm font-semibold truncate",children:e.name}),(0,r.jsxs)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 flex items-center gap-3 text-xs",children:[(0,r.jsxs)("span",{className:"jsx-ef3362fdbd774571 flex items-center gap-1",children:[(0,r.jsx)(j,{value:e.flows.length,className:"text-xs font-medium",style:{color:"var(--text-primary)"}}),(0,r.jsx)("span",{className:"jsx-ef3362fdbd774571",children:"nodes"})]}),(0,r.jsx)("span",{style:{backgroundColor:"var(--border)"},className:"jsx-ef3362fdbd774571 w-px h-3"}),(0,r.jsxs)("span",{className:"jsx-ef3362fdbd774571 flex items-center gap-1",children:[(0,r.jsx)(j,{value:s,className:"text-xs font-medium",style:{color:"var(--text-primary)"}}),(0,r.jsx)("span",{className:"jsx-ef3362fdbd774571",children:"cases"})]})]}),s>0&&(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 space-y-1",children:[(0,r.jsxs)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 flex items-center justify-between text-[10px]",children:[(0,r.jsx)("span",{className:"jsx-ef3362fdbd774571",children:"Pass rate"}),(0,r.jsxs)("span",{style:{color:u>=80?"var(--status-pass-text)":u>=50?"var(--status-skip-text)":"var(--status-fail-text)",fontWeight:600},className:"jsx-ef3362fdbd774571",children:[u,"%"]})]}),(0,r.jsx)("div",{style:{backgroundColor:"var(--bg-secondary)"},className:"jsx-ef3362fdbd774571 h-1.5 w-full rounded-full overflow-hidden",children:(0,r.jsx)("div",{style:{width:"".concat(u,"%"),backgroundColor:u>=80?"var(--status-pass-text)":u>=50?"var(--status-skip-text)":"var(--status-fail-text)"},className:"jsx-ef3362fdbd774571 h-full rounded-full transition-all duration-500"})}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex gap-1 mt-1",children:[o>0&&(0,r.jsxs)("span",{style:{backgroundColor:"var(--status-pass-bg)",color:"var(--status-pass-text)"},className:"jsx-ef3362fdbd774571 text-[9px] px-1.5 py-0.5 rounded-full",children:[o," pass"]}),n>0&&(0,r.jsxs)("span",{style:{backgroundColor:"var(--status-fail-bg)",color:"var(--status-fail-text)"},className:"jsx-ef3362fdbd774571 text-[9px] px-1.5 py-0.5 rounded-full",children:[n," fail"]}),l>0&&(0,r.jsxs)("span",{style:{backgroundColor:"var(--status-skip-bg)",color:"var(--status-skip-text)"},className:"jsx-ef3362fdbd774571 text-[9px] px-1.5 py-0.5 rounded-full",children:[l," skip"]}),d>0&&(0,r.jsxs)("span",{style:{backgroundColor:"var(--status-untested-bg)",color:"var(--status-untested-text)"},className:"jsx-ef3362fdbd774571 text-[9px] px-1.5 py-0.5 rounded-full",children:[d," todo"]})]})]}),(0,r.jsxs)("div",{style:{color:"var(--text-tertiary)",borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 text-[10px] mt-auto pt-2 border-t",children:["Created ",new Date(e.createdAt).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})]})]}),(0,r.jsx)("div",{className:"jsx-ef3362fdbd774571 absolute top-3 right-3 flex gap-1 opacity-0 group-hover:opacity-100 transition-opacity duration-150 z-10",children:(0,r.jsx)("button",{onClick:t=>{t.preventDefault(),t.stopPropagation(),L(E===e.id?null:e.id)},style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)",color:"var(--text-secondary)"},className:"jsx-ef3362fdbd774571 w-7 h-7 flex items-center justify-center rounded-md border text-xs transition-colors hover:bg-[var(--bg-secondary)]",children:(0,r.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("circle",{cx:"6",cy:"2.5",r:"1",fill:"currentColor",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("circle",{cx:"6",cy:"6",r:"1",fill:"currentColor",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("circle",{cx:"6",cy:"9.5",r:"1",fill:"currentColor",className:"jsx-ef3362fdbd774571"})]})})}),E===e.id&&(0,r.jsxs)("div",{ref:I,style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)"},className:"jsx-ef3362fdbd774571 absolute top-11 right-3 z-30 py-1 min-w-[140px] border rounded-lg",children:[(0,r.jsxs)(i(),{href:"/projects/".concat(e.id),className:"flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",style:{color:"var(--text-primary)"},onClick:()=>L(null),children:[(0,r.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:(0,r.jsx)("path",{d:"M2 6h8M7 3l3 3-3 3",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",className:"jsx-ef3362fdbd774571"})}),"Open"]}),(0,r.jsxs)("button",{onClick:t=>{var s,r;t.stopPropagation(),s=e.id,r=e.name,C(s),A(r),L(null)},style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 w-full flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",children:[(0,r.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:(0,r.jsx)("path",{d:"M8.5 1.5l2 2-7 7H1.5v-2l7-7z",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",className:"jsx-ef3362fdbd774571"})}),"Rename"]}),(0,r.jsxs)("button",{onClick:t=>{t.stopPropagation(),a(e.id),L(null)},style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 w-full flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",children:[(0,r.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("rect",{x:"3.5",y:"3.5",width:"6",height:"6",rx:"1",stroke:"currentColor",strokeWidth:"1.2",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("path",{d:"M8.5 3.5V2.5a1 1 0 00-1-1h-5a1 1 0 00-1 1v5a1 1 0 001 1h1",stroke:"currentColor",strokeWidth:"1.2",className:"jsx-ef3362fdbd774571"})]}),"Duplicate"]}),(0,r.jsxs)("button",{onClick:t=>{t.stopPropagation(),(0,c.Vj)(e),L(null)},style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 w-full flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",children:[(0,r.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("path",{d:"M10 7v3a1 1 0 01-1 1H3a1 1 0 01-1-1V7",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("polyline",{points:"4 5 6 7 8 5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("line",{x1:"6",y1:"1",x2:"6",y2:"7",stroke:"currentColor",strokeWidth:"1.2",className:"jsx-ef3362fdbd774571"})]}),"Export JSON"]}),(0,r.jsx)("div",{style:{borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 border-t my-1"}),(0,r.jsxs)("button",{onClick:t=>{t.stopPropagation(),U(e.id,e.name)},style:{color:"var(--status-fail-text)"},className:"jsx-ef3362fdbd774571 w-full flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",children:[(0,r.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:(0,r.jsx)("path",{d:"M1.5 3h9M4.5 3V1.5h3V3M3 3v7.5h6V3",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",className:"jsx-ef3362fdbd774571"})}),"Delete"]})]}),(0,r.jsx)(i(),{href:"/projects/".concat(e.id),className:"absolute inset-0 z-0",onClick:()=>L(null)})]},e.id)})}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 relative mt-8 pt-6 border-t",children:[(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex items-center gap-4 mb-4",children:[(0,r.jsx)("div",{style:{border:"1px solid var(--border)"},className:"jsx-ef3362fdbd774571 w-10 h-10 rounded-lg overflow-hidden flex-shrink-0",children:h.avatarUrl?(0,r.jsx)("img",{src:h.avatarUrl,alt:"Avatar",className:"jsx-ef3362fdbd774571 w-full h-full object-cover"}):(0,r.jsx)("div",{style:{backgroundColor:h.bannerColor,color:"#fff"},className:"jsx-ef3362fdbd774571 w-full h-full flex items-center justify-center text-sm font-bold",children:m})}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("div",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-sm font-medium",children:h.name||"Anonymous Tester"}),(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px]",children:h.role||"No role set"})]})]}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 grid grid-cols-2 sm:grid-cols-4 gap-3",children:[(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 p-3 rounded-lg border",children:[(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] uppercase tracking-wider mb-1",children:"Projects"}),(0,r.jsx)(j,{value:y.length,className:"text-lg font-semibold",style:{color:"var(--accent)"}})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 p-3 rounded-lg border",children:[(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] uppercase tracking-wider mb-1",children:"Test Cases"}),(0,r.jsx)(j,{value:W.totalCases,className:"text-lg font-semibold",style:{color:"var(--status-pass-text)"}})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 p-3 rounded-lg border",children:[(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] uppercase tracking-wider mb-1",children:"Flow Nodes"}),(0,r.jsx)(j,{value:W.totalNodes,className:"text-lg font-semibold",style:{color:"#9E7AFF"}})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 p-3 rounded-lg border",children:[(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] uppercase tracking-wider mb-1",children:"Pass Rate"}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex items-baseline gap-0.5",children:[(0,r.jsx)(j,{value:W.overallPassRate,className:"text-lg font-semibold",style:{color:W.overallPassRate>=80?"var(--status-pass-text)":"var(--status-skip-text)"}}),(0,r.jsx)("span",{style:{color:W.overallPassRate>=80?"var(--status-pass-text)":"var(--status-skip-text)"},className:"jsx-ef3362fdbd774571 text-sm font-medium",children:"%"})]})]})]})]})]}),M&&(0,r.jsx)("div",{style:{backgroundColor:"rgba(0,0,0,0.3)",animation:"fadeIn 150ms ease-out"},onClick:()=>D(!1),className:"jsx-ef3362fdbd774571 fixed inset-0 z-[400] flex items-center justify-center",children:(0,r.jsxs)("div",{style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)",animation:"fadeInUp 200ms ease-out"},onClick:e=>e.stopPropagation(),className:"jsx-ef3362fdbd774571 w-full max-w-lg mx-4 rounded-xl border overflow-hidden",children:[(0,r.jsxs)("div",{style:{background:"linear-gradient(180deg, #FFF8E1 0%, var(--bg-card) 100%)"},className:"jsx-ef3362fdbd774571 px-6 pt-6 pb-5 flex flex-col items-center text-center",children:[(0,r.jsx)("div",{className:"jsx-ef3362fdbd774571 w-20 h-20 mb-4 flex items-center justify-center",children:(0,r.jsxs)("svg",{width:"60",height:"60",viewBox:"0 0 48 48",fill:"none",className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("path",{d:"M8 16h24v20a8 8 0 01-8 8H16a8 8 0 01-8-8V16z",fill:"#6F4E37",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("path",{d:"M32 20h4a4 4 0 010 8h-4",stroke:"#6F4E37",strokeWidth:"2.5",strokeLinecap:"round",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("path",{d:"M14 12c0-2 2-4 4-4s4 2 4 4",stroke:"#BCAAA4",strokeWidth:"2",strokeLinecap:"round",opacity:"0.6",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("path",{d:"M20 10c0-2 2-4 4-4s4 2 4 4",stroke:"#BCAAA4",strokeWidth:"2",strokeLinecap:"round",opacity:"0.4",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("rect",{x:"6",y:"38",width:"28",height:"4",rx:"2",fill:"#D7CCC8",className:"jsx-ef3362fdbd774571"})]})}),(0,r.jsx)("h3",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-base font-semibold mb-2",children:"Please, Buy me a Coffee.."}),(0,r.jsx)("p",{style:{color:"var(--text-secondary)"},className:"jsx-ef3362fdbd774571 text-sm leading-relaxed",children:"If Test Lah! has been helpful, consider buying Qois a coffee. Any size will do. He's very tired."})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 px-6 py-4 border-t",children:[(0,r.jsx)("p",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] font-semibold uppercase tracking-wider mb-2",children:"Pickup Location"}),(0,r.jsx)("p",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-sm font-medium mb-1",children:"Toko Kopi TUKU — BSD"}),(0,r.jsx)("p",{style:{color:"var(--text-secondary)"},className:"jsx-ef3362fdbd774571 text-xs leading-relaxed",children:"Ruko Sektor 1.3, Blok RB No. 1, Jl. Griya Loka Raya No.1, Serpong, Tangerang Selatan"})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 px-6 py-4 border-t flex gap-2",children:[(0,r.jsxs)("div",{onMouseEnter:()=>S(!0),onMouseLeave:()=>S(!1),className:"jsx-ef3362fdbd774571 flex-1 relative",children:[(0,r.jsx)("button",{onClick:()=>D(!1),style:{borderColor:"var(--border)",color:"var(--text-secondary)"},className:"jsx-ef3362fdbd774571 w-full px-3 py-2.5 text-xs font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)]",children:"Maybe Later"}),F&&(0,r.jsx)("div",{style:{width:240,backgroundColor:"var(--bg-card)",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)",animation:"fadeInUp 200ms ease-out"},className:"jsx-ef3362fdbd774571 absolute bottom-full left-1/2 -translate-x-1/2 mb-2 z-[410] rounded-xl border overflow-hidden",children:(0,r.jsx)("img",{src:"https://i.pinimg.com/564x/82/74/4d/82744d1c73b0296c5f32e6f669ac05e6.jpg",alt:"Maybe next time?",width:240,style:{borderRadius:11},className:"jsx-ef3362fdbd774571 w-full h-auto block"})})]}),(0,r.jsx)("a",{href:"https://maps.google.com/?q=Toko+Kopi+TUKU+BSD",target:"_blank",rel:"noopener noreferrer",style:{backgroundColor:"#6F4E37",color:"#fff"},className:"jsx-ef3362fdbd774571 flex-1 px-3 py-2.5 text-xs font-medium rounded-lg text-center transition-opacity hover:opacity-80",children:"Open in Maps"})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"#FAFAF8"},className:"jsx-ef3362fdbd774571 px-6 py-4 border-t",children:[(0,r.jsx)("p",{style:{color:"var(--text-secondary)",direction:"rtl"},className:"jsx-ef3362fdbd774571 text-xs text-center leading-relaxed mb-3",children:"اِنَّ الْمُصَّدِّقِيْنَ وَالْمُصَّدِّقٰتِ وَاَقْرَضُوا اللّٰهَ قَرْضًا حَسَنًا يُّضٰعَفُ لَهُمْ وَلَهُمْ اَجْرٌ كَرِيْمٌ ١٨"}),(0,r.jsx)("p",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] text-center leading-relaxed",children:"“Sesungguhnya orang-orang yang bersedekah baik laki-laki maupun perempuan dan meminjamkan kepada Allah dengan pinjaman yang baik, akan dilipatgandakan (balasannya) bagi mereka; dan mereka akan mendapat pahala yang mulia.” (QS Al Hadid: 18)"})]})]})}),(0,r.jsx)(o(),{id:"ef3362fdbd774571",children:"@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeInUp{from{opacity:0;transform:translatey(16px)}to{opacity:1;transform:translatey(0)}}@keyframes fadeInRight{from{opacity:0;transform:translatey(-50%)translatex(16px)}to{opacity:1;transform:translatey(-50%)translatex(0)}}@keyframes glowPulse{0%,100%{box-shadow:0 0 12px rgba(111,78,55,.3),0 0 24px rgba(111,78,55,.15)}50%{box-shadow:0 0 20px rgba(111,78,55,.5),0 0 40px rgba(111,78,55,.25)}}"})]})}},7952:(e,t,s)=>{"use strict";s.d(t,{z:()=>f});var r=s(3182),a=s(9752),o=s(3934);function n(e){return"number"==typeof e?e:parseFloat(e)}var l=s(2115),i=s(3127),d=s(3350),c=s(9770);function f(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{isStatic:s}=(0,l.useContext)(i.Q),f=()=>(0,r.S)(e)?e.get():e;if(s)return(0,c.G)(f);let u=(0,d.d)(f());return(0,l.useInsertionEffect)(()=>(function(e,t,s={}){let l,i=e.get(),d=null,c=i,f="string"==typeof i?i.replace(/[\d.-]/g,""):void 0,u=()=>{d&&(d.stop(),d=null),e.animation=void 0},x=()=>{(()=>{let t=n(e.get()),r=n(c);if(t===r)return u();let o=d?d.getGeneratorVelocity():e.getVelocity();u(),d=new a.s({keyframes:[t,r],velocity:o,type:"spring",restDelta:.001,restSpeed:.01,...s,onUpdate:l})})(),e.animation=d??void 0,e.events.animationStart?.notify(),d?.then(()=>{e.animation=void 0,e.events.animationComplete?.notify()})};if(e.attach((e,t)=>{c=e,l=e=>{var s,r;return t((s=e,(r=f)?s+r:s))},o.Gt.postRender(x)},u),(0,r.S)(t)){let r=!0===s.skipInitialAnimation,a=t.on("change",t=>{var s,a,o,n;r?(r=!1,e.jump((s=t,(a=f)?s+a:s),!1)):e.set((o=t,(n=f)?o+n:o))}),o=e.on("destroy",a);return()=>{a(),o()}}return u})(u,e,t),[u,JSON.stringify(t)]),u}(e,{type:"spring",...t})}},9534:(e,t,s)=>{"use strict";s.d(t,{nU:()=>g});var r=s(8566);let a="mock-dashboard-project",o="node-login",n="node-dashboard",l="node-settings",i="mock-cakra-project",d="cakra-overview",c="cakra-datasource",f="cakra-reports",u=[{id:o,code:"N-001",label:"Login Page",parentId:null,children:[n],shape:"rounded",notes:"User authentication flow",position:{x:250,y:100}},{id:n,code:"N-002",label:"Dashboard",parentId:o,children:[l],shape:"rounded",notes:"Main dashboard view after login",position:{x:250,y:250}},{id:l,code:"N-003",label:"Settings",parentId:n,children:[],shape:"rounded",notes:"User settings and preferences",position:{x:250,y:400}}],x=[{id:"edge-1",fromId:o,toId:n,type:"pass"},{id:"edge-2",fromId:n,toId:l,type:"pass"}],p={[o]:[{id:"tc-001",code:"TC-001",title:"Valid login with correct credentials",steps:'1. Open login page\n2. Enter valid username\n3. Enter valid password\n4. Click "Login" button',expected:"User is redirected to Dashboard page. Welcome message displays username.",status:"pass",case_type:"General",notes:'Tested with user "Ayu"',links:"",order:0},{id:"tc-002",code:"TC-002",title:"Invalid login with wrong credentials",steps:'1. Open login page\n2. Enter invalid username\n3. Enter any password\n4. Click "Login" button',expected:'Error popup appears: "Maaf, nama kamu tidak terdaftar". User stays on login page.',status:"pass",case_type:"Negative",notes:"DenialModal should appear",links:"",order:1},{id:"tc-003",code:"TC-003",title:"Login page UI elements visibility",steps:"1. Open login page\n2. Check logo image\n3. Check title text\n4. Check input field\n5. Check button",expected:'Logo displays duck image. Title shows "QA Management Tools". Input has placeholder. Button shows "Masuk ke Dashboard".',status:"untested",case_type:"General",notes:"Visual regression check",links:"",order:2}],[n]:[{id:"tc-004",code:"TC-004",title:"Dashboard loads project list",steps:"1. Login successfully\n2. Wait for dashboard to load\n3. Check project dropdown",expected:"Project list displays all created projects. Header shows QA Dashboard logo.",status:"pass",case_type:"Positive",notes:"",links:"",order:0},{id:"tc-005",code:"TC-005",title:"Create new project",steps:'1. Click project dropdown\n2. Click "New Project"\n3. Enter project name\n4. Confirm',expected:'New project appears in dropdown. Progress bar shows "Project created!"',status:"fail",case_type:"Positive",notes:"Bug: progress bar not showing on some browsers",links:"",order:1}],[l]:[{id:"tc-006",code:"TC-006",title:"Access settings page",steps:"1. Login\n2. Navigate to /profile\n3. Check profile form",expected:"Profile page loads with name, avatar color, and role fields.",status:"skip",case_type:"General",notes:"Settings page not implemented yet",links:"",order:0}]},h=[{id:d,code:"CK-001",label:"Overview Dashboard",parentId:null,children:[c,f],shape:"rounded",notes:"Main dashboard with data summary cards and charts",position:{x:250,y:100}},{id:c,code:"CK-002",label:"Data Sources",parentId:d,children:[],shape:"rounded",notes:"Connect and manage mobile data sources",position:{x:100,y:280}},{id:f,code:"CK-003",label:"Reports",parentId:d,children:[],shape:"rounded",notes:"Generate and export aggregated reports",position:{x:400,y:280}}],m=[{id:"cakra-edge-1",fromId:d,toId:c,type:"pass"},{id:"cakra-edge-2",fromId:d,toId:f,type:"pass"}],b={[d]:[{id:"ck-tc-001",code:"CK-TC-001",title:"Dashboard loads summary cards",steps:"1. Login to Revamp Cakra\n2. Wait for overview to load\n3. Check summary cards",expected:"Summary cards display total data sources, active connections, and last sync time.",status:"pass",case_type:"Positive",notes:"",links:"",order:0},{id:"ck-tc-002",code:"CK-TC-002",title:"Data refresh button works",steps:"1. Click refresh button on overview\n2. Wait for loading indicator\n3. Verify data updates",expected:"Loading spinner appears. Data refreshes with latest values from connected sources.",status:"untested",case_type:"Positive",notes:"",links:"",order:1}],[c]:[{id:"ck-tc-003",code:"CK-TC-003",title:"Add new data source",steps:'1. Navigate to Data Sources\n2. Click "Add Source"\n3. Enter API endpoint\n4. Enter auth token\n5. Click Connect',expected:'New data source appears in the list with status "Connected". Test connection succeeds.',status:"pass",case_type:"Positive",notes:"",links:"",order:0},{id:"ck-tc-004",code:"CK-TC-004",title:"Remove data source",steps:"1. Navigate to Data Sources\n2. Click delete on a source\n3. Confirm deletion",expected:"Data source is removed from list. Associated data is archived.",status:"fail",case_type:"Negative",notes:"Bug: confirmation dialog missing, deletes immediately",links:"",order:1}],[f]:[{id:"ck-tc-005",code:"CK-TC-005",title:"Generate PDF report",steps:'1. Navigate to Reports\n2. Select date range\n3. Click "Generate PDF"\n4. Wait for generation',expected:"PDF file downloads with aggregated data, charts, and summary table.",status:"untested",case_type:"General",notes:"",links:"",order:0}]};function g(){let e="qa-dashboard";try{let t=localStorage.getItem(e),s=t?JSON.parse(t):{projects:{},activeProjectId:null,selectedNodeId:null},g=!1;s.projects[a]||(s.projects[a]={id:a,name:"Simple Dashboard QA",createdAt:new Date().toISOString(),flows:u,testCases:p,columnConfig:[...r._X],columnConfigs:{},edges:x,userProfile:{name:"Ayu",bannerColor:"#81C784",role:"QA Engineer"},nodeCounter:3,tcCounter:{[o]:3,[n]:2,[l]:1}},s.activeProjectId=a,g=!0),s.projects[i]||(s.projects[i]={id:i,name:"Revamp Cakra",createdAt:new Date(Date.now()-864e5).toISOString(),flows:h,testCases:b,columnConfig:[...r._X],columnConfigs:{},edges:m,userProfile:{name:"Ayu",bannerColor:"#64B5F6",role:"QA Lead"},nodeCounter:3,tcCounter:{[d]:2,[c]:2,[f]:1}},g=!0),g&&localStorage.setItem(e,JSON.stringify(s))}catch(e){}}},9770:(e,t,s)=>{"use strict";s.d(t,{G:()=>function e(t,s,o,n){if("function"==typeof t){d.bt.current=[],t();let e=i(d.bt.current,t);return d.bt.current=void 0,e}if(void 0!==o&&!Array.isArray(o)&&"function"!=typeof s){var l=t,f=s,u=o,x=n;let r=(0,a.M)(()=>Object.keys(u)),i=(0,a.M)(()=>({}));for(let t of r)i[t]=e(l,f,u[t],x);return i}let p="function"==typeof s?s:function(...e){let t=!Array.isArray(e[0]),s=t?0:-1,a=e[0+s],o=e[1+s],n=e[2+s],l=e[3+s],i=(0,r.G)(o,n,l);return t?i(a):i}(s,o,n),h=Array.isArray(t)?c(t,p):c([t],e=>{let[t]=e;return p(t)}),m=Array.isArray(t)?void 0:t.accelerate;return m&&!m.isTransformed&&"function"!=typeof s&&Array.isArray(o)&&(null==n?void 0:n.clamp)!==!1&&(h.accelerate={...m,times:s,keyframes:o,isTransformed:!0,...(null==n?void 0:n.ease)?{ease:n.ease}:{}}),h}});var r=s(6706),a=s(4416),o=s(3934),n=s(6436),l=s(3350);function i(e,t){let s=(0,l.d)(t()),r=()=>s.set(t());return r(),(0,n.E)(()=>{let t=()=>o.Gt.preRender(r,!1,!0),s=e.map(e=>e.on("change",t));return()=>{s.forEach(e=>e()),(0,o.WG)(r)}}),s}var d=s(2039);function c(e,t){let s=(0,a.M)(()=>[]);return i(e,()=>{s.length=0;let r=e.length;for(let t=0;t<r;t++)s[t]=e[t].get();return t(s)})}}},e=>{e.O(0,[343,909,485,619,882,441,255,358],()=>e(e.s=2053)),_N_E=e.O()}]);
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[709],{158:(e,t,s)=>{"use strict";s.d(t,{Bf:()=>A,G$:()=>w,Rz:()=>b,Vj:()=>f,hX:()=>x,ii:()=>c,k5:()=>u,sy:()=>N,wy:()=>i});var r=s(8566),a=s(9280),o=s.n(a);let n={untested:"⬜ Untested",pass:"✅ Pass",fail:"❌ Fail",skip:"⏭ Skip"},l=e=>e.replace(/\n/g,"<br>").replace(/\|/g,"\\|");function i(e,t,s){let a=(s.length>0?s:r._X).filter(e=>e.visible),o=a.map(e=>e.label).join(" | "),i=a.map(()=>"---").join(" | "),d="# ".concat(e.code?e.code+" — ":"").concat(e.label,"\n\n");d+="| # | ".concat(o," |\n"),d+="|---|".concat(i,"|\n"),t.forEach((e,t)=>{let s=a.map(t=>"status"===t.key?n[e.status]:l(e[t.key]||""));d+="| ".concat(t+1," | ").concat(s.join(" | ")," |\n")});let c=t.length,f=t.filter(e=>"skip"===e.status).length,u=t.filter(e=>"pass"===e.status).length,x=c-f>0?Math.round(u/(c-f)*100):0;return d+="\n**Pass rate: ".concat(u,"/").concat(c-f," (").concat(x,"%)**\n")}function d(e,t,s){let r=new Blob([e],{type:s}),a=URL.createObjectURL(r),o=document.createElement("a");o.href=a,o.download=t,o.click(),URL.revokeObjectURL(a)}function c(e){d(function(e){let t="# ".concat(e.name,"\n\n");for(let f of e.flows){var s,a,o,i,d,c;let u=e.testCases[f.id];if(!u||0===u.length)continue;let x=((null!=(i=null!=(o=null==(s=e.columnConfigs)?void 0:s[f.id])?o:e.columnConfig)?i:[]).length>0?null!=(c=null!=(d=null==(a=e.columnConfigs)?void 0:a[f.id])?d:e.columnConfig)?c:[]:r._X).filter(e=>e.visible),p=x.map(e=>e.label).join(" | "),h=x.map(()=>"---").join(" | ");t+="## ".concat(f.code?f.code+" — ":"").concat(f.label,"\n\n"),t+="| # | ".concat(p," |\n"),t+="|---|".concat(h,"|\n"),u.forEach((e,s)=>{let r=x.map(t=>"status"===t.key?n[e.status]:l(e[t.key]||""));t+="| ".concat(s+1," | ").concat(r.join(" | ")," |\n")});let m=u.length,b=u.filter(e=>"skip"===e.status).length,g=u.filter(e=>"pass"===e.status).length,j=m-b>0?Math.round(g/(m-b)*100):0;t+="\n**Pass rate: ".concat(g,"/").concat(m-b," (").concat(j,"%)**\n\n---\n\n")}return t}(e),"".concat(e.name,".md"),"text/markdown")}function f(e){d(JSON.stringify(e,null,2),"".concat(e.name,".json"),"application/json")}function u(e,t,s){let r=(e.code||e.label).replace(/[^a-zA-Z0-9_-]/g,"_");d(i(e,t,s),"".concat(r,".md"),"text/markdown")}function x(e,t){let s=(e.code||e.label).replace(/[^a-zA-Z0-9_-]/g,"_");d(JSON.stringify({node:e,testCases:t},null,2),"".concat(s,".json"),"application/json")}function p(e,t){let s=e&&e.length>0?e:t;return s.length>0?s:r._X}function h(e,t){return t.map(t=>"status"===t.key?n[e.status]:e[t.key]||"")}function m(e){return e.includes(",")||e.includes('"')||e.includes("\n")?'"'.concat(e.replace(/"/g,'""'),'"'):e}function b(e,t,s){let a=(e.code||e.label).replace(/[^a-zA-Z0-9_-]/g,"_");d(function(e,t,s){let a=p(s,r._X).filter(e=>e.visible);return[["#",...a.map(e=>m(e.label))].join(","),...t.map((e,t)=>[String(t+1),...h(e,a).map(m)].join(","))].join("\n")}(0,t,s),"".concat(a,".csv"),"text/csv")}function g(e,t){var s,a,o;let n=null!=(o=null!=(a=null==(s=e.columnConfigs)?void 0:s[t])?a:e.columnConfig)?o:[];return n.length>0?n:r._X}function j(e){e.fill={type:"pattern",pattern:"solid",fgColor:{argb:"FFdbd8d3"}},e.font={name:"Inter",bold:!0,size:11},e.border={top:{style:"thin"},bottom:{style:"thin"},left:{style:"thin"},right:{style:"thin"}},e.alignment={vertical:"middle",horizontal:"left",wrapText:!0}}function v(e){e.border={top:{style:"thin"},bottom:{style:"thin"},left:{style:"thin"},right:{style:"thin"}},e.font={name:"Inter",size:11},e.alignment={vertical:"middle",horizontal:"left",wrapText:!0}}function y(e,t,s,r,a){let o=e.addWorksheet(t);return o.columns=[{header:"#",key:"row",width:6},...a.map(e=>({header:e.label,key:e.key,width:Math.max(e.label.length+4,18)}))],o.getRow(1).eachCell(j),r.forEach((e,t)=>{let s={row:t+1};a.forEach(t=>{"status"===t.key?s[t.key]=n[e.status]:s[t.key]=e[t.key]||""}),o.addRow(s).eachCell(v)}),o}async function k(e,t,s){let a=p(s,r._X).filter(e=>e.visible),n=new(o()).Workbook;return n.creator="Ayu Management Tools",y(n,e.label,e.label,t,a),new Blob([await n.xlsx.writeBuffer()],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"})}async function w(e,t,s){let r=(e.code||e.label).replace(/[^a-zA-Z0-9_-]/g,"_"),a=await k(e,t,s),o=URL.createObjectURL(a),n=document.createElement("a");n.href=o,n.download="".concat(r,".xlsx"),n.click(),URL.revokeObjectURL(o)}async function C(e){let t=new(o()).Workbook;for(let s of(t.creator="Ayu Management Tools",e.flows)){let r=e.testCases[s.id];if(!r||0===r.length)continue;let a=g(e,s.id).filter(e=>e.visible);y(t,(s.code||s.label).substring(0,31).replace(/[\\/*?[\]]/g,"_"),s.label,r,a)}return new Blob([await t.xlsx.writeBuffer()],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"})}async function N(e){let t=await C(e),s=URL.createObjectURL(t),r=document.createElement("a");r.href=s,r.download="".concat(e.name,".xlsx"),r.click(),URL.revokeObjectURL(s)}function A(e){d(function(e){let t="";for(let s of e.flows){let r=e.testCases[s.id];if(!r||0===r.length)continue;let a=g(e,s.id).filter(e=>e.visible);t+="# ".concat(s.code?s.code+" — ":"").concat(s.label,"\n"),t+=["#",...a.map(e=>m(e.label))].join(",")+"\n",r.forEach((e,s)=>{let r=[String(s+1),...h(e,a).map(m)];t+=r.join(",")+"\n"}),t+="\n"}return t}(e),"".concat(e.name,".csv"),"text/csv")}},2053:(e,t,s)=>{Promise.resolve().then(s.bind(s,7193))},3350:(e,t,s)=>{"use strict";s.d(t,{d:()=>l});var r=s(2039),a=s(2115),o=s(3127),n=s(4416);function l(e){let t=(0,n.M)(()=>(0,r.OQ)(e)),{isStatic:s}=(0,a.useContext)(o.Q);if(s){let[,s]=(0,a.useState)(e);(0,a.useEffect)(()=>t.on("change",s),[])}return t}},4269:(e,t,s)=>{"use strict";s.d(t,{cn:()=>o});var r=s(2821),a=s(5889);function o(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,a.QP)((0,r.$)(t))}},5307:(e,t,s)=>{"use strict";s.d(t,{b:()=>n});var r=s(5155),a=s(2115),o=s(4269);function n(e){let{width:t=40,height:s=40,x:n=-1,y:l=-1,strokeDasharray:i="0",squares:d,className:c,...f}=e,u=(0,a.useId)();return(0,r.jsxs)("svg",{"aria-hidden":"true",className:(0,o.cn)("pointer-events-none absolute inset-0 h-full w-full fill-gray-400/30 stroke-gray-400/30",c),...f,children:[(0,r.jsx)("defs",{children:(0,r.jsx)("pattern",{id:u,width:t,height:s,patternUnits:"userSpaceOnUse",x:n,y:l,children:(0,r.jsx)("path",{d:"M.5 ".concat(s,"V.5H").concat(t),fill:"none",strokeDasharray:i})})}),(0,r.jsx)("rect",{width:"100%",height:"100%",strokeWidth:0,fill:"url(#".concat(u,")")}),d&&(0,r.jsx)("svg",{x:n,y:l,className:"overflow-visible",children:d.map(e=>{let[a,o]=e;return(0,r.jsx)("rect",{strokeWidth:"0",width:t-1,height:s-1,x:a*t+1,y:o*s+1},"".concat(a,"-").concat(o))})})]})}},5815:(e,t,s)=>{"use strict";s.d(t,{p:()=>a});var r=s(5155);function a(e){let{message:t,action:s}=e;return(0,r.jsxs)("div",{className:"flex flex-col items-center justify-center h-full gap-4 px-6 text-center",children:[(0,r.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:"w-28 h-28 object-contain select-none opacity-15",draggable:!1}),(0,r.jsx)("p",{className:"text-sm max-w-[280px]",style:{color:"var(--text-tertiary)"},children:t}),s&&(0,r.jsx)("button",{onClick:s.onClick,className:"px-4 py-2 text-sm font-medium rounded-md transition-opacity hover:opacity-80",style:{backgroundColor:"var(--accent)",color:"var(--bg-primary)",borderRadius:"var(--radius-pill)"},children:s.label})]})}},7193:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>w});var r=s(5155),a=s(8661),o=s.n(a),n=s(2115),l=s(2619),i=s.n(l),d=s(7246),c=s(158),f=s(5815),u=s(4269);function x(e){let{width:t=40,height:s=40,squares:a=[24,24],className:o,squaresClassName:l,...i}=e,[d,c]=a,[f,x]=(0,n.useState)(null);return(0,r.jsx)("svg",{width:t*d,height:s*c,className:(0,u.cn)("absolute inset-0 h-full w-full border border-gray-400/30",o),...i,children:Array.from({length:d*c}).map((e,a)=>{let o=a%d*t,n=Math.floor(a/d)*s;return(0,r.jsx)("rect",{x:o,y:n,width:t,height:s,className:(0,u.cn)("stroke-gray-400/30 transition-all duration-100 ease-in-out not-[&:hover]:duration-1000",f===a?"fill-gray-300/30":"fill-transparent",l),onMouseEnter:()=>x(a),onMouseLeave:()=>x(null)},a)})})}var p=s(5307),h=s(3350),m=s(7952),b=s(8561);let g={some:0,all:1};function j(e){let{value:t,startValue:s=0,direction:a="up",delay:o=0,className:l,decimalPlaces:i=0,...d}=e,c=(0,n.useRef)(null),f=(0,h.d)("down"===a?t:s),x=(0,m.z)(f,{damping:60,stiffness:100}),p=function(e){let{root:t,margin:s,amount:r,once:a=!1,initial:o=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},[l,i]=(0,n.useState)(o);return(0,n.useEffect)(()=>{if(!e.current||a&&l)return;let o={root:t&&t.current||void 0,margin:s,amount:r};return function(e,t,{root:s,margin:r,amount:a="some"}={}){let o=(0,b.K)(e),n=new WeakMap,l=new IntersectionObserver(e=>{e.forEach(e=>{let s=n.get(e.target);if(!!s!==e.isIntersecting)if(e.isIntersecting){let s=t(e.target,e);"function"==typeof s?n.set(e.target,s):l.unobserve(e.target)}else"function"==typeof s&&(s(e),n.delete(e.target))})},{root:s,rootMargin:r,threshold:"number"==typeof a?a:g[a]});return o.forEach(e=>l.observe(e)),()=>l.disconnect()}(e.current,()=>(i(!0),a?void 0:()=>i(!1)),o)},[t,e,s,a,r]),l}(c,{once:!0,margin:"0px"});return(0,n.useEffect)(()=>{let e=null;return p&&(e=setTimeout(()=>{f.set("down"===a?s:t)},1e3*o)),()=>{null!==e&&clearTimeout(e)}},[f,p,o,t,a,s]),(0,n.useEffect)(()=>x.on("change",e=>{c.current&&(c.current.textContent=Intl.NumberFormat("en-US",{minimumFractionDigits:i,maximumFractionDigits:i}).format(Number(e.toFixed(i))))}),[x,i]),(0,r.jsx)("span",{ref:c,className:(0,u.cn)("inline-block tracking-wider text-black tabular-nums dark:text-white",l),...d,children:s})}var v=s(9534);let y=[{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 00-2.91-.09z"}),(0,r.jsx)("path",{d:"M12 15l-3-3a22 22 0 012-3.95A12.88 12.88 0 0122 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 01-4 2z"}),(0,r.jsx)("path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0"}),(0,r.jsx)("path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5"})]}),bg:"#F5F0EB"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,r.jsx)("circle",{cx:"12",cy:"12",r:"6"}),(0,r.jsx)("circle",{cx:"12",cy:"12",r:"2",fill:"#6F4E37"})]}),bg:"#EDE6DD"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M10 2v7.527a2 2 0 01-.211.896L4.72 20.55a1 1 0 00.9 1.45h12.76a1 1 0 00.9-1.45l-5.069-10.127A2 2 0 0114 9.527V2"}),(0,r.jsx)("path",{d:"M8.5 2h7"}),(0,r.jsx)("path",{d:"M7 16h10"})]}),bg:"#F7F3EE"},{icon:(0,r.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,r.jsx)("path",{d:"M8.5 14.5A2.5 2.5 0 0011 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 11-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 002.5 2.5z"})}),bg:"#F5F0EB"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 006 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5"}),(0,r.jsx)("path",{d:"M9 18h6"}),(0,r.jsx)("path",{d:"M10 22h4"})]}),bg:"#EDE6DD"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 01-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 011-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 011.52 0C14.51 3.81 17 5 19 5a1 1 0 011 1z"}),(0,r.jsx)("path",{d:"M12 8v4"}),(0,r.jsx)("path",{d:"M12 16h.01"})]}),bg:"#F7F3EE"},{icon:(0,r.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,r.jsx)("polygon",{points:"13 2 3 14 12 14 11 22 21 10 12 10 13 2",fill:"#6F4E37",opacity:"0.2"})}),bg:"#F5F0EB"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("line",{x1:"6",y1:"11",x2:"10",y2:"11"}),(0,r.jsx)("line",{x1:"8",y1:"9",x2:"8",y2:"13"}),(0,r.jsx)("line",{x1:"15",y1:"12",x2:"15.01",y2:"12"}),(0,r.jsx)("line",{x1:"18",y1:"10",x2:"18.01",y2:"10"}),(0,r.jsx)("path",{d:"M17.32 5H6.68a4 4 0 00-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 003 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 019.828 16h4.344a2 2 0 011.414.586L17 18c.5.5 1 1 2 1a3 3 0 003-3c0-1.544-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0017.32 5z"})]}),bg:"#EDE6DD"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M12 2L2 7l10 5 10-5-10-5z"}),(0,r.jsx)("path",{d:"M2 17l10 5 10-5"}),(0,r.jsx)("path",{d:"M2 12l10 5 10-5",fill:"#6F4E37",opacity:"0.15"})]}),bg:"#F7F3EE"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M12 2a10 10 0 1010 10 4 4 0 01-5-5 4 4 0 01-5-5"}),(0,r.jsx)("path",{d:"M8.5 8.5v.01"}),(0,r.jsx)("path",{d:"M16 15.5v.01"}),(0,r.jsx)("path",{d:"M12 12v.01"}),(0,r.jsx)("path",{d:"M11 17v.01"}),(0,r.jsx)("path",{d:"M7 14v.01"})]}),bg:"#F5F0EB"},{icon:(0,r.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,r.jsx)("polygon",{points:"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2",fill:"#6F4E37",opacity:"0.2"})}),bg:"#EDE6DD"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,r.jsx)("polygon",{points:"16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76",fill:"#6F4E37",opacity:"0.2"})]}),bg:"#F7F3EE"},{icon:(0,r.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:(0,r.jsx)("path",{d:"M19.439 7.85c-.049.322.059.648.289.878l1.568 1.568c.47.47.706 1.087.706 1.704s-.235 1.233-.706 1.704l-1.611 1.611a.98.98 0 01-.837.276c-.47-.07-.802-.48-.968-.925a2.501 2.501 0 10-3.214 3.214c.446.166.855.497.925.968a.979.979 0 01-.276.837l-1.61 1.611a2.404 2.404 0 01-1.705.707 2.402 2.402 0 01-1.704-.706l-1.568-1.568a1.026 1.026 0 00-.877-.29c-.493.074-.84.504-1.02.968a2.5 2.5 0 11-3.237-3.237c.464-.18.894-.527.967-1.02a1.026 1.026 0 00-.289-.877l-1.568-1.568A2.402 2.402 0 011.998 12c0-.617.236-1.234.706-1.704L4.23 8.77c.24-.24.581-.353.917-.303.515.077.877.528 1.073.978a2.5 2.5 0 103.259-3.259c-.45-.196-.9-.558-.977-1.073-.05-.336.062-.676.303-.917l1.525-1.525A2.402 2.402 0 0112 1.998c.617 0 1.234.236 1.704.706l1.568 1.568c.23.23.556.338.877.29.493-.074.84-.504 1.02-.968a2.5 2.5 0 113.237 3.237c-.464.18-.894.527-.967 1.02z"})}),bg:"#F5F0EB"},{icon:(0,r.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#1A1A1A",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("path",{d:"M21 16V8a2 2 0 00-1-1.73l-7-4a2 2 0 00-2 0l-7 4A2 2 0 003 8v8a2 2 0 001 1.73l7 4a2 2 0 002 0l7-4A2 2 0 0021 16z"}),(0,r.jsx)("polyline",{points:"3.27 6.96 12 12.01 20.73 6.96"}),(0,r.jsx)("line",{x1:"12",y1:"22.08",x2:"12",y2:"12"})]}),bg:"#EDE6DD"}];function k(e){let t=0;for(let s=0;s<e.length;s++)t=(t<<5)-t+e.charCodeAt(s)|0;return y[Math.abs(t)%y.length]}function w(){let{projects:e,createProject:t,deleteProject:s,duplicateProject:a,importProject:l,renameProject:u,profile:h,profileInitials:m,promptDialog:b,confirmDialog:g}=(0,d.M)(),y=Object.values(e),[w,C]=(0,n.useState)(null),[N,A]=(0,n.useState)(""),[E,L]=(0,n.useState)(null),[M,D]=(0,n.useState)(!1),[F,S]=(0,n.useState)(!1),[P,B]=(0,n.useState)(null),I=(0,n.useRef)(null),R=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(!E)return;let e=e=>{I.current&&!I.current.contains(e.target)&&L(null)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[E]),(0,n.useEffect)(()=>{(0,v.nU)()},[]);let W=(0,n.useMemo)(()=>{let e=y.flatMap(e=>Object.values(e.testCases).flat()),t=e.length,s=e.filter(e=>"pass"===e.status).length,r=e.filter(e=>"skip"===e.status).length,a=y.reduce((e,t)=>e+t.flows.length,0),o=t-r;return{totalCases:t,totalNodes:a,overallPassRate:o>0?Math.round(s/o*100):0}},[y]);if(0===y.length)return(0,r.jsx)("div",{className:"h-full overflow-auto p-6",children:(0,r.jsx)(f.p,{message:"No projects yet. Create your first project to get started.",action:{label:"+ New Project",onClick:async()=>{let e=await b("New Project","Enter project name:");(null==e?void 0:e.trim())&&t(e.trim())}}})});let _=()=>{w&&N.trim()&&u(w,N.trim()),C(null)},U=async(e,t)=>{L(null),await g("Delete Project",'Delete "'.concat(t,'"? This cannot be undone.'))&&s(e)};return(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 h-full overflow-auto relative",children:[(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 absolute inset-0 overflow-hidden pointer-events-none",children:[(0,r.jsx)(x,{width:48,height:48,squares:[32,32],className:"opacity-30",squaresClassName:"fill-neutral-200/20"}),(0,r.jsx)("div",{style:{background:"linear-gradient(to bottom, var(--bg-primary) 0%, transparent 15%, transparent 85%, var(--bg-primary) 100%)"},className:"jsx-ef3362fdbd774571 absolute inset-0"})]}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 relative p-6",children:[(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex items-center justify-between mb-6",children:[(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("h2",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-lg font-medium",children:"All Projects"}),(0,r.jsxs)("p",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-xs mt-0.5",children:[y.length," project",1!==y.length?"s":""]})]}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex items-center gap-2",children:[(0,r.jsx)("button",{onClick:()=>D(!0),style:{borderColor:"#6F4E37",color:"#6F4E37",borderRadius:"var(--radius-pill)",boxShadow:"0 0 12px rgba(111,78,55,0.3), 0 0 24px rgba(111,78,55,0.15)",animation:"glowPulse 2s ease-in-out infinite"},className:"jsx-ef3362fdbd774571 px-4 py-2 text-sm font-medium rounded-md border transition-all hover:scale-105",children:"Donate Please \uD83E\uDD7A\uD83D\uDC49\uD83D\uDC48"}),(0,r.jsx)("button",{onClick:()=>{var e;return null==(e=R.current)?void 0:e.click()},style:{borderColor:"var(--border)",color:"var(--text-secondary)",borderRadius:"var(--radius-pill)"},className:"jsx-ef3362fdbd774571 px-4 py-2 text-sm font-medium rounded-md border transition-opacity hover:opacity-80",children:"Import Project"}),(0,r.jsx)("input",{ref:R,type:"file",accept:".json",onChange:e=>{var t;let s=null==(t=e.target.files)?void 0:t[0];if(!s)return;let r=new FileReader;r.onload=()=>{let e=l(r.result);e.ok?B(null):B(e.error||"Import failed")},r.readAsText(s),e.target.value=""},className:"jsx-ef3362fdbd774571 hidden"}),(0,r.jsx)("button",{onClick:async()=>{let e=await b("New Project","Enter project name:");(null==e?void 0:e.trim())&&t(e.trim())},style:{backgroundColor:"var(--accent)",color:"var(--bg-primary)",borderRadius:"var(--radius-pill)"},className:"jsx-ef3362fdbd774571 px-4 py-2 text-sm font-medium rounded-md transition-opacity hover:opacity-80",children:"+ New Project"})]})]}),P&&(0,r.jsxs)("div",{style:{backgroundColor:"var(--status-fail-bg)",color:"var(--status-fail-text)"},className:"jsx-ef3362fdbd774571 mb-4 text-xs px-3 py-2 rounded-lg flex items-center justify-between",children:[(0,r.jsxs)("span",{className:"jsx-ef3362fdbd774571",children:["Import failed: ",P]}),(0,r.jsx)("button",{onClick:()=>B(null),className:"jsx-ef3362fdbd774571 ml-2 font-bold",children:"\\u00d7"})]}),(0,r.jsx)("div",{className:"jsx-ef3362fdbd774571 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-5",children:y.map(e=>{let t=Object.values(e.testCases).flat(),s=t.length,o=t.filter(e=>"pass"===e.status).length,n=t.filter(e=>"fail"===e.status).length,l=t.filter(e=>"skip"===e.status).length,d=t.filter(e=>"untested"===e.status).length,f=s-l,u=f>0?Math.round(o/f*100):0,x=w===e.id;return(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 group relative flex flex-col rounded-xl border overflow-hidden transition-all duration-200 hover:shadow-lg hover:border-[var(--border-hover)]",children:[(0,r.jsxs)("div",{style:{background:"linear-gradient(135deg, #F7F5F1 0%, #EDEAE3 100%)"},className:"jsx-ef3362fdbd774571 relative h-24 overflow-hidden",children:[(0,r.jsx)(p.b,{width:28,height:28,x:-1,y:-1,strokeDasharray:"4 2",className:"text-neutral-400/20"}),(0,r.jsx)("div",{className:"jsx-ef3362fdbd774571 absolute inset-0 flex items-center justify-center pointer-events-none",children:(0,r.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:"",style:{opacity:.08},className:"jsx-ef3362fdbd774571 h-[70%] object-contain select-none"})}),(0,r.jsx)("div",{style:{background:u>=80?"var(--status-pass-text)":u>=50?"var(--status-skip-text)":s>0?"var(--status-fail-text)":"var(--border)"},className:"jsx-ef3362fdbd774571 absolute bottom-0 left-0 right-0 h-1"}),(0,r.jsx)("div",{style:{backgroundColor:k(e.id).bg},className:"jsx-ef3362fdbd774571 absolute top-4 left-4 w-10 h-10 rounded-lg flex items-center justify-center",children:k(e.id).icon})]}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex-1 p-4 flex flex-col gap-3",children:[x?(0,r.jsx)("input",{autoFocus:!0,value:N,onChange:e=>A(e.target.value),onBlur:_,onKeyDown:e=>{"Enter"===e.key&&_(),"Escape"===e.key&&C(null)},style:{borderColor:"var(--accent)",color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-sm font-semibold bg-transparent outline-none border-b px-0 py-0.5"}):(0,r.jsx)("h3",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-sm font-semibold truncate",children:e.name}),(0,r.jsxs)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 flex items-center gap-3 text-xs",children:[(0,r.jsxs)("span",{className:"jsx-ef3362fdbd774571 flex items-center gap-1",children:[(0,r.jsx)(j,{value:e.flows.length,className:"text-xs font-medium",style:{color:"var(--text-primary)"}}),(0,r.jsx)("span",{className:"jsx-ef3362fdbd774571",children:"nodes"})]}),(0,r.jsx)("span",{style:{backgroundColor:"var(--border)"},className:"jsx-ef3362fdbd774571 w-px h-3"}),(0,r.jsxs)("span",{className:"jsx-ef3362fdbd774571 flex items-center gap-1",children:[(0,r.jsx)(j,{value:s,className:"text-xs font-medium",style:{color:"var(--text-primary)"}}),(0,r.jsx)("span",{className:"jsx-ef3362fdbd774571",children:"cases"})]})]}),s>0&&(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 space-y-1",children:[(0,r.jsxs)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 flex items-center justify-between text-[10px]",children:[(0,r.jsx)("span",{className:"jsx-ef3362fdbd774571",children:"Pass rate"}),(0,r.jsxs)("span",{style:{color:u>=80?"var(--status-pass-text)":u>=50?"var(--status-skip-text)":"var(--status-fail-text)",fontWeight:600},className:"jsx-ef3362fdbd774571",children:[u,"%"]})]}),(0,r.jsx)("div",{style:{backgroundColor:"var(--bg-secondary)"},className:"jsx-ef3362fdbd774571 h-1.5 w-full rounded-full overflow-hidden",children:(0,r.jsx)("div",{style:{width:"".concat(u,"%"),backgroundColor:u>=80?"var(--status-pass-text)":u>=50?"var(--status-skip-text)":"var(--status-fail-text)"},className:"jsx-ef3362fdbd774571 h-full rounded-full transition-all duration-500"})}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex gap-1 mt-1",children:[o>0&&(0,r.jsxs)("span",{style:{backgroundColor:"var(--status-pass-bg)",color:"var(--status-pass-text)"},className:"jsx-ef3362fdbd774571 text-[9px] px-1.5 py-0.5 rounded-full",children:[o," pass"]}),n>0&&(0,r.jsxs)("span",{style:{backgroundColor:"var(--status-fail-bg)",color:"var(--status-fail-text)"},className:"jsx-ef3362fdbd774571 text-[9px] px-1.5 py-0.5 rounded-full",children:[n," fail"]}),l>0&&(0,r.jsxs)("span",{style:{backgroundColor:"var(--status-skip-bg)",color:"var(--status-skip-text)"},className:"jsx-ef3362fdbd774571 text-[9px] px-1.5 py-0.5 rounded-full",children:[l," skip"]}),d>0&&(0,r.jsxs)("span",{style:{backgroundColor:"var(--status-untested-bg)",color:"var(--status-untested-text)"},className:"jsx-ef3362fdbd774571 text-[9px] px-1.5 py-0.5 rounded-full",children:[d," todo"]})]})]}),(0,r.jsxs)("div",{style:{color:"var(--text-tertiary)",borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 text-[10px] mt-auto pt-2 border-t",children:["Created ",new Date(e.createdAt).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})]})]}),(0,r.jsx)("div",{className:"jsx-ef3362fdbd774571 absolute top-3 right-3 flex gap-1 opacity-0 group-hover:opacity-100 transition-opacity duration-150 z-10",children:(0,r.jsx)("button",{onClick:t=>{t.preventDefault(),t.stopPropagation(),L(E===e.id?null:e.id)},style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)",color:"var(--text-secondary)"},className:"jsx-ef3362fdbd774571 w-7 h-7 flex items-center justify-center rounded-md border text-xs transition-colors hover:bg-[var(--bg-secondary)]",children:(0,r.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("circle",{cx:"6",cy:"2.5",r:"1",fill:"currentColor",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("circle",{cx:"6",cy:"6",r:"1",fill:"currentColor",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("circle",{cx:"6",cy:"9.5",r:"1",fill:"currentColor",className:"jsx-ef3362fdbd774571"})]})})}),E===e.id&&(0,r.jsxs)("div",{ref:I,style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)"},className:"jsx-ef3362fdbd774571 absolute top-11 right-3 z-30 py-1 min-w-[140px] border rounded-lg",children:[(0,r.jsxs)(i(),{href:"/projects/".concat(e.id),className:"flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",style:{color:"var(--text-primary)"},onClick:()=>L(null),children:[(0,r.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:(0,r.jsx)("path",{d:"M2 6h8M7 3l3 3-3 3",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",className:"jsx-ef3362fdbd774571"})}),"Open"]}),(0,r.jsxs)("button",{onClick:t=>{var s,r;t.stopPropagation(),s=e.id,r=e.name,C(s),A(r),L(null)},style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 w-full flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",children:[(0,r.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:(0,r.jsx)("path",{d:"M8.5 1.5l2 2-7 7H1.5v-2l7-7z",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",className:"jsx-ef3362fdbd774571"})}),"Rename"]}),(0,r.jsxs)("button",{onClick:t=>{t.stopPropagation(),a(e.id),L(null)},style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 w-full flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",children:[(0,r.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("rect",{x:"3.5",y:"3.5",width:"6",height:"6",rx:"1",stroke:"currentColor",strokeWidth:"1.2",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("path",{d:"M8.5 3.5V2.5a1 1 0 00-1-1h-5a1 1 0 00-1 1v5a1 1 0 001 1h1",stroke:"currentColor",strokeWidth:"1.2",className:"jsx-ef3362fdbd774571"})]}),"Duplicate"]}),(0,r.jsxs)("button",{onClick:t=>{t.stopPropagation(),(0,c.Vj)(e),L(null)},style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 w-full flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",children:[(0,r.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("path",{d:"M10 7v3a1 1 0 01-1 1H3a1 1 0 01-1-1V7",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("polyline",{points:"4 5 6 7 8 5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("line",{x1:"6",y1:"1",x2:"6",y2:"7",stroke:"currentColor",strokeWidth:"1.2",className:"jsx-ef3362fdbd774571"})]}),"Export JSON"]}),(0,r.jsx)("div",{style:{borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 border-t my-1"}),(0,r.jsxs)("button",{onClick:t=>{t.stopPropagation(),U(e.id,e.name)},style:{color:"var(--status-fail-text)"},className:"jsx-ef3362fdbd774571 w-full flex items-center gap-2 px-3 py-1.5 text-xs hover:bg-[var(--bg-secondary)]",children:[(0,r.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",className:"jsx-ef3362fdbd774571",children:(0,r.jsx)("path",{d:"M1.5 3h9M4.5 3V1.5h3V3M3 3v7.5h6V3",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",className:"jsx-ef3362fdbd774571"})}),"Delete"]})]}),(0,r.jsx)(i(),{href:"/projects/".concat(e.id),className:"absolute inset-0 z-0",onClick:()=>L(null)})]},e.id)})}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 relative mt-8 pt-6 border-t",children:[(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex items-center gap-4 mb-4",children:[(0,r.jsx)("div",{style:{border:"1px solid var(--border)"},className:"jsx-ef3362fdbd774571 w-10 h-10 rounded-lg overflow-hidden flex-shrink-0",children:h.avatarUrl?(0,r.jsx)("img",{src:h.avatarUrl,alt:"Avatar",className:"jsx-ef3362fdbd774571 w-full h-full object-cover"}):(0,r.jsx)("div",{style:{backgroundColor:h.bannerColor,color:"#fff"},className:"jsx-ef3362fdbd774571 w-full h-full flex items-center justify-center text-sm font-bold",children:m})}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("div",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-sm font-medium",children:h.name||"Anonymous Tester"}),(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px]",children:h.role||"No role set"})]})]}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 grid grid-cols-2 sm:grid-cols-4 gap-3",children:[(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 p-3 rounded-lg border",children:[(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] uppercase tracking-wider mb-1",children:"Projects"}),(0,r.jsx)(j,{value:y.length,className:"text-lg font-semibold",style:{color:"var(--accent)"}})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 p-3 rounded-lg border",children:[(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] uppercase tracking-wider mb-1",children:"Test Cases"}),(0,r.jsx)(j,{value:W.totalCases,className:"text-lg font-semibold",style:{color:"var(--status-pass-text)"}})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 p-3 rounded-lg border",children:[(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] uppercase tracking-wider mb-1",children:"Flow Nodes"}),(0,r.jsx)(j,{value:W.totalNodes,className:"text-lg font-semibold",style:{color:"#9E7AFF"}})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"var(--bg-card)"},className:"jsx-ef3362fdbd774571 p-3 rounded-lg border",children:[(0,r.jsx)("div",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] uppercase tracking-wider mb-1",children:"Pass Rate"}),(0,r.jsxs)("div",{className:"jsx-ef3362fdbd774571 flex items-baseline gap-0.5",children:[(0,r.jsx)(j,{value:W.overallPassRate,className:"text-lg font-semibold",style:{color:W.overallPassRate>=80?"var(--status-pass-text)":"var(--status-skip-text)"}}),(0,r.jsx)("span",{style:{color:W.overallPassRate>=80?"var(--status-pass-text)":"var(--status-skip-text)"},className:"jsx-ef3362fdbd774571 text-sm font-medium",children:"%"})]})]})]})]})]}),M&&(0,r.jsx)("div",{style:{backgroundColor:"rgba(0,0,0,0.3)",animation:"fadeIn 150ms ease-out"},onClick:()=>D(!1),className:"jsx-ef3362fdbd774571 fixed inset-0 z-[400] flex items-center justify-center",children:(0,r.jsxs)("div",{style:{backgroundColor:"var(--bg-card)",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)",animation:"fadeInUp 200ms ease-out"},onClick:e=>e.stopPropagation(),className:"jsx-ef3362fdbd774571 w-full max-w-lg mx-4 rounded-xl border overflow-hidden",children:[(0,r.jsxs)("div",{style:{background:"linear-gradient(180deg, #FFF8E1 0%, var(--bg-card) 100%)"},className:"jsx-ef3362fdbd774571 px-6 pt-6 pb-5 flex flex-col items-center text-center",children:[(0,r.jsx)("div",{className:"jsx-ef3362fdbd774571 w-20 h-20 mb-4 flex items-center justify-center",children:(0,r.jsxs)("svg",{width:"60",height:"60",viewBox:"0 0 48 48",fill:"none",className:"jsx-ef3362fdbd774571",children:[(0,r.jsx)("path",{d:"M8 16h24v20a8 8 0 01-8 8H16a8 8 0 01-8-8V16z",fill:"#6F4E37",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("path",{d:"M32 20h4a4 4 0 010 8h-4",stroke:"#6F4E37",strokeWidth:"2.5",strokeLinecap:"round",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("path",{d:"M14 12c0-2 2-4 4-4s4 2 4 4",stroke:"#BCAAA4",strokeWidth:"2",strokeLinecap:"round",opacity:"0.6",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("path",{d:"M20 10c0-2 2-4 4-4s4 2 4 4",stroke:"#BCAAA4",strokeWidth:"2",strokeLinecap:"round",opacity:"0.4",className:"jsx-ef3362fdbd774571"}),(0,r.jsx)("rect",{x:"6",y:"38",width:"28",height:"4",rx:"2",fill:"#D7CCC8",className:"jsx-ef3362fdbd774571"})]})}),(0,r.jsx)("h3",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-base font-semibold mb-2",children:"Please, Buy me a Coffee.."}),(0,r.jsx)("p",{style:{color:"var(--text-secondary)"},className:"jsx-ef3362fdbd774571 text-sm leading-relaxed",children:"If Test Lah! has been helpful, consider buying Qois a coffee. Any size will do. He's very tired."})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 px-6 py-4 border-t",children:[(0,r.jsx)("p",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] font-semibold uppercase tracking-wider mb-2",children:"Pickup Location"}),(0,r.jsx)("p",{style:{color:"var(--text-primary)"},className:"jsx-ef3362fdbd774571 text-sm font-medium mb-1",children:"Toko Kopi TUKU — BSD"}),(0,r.jsx)("p",{style:{color:"var(--text-secondary)"},className:"jsx-ef3362fdbd774571 text-xs leading-relaxed",children:"Ruko Sektor 1.3, Blok RB No. 1, Jl. Griya Loka Raya No.1, Serpong, Tangerang Selatan"})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)"},className:"jsx-ef3362fdbd774571 px-6 py-4 border-t flex gap-2",children:[(0,r.jsxs)("div",{onMouseEnter:()=>S(!0),onMouseLeave:()=>S(!1),className:"jsx-ef3362fdbd774571 flex-1 relative",children:[(0,r.jsx)("button",{onClick:()=>D(!1),style:{borderColor:"var(--border)",color:"var(--text-secondary)"},className:"jsx-ef3362fdbd774571 w-full px-3 py-2.5 text-xs font-medium rounded-lg border transition-colors hover:bg-[var(--bg-secondary)]",children:"Maybe Later"}),F&&(0,r.jsx)("div",{style:{width:240,backgroundColor:"var(--bg-card)",borderColor:"var(--border)",boxShadow:"var(--shadow-lg)",animation:"fadeInUp 200ms ease-out"},className:"jsx-ef3362fdbd774571 absolute bottom-full left-1/2 -translate-x-1/2 mb-2 z-[410] rounded-xl border overflow-hidden",children:(0,r.jsx)("img",{src:"https://i.pinimg.com/564x/82/74/4d/82744d1c73b0296c5f32e6f669ac05e6.jpg",alt:"Maybe next time?",width:240,style:{borderRadius:11},className:"jsx-ef3362fdbd774571 w-full h-auto block"})})]}),(0,r.jsx)("a",{href:"https://maps.google.com/?q=Toko+Kopi+TUKU+BSD",target:"_blank",rel:"noopener noreferrer",style:{backgroundColor:"#6F4E37",color:"#fff"},className:"jsx-ef3362fdbd774571 flex-1 px-3 py-2.5 text-xs font-medium rounded-lg text-center transition-opacity hover:opacity-80",children:"Open in Maps"})]}),(0,r.jsxs)("div",{style:{borderColor:"var(--border)",backgroundColor:"#FAFAF8"},className:"jsx-ef3362fdbd774571 px-6 py-4 border-t",children:[(0,r.jsx)("p",{style:{color:"var(--text-secondary)",direction:"rtl"},className:"jsx-ef3362fdbd774571 text-xs text-center leading-relaxed mb-3",children:"اِنَّ الْمُصَّدِّقِيْنَ وَالْمُصَّدِّقٰتِ وَاَقْرَضُوا اللّٰهَ قَرْضًا حَسَنًا يُّضٰعَفُ لَهُمْ وَلَهُمْ اَجْرٌ كَرِيْمٌ ١٨"}),(0,r.jsx)("p",{style:{color:"var(--text-tertiary)"},className:"jsx-ef3362fdbd774571 text-[10px] text-center leading-relaxed",children:"“Sesungguhnya orang-orang yang bersedekah baik laki-laki maupun perempuan dan meminjamkan kepada Allah dengan pinjaman yang baik, akan dilipatgandakan (balasannya) bagi mereka; dan mereka akan mendapat pahala yang mulia.” (QS Al Hadid: 18)"})]})]})}),(0,r.jsx)(o(),{id:"ef3362fdbd774571",children:"@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeInUp{from{opacity:0;transform:translatey(16px)}to{opacity:1;transform:translatey(0)}}@keyframes fadeInRight{from{opacity:0;transform:translatey(-50%)translatex(16px)}to{opacity:1;transform:translatey(-50%)translatex(0)}}@keyframes glowPulse{0%,100%{box-shadow:0 0 12px rgba(111,78,55,.3),0 0 24px rgba(111,78,55,.15)}50%{box-shadow:0 0 20px rgba(111,78,55,.5),0 0 40px rgba(111,78,55,.25)}}"})]})}},7952:(e,t,s)=>{"use strict";s.d(t,{z:()=>f});var r=s(3182),a=s(9752),o=s(3934);function n(e){return"number"==typeof e?e:parseFloat(e)}var l=s(2115),i=s(3127),d=s(3350),c=s(9770);function f(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{isStatic:s}=(0,l.useContext)(i.Q),f=()=>(0,r.S)(e)?e.get():e;if(s)return(0,c.G)(f);let u=(0,d.d)(f());return(0,l.useInsertionEffect)(()=>(function(e,t,s={}){let l,i=e.get(),d=null,c=i,f="string"==typeof i?i.replace(/[\d.-]/g,""):void 0,u=()=>{d&&(d.stop(),d=null),e.animation=void 0},x=()=>{(()=>{let t=n(e.get()),r=n(c);if(t===r)return u();let o=d?d.getGeneratorVelocity():e.getVelocity();u(),d=new a.s({keyframes:[t,r],velocity:o,type:"spring",restDelta:.001,restSpeed:.01,...s,onUpdate:l})})(),e.animation=d??void 0,e.events.animationStart?.notify(),d?.then(()=>{e.animation=void 0,e.events.animationComplete?.notify()})};if(e.attach((e,t)=>{c=e,l=e=>{var s,r;return t((s=e,(r=f)?s+r:s))},o.Gt.postRender(x)},u),(0,r.S)(t)){let r=!0===s.skipInitialAnimation,a=t.on("change",t=>{var s,a,o,n;r?(r=!1,e.jump((s=t,(a=f)?s+a:s),!1)):e.set((o=t,(n=f)?o+n:o))}),o=e.on("destroy",a);return()=>{a(),o()}}return u})(u,e,t),[u,JSON.stringify(t)]),u}(e,{type:"spring",...t})}},9534:(e,t,s)=>{"use strict";s.d(t,{nU:()=>g});var r=s(8566);let a="mock-dashboard-project",o="node-login",n="node-dashboard",l="node-settings",i="mock-cakra-project",d="cakra-overview",c="cakra-datasource",f="cakra-reports",u=[{id:o,code:"N-001",label:"Login Page",parentId:null,children:[n],shape:"rounded",notes:"User authentication flow",position:{x:250,y:100}},{id:n,code:"N-002",label:"Dashboard",parentId:o,children:[l],shape:"rounded",notes:"Main dashboard view after login",position:{x:250,y:250}},{id:l,code:"N-003",label:"Settings",parentId:n,children:[],shape:"rounded",notes:"User settings and preferences",position:{x:250,y:400}}],x=[{id:"edge-1",fromId:o,toId:n,type:"pass"},{id:"edge-2",fromId:n,toId:l,type:"pass"}],p={[o]:[{id:"tc-001",code:"TC-001",title:"Valid login with correct credentials",steps:'1. Open login page\n2. Enter valid username\n3. Enter valid password\n4. Click "Login" button',expected:"User is redirected to Dashboard page. Welcome message displays username.",status:"pass",case_type:"General",notes:'Tested with user "Ayu"',links:"",order:0},{id:"tc-002",code:"TC-002",title:"Invalid login with wrong credentials",steps:'1. Open login page\n2. Enter invalid username\n3. Enter any password\n4. Click "Login" button',expected:'Error popup appears: "Maaf, nama kamu tidak terdaftar". User stays on login page.',status:"pass",case_type:"Negative",notes:"DenialModal should appear",links:"",order:1},{id:"tc-003",code:"TC-003",title:"Login page UI elements visibility",steps:"1. Open login page\n2. Check logo image\n3. Check title text\n4. Check input field\n5. Check button",expected:'Logo displays duck image. Title shows "QA Management Tools". Input has placeholder. Button shows "Masuk ke Dashboard".',status:"untested",case_type:"General",notes:"Visual regression check",links:"",order:2}],[n]:[{id:"tc-004",code:"TC-004",title:"Dashboard loads project list",steps:"1. Login successfully\n2. Wait for dashboard to load\n3. Check project dropdown",expected:"Project list displays all created projects. Header shows QA Dashboard logo.",status:"pass",case_type:"Positive",notes:"",links:"",order:0},{id:"tc-005",code:"TC-005",title:"Create new project",steps:'1. Click project dropdown\n2. Click "New Project"\n3. Enter project name\n4. Confirm',expected:'New project appears in dropdown. Progress bar shows "Project created!"',status:"fail",case_type:"Positive",notes:"Bug: progress bar not showing on some browsers",links:"",order:1}],[l]:[{id:"tc-006",code:"TC-006",title:"Access settings page",steps:"1. Login\n2. Navigate to /profile\n3. Check profile form",expected:"Profile page loads with name, avatar color, and role fields.",status:"skip",case_type:"General",notes:"Settings page not implemented yet",links:"",order:0}]},h=[{id:d,code:"CK-001",label:"Overview Dashboard",parentId:null,children:[c,f],shape:"rounded",notes:"Main dashboard with data summary cards and charts",position:{x:250,y:100}},{id:c,code:"CK-002",label:"Data Sources",parentId:d,children:[],shape:"rounded",notes:"Connect and manage mobile data sources",position:{x:100,y:280}},{id:f,code:"CK-003",label:"Reports",parentId:d,children:[],shape:"rounded",notes:"Generate and export aggregated reports",position:{x:400,y:280}}],m=[{id:"cakra-edge-1",fromId:d,toId:c,type:"pass"},{id:"cakra-edge-2",fromId:d,toId:f,type:"pass"}],b={[d]:[{id:"ck-tc-001",code:"CK-TC-001",title:"Dashboard loads summary cards",steps:"1. Login to Revamp Cakra\n2. Wait for overview to load\n3. Check summary cards",expected:"Summary cards display total data sources, active connections, and last sync time.",status:"pass",case_type:"Positive",notes:"",links:"",order:0},{id:"ck-tc-002",code:"CK-TC-002",title:"Data refresh button works",steps:"1. Click refresh button on overview\n2. Wait for loading indicator\n3. Verify data updates",expected:"Loading spinner appears. Data refreshes with latest values from connected sources.",status:"untested",case_type:"Positive",notes:"",links:"",order:1}],[c]:[{id:"ck-tc-003",code:"CK-TC-003",title:"Add new data source",steps:'1. Navigate to Data Sources\n2. Click "Add Source"\n3. Enter API endpoint\n4. Enter auth token\n5. Click Connect',expected:'New data source appears in the list with status "Connected". Test connection succeeds.',status:"pass",case_type:"Positive",notes:"",links:"",order:0},{id:"ck-tc-004",code:"CK-TC-004",title:"Remove data source",steps:"1. Navigate to Data Sources\n2. Click delete on a source\n3. Confirm deletion",expected:"Data source is removed from list. Associated data is archived.",status:"fail",case_type:"Negative",notes:"Bug: confirmation dialog missing, deletes immediately",links:"",order:1}],[f]:[{id:"ck-tc-005",code:"CK-TC-005",title:"Generate PDF report",steps:'1. Navigate to Reports\n2. Select date range\n3. Click "Generate PDF"\n4. Wait for generation',expected:"PDF file downloads with aggregated data, charts, and summary table.",status:"untested",case_type:"General",notes:"",links:"",order:0}]};function g(){let e="qa-dashboard";try{let t=localStorage.getItem(e),s=t?JSON.parse(t):{projects:{},activeProjectId:null,selectedNodeId:null},g=!1;s.projects[a]||(s.projects[a]={id:a,name:"Simple Dashboard QA",createdAt:new Date().toISOString(),flows:u,testCases:p,columnConfig:[...r._X],columnConfigs:{},edges:x,userProfile:{name:"Ayu",bannerColor:"#81C784",role:"QA Engineer"},nodeCounter:3,tcCounter:{[o]:3,[n]:2,[l]:1}},s.activeProjectId=a,g=!0),s.projects[i]||(s.projects[i]={id:i,name:"Revamp Cakra",createdAt:new Date(Date.now()-864e5).toISOString(),flows:h,testCases:b,columnConfig:[...r._X],columnConfigs:{},edges:m,userProfile:{name:"Ayu",bannerColor:"#64B5F6",role:"QA Lead"},nodeCounter:3,tcCounter:{[d]:2,[c]:2,[f]:1}},g=!0),g&&localStorage.setItem(e,JSON.stringify(s))}catch(e){}}},9770:(e,t,s)=>{"use strict";s.d(t,{G:()=>function e(t,s,o,n){if("function"==typeof t){d.bt.current=[],t();let e=i(d.bt.current,t);return d.bt.current=void 0,e}if(void 0!==o&&!Array.isArray(o)&&"function"!=typeof s){var l=t,f=s,u=o,x=n;let r=(0,a.M)(()=>Object.keys(u)),i=(0,a.M)(()=>({}));for(let t of r)i[t]=e(l,f,u[t],x);return i}let p="function"==typeof s?s:function(...e){let t=!Array.isArray(e[0]),s=t?0:-1,a=e[0+s],o=e[1+s],n=e[2+s],l=e[3+s],i=(0,r.G)(o,n,l);return t?i(a):i}(s,o,n),h=Array.isArray(t)?c(t,p):c([t],e=>{let[t]=e;return p(t)}),m=Array.isArray(t)?void 0:t.accelerate;return m&&!m.isTransformed&&"function"!=typeof s&&Array.isArray(o)&&(null==n?void 0:n.clamp)!==!1&&(h.accelerate={...m,times:s,keyframes:o,isTransformed:!0,...(null==n?void 0:n.ease)?{ease:n.ease}:{}}),h}});var r=s(6706),a=s(4416),o=s(3934),n=s(6436),l=s(3350);function i(e,t){let s=(0,l.d)(t()),r=()=>s.set(t());return r(),(0,n.E)(()=>{let t=()=>o.Gt.preRender(r,!1,!0),s=e.map(e=>e.on("change",t));return()=>{s.forEach(e=>e()),(0,o.WG)(r)}}),s}var d=s(2039);function c(e,t){let s=(0,a.M)(()=>[]);return i(e,()=>{s.length=0;let r=e.length;for(let t=0;t<r;t++)s[t]=e[t].get();return t(s)})}}},e=>{e.O(0,[343,909,485,619,246,441,255,358],()=>e(e.s=2053)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[298,380,435,941,986],{4441:()=>{}},_=>{_.O(0,[441,255,358],()=>_(_.s=4441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[298,380,435,941,986],{4441:()=>{}},_=>{_.O(0,[441,255,358],()=>_(_.s=4441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[298,380,435,941,986],{4441:()=>{}},_=>{_.O(0,[441,255,358],()=>_(_.s=4441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[298,380,435,941,986],{4441:()=>{}},_=>{_.O(0,[441,255,358],()=>_(_.s=4441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[298,380,435,941,986],{4441:()=>{}},_=>{_.O(0,[441,255,358],()=>_(_.s=4441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
|
|
2
|
+
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
|
|
3
|
+
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background:40 20% 97%;--foreground:30 5% 12%;--card:0 0% 100%;--card-foreground:30 5% 12%;--popover:0 0% 100%;--popover-foreground:30 5% 12%;--primary:30 5% 12%;--primary-foreground:40 20% 97%;--secondary:40 15% 90%;--secondary-foreground:30 5% 12%;--muted:40 10% 93%;--muted-foreground:30 5% 48%;--accent:30 5% 12%;--accent-foreground:40 20% 97%;--destructive:0 72% 42%;--destructive-foreground:0 0% 98%;--border:30 10% 88%;--input:30 10% 88%;--ring:30 5% 12%;--radius:10px;--chart-1:12 76% 61%;--chart-2:173 58% 39%;--chart-3:197 37% 24%;--chart-4:43 74% 66%;--chart-5:27 87% 67%}.theme{--animate-marquee:marquee var(--duration) infinite linear;--animate-marquee-vertical:marquee-vertical var(--duration) linear infinite;--animate-shimmer-slide:shimmer-slide var(--speed) ease-in-out infinite alternate;--animate-spin-around:spin-around calc(var(--speed) * 2) infinite linear;--animate-gradient:gradient 8s linear infinite;--animate-rippling:rippling var(--duration) ease-out;--animate-ripple:ripple var(--duration,2s) ease calc(var(--i, 0)*.2s) infinite;--animate-shine:shine var(--duration) infinite linear}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-inset-1{inset:-.25rem}.-inset-full{inset:-100%}.inset-0{inset:0}.inset-px{inset:1px}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-left-2{left:-.5rem}.-right-2{right:-.5rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.bottom-3{bottom:.75rem}.bottom-4{bottom:1rem}.bottom-8{bottom:2rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.left-3\.5{left:.875rem}.left-4{left:1rem}.right-0{right:0}.right-0\.5{right:.125rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-0\.5{top:.125rem}.top-1\/2{top:50%}.top-11{top:2.75rem}.top-2{top:.5rem}.top-3{top:.75rem}.top-4{top:1rem}.top-full{top:100%}.isolate{isolation:isolate}.-z-20{z-index:-20}.-z-30{z-index:-30}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[300\]{z-index:300}.z-\[400\]{z-index:400}.z-\[410\]{z-index:410}.z-\[500\]{z-index:500}.z-\[600\]{z-index:600}.z-\[60\]{z-index:60}.m-auto{margin:auto}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[1\]{aspect-ratio:1}.aspect-square{aspect-ratio:1/1}.size-2\.5{width:.625rem;height:.625rem}.size-full{width:100%;height:100%}.h-0{height:0}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[100cqh\]{height:100cqh}.h-\[58px\]{height:58px}.h-\[70\%\]{height:70%}.h-\[85\%\]{height:85%}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-0{max-height:0}.max-h-48{max-height:12rem}.max-h-\[150px\]{max-height:150px}.max-h-\[200px\]{max-height:200px}.max-h-\[240px\]{max-height:240px}.max-h-\[30vh\]{max-height:30vh}.max-h-\[35vh\]{max-height:35vh}.max-h-\[40vh\]{max-height:40vh}.max-h-\[45vh\]{max-height:45vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[95vh\]{max-height:95vh}.min-h-0{min-height:0}.min-h-\[100px\]{min-height:100px}.min-h-\[300px\]{min-height:300px}.w-0{width:0}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-32{width:8rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[1px\]{width:1px}.w-\[280px\]{width:280px}.w-\[2px\]{width:2px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.w-screen{width:100vw}.min-w-0{min-width:0}.min-w-\[140px\]{min-width:140px}.min-w-\[320px\]{min-width:320px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[200px\]{max-width:200px}.max-w-\[280px\]{max-width:280px}.max-w-\[480px\]{max-width:480px}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-x-12{--tw-translate-x:3rem}.translate-x-12,.translate-y-\[calc\(-50\%-2px\)\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[calc\(-50\%-2px\)\]{--tw-translate-y:calc(-50% - 2px)}.rotate-0{--tw-rotate:0deg}.rotate-0,.rotate-45{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-45{--tw-rotate:45deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform-gpu{transform:translate3d(var(--tw-translate-x),var(--tw-translate-y),0) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-col-resize{cursor:col-resize}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.select-none{user-select:none}.resize-none{resize:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[10px\]{border-radius:10px}.rounded-\[2px\]{border-radius:2px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-xl{border-radius:.75rem}.rounded-t-full{border-top-left-radius:9999px;border-top-right-radius:9999px}.rounded-t-md{border-top-left-radius:calc(var(--radius) - 2px);border-top-right-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-gray-400\/30{border-color:rgb(156 163 175/.3)}.border-transparent{border-color:transparent}.border-white\/10{border-color:rgb(255 255 255/.1)}.bg-background{background-color:hsl(var(--background))}.bg-border{background-color:hsl(var(--border))}.bg-foreground{background-color:hsl(var(--foreground))}.bg-foreground\/25{background-color:hsl(var(--foreground)/.25)}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-primary{background-color:hsl(var(--primary))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:rgb(255 255 255/.1)}.bg-white\/20{background-color:rgb(255 255 255/.2)}.bg-white\/30{background-color:rgb(255 255 255/.3)}.bg-clip-text{background-clip:text}.fill-foreground{fill:hsl(var(--foreground))}.fill-gray-300\/30{fill:rgb(209 213 219/.3)}.fill-gray-400\/30{fill:rgb(156 163 175/.3)}.fill-neutral-200\/20{fill:rgb(229 229 229/.2)}.fill-transparent{fill:transparent}.stroke-gray-400\/30{stroke:rgb(156 163 175/.3)}.stroke-2{stroke-width:2}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[2px\]{padding:2px}.px-0{padding-left:0;padding-right:0}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pl-10{padding-left:2.5rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-7{padding-top:1.75rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-bottom{vertical-align:bottom}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[40pt\]{font-size:40pt}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[100\%\]{line-height:100%}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-background{color:hsl(var(--background))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-inherit{color:inherit}.text-neutral-300\/60{color:rgb(212 212 212/.6)}.text-neutral-400\/20{color:rgb(163 163 163/.2)}.text-neutral-400\/80{color:rgb(163 163 163/.8)}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-transparent{color:transparent}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/60{color:rgb(255 255 255/.6)}.text-white\/70{color:rgb(255 255 255/.7)}.underline{text-decoration-line:underline}.placeholder-white\/50::placeholder{color:rgb(255 255 255/.5)}.accent-\[var\(--accent\)\]{accent-color:var(--accent)}.accent-current{accent-color:currentColor}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-15{opacity:.15}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-80{opacity:.8}.shadow-\[inset_0_-8px_10px_\#ffffff1f\]{--tw-shadow:inset 0 -8px 10px #ffffff1f;--tw-shadow-colored:inset 0 -8px 10px var(--tw-shadow-color)}.shadow-\[inset_0_-8px_10px_\#ffffff1f\],.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgb(0 0 0/0.1),0 8px 10px -6px rgb(0 0 0/0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.blur{--tw-blur:blur(8px)}.blur,.blur-\[2px\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-\[2px\]{--tw-blur:blur(2px)}.blur-xl{--tw-blur:blur(24px)}.blur-xl,.drop-shadow{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgb(0 0 0/0.1)) drop-shadow(0 1px 1px rgb(0 0 0/0.06))}.drop-shadow-sm{--tw-drop-shadow:drop-shadow(0 1px 1px rgb(0 0 0/0.05))}.drop-shadow-sm,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.will-change-\[background-position\]{will-change:background-position}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-100{animation-duration:.1s}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\[--duration\:40s\]{--duration:40s}.\[--gap\:1rem\]{--gap:1rem}.\[animation-direction\:reverse\]{animation-direction:reverse}.\[background\:conic-gradient\(from_calc\(270deg-\(var\(--spread\)\*0\.5\)\)\2c transparent_0\2c var\(--shimmer-color\)_var\(--spread\)\2c transparent_var\(--spread\)\)\]{background:conic-gradient(from calc(270deg - (var(--spread) * .5)),transparent 0,var(--shimmer-color) var(--spread),transparent var(--spread))}.\[background\:var\(--bg\)\]{background:var(--bg)}.\[border-radius\:var\(--radius\)\]{border-radius:var(--radius)}.\[mask\:none\]{mask:none}.\[translate\:0_0\]{translate:0 0}:root{--bg-primary:#F7F5F1;--bg-secondary:#EDEAE3;--bg-highlight:#F0EDD8;--bg-card:#FFFFFF;--text-primary:#1A1A1A;--text-secondary:#7A7872;--text-tertiary:#A8A49E;--accent:#1A1A1A;--border:rgba(0,0,0,0.08);--border-hover:rgba(0,0,0,0.16);--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:99px;--status-pass-bg:#E8F0E0;--status-pass-text:#3B6011;--status-fail-bg:#FCEAEA;--status-fail-text:#8B1A1A;--status-skip-bg:#FDF3DC;--status-skip-text:#7A5000;--status-untested-bg:#EFEFED;--status-untested-text:#5A5A56;--shadow-sm:0 1px 4px rgba(0,0,0,0.06);--shadow-md:0 4px 16px rgba(0,0,0,0.08);--shadow-lg:0 8px 30px rgba(0,0,0,0.12);--shadow-xl:0 12px 40px rgba(0,0,0,0.16)}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{color:var(--text-primary);background:var(--bg-primary);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:500}::selection{background:var(--bg-highlight);color:var(--text-primary)}button,input,select,textarea{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}@keyframes borderShine{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes toastSlideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes beamFlow{0%{opacity:.3}50%{opacity:.6}to{opacity:.3}}@keyframes shimmerText{0%{background-position:100% 50%}to{background-position:-100% 50%}}@theme inline{@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(calc(-100% - var(--gap)))}}@keyframes marquee-vertical{0%{transform:translateY(0)}to{transform:translateY(calc(-100% - var(--gap)))}}@keyframes shimmer-slide{to{transform:translate(calc(100cqw - 100%))}}@keyframes spin-around{0%{transform:translateZ(0) rotate(0)}15%,35%{transform:translateZ(0) rotate(90deg)}65%,85%{transform:translateZ(0) rotate(270deg)}to{transform:translateZ(0) rotate(1turn)}}@keyframes gradient{to{background-position:var(--bg-size,300%) 0}}@keyframes rippling{0%{opacity:1}to{transform:scale(2);opacity:0}}@keyframes ripple{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(.9)}}@keyframes shine{0%{background-position:0 0}50%{background-position:100% 100%}to{background-position:0 0}}}.last\:border-b-0:last-child{border-bottom-width:0}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:scale-105:hover,.hover\:scale-110:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1}.hover\:border-\[var\(--border-hover\)\]:hover{border-color:var(--border-hover)}.hover\:border-\[var\(--status-fail-text\)\]:hover{border-color:var(--status-fail-text)}.hover\:bg-\[var\(--accent\)\]:hover{background-color:var(--accent)}.hover\:bg-\[var\(--bg-card\)\]:hover{background-color:var(--bg-card)}.hover\:bg-\[var\(--bg-secondary\)\]:hover{background-color:var(--bg-secondary)}.hover\:bg-\[var\(--status-fail-bg\)\]:hover{background-color:var(--status-fail-bg)}.hover\:bg-black\/5:hover{background-color:rgb(0 0 0/.05)}.hover\:bg-muted-foreground:hover{background-color:hsl(var(--muted-foreground))}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:bg-white\/20:hover{background-color:rgb(255 255 255/.2)}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.hover\:shadow-lg:hover,.hover\:shadow-md:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.focus\:border-\[var\(--accent\)\]:focus{border-color:var(--accent)}.focus\:border-\[var\(--border-hover\)\]:focus{border-color:var(--border-hover)}.active\:translate-y-px:active{--tw-translate-y:1px}.active\:scale-\[0\.98\]:active,.active\:translate-y-px:active{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.98\]:active{--tw-scale-x:0.98;--tw-scale-y:0.98}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-20:disabled{opacity:.2}.disabled\:opacity-25:disabled{opacity:.25}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:-translate-x-5{--tw-translate-x:-1.25rem}.group:hover .group-hover\:-translate-x-5,.group:hover .group-hover\:translate-x-12{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-12{--tw-translate-x:3rem}.group\/duck:hover .group-hover\/duck\:scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1}.group:hover .group-hover\:scale-\[100\.8\],.group\/duck:hover .group-hover\/duck\:scale-110{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-\[100\.8\]{--tw-scale-x:100.8;--tw-scale-y:100.8}.group\/col:hover .group-hover\/col\:opacity-100{opacity:1}.group\/duck:hover .group-hover\/duck\:opacity-\[0\.15\]{opacity:.15}.group:hover .group-hover\:opacity-0{opacity:0}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:shadow-\[inset_0_-6px_10px_\#ffffff3f\]{--tw-shadow:inset 0 -6px 10px #ffffff3f;--tw-shadow-colored:inset 0 -6px 10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.group:hover .group-hover\:\[animation-play-state\:paused\]{animation-play-state:paused}.group:active .group-active\:shadow-\[inset_0_-10px_10px_\#ffffff3f\]{--tw-shadow:inset 0 -10px 10px #ffffff3f;--tw-shadow-colored:inset 0 -10px 10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.data-\[side\=bottom\]\:top-1[data-side=bottom]{top:.25rem}.data-\[side\=inline-end\]\:-left-1[data-side=inline-end]{left:-.25rem}.data-\[side\=inline-start\]\:-right-1[data-side=inline-start],.data-\[side\=left\]\:-right-1[data-side=left]{right:-.25rem}.data-\[side\=right\]\:-left-1[data-side=right]{left:-.25rem}.data-\[side\=top\]\:-bottom-2\.5[data-side=top]{bottom:-.625rem}.data-\[side\=inline-end\]\:-translate-y-1\/2[data-side=inline-end],.data-\[side\=inline-start\]\:-translate-y-1\/2[data-side=inline-start],.data-\[side\=left\]\:-translate-y-1\/2[data-side=left],.data-\[side\=right\]\:-translate-y-1\/2[data-side=right]{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=delayed-open\]\:animate-in[data-state=delayed-open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=delayed-open\]\:fade-in-0[data-state=delayed-open]{--tw-enter-opacity:0}.data-\[state\=delayed-open\]\:zoom-in-95[data-state=delayed-open]{--tw-enter-scale:.95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-0.5rem}.data-\[side\=inline-end\]\:slide-in-from-left-2[data-side=inline-end]{--tw-enter-translate-x:-0.5rem}.data-\[side\=inline-start\]\:slide-in-from-right-2[data-side=inline-start],.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:0.5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-0.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:0.5rem}.dark\:text-neutral-600\/40:is(.dark *){color:rgb(82 82 82/.4)}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:block{display:block}.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-24{height:6rem}.md\:h-8{height:2rem}.md\:max-h-\[200px\]{max-height:200px}.md\:max-h-\[92vh\]{max-height:92vh}.md\:max-h-none{max-height:none}.md\:w-1\.5{width:.375rem}.md\:w-12{width:3rem}.md\:w-64{width:16rem}.md\:w-80{width:20rem}.md\:max-w-none{max-width:none}.md\:flex-\[0_0_28\%\]{flex:0 0 28%}.md\:flex-row{flex-direction:row}.md\:gap-4{gap:1rem}.md\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.md\:border-b-0{border-bottom-width:0}.md\:border-l{border-left-width:1px}.md\:border-r{border-right-width:1px}.md\:border-t-0{border-top-width:0}.md\:p-3{padding:.75rem}.md\:p-4{padding:1rem}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:1024px){.lg\:flex{display:flex}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:text-\[6rem\]{font-size:6rem}}@media (min-width:1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = __dirname;
|
package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3
ADDED
|
Binary file
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@img/sharp-libvips-linuxmusl-x64",
|
|
3
|
+
"version": "1.2.4",
|
|
4
|
+
"description": "Prebuilt libvips and dependencies for use with sharp on Linux (musl) x64",
|
|
5
|
+
"author": "Lovell Fuller <npm@lovell.info>",
|
|
6
|
+
"homepage": "https://sharp.pixelplumbing.com",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/lovell/sharp-libvips.git",
|
|
10
|
+
"directory": "npm/linuxmusl-x64"
|
|
11
|
+
},
|
|
12
|
+
"license": "LGPL-3.0-or-later",
|
|
13
|
+
"funding": {
|
|
14
|
+
"url": "https://opencollective.com/libvips"
|
|
15
|
+
},
|
|
16
|
+
"preferUnplugged": true,
|
|
17
|
+
"publishConfig": {
|
|
18
|
+
"access": "public"
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"lib",
|
|
22
|
+
"versions.json"
|
|
23
|
+
],
|
|
24
|
+
"type": "commonjs",
|
|
25
|
+
"exports": {
|
|
26
|
+
"./lib": "./lib/index.js",
|
|
27
|
+
"./package": "./package.json",
|
|
28
|
+
"./versions": "./versions.json"
|
|
29
|
+
},
|
|
30
|
+
"config": {
|
|
31
|
+
"musl": ">=1.2.2"
|
|
32
|
+
},
|
|
33
|
+
"os": [
|
|
34
|
+
"linux"
|
|
35
|
+
],
|
|
36
|
+
"libc": [
|
|
37
|
+
"musl"
|
|
38
|
+
],
|
|
39
|
+
"cpu": [
|
|
40
|
+
"x64"
|
|
41
|
+
]
|
|
42
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"aom": "3.13.1",
|
|
3
|
+
"archive": "3.8.2",
|
|
4
|
+
"cairo": "1.18.4",
|
|
5
|
+
"cgif": "0.5.0",
|
|
6
|
+
"exif": "0.6.25",
|
|
7
|
+
"expat": "2.7.3",
|
|
8
|
+
"ffi": "3.5.2",
|
|
9
|
+
"fontconfig": "2.17.1",
|
|
10
|
+
"freetype": "2.14.1",
|
|
11
|
+
"fribidi": "1.0.16",
|
|
12
|
+
"glib": "2.86.1",
|
|
13
|
+
"harfbuzz": "12.1.0",
|
|
14
|
+
"heif": "1.20.2",
|
|
15
|
+
"highway": "1.3.0",
|
|
16
|
+
"imagequant": "2.4.1",
|
|
17
|
+
"lcms": "2.17",
|
|
18
|
+
"mozjpeg": "0826579",
|
|
19
|
+
"pango": "1.57.0",
|
|
20
|
+
"pixman": "0.46.4",
|
|
21
|
+
"png": "1.6.50",
|
|
22
|
+
"proxy-libintl": "0.5",
|
|
23
|
+
"rsvg": "2.61.2",
|
|
24
|
+
"spng": "0.7.4",
|
|
25
|
+
"tiff": "4.7.1",
|
|
26
|
+
"vips": "8.17.3",
|
|
27
|
+
"webp": "1.6.0",
|
|
28
|
+
"xml2": "2.15.1",
|
|
29
|
+
"zlib-ng": "2.2.5"
|
|
30
|
+
}
|