@nivora/matrix 0.2.3 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +13 -6
- package/.next/build-manifest.json +3 -3
- package/.next/prerender-manifest.json +3 -3
- package/.next/react-loadable-manifest.json +20 -1
- package/.next/routes-manifest.json +48 -0
- package/.next/server/app/_global-error/page.js +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.js +2 -2
- package/.next/server/app/_not-found/page.js.nft.json +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 +15 -14
- package/.next/server/app/_not-found.segments/_full.segment.rsc +15 -14
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +6 -5
- 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 +2 -2
- package/.next/server/app/builder/page.js +8 -21
- package/.next/server/app/builder/page.js.nft.json +1 -1
- package/.next/server/app/builder/page_client-reference-manifest.js +1 -1
- package/.next/server/app/favicon.ico/route.js +1 -1
- package/.next/server/app/guide/page.js +2 -2
- package/.next/server/app/guide/page.js.nft.json +1 -1
- package/.next/server/app/guide/page_client-reference-manifest.js +1 -1
- package/.next/server/app/matrix/page.js +2 -2
- package/.next/server/app/matrix/page.js.nft.json +1 -1
- package/.next/server/app/matrix/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page.js +2 -2
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/releases/[id]/page.js +16 -16
- package/.next/server/app/releases/[id]/page.js.nft.json +1 -1
- package/.next/server/app/releases/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/releases/page.js +4 -4
- package/.next/server/app/releases/page.js.nft.json +1 -1
- 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.js.nft.json +1 -1
- package/.next/server/app/specs/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/traceability/fs/[id]/page.js +11 -0
- package/.next/server/app/traceability/fs/[id]/page.js.nft.json +1 -0
- package/.next/server/app/traceability/fs/[id]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/traceability/fs/page.js +2 -0
- package/.next/server/app/traceability/fs/page.js.nft.json +1 -0
- package/.next/server/app/traceability/fs/page_client-reference-manifest.js +1 -0
- package/.next/server/app/traceability/page.js +2 -0
- package/.next/server/app/traceability/page.js.nft.json +1 -0
- package/.next/server/app/traceability/page_client-reference-manifest.js +1 -0
- package/.next/server/app/traceability/risk/[id]/page.js +2 -0
- package/.next/server/app/traceability/risk/[id]/page.js.nft.json +1 -0
- package/.next/server/app/traceability/risk/[id]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/traceability/risk/page.js +2 -0
- package/.next/server/app/traceability/risk/page.js.nft.json +1 -0
- package/.next/server/app/traceability/risk/page_client-reference-manifest.js +1 -0
- package/.next/server/app/traceability/urs/[id]/page.js +2 -0
- package/.next/server/app/traceability/urs/[id]/page.js.nft.json +1 -0
- package/.next/server/app/traceability/urs/[id]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/traceability/urs/page.js +2 -0
- package/.next/server/app/traceability/urs/page.js.nft.json +1 -0
- package/.next/server/app/traceability/urs/page_client-reference-manifest.js +1 -0
- package/.next/server/app-paths-manifest.json +13 -6
- package/.next/server/chunks/138.js +1 -0
- package/.next/server/chunks/160.js +23 -0
- package/.next/server/chunks/390.js +1 -1
- package/.next/server/chunks/391.js +1 -0
- package/.next/server/chunks/445.js +12 -12
- package/.next/server/chunks/471.js +7 -7
- package/.next/server/chunks/829.js +34 -0
- package/.next/server/chunks/870.js +1 -1
- package/.next/server/chunks/{530.js → 907.js} +14 -14
- package/.next/server/chunks/941.js +14 -0
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- 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/_plXSl3JsnaL0Y8LiiDGM/_buildManifest.js +1 -0
- package/.next/static/chunks/411.1639aedf51af4bc4.js +1 -0
- package/.next/static/chunks/app/_global-error/page-435048b8215f07c0.js +1 -0
- package/.next/static/chunks/app/builder/page-98dfb8ccb235f9a8.js +10 -0
- package/.next/static/chunks/app/guide/page-f227601c12abd1f8.js +1 -0
- package/.next/static/chunks/app/layout-0f51af36ad0921db.js +1 -0
- package/.next/static/chunks/app/page-f227601c12abd1f8.js +1 -0
- package/.next/static/chunks/app/releases/[id]/page-4c326d62508877ef.js +1 -0
- package/.next/static/chunks/app/releases/page-0060204f72b7307f.js +1 -0
- package/.next/static/chunks/app/specs/[id]/page-8bdf217e9957a247.js +1 -0
- package/.next/static/chunks/app/traceability/fs/[id]/page-c89eac470b12216d.js +10 -0
- package/.next/static/chunks/app/traceability/fs/page-f227601c12abd1f8.js +1 -0
- package/.next/static/chunks/app/traceability/layout-435048b8215f07c0.js +1 -0
- package/.next/static/chunks/app/traceability/page-17af5ed69595eb21.js +1 -0
- package/.next/static/chunks/app/traceability/risk/[id]/page-76d6b1fd318e7d5e.js +1 -0
- package/.next/static/chunks/app/traceability/risk/page-f227601c12abd1f8.js +1 -0
- package/.next/static/chunks/app/traceability/urs/[id]/page-ccb0c3574010d771.js +1 -0
- package/.next/static/chunks/app/traceability/urs/page-f227601c12abd1f8.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-435048b8215f07c0.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-435048b8215f07c0.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-435048b8215f07c0.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-435048b8215f07c0.js +1 -0
- package/.next/static/chunks/webpack-e1b658b93e085428.js +1 -0
- package/.next/static/css/230ac595a7268d78.css +1 -0
- package/bin/cli.js +10 -4
- package/package.json +1 -1
- package/.next/server/chunks/13.js +0 -1
- package/.next/server/chunks/135.js +0 -34
- package/.next/server/chunks/476.js +0 -23
- package/.next/static/chunks/app/_global-error/page-aba28f88d5781771.js +0 -1
- package/.next/static/chunks/app/builder/page-856dca2fb73a3bb0.js +0 -10
- package/.next/static/chunks/app/guide/page-9c9dff9c5e3ddefe.js +0 -1
- package/.next/static/chunks/app/layout-550e25f5579f1a32.js +0 -1
- package/.next/static/chunks/app/page-9c9dff9c5e3ddefe.js +0 -1
- package/.next/static/chunks/app/releases/[id]/page-0bf495e3d5fdc5c6.js +0 -1
- package/.next/static/chunks/app/releases/page-d25d5b63509682f3.js +0 -1
- package/.next/static/chunks/app/specs/[id]/page-97f9d0238eb90f4f.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-aba28f88d5781771.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-aba28f88d5781771.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-aba28f88d5781771.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-aba28f88d5781771.js +0 -1
- package/.next/static/chunks/webpack-650bc85863e2a9e7.js +0 -1
- package/.next/static/css/f29e518c867dffaa.css +0 -1
- package/.next/static/sRIqSCBLLB0aIqLFusLBB/_buildManifest.js +0 -1
- /package/.next/static/{sRIqSCBLLB0aIqLFusLBB → _plXSl3JsnaL0Y8LiiDGM}/_ssgManifest.js +0 -0
|
@@ -1,24 +1,11 @@
|
|
|
1
|
-
(()=>{var a={};a.id=462,a.ids=[462],a.modules={
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
title = excluded.title,
|
|
7
|
-
file_path = excluded.file_path,
|
|
8
|
-
description = excluded.description,
|
|
9
|
-
requirements = excluded.requirements,
|
|
10
|
-
scenario_count = excluded.scenario_count,
|
|
11
|
-
updated_at = excluded.updated_at
|
|
12
|
-
`).run(e.id,e.title,e.file_path,e.description,JSON.stringify(e.requirements),e.scenario_count,e.created_at,(0,k.lg)()),g.query("DELETE FROM fs_urs_link WHERE fs_id = ?").run(e.id),e.urs_ids))g.query("SELECT id FROM urs WHERE id = ?").get(a)&&g.query(`
|
|
13
|
-
INSERT OR IGNORE INTO fs_urs_link (fs_id, urs_id) VALUES (?, ?)
|
|
14
|
-
`).run(e.id,a);return(0,i.revalidatePath)("/"),(0,i.revalidatePath)("/matrix"),(0,i.revalidatePath)("/builder"),{success:!0,id:e.id}}catch(a){return{success:!1,error:String(a)}}}async function m(a){try{let b=(0,j.r_)(a);return(0,i.revalidatePath)("/"),(0,i.revalidatePath)("/matrix"),(0,i.revalidatePath)("/builder"),{success:!0,id:b.id}}catch(a){return{success:!1,error:String(a)}}}async function n(a){try{let b=(0,j.w)(a);return(0,i.revalidatePath)("/"),(0,i.revalidatePath)("/matrix"),(0,i.revalidatePath)("/builder"),{success:!0,id:b.id}}catch(a){return{success:!1,error:String(a)}}}(0,c(9337).D)([l,m,n]),(0,d.A)(l,"6031d978fa85dc0f7a684fd98b31954904e329133d",null),(0,d.A)(m,"40b1c73b0988800e3ec2a1eaad98d4e536e9e0b690",null),(0,d.A)(n,"40df584c8132966889e22d4dda60782c0c28c0272b",null)},142:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h,dynamic:()=>g});var d=c(5735),e=c(1081),f=c(1805);let g="force-dynamic";function h(){let a=(0,e.Er)(),b=(0,e.I1)(),c=(0,e.x7)(),g=c.flatMap(a=>a.scenarios.flatMap(a=>a.steps)),h={given:[...new Set(g.filter(a=>a.startsWith("Given ")))],when:[...new Set(g.filter(a=>a.startsWith("When ")))],then:[...new Set(g.filter(a=>a.startsWith("Then ")))],and:[...new Set(g.filter(a=>a.startsWith("And ")))],but:[...new Set(g.filter(a=>a.startsWith("But ")))]};return(0,d.jsxs)("div",{children:[(0,d.jsxs)("header",{className:"page-header",children:[(0,d.jsx)("h1",{className:"page-title",children:"Builder"}),(0,d.jsx)("p",{className:"page-subtitle",children:"Create URS, FS, and Risk specifications"})]}),(0,d.jsx)(f.BuilderTabs,{ursItems:a.map(a=>({id:a.id,title:a.title})),riskItems:b.map(a=>({id:a.id,title:a.title})),fsItems:c.map(a=>({id:a.id,title:a.title})),counts:{urs:a.length,fs:c.length,risk:b.length},stepsByType:h})]})}},261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},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")},1081:(a,b,c)=>{"use strict";c.d(b,{Er:()=>d.Er,I1:()=>d.I1,wx:()=>f,x7:()=>d.x7,zm:()=>e});var d=c(998);function e(){let a=(0,d.Er)(),b=(0,d.x7)(),c=new Map((0,d.I1)().map(a=>[a.id,a]));return a.map(a=>{let d=b.filter(b=>b.urs_ids.includes(a.id)),e=0;return{urs:a,fsItems:d.map(a=>{e+=a.scenario_count;let b=a.risk_ids.map(a=>c.get(a)).filter(Boolean);return{fs:a,risks:b}}),coverage:{fsCount:d.length,scenarioCount:e,hasCoverage:e>0}}})}function f(){let a=(0,d.Er)(),b=(0,d.x7)(),c=(0,d.I1)(),e=b.reduce((a,b)=>a+b.scenario_count,0),f=a.filter(a=>"draft"===a.status).length+c.filter(a=>"draft"===a.status).length,g=a.filter(a=>"review"===a.status).length+c.filter(a=>"review"===a.status).length,h=a.filter(a=>"approved"===a.status).length+c.filter(a=>"approved"===a.status).length,i=a.filter(a=>b.some(b=>b.urs_ids.includes(a.id))).length,j=b.filter(a=>a.scenario_count>0).length;return{counts:{urs:a.length,fs:b.length,scenarios:e,risk:c.length},byStatus:{draft:f,review:g,approved:h},coverage:{ursWithFS:i,ursTotal:a.length,fsWithTests:j,fsTotal:b.length}}}},1455:a=>{"use strict";a.exports=require("node:fs/promises")},1524:(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:["builder",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,142)),"/Users/matthew/Code/github/p11o/machine/docs/src/app/builder/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:"/builder/page",pathname:"/builder",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="/builder/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}`:""}
|
|
15
|
-
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}}},1787:a=>{"use strict";a.exports=require("bun:sqlite")},1805:(a,b,c)=>{"use strict";c.d(b,{BuilderTabs:()=>d});let d=(0,c(7943).registerClientReference)(function(){throw Error("Attempted to call BuilderTabs() from the server but BuilderTabs 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/builder/builder-tabs.tsx","BuilderTabs")},1932:a=>{"use strict";a.exports=require("url")},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")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3411:(a,b,c)=>{"use strict";c.d(b,{BuilderTabs:()=>F});var d=c(8249),e=c(7484);function f({options:a,selected:b,onChange:c,placeholder:f,multi:g=!0,allowCustom:h=!0}){let[i,j]=(0,e.useState)(!1),[k,l]=(0,e.useState)(""),m=(0,e.useRef)(null),n=a.filter(a=>a.label.toLowerCase().includes(k.toLowerCase())&&(!g||!b.includes(a.value)));return(0,d.jsxs)("div",{ref:m,style:{position:"relative",flex:1},children:[g&&b.length>0&&(0,d.jsx)("div",{style:{display:"flex",gap:"0.25rem",flexWrap:"wrap",marginBottom:"0.5rem"},children:b.map(e=>{let f=a.find(a=>a.value===e);return(0,d.jsxs)("span",{className:"badge badge-success",style:{display:"flex",alignItems:"center",gap:"0.25rem"},children:[f?.value||e,(0,d.jsx)("button",{onClick:()=>{c(b.filter(a=>a!==e))},style:{background:"none",border:"none",cursor:"pointer",padding:0,fontSize:"1rem",color:"inherit"},children:"\xd7"})]},e)})}),(0,d.jsx)("input",{type:"text",value:g||i?k:(()=>{if(!g&&b.length>0){let c=a.find(a=>a.value===b[0]);return c?.label||b[0]}return""})(),onChange:a=>l(a.target.value),onFocus:()=>j(!0),placeholder:0!==b.length&&g?"Add more...":f,className:"input",style:{width:"100%"}}),i&&(0,d.jsxs)("div",{style:{position:"absolute",top:"100%",left:0,right:0,marginTop:"0.25rem",background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:"8px",maxHeight:"200px",overflowY:"auto",zIndex:100,boxShadow:"0 4px 12px rgba(0,0,0,0.3)"},children:[0===n.length?(0,d.jsx)("div",{style:{padding:"0.75rem",color:"var(--text-secondary)",fontSize:"0.875rem"},children:h?"No matches - type to create":"No matching steps"}):n.slice(0,20).map(a=>(0,d.jsxs)("div",{onClick:()=>{var d;return d=a.value,void(g?c([...b,d]):(c([d]),j(!1)),l(""))},style:{padding:"0.625rem 0.75rem",cursor:"pointer",fontSize:"0.875rem",borderBottom:"1px solid var(--border)",transition:"background 0.15s"},onMouseEnter:a=>a.currentTarget.style.background="var(--bg-hover)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,d.jsx)("div",{style:{fontWeight:500},children:a.value}),a.label!==a.value&&(0,d.jsx)("div",{style:{fontSize:"0.75rem",color:"var(--text-secondary)",marginTop:"0.125rem"},children:a.label})]},a.value)),n.length>20&&(0,d.jsxs)("div",{style:{padding:"0.5rem",color:"var(--text-secondary)",fontSize:"0.75rem",textAlign:"center"},children:["+",n.length-20," more..."]})]})]})}var g=c(9829);let h=(0,g.createServerReference)("6031d978fa85dc0f7a684fd98b31954904e329133d",g.callServer,void 0,g.findSourceMapURL,"saveFS"),i={width:"100%",padding:"0.875rem 1rem",fontSize:"0.9375rem",lineHeight:"1.5",color:"var(--text-primary)",background:"var(--bg-secondary)",borderWidth:"1px",borderStyle:"solid",borderColor:"var(--border)",borderRadius:"10px",outline:"none",transition:"all 0.2s ease"},j={borderColor:"var(--accent)",boxShadow:"0 0 0 3px rgba(99, 102, 241, 0.15)"},k={...i,cursor:"pointer",appearance:"none",backgroundImage:"url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238888a0' d='M6 8L1 3h10z'/%3E%3C/svg%3E\")",backgroundRepeat:"no-repeat",backgroundPosition:"right 1rem center",paddingRight:"2.5rem"};function l(a,b){return{...i,...b===a?j:{}}}function m(a,b){return{...k,...b===a?j:{}}}function n({label:a,children:b,required:c,compact:e,hint:f,action:g}){return(0,d.jsxs)("div",{style:{marginBottom:e?"0":"1.5rem"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"0.5rem"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem"},children:[(0,d.jsx)("label",{style:{fontWeight:500,fontSize:"0.875rem",color:"var(--text-primary)"},children:a}),c&&(0,d.jsx)("span",{style:{color:"var(--accent)",fontSize:"0.75rem"},children:"Required"}),f&&(0,d.jsxs)("span",{style:{color:"var(--text-secondary)",fontSize:"0.8125rem",fontWeight:400},children:["— ",f]})]}),g&&(0,d.jsx)("button",{onClick:g.onClick,style:{padding:"0.375rem 0.75rem",fontSize:"0.8125rem",fontWeight:500,background:"transparent",border:"1px solid var(--accent)",borderRadius:"6px",color:"var(--accent)",cursor:"pointer",transition:"all 0.2s"},children:g.label})]}),b]})}function o({status:a}){return"idle"===a.type?null:(0,d.jsxs)("div",{style:{marginBottom:"1.5rem",padding:"1rem 1.25rem",borderRadius:"10px",background:"success"===a.type?"rgba(16, 185, 129, 0.1)":"rgba(239, 68, 68, 0.1)",color:"success"===a.type?"var(--success)":"var(--error)",fontSize:"0.9375rem",display:"flex",alignItems:"center",gap:"0.5rem",borderWidth:"1px",borderStyle:"solid",borderColor:"success"===a.type?"rgba(16, 185, 129, 0.2)":"rgba(239, 68, 68, 0.2)"},children:["success"===a.type?"✅":"❌"," ",a.message]})}function p({icon:a,title:b,subtitle:c}){return(0,d.jsxs)("div",{style:{marginBottom:"2rem",paddingBottom:"1.5rem",borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("h2",{style:{margin:0,fontSize:"1.25rem",fontWeight:600},children:[a," ",b]}),(0,d.jsx)("p",{style:{margin:"0.25rem 0 0",color:"var(--text-secondary)",fontSize:"0.875rem"},children:c})]})}function q({onClick:a,disabled:b,isPending:c,label:e="Save"}){return(0,d.jsx)("button",{onClick:a,disabled:b,style:{padding:"0.75rem 1.5rem",fontSize:"0.9375rem",fontWeight:600,borderRadius:"10px",border:"none",cursor:b?"not-allowed":"pointer",background:b?"var(--bg-hover)":"linear-gradient(135deg, var(--gradient-start), var(--gradient-end))",color:b?"var(--text-secondary)":"white",transition:"all 0.2s ease",boxShadow:b?"none":"0 4px 12px rgba(99, 102, 241, 0.25)"},children:c?"\uD83D\uDCBE Saving...":`💾 ${e}`})}function r({onClick:a}){return(0,d.jsx)("button",{onClick:a,style:{padding:"0.5rem",background:"transparent",border:"1px solid var(--border)",borderRadius:"8px",color:"var(--text-secondary)",cursor:"pointer",transition:"all 0.2s",lineHeight:1},title:"Remove",children:"✕"})}function s({ursItems:a,riskItems:b,existingFSCount:c,stepsByType:g}){let i,j,k,[m,q]=(0,e.useState)("FS-"+String(c+1).padStart(3,"0")),[r,s]=(0,e.useState)(""),[w,x]=(0,e.useState)(""),[y,z]=(0,e.useState)([""]),[A,B]=(0,e.useState)([]),[C,D]=(0,e.useState)([]),[E,F]=(0,e.useState)([{name:"",steps:[{type:"given",text:""},{type:"when",text:""},{type:"then",text:""}]}]),[G,H]=(0,e.useState)({type:"idle"}),[I,J]=(0,e.useTransition)(),[K,L]=(0,e.useState)(null),M=(i=[...A.map(a=>`@${a}`),...C.map(a=>`@${a}`)].join(" "),j=y.filter(a=>a.trim()).map(a=>` - ${a}`).join("\n"),k=E.filter(a=>a.name.trim()).map(a=>{let b=a.steps.filter(a=>a.text.trim()).map(a=>` ${v(a.type)} ${a.text}`).join("\n");return` Scenario: ${a.name}
|
|
16
|
-
${b}`}).join("\n\n"),`${i}
|
|
17
|
-
Feature: ${m} ${r}
|
|
18
|
-
${w}
|
|
1
|
+
(()=>{var a={};a.id=462,a.ids=[462],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1524:(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(84006),f=c(67798),g=c(34775),h=c(99373),i=c(73461),j=c(1020),k=c(26349),l=c(54365),m=c(16023),n=c(63747),o=c(24235),p=c(23938),q=c(261),r=c(66758),s=c(77243),t=c(26713),u=c(37527),v=c(22820),w=c(88216),x=c(47929),y=c(79551),z=c(89125),A=c(86439),B=c(95547),C=c.n(B),D=c(61287),E=c(81494),F=c(70722),G=c(70753),H=c(43954),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:["builder",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,20142)),"/Users/matthew/Code/github/p11o/machine/docs/src/app/builder/page.tsx"]}]},{metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,70440))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,76537)),"/Users/matthew/Code/github/p11o/machine/docs/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,55091,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,70440))).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:"/builder/page",pathname:"/builder",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="/builder/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(33873).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}}},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11756:(a,b,c)=>{"use strict";c.d(b,{h:()=>e});var d=c(99829);let e=(0,d.createServerReference)("608a1eb44cf3bfbc19631e51c68c49e2a723fe80b6",d.callServer,void 0,d.findSourceMapURL,"saveFS")},16845:(a,b,c)=>{"use strict";c.d(b,{BuilderTabs:()=>v});var d=c(48249),e=c(67484),f=c(58165),g=c(11756),h=c(88960);function i({ursItems:a,riskItems:b,existingFSCount:c,stepsByType:i}){let m,n,o,[p,q]=(0,e.useState)("FS-"+String(c+1).padStart(3,"0")),[r,s]=(0,e.useState)(""),[t,u]=(0,e.useState)(""),[v,w]=(0,e.useState)([""]),[x,y]=(0,e.useState)([]),[z,A]=(0,e.useState)([]),[B,C]=(0,e.useState)([{name:"",steps:[{type:"given",text:""},{type:"when",text:""},{type:"then",text:""}]}]),[D,E]=(0,e.useState)({type:"idle"}),[F,G]=(0,e.useTransition)(),[H,I]=(0,e.useState)(null),J=(m=[...x.map(a=>`@${a}`),...z.map(a=>`@${a}`)].join(" "),n=v.filter(a=>a.trim()).map(a=>` - ${a}`).join("\n"),o=B.filter(a=>a.name.trim()).map(a=>{let b=a.steps.filter(a=>a.text.trim()).map(a=>` ${l(a.type)} ${a.text}`).join("\n");return` Scenario: ${a.name}
|
|
3
|
+
${b}`}).join("\n\n"),`${m}
|
|
4
|
+
Feature: ${p} ${r}
|
|
5
|
+
${t}
|
|
19
6
|
|
|
20
7
|
Requirements:
|
|
21
|
-
${
|
|
8
|
+
${n}
|
|
22
9
|
|
|
23
|
-
${
|
|
24
|
-
`),N=()=>`${m}-${r.toLowerCase().replace(/\s+/g,"-")}.requirement`;return(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"1.5rem"},children:[(0,d.jsxs)("div",{className:"card",style:{maxWidth:"none"},children:[(0,d.jsx)(p,{icon:"⚙️",title:"Functional Specification",subtitle:"Create a Gherkin-based feature file"}),(0,d.jsx)(o,{status:G}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"120px 1fr",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(n,{label:"FS ID",compact:!0,children:(0,d.jsx)("input",{type:"text",value:m,onChange:a=>q(a.target.value),onFocus:()=>L("fsId"),onBlur:()=>L(null),style:l("fsId",K)})}),(0,d.jsx)(n,{label:"Title",required:!0,compact:!0,children:(0,d.jsx)("input",{type:"text",value:r,onChange:a=>s(a.target.value),onFocus:()=>L("title"),onBlur:()=>L(null),placeholder:"e.g., User Login Authentication",style:l("title",K)})})]}),(0,d.jsx)(n,{label:"Description",hint:"Brief description of the feature",children:(0,d.jsx)("div",{contentEditable:!0,onInput:a=>x(a.currentTarget.textContent||""),onFocus:()=>L("description"),onBlur:()=>L(null),suppressContentEditableWarning:!0,style:{...l("description",K),minHeight:"80px",whiteSpace:"pre-wrap"},"data-placeholder":"The system shall..."})}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(n,{label:"Link URS",compact:!0,children:(0,d.jsx)(f,{options:a.map(a=>({value:a.id,label:`${a.id} - ${a.title}`})),selected:A,onChange:B,placeholder:"Search URS...",multi:!0})}),(0,d.jsx)(n,{label:"Link Risks",compact:!0,children:(0,d.jsx)(f,{options:b.map(a=>({value:a.id,label:`${a.id} - ${a.title}`})),selected:C,onChange:D,placeholder:"Search Risks...",multi:!0})})]}),(0,d.jsx)(n,{label:"Requirements",hint:"Functional requirements",action:{label:"+ Add",onClick:()=>z([...y,""])},children:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:y.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",alignItems:"center"},children:[(0,d.jsxs)("span",{style:{color:"var(--warning)",fontWeight:600,fontSize:"0.875rem",minWidth:"60px"},children:["FR-",m.split("-")[1],".",b+1]}),(0,d.jsx)("input",{type:"text",value:a,onChange:a=>{var c;let d;return c=a.target.value,void((d=[...y])[b]=c,z(d))},onFocus:()=>L(`req-${b}`),onBlur:()=>L(null),placeholder:"Requirement description",style:{...l(`req-${b}`,K),flex:1}}),y.length>1&&(0,d.jsx)(t,{onClick:()=>{y.length>1&&z(y.filter((a,c)=>c!==b))}})]},b))})}),(0,d.jsx)(n,{label:"Test Scenarios",hint:"Gherkin scenarios",action:{label:"+ Scenario",onClick:()=>{F([...E,{name:"",steps:[{type:"given",text:""},{type:"when",text:""},{type:"then",text:""}]}])}},children:E.map((a,b)=>(0,d.jsx)(u,{scenario:a,index:b,stepsByType:g,focusedField:K,setFocusedField:L,onNameChange:a=>{let c;(c=[...E])[b].name=a,F(c)},onStepChange:(a,c)=>{let d;(d=[...E])[b].steps[a].text=c,F(d)},onAddStep:a=>{let c;(c=[...E])[b].steps.push({type:a,text:""}),F(c)},onRemoveStep:a=>{let c;(c=[...E])[b].steps=c[b].steps.filter((b,c)=>c!==a),F(c)},onRemove:()=>{E.length>1&&F(E.filter((a,c)=>c!==b))},canRemove:E.length>1},b))})]}),(0,d.jsxs)("div",{className:"card",style:{maxWidth:"none"},children:[(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1.5rem",paddingBottom:"1rem",borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h2",{style:{margin:0,fontSize:"1.125rem",fontWeight:600},children:"\uD83D\uDCC4 Preview"}),(0,d.jsx)("p",{style:{margin:"0.25rem 0 0",color:"var(--text-secondary)",fontSize:"0.8125rem"},children:N()})]}),(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem"},children:[(0,d.jsx)("button",{onClick:()=>{let a=new Blob([M],{type:"text/plain"}),b=URL.createObjectURL(a),c=document.createElement("a");c.href=b,c.download=N(),c.click(),URL.revokeObjectURL(b)},style:{padding:"0.625rem 1rem",fontSize:"0.875rem",fontWeight:500,borderRadius:"8px",border:"1px solid var(--border)",background:"transparent",color:"var(--text-primary)",cursor:"pointer"},children:"⬇️ Download"}),(0,d.jsx)("button",{onClick:()=>{H({type:"idle"}),J(async()=>{let a=await h(N(),M);a.success?H({type:"success",message:`Saved as ${a.id}`}):H({type:"error",message:a.error})})},disabled:I||!r.trim(),style:{padding:"0.625rem 1.25rem",fontSize:"0.875rem",fontWeight:600,borderRadius:"8px",border:"none",cursor:I||!r.trim()?"not-allowed":"pointer",background:I||!r.trim()?"var(--bg-hover)":"linear-gradient(135deg, var(--gradient-start), var(--gradient-end))",color:I||!r.trim()?"var(--text-secondary)":"white",boxShadow:I||!r.trim()?"none":"0 4px 12px rgba(99, 102, 241, 0.25)"},children:I?"\uD83D\uDCBE Saving...":"\uD83D\uDCBE Save"})]})]}),(0,d.jsx)("pre",{style:{background:"var(--bg-secondary)",padding:"1.25rem",borderRadius:"10px",overflow:"auto",whiteSpace:"pre-wrap",fontFamily:"'JetBrains Mono', monospace",fontSize:"0.8125rem",lineHeight:1.7,maxHeight:"calc(100vh - 350px)",borderWidth:"1px",borderStyle:"solid",borderColor:"var(--border)"},children:M})]})]})}function t({onClick:a}){return(0,d.jsx)("button",{onClick:a,style:{padding:"0.5rem",background:"transparent",border:"1px solid var(--border)",borderRadius:"8px",color:"var(--text-secondary)",cursor:"pointer",transition:"all 0.2s",lineHeight:1},title:"Remove",children:"✕"})}function u({scenario:a,index:b,stepsByType:c,focusedField:e,setFocusedField:g,onNameChange:h,onStepChange:i,onAddStep:j,onRemoveStep:k,onRemove:m,canRemove:n}){return(0,d.jsxs)("div",{style:{marginBottom:"1rem",padding:"1.25rem",background:"var(--bg-secondary)",borderRadius:"10px",borderWidth:"1px",borderStyle:"solid",borderColor:"var(--border)"},children:[(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",marginBottom:"1rem",alignItems:"center"},children:[(0,d.jsxs)("span",{style:{color:"var(--accent)",fontWeight:600,fontSize:"0.875rem"},children:["Scenario ",b+1]}),(0,d.jsx)("input",{type:"text",value:a.name,onChange:a=>h(a.target.value),onFocus:()=>g(`scenario-${b}`),onBlur:()=>g(null),placeholder:"Scenario name (e.g., Successful login)",style:{...l(`scenario-${b}`,e),flex:1,fontWeight:500}}),n&&(0,d.jsx)(t,{onClick:m})]}),a.steps.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",marginBottom:"0.75rem",alignItems:"center"},children:[(0,d.jsx)("span",{style:{minWidth:"55px",fontSize:"0.75rem",fontWeight:600,color:{given:"#a78bfa",when:"#60a5fa",then:"#34d399",and:"#94a3b8",but:"#f472b6"}[a.type]||"var(--text-secondary)",textTransform:"capitalize"},children:a.type}),(0,d.jsx)(f,{options:c[a.type].map(a=>({value:a.replace(/^(Given|When|Then|And|But)\s+/,""),label:a})),selected:a.text?[a.text]:[],onChange:a=>i(b,a[0]||""),placeholder:`Select or type ${a.type} step...`,multi:!1,allowCustom:!1}),(0,d.jsx)(t,{onClick:()=>k(b)})]},b)),(0,d.jsx)("div",{style:{display:"flex",gap:"0.5rem",marginTop:"1rem"},children:["and","but"].map(a=>(0,d.jsxs)("button",{onClick:()=>j(a),style:{padding:"0.375rem 0.75rem",fontSize:"0.8125rem",fontWeight:500,background:"transparent",border:"1px solid var(--border)",borderRadius:"6px",color:"var(--text-secondary)",cursor:"pointer"},children:["+ ",v(a)]},a))})]})}function v(a){return a.charAt(0).toUpperCase()+a.slice(1)}({...i,resize:"vertical",minHeight:"120px",fontFamily:"inherit"});let w=(0,g.createServerReference)("40b1c73b0988800e3ec2a1eaad98d4e536e9e0b690",g.callServer,void 0,g.findSourceMapURL,"saveURS"),x={width:"100%",padding:"0.875rem 1rem",fontSize:"0.9375rem",lineHeight:"1.5",color:"var(--text-primary)",background:"var(--bg-secondary)",borderWidth:"1px",borderStyle:"solid",borderColor:"var(--border)",borderRadius:"10px",outline:"none",transition:"all 0.2s ease"},y={borderColor:"var(--accent)",boxShadow:"0 0 0 3px rgba(99, 102, 241, 0.15)"},z={...x,cursor:"pointer",appearance:"none",backgroundImage:"url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238888a0' d='M6 8L1 3h10z'/%3E%3C/svg%3E\")",backgroundRepeat:"no-repeat",backgroundPosition:"right 1rem center",paddingRight:"2.5rem"},A={...x,resize:"vertical",minHeight:"120px",fontFamily:"inherit"};function B({existingCount:a}){let[b,c]=(0,e.useState)(""),[f,g]=(0,e.useState)("draft"),[h,i]=(0,e.useState)("high"),[j,k]=(0,e.useState)(""),[l,m]=(0,e.useState)(""),[n,o]=(0,e.useState)(""),[p,q]=(0,e.useState)(""),[r,s]=(0,e.useState)([""]),[t,u]=(0,e.useState)(["GAMP 5"]),[v,B]=(0,e.useState)(null),[D,E]=(0,e.useState)({type:"idle"}),[F,G]=(0,e.useTransition)(),H=a=>({...x,...v===a?y:{}}),I=a=>({...z,...v===a?y:{}}),J=a=>({...A,...v===a?y:{}});return(0,d.jsxs)("div",{className:"card",style:{maxWidth:"900px"},children:[(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"2rem",paddingBottom:"1.5rem",borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h2",{style:{margin:0,fontSize:"1.25rem",fontWeight:600},children:"\uD83D\uDCCB New User Requirement"}),(0,d.jsx)("p",{style:{margin:"0.25rem 0 0",color:"var(--text-secondary)",fontSize:"0.875rem"},children:"Create a new URS document"})]}),(0,d.jsx)("button",{onClick:()=>{E({type:"idle"}),G(async()=>{let a=await w({title:b,status:f,priority:h,owner:j,category:l,business_need:n,intended_use:p,acceptance_criteria:r.filter(a=>a.trim()),regulatory_refs:t.filter(a=>a.trim())});a.success?(E({type:"success",message:`Created ${a.id}`}),c(""),o(""),q(""),s([""])):E({type:"error",message:a.error})})},disabled:F||!b.trim()||!j.trim(),style:{padding:"0.75rem 1.5rem",fontSize:"0.9375rem",fontWeight:600,borderRadius:"10px",border:"none",cursor:!F&&b.trim()&&j.trim()?"pointer":"not-allowed",background:!F&&b.trim()&&j.trim()?"linear-gradient(135deg, var(--gradient-start), var(--gradient-end))":"var(--bg-hover)",color:!F&&b.trim()&&j.trim()?"white":"var(--text-secondary)",transition:"all 0.2s ease",boxShadow:!F&&b.trim()&&j.trim()?"0 4px 12px rgba(99, 102, 241, 0.25)":"none"},children:F?"\uD83D\uDCBE Saving...":"\uD83D\uDCBE Save URS"})]}),"idle"!==D.type&&(0,d.jsxs)("div",{style:{marginBottom:"1.5rem",padding:"1rem 1.25rem",borderRadius:"10px",background:"success"===D.type?"rgba(16, 185, 129, 0.1)":"rgba(239, 68, 68, 0.1)",color:"success"===D.type?"var(--success)":"var(--error)",fontSize:"0.9375rem",display:"flex",alignItems:"center",gap:"0.5rem",border:`1px solid ${"success"===D.type?"rgba(16, 185, 129, 0.2)":"rgba(239, 68, 68, 0.2)"}`},children:["success"===D.type?"✅":"❌"," ",D.message]}),(0,d.jsx)(C,{label:"Title",required:!0,children:(0,d.jsx)("input",{type:"text",value:b,onChange:a=>c(a.target.value),onFocus:()=>B("title"),onBlur:()=>B(null),placeholder:"e.g., User Authentication Requirements",style:H("title")})}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(C,{label:"Status",compact:!0,children:(0,d.jsxs)("select",{value:f,onChange:a=>g(a.target.value),onFocus:()=>B("status"),onBlur:()=>B(null),style:I("status"),children:[(0,d.jsx)("option",{value:"draft",children:"\uD83D\uDCDD Draft"}),(0,d.jsx)("option",{value:"review",children:"\uD83D\uDC40 Review"}),(0,d.jsx)("option",{value:"approved",children:"✅ Approved"})]})}),(0,d.jsx)(C,{label:"Priority",compact:!0,children:(0,d.jsxs)("select",{value:h,onChange:a=>i(a.target.value),onFocus:()=>B("priority"),onBlur:()=>B(null),style:I("priority"),children:[(0,d.jsx)("option",{value:"critical",children:"\uD83D\uDD34 Critical"}),(0,d.jsx)("option",{value:"high",children:"\uD83D\uDFE0 High"}),(0,d.jsx)("option",{value:"medium",children:"\uD83D\uDFE1 Medium"}),(0,d.jsx)("option",{value:"low",children:"\uD83D\uDFE2 Low"})]})}),(0,d.jsx)(C,{label:"Category",compact:!0,children:(0,d.jsx)("input",{type:"text",value:l,onChange:a=>m(a.target.value),onFocus:()=>B("category"),onBlur:()=>B(null),placeholder:"e.g., Security",style:H("category")})}),(0,d.jsx)(C,{label:"Owner",required:!0,compact:!0,children:(0,d.jsx)("input",{type:"text",value:j,onChange:a=>k(a.target.value),onFocus:()=>B("owner"),onBlur:()=>B(null),placeholder:"e.g., Product Team",style:H("owner")})})]}),(0,d.jsx)(C,{label:"Business Need",hint:"Describe why this requirement exists",children:(0,d.jsx)("div",{contentEditable:!0,onInput:a=>o(a.currentTarget.textContent||""),onFocus:()=>B("businessNeed"),onBlur:()=>B(null),suppressContentEditableWarning:!0,style:{...J("businessNeed"),minHeight:"140px",whiteSpace:"pre-wrap"},"data-placeholder":"Describe the business problem this requirement addresses..."})}),(0,d.jsx)(C,{label:"Intended Use",hint:"Describe how this will be used",children:(0,d.jsx)("div",{contentEditable:!0,onInput:a=>q(a.currentTarget.textContent||""),onFocus:()=>B("intendedUse"),onBlur:()=>B(null),suppressContentEditableWarning:!0,style:{...J("intendedUse"),minHeight:"100px",whiteSpace:"pre-wrap"},"data-placeholder":"Describe the intended usage patterns and user workflows..."})}),(0,d.jsx)(C,{label:"Acceptance Criteria",hint:"Define measurable conditions for success",action:{label:"+ Add Criterion",onClick:()=>s([...r,""])},children:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:r.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",alignItems:"center"},children:[(0,d.jsxs)("span",{style:{color:"var(--accent)",fontWeight:600,fontSize:"0.875rem",minWidth:"24px"},children:[b+1,"."]}),(0,d.jsx)("input",{type:"text",value:a,onChange:a=>{var c;let d;return c=a.target.value,void((d=[...r])[b]=c,s(d))},onFocus:()=>B(`criterion-${b}`),onBlur:()=>B(null),placeholder:`Criterion ${b+1}: e.g., System shall respond within 2 seconds`,style:{...H(`criterion-${b}`),flex:1}}),r.length>1&&(0,d.jsx)("button",{onClick:()=>{r.length>1&&s(r.filter((a,c)=>c!==b))},style:{padding:"0.5rem",background:"transparent",border:"1px solid var(--border)",borderRadius:"8px",color:"var(--text-secondary)",cursor:"pointer",transition:"all 0.2s"},title:"Remove criterion",children:"✕"})]},b))})})]})}function C({label:a,children:b,required:c,compact:e,hint:f,action:g}){return(0,d.jsxs)("div",{style:{marginBottom:e?"0":"1.5rem"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"0.5rem"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem"},children:[(0,d.jsx)("label",{style:{fontWeight:500,fontSize:"0.875rem",color:"var(--text-primary)"},children:a}),c&&(0,d.jsx)("span",{style:{color:"var(--accent)",fontSize:"0.75rem"},children:"Required"}),f&&(0,d.jsxs)("span",{style:{color:"var(--text-secondary)",fontSize:"0.8125rem",fontWeight:400},children:["— ",f]})]}),g&&(0,d.jsx)("button",{onClick:g.onClick,style:{padding:"0.375rem 0.75rem",fontSize:"0.8125rem",fontWeight:500,background:"transparent",border:"1px solid var(--accent)",borderRadius:"6px",color:"var(--accent)",cursor:"pointer",transition:"all 0.2s"},children:g.label})]}),b]})}let D=(0,g.createServerReference)("40df584c8132966889e22d4dda60782c0c28c0272b",g.callServer,void 0,g.findSourceMapURL,"saveRisk");function E({fsItems:a,existingCount:b}){let[c,g]=(0,e.useState)(""),[h,i]=(0,e.useState)("draft"),[j,k]=(0,e.useState)(""),[p,s]=(0,e.useState)(4),[t,u]=(0,e.useState)("medium"),[v,w]=(0,e.useState)("medium"),[x,y]=(0,e.useState)("medium"),[z,A]=(0,e.useState)("acceptable"),[B,C]=(0,e.useState)([]),[E,F]=(0,e.useState)([{id:"R-001.1",description:"",impact:"medium",probability:"medium"}]),[G,H]=(0,e.useState)([{risk_id:"R-001.1",control:"",test:""}]),[I,J]=(0,e.useState)(null),[K,L]=(0,e.useState)({type:"idle"}),[M,N]=(0,e.useTransition)(),O=(a,b,c)=>{let d=[...E];d[a]={...d[a],[b]:c},F(d)},P=(a,b,c)=>{let d=[...G];d[a]={...d[a],[b]:c},H(d)};return(0,d.jsxs)("div",{className:"card",style:{maxWidth:"900px"},children:[(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",marginBottom:"2rem",paddingBottom:"1.5rem",borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h2",{style:{margin:0,fontSize:"1.25rem",fontWeight:600},children:"⚠️ Risk Assessment"}),(0,d.jsx)("p",{style:{margin:"0.25rem 0 0",color:"var(--text-secondary)",fontSize:"0.875rem"},children:"Create a new risk assessment document"})]}),(0,d.jsx)(q,{onClick:()=>{L({type:"idle"}),N(async()=>{let a=await D({title:c,status:h,category:j,gamp_category:p,fs_ids:B,impact:t,probability:v,risk_level:x,risks:E.filter(a=>a.description.trim()).map(a=>({id:a.id,description:a.description,impact:a.impact,probability:a.probability})),mitigations:G.filter(a=>a.control.trim()).map(a=>({risk_id:a.risk_id,control:a.control,test:a.test})),residual_risk:z});a.success?(L({type:"success",message:`Created ${a.id}`}),g(""),k(""),F([{id:"R-001.1",description:"",impact:"medium",probability:"medium"}]),H([{risk_id:"R-001.1",control:"",test:""}])):L({type:"error",message:a.error})})},disabled:M||!c.trim()||0===B.length,isPending:M,label:"Save Risk"})]}),(0,d.jsx)(o,{status:K}),(0,d.jsx)(n,{label:"Title",required:!0,children:(0,d.jsx)("input",{type:"text",value:c,onChange:a=>g(a.target.value),onFocus:()=>J("title"),onBlur:()=>J(null),placeholder:"e.g., Authentication Security Risk",style:l("title",I)})}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(n,{label:"Category",compact:!0,children:(0,d.jsx)("input",{type:"text",value:j,onChange:a=>k(a.target.value),onFocus:()=>J("category"),onBlur:()=>J(null),placeholder:"e.g., Security, Data Integrity",style:l("category",I)})}),(0,d.jsx)(n,{label:"Link FS",required:!0,compact:!0,children:(0,d.jsx)(f,{options:a.map(a=>({value:a.id,label:`${a.id} - ${a.title}`})),selected:B,onChange:C,placeholder:"Search FS...",multi:!0})})]}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(n,{label:"Impact",compact:!0,children:(0,d.jsxs)("select",{value:t,onChange:a=>u(a.target.value),onFocus:()=>J("impact"),onBlur:()=>J(null),style:m("impact",I),children:[(0,d.jsx)("option",{value:"low",children:"\uD83D\uDFE2 Low"}),(0,d.jsx)("option",{value:"medium",children:"\uD83D\uDFE1 Medium"}),(0,d.jsx)("option",{value:"high",children:"\uD83D\uDFE0 High"}),(0,d.jsx)("option",{value:"critical",children:"\uD83D\uDD34 Critical"})]})}),(0,d.jsx)(n,{label:"Probability",compact:!0,children:(0,d.jsxs)("select",{value:v,onChange:a=>w(a.target.value),onFocus:()=>J("probability"),onBlur:()=>J(null),style:m("probability",I),children:[(0,d.jsx)("option",{value:"low",children:"\uD83D\uDFE2 Low"}),(0,d.jsx)("option",{value:"medium",children:"\uD83D\uDFE1 Medium"}),(0,d.jsx)("option",{value:"high",children:"\uD83D\uDD34 High"})]})}),(0,d.jsx)(n,{label:"Risk Level",compact:!0,children:(0,d.jsxs)("select",{value:x,onChange:a=>y(a.target.value),onFocus:()=>J("riskLevel"),onBlur:()=>J(null),style:m("riskLevel",I),children:[(0,d.jsx)("option",{value:"low",children:"\uD83D\uDFE2 Low"}),(0,d.jsx)("option",{value:"medium",children:"\uD83D\uDFE1 Medium"}),(0,d.jsx)("option",{value:"high",children:"\uD83D\uDFE0 High"}),(0,d.jsx)("option",{value:"critical",children:"\uD83D\uDD34 Critical"})]})}),(0,d.jsx)(n,{label:"Residual Risk",compact:!0,children:(0,d.jsxs)("select",{value:z,onChange:a=>A(a.target.value),onFocus:()=>J("residualRisk"),onBlur:()=>J(null),style:m("residualRisk",I),children:[(0,d.jsx)("option",{value:"acceptable",children:"✅ Acceptable"}),(0,d.jsx)("option",{value:"unacceptable",children:"❌ Unacceptable"}),(0,d.jsx)("option",{value:"pending",children:"⏳ Pending"})]})})]}),(0,d.jsx)(n,{label:"Identified Risks",hint:"List specific risks",action:{label:"+ Add Risk",onClick:()=>F([...E,{id:`R-001.${E.length+1}`,description:"",impact:"medium",probability:"medium"}])},children:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:E.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",alignItems:"center"},children:[(0,d.jsx)("input",{type:"text",value:a.id,onChange:a=>O(b,"id",a.target.value),onFocus:()=>J(`risk-id-${b}`),onBlur:()=>J(null),placeholder:"R-001.1",style:{...l(`risk-id-${b}`,I),width:"100px",flexShrink:0}}),(0,d.jsx)("input",{type:"text",value:a.description,onChange:a=>O(b,"description",a.target.value),onFocus:()=>J(`risk-desc-${b}`),onBlur:()=>J(null),placeholder:"Risk description",style:{...l(`risk-desc-${b}`,I),flex:1}}),E.length>1&&(0,d.jsx)(r,{onClick:()=>{E.length>1&&F(E.filter((a,c)=>c!==b))}})]},b))})}),(0,d.jsx)(n,{label:"Mitigations",hint:"Control measures and testing",action:{label:"+ Add Mitigation",onClick:()=>H([...G,{risk_id:"",control:"",test:""}])},children:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:G.map((a,b)=>(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"100px 1fr 1fr auto",gap:"0.75rem",alignItems:"center",padding:"1rem",background:"var(--bg-secondary)",borderRadius:"10px",borderWidth:"1px",borderStyle:"solid",borderColor:"var(--border)"},children:[(0,d.jsx)("input",{type:"text",value:a.risk_id,onChange:a=>P(b,"risk_id",a.target.value),onFocus:()=>J(`mit-id-${b}`),onBlur:()=>J(null),placeholder:"R-ID",style:l(`mit-id-${b}`,I)}),(0,d.jsx)("input",{type:"text",value:a.control,onChange:a=>P(b,"control",a.target.value),onFocus:()=>J(`mit-control-${b}`),onBlur:()=>J(null),placeholder:"Control measure",style:l(`mit-control-${b}`,I)}),(0,d.jsx)("input",{type:"text",value:a.test,onChange:a=>P(b,"test",a.target.value),onFocus:()=>J(`mit-test-${b}`),onBlur:()=>J(null),placeholder:"How to test",style:l(`mit-test-${b}`,I)}),G.length>1&&(0,d.jsx)(r,{onClick:()=>{G.length>1&&H(G.filter((a,c)=>c!==b))}})]},b))})})]})}function F({ursItems:a,riskItems:b,fsItems:c,counts:f,stepsByType:g}){let[h,i]=(0,e.useState)("fs");return(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{style:{display:"flex",gap:"0.5rem",marginBottom:"1.5rem"},children:[{id:"urs",label:"URS",icon:"\uD83D\uDCCB",color:"var(--success)"},{id:"fs",label:"FS",icon:"⚙️",color:"var(--warning)"},{id:"risk",label:"Risk",icon:"⚠️",color:"#f97316"}].map(a=>(0,d.jsxs)("button",{onClick:()=>i(a.id),className:`btn ${h===a.id?"btn-primary":""}`,style:h!==a.id?{background:"var(--bg-hover)"}:{},children:[a.icon," New ",a.label]},a.id))}),"urs"===h&&(0,d.jsx)(B,{existingCount:f.urs}),"fs"===h&&(0,d.jsx)(s,{ursItems:a,riskItems:b,existingFSCount:f.fs,stepsByType:g}),"risk"===h&&(0,d.jsx)(E,{fsItems:c,existingCount:f.risk})]})}},3873:a=>{"use strict";a.exports=require("path")},3954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},6126:(a,b,c)=>{Promise.resolve().then(c.bind(c,1805))},6193:a=>{"use strict";a.exports=require("node:string_decoder")},6294:(a,b,c)=>{Promise.resolve().then(c.bind(c,3411))},6439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},6713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},6760:a=>{"use strict";a.exports=require("node:path")},7075:a=>{"use strict";a.exports=require("node:stream")},8354:a=>{"use strict";a.exports=require("util")},8474:a=>{"use strict";a.exports=require("node:events")},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")}};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=1524));module.exports=c})();
|
|
10
|
+
${o}
|
|
11
|
+
`),K=()=>`${p}-${r.toLowerCase().replace(/\s+/g,"-")}.requirement`;return(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"1.5rem"},children:[(0,d.jsxs)("div",{className:"card",style:{maxWidth:"none"},children:[(0,d.jsx)(h.Mo,{icon:"⚙️",title:"Functional Specification",subtitle:"Create a Gherkin-based feature file"}),(0,d.jsx)(h.t3,{status:D}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"120px 1fr",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(h.zB,{label:"FS ID",compact:!0,children:(0,d.jsx)("input",{type:"text",value:p,onChange:a=>q(a.target.value),onFocus:()=>I("fsId"),onBlur:()=>I(null),style:(0,h.wI)("fsId",H)})}),(0,d.jsx)(h.zB,{label:"Title",required:!0,compact:!0,children:(0,d.jsx)("input",{type:"text",value:r,onChange:a=>s(a.target.value),onFocus:()=>I("title"),onBlur:()=>I(null),placeholder:"e.g., User Login Authentication",style:(0,h.wI)("title",H)})})]}),(0,d.jsx)(h.zB,{label:"Description",hint:"Brief description of the feature",children:(0,d.jsx)("div",{contentEditable:!0,onInput:a=>u(a.currentTarget.textContent||""),onFocus:()=>I("description"),onBlur:()=>I(null),suppressContentEditableWarning:!0,style:{...(0,h.wI)("description",H),minHeight:"80px",whiteSpace:"pre-wrap"},"data-placeholder":"The system shall..."})}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(h.zB,{label:"Link URS",compact:!0,children:(0,d.jsx)(f.j,{options:a.map(a=>({value:a.id,label:`${a.id} - ${a.title}`})),selected:x,onChange:y,placeholder:"Search URS...",multi:!0})}),(0,d.jsx)(h.zB,{label:"Link Risks",compact:!0,children:(0,d.jsx)(f.j,{options:b.map(a=>({value:a.id,label:`${a.id} - ${a.title}`})),selected:z,onChange:A,placeholder:"Search Risks...",multi:!0})})]}),(0,d.jsx)(h.zB,{label:"Requirements",hint:"Functional requirements",action:{label:"+ Add",onClick:()=>w([...v,""])},children:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:v.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",alignItems:"center"},children:[(0,d.jsxs)("span",{style:{color:"var(--warning)",fontWeight:600,fontSize:"0.875rem",minWidth:"60px"},children:["FR-",p.split("-")[1],".",b+1]}),(0,d.jsx)("input",{type:"text",value:a,onChange:a=>{var c;let d;return c=a.target.value,void((d=[...v])[b]=c,w(d))},onFocus:()=>I(`req-${b}`),onBlur:()=>I(null),placeholder:"Requirement description",style:{...(0,h.wI)(`req-${b}`,H),flex:1}}),v.length>1&&(0,d.jsx)(j,{onClick:()=>{v.length>1&&w(v.filter((a,c)=>c!==b))}})]},b))})}),(0,d.jsx)(h.zB,{label:"Test Scenarios",hint:"Gherkin scenarios",action:{label:"+ Scenario",onClick:()=>{C([...B,{name:"",steps:[{type:"given",text:""},{type:"when",text:""},{type:"then",text:""}]}])}},children:B.map((a,b)=>(0,d.jsx)(k,{scenario:a,index:b,stepsByType:i,focusedField:H,setFocusedField:I,onNameChange:a=>{let c;(c=[...B])[b].name=a,C(c)},onStepChange:(a,c)=>{let d;(d=[...B])[b].steps[a].text=c,C(d)},onAddStep:a=>{let c;(c=[...B])[b].steps.push({type:a,text:""}),C(c)},onRemoveStep:a=>{let c;(c=[...B])[b].steps=c[b].steps.filter((b,c)=>c!==a),C(c)},onRemove:()=>{B.length>1&&C(B.filter((a,c)=>c!==b))},canRemove:B.length>1},b))})]}),(0,d.jsxs)("div",{className:"card",style:{maxWidth:"none"},children:[(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1.5rem",paddingBottom:"1rem",borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h2",{style:{margin:0,fontSize:"1.125rem",fontWeight:600},children:"\uD83D\uDCC4 Preview"}),(0,d.jsx)("p",{style:{margin:"0.25rem 0 0",color:"var(--text-secondary)",fontSize:"0.8125rem"},children:K()})]}),(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem"},children:[(0,d.jsx)("button",{onClick:()=>{let a=new Blob([J],{type:"text/plain"}),b=URL.createObjectURL(a),c=document.createElement("a");c.href=b,c.download=K(),c.click(),URL.revokeObjectURL(b)},style:{padding:"0.625rem 1rem",fontSize:"0.875rem",fontWeight:500,borderRadius:"8px",border:"1px solid var(--border)",background:"transparent",color:"var(--text-primary)",cursor:"pointer"},children:"⬇️ Download"}),(0,d.jsx)("button",{onClick:()=>{E({type:"idle"}),G(async()=>{let a=await (0,g.h)(K(),J);a.success?E({type:"success",message:`Saved as ${a.id}`}):E({type:"error",message:a.error})})},disabled:F||!r.trim(),style:{padding:"0.625rem 1.25rem",fontSize:"0.875rem",fontWeight:600,borderRadius:"8px",border:"none",cursor:F||!r.trim()?"not-allowed":"pointer",background:F||!r.trim()?"var(--bg-hover)":"linear-gradient(135deg, var(--gradient-start), var(--gradient-end))",color:F||!r.trim()?"var(--text-secondary)":"white",boxShadow:F||!r.trim()?"none":"0 4px 12px rgba(99, 102, 241, 0.25)"},children:F?"\uD83D\uDCBE Saving...":"\uD83D\uDCBE Save"})]})]}),(0,d.jsx)("pre",{style:{background:"var(--bg-secondary)",padding:"1.25rem",borderRadius:"10px",overflow:"auto",whiteSpace:"pre-wrap",fontFamily:"'JetBrains Mono', monospace",fontSize:"0.8125rem",lineHeight:1.7,maxHeight:"calc(100vh - 350px)",borderWidth:"1px",borderStyle:"solid",borderColor:"var(--border)"},children:J})]})]})}function j({onClick:a}){return(0,d.jsx)("button",{onClick:a,style:{padding:"0.5rem",background:"transparent",border:"1px solid var(--border)",borderRadius:"8px",color:"var(--text-secondary)",cursor:"pointer",transition:"all 0.2s",lineHeight:1},title:"Remove",children:"✕"})}function k({scenario:a,index:b,stepsByType:c,focusedField:e,setFocusedField:g,onNameChange:i,onStepChange:k,onAddStep:m,onRemoveStep:n,onRemove:o,canRemove:p}){return(0,d.jsxs)("div",{style:{marginBottom:"1rem",padding:"1.25rem",background:"var(--bg-secondary)",borderRadius:"10px",borderWidth:"1px",borderStyle:"solid",borderColor:"var(--border)"},children:[(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",marginBottom:"1rem",alignItems:"center"},children:[(0,d.jsxs)("span",{style:{color:"var(--accent)",fontWeight:600,fontSize:"0.875rem"},children:["Scenario ",b+1]}),(0,d.jsx)("input",{type:"text",value:a.name,onChange:a=>i(a.target.value),onFocus:()=>g(`scenario-${b}`),onBlur:()=>g(null),placeholder:"Scenario name (e.g., Successful login)",style:{...(0,h.wI)(`scenario-${b}`,e),flex:1,fontWeight:500}}),p&&(0,d.jsx)(j,{onClick:o})]}),a.steps.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",marginBottom:"0.75rem",alignItems:"center"},children:[(0,d.jsx)("span",{style:{minWidth:"55px",fontSize:"0.75rem",fontWeight:600,color:{given:"#a78bfa",when:"#60a5fa",then:"#34d399",and:"#94a3b8",but:"#f472b6"}[a.type]||"var(--text-secondary)",textTransform:"capitalize"},children:a.type}),(0,d.jsx)(f.j,{options:c[a.type].map(a=>({value:a.replace(/^(Given|When|Then|And|But)\s+/,""),label:a})),selected:a.text?[a.text]:[],onChange:a=>k(b,a[0]||""),placeholder:`Select or type ${a.type} step...`,multi:!1,allowCustom:!1}),(0,d.jsx)(j,{onClick:()=>n(b)})]},b)),(0,d.jsx)("div",{style:{display:"flex",gap:"0.5rem",marginTop:"1rem"},children:["and","but"].map(a=>(0,d.jsxs)("button",{onClick:()=>m(a),style:{padding:"0.375rem 0.75rem",fontSize:"0.8125rem",fontWeight:500,background:"transparent",border:"1px solid var(--border)",borderRadius:"6px",color:"var(--text-secondary)",cursor:"pointer"},children:["+ ",l(a)]},a))})]})}function l(a){return a.charAt(0).toUpperCase()+a.slice(1)}var m=c(92683);let n={width:"100%",padding:"0.875rem 1rem",fontSize:"0.9375rem",lineHeight:"1.5",color:"var(--text-primary)",background:"var(--bg-secondary)",borderWidth:"1px",borderStyle:"solid",borderColor:"var(--border)",borderRadius:"10px",outline:"none",transition:"all 0.2s ease"},o={borderColor:"var(--accent)",boxShadow:"0 0 0 3px rgba(99, 102, 241, 0.15)"},p={...n,cursor:"pointer",appearance:"none",backgroundImage:"url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238888a0' d='M6 8L1 3h10z'/%3E%3C/svg%3E\")",backgroundRepeat:"no-repeat",backgroundPosition:"right 1rem center",paddingRight:"2.5rem"},q={...n,resize:"vertical",minHeight:"120px",fontFamily:"inherit"};function r({existingCount:a}){let[b,c]=(0,e.useState)(""),[f,g]=(0,e.useState)("draft"),[h,i]=(0,e.useState)("high"),[j,k]=(0,e.useState)(""),[l,r]=(0,e.useState)(""),[t,u]=(0,e.useState)(""),[v,w]=(0,e.useState)(""),[x,y]=(0,e.useState)([""]),[z,A]=(0,e.useState)(["GAMP 5"]),[B,C]=(0,e.useState)(null),[D,E]=(0,e.useState)({type:"idle"}),[F,G]=(0,e.useTransition)(),H=a=>({...n,...B===a?o:{}}),I=a=>({...p,...B===a?o:{}}),J=a=>({...q,...B===a?o:{}});return(0,d.jsxs)("div",{className:"card",style:{maxWidth:"900px"},children:[(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"2rem",paddingBottom:"1.5rem",borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h2",{style:{margin:0,fontSize:"1.25rem",fontWeight:600},children:"\uD83D\uDCCB New User Requirement"}),(0,d.jsx)("p",{style:{margin:"0.25rem 0 0",color:"var(--text-secondary)",fontSize:"0.875rem"},children:"Create a new URS document"})]}),(0,d.jsx)("button",{onClick:()=>{E({type:"idle"}),G(async()=>{let a=await (0,m.G)({title:b,status:f,priority:h,owner:j,category:l,business_need:t,intended_use:v,acceptance_criteria:x.filter(a=>a.trim()),regulatory_refs:z.filter(a=>a.trim())});a.success?(E({type:"success",message:`Created ${a.id}`}),c(""),u(""),w(""),y([""])):E({type:"error",message:a.error})})},disabled:F||!b.trim()||!j.trim(),style:{padding:"0.75rem 1.5rem",fontSize:"0.9375rem",fontWeight:600,borderRadius:"10px",border:"none",cursor:!F&&b.trim()&&j.trim()?"pointer":"not-allowed",background:!F&&b.trim()&&j.trim()?"linear-gradient(135deg, var(--gradient-start), var(--gradient-end))":"var(--bg-hover)",color:!F&&b.trim()&&j.trim()?"white":"var(--text-secondary)",transition:"all 0.2s ease",boxShadow:!F&&b.trim()&&j.trim()?"0 4px 12px rgba(99, 102, 241, 0.25)":"none"},children:F?"\uD83D\uDCBE Saving...":"\uD83D\uDCBE Save URS"})]}),"idle"!==D.type&&(0,d.jsxs)("div",{style:{marginBottom:"1.5rem",padding:"1rem 1.25rem",borderRadius:"10px",background:"success"===D.type?"rgba(16, 185, 129, 0.1)":"rgba(239, 68, 68, 0.1)",color:"success"===D.type?"var(--success)":"var(--error)",fontSize:"0.9375rem",display:"flex",alignItems:"center",gap:"0.5rem",border:`1px solid ${"success"===D.type?"rgba(16, 185, 129, 0.2)":"rgba(239, 68, 68, 0.2)"}`},children:["success"===D.type?"✅":"❌"," ",D.message]}),(0,d.jsx)(s,{label:"Title",required:!0,children:(0,d.jsx)("input",{type:"text",value:b,onChange:a=>c(a.target.value),onFocus:()=>C("title"),onBlur:()=>C(null),placeholder:"e.g., User Authentication Requirements",style:H("title")})}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(s,{label:"Status",compact:!0,children:(0,d.jsxs)("select",{value:f,onChange:a=>g(a.target.value),onFocus:()=>C("status"),onBlur:()=>C(null),style:I("status"),children:[(0,d.jsx)("option",{value:"draft",children:"\uD83D\uDCDD Draft"}),(0,d.jsx)("option",{value:"review",children:"\uD83D\uDC40 Review"}),(0,d.jsx)("option",{value:"approved",children:"✅ Approved"})]})}),(0,d.jsx)(s,{label:"Priority",compact:!0,children:(0,d.jsxs)("select",{value:h,onChange:a=>i(a.target.value),onFocus:()=>C("priority"),onBlur:()=>C(null),style:I("priority"),children:[(0,d.jsx)("option",{value:"critical",children:"\uD83D\uDD34 Critical"}),(0,d.jsx)("option",{value:"high",children:"\uD83D\uDFE0 High"}),(0,d.jsx)("option",{value:"medium",children:"\uD83D\uDFE1 Medium"}),(0,d.jsx)("option",{value:"low",children:"\uD83D\uDFE2 Low"})]})}),(0,d.jsx)(s,{label:"Category",compact:!0,children:(0,d.jsx)("input",{type:"text",value:l,onChange:a=>r(a.target.value),onFocus:()=>C("category"),onBlur:()=>C(null),placeholder:"e.g., Security",style:H("category")})}),(0,d.jsx)(s,{label:"Owner",required:!0,compact:!0,children:(0,d.jsx)("input",{type:"text",value:j,onChange:a=>k(a.target.value),onFocus:()=>C("owner"),onBlur:()=>C(null),placeholder:"e.g., Product Team",style:H("owner")})})]}),(0,d.jsx)(s,{label:"Business Need",hint:"Describe why this requirement exists",children:(0,d.jsx)("div",{contentEditable:!0,onInput:a=>u(a.currentTarget.textContent||""),onFocus:()=>C("businessNeed"),onBlur:()=>C(null),suppressContentEditableWarning:!0,style:{...J("businessNeed"),minHeight:"140px",whiteSpace:"pre-wrap"},"data-placeholder":"Describe the business problem this requirement addresses..."})}),(0,d.jsx)(s,{label:"Intended Use",hint:"Describe how this will be used",children:(0,d.jsx)("div",{contentEditable:!0,onInput:a=>w(a.currentTarget.textContent||""),onFocus:()=>C("intendedUse"),onBlur:()=>C(null),suppressContentEditableWarning:!0,style:{...J("intendedUse"),minHeight:"100px",whiteSpace:"pre-wrap"},"data-placeholder":"Describe the intended usage patterns and user workflows..."})}),(0,d.jsx)(s,{label:"Acceptance Criteria",hint:"Define measurable conditions for success",action:{label:"+ Add Criterion",onClick:()=>y([...x,""])},children:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:x.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",alignItems:"center"},children:[(0,d.jsxs)("span",{style:{color:"var(--accent)",fontWeight:600,fontSize:"0.875rem",minWidth:"24px"},children:[b+1,"."]}),(0,d.jsx)("input",{type:"text",value:a,onChange:a=>{var c;let d;return c=a.target.value,void((d=[...x])[b]=c,y(d))},onFocus:()=>C(`criterion-${b}`),onBlur:()=>C(null),placeholder:`Criterion ${b+1}: e.g., System shall respond within 2 seconds`,style:{...H(`criterion-${b}`),flex:1}}),x.length>1&&(0,d.jsx)("button",{onClick:()=>{x.length>1&&y(x.filter((a,c)=>c!==b))},style:{padding:"0.5rem",background:"transparent",border:"1px solid var(--border)",borderRadius:"8px",color:"var(--text-secondary)",cursor:"pointer",transition:"all 0.2s"},title:"Remove criterion",children:"✕"})]},b))})})]})}function s({label:a,children:b,required:c,compact:e,hint:f,action:g}){return(0,d.jsxs)("div",{style:{marginBottom:e?"0":"1.5rem"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"0.5rem"},children:[(0,d.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem"},children:[(0,d.jsx)("label",{style:{fontWeight:500,fontSize:"0.875rem",color:"var(--text-primary)"},children:a}),c&&(0,d.jsx)("span",{style:{color:"var(--accent)",fontSize:"0.75rem"},children:"Required"}),f&&(0,d.jsxs)("span",{style:{color:"var(--text-secondary)",fontSize:"0.8125rem",fontWeight:400},children:["— ",f]})]}),g&&(0,d.jsx)("button",{onClick:g.onClick,style:{padding:"0.375rem 0.75rem",fontSize:"0.8125rem",fontWeight:500,background:"transparent",border:"1px solid var(--accent)",borderRadius:"6px",color:"var(--accent)",cursor:"pointer",transition:"all 0.2s"},children:g.label})]}),b]})}var t=c(80637);function u({fsItems:a,existingCount:b}){let[c,g]=(0,e.useState)(""),[i,j]=(0,e.useState)("draft"),[k,l]=(0,e.useState)(""),[m,n]=(0,e.useState)(4),[o,p]=(0,e.useState)("medium"),[q,r]=(0,e.useState)("medium"),[s,u]=(0,e.useState)("medium"),[v,w]=(0,e.useState)("acceptable"),[x,y]=(0,e.useState)([]),[z,A]=(0,e.useState)([{id:"R-001.1",description:"",impact:"medium",probability:"medium"}]),[B,C]=(0,e.useState)([{risk_id:"R-001.1",control:"",test:""}]),[D,E]=(0,e.useState)(null),[F,G]=(0,e.useState)({type:"idle"}),[H,I]=(0,e.useTransition)(),J=(a,b,c)=>{let d=[...z];d[a]={...d[a],[b]:c},A(d)},K=(a,b,c)=>{let d=[...B];d[a]={...d[a],[b]:c},C(d)};return(0,d.jsxs)("div",{className:"card",style:{maxWidth:"900px"},children:[(0,d.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",marginBottom:"2rem",paddingBottom:"1.5rem",borderBottom:"1px solid var(--border)"},children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h2",{style:{margin:0,fontSize:"1.25rem",fontWeight:600},children:"⚠️ Risk Assessment"}),(0,d.jsx)("p",{style:{margin:"0.25rem 0 0",color:"var(--text-secondary)",fontSize:"0.875rem"},children:"Create a new risk assessment document"})]}),(0,d.jsx)(h.yY,{onClick:()=>{G({type:"idle"}),I(async()=>{let a=await (0,t.D)({title:c,status:i,category:k,gamp_category:m,fs_ids:x,impact:o,probability:q,risk_level:s,risks:z.filter(a=>a.description.trim()).map(a=>({id:a.id,description:a.description,impact:a.impact,probability:a.probability})),mitigations:B.filter(a=>a.control.trim()).map(a=>({risk_id:a.risk_id,control:a.control,test:a.test})),residual_risk:v});a.success?(G({type:"success",message:`Created ${a.id}`}),g(""),l(""),A([{id:"R-001.1",description:"",impact:"medium",probability:"medium"}]),C([{risk_id:"R-001.1",control:"",test:""}])):G({type:"error",message:a.error})})},disabled:H||!c.trim()||0===x.length,isPending:H,label:"Save Risk"})]}),(0,d.jsx)(h.t3,{status:F}),(0,d.jsx)(h.zB,{label:"Title",required:!0,children:(0,d.jsx)("input",{type:"text",value:c,onChange:a=>g(a.target.value),onFocus:()=>E("title"),onBlur:()=>E(null),placeholder:"e.g., Authentication Security Risk",style:(0,h.wI)("title",D)})}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(h.zB,{label:"Category",compact:!0,children:(0,d.jsx)("input",{type:"text",value:k,onChange:a=>l(a.target.value),onFocus:()=>E("category"),onBlur:()=>E(null),placeholder:"e.g., Security, Data Integrity",style:(0,h.wI)("category",D)})}),(0,d.jsx)(h.zB,{label:"Link FS",required:!0,compact:!0,children:(0,d.jsx)(f.j,{options:a.map(a=>({value:a.id,label:`${a.id} - ${a.title}`})),selected:x,onChange:y,placeholder:"Search FS...",multi:!0})})]}),(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)",gap:"1rem",marginBottom:"1.5rem"},children:[(0,d.jsx)(h.zB,{label:"Impact",compact:!0,children:(0,d.jsxs)("select",{value:o,onChange:a=>p(a.target.value),onFocus:()=>E("impact"),onBlur:()=>E(null),style:(0,h.mQ)("impact",D),children:[(0,d.jsx)("option",{value:"low",children:"\uD83D\uDFE2 Low"}),(0,d.jsx)("option",{value:"medium",children:"\uD83D\uDFE1 Medium"}),(0,d.jsx)("option",{value:"high",children:"\uD83D\uDFE0 High"}),(0,d.jsx)("option",{value:"critical",children:"\uD83D\uDD34 Critical"})]})}),(0,d.jsx)(h.zB,{label:"Probability",compact:!0,children:(0,d.jsxs)("select",{value:q,onChange:a=>r(a.target.value),onFocus:()=>E("probability"),onBlur:()=>E(null),style:(0,h.mQ)("probability",D),children:[(0,d.jsx)("option",{value:"low",children:"\uD83D\uDFE2 Low"}),(0,d.jsx)("option",{value:"medium",children:"\uD83D\uDFE1 Medium"}),(0,d.jsx)("option",{value:"high",children:"\uD83D\uDD34 High"})]})}),(0,d.jsx)(h.zB,{label:"Risk Level",compact:!0,children:(0,d.jsxs)("select",{value:s,onChange:a=>u(a.target.value),onFocus:()=>E("riskLevel"),onBlur:()=>E(null),style:(0,h.mQ)("riskLevel",D),children:[(0,d.jsx)("option",{value:"low",children:"\uD83D\uDFE2 Low"}),(0,d.jsx)("option",{value:"medium",children:"\uD83D\uDFE1 Medium"}),(0,d.jsx)("option",{value:"high",children:"\uD83D\uDFE0 High"}),(0,d.jsx)("option",{value:"critical",children:"\uD83D\uDD34 Critical"})]})}),(0,d.jsx)(h.zB,{label:"Residual Risk",compact:!0,children:(0,d.jsxs)("select",{value:v,onChange:a=>w(a.target.value),onFocus:()=>E("residualRisk"),onBlur:()=>E(null),style:(0,h.mQ)("residualRisk",D),children:[(0,d.jsx)("option",{value:"acceptable",children:"✅ Acceptable"}),(0,d.jsx)("option",{value:"unacceptable",children:"❌ Unacceptable"}),(0,d.jsx)("option",{value:"pending",children:"⏳ Pending"})]})})]}),(0,d.jsx)(h.zB,{label:"Identified Risks",hint:"List specific risks",action:{label:"+ Add Risk",onClick:()=>A([...z,{id:`R-001.${z.length+1}`,description:"",impact:"medium",probability:"medium"}])},children:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:z.map((a,b)=>(0,d.jsxs)("div",{style:{display:"flex",gap:"0.75rem",alignItems:"center"},children:[(0,d.jsx)("input",{type:"text",value:a.id,onChange:a=>J(b,"id",a.target.value),onFocus:()=>E(`risk-id-${b}`),onBlur:()=>E(null),placeholder:"R-001.1",style:{...(0,h.wI)(`risk-id-${b}`,D),width:"100px",flexShrink:0}}),(0,d.jsx)("input",{type:"text",value:a.description,onChange:a=>J(b,"description",a.target.value),onFocus:()=>E(`risk-desc-${b}`),onBlur:()=>E(null),placeholder:"Risk description",style:{...(0,h.wI)(`risk-desc-${b}`,D),flex:1}}),z.length>1&&(0,d.jsx)(h.d0,{onClick:()=>{z.length>1&&A(z.filter((a,c)=>c!==b))}})]},b))})}),(0,d.jsx)(h.zB,{label:"Mitigations",hint:"Control measures and testing",action:{label:"+ Add Mitigation",onClick:()=>C([...B,{risk_id:"",control:"",test:""}])},children:(0,d.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:"0.75rem"},children:B.map((a,b)=>(0,d.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"100px 1fr 1fr auto",gap:"0.75rem",alignItems:"center",padding:"1rem",background:"var(--bg-secondary)",borderRadius:"10px",borderWidth:"1px",borderStyle:"solid",borderColor:"var(--border)"},children:[(0,d.jsx)("input",{type:"text",value:a.risk_id,onChange:a=>K(b,"risk_id",a.target.value),onFocus:()=>E(`mit-id-${b}`),onBlur:()=>E(null),placeholder:"R-ID",style:(0,h.wI)(`mit-id-${b}`,D)}),(0,d.jsx)("input",{type:"text",value:a.control,onChange:a=>K(b,"control",a.target.value),onFocus:()=>E(`mit-control-${b}`),onBlur:()=>E(null),placeholder:"Control measure",style:(0,h.wI)(`mit-control-${b}`,D)}),(0,d.jsx)("input",{type:"text",value:a.test,onChange:a=>K(b,"test",a.target.value),onFocus:()=>E(`mit-test-${b}`),onBlur:()=>E(null),placeholder:"How to test",style:(0,h.wI)(`mit-test-${b}`,D)}),B.length>1&&(0,d.jsx)(h.d0,{onClick:()=>{B.length>1&&C(B.filter((a,c)=>c!==b))}})]},b))})})]})}function v({ursItems:a,riskItems:b,fsItems:c,counts:f,stepsByType:g,initialTab:h="fs"}){let[j,k]=(0,e.useState)(h);return(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{style:{display:"flex",gap:"0.5rem",marginBottom:"1.5rem"},children:[{id:"urs",label:"URS",icon:"\uD83D\uDCCB",color:"var(--success)"},{id:"fs",label:"FS",icon:"⚙️",color:"var(--warning)"},{id:"risk",label:"Risk",icon:"⚠️",color:"#f97316"}].map(a=>(0,d.jsxs)("button",{onClick:()=>k(a.id),className:`btn ${j===a.id?"btn-primary":""}`,style:j!==a.id?{background:"var(--bg-hover)"}:{},children:[a.icon," New ",a.label]},a.id))}),"urs"===j&&(0,d.jsx)(r,{existingCount:f.urs}),"fs"===j&&(0,d.jsx)(i,{ursItems:a,riskItems:b,existingFSCount:f.fs,stepsByType:g}),"risk"===j&&(0,d.jsx)(u,{fsItems:c,existingCount:f.risk})]})}},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},20142:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h,dynamic:()=>g});var d=c(5735),e=c(71081),f=c(51805);let g="force-dynamic";async function h({searchParams:a}){let{tab:b}=await a,c=(0,e.Er)(),g=(0,e.I1)(),h=(0,e.x7)(),i=h.flatMap(a=>a.scenarios.flatMap(a=>a.steps)),j={given:[...new Set(i.filter(a=>a.startsWith("Given ")))],when:[...new Set(i.filter(a=>a.startsWith("When ")))],then:[...new Set(i.filter(a=>a.startsWith("Then ")))],and:[...new Set(i.filter(a=>a.startsWith("And ")))],but:[...new Set(i.filter(a=>a.startsWith("But ")))]};return(0,d.jsxs)("div",{children:[(0,d.jsxs)("header",{className:"page-header",children:[(0,d.jsx)("h1",{className:"page-title",children:"Builder"}),(0,d.jsx)("p",{className:"page-subtitle",children:"Create URS, FS, and Risk specifications"})]}),(0,d.jsx)(f.BuilderTabs,{ursItems:c.map(a=>({id:a.id,title:a.title})),riskItems:g.map(a=>({id:a.id,title:a.title})),fsItems:h.map(a=>({id:a.id,title:a.title})),counts:{urs:c.length,fs:h.length,risk:g.length},stepsByType:j,initialTab:"urs"===b||"fs"===b||"risk"===b?b:"fs"})]})}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},36126:(a,b,c)=>{Promise.resolve().then(c.bind(c,51805))},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},43954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},46193:a=>{"use strict";a.exports=require("node:string_decoder")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},51805:(a,b,c)=>{"use strict";c.d(b,{BuilderTabs:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call BuilderTabs() from the server but BuilderTabs 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/builder/builder-tabs.tsx","BuilderTabs")},57075:a=>{"use strict";a.exports=require("node:stream")},58165:(a,b,c)=>{"use strict";c.d(b,{j:()=>f});var d=c(48249),e=c(67484);function f({options:a,selected:b,onChange:c,placeholder:f,multi:g=!0,allowCustom:h=!0}){let[i,j]=(0,e.useState)(!1),[k,l]=(0,e.useState)(""),m=(0,e.useRef)(null),n=a.filter(a=>a.label.toLowerCase().includes(k.toLowerCase())&&(!g||!b.includes(a.value)));return(0,d.jsxs)("div",{ref:m,style:{position:"relative",flex:1},children:[g&&b.length>0&&(0,d.jsx)("div",{style:{display:"flex",gap:"0.25rem",flexWrap:"wrap",marginBottom:"0.5rem"},children:b.map(e=>{let f=a.find(a=>a.value===e);return(0,d.jsxs)("span",{className:"badge badge-success",style:{display:"flex",alignItems:"center",gap:"0.25rem"},children:[f?.value||e,(0,d.jsx)("button",{onClick:()=>{c(b.filter(a=>a!==e))},style:{background:"none",border:"none",cursor:"pointer",padding:0,fontSize:"1rem",color:"inherit"},children:"\xd7"})]},e)})}),(0,d.jsx)("input",{type:"text",value:g||i?k:(()=>{if(!g&&b.length>0){let c=a.find(a=>a.value===b[0]);return c?.label||b[0]}return""})(),onChange:a=>l(a.target.value),onFocus:()=>j(!0),placeholder:0!==b.length&&g?"Add more...":f,className:"input",style:{width:"100%"}}),i&&(0,d.jsxs)("div",{style:{position:"absolute",top:"100%",left:0,right:0,marginTop:"0.25rem",background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:"8px",maxHeight:"200px",overflowY:"auto",zIndex:100,boxShadow:"0 4px 12px rgba(0,0,0,0.3)"},children:[0===n.length?(0,d.jsx)("div",{style:{padding:"0.75rem",color:"var(--text-secondary)",fontSize:"0.875rem"},children:h?"No matches - type to create":"No matching steps"}):n.slice(0,20).map(a=>(0,d.jsxs)("div",{onClick:()=>{var d;return d=a.value,void(g?c([...b,d]):(c([d]),j(!1)),l(""))},style:{padding:"0.625rem 0.75rem",cursor:"pointer",fontSize:"0.875rem",borderBottom:"1px solid var(--border)",transition:"background 0.15s"},onMouseEnter:a=>a.currentTarget.style.background="var(--bg-hover)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,d.jsx)("div",{style:{fontWeight:500},children:a.value}),a.label!==a.value&&(0,d.jsx)("div",{style:{fontSize:"0.75rem",color:"var(--text-secondary)",marginTop:"0.125rem"},children:a.label})]},a.value)),n.length>20&&(0,d.jsxs)("div",{style:{padding:"0.5rem",color:"var(--text-secondary)",fontSize:"0.75rem",textAlign:"center"},children:["+",n.length-20," more..."]})]})]})}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},70722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76294:(a,b,c)=>{Promise.resolve().then(c.bind(c,16845))},76760:a=>{"use strict";a.exports=require("node:path")},78474:a=>{"use strict";a.exports=require("node:events")},80637:(a,b,c)=>{"use strict";c.d(b,{D:()=>e});var d=c(99829);let e=(0,d.createServerReference)("4029e7e4d67ee5166acd30181de6477e788c68ac9e",d.callServer,void 0,d.findSourceMapURL,"saveRisk")},81787:a=>{"use strict";a.exports=require("bun:sqlite")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92683:(a,b,c)=>{"use strict";c.d(b,{G:()=>e});var d=c(99829);let e=(0,d.createServerReference)("40819b9e3272b2a2e90f7779aa569592c172feaee5",d.callServer,void 0,d.findSourceMapURL,"saveURS")},99829:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={callServer:function(){return f.callServer},createServerReference:function(){return h.createServerReference},findSourceMapURL:function(){return g.findSourceMapURL}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(35766),g=c(87006),h=c(35569)}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,471,391,390,160,870,829,907,941],()=>b(b.s=1524));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../matrix.db","../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../node_modules/next/dist/shared/lib/router/utils/interception-routes.js","../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../node_modules/next/dist/shared/lib/segment.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/package.json","../../../../package.json","../../../../specs/fs/FS-001-login.requirement","../../../../specs/fs/FS-002-session.requirement","../../../../specs/fs/FS-003-registration.requirement","../../../../specs/fs/FS-004-booking.requirement","../../../../specs/fs/FS-005-waitlist.requirement","../../../../specs/fs/FS-006-schedule.requirement","../../../../specs/fs/FS-007-instructor.requirement","../../../../specs/fs/fs-008-something.requirement","../../../../specs/fs/fs-009-bleep-bloop-thing.requirement","../../../../specs/fs/fs-010-asfdlka.requirement","../../../../src/lib/database/schema.sql","../../../package.json","../../chunks/
|
|
1
|
+
{"version":1,"files":["../../../../matrix.db","../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../node_modules/next/dist/shared/lib/router/utils/interception-routes.js","../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../node_modules/next/dist/shared/lib/segment.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/package.json","../../../../package.json","../../../../specs/fs/FS-001-login.requirement","../../../../specs/fs/FS-002-session.requirement","../../../../specs/fs/FS-003-registration.requirement","../../../../specs/fs/FS-004-booking.requirement","../../../../specs/fs/FS-005-waitlist.requirement","../../../../specs/fs/FS-006-schedule.requirement","../../../../specs/fs/FS-007-instructor.requirement","../../../../specs/fs/fs-008-something.requirement","../../../../specs/fs/fs-009-bleep-bloop-thing.requirement","../../../../specs/fs/fs-009-fs-009-bleep-bloop-thing.requirement","../../../../specs/fs/fs-010-asfdlka.requirement","../../../../src/lib/database/schema.sql","../../../package.json","../../chunks/160.js","../../chunks/390.js","../../chunks/391.js","../../chunks/445.js","../../chunks/471.js","../../chunks/829.js","../../chunks/870.js","../../chunks/907.js","../../chunks/941.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/builder/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/builder/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"70664","name":"*","chunks":[],"async":false}},"574":{"*":{"id":"10194","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"60440","name":"*","chunks":[],"async":false}},"1864":{"*":{"id":"44204","name":"*","chunks":[],"async":false}},"2335":{"*":{"id":"35947","name":"*","chunks":[],"async":false}},"2716":{"*":{"id":"62386","name":"*","chunks":[],"async":false}},"4425":{"*":{"id":"33227","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"61335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"82265","name":"*","chunks":[],"async":false}},"5230":{"*":{"id":"1114","name":"*","chunks":[],"async":false}},"6120":{"*":{"id":"43725","name":"*","chunks":[],"async":false}},"6438":{"*":{"id":"36648","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"74661","name":"*","chunks":[],"async":false}},"7018":{"*":{"id":"21515","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"35421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"81921","name":"*","chunks":[],"async":false}},"7582":{"*":{"id":"16845","name":"*","chunks":[],"async":false}},"8169":{"*":{"id":"93291","name":"*","chunks":[],"async":false}},"8500":{"*":{"id":"2116","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"84342","name":"*","chunks":[],"async":false}},"9325":{"*":{"id":"40987","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","974","static/chunks/app/page-f227601c12abd1f8.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","974","static/chunks/app/page-f227601c12abd1f8.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-0f51af36ad0921db.js"],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/nav-section.tsx":{"id":1864,"name":"*","chunks":["500","static/chunks/500-b84d19d842172eba.js","177","static/chunks/app/layout-0f51af36ad0921db.js"],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/releases/releases-client.tsx":{"id":6438,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/releases/[id]/release-detail-client.tsx":{"id":6120,"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":7582,"name":"*","chunks":["462","static/chunks/app/builder/page-98dfb8ccb235f9a8.js"],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/risk-detail-client.tsx":{"id":2335,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/scenario-list.tsx":{"id":8169,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/specs/[id]/urs-detail-client.tsx":{"id":7018,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/traceability/urs/[id]/client.tsx":{"id":9325,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/traceability/fs/[id]/client.tsx":{"id":574,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/traceability/matrix-client.tsx":{"id":4425,"name":"*","chunks":[],"async":false},"/Users/matthew/Code/github/p11o/machine/docs/src/app/traceability/risk/[id]/client.tsx":{"id":5230,"name":"*","chunks":[],"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/230ac595a7268d78.css"}],"/Users/matthew/Code/github/p11o/machine/docs/src/app/page":[],"/Users/matthew/Code/github/p11o/machine/docs/src/app/builder/page":[]},"rscModuleMapping":{"484":{"*":{"id":"98562","name":"*","chunks":[],"async":false}},"574":{"*":{"id":"50596","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"15098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"61135","name":"*","chunks":[],"async":false}},"1864":{"*":{"id":"40946","name":"*","chunks":[],"async":false}},"2335":{"*":{"id":"19665","name":"*","chunks":[],"async":false}},"2716":{"*":{"id":"97652","name":"*","chunks":[],"async":false}},"4425":{"*":{"id":"65100","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"16237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"33859","name":"*","chunks":[],"async":false}},"5230":{"*":{"id":"59216","name":"*","chunks":[],"async":false}},"6120":{"*":{"id":"29575","name":"*","chunks":[],"async":false}},"6438":{"*":{"id":"4618","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"36675","name":"*","chunks":[],"async":false}},"7018":{"*":{"id":"17250","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"98099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"95547","name":"*","chunks":[],"async":false}},"7582":{"*":{"id":"51805","name":"*","chunks":[],"async":false}},"8169":{"*":{"id":"47831","name":"*","chunks":[],"async":false}},"8500":{"*":{"id":"23318","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"47644","name":"*","chunks":[],"async":false}},"9325":{"*":{"id":"89737","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|