@nivora/matrix 0.2.0 → 0.2.1
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/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +4 -4
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +2 -2
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/builder/page.js +3 -3
- package/.next/server/app/builder/page_client-reference-manifest.js +1 -1
- package/.next/server/app/guide/page_client-reference-manifest.js +1 -1
- package/.next/server/app/matrix/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/releases/[id]/page.js +15 -15
- package/.next/server/app/releases/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/releases/page.js +3 -3
- package/.next/server/app/releases/page_client-reference-manifest.js +1 -1
- package/.next/server/app/specs/[id]/page.js +2 -2
- package/.next/server/app/specs/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +4 -4
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +2 -2
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/app/builder/{page-29ef0d9ec753466c.js → page-e8eb2c5950ee1495.js} +2 -2
- package/.next/static/chunks/app/releases/[id]/page-f13257c6f0e69a7c.js +1 -0
- package/.next/static/chunks/app/releases/{page-6fc2e948b934fbb5.js → page-050bb308276e178c.js} +1 -1
- package/.next/static/chunks/app/specs/[id]/page-a1e2672e95d4c9c6.js +1 -0
- package/bin/cli.js +45 -22
- package/package.json +1 -1
- package/.next/static/chunks/app/releases/[id]/page-467d1893a4442eed.js +0 -1
- package/.next/static/chunks/app/specs/[id]/page-b5f2c99269d194c4.js +0 -1
- /package/.next/static/{p01ytei1EF9z6WCg6Sbk1 → SmDoKluq2qozv2eyHXbUF}/_buildManifest.js +0 -0
- /package/.next/static/{p01ytei1EF9z6WCg6Sbk1 → SmDoKluq2qozv2eyHXbUF}/_ssgManifest.js +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var a={};a.id=385,a.ids=[385],a.modules={108:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unstable_rethrow",{enumerable:!0,get:function(){return function a(b){if((0,g.isNextRouterError)(b)||(0,f.isBailoutToCSRError)(b)||(0,i.isDynamicServerError)(b)||(0,h.isDynamicPostpone)(b)||(0,e.isPostpone)(b)||(0,d.isHangingPromiseRejectionError)(b)||(0,h.isPrerenderInterruptedError)(b))throw b;b instanceof Error&&"cause"in b&&a(b.cause)}}});let d=c(8894),e=c(4491),f=c(2880),g=c(6484),h=c(3445),i=c(3449);("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},381:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return d}});class c extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class d extends URLSearchParams{append(){throw new c}delete(){throw new c}set(){throw new c}sort(){throw new c}}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},755:a=>{"use strict";a.exports=require("node:url")},846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},1025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},1455:a=>{"use strict";a.exports=require("node:fs/promises")},1536:(a,b,c)=>{"use strict";c.d(b,{URSDetailClient:()=>j});var d=c(8249),e=c(7484),f=c(2116),g=c.n(f),h=c(9829);let i=(0,h.createServerReference)("6001d939b150c0d179141b174c280871a1034e995a",h.callServer,void 0,h.findSourceMapURL,"updateURSAction");function j({urs:a,linkedFS:b,linkedRisks:c}){let[f,h]=(0,e.useState)(!1),[j,l]=(0,e.useTransition)(),[m,n]=(0,e.useState)({title:a.title,status:a.status,priority:a.priority,owner:a.owner,category:a.category,business_need:a.business_need,intended_use:a.intended_use,acceptance_criteria:a.acceptance_criteria}),o=a.title.includes("(Undefined)"),p=({value:a,onChange:b,multiline:c,placeholder:e})=>f?c?(0,d.jsx)("textarea",{value:a,onChange:a=>b(a.target.value),rows:4,className:"input",style:{width:"100%",resize:"vertical"}}):(0,d.jsx)("input",{type:"text",value:a,onChange:a=>b(a.target.value),className:"input",style:{width:"100%"}}):(0,d.jsx)("span",{style:{whiteSpace:"pre-wrap",color:"var(--text-secondary)",fontStyle:a?"normal":"italic"},children:a||e||"Not defined"}),q=({value:a,onChange:b,options:c})=>f?(0,d.jsx)("select",{value:a,onChange:a=>b(a.target.value),className:"input",children:c.map(a=>(0,d.jsx)("option",{value:a.value,children:a.label},a.value))}):(0,d.jsx)("span",{style:{textTransform:"capitalize"},children:a});return(0,d.jsxs)("div",{children:[(0,d.jsxs)("header",{className:"page-header",children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"1rem",marginBottom:"0.5rem",flexWrap:"wrap"},children:[(0,d.jsx)("code",{style:{fontSize:"1.5rem",fontWeight:700,color:"var(--success)",background:"rgba(16, 185, 129, 0.1)",padding:"0.5rem 1rem",borderRadius:"8px"},children:a.id}),f?(0,d.jsx)(q,{value:m.status,onChange:a=>n({...m,status:a}),options:[{value:"draft",label:"Draft"},{value:"review",label:"Review"},{value:"approved",label:"Approved"}]}):(0,d.jsx)("span",{className:`badge ${"approved"===a.status?"badge-success":"badge-warning"}`,children:m.status}),f?(0,d.jsx)(q,{value:m.priority,onChange:a=>n({...m,priority:a}),options:[{value:"critical",label:"Critical"},{value:"high",label:"High"},{value:"medium",label:"Medium"},{value:"low",label:"Low"}]}):(0,d.jsx)("span",{className:"badge",style:{background:"var(--bg-hover)"},children:m.priority}),o&&!f&&(0,d.jsx)("span",{className:"badge",style:{background:"rgba(239, 68, 68, 0.2)",color:"var(--error)"},children:"Needs Definition"}),(0,d.jsx)("div",{style:{marginLeft:"auto",display:"flex",gap:"0.5rem"},children:f?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{onClick:()=>{n({title:a.title,status:a.status,priority:a.priority,owner:a.owner,category:a.category,business_need:a.business_need,intended_use:a.intended_use,acceptance_criteria:a.acceptance_criteria}),h(!1)},className:"btn",disabled:j,children:"Cancel"}),(0,d.jsx)("button",{onClick:()=>{l(async()=>{await i(a.id,m),h(!1)})},className:"btn btn-primary",disabled:j,children:j?"Saving...":"\uD83D\uDCBE Save"})]}):(0,d.jsx)("button",{onClick:()=>h(!0),className:"btn btn-primary",children:"✏️ Edit"})})]}),f?(0,d.jsx)("input",{type:"text",value:m.title,onChange:a=>n({...m,title:a.target.value}),className:"input",style:{fontSize:"1.5rem",fontWeight:700,width:"100%",marginBottom:"0.5rem"}}):(0,d.jsx)("h1",{className:"page-title",children:m.title}),(0,d.jsxs)("p",{className:"page-subtitle",children:["User Requirement Specification • Owner: ",f?(0,d.jsx)("input",{type:"text",value:m.owner,onChange:a=>n({...m,owner:a.target.value}),className:"input",style:{width:"200px",display:"inline-block"}}):m.owner]})]}),o&&!f&&(0,d.jsx)("div",{className:"card",style:{marginBottom:"1.5rem",background:"rgba(239, 68, 68, 0.1)",borderLeft:"4px solid var(--error)"},children:(0,d.jsxs)("p",{style:{margin:0,color:"var(--error)"},children:["⚠️ This URS was auto-created from FS references. Click ",(0,d.jsx)("strong",{children:"Edit"})," to define its details."]})}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDD17 Traceability"}),(0,d.jsxs)("div",{style:{display:"flex",gap:"2rem",flexWrap:"wrap"},children:[(0,d.jsx)(k,{label:"Functional Specs",count:b.length,color:"var(--warning)"}),(0,d.jsx)(k,{label:"Test Scenarios",count:b.reduce((a,b)=>a+b.scenarios.length,0),color:"var(--accent)"}),(0,d.jsx)(k,{label:"Risk Assessments",count:c.length,color:"#f97316"})]})]}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"1.5rem"},children:[(0,d.jsxs)("div",{className:"card",children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDCCB Business Need"}),(0,d.jsx)("div",{style:{lineHeight:1.7},children:(0,d.jsx)(p,{value:m.business_need,onChange:a=>n({...m,business_need:a}),multiline:!0,placeholder:"Not defined"})})]}),(0,d.jsxs)("div",{className:"card",children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83C\uDFAF Intended Use"}),(0,d.jsx)("div",{style:{lineHeight:1.7},children:(0,d.jsx)(p,{value:m.intended_use,onChange:a=>n({...m,intended_use:a}),multiline:!0,placeholder:"Not defined"})})]})]}),(0,d.jsxs)("div",{className:"card",style:{marginTop:"1.5rem"},children:[(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1rem"},children:[(0,d.jsx)("h2",{className:"card-title",style:{margin:0},children:"✅ Acceptance Criteria"}),f&&(0,d.jsx)("button",{onClick:()=>n({...m,acceptance_criteria:[...m.acceptance_criteria,""]}),className:"btn",style:{padding:"0.25rem 0.75rem"},children:"+ Add"})]}),0===m.acceptance_criteria.length?(0,d.jsx)("p",{style:{color:"var(--text-secondary)",fontStyle:"italic"},children:"No acceptance criteria defined"}):f?(0,d.jsx)("div",{style:{display:"grid",gap:"0.5rem"},children:m.acceptance_criteria.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.5rem"},children:[(0,d.jsx)("input",{type:"text",value:a,onChange:a=>{let c=[...m.acceptance_criteria];c[b]=a.target.value,n({...m,acceptance_criteria:c})},className:"input",style:{flex:1},placeholder:`Criterion ${b+1}`}),(0,d.jsx)("button",{onClick:()=>n({...m,acceptance_criteria:m.acceptance_criteria.filter((a,c)=>c!==b)}),className:"btn",style:{padding:"0.5rem"},children:"\xd7"})]},b))}):(0,d.jsx)("ul",{style:{margin:0,paddingLeft:"1.5rem"},children:m.acceptance_criteria.map((a,b)=>(0,d.jsx)("li",{style:{marginBottom:"0.5rem",color:"var(--text-secondary)"},children:a},b))})]}),(0,d.jsxs)("div",{className:"card",style:{marginTop:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"⚙️ Linked Functional Specifications"}),0===b.length?(0,d.jsx)("p",{style:{color:"var(--text-secondary)"},children:"No FS linked yet"}):(0,d.jsx)("div",{style:{display:"grid",gap:"1rem"},children:b.map(a=>(0,d.jsx)(g(),{href:`/specs/${a.id}`,style:{textDecoration:"none"},children:(0,d.jsx)("div",{style:{padding:"1rem",background:"var(--bg-hover)",borderRadius:"8px",borderLeft:"4px solid var(--warning)"},children:(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.75rem"},children:[(0,d.jsx)("code",{style:{fontWeight:600,color:"var(--warning)"},children:a.id}),(0,d.jsx)("span",{style:{color:"var(--text-primary)"},children:a.title}),(0,d.jsxs)("span",{className:"badge badge-success",style:{marginLeft:"auto"},children:[a.scenario_count," tests"]})]})})},a.id))})]})]})}function k({label:a,count:b,color:c}){return(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{style:{fontSize:"0.75rem",color:"var(--text-secondary)",marginBottom:"0.25rem"},children:a}),(0,d.jsx)("div",{style:{fontSize:"1.5rem",fontWeight:700,color:c},children:b})]})}},1787:a=>{"use strict";a.exports=require("bun:sqlite")},1932:a=>{"use strict";a.exports=require("url")},1970:(a,b,c)=>{"use strict";var d=c(6610);c.o(d,"notFound")&&c.d(b,{notFound:function(){return d.notFound}})},2171:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={getRedirectError:function(){return i},getRedirectStatusCodeFromError:function(){return n},getRedirectTypeFromError:function(){return m},getURLFromRedirectError:function(){return l},permanentRedirect:function(){return k},redirect:function(){return j}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(1494),g=c(2220),h=c(9121).actionAsyncStorage;function i(a,b,c=f.RedirectStatusCode.TemporaryRedirect){let d=Object.defineProperty(Error(g.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return d.digest=`${g.REDIRECT_ERROR_CODE};${b};${a};${c};`,d}function j(a,b){throw i(a,b??=h?.getStore()?.isAction?g.RedirectType.push:g.RedirectType.replace,f.RedirectStatusCode.TemporaryRedirect)}function k(a,b=g.RedirectType.replace){throw i(a,b,f.RedirectStatusCode.PermanentRedirect)}function l(a){return(0,g.isRedirectError)(a)?a.digest.split(";").slice(2,-2).join(";"):null}function m(a){if(!(0,g.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return a.digest.split(";",2)[1]}function n(a){if(!(0,g.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(a.digest.split(";").at(-2))}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},2283:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"notFound",{enumerable:!0,get:function(){return f}});let d=c(7638),e=`${d.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function f(){let a=Object.defineProperty(Error(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});throw a.digest=e,a}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},2606:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"forbidden",{enumerable:!0,get:function(){return d}}),c(7638).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},2926:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>C.a,__next_app__:()=>K,handler:()=>M,routeModule:()=>L});var d=c(7553),e=c(4006),f=c(7798),g=c(4775),h=c(9373),i=c(3461),j=c(1020),k=c(6349),l=c(4365),m=c(6023),n=c(3747),o=c(4235),p=c(3938),q=c(261),r=c(6758),s=c(7243),t=c(6713),u=c(7527),v=c(2820),w=c(8216),x=c(7929),y=c(9551),z=c(9125),A=c(6439),B=c(5547),C=c.n(B),D=c(1287),E=c(1494),F=c(722),G=c(753),H=c(3954),I={};for(let a in D)0>["default","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(I[a]=()=>D[a]);c.d(b,I);let J={children:["",{children:["specs",{children:["[id]",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,7071)),"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/page.tsx"]}]},{}]},{metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,440))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,6537)),"/Users/matthew/Code/github/p11o/machine/docs/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,5547,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,5091,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,5270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,8193,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,440))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]}.children,K={require:c,loadChunk:()=>Promise.resolve()},L=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/specs/[id]/page",pathname:"/specs/[id]",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:J},distDir:".next",relativeProjectDir:""});async function M(a,b,d){var B;L.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let I=!!(0,h.getRequestMeta)(a,"minimalMode"),N="/specs/[id]/page";"/index"===N&&(N="/");let O=await L.prepare(a,b,{srcPage:N,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:P,query:Q,params:R,pageIsDynamic:S,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,serverActionsManifest:W,clientReferenceManifest:X,subresourceIntegrityManifest:Y,prerenderManifest:Z,isDraftMode:$,resolvedPathname:_,revalidateOnlyGenerated:aa,routerServerContext:ab,nextConfig:ac,parsedUrl:ad,interceptionRoutePatterns:ae,deploymentId:af}=O,ag=(0,q.normalizeAppPath)(N),{isOnDemandRevalidate:ah}=O,ai=ac.experimental.ppr&&!ac.cacheComponents&&(0,H.isInterceptionRouteAppPath)(_)?null:L.match(_,Z),aj=!!Z.routes[_],ak=a.headers["user-agent"]||"",al=(0,t.getBotType)(ak),am=(0,p.isHtmlBotRequest)(a),an=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[s.NEXT_ROUTER_PREFETCH_HEADER],ao=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[s.RSC_HEADER],ap=(0,r.getIsPossibleServerAction)(a),aq=(0,m.checkIsAppPPREnabled)(ac.experimental.ppr);if(!(0,h.getRequestMeta)(a,"postponed")&&aq&&"1"===a.headers[x.NEXT_RESUME_HEADER]&&"POST"===a.method){let b=[];for await(let c of a)b.push(c);let c=Buffer.concat(b).toString("utf8");(0,h.addRequestMeta)(a,"postponed",c)}let ar=aq&&(null==(B=Z.routes[ag]??Z.dynamicRoutes[ag])?void 0:B.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?(0,h.getRequestMeta)(a,"postponed"):void 0,av=ar&&ao&&!an;I&&(av=av&&!!au);let aw=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=(!am||!ar)&&(!ak||(0,p.shouldServeStreamingMetadata)(ak,ac.htmlLimitedBots)),ay=!!((ai||aj||Z.routes[ag])&&!(am&&ar)),az=ar&&!0===ac.cacheComponents,aA=!0===L.isDev||!ay||"string"==typeof au||(az&&(0,h.getRequestMeta)(a,"onCacheEntryV2")?av&&!I:av),aB=am&&ar,aC=null;$||!ay||aA||ap||au||av||(aC=_);let aD=aC;!aD&&L.isDev&&(aD=_),L.isDev||$||!ay||!ao||av||(0,k.d)(a.headers);let aE={...D,tree:J,GlobalError:C(),handler:M,routeModule:L,__next_app__:K};W&&X&&(0,o.setManifestsSingleton)({page:N,clientReferenceManifest:X,serverActionsManifest:W});let aF=a.method||"GET",aG=(0,g.getTracer)(),aH=aG.getActiveScopeSpan(),aI=async()=>((null==ab?void 0:ab.render404)?await ab.render404(a,b,ad,!1):b.end("This page could not be found"),null);try{let f=L.getVaryHeader(_,ae);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return L.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aG.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aF} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aF} ${N}`)})},m=(0,h.getRequestMeta)(a,"incrementalCache"),o=async({span:e,postponed:f,fallbackRouteParams:g,forceStaticRender:i})=>{let l={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aE,Component:(0,j.T)(aE),params:R,routeModule:L,page:N,postponed:f,shouldWaitOnAllReady:aB,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof f||aA,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,subresourceIntegrityManifest:Y,setCacheStatus:null==ab?void 0:ab.setCacheStatus,setIsrStatus:null==ab?void 0:ab.setIsrStatus,setReactDebugChannel:null==ab?void 0:ab.setReactDebugChannel,sendErrorsToBrowser:null==ab?void 0:ab.sendErrorsToBrowser,dir:c(3873).join(process.cwd(),L.relativeProjectDir),isDraftMode:$,botType:al,isOnDemandRevalidate:ah,isPossibleServerAction:ap,assetPrefix:ac.assetPrefix,nextConfigOutput:ac.output,crossOrigin:ac.crossOrigin,trailingSlash:ac.trailingSlash,images:ac.images,previewProps:Z.preview,deploymentId:af,enableTainting:ac.experimental.taint,htmlLimitedBots:ac.htmlLimitedBots,reactMaxHeadersLength:ac.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:m,cacheLifeProfiles:ac.cacheLife,basePath:ac.basePath,serverActions:ac.experimental.serverActions,...as||at?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:as}:{},cacheComponents:!!ac.cacheComponents,experimental:{isRoutePPREnabled:ar,expireTime:ac.expireTime,staleTimes:ac.experimental.staleTimes,dynamicOnHover:!!ac.experimental.dynamicOnHover,inlineCss:!!ac.experimental.inlineCss,authInterrupts:!!ac.experimental.authInterrupts,clientTraceMetadata:ac.experimental.clientTraceMetadata||[],clientParamParsingOrigins:ac.experimental.clientParamParsingOrigins},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>L.onRequestError(a,b,d,e,ab),err:(0,h.getRequestMeta)(a,"invokeError"),dev:L.isDev}};as&&(l.renderOpts.nextExport=!0,l.renderOpts.supportsDynamicResponse=!1,l.renderOpts.isDebugDynamicAccesses=as),i&&(l.renderOpts.supportsDynamicResponse=!1);let n=await k(e,l),{metadata:o}=n,{cacheControl:p,headers:q={},fetchTags:r,fetchMetrics:s}=o;if(r&&(q[x.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,ay&&(null==p?void 0:p.revalidate)===0&&!L.isDev&&!ar){let a=o.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${_}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
|
-
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:u.CachedRouteKind.APP_PAGE,html:n,headers:q,rscData:o.flightData,postponed:o.postponed,status:o.statusCode,segmentData:o.segmentData},cacheControl:p}},p=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i,forceStaticRender:j=!1})=>{let k,l=!1===L.isDev,q=c||b.writableEnded;if(ah&&aa&&!f&&!I)return(null==ab?void 0:ab.render404)?await ab.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(k=(0,v.parseFallbackField)(ai.fallback)),k===v.FallbackMode.PRERENDER&&(0,t.isBot)(ak)&&(!ar||am)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(k!==v.FallbackMode.NOT_FOUND||f)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),!I&&k!==v.FallbackMode.BLOCKING_STATIC_RENDER&&aD&&!q&&!$&&S&&(l||!aj)){if((l||ai)&&k===v.FallbackMode.NOT_FOUND){if(ac.experimental.adapterPath)return await aI();throw new A.NoFallbackError}if(ar&&(ac.cacheComponents?!av:!ao)){let b=l&&"string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:ag,c=l&&(null==ai?void 0:ai.fallbackRouteParams)?(0,n.createOpaqueFallbackRouteParams)(ai.fallbackRouteParams):at?(0,n.getFallbackRouteParams)(ag,L):null,f=await L.handleResponse({cacheKey:b,req:a,nextConfig:ac,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:Z,isRoutePPREnabled:ar,responseGenerator:async()=>o({span:i,postponed:void 0,fallbackRouteParams:c,forceStaticRender:!1}),waitUntil:d.waitUntil,isMinimalMode:I});if(null===f)return null;if(f)return delete f.cacheControl,f}}let r=ah||g||!au?void 0:au;if(az&&!I&&m&&av&&!j){let b=await m.get(_,{kind:u.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===u.CachedRouteKind.APP_PAGE&&(r=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,G.scheduleOnNextTick)(async()=>{let b=L.getResponseCache(a);try{await b.revalidate(_,m,ar,!1,a=>p({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if(as&&void 0!==r)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:u.CachedRouteKind.PAGES,html:w.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let s=l&&(null==ai?void 0:ai.fallbackRouteParams)&&(0,h.getRequestMeta)(a,"renderFallbackShell")?(0,n.createOpaqueFallbackRouteParams)(ai.fallbackRouteParams):at?(0,n.getFallbackRouteParams)(ag,L):null;return o({span:i,postponed:r,fallbackRouteParams:s,forceStaticRender:j})},q=async c=>{var f,g,i,j,k;let l,m=await L.handleResponse({cacheKey:aC,responseGenerator:a=>p({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ac,prerenderManifest:Z,waitUntil:d.waitUntil,isMinimalMode:I});if($&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),L.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!m){if(aC)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=m.value)?void 0:f.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=m.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let n="string"==typeof m.value.postponed;ay&&!av&&(!n||an)&&(I||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":m.isMiss?"MISS":m.isStale?"STALE":"HIT"),b.setHeader(s.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=m;if(au)l={revalidate:0,expire:void 0};else if(av)l={revalidate:0,expire:void 0};else if(!L.isDev)if($)l={revalidate:0,expire:void 0};else if(ay){if(m.cacheControl)if("number"==typeof m.cacheControl.revalidate){if(m.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${m.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:m.cacheControl.revalidate,expire:(null==(j=m.cacheControl)?void 0:j.expire)??ac.expireTime}}else l={revalidate:x.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(m.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===u.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[x.NEXT_CACHE_TAGS_HEADER];I&&ay&&c&&"string"==typeof c&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.fromStatic(d,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl}):(b.statusCode=204,(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl}))}let r=az?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r(m,{url:(0,h.getRequestMeta)(a,"initURL")??a.url}))return null;if(q.headers){let a={...q.headers};for(let[c,d]of(I&&ay||delete a[x.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let t=null==(g=q.headers)?void 0:g[x.NEXT_CACHE_TAGS_HEADER];if(I&&ay&&t&&"string"==typeof t&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,t),!q.status||ao&&ar||(b.statusCode=q.status),!I&&q.status&&E.RedirectStatusCode[q.status]&&ao&&(b.statusCode=200),n&&!av&&b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"1"),ao&&!$){if(void 0===q.rscData){if(q.html.contentType!==s.RSC_CONTENT_TYPE_HEADER)if(ac.cacheComponents)return b.statusCode=404,(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl});else throw Object.defineProperty(new F.InvariantError(`Expected RSC response, got ${q.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:q.html,cacheControl:m.cacheControl})}return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.fromStatic(q.rscData,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl})}let v=q.html;if(!n||I||ao)return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:v,cacheControl:m.cacheControl});if(as)return v.push(new ReadableStream({start(a){a.enqueue(y.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}});let A=new TransformStream;return v.push(A.readable),o({span:c,postponed:q.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(A.writable)}).catch(a=>{A.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}})};if(!aH)return await aG.withPropagatedContext(a.headers,()=>aG.trace(i.BaseServerSpan.handleRequest,{spanName:`${aF} ${N}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aF,"http.target":a.url}},q));await q(aH)}catch(b){throw b instanceof A.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:N,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:ay,isOnDemandRevalidate:ah})},!1,ab),b}}},3024:a=>{"use strict";a.exports=require("node:fs")},3033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3291:(a,b,c)=>{"use strict";c.d(b,{ScenarioList:()=>g});var d=c(8249),e=c(7484);function f({scenario:a,isHighlighted:b}){return(0,d.jsxs)("div",{style:{padding:"1rem",background:b?"rgba(96, 165, 250, 0.1)":"var(--bg-hover)",borderRadius:"8px",border:b?"2px solid var(--accent)":"1px solid var(--border)"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.75rem",marginBottom:"0.75rem"},children:[(0,d.jsx)("span",{style:{color:"var(--accent)"},children:"\uD83E\uDDEA"}),(0,d.jsx)("span",{style:{fontWeight:600},children:a.name}),a.tags.length>0&&(0,d.jsx)("span",{style:{marginLeft:"auto",fontSize:"0.75rem",color:"var(--text-secondary)"},children:a.tags.join(" ")})]}),(0,d.jsx)("div",{style:{fontFamily:"monospace",fontSize:"0.8125rem",lineHeight:1.6},children:a.steps.map((a,b)=>{var c;return(0,d.jsx)("div",{style:{color:(c=a).startsWith("Given")?"#a78bfa":c.startsWith("When")?"#60a5fa":c.startsWith("Then")?"#34d399":"var(--text-secondary)"},children:a},b)})})]})}function g({scenarios:a,highlightScenario:b}){let c=(0,e.useRef)(null);return(0,d.jsx)("div",{style:{display:"grid",gap:"0.75rem"},children:a.map((a,e)=>{let g=b===a.name;return(0,d.jsx)("div",{ref:g?c:void 0,children:(0,d.jsx)(f,{scenario:a,isHighlighted:g})},e)})})}c(2116)},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3873:a=>{"use strict";a.exports=require("path")},3954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},4057:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unauthorized",{enumerable:!0,get:function(){return d}}),c(7638).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},5756:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,2116,23)),Promise.resolve().then(c.bind(c,8404)),Promise.resolve().then(c.bind(c,3291)),Promise.resolve().then(c.bind(c,1536))},6193:a=>{"use strict";a.exports=require("node:string_decoder")},6439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},6610:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={ReadonlyURLSearchParams:function(){return f.ReadonlyURLSearchParams},RedirectType:function(){return h.RedirectType},forbidden:function(){return j.forbidden},notFound:function(){return i.notFound},permanentRedirect:function(){return g.permanentRedirect},redirect:function(){return g.redirect},unauthorized:function(){return k.unauthorized},unstable_isUnrecognizedActionError:function(){return m},unstable_rethrow:function(){return l.unstable_rethrow}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(381),g=c(2171),h=c(2220),i=c(2283),j=c(2606),k=c(4057),l=c(8621);function m(){throw Object.defineProperty(Error("`unstable_isUnrecognizedActionError` can only be used on the client."),"__NEXT_ERROR_CODE",{value:"E776",enumerable:!1,configurable:!0})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},6713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},6760:a=>{"use strict";a.exports=require("node:path")},7071:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>q,dynamic:()=>p});var d=c(5735),e=c(998),f=c(1970),g=c(7250);function h({urs:a}){let b=(0,e.Nn)(a.id),c=(0,e.I1)().filter(a=>b.some(b=>b.risk_ids.includes(a.id))).map(a=>({id:a.id,title:a.title}));return(0,d.jsx)(g.URSDetailClient,{urs:a,linkedFS:b,linkedRisks:c})}var i=c(3059),j=c.n(i);function k({items:a}){return(0,d.jsx)("nav",{style:{marginBottom:"1rem",fontSize:"0.875rem",color:"var(--text-secondary)"},children:a.map((b,c)=>(0,d.jsxs)("span",{children:[b.href?(0,d.jsx)(j(),{href:b.href,style:{color:"var(--accent)"},children:b.label}):(0,d.jsx)("span",{style:{color:"var(--text-primary)"},children:b.label}),c<a.length-1&&(0,d.jsx)("span",{style:{margin:"0 0.5rem"},children:"/"})]},c))})}var l=c(7831);function m({fs:a,highlightScenario:b}){let c=(0,e.I1)().filter(b=>a.risk_ids.includes(b.id));return(0,d.jsxs)("div",{children:[(0,d.jsx)(k,{items:[{label:"Specifications",href:"/specs?type=fs"},{label:a.id}]}),(0,d.jsxs)("header",{className:"page-header",children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"1rem",marginBottom:"0.5rem",flexWrap:"wrap"},children:[(0,d.jsx)("code",{style:{fontSize:"1.5rem",fontWeight:700,color:"var(--warning)",background:"rgba(245, 158, 11, 0.1)",padding:"0.5rem 1rem",borderRadius:"8px"},children:a.id}),(0,d.jsx)("span",{className:"badge",style:{background:"var(--bg-hover)"},children:"→ OQ"}),a.urs_ids.map(a=>(0,d.jsx)(j(),{href:`/specs/${a}`,children:(0,d.jsx)("span",{className:"badge badge-success",children:a})},a)),a.risk_ids.map(a=>(0,d.jsx)(j(),{href:`/specs/${a}`,children:(0,d.jsx)("span",{className:"badge",style:{background:"rgba(249, 115, 22, 0.15)",color:"#f97316"},children:a})},a))]}),(0,d.jsx)("h1",{className:"page-title",children:a.title}),(0,d.jsxs)("p",{className:"page-subtitle",children:["Functional Specification • ",a.scenario_count," test scenarios"]})]}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDCC4 Description"}),(0,d.jsx)("p",{style:{whiteSpace:"pre-wrap",color:"var(--text-secondary)",lineHeight:1.7},children:a.description})]}),a.requirements.length>0&&(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDCCB Requirements"}),(0,d.jsx)("ul",{style:{margin:0,paddingLeft:"1.5rem"},children:a.requirements.map((a,b)=>(0,d.jsx)("li",{style:{marginBottom:"0.5rem",color:"var(--text-secondary)",fontFamily:"monospace"},children:a},b))})]}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsxs)("h2",{className:"card-title",children:["\uD83E\uDDEA Test Scenarios (",a.scenarios.length,")"]}),(0,d.jsx)(l.ScenarioList,{scenarios:a.scenarios,highlightScenario:b})]}),c.length>0&&(0,d.jsxs)("div",{className:"card",children:[(0,d.jsx)("h2",{className:"card-title",children:"⚠️ Linked Risks"}),(0,d.jsx)("div",{style:{display:"grid",gap:"0.75rem"},children:c.map(a=>(0,d.jsx)(j(),{href:`/specs/${a.id}`,style:{textDecoration:"none"},children:(0,d.jsxs)("div",{style:{padding:"1rem",background:"var(--bg-hover)",borderRadius:"8px",borderLeft:"4px solid #f97316"},children:[(0,d.jsx)("code",{style:{fontWeight:600,color:"#f97316"},children:a.id}),(0,d.jsx)("span",{style:{marginLeft:"0.75rem",color:"var(--text-primary)"},children:a.title}),(0,d.jsxs)("span",{className:"badge",style:{marginLeft:"0.75rem",background:"rgba(249, 115, 22, 0.15)",color:"#f97316"},children:[a.risk_level," risk"]})]})},a.id))})]})]})}var n=c(9665);function o({risk:a}){let b=(0,e.x7)().filter(b=>b.risk_ids.includes(a.id));return(0,d.jsx)(n.RiskDetailClient,{risk:a,linkedFS:b})}let p="force-dynamic";async function q({params:a,searchParams:b}){let{id:c}=await a,{scenario:g}=await b,i=(0,e.Lo)(c);if(i)return(0,d.jsx)(h,{urs:i});let j=(0,e.Ey)(c);if(j)return(0,d.jsx)(m,{fs:j,highlightScenario:g});let k=(0,e.i7)(c);if(k)return(0,d.jsx)(o,{risk:k});(0,f.notFound)()}},7075:a=>{"use strict";a.exports=require("node:stream")},7250:(a,b,c)=>{"use strict";c.d(b,{URSDetailClient:()=>d});let d=(0,c(7943).registerClientReference)(function(){throw Error("Attempted to call URSDetailClient() from the server but URSDetailClient is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/urs-detail-client.tsx","URSDetailClient")},7831:(a,b,c)=>{"use strict";c.d(b,{ScenarioList:()=>d});let d=(0,c(7943).registerClientReference)(function(){throw Error("Attempted to call ScenarioList() from the server but ScenarioList is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/scenario-list.tsx","ScenarioList")},8354:a=>{"use strict";a.exports=require("util")},8404:(a,b,c)=>{"use strict";c.d(b,{RiskDetailClient:()=>j});var d=c(8249),e=c(7484),f=c(2116),g=c.n(f),h=c(9829);let i=(0,h.createServerReference)("6006b5147757be7ff44bdbd037afdf883ea34b681c",h.callServer,void 0,h.findSourceMapURL,"updateRiskAction");function j({risk:a,linkedFS:b}){let[c,f]=(0,e.useState)(!1),[h,j]=(0,e.useTransition)(),[m,n]=(0,e.useState)({title:a.title,status:a.status,category:a.category,impact:a.impact,probability:a.probability,risk_level:a.risk_level,residual_risk:a.residual_risk}),o=a.title.includes("(Undefined)");return(0,d.jsxs)("div",{children:[(0,d.jsxs)("header",{className:"page-header",children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"1rem",marginBottom:"0.5rem",flexWrap:"wrap"},children:[(0,d.jsx)("code",{style:{fontSize:"1.5rem",fontWeight:700,color:"#f97316",background:"rgba(249, 115, 22, 0.1)",padding:"0.5rem 1rem",borderRadius:"8px"},children:a.id}),c?(0,d.jsx)(({value:a,onChange:b,options:e})=>c?(0,d.jsx)("select",{value:a,onChange:a=>b(a.target.value),className:"input",children:e.map(a=>(0,d.jsx)("option",{value:a.value,children:a.label},a.value))}):(0,d.jsx)("span",{style:{textTransform:"capitalize"},children:a}),{value:m.status,onChange:a=>n({...m,status:a}),options:[{value:"draft",label:"Draft"},{value:"review",label:"Review"},{value:"approved",label:"Approved"}]}):(0,d.jsx)("span",{className:`badge ${"approved"===a.status?"badge-success":"badge-warning"}`,children:m.status}),(0,d.jsx)(l,{level:m.risk_level}),o&&!c&&(0,d.jsx)("span",{className:"badge",style:{background:"rgba(239, 68, 68, 0.2)",color:"var(--error)"},children:"Needs Definition"}),(0,d.jsx)("div",{style:{marginLeft:"auto",display:"flex",gap:"0.5rem"},children:c?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{onClick:()=>{n({title:a.title,status:a.status,category:a.category,impact:a.impact,probability:a.probability,risk_level:a.risk_level,residual_risk:a.residual_risk}),f(!1)},className:"btn",disabled:h,children:"Cancel"}),(0,d.jsx)("button",{onClick:()=>{j(async()=>{await i(a.id,m),f(!1)})},className:"btn btn-primary",disabled:h,children:h?"Saving...":"\uD83D\uDCBE Save"})]}):(0,d.jsx)("button",{onClick:()=>f(!0),className:"btn btn-primary",children:"✏️ Edit"})})]}),c?(0,d.jsx)("input",{type:"text",value:m.title,onChange:a=>n({...m,title:a.target.value}),className:"input",style:{fontSize:"1.5rem",fontWeight:700,width:"100%",marginBottom:"0.5rem"}}):(0,d.jsx)("h1",{className:"page-title",children:m.title}),(0,d.jsxs)("p",{className:"page-subtitle",children:["Risk Assessment • Category: ",c?(0,d.jsx)("input",{type:"text",value:m.category,onChange:a=>n({...m,category:a.target.value}),className:"input",style:{width:"200px",display:"inline-block"}}):m.category," • GAMP Category ",a.gamp_category]})]}),o&&!c&&(0,d.jsx)("div",{className:"card",style:{marginBottom:"1.5rem",background:"rgba(239, 68, 68, 0.1)",borderLeft:"4px solid var(--error)"},children:(0,d.jsxs)("p",{style:{margin:0,color:"var(--error)"},children:["⚠️ This Risk was auto-created from FS references. Click ",(0,d.jsx)("strong",{children:"Edit"})," to define its details."]})}),(0,d.jsx)("div",{className:"card",style:{marginBottom:"1.5rem"},children:(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)",gap:"1rem"},children:[(0,d.jsx)(k,{label:"Impact",value:m.impact,isEditing:c,onChange:a=>n({...m,impact:a}),options:["low","medium","high","critical"]}),(0,d.jsx)(k,{label:"Probability",value:m.probability,isEditing:c,onChange:a=>n({...m,probability:a}),options:["low","medium","high"]}),(0,d.jsx)(k,{label:"Risk Level",value:m.risk_level,isEditing:c,onChange:a=>n({...m,risk_level:a}),options:["low","medium","high","critical"]}),(0,d.jsx)(k,{label:"Residual Risk",value:m.residual_risk,isEditing:c,onChange:a=>n({...m,residual_risk:a}),options:["acceptable","unacceptable","pending"]})]})}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"⚙️ Linked Functional Specifications"}),(0,d.jsx)("div",{style:{display:"flex",gap:"0.5rem",flexWrap:"wrap"},children:b.map(a=>(0,d.jsx)(g(),{href:`/specs/${a.id}`,children:(0,d.jsxs)("span",{className:"badge",style:{background:"rgba(245, 158, 11, 0.15)",color:"var(--warning)",padding:"0.5rem 1rem"},children:[a.id," - ",a.title]})},a.id))})]}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDD34 Identified Risks"}),0===a.risks.length?(0,d.jsx)("p",{style:{color:"var(--text-secondary)",fontStyle:"italic"},children:"No risks defined yet"}):(0,d.jsx)("div",{style:{display:"grid",gap:"0.5rem"},children:a.risks.map((a,b)=>(0,d.jsxs)("div",{style:{padding:"0.75rem 1rem",background:"var(--bg-hover)",borderRadius:"6px",display:"flex",alignItems:"center",gap:"1rem"},children:[(0,d.jsx)("code",{style:{fontWeight:600,color:"#f97316"},children:a.id}),(0,d.jsx)("span",{style:{flex:1,color:"var(--text-secondary)"},children:a.description}),(0,d.jsx)(l,{level:a.impact,small:!0})]},b))})]}),(0,d.jsxs)("div",{className:"card",children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDEE1️ Mitigations"}),0===a.mitigations.length?(0,d.jsx)("p",{style:{color:"var(--text-secondary)",fontStyle:"italic"},children:"No mitigations defined yet"}):(0,d.jsxs)("table",{className:"table",children:[(0,d.jsx)("thead",{children:(0,d.jsxs)("tr",{children:[(0,d.jsx)("th",{children:"Risk"}),(0,d.jsx)("th",{children:"Control"}),(0,d.jsx)("th",{children:"Test"})]})}),(0,d.jsx)("tbody",{children:a.mitigations.map((a,b)=>(0,d.jsxs)("tr",{children:[(0,d.jsx)("td",{children:(0,d.jsx)("code",{children:a.risk_id})}),(0,d.jsx)("td",{children:a.control}),(0,d.jsx)("td",{style:{color:"var(--text-secondary)"},children:a.test})]},b))})]})]})]})}function k({label:a,value:b,isEditing:c,onChange:e,options:f}){let g=m(b);return(0,d.jsxs)("div",{style:{textAlign:"center",padding:"1rem",background:"var(--bg-hover)",borderRadius:"8px"},children:[(0,d.jsx)("div",{style:{fontSize:"0.75rem",color:"var(--text-secondary)",marginBottom:"0.25rem"},children:a}),c?(0,d.jsx)("select",{value:b,onChange:a=>e(a.target.value),className:"input",style:{width:"100%",textAlign:"center"},children:f.map(a=>(0,d.jsx)("option",{value:a,style:{textTransform:"capitalize"},children:a},a))}):(0,d.jsx)("div",{style:{fontSize:"1.25rem",fontWeight:700,color:g,textTransform:"capitalize"},children:b})]})}function l({level:a,small:b}){let c=m(a);return(0,d.jsx)("span",{className:"badge",style:{background:`${c}20`,color:c,padding:b?"0.25rem 0.5rem":"0.5rem 1rem",fontSize:b?"0.75rem":"0.875rem",textTransform:"capitalize"},children:a})}function m(a){switch(a){case"critical":case"unacceptable":return"#dc2626";case"high":return"#f97316";case"medium":case"pending":return"#eab308";case"low":case"acceptable":return"#22c55e";default:return"var(--text-secondary)"}}},8428:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"6001d939b150c0d179141b174c280871a1034e995a":()=>g,"6006b5147757be7ff44bdbd037afdf883ea34b681c":()=>h});var d=c(5349),e=c(2650),f=c(9530);async function g(a,b){(0,f.cv)(a,b),(0,e.revalidatePath)(`/specs/${a}`),(0,e.revalidatePath)("/"),(0,e.revalidatePath)("/matrix")}async function h(a,b){(0,f.Nv)(a,b),(0,e.revalidatePath)(`/specs/${a}`),(0,e.revalidatePath)("/"),(0,e.revalidatePath)("/matrix")}(0,c(9337).D)([g,h]),(0,d.A)(g,"6001d939b150c0d179141b174c280871a1034e995a",null),(0,d.A)(h,"6006b5147757be7ff44bdbd037afdf883ea34b681c",null)},8474:a=>{"use strict";a.exports=require("node:events")},8621:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unstable_rethrow",{enumerable:!0,get:function(){return d}});let d=c(108).unstable_rethrow;("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},8908:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,3318,23)),Promise.resolve().then(c.bind(c,9665)),Promise.resolve().then(c.bind(c,7831)),Promise.resolve().then(c.bind(c,7250))},9021:a=>{"use strict";a.exports=require("fs")},9121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},9294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9665:(a,b,c)=>{"use strict";c.d(b,{RiskDetailClient:()=>d});let d=(0,c(7943).registerClientReference)(function(){throw Error("Attempted to call RiskDetailClient() from the server but RiskDetailClient is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/risk-detail-client.tsx","RiskDetailClient")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,471,13,390,476,870,135,530],()=>b(b.s=2926));module.exports=c})();
|
|
1
|
+
(()=>{var a={};a.id=385,a.ids=[385],a.modules={108:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unstable_rethrow",{enumerable:!0,get:function(){return function a(b){if((0,g.isNextRouterError)(b)||(0,f.isBailoutToCSRError)(b)||(0,i.isDynamicServerError)(b)||(0,h.isDynamicPostpone)(b)||(0,e.isPostpone)(b)||(0,d.isHangingPromiseRejectionError)(b)||(0,h.isPrerenderInterruptedError)(b))throw b;b instanceof Error&&"cause"in b&&a(b.cause)}}});let d=c(8894),e=c(4491),f=c(2880),g=c(6484),h=c(3445),i=c(3449);("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},381:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return d}});class c extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class d extends URLSearchParams{append(){throw new c}delete(){throw new c}set(){throw new c}sort(){throw new c}}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},755:a=>{"use strict";a.exports=require("node:url")},846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},1025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},1455:a=>{"use strict";a.exports=require("node:fs/promises")},1787:a=>{"use strict";a.exports=require("bun:sqlite")},1932:a=>{"use strict";a.exports=require("url")},1970:(a,b,c)=>{"use strict";var d=c(6610);c.o(d,"notFound")&&c.d(b,{notFound:function(){return d.notFound}})},2171:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={getRedirectError:function(){return i},getRedirectStatusCodeFromError:function(){return n},getRedirectTypeFromError:function(){return m},getURLFromRedirectError:function(){return l},permanentRedirect:function(){return k},redirect:function(){return j}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(1494),g=c(2220),h=c(9121).actionAsyncStorage;function i(a,b,c=f.RedirectStatusCode.TemporaryRedirect){let d=Object.defineProperty(Error(g.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return d.digest=`${g.REDIRECT_ERROR_CODE};${b};${a};${c};`,d}function j(a,b){throw i(a,b??=h?.getStore()?.isAction?g.RedirectType.push:g.RedirectType.replace,f.RedirectStatusCode.TemporaryRedirect)}function k(a,b=g.RedirectType.replace){throw i(a,b,f.RedirectStatusCode.PermanentRedirect)}function l(a){return(0,g.isRedirectError)(a)?a.digest.split(";").slice(2,-2).join(";"):null}function m(a){if(!(0,g.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return a.digest.split(";",2)[1]}function n(a){if(!(0,g.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(a.digest.split(";").at(-2))}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},2283:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"notFound",{enumerable:!0,get:function(){return f}});let d=c(7638),e=`${d.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function f(){let a=Object.defineProperty(Error(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});throw a.digest=e,a}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},2606:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"forbidden",{enumerable:!0,get:function(){return d}}),c(7638).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},2926:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>C.a,__next_app__:()=>K,handler:()=>M,routeModule:()=>L});var d=c(7553),e=c(4006),f=c(7798),g=c(4775),h=c(9373),i=c(3461),j=c(1020),k=c(6349),l=c(4365),m=c(6023),n=c(3747),o=c(4235),p=c(3938),q=c(261),r=c(6758),s=c(7243),t=c(6713),u=c(7527),v=c(2820),w=c(8216),x=c(7929),y=c(9551),z=c(9125),A=c(6439),B=c(5547),C=c.n(B),D=c(1287),E=c(1494),F=c(722),G=c(753),H=c(3954),I={};for(let a in D)0>["default","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(I[a]=()=>D[a]);c.d(b,I);let J={children:["",{children:["specs",{children:["[id]",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,7071)),"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/page.tsx"]}]},{}]},{metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,440))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,6537)),"/Users/matthew/Code/github/p11o/machine/docs/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,5547,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,5091,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,5270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,8193,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,440))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]}.children,K={require:c,loadChunk:()=>Promise.resolve()},L=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/specs/[id]/page",pathname:"/specs/[id]",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:J},distDir:".next",relativeProjectDir:""});async function M(a,b,d){var B;L.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let I=!!(0,h.getRequestMeta)(a,"minimalMode"),N="/specs/[id]/page";"/index"===N&&(N="/");let O=await L.prepare(a,b,{srcPage:N,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:P,query:Q,params:R,pageIsDynamic:S,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,serverActionsManifest:W,clientReferenceManifest:X,subresourceIntegrityManifest:Y,prerenderManifest:Z,isDraftMode:$,resolvedPathname:_,revalidateOnlyGenerated:aa,routerServerContext:ab,nextConfig:ac,parsedUrl:ad,interceptionRoutePatterns:ae,deploymentId:af}=O,ag=(0,q.normalizeAppPath)(N),{isOnDemandRevalidate:ah}=O,ai=ac.experimental.ppr&&!ac.cacheComponents&&(0,H.isInterceptionRouteAppPath)(_)?null:L.match(_,Z),aj=!!Z.routes[_],ak=a.headers["user-agent"]||"",al=(0,t.getBotType)(ak),am=(0,p.isHtmlBotRequest)(a),an=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[s.NEXT_ROUTER_PREFETCH_HEADER],ao=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[s.RSC_HEADER],ap=(0,r.getIsPossibleServerAction)(a),aq=(0,m.checkIsAppPPREnabled)(ac.experimental.ppr);if(!(0,h.getRequestMeta)(a,"postponed")&&aq&&"1"===a.headers[x.NEXT_RESUME_HEADER]&&"POST"===a.method){let b=[];for await(let c of a)b.push(c);let c=Buffer.concat(b).toString("utf8");(0,h.addRequestMeta)(a,"postponed",c)}let ar=aq&&(null==(B=Z.routes[ag]??Z.dynamicRoutes[ag])?void 0:B.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?(0,h.getRequestMeta)(a,"postponed"):void 0,av=ar&&ao&&!an;I&&(av=av&&!!au);let aw=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=(!am||!ar)&&(!ak||(0,p.shouldServeStreamingMetadata)(ak,ac.htmlLimitedBots)),ay=!!((ai||aj||Z.routes[ag])&&!(am&&ar)),az=ar&&!0===ac.cacheComponents,aA=!0===L.isDev||!ay||"string"==typeof au||(az&&(0,h.getRequestMeta)(a,"onCacheEntryV2")?av&&!I:av),aB=am&&ar,aC=null;$||!ay||aA||ap||au||av||(aC=_);let aD=aC;!aD&&L.isDev&&(aD=_),L.isDev||$||!ay||!ao||av||(0,k.d)(a.headers);let aE={...D,tree:J,GlobalError:C(),handler:M,routeModule:L,__next_app__:K};W&&X&&(0,o.setManifestsSingleton)({page:N,clientReferenceManifest:X,serverActionsManifest:W});let aF=a.method||"GET",aG=(0,g.getTracer)(),aH=aG.getActiveScopeSpan(),aI=async()=>((null==ab?void 0:ab.render404)?await ab.render404(a,b,ad,!1):b.end("This page could not be found"),null);try{let f=L.getVaryHeader(_,ae);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return L.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aG.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aF} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aF} ${N}`)})},m=(0,h.getRequestMeta)(a,"incrementalCache"),o=async({span:e,postponed:f,fallbackRouteParams:g,forceStaticRender:i})=>{let l={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aE,Component:(0,j.T)(aE),params:R,routeModule:L,page:N,postponed:f,shouldWaitOnAllReady:aB,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof f||aA,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,subresourceIntegrityManifest:Y,setCacheStatus:null==ab?void 0:ab.setCacheStatus,setIsrStatus:null==ab?void 0:ab.setIsrStatus,setReactDebugChannel:null==ab?void 0:ab.setReactDebugChannel,sendErrorsToBrowser:null==ab?void 0:ab.sendErrorsToBrowser,dir:c(3873).join(process.cwd(),L.relativeProjectDir),isDraftMode:$,botType:al,isOnDemandRevalidate:ah,isPossibleServerAction:ap,assetPrefix:ac.assetPrefix,nextConfigOutput:ac.output,crossOrigin:ac.crossOrigin,trailingSlash:ac.trailingSlash,images:ac.images,previewProps:Z.preview,deploymentId:af,enableTainting:ac.experimental.taint,htmlLimitedBots:ac.htmlLimitedBots,reactMaxHeadersLength:ac.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:m,cacheLifeProfiles:ac.cacheLife,basePath:ac.basePath,serverActions:ac.experimental.serverActions,...as||at?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:as}:{},cacheComponents:!!ac.cacheComponents,experimental:{isRoutePPREnabled:ar,expireTime:ac.expireTime,staleTimes:ac.experimental.staleTimes,dynamicOnHover:!!ac.experimental.dynamicOnHover,inlineCss:!!ac.experimental.inlineCss,authInterrupts:!!ac.experimental.authInterrupts,clientTraceMetadata:ac.experimental.clientTraceMetadata||[],clientParamParsingOrigins:ac.experimental.clientParamParsingOrigins},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>L.onRequestError(a,b,d,e,ab),err:(0,h.getRequestMeta)(a,"invokeError"),dev:L.isDev}};as&&(l.renderOpts.nextExport=!0,l.renderOpts.supportsDynamicResponse=!1,l.renderOpts.isDebugDynamicAccesses=as),i&&(l.renderOpts.supportsDynamicResponse=!1);let n=await k(e,l),{metadata:o}=n,{cacheControl:p,headers:q={},fetchTags:r,fetchMetrics:s}=o;if(r&&(q[x.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,ay&&(null==p?void 0:p.revalidate)===0&&!L.isDev&&!ar){let a=o.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${_}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
|
+
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:u.CachedRouteKind.APP_PAGE,html:n,headers:q,rscData:o.flightData,postponed:o.postponed,status:o.statusCode,segmentData:o.segmentData},cacheControl:p}},p=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i,forceStaticRender:j=!1})=>{let k,l=!1===L.isDev,q=c||b.writableEnded;if(ah&&aa&&!f&&!I)return(null==ab?void 0:ab.render404)?await ab.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(k=(0,v.parseFallbackField)(ai.fallback)),k===v.FallbackMode.PRERENDER&&(0,t.isBot)(ak)&&(!ar||am)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(k!==v.FallbackMode.NOT_FOUND||f)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),!I&&k!==v.FallbackMode.BLOCKING_STATIC_RENDER&&aD&&!q&&!$&&S&&(l||!aj)){if((l||ai)&&k===v.FallbackMode.NOT_FOUND){if(ac.experimental.adapterPath)return await aI();throw new A.NoFallbackError}if(ar&&(ac.cacheComponents?!av:!ao)){let b=l&&"string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:ag,c=l&&(null==ai?void 0:ai.fallbackRouteParams)?(0,n.createOpaqueFallbackRouteParams)(ai.fallbackRouteParams):at?(0,n.getFallbackRouteParams)(ag,L):null,f=await L.handleResponse({cacheKey:b,req:a,nextConfig:ac,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:Z,isRoutePPREnabled:ar,responseGenerator:async()=>o({span:i,postponed:void 0,fallbackRouteParams:c,forceStaticRender:!1}),waitUntil:d.waitUntil,isMinimalMode:I});if(null===f)return null;if(f)return delete f.cacheControl,f}}let r=ah||g||!au?void 0:au;if(az&&!I&&m&&av&&!j){let b=await m.get(_,{kind:u.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===u.CachedRouteKind.APP_PAGE&&(r=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,G.scheduleOnNextTick)(async()=>{let b=L.getResponseCache(a);try{await b.revalidate(_,m,ar,!1,a=>p({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if(as&&void 0!==r)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:u.CachedRouteKind.PAGES,html:w.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let s=l&&(null==ai?void 0:ai.fallbackRouteParams)&&(0,h.getRequestMeta)(a,"renderFallbackShell")?(0,n.createOpaqueFallbackRouteParams)(ai.fallbackRouteParams):at?(0,n.getFallbackRouteParams)(ag,L):null;return o({span:i,postponed:r,fallbackRouteParams:s,forceStaticRender:j})},q=async c=>{var f,g,i,j,k;let l,m=await L.handleResponse({cacheKey:aC,responseGenerator:a=>p({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ac,prerenderManifest:Z,waitUntil:d.waitUntil,isMinimalMode:I});if($&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),L.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!m){if(aC)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=m.value)?void 0:f.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=m.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let n="string"==typeof m.value.postponed;ay&&!av&&(!n||an)&&(I||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":m.isMiss?"MISS":m.isStale?"STALE":"HIT"),b.setHeader(s.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=m;if(au)l={revalidate:0,expire:void 0};else if(av)l={revalidate:0,expire:void 0};else if(!L.isDev)if($)l={revalidate:0,expire:void 0};else if(ay){if(m.cacheControl)if("number"==typeof m.cacheControl.revalidate){if(m.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${m.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:m.cacheControl.revalidate,expire:(null==(j=m.cacheControl)?void 0:j.expire)??ac.expireTime}}else l={revalidate:x.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(m.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===u.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[x.NEXT_CACHE_TAGS_HEADER];I&&ay&&c&&"string"==typeof c&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.fromStatic(d,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl}):(b.statusCode=204,(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl}))}let r=az?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r(m,{url:(0,h.getRequestMeta)(a,"initURL")??a.url}))return null;if(q.headers){let a={...q.headers};for(let[c,d]of(I&&ay||delete a[x.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let t=null==(g=q.headers)?void 0:g[x.NEXT_CACHE_TAGS_HEADER];if(I&&ay&&t&&"string"==typeof t&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,t),!q.status||ao&&ar||(b.statusCode=q.status),!I&&q.status&&E.RedirectStatusCode[q.status]&&ao&&(b.statusCode=200),n&&!av&&b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"1"),ao&&!$){if(void 0===q.rscData){if(q.html.contentType!==s.RSC_CONTENT_TYPE_HEADER)if(ac.cacheComponents)return b.statusCode=404,(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl});else throw Object.defineProperty(new F.InvariantError(`Expected RSC response, got ${q.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:q.html,cacheControl:m.cacheControl})}return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:w.default.fromStatic(q.rscData,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl})}let v=q.html;if(!n||I||ao)return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:v,cacheControl:m.cacheControl});if(as)return v.push(new ReadableStream({start(a){a.enqueue(y.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}});let A=new TransformStream;return v.push(A.readable),o({span:c,postponed:q.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(A.writable)}).catch(a=>{A.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,z.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}})};if(!aH)return await aG.withPropagatedContext(a.headers,()=>aG.trace(i.BaseServerSpan.handleRequest,{spanName:`${aF} ${N}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aF,"http.target":a.url}},q));await q(aH)}catch(b){throw b instanceof A.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:N,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:ay,isOnDemandRevalidate:ah})},!1,ab),b}}},3024:a=>{"use strict";a.exports=require("node:fs")},3033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3291:(a,b,c)=>{"use strict";c.d(b,{ScenarioList:()=>g});var d=c(8249),e=c(7484);function f({scenario:a,isHighlighted:b}){return(0,d.jsxs)("div",{style:{padding:"1rem",background:b?"rgba(96, 165, 250, 0.1)":"var(--bg-hover)",borderRadius:"8px",border:b?"2px solid var(--accent)":"1px solid var(--border)"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.75rem",marginBottom:"0.75rem"},children:[(0,d.jsx)("span",{style:{color:"var(--accent)"},children:"\uD83E\uDDEA"}),(0,d.jsx)("span",{style:{fontWeight:600},children:a.name}),a.tags.length>0&&(0,d.jsx)("span",{style:{marginLeft:"auto",fontSize:"0.75rem",color:"var(--text-secondary)"},children:a.tags.join(" ")})]}),(0,d.jsx)("div",{style:{fontFamily:"monospace",fontSize:"0.8125rem",lineHeight:1.6},children:a.steps.map((a,b)=>{var c;return(0,d.jsx)("div",{style:{color:(c=a).startsWith("Given")?"#a78bfa":c.startsWith("When")?"#60a5fa":c.startsWith("Then")?"#34d399":"var(--text-secondary)"},children:a},b)})})]})}function g({scenarios:a,highlightScenario:b}){let c=(0,e.useRef)(null);return(0,d.jsx)("div",{style:{display:"grid",gap:"0.75rem"},children:a.map((a,e)=>{let g=b===a.name;return(0,d.jsx)("div",{ref:g?c:void 0,children:(0,d.jsx)(f,{scenario:a,isHighlighted:g})},e)})})}c(2116)},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3873:a=>{"use strict";a.exports=require("path")},3954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},4057:(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unauthorized",{enumerable:!0,get:function(){return d}}),c(7638).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},4891:(a,b,c)=>{"use strict";c.d(b,{RiskDetailClient:()=>j});var d=c(8249),e=c(7484),f=c(2116),g=c.n(f),h=c(9829);let i=(0,h.createServerReference)("6071878121fbac221ddfe8509634a3975eb76611ea",h.callServer,void 0,h.findSourceMapURL,"updateRiskAction");function j({risk:a,linkedFS:b}){let[c,f]=(0,e.useState)(!1),[h,j]=(0,e.useTransition)(),[m,n]=(0,e.useState)({title:a.title,status:a.status,category:a.category,impact:a.impact,probability:a.probability,risk_level:a.risk_level,residual_risk:a.residual_risk}),o=a.title.includes("(Undefined)");return(0,d.jsxs)("div",{children:[(0,d.jsxs)("header",{className:"page-header",children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"1rem",marginBottom:"0.5rem",flexWrap:"wrap"},children:[(0,d.jsx)("code",{style:{fontSize:"1.5rem",fontWeight:700,color:"#f97316",background:"rgba(249, 115, 22, 0.1)",padding:"0.5rem 1rem",borderRadius:"8px"},children:a.id}),c?(0,d.jsx)(({value:a,onChange:b,options:e})=>c?(0,d.jsx)("select",{value:a,onChange:a=>b(a.target.value),className:"input",children:e.map(a=>(0,d.jsx)("option",{value:a.value,children:a.label},a.value))}):(0,d.jsx)("span",{style:{textTransform:"capitalize"},children:a}),{value:m.status,onChange:a=>n({...m,status:a}),options:[{value:"draft",label:"Draft"},{value:"review",label:"Review"},{value:"approved",label:"Approved"}]}):(0,d.jsx)("span",{className:`badge ${"approved"===a.status?"badge-success":"badge-warning"}`,children:m.status}),(0,d.jsx)(l,{level:m.risk_level}),o&&!c&&(0,d.jsx)("span",{className:"badge",style:{background:"rgba(239, 68, 68, 0.2)",color:"var(--error)"},children:"Needs Definition"}),(0,d.jsx)("div",{style:{marginLeft:"auto",display:"flex",gap:"0.5rem"},children:c?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{onClick:()=>{n({title:a.title,status:a.status,category:a.category,impact:a.impact,probability:a.probability,risk_level:a.risk_level,residual_risk:a.residual_risk}),f(!1)},className:"btn",disabled:h,children:"Cancel"}),(0,d.jsx)("button",{onClick:()=>{j(async()=>{await i(a.id,m),f(!1)})},className:"btn btn-primary",disabled:h,children:h?"Saving...":"\uD83D\uDCBE Save"})]}):(0,d.jsx)("button",{onClick:()=>f(!0),className:"btn btn-primary",children:"✏️ Edit"})})]}),c?(0,d.jsx)("input",{type:"text",value:m.title,onChange:a=>n({...m,title:a.target.value}),className:"input",style:{fontSize:"1.5rem",fontWeight:700,width:"100%",marginBottom:"0.5rem"}}):(0,d.jsx)("h1",{className:"page-title",children:m.title}),(0,d.jsxs)("p",{className:"page-subtitle",children:["Risk Assessment • Category: ",c?(0,d.jsx)("input",{type:"text",value:m.category,onChange:a=>n({...m,category:a.target.value}),className:"input",style:{width:"200px",display:"inline-block"}}):m.category," • GAMP Category ",a.gamp_category]})]}),o&&!c&&(0,d.jsx)("div",{className:"card",style:{marginBottom:"1.5rem",background:"rgba(239, 68, 68, 0.1)",borderLeft:"4px solid var(--error)"},children:(0,d.jsxs)("p",{style:{margin:0,color:"var(--error)"},children:["⚠️ This Risk was auto-created from FS references. Click ",(0,d.jsx)("strong",{children:"Edit"})," to define its details."]})}),(0,d.jsx)("div",{className:"card",style:{marginBottom:"1.5rem"},children:(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)",gap:"1rem"},children:[(0,d.jsx)(k,{label:"Impact",value:m.impact,isEditing:c,onChange:a=>n({...m,impact:a}),options:["low","medium","high","critical"]}),(0,d.jsx)(k,{label:"Probability",value:m.probability,isEditing:c,onChange:a=>n({...m,probability:a}),options:["low","medium","high"]}),(0,d.jsx)(k,{label:"Risk Level",value:m.risk_level,isEditing:c,onChange:a=>n({...m,risk_level:a}),options:["low","medium","high","critical"]}),(0,d.jsx)(k,{label:"Residual Risk",value:m.residual_risk,isEditing:c,onChange:a=>n({...m,residual_risk:a}),options:["acceptable","unacceptable","pending"]})]})}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"⚙️ Linked Functional Specifications"}),(0,d.jsx)("div",{style:{display:"flex",gap:"0.5rem",flexWrap:"wrap"},children:b.map(a=>(0,d.jsx)(g(),{href:`/specs/${a.id}`,children:(0,d.jsxs)("span",{className:"badge",style:{background:"rgba(245, 158, 11, 0.15)",color:"var(--warning)",padding:"0.5rem 1rem"},children:[a.id," - ",a.title]})},a.id))})]}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDD34 Identified Risks"}),0===a.risks.length?(0,d.jsx)("p",{style:{color:"var(--text-secondary)",fontStyle:"italic"},children:"No risks defined yet"}):(0,d.jsx)("div",{style:{display:"grid",gap:"0.5rem"},children:a.risks.map((a,b)=>(0,d.jsxs)("div",{style:{padding:"0.75rem 1rem",background:"var(--bg-hover)",borderRadius:"6px",display:"flex",alignItems:"center",gap:"1rem"},children:[(0,d.jsx)("code",{style:{fontWeight:600,color:"#f97316"},children:a.id}),(0,d.jsx)("span",{style:{flex:1,color:"var(--text-secondary)"},children:a.description}),(0,d.jsx)(l,{level:a.impact,small:!0})]},b))})]}),(0,d.jsxs)("div",{className:"card",children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDEE1️ Mitigations"}),0===a.mitigations.length?(0,d.jsx)("p",{style:{color:"var(--text-secondary)",fontStyle:"italic"},children:"No mitigations defined yet"}):(0,d.jsxs)("table",{className:"table",children:[(0,d.jsx)("thead",{children:(0,d.jsxs)("tr",{children:[(0,d.jsx)("th",{children:"Risk"}),(0,d.jsx)("th",{children:"Control"}),(0,d.jsx)("th",{children:"Test"})]})}),(0,d.jsx)("tbody",{children:a.mitigations.map((a,b)=>(0,d.jsxs)("tr",{children:[(0,d.jsx)("td",{children:(0,d.jsx)("code",{children:a.risk_id})}),(0,d.jsx)("td",{children:a.control}),(0,d.jsx)("td",{style:{color:"var(--text-secondary)"},children:a.test})]},b))})]})]})]})}function k({label:a,value:b,isEditing:c,onChange:e,options:f}){let g=m(b);return(0,d.jsxs)("div",{style:{textAlign:"center",padding:"1rem",background:"var(--bg-hover)",borderRadius:"8px"},children:[(0,d.jsx)("div",{style:{fontSize:"0.75rem",color:"var(--text-secondary)",marginBottom:"0.25rem"},children:a}),c?(0,d.jsx)("select",{value:b,onChange:a=>e(a.target.value),className:"input",style:{width:"100%",textAlign:"center"},children:f.map(a=>(0,d.jsx)("option",{value:a,style:{textTransform:"capitalize"},children:a},a))}):(0,d.jsx)("div",{style:{fontSize:"1.25rem",fontWeight:700,color:g,textTransform:"capitalize"},children:b})]})}function l({level:a,small:b}){let c=m(a);return(0,d.jsx)("span",{className:"badge",style:{background:`${c}20`,color:c,padding:b?"0.25rem 0.5rem":"0.5rem 1rem",fontSize:b?"0.75rem":"0.875rem",textTransform:"capitalize"},children:a})}function m(a){switch(a){case"critical":case"unacceptable":return"#dc2626";case"high":return"#f97316";case"medium":case"pending":return"#eab308";case"low":case"acceptable":return"#22c55e";default:return"var(--text-secondary)"}}},5690:(a,b,c)=>{"use strict";c.d(b,{URSDetailClient:()=>j});var d=c(8249),e=c(7484),f=c(2116),g=c.n(f),h=c(9829);let i=(0,h.createServerReference)("60736f5ea7cad4d8cd088110b97ed11baf4aa8d873",h.callServer,void 0,h.findSourceMapURL,"updateURSAction");function j({urs:a,linkedFS:b,linkedRisks:c}){let[f,h]=(0,e.useState)(!1),[j,l]=(0,e.useTransition)(),[m,n]=(0,e.useState)({title:a.title,status:a.status,priority:a.priority,owner:a.owner,category:a.category,business_need:a.business_need,intended_use:a.intended_use,acceptance_criteria:a.acceptance_criteria}),o=a.title.includes("(Undefined)"),p=({value:a,onChange:b,multiline:c,placeholder:e})=>f?c?(0,d.jsx)("textarea",{value:a,onChange:a=>b(a.target.value),rows:4,className:"input",style:{width:"100%",resize:"vertical"}}):(0,d.jsx)("input",{type:"text",value:a,onChange:a=>b(a.target.value),className:"input",style:{width:"100%"}}):(0,d.jsx)("span",{style:{whiteSpace:"pre-wrap",color:"var(--text-secondary)",fontStyle:a?"normal":"italic"},children:a||e||"Not defined"}),q=({value:a,onChange:b,options:c})=>f?(0,d.jsx)("select",{value:a,onChange:a=>b(a.target.value),className:"input",children:c.map(a=>(0,d.jsx)("option",{value:a.value,children:a.label},a.value))}):(0,d.jsx)("span",{style:{textTransform:"capitalize"},children:a});return(0,d.jsxs)("div",{children:[(0,d.jsxs)("header",{className:"page-header",children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"1rem",marginBottom:"0.5rem",flexWrap:"wrap"},children:[(0,d.jsx)("code",{style:{fontSize:"1.5rem",fontWeight:700,color:"var(--success)",background:"rgba(16, 185, 129, 0.1)",padding:"0.5rem 1rem",borderRadius:"8px"},children:a.id}),f?(0,d.jsx)(q,{value:m.status,onChange:a=>n({...m,status:a}),options:[{value:"draft",label:"Draft"},{value:"review",label:"Review"},{value:"approved",label:"Approved"}]}):(0,d.jsx)("span",{className:`badge ${"approved"===a.status?"badge-success":"badge-warning"}`,children:m.status}),f?(0,d.jsx)(q,{value:m.priority,onChange:a=>n({...m,priority:a}),options:[{value:"critical",label:"Critical"},{value:"high",label:"High"},{value:"medium",label:"Medium"},{value:"low",label:"Low"}]}):(0,d.jsx)("span",{className:"badge",style:{background:"var(--bg-hover)"},children:m.priority}),o&&!f&&(0,d.jsx)("span",{className:"badge",style:{background:"rgba(239, 68, 68, 0.2)",color:"var(--error)"},children:"Needs Definition"}),(0,d.jsx)("div",{style:{marginLeft:"auto",display:"flex",gap:"0.5rem"},children:f?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{onClick:()=>{n({title:a.title,status:a.status,priority:a.priority,owner:a.owner,category:a.category,business_need:a.business_need,intended_use:a.intended_use,acceptance_criteria:a.acceptance_criteria}),h(!1)},className:"btn",disabled:j,children:"Cancel"}),(0,d.jsx)("button",{onClick:()=>{l(async()=>{await i(a.id,m),h(!1)})},className:"btn btn-primary",disabled:j,children:j?"Saving...":"\uD83D\uDCBE Save"})]}):(0,d.jsx)("button",{onClick:()=>h(!0),className:"btn btn-primary",children:"✏️ Edit"})})]}),f?(0,d.jsx)("input",{type:"text",value:m.title,onChange:a=>n({...m,title:a.target.value}),className:"input",style:{fontSize:"1.5rem",fontWeight:700,width:"100%",marginBottom:"0.5rem"}}):(0,d.jsx)("h1",{className:"page-title",children:m.title}),(0,d.jsxs)("p",{className:"page-subtitle",children:["User Requirement Specification • Owner: ",f?(0,d.jsx)("input",{type:"text",value:m.owner,onChange:a=>n({...m,owner:a.target.value}),className:"input",style:{width:"200px",display:"inline-block"}}):m.owner]})]}),o&&!f&&(0,d.jsx)("div",{className:"card",style:{marginBottom:"1.5rem",background:"rgba(239, 68, 68, 0.1)",borderLeft:"4px solid var(--error)"},children:(0,d.jsxs)("p",{style:{margin:0,color:"var(--error)"},children:["⚠️ This URS was auto-created from FS references. Click ",(0,d.jsx)("strong",{children:"Edit"})," to define its details."]})}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDD17 Traceability"}),(0,d.jsxs)("div",{style:{display:"flex",gap:"2rem",flexWrap:"wrap"},children:[(0,d.jsx)(k,{label:"Functional Specs",count:b.length,color:"var(--warning)"}),(0,d.jsx)(k,{label:"Test Scenarios",count:b.reduce((a,b)=>a+b.scenarios.length,0),color:"var(--accent)"}),(0,d.jsx)(k,{label:"Risk Assessments",count:c.length,color:"#f97316"})]})]}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"1.5rem"},children:[(0,d.jsxs)("div",{className:"card",children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDCCB Business Need"}),(0,d.jsx)("div",{style:{lineHeight:1.7},children:(0,d.jsx)(p,{value:m.business_need,onChange:a=>n({...m,business_need:a}),multiline:!0,placeholder:"Not defined"})})]}),(0,d.jsxs)("div",{className:"card",children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83C\uDFAF Intended Use"}),(0,d.jsx)("div",{style:{lineHeight:1.7},children:(0,d.jsx)(p,{value:m.intended_use,onChange:a=>n({...m,intended_use:a}),multiline:!0,placeholder:"Not defined"})})]})]}),(0,d.jsxs)("div",{className:"card",style:{marginTop:"1.5rem"},children:[(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1rem"},children:[(0,d.jsx)("h2",{className:"card-title",style:{margin:0},children:"✅ Acceptance Criteria"}),f&&(0,d.jsx)("button",{onClick:()=>n({...m,acceptance_criteria:[...m.acceptance_criteria,""]}),className:"btn",style:{padding:"0.25rem 0.75rem"},children:"+ Add"})]}),0===m.acceptance_criteria.length?(0,d.jsx)("p",{style:{color:"var(--text-secondary)",fontStyle:"italic"},children:"No acceptance criteria defined"}):f?(0,d.jsx)("div",{style:{display:"grid",gap:"0.5rem"},children:m.acceptance_criteria.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.5rem"},children:[(0,d.jsx)("input",{type:"text",value:a,onChange:a=>{let c=[...m.acceptance_criteria];c[b]=a.target.value,n({...m,acceptance_criteria:c})},className:"input",style:{flex:1},placeholder:`Criterion ${b+1}`}),(0,d.jsx)("button",{onClick:()=>n({...m,acceptance_criteria:m.acceptance_criteria.filter((a,c)=>c!==b)}),className:"btn",style:{padding:"0.5rem"},children:"\xd7"})]},b))}):(0,d.jsx)("ul",{style:{margin:0,paddingLeft:"1.5rem"},children:m.acceptance_criteria.map((a,b)=>(0,d.jsx)("li",{style:{marginBottom:"0.5rem",color:"var(--text-secondary)"},children:a},b))})]}),(0,d.jsxs)("div",{className:"card",style:{marginTop:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"⚙️ Linked Functional Specifications"}),0===b.length?(0,d.jsx)("p",{style:{color:"var(--text-secondary)"},children:"No FS linked yet"}):(0,d.jsx)("div",{style:{display:"grid",gap:"1rem"},children:b.map(a=>(0,d.jsx)(g(),{href:`/specs/${a.id}`,style:{textDecoration:"none"},children:(0,d.jsx)("div",{style:{padding:"1rem",background:"var(--bg-hover)",borderRadius:"8px",borderLeft:"4px solid var(--warning)"},children:(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.75rem"},children:[(0,d.jsx)("code",{style:{fontWeight:600,color:"var(--warning)"},children:a.id}),(0,d.jsx)("span",{style:{color:"var(--text-primary)"},children:a.title}),(0,d.jsxs)("span",{className:"badge badge-success",style:{marginLeft:"auto"},children:[a.scenario_count," tests"]})]})})},a.id))})]})]})}function k({label:a,count:b,color:c}){return(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{style:{fontSize:"0.75rem",color:"var(--text-secondary)",marginBottom:"0.25rem"},children:a}),(0,d.jsx)("div",{style:{fontSize:"1.5rem",fontWeight:700,color:c},children:b})]})}},5756:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,2116,23)),Promise.resolve().then(c.bind(c,4891)),Promise.resolve().then(c.bind(c,3291)),Promise.resolve().then(c.bind(c,5690))},6193:a=>{"use strict";a.exports=require("node:string_decoder")},6439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},6610:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={ReadonlyURLSearchParams:function(){return f.ReadonlyURLSearchParams},RedirectType:function(){return h.RedirectType},forbidden:function(){return j.forbidden},notFound:function(){return i.notFound},permanentRedirect:function(){return g.permanentRedirect},redirect:function(){return g.redirect},unauthorized:function(){return k.unauthorized},unstable_isUnrecognizedActionError:function(){return m},unstable_rethrow:function(){return l.unstable_rethrow}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(381),g=c(2171),h=c(2220),i=c(2283),j=c(2606),k=c(4057),l=c(8621);function m(){throw Object.defineProperty(Error("`unstable_isUnrecognizedActionError` can only be used on the client."),"__NEXT_ERROR_CODE",{value:"E776",enumerable:!1,configurable:!0})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},6713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},6760:a=>{"use strict";a.exports=require("node:path")},6761:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"6071878121fbac221ddfe8509634a3975eb76611ea":()=>h,"60736f5ea7cad4d8cd088110b97ed11baf4aa8d873":()=>g});var d=c(5349),e=c(2650),f=c(9530);async function g(a,b){(0,f.cv)(a,b),(0,e.revalidatePath)(`/specs/${a}`),(0,e.revalidatePath)("/"),(0,e.revalidatePath)("/matrix")}async function h(a,b){(0,f.Nv)(a,b),(0,e.revalidatePath)(`/specs/${a}`),(0,e.revalidatePath)("/"),(0,e.revalidatePath)("/matrix")}(0,c(9337).D)([g,h]),(0,d.A)(g,"60736f5ea7cad4d8cd088110b97ed11baf4aa8d873",null),(0,d.A)(h,"6071878121fbac221ddfe8509634a3975eb76611ea",null)},7071:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>q,dynamic:()=>p});var d=c(5735),e=c(998),f=c(1970),g=c(7250);function h({urs:a}){let b=(0,e.Nn)(a.id),c=(0,e.I1)().filter(a=>b.some(b=>b.risk_ids.includes(a.id))).map(a=>({id:a.id,title:a.title}));return(0,d.jsx)(g.URSDetailClient,{urs:a,linkedFS:b,linkedRisks:c})}var i=c(3059),j=c.n(i);function k({items:a}){return(0,d.jsx)("nav",{style:{marginBottom:"1rem",fontSize:"0.875rem",color:"var(--text-secondary)"},children:a.map((b,c)=>(0,d.jsxs)("span",{children:[b.href?(0,d.jsx)(j(),{href:b.href,style:{color:"var(--accent)"},children:b.label}):(0,d.jsx)("span",{style:{color:"var(--text-primary)"},children:b.label}),c<a.length-1&&(0,d.jsx)("span",{style:{margin:"0 0.5rem"},children:"/"})]},c))})}var l=c(7831);function m({fs:a,highlightScenario:b}){let c=(0,e.I1)().filter(b=>a.risk_ids.includes(b.id));return(0,d.jsxs)("div",{children:[(0,d.jsx)(k,{items:[{label:"Specifications",href:"/specs?type=fs"},{label:a.id}]}),(0,d.jsxs)("header",{className:"page-header",children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"1rem",marginBottom:"0.5rem",flexWrap:"wrap"},children:[(0,d.jsx)("code",{style:{fontSize:"1.5rem",fontWeight:700,color:"var(--warning)",background:"rgba(245, 158, 11, 0.1)",padding:"0.5rem 1rem",borderRadius:"8px"},children:a.id}),(0,d.jsx)("span",{className:"badge",style:{background:"var(--bg-hover)"},children:"→ OQ"}),a.urs_ids.map(a=>(0,d.jsx)(j(),{href:`/specs/${a}`,children:(0,d.jsx)("span",{className:"badge badge-success",children:a})},a)),a.risk_ids.map(a=>(0,d.jsx)(j(),{href:`/specs/${a}`,children:(0,d.jsx)("span",{className:"badge",style:{background:"rgba(249, 115, 22, 0.15)",color:"#f97316"},children:a})},a))]}),(0,d.jsx)("h1",{className:"page-title",children:a.title}),(0,d.jsxs)("p",{className:"page-subtitle",children:["Functional Specification • ",a.scenario_count," test scenarios"]})]}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDCC4 Description"}),(0,d.jsx)("p",{style:{whiteSpace:"pre-wrap",color:"var(--text-secondary)",lineHeight:1.7},children:a.description})]}),a.requirements.length>0&&(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsx)("h2",{className:"card-title",children:"\uD83D\uDCCB Requirements"}),(0,d.jsx)("ul",{style:{margin:0,paddingLeft:"1.5rem"},children:a.requirements.map((a,b)=>(0,d.jsx)("li",{style:{marginBottom:"0.5rem",color:"var(--text-secondary)",fontFamily:"monospace"},children:a},b))})]}),(0,d.jsxs)("div",{className:"card",style:{marginBottom:"1.5rem"},children:[(0,d.jsxs)("h2",{className:"card-title",children:["\uD83E\uDDEA Test Scenarios (",a.scenarios.length,")"]}),(0,d.jsx)(l.ScenarioList,{scenarios:a.scenarios,highlightScenario:b})]}),c.length>0&&(0,d.jsxs)("div",{className:"card",children:[(0,d.jsx)("h2",{className:"card-title",children:"⚠️ Linked Risks"}),(0,d.jsx)("div",{style:{display:"grid",gap:"0.75rem"},children:c.map(a=>(0,d.jsx)(j(),{href:`/specs/${a.id}`,style:{textDecoration:"none"},children:(0,d.jsxs)("div",{style:{padding:"1rem",background:"var(--bg-hover)",borderRadius:"8px",borderLeft:"4px solid #f97316"},children:[(0,d.jsx)("code",{style:{fontWeight:600,color:"#f97316"},children:a.id}),(0,d.jsx)("span",{style:{marginLeft:"0.75rem",color:"var(--text-primary)"},children:a.title}),(0,d.jsxs)("span",{className:"badge",style:{marginLeft:"0.75rem",background:"rgba(249, 115, 22, 0.15)",color:"#f97316"},children:[a.risk_level," risk"]})]})},a.id))})]})]})}var n=c(9665);function o({risk:a}){let b=(0,e.x7)().filter(b=>b.risk_ids.includes(a.id));return(0,d.jsx)(n.RiskDetailClient,{risk:a,linkedFS:b})}let p="force-dynamic";async function q({params:a,searchParams:b}){let{id:c}=await a,{scenario:g}=await b,i=(0,e.Lo)(c);if(i)return(0,d.jsx)(h,{urs:i});let j=(0,e.Ey)(c);if(j)return(0,d.jsx)(m,{fs:j,highlightScenario:g});let k=(0,e.i7)(c);if(k)return(0,d.jsx)(o,{risk:k});(0,f.notFound)()}},7075:a=>{"use strict";a.exports=require("node:stream")},7250:(a,b,c)=>{"use strict";c.d(b,{URSDetailClient:()=>d});let d=(0,c(7943).registerClientReference)(function(){throw Error("Attempted to call URSDetailClient() from the server but URSDetailClient is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/urs-detail-client.tsx","URSDetailClient")},7831:(a,b,c)=>{"use strict";c.d(b,{ScenarioList:()=>d});let d=(0,c(7943).registerClientReference)(function(){throw Error("Attempted to call ScenarioList() from the server but ScenarioList is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/scenario-list.tsx","ScenarioList")},8354:a=>{"use strict";a.exports=require("util")},8474:a=>{"use strict";a.exports=require("node:events")},8621:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"unstable_rethrow",{enumerable:!0,get:function(){return d}});let d=c(108).unstable_rethrow;("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},8908:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,3318,23)),Promise.resolve().then(c.bind(c,9665)),Promise.resolve().then(c.bind(c,7831)),Promise.resolve().then(c.bind(c,7250))},9021:a=>{"use strict";a.exports=require("fs")},9121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},9294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9665:(a,b,c)=>{"use strict";c.d(b,{RiskDetailClient:()=>d});let d=(0,c(7943).registerClientReference)(function(){throw Error("Attempted to call RiskDetailClient() from the server but RiskDetailClient is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/risk-detail-client.tsx","RiskDetailClient")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,471,13,390,476,870,135,530],()=>b(b.s=2926));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/specs/[id]/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/specs/[id]/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"621":{"*":{"id":"5690","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"8059","name":"*","chunks":[],"async":false}},"2716":{"*":{"id":"2386","name":"*","chunks":[],"async":false}},"2872":{"*":{"id":"6966","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"5543":{"*":{"id":"4891","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"7536":{"*":{"id":"7688","name":"*","chunks":[],"async":false}},"8169":{"*":{"id":"3291","name":"*","chunks":[],"async":false}},"8500":{"*":{"id":"2116","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}},"9049":{"*":{"id":"1448","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/client/app-dir/link.js":{"id":8500,"name":"*","chunks":["500","static/chunks/500-b84d19d842172eba.js","385","static/chunks/app/specs/%5Bid%5D/page-a1e2672e95d4c9c6.js"],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/node_modules/next/dist/esm/client/app-dir/link.js":{"id":8500,"name":"*","chunks":["500","static/chunks/500-b84d19d842172eba.js","385","static/chunks/app/specs/%5Bid%5D/page-a1e2672e95d4c9c6.js"],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/globals.css":{"id":1743,"name":"*","chunks":["500","static/chunks/500-b84d19d842172eba.js","177","static/chunks/app/layout-550e25f5579f1a32.js"],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/releases/releases-client.tsx":{"id":7536,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/matrix/client.tsx":{"id":2716,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/builder/builder-tabs.tsx":{"id":2872,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/releases/[id]/release-detail-client.tsx":{"id":9049,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/risk-detail-client.tsx":{"id":5543,"name":"*","chunks":["500","static/chunks/500-b84d19d842172eba.js","385","static/chunks/app/specs/%5Bid%5D/page-a1e2672e95d4c9c6.js"],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/scenario-list.tsx":{"id":8169,"name":"*","chunks":["500","static/chunks/500-b84d19d842172eba.js","385","static/chunks/app/specs/%5Bid%5D/page-a1e2672e95d4c9c6.js"],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/urs-detail-client.tsx":{"id":621,"name":"*","chunks":["500","static/chunks/500-b84d19d842172eba.js","385","static/chunks/app/specs/%5Bid%5D/page-a1e2672e95d4c9c6.js"],"async":false}},"entryCSSFiles":{"/Users/matthew/Code/github/p11o/machine/docs/src/":[],"/Users/matthew/Code/github/p11o/machine/docs/src/app/layout":[{"inlined":false,"path":"static/css/f29e518c867dffaa.css"}],"/Users/matthew/Code/github/p11o/machine/docs/src/app/page":[],"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/page":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"621":{"*":{"id":"7250","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"2716":{"*":{"id":"7652","name":"*","chunks":[],"async":false}},"2872":{"*":{"id":"1805","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"5543":{"*":{"id":"9665","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"7536":{"*":{"id":"4618","name":"*","chunks":[],"async":false}},"8169":{"*":{"id":"7831","name":"*","chunks":[],"async":false}},"8500":{"*":{"id":"3318","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}},"9049":{"*":{"id":"9575","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
"/_not-found/page": "app/_not-found/page.js",
|
|
3
3
|
"/_global-error/page": "app/_global-error/page.js",
|
|
4
4
|
"/favicon.ico/route": "app/favicon.ico/route.js",
|
|
5
|
-
"/builder/page": "app/builder/page.js",
|
|
6
|
-
"/matrix/page": "app/matrix/page.js",
|
|
7
5
|
"/releases/page": "app/releases/page.js",
|
|
6
|
+
"/matrix/page": "app/matrix/page.js",
|
|
7
|
+
"/builder/page": "app/builder/page.js",
|
|
8
8
|
"/releases/[id]/page": "app/releases/[id]/page.js",
|
|
9
9
|
"/specs/[id]/page": "app/specs/[id]/page.js",
|
|
10
|
-
"/
|
|
11
|
-
"/page": "app/page.js"
|
|
10
|
+
"/page": "app/page.js",
|
|
11
|
+
"/guide/page": "app/guide/page.js"
|
|
12
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><!--
|
|
1
|
+
<!DOCTYPE html><!--SmDoKluq2qozv2eyHXbUF--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/f29e518c867dffaa.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-650bc85863e2a9e7.js"/><script src="/_next/static/chunks/4bd1b696-67e30520d621c4dd.js" async=""></script><script src="/_next/static/chunks/794-9353bb3ab9a73e90.js" async=""></script><script src="/_next/static/chunks/main-app-6d93e914b4a54c7e.js" async=""></script><script src="/_next/static/chunks/500-b84d19d842172eba.js" async=""></script><script src="/_next/static/chunks/app/page-9c9dff9c5e3ddefe.js" async=""></script><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><title>GAMP 5 Traceability</title><meta name="description" content="V-Model Documentation & Test Management"/><link rel="icon" href="/favicon.ico?603d046c9a6fdfbb" type="image/x-icon" sizes="16x16"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div class="layout"><aside class="sidebar"><div class="sidebar-header"><h1 style="font-size:1.25rem;font-weight:700;margin:0">GAMP 5</h1><span style="font-size:0.75rem;color:var(--text-secondary)">V-Model System</span></div><nav class="sidebar-nav"><ul style="list-style:none;padding:0;margin:0"><li><a class="nav-link" href="/"><span>📊</span><span>Dashboard</span></a></li><li><a class="nav-link" href="/matrix"><span>🔗</span><span>Traceability</span></a></li><li><a class="nav-link" href="/releases"><span>📦</span><span>Releases</span></a></li><li><a class="nav-link" href="/guide"><span>📖</span><span>User Guide</span></a></li><li><a class="nav-link" href="/builder"><span>🔨</span><span>Builder</span></a></li></ul></nav><div style="margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)"><div style="font-size:0.75rem;color:var(--text-secondary)">GAMP 5 Compliant</div><div style="font-size:0.75rem;color:var(--text-secondary);margin-top:0.25rem">21 CFR Part 11 Ready</div></div></aside><main class="main-content"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--></main></div><script src="/_next/static/chunks/webpack-650bc85863e2a9e7.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[8500,[\"500\",\"static/chunks/500-b84d19d842172eba.js\",\"974\",\"static/chunks/app/page-9c9dff9c5e3ddefe.js\"],\"\"]\n3:I[7121,[],\"\"]\n4:I[4581,[],\"\"]\n5:I[484,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n8:I[484,[],\"ViewportBoundary\"]\na:I[484,[],\"MetadataBoundary\"]\nc:I[7123,[],\"\"]\n:HL[\"/_next/static/css/f29e518c867dffaa.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"SmDoKluq2qozv2eyHXbUF\",\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/f29e518c867dffaa.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"className\":\"layout\",\"children\":[[\"$\",\"aside\",null,{\"className\":\"sidebar\",\"children\":[[\"$\",\"div\",null,{\"className\":\"sidebar-header\",\"children\":[[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"1.25rem\",\"fontWeight\":700,\"margin\":0},\"children\":\"GAMP 5\"}],[\"$\",\"span\",null,{\"style\":{\"fontSize\":\"0.75rem\",\"color\":\"var(--text-secondary)\"},\"children\":\"V-Model System\"}]]}],[\"$\",\"nav\",null,{\"className\":\"sidebar-nav\",\"children\":[\"$\",\"ul\",null,{\"style\":{\"listStyle\":\"none\",\"padding\":0,\"margin\":0},\"children\":[[\"$\",\"li\",\"/\",{\"children\":[\"$\",\"$L2\",null,{\"href\":\"/\",\"className\":\"nav-link\",\"children\":[[\"$\",\"span\",null,{\"children\":\"📊\"}],[\"$\",\"span\",null,{\"children\":\"Dashboard\"}]]}]}],[\"$\",\"li\",\"/matrix\",{\"children\":[\"$\",\"$L2\",null,{\"href\":\"/matrix\",\"className\":\"nav-link\",\"children\":[[\"$\",\"span\",null,{\"children\":\"🔗\"}],[\"$\",\"span\",null,{\"children\":\"Traceability\"}]]}]}],[\"$\",\"li\",\"/releases\",{\"children\":[\"$\",\"$L2\",null,{\"href\":\"/releases\",\"className\":\"nav-link\",\"children\":[[\"$\",\"span\",null,{\"children\":\"📦\"}],[\"$\",\"span\",null,{\"children\":\"Releases\"}]]}]}],[\"$\",\"li\",\"/guide\",{\"children\":[\"$\",\"$L2\",null,{\"href\":\"/guide\",\"className\":\"nav-link\",\"children\":[[\"$\",\"span\",null,{\"children\":\"📖\"}],[\"$\",\"span\",null,{\"children\":\"User Guide\"}]]}]}],[\"$\",\"li\",\"/builder\",{\"children\":[\"$\",\"$L2\",null,{\"href\":\"/builder\",\"className\":\"nav-link\",\"children\":[[\"$\",\"span\",null,{\"children\":\"🔨\"}],[\"$\",\"span\",null,{\"children\":\"Builder\"}]]}]}]]}]}],[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"2rem\",\"paddingTop\":\"2rem\",\"borderTop\":\"1px solid var(--border)\"},\"children\":[[\"$\",\"div\",null,{\"style\":{\"fontSize\":\"0.75rem\",\"color\":\"var(--text-secondary)\"},\"children\":\"GAMP 5 Compliant\"}],[\"$\",\"div\",null,{\"style\":{\"fontSize\":\"0.75rem\",\"color\":\"var(--text-secondary)\",\"marginTop\":\"0.25rem\"},\"children\":\"21 CFR Part 11 Ready\"}]]}]]}],[\"$\",\"main\",null,{\"className\":\"main-content\",\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true}\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[6869,[],\"IconMark\"]\n7:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"GAMP 5 Traceability\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"V-Model Documentation \u0026 Test Management\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?603d046c9a6fdfbb\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"$Ld\",\"3\",{}]]\n"])</script></body></html>
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
<!DOCTYPE html><!--
|
|
2
|
-
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-650bc85863e2a9e7.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[7121,[],\"\"]\n3:I[4581,[],\"\"]\n4:I[484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[484,[],\"ViewportBoundary\"]\n9:I[484,[],\"MetadataBoundary\"]\nb:I[7123,[],\"\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"
|
|
1
|
+
<!DOCTYPE html><!--SmDoKluq2qozv2eyHXbUF--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-650bc85863e2a9e7.js"/><script src="/_next/static/chunks/4bd1b696-67e30520d621c4dd.js" async=""></script><script src="/_next/static/chunks/794-9353bb3ab9a73e90.js" async=""></script><script src="/_next/static/chunks/main-app-6d93e914b4a54c7e.js" async=""></script><title>500: Internal Server Error.</title><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
|
|
2
|
+
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-650bc85863e2a9e7.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[7121,[],\"\"]\n3:I[4581,[],\"\"]\n4:I[484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[484,[],\"ViewportBoundary\"]\n9:I[484,[],\"MetadataBoundary\"]\nb:I[7123,[],\"\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"SmDoKluq2qozv2eyHXbUF\",\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{}]}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"title\",null,{\"children\":\"500: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$La\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",[]],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\na:[]\n"])</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__RSC_SERVER_MANIFEST="{\"node\":{\"
|
|
1
|
+
self.__RSC_SERVER_MANIFEST="{\"node\":{\"40f89f8955402f0e831481494150f047ef6de953ed\":{\"workers\":{\"app/releases/page\":{\"moduleId\":\"5824\",\"async\":false},\"app/releases/[id]/page\":{\"moduleId\":\"5918\",\"async\":false}},\"layer\":{\"app/releases/page\":\"action-browser\",\"app/releases/[id]/page\":\"action-browser\"},\"filename\":\"app/releases/actions.ts\",\"exportedName\":\"createReleaseAction\"},\"606c2072897698695c51480bbe8faeaf0e994aa9c4\":{\"workers\":{\"app/releases/page\":{\"moduleId\":\"5824\",\"async\":false},\"app/releases/[id]/page\":{\"moduleId\":\"5918\",\"async\":false}},\"layer\":{\"app/releases/page\":\"action-browser\",\"app/releases/[id]/page\":\"action-browser\"},\"filename\":\"app/releases/actions.ts\",\"exportedName\":\"untagFSFromReleaseAction\"},\"60b6d13d1f30b4ba8841c9cc36b1159c6298bcc1c3\":{\"workers\":{\"app/releases/page\":{\"moduleId\":\"5824\",\"async\":false},\"app/releases/[id]/page\":{\"moduleId\":\"5918\",\"async\":false}},\"layer\":{\"app/releases/page\":\"action-browser\",\"app/releases/[id]/page\":\"action-browser\"},\"filename\":\"app/releases/actions.ts\",\"exportedName\":\"tagFSToReleaseAction\"},\"60efa7aa514e28840ccb930735b92dcd6ab300c12f\":{\"workers\":{\"app/releases/page\":{\"moduleId\":\"5824\",\"async\":false},\"app/releases/[id]/page\":{\"moduleId\":\"5918\",\"async\":false}},\"layer\":{\"app/releases/page\":\"action-browser\",\"app/releases/[id]/page\":\"action-browser\"},\"filename\":\"app/releases/actions.ts\",\"exportedName\":\"updateReleaseAction\"},\"404d48aaa08c19ca607b49abf2013e489dfeeb974d\":{\"workers\":{\"app/builder/page\":{\"moduleId\":\"5393\",\"async\":false}},\"layer\":{\"app/builder/page\":\"action-browser\"},\"filename\":\"app/builder/actions.ts\",\"exportedName\":\"saveURS\"},\"405a133b1c5978f07524624f288f591e8f6cf9e198\":{\"workers\":{\"app/builder/page\":{\"moduleId\":\"5393\",\"async\":false}},\"layer\":{\"app/builder/page\":\"action-browser\"},\"filename\":\"app/builder/actions.ts\",\"exportedName\":\"saveRisk\"},\"60b1e39fb88d1f6470f487db8a11ff4097710fd7b8\":{\"workers\":{\"app/builder/page\":{\"moduleId\":\"5393\",\"async\":false}},\"layer\":{\"app/builder/page\":\"action-browser\"},\"filename\":\"app/builder/actions.ts\",\"exportedName\":\"saveFS\"},\"4044d4931c77798a2e1c1ee751781d2ddb11e7f8d8\":{\"workers\":{\"app/releases/[id]/page\":{\"moduleId\":\"5918\",\"async\":false}},\"layer\":{\"app/releases/[id]/page\":\"action-browser\"},\"filename\":\"app/releases/[id]/defect-actions.ts\",\"exportedName\":\"createDefectAction\"},\"60537756e508564b7d01605ec5c490a458e6ad6564\":{\"workers\":{\"app/releases/[id]/page\":{\"moduleId\":\"5918\",\"async\":false}},\"layer\":{\"app/releases/[id]/page\":\"action-browser\"},\"filename\":\"app/releases/[id]/defect-actions.ts\",\"exportedName\":\"deleteDefectAction\"},\"7096cf6eaf893df89b9cb140cb7e94a43f9cb0aeb2\":{\"workers\":{\"app/releases/[id]/page\":{\"moduleId\":\"5918\",\"async\":false}},\"layer\":{\"app/releases/[id]/page\":\"action-browser\"},\"filename\":\"app/releases/[id]/defect-actions.ts\",\"exportedName\":\"updateDefectAction\"},\"6071878121fbac221ddfe8509634a3975eb76611ea\":{\"workers\":{\"app/specs/[id]/page\":{\"moduleId\":\"6761\",\"async\":false}},\"layer\":{\"app/specs/[id]/page\":\"action-browser\"},\"filename\":\"app/specs/[id]/actions.ts\",\"exportedName\":\"updateRiskAction\"},\"60736f5ea7cad4d8cd088110b97ed11baf4aa8d873\":{\"workers\":{\"app/specs/[id]/page\":{\"moduleId\":\"6761\",\"async\":false}},\"layer\":{\"app/specs/[id]/page\":\"action-browser\"},\"filename\":\"app/specs/[id]/actions.ts\",\"exportedName\":\"updateURSAction\"}},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"node":{"
|
|
1
|
+
{"node":{"40f89f8955402f0e831481494150f047ef6de953ed":{"workers":{"app/releases/page":{"moduleId":"5824","async":false},"app/releases/[id]/page":{"moduleId":"5918","async":false}},"layer":{"app/releases/page":"action-browser","app/releases/[id]/page":"action-browser"},"filename":"app/releases/actions.ts","exportedName":"createReleaseAction"},"606c2072897698695c51480bbe8faeaf0e994aa9c4":{"workers":{"app/releases/page":{"moduleId":"5824","async":false},"app/releases/[id]/page":{"moduleId":"5918","async":false}},"layer":{"app/releases/page":"action-browser","app/releases/[id]/page":"action-browser"},"filename":"app/releases/actions.ts","exportedName":"untagFSFromReleaseAction"},"60b6d13d1f30b4ba8841c9cc36b1159c6298bcc1c3":{"workers":{"app/releases/page":{"moduleId":"5824","async":false},"app/releases/[id]/page":{"moduleId":"5918","async":false}},"layer":{"app/releases/page":"action-browser","app/releases/[id]/page":"action-browser"},"filename":"app/releases/actions.ts","exportedName":"tagFSToReleaseAction"},"60efa7aa514e28840ccb930735b92dcd6ab300c12f":{"workers":{"app/releases/page":{"moduleId":"5824","async":false},"app/releases/[id]/page":{"moduleId":"5918","async":false}},"layer":{"app/releases/page":"action-browser","app/releases/[id]/page":"action-browser"},"filename":"app/releases/actions.ts","exportedName":"updateReleaseAction"},"404d48aaa08c19ca607b49abf2013e489dfeeb974d":{"workers":{"app/builder/page":{"moduleId":"5393","async":false}},"layer":{"app/builder/page":"action-browser"},"filename":"app/builder/actions.ts","exportedName":"saveURS"},"405a133b1c5978f07524624f288f591e8f6cf9e198":{"workers":{"app/builder/page":{"moduleId":"5393","async":false}},"layer":{"app/builder/page":"action-browser"},"filename":"app/builder/actions.ts","exportedName":"saveRisk"},"60b1e39fb88d1f6470f487db8a11ff4097710fd7b8":{"workers":{"app/builder/page":{"moduleId":"5393","async":false}},"layer":{"app/builder/page":"action-browser"},"filename":"app/builder/actions.ts","exportedName":"saveFS"},"4044d4931c77798a2e1c1ee751781d2ddb11e7f8d8":{"workers":{"app/releases/[id]/page":{"moduleId":"5918","async":false}},"layer":{"app/releases/[id]/page":"action-browser"},"filename":"app/releases/[id]/defect-actions.ts","exportedName":"createDefectAction"},"60537756e508564b7d01605ec5c490a458e6ad6564":{"workers":{"app/releases/[id]/page":{"moduleId":"5918","async":false}},"layer":{"app/releases/[id]/page":"action-browser"},"filename":"app/releases/[id]/defect-actions.ts","exportedName":"deleteDefectAction"},"7096cf6eaf893df89b9cb140cb7e94a43f9cb0aeb2":{"workers":{"app/releases/[id]/page":{"moduleId":"5918","async":false}},"layer":{"app/releases/[id]/page":"action-browser"},"filename":"app/releases/[id]/defect-actions.ts","exportedName":"updateDefectAction"},"6071878121fbac221ddfe8509634a3975eb76611ea":{"workers":{"app/specs/[id]/page":{"moduleId":"6761","async":false}},"layer":{"app/specs/[id]/page":"action-browser"},"filename":"app/specs/[id]/actions.ts","exportedName":"updateRiskAction"},"60736f5ea7cad4d8cd088110b97ed11baf4aa8d873":{"workers":{"app/specs/[id]/page":{"moduleId":"6761","async":false}},"layer":{"app/specs/[id]/page":"action-browser"},"filename":"app/specs/[id]/actions.ts","exportedName":"updateURSAction"}},"edge":{},"encryptionKey":"+bKmWy0hcHtE6vlbwm5Ehw4Y/G4hcleBlB4IPugF/aQ="}
|