@shepai/cli 1.56.0 → 1.58.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/apis/json-schema/NotificationEventConfig.yaml +20 -0
- package/apis/json-schema/NotificationEventType.yaml +4 -0
- package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts +22 -0
- package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts.map +1 -1
- package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
- package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +4 -0
- package/dist/packages/core/src/domain/generated/output.d.ts +21 -1
- package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
- package/dist/packages/core/src/domain/generated/output.js +4 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +4 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +8 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.js +18 -0
- package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts +3 -1
- package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/git/git-pr.service.js +28 -0
- package/dist/packages/core/src/infrastructure/services/notifications/notification.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/notifications/notification.service.js +4 -0
- package/dist/packages/core/src/infrastructure/services/pr-sync/pr-sync-watcher.service.d.ts +61 -0
- package/dist/packages/core/src/infrastructure/services/pr-sync/pr-sync-watcher.service.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/pr-sync/pr-sync-watcher.service.js +286 -0
- package/dist/src/presentation/cli/commands/ui.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/ui.command.js +6 -0
- package/dist/src/presentation/web/components/common/add-repository-node/add-repository-button.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/add-repository-node/add-repository-button.js +4 -2
- package/dist/src/presentation/web/components/common/add-repository-node/add-repository-node.stories.d.ts +2 -0
- package/dist/src/presentation/web/components/common/add-repository-node/add-repository-node.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/add-repository-node/add-repository-node.stories.js +6 -0
- package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.js +6 -0
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.js +9 -0
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.js +3 -3
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.stories.d.ts +0 -1
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.stories.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.stories.js +1 -31
- package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
- package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +5 -1
- package/dist/src/presentation/web/dev-server.js +11 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/build-manifest.json +2 -2
- package/web/.next/cache/.previewinfo +1 -1
- package/web/.next/cache/.rscinfo +1 -1
- package/web/.next/cache/.tsbuildinfo +1 -1
- package/web/.next/cache/config.json +3 -3
- package/web/.next/fallback-build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/required-server-files.js +1 -1
- package/web/.next/required-server-files.json +1 -1
- package/web/.next/server/app/_global-error/page.js +1 -1
- package/web/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/server/app/_not-found/page/server-reference-manifest.json +17 -1
- package/web/.next/server/app/_not-found/page.js +2 -2
- package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/api/dialog/pick-files/route.js +1 -1
- package/web/.next/server/app/api/dialog/pick-files/route.js.nft.json +1 -1
- package/web/.next/server/app/page/server-reference-manifest.json +41 -41
- package/web/.next/server/app/page.js +2 -3
- package/web/.next/server/app/page.js.nft.json +1 -1
- package/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/tools/page/server-reference-manifest.json +17 -1
- package/web/.next/server/app/tools/page.js +2 -2
- package/web/.next/server/app/tools/page.js.nft.json +1 -1
- package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/version/page/server-reference-manifest.json +17 -1
- package/web/.next/server/app/version/page.js +2 -2
- package/web/.next/server/app/version/page.js.nft.json +1 -1
- package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +2 -2
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +1 -1
- package/web/.next/server/chunks/{[root-of-the-server]__332c8d91._.js → [root-of-the-server]__a6bf88cc._.js} +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__08ba9bd3._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__08ba9bd3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__86c7bba5._.js +9 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__86c7bba5._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__9add7c3a._.js +12 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__9add7c3a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__dbd220d2._.js → [root-of-the-server]__b79b0516._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__dbd220d2._.js.map → [root-of-the-server]__b79b0516._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__757c7912._.js → [root-of-the-server]__f7f90528._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__757c7912._.js.map → [root-of-the-server]__f7f90528._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__fbc89707._.js +1 -1
- package/web/.next/server/chunks/ssr/{_0e2c2b4f._.js → _027596cf._.js} +2 -2
- package/web/.next/server/chunks/ssr/_027596cf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ed0934e5._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ed0934e5._.js.map +1 -1
- package/web/.next/server/pages/500.html +2 -2
- package/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/server/server-reference-manifest.json +63 -42
- package/web/.next/standalone/src/presentation/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/src/presentation/web/.next/build-manifest.json +2 -2
- package/web/.next/standalone/src/presentation/web/.next/prerender-manifest.json +3 -3
- package/web/.next/standalone/src/presentation/web/.next/required-server-files.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error/page.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page/server-reference-manifest.json +17 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/dialog/pick-files/route.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/api/dialog/pick-files/route.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/page/server-reference-manifest.json +41 -41
- package/web/.next/standalone/src/presentation/web/.next/server/app/page.js +2 -3
- package/web/.next/standalone/src/presentation/web/.next/server/app/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page/server-reference-manifest.json +17 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page/server-reference-manifest.json +17 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page.js.nft.json +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/{[root-of-the-server]__332c8d91._.js → [root-of-the-server]__a6bf88cc._.js} +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__08ba9bd3._.js +4 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +4 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +4 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__86c7bba5._.js +9 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__9add7c3a._.js +12 -0
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/{[root-of-the-server]__dbd220d2._.js → [root-of-the-server]__b79b0516._.js} +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/{[root-of-the-server]__757c7912._.js → [root-of-the-server]__f7f90528._.js} +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__fbc89707._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/{_0e2c2b4f._.js → _027596cf._.js} +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_ed0934e5._.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/pages/500.html +2 -2
- package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.json +63 -42
- package/web/.next/standalone/src/presentation/web/components/common/add-repository-node/add-repository-button.tsx +24 -15
- package/web/.next/standalone/src/presentation/web/components/common/add-repository-node/add-repository-node.stories.tsx +12 -0
- package/web/.next/standalone/src/presentation/web/components/common/feature-node/derive-feature-state.ts +6 -0
- package/web/.next/standalone/src/presentation/web/components/features/control-center/control-center-inner.tsx +10 -0
- package/web/.next/standalone/src/presentation/web/components/features/features-canvas/features-canvas.stories.tsx +0 -41
- package/web/.next/standalone/src/presentation/web/components/features/features-canvas/features-canvas.tsx +2 -7
- package/web/.next/standalone/src/presentation/web/components/layouts/app-shell/app-shell.tsx +6 -0
- package/web/.next/standalone/src/presentation/web/dev-server.ts +15 -0
- package/web/.next/standalone/src/presentation/web/server.js +1 -1
- package/web/.next/static/chunks/3f5de337d3fc604f.js +1 -0
- package/web/.next/static/chunks/60bbbe7ff679eb4c.css +2 -0
- package/web/.next/static/chunks/{ef237b70209d9853.js → 67459433cc866344.js} +1 -1
- package/web/.next/static/chunks/eb0e60434c992fc1.js +10 -0
- package/web/.next/trace +1 -1
- package/web/.next/trace-build +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__2d1a8e37._.js +0 -9
- package/web/.next/server/chunks/ssr/[root-of-the-server]__2d1a8e37._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__48c68a96._.js +0 -12
- package/web/.next/server/chunks/ssr/[root-of-the-server]__48c68a96._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__950afd5e._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__950afd5e._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_0e2c2b4f._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_a836bb2a.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_a836bb2a.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_f1dd7791.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_f1dd7791.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_ea925032.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_ea925032.js.map +0 -1
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__2d1a8e37._.js +0 -9
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__48c68a96._.js +0 -12
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__950afd5e._.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_a836bb2a.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_f1dd7791.js +0 -3
- package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_ea925032.js +0 -3
- package/web/.next/static/chunks/4651f20be1a3b7d7.css +0 -2
- package/web/.next/static/chunks/62eba5d9a5e28761.js +0 -10
- package/web/.next/static/chunks/ca4bb930b4a3f3a9.js +0 -1
- /package/web/.next/server/chunks/{[root-of-the-server]__332c8d91._.js.map → [root-of-the-server]__a6bf88cc._.js.map} +0 -0
- /package/web/.next/static/{TNUev4cyuW_BghWxcCTOD → e7Q45G0MI6cgci9Gn2J-i}/_buildManifest.js +0 -0
- /package/web/.next/static/{TNUev4cyuW_BghWxcCTOD → e7Q45G0MI6cgci9Gn2J-i}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{TNUev4cyuW_BghWxcCTOD → e7Q45G0MI6cgci9Gn2J-i}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,24270,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},76314,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return s},searchParamsToUrlQuery:function(){return i},urlQueryToSearchParams:function(){return l}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});function i(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function a(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function l(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,a(e));else t.set(r,a(n));return t}function s(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},95889,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return l},formatWithValidation:function(){return u},urlObjectKeys:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(44066)._(e.r(76314)),a=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:r}=e,n=e.protocol||"",o=e.pathname||"",l=e.hash||"",s=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),s&&"object"==typeof s&&(s=String(i.urlQueryToSearchParams(s)));let c=e.search||s&&`?${s}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||a.test(n))&&!1!==u?(u="//"+(u||""),o&&"/"!==o[0]&&(o="/"+o)):u||(u=""),l&&"#"!==l[0]&&(l="#"+l),c&&"?"!==c[0]&&(c="?"+c),o=o.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${u}${o}${c}${l}`}let s=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return l(e)}},80764,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return o}});let n=e.r(79054);function o(e,t){let r=(0,n.useRef)(null),o=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(r.current=i(e,n)),t&&(o.current=i(t,n))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},58464,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return b},MiddlewareNotFoundError:function(){return S},MissingStaticPage:function(){return y},NormalizeError:function(){return g},PageNotFoundError:function(){return w},SP:function(){return v},ST:function(){return m},WEB_VITALS:function(){return i},execOnce:function(){return a},getDisplayName:function(){return d},getLocationOrigin:function(){return u},getURL:function(){return c},isAbsoluteUrl:function(){return s},isResSent:function(){return f},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return x}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=["CLS","FCP","FID","INP","LCP","TTFB"];function a(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,s=e=>l.test(e);function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=u();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}let v="u">typeof performance,m=v&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class b extends Error{}class g extends Error{}class w extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class y extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class S extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function x(e){return JSON.stringify({message:e.message,stack:e.stack})}},51380,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return i}});let n=e.r(58464),o=e.r(53626);function i(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,o.hasBasePath)(r.pathname)}catch(e){return!1}}},38670,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},24035,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return b},useLinkStatus:function(){return w}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(44066),a=e.r(20314),l=i._(e.r(79054)),s=e.r(95889),u=e.r(18152),c=e.r(80764),d=e.r(58464),f=e.r(99267);e.r(24270);let p=e.r(59624),h=e.r(51380),v=e.r(95555);function m(e){return"string"==typeof e?e:(0,s.formatUrl)(e)}function b(t){var r;let n,o,i,[s,b]=(0,l.useOptimistic)(p.IDLE_LINK_STATUS),w=(0,l.useRef)(null),{href:y,as:S,children:x,prefetch:j=null,passHref:E,replace:C,shallow:P,scroll:T,onClick:R,onMouseEnter:N,onTouchStart:_,legacyBehavior:A=!1,onNavigate:L,ref:O,unstable_dynamicOnHover:k,...M}=t;n=x,A&&("string"==typeof n||"number"==typeof n)&&(n=(0,a.jsx)("a",{children:n}));let I=l.default.useContext(u.AppRouterContext),D=!1!==j,U=!1!==j?null===(r=j)||"auto"===r?v.FetchStrategy.PPR:v.FetchStrategy.Full:v.FetchStrategy.PPR,{href:z,as:H}=l.default.useMemo(()=>{let e=m(y);return{href:e,as:S?m(S):e}},[y,S]);if(A){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});o=l.default.Children.only(n)}let F=A?o&&"object"==typeof o&&o.ref:O,W=l.default.useCallback(e=>(null!==I&&(w.current=(0,p.mountLinkInstance)(e,z,I,U,D,b)),()=>{w.current&&((0,p.unmountLinkForCurrentNavigation)(w.current),w.current=null),(0,p.unmountPrefetchableInstance)(e)}),[D,z,I,U,b]),$={ref:(0,c.useMergedRef)(W,F),onClick(t){A||"function"!=typeof R||R(t),A&&o.props&&"function"==typeof o.props.onClick&&o.props.onClick(t),!I||t.defaultPrevented||function(t,r,n,o,i,a,s){if("u">typeof window){let u,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(r)){i&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),s){let e=!1;if(s({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(81574);l.default.startTransition(()=>{d(n||r,i?"replace":"push",a??!0,o.current)})}}(t,z,H,w,C,T,L)},onMouseEnter(e){A||"function"!=typeof N||N(e),A&&o.props&&"function"==typeof o.props.onMouseEnter&&o.props.onMouseEnter(e),I&&D&&(0,p.onNavigationIntent)(e.currentTarget,!0===k)},onTouchStart:function(e){A||"function"!=typeof _||_(e),A&&o.props&&"function"==typeof o.props.onTouchStart&&o.props.onTouchStart(e),I&&D&&(0,p.onNavigationIntent)(e.currentTarget,!0===k)}};return(0,d.isAbsoluteUrl)(H)?$.href=H:A&&!E&&("a"!==o.type||"href"in o.props)||($.href=(0,f.addBasePath)(H)),i=A?l.default.cloneElement(o,$):(0,a.jsx)("a",{...M,...$,children:n}),(0,a.jsx)(g.Provider,{value:s,children:i})}e.r(38670);let g=(0,l.createContext)(p.IDLE_LINK_STATUS),w=()=>(0,l.useContext)(g);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},87292,e=>{"use strict";var t=e.i(20314),r=e.i(79054),n=e.i(57638),o=e.i(31406),i=e.i(3645);let a=(0,i.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]);var l=e.i(81975),s=e.i(3214),u=e.i(87620),c=e.i(85995),d=e.i(22528),f=e.i(5978),p=e.i(29297),h=e.i(66033),v=e.i(5192),m=e.i(91967),b="ScrollArea",[g,w]=(0,d.createContextScope)(b),[y,S]=g(b),x=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,type:i="hover",dir:a,scrollHideDelay:l=600,...s}=e,[c,d]=r.useState(null),[p,v]=r.useState(null),[m,b]=r.useState(null),[g,w]=r.useState(null),[S,x]=r.useState(null),[j,E]=r.useState(0),[C,P]=r.useState(0),[T,R]=r.useState(!1),[N,_]=r.useState(!1),A=(0,f.useComposedRefs)(n,e=>d(e)),L=(0,h.useDirection)(a);return(0,t.jsx)(y,{scope:o,type:i,dir:L,scrollHideDelay:l,scrollArea:c,viewport:p,onViewportChange:v,content:m,onContentChange:b,scrollbarX:g,onScrollbarXChange:w,scrollbarXEnabled:T,onScrollbarXEnabledChange:R,scrollbarY:S,onScrollbarYChange:x,scrollbarYEnabled:N,onScrollbarYEnabledChange:_,onCornerWidthChange:E,onCornerHeightChange:P,children:(0,t.jsx)(u.Primitive.div,{dir:L,...s,ref:A,style:{position:"relative","--radix-scroll-area-corner-width":j+"px","--radix-scroll-area-corner-height":C+"px",...e.style}})})});x.displayName=b;var j="ScrollAreaViewport",E=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,children:i,nonce:a,...l}=e,s=S(j,o),c=r.useRef(null),d=(0,f.useComposedRefs)(n,c,s.onViewportChange);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:a}),(0,t.jsx)(u.Primitive.div,{"data-radix-scroll-area-viewport":"",...l,ref:d,style:{overflowX:s.scrollbarXEnabled?"scroll":"hidden",overflowY:s.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,t.jsx)("div",{ref:s.onContentChange,style:{minWidth:"100%",display:"table"},children:i})})]})});E.displayName=j;var C="ScrollAreaScrollbar",P=r.forwardRef((e,n)=>{let{forceMount:o,...i}=e,a=S(C,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:s}=a,u="horizontal"===e.orientation;return r.useEffect(()=>(u?l(!0):s(!0),()=>{u?l(!1):s(!1)}),[u,l,s]),"hover"===a.type?(0,t.jsx)(T,{...i,ref:n,forceMount:o}):"scroll"===a.type?(0,t.jsx)(R,{...i,ref:n,forceMount:o}):"auto"===a.type?(0,t.jsx)(N,{...i,ref:n,forceMount:o}):"always"===a.type?(0,t.jsx)(_,{...i,ref:n}):null});P.displayName=C;var T=r.forwardRef((e,n)=>{let{forceMount:o,...i}=e,a=S(C,e.__scopeScrollArea),[l,s]=r.useState(!1);return r.useEffect(()=>{let e=a.scrollArea,t=0;if(e){let r=()=>{window.clearTimeout(t),s(!0)},n=()=>{t=window.setTimeout(()=>s(!1),a.scrollHideDelay)};return e.addEventListener("pointerenter",r),e.addEventListener("pointerleave",n),()=>{window.clearTimeout(t),e.removeEventListener("pointerenter",r),e.removeEventListener("pointerleave",n)}}},[a.scrollArea,a.scrollHideDelay]),(0,t.jsx)(c.Presence,{present:o||l,children:(0,t.jsx)(N,{"data-state":l?"visible":"hidden",...i,ref:n})})}),R=r.forwardRef((e,n)=>{var o;let{forceMount:i,...a}=e,l=S(C,e.__scopeScrollArea),s="horizontal"===e.orientation,u=K(()=>f("SCROLL_END"),100),[d,f]=(o={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},r.useReducer((e,t)=>o[e][t]??e,"hidden"));return r.useEffect(()=>{if("idle"===d){let e=window.setTimeout(()=>f("HIDE"),l.scrollHideDelay);return()=>window.clearTimeout(e)}},[d,l.scrollHideDelay,f]),r.useEffect(()=>{let e=l.viewport,t=s?"scrollLeft":"scrollTop";if(e){let r=e[t],n=()=>{let n=e[t];r!==n&&(f("SCROLL"),u()),r=n};return e.addEventListener("scroll",n),()=>e.removeEventListener("scroll",n)}},[l.viewport,s,f,u]),(0,t.jsx)(c.Presence,{present:i||"hidden"!==d,children:(0,t.jsx)(_,{"data-state":"hidden"===d?"hidden":"visible",...a,ref:n,onPointerEnter:(0,m.composeEventHandlers)(e.onPointerEnter,()=>f("POINTER_ENTER")),onPointerLeave:(0,m.composeEventHandlers)(e.onPointerLeave,()=>f("POINTER_LEAVE"))})})}),N=r.forwardRef((e,n)=>{let o=S(C,e.__scopeScrollArea),{forceMount:i,...a}=e,[l,s]=r.useState(!1),u="horizontal"===e.orientation,d=K(()=>{if(o.viewport){let e=o.viewport.offsetWidth<o.viewport.scrollWidth,t=o.viewport.offsetHeight<o.viewport.scrollHeight;s(u?e:t)}},10);return q(o.viewport,d),q(o.content,d),(0,t.jsx)(c.Presence,{present:i||l,children:(0,t.jsx)(_,{"data-state":l?"visible":"hidden",...a,ref:n})})}),_=r.forwardRef((e,n)=>{let{orientation:o="vertical",...i}=e,a=S(C,e.__scopeScrollArea),l=r.useRef(null),s=r.useRef(0),[u,c]=r.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),d=$(u.viewport,u.content),f={...i,sizes:u,onSizesChange:c,hasThumb:!!(d>0&&d<1),onThumbChange:e=>l.current=e,onThumbPointerUp:()=>s.current=0,onThumbPointerDown:e=>s.current=e};function p(e,t){return function(e,t,r,n="ltr"){let o=B(r),i=t||o/2,a=r.scrollbar.paddingStart+i,l=r.scrollbar.size-r.scrollbar.paddingEnd-(o-i),s=r.content-r.viewport;return V([a,l],"ltr"===n?[0,s]:[-1*s,0])(e)}(e,s.current,u,t)}return"horizontal"===o?(0,t.jsx)(A,{...f,ref:n,onThumbPositionChange:()=>{if(a.viewport&&l.current){let e=X(a.viewport.scrollLeft,u,a.dir);l.current.style.transform=`translate3d(${e}px, 0, 0)`}},onWheelScroll:e=>{a.viewport&&(a.viewport.scrollLeft=e)},onDragScroll:e=>{a.viewport&&(a.viewport.scrollLeft=p(e,a.dir))}}):"vertical"===o?(0,t.jsx)(L,{...f,ref:n,onThumbPositionChange:()=>{if(a.viewport&&l.current){let e=X(a.viewport.scrollTop,u);l.current.style.transform=`translate3d(0, ${e}px, 0)`}},onWheelScroll:e=>{a.viewport&&(a.viewport.scrollTop=e)},onDragScroll:e=>{a.viewport&&(a.viewport.scrollTop=p(e))}}):null}),A=r.forwardRef((e,n)=>{let{sizes:o,onSizesChange:i,...a}=e,l=S(C,e.__scopeScrollArea),[s,u]=r.useState(),c=r.useRef(null),d=(0,f.useComposedRefs)(n,c,l.onScrollbarXChange);return r.useEffect(()=>{c.current&&u(getComputedStyle(c.current))},[c]),(0,t.jsx)(M,{"data-orientation":"horizontal",...a,ref:d,sizes:o,style:{bottom:0,left:"rtl"===l.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===l.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":B(o)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,r)=>{if(l.viewport){var n,o;let i=l.viewport.scrollLeft+t.deltaX;e.onWheelScroll(i),n=i,o=r,n>0&&n<o&&t.preventDefault()}},onResize:()=>{c.current&&l.viewport&&s&&i({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:W(s.paddingLeft),paddingEnd:W(s.paddingRight)}})}})}),L=r.forwardRef((e,n)=>{let{sizes:o,onSizesChange:i,...a}=e,l=S(C,e.__scopeScrollArea),[s,u]=r.useState(),c=r.useRef(null),d=(0,f.useComposedRefs)(n,c,l.onScrollbarYChange);return r.useEffect(()=>{c.current&&u(getComputedStyle(c.current))},[c]),(0,t.jsx)(M,{"data-orientation":"vertical",...a,ref:d,sizes:o,style:{top:0,right:"ltr"===l.dir?0:void 0,left:"rtl"===l.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":B(o)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,r)=>{if(l.viewport){var n,o;let i=l.viewport.scrollTop+t.deltaY;e.onWheelScroll(i),n=i,o=r,n>0&&n<o&&t.preventDefault()}},onResize:()=>{c.current&&l.viewport&&s&&i({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:W(s.paddingTop),paddingEnd:W(s.paddingBottom)}})}})}),[O,k]=g(C),M=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,sizes:i,hasThumb:a,onThumbChange:l,onThumbPointerUp:s,onThumbPointerDown:c,onThumbPositionChange:d,onDragScroll:h,onWheelScroll:v,onResize:b,...g}=e,w=S(C,o),[y,x]=r.useState(null),j=(0,f.useComposedRefs)(n,e=>x(e)),E=r.useRef(null),P=r.useRef(""),T=w.viewport,R=i.content-i.viewport,N=(0,p.useCallbackRef)(v),_=(0,p.useCallbackRef)(d),A=K(b,10);function L(e){E.current&&h({x:e.clientX-E.current.left,y:e.clientY-E.current.top})}return r.useEffect(()=>{let e=e=>{let t=e.target;y?.contains(t)&&N(e,R)};return document.addEventListener("wheel",e,{passive:!1}),()=>document.removeEventListener("wheel",e,{passive:!1})},[T,y,R,N]),r.useEffect(_,[i,_]),q(y,A),q(w.content,A),(0,t.jsx)(O,{scope:o,scrollbar:y,hasThumb:a,onThumbChange:(0,p.useCallbackRef)(l),onThumbPointerUp:(0,p.useCallbackRef)(s),onThumbPositionChange:_,onThumbPointerDown:(0,p.useCallbackRef)(c),children:(0,t.jsx)(u.Primitive.div,{...g,ref:j,style:{position:"absolute",...g.style},onPointerDown:(0,m.composeEventHandlers)(e.onPointerDown,e=>{0===e.button&&(e.target.setPointerCapture(e.pointerId),E.current=y.getBoundingClientRect(),P.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",w.viewport&&(w.viewport.style.scrollBehavior="auto"),L(e))}),onPointerMove:(0,m.composeEventHandlers)(e.onPointerMove,L),onPointerUp:(0,m.composeEventHandlers)(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=P.current,w.viewport&&(w.viewport.style.scrollBehavior=""),E.current=null})})})}),I="ScrollAreaThumb",D=r.forwardRef((e,r)=>{let{forceMount:n,...o}=e,i=k(I,e.__scopeScrollArea);return(0,t.jsx)(c.Presence,{present:n||i.hasThumb,children:(0,t.jsx)(U,{ref:r,...o})})}),U=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,style:i,...a}=e,l=S(I,o),s=k(I,o),{onThumbPositionChange:c}=s,d=(0,f.useComposedRefs)(n,e=>s.onThumbChange(e)),p=r.useRef(void 0),h=K(()=>{p.current&&(p.current(),p.current=void 0)},100);return r.useEffect(()=>{let e=l.viewport;if(e){let t=()=>{h(),p.current||(p.current=Y(e,c),c())};return c(),e.addEventListener("scroll",t),()=>e.removeEventListener("scroll",t)}},[l.viewport,h,c]),(0,t.jsx)(u.Primitive.div,{"data-state":s.hasThumb?"visible":"hidden",...a,ref:d,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...i},onPointerDownCapture:(0,m.composeEventHandlers)(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),r=e.clientX-t.left,n=e.clientY-t.top;s.onThumbPointerDown({x:r,y:n})}),onPointerUp:(0,m.composeEventHandlers)(e.onPointerUp,s.onThumbPointerUp)})});D.displayName=I;var z="ScrollAreaCorner",H=r.forwardRef((e,r)=>{let n=S(z,e.__scopeScrollArea),o=!!(n.scrollbarX&&n.scrollbarY);return"scroll"!==n.type&&o?(0,t.jsx)(F,{...e,ref:r}):null});H.displayName=z;var F=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,...i}=e,a=S(z,o),[l,s]=r.useState(0),[c,d]=r.useState(0),f=!!(l&&c);return q(a.scrollbarX,()=>{let e=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(e),d(e)}),q(a.scrollbarY,()=>{let e=a.scrollbarY?.offsetWidth||0;a.onCornerWidthChange(e),s(e)}),f?(0,t.jsx)(u.Primitive.div,{...i,ref:n,style:{width:l,height:c,position:"absolute",right:"ltr"===a.dir?0:void 0,left:"rtl"===a.dir?0:void 0,bottom:0,...e.style}}):null});function W(e){return e?parseInt(e,10):0}function $(e,t){let r=e/t;return isNaN(r)?0:r}function B(e){let t=$(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd;return Math.max((e.scrollbar.size-r)*t,18)}function X(e,t,r="ltr"){let n=B(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,i=t.scrollbar.size-o,a=t.content-t.viewport,l=function(e,[t,r]){return Math.min(r,Math.max(t,e))}(e,"ltr"===r?[0,a]:[-1*a,0]);return V([0,a],[0,i-n])(l)}function V(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}var Y=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return!function o(){let i={left:e.scrollLeft,top:e.scrollTop},a=r.left!==i.left,l=r.top!==i.top;(a||l)&&t(),r=i,n=window.requestAnimationFrame(o)}(),()=>window.cancelAnimationFrame(n)};function K(e,t){let n=(0,p.useCallbackRef)(e),o=r.useRef(0);return r.useEffect(()=>()=>window.clearTimeout(o.current),[]),r.useCallback(()=>{window.clearTimeout(o.current),o.current=window.setTimeout(n,t)},[n,t])}function q(e,t){let r=(0,p.useCallbackRef)(t);(0,v.useLayoutEffect)(()=>{let t=0;if(e){let n=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(r)});return n.observe(e),()=>{window.cancelAnimationFrame(t),n.unobserve(e)}}},[e,r])}e.s(["Corner",()=>H,"Root",()=>x,"ScrollArea",()=>x,"ScrollAreaCorner",()=>H,"ScrollAreaScrollbar",()=>P,"ScrollAreaThumb",()=>D,"ScrollAreaViewport",()=>E,"Scrollbar",()=>P,"Thumb",()=>D,"Viewport",()=>E,"createScrollAreaScope",()=>w],87516);var Q=e.i(87516),Q=Q,G=e.i(31777);function J({className:e,children:r,...n}){return(0,t.jsxs)(Q.Root,{"data-slot":"scroll-area",className:(0,G.cn)("relative",e),...n,children:[(0,t.jsx)(Q.Viewport,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:r}),(0,t.jsx)(Z,{}),(0,t.jsx)(Q.Corner,{})]})}function Z({className:e,orientation:r="vertical",...n}){return(0,t.jsx)(Q.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:r,className:(0,G.cn)("flex touch-none p-px transition-colors select-none","vertical"===r&&"h-full w-2.5 border-l border-l-transparent","horizontal"===r&&"h-2.5 flex-col border-t border-t-transparent",e),...n,children:(0,t.jsx)(Q.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}e.i(90491);var ee=e.i(90798);e.i(85462);var et=e.i(26506);e.i(92233);var er=e.i(10025);e.i(8356);var en=e.i(71045);e.i(78788);var eo=e.i(91495);e.i(72028);var ei=e.i(41506),ea=e.i(40327);function el({features:e,onNewFeature:i,onFeatureClick:u,onFeaturesFolderClick:c,onFeaturesMenuClick:d}){let f=(0,o.usePathname)(),{state:p}=(0,n.useSidebar)(),{mounted:h,visible:v}=function(e,t){let[n,o]=(0,r.useState)(!e),[i,a]=(0,r.useState)(!e);return(0,r.useEffect)(()=>{if(!e){o(!0);let e=requestAnimationFrame(()=>a(!0));return()=>cancelAnimationFrame(e)}a(!1);let t=window.setTimeout(()=>o(!1),200);return()=>window.clearTimeout(t)},[e,200]),{mounted:n,visible:i}}("collapsed"===p,0),m=ea.featureStatusOrder.map(t=>{let{label:r}=ea.featureStatusConfig[t],n=e.filter(e=>e.status===t);return{key:t,label:r,items:n}});return(0,t.jsxs)(n.Sidebar,{"data-testid":"app-sidebar",collapsible:"icon",children:[(0,t.jsx)(n.SidebarHeader,{children:(0,t.jsxs)(n.SidebarMenu,{children:[(0,t.jsx)(n.SidebarMenuItem,{children:(0,t.jsxs)("div",{className:"flex h-8 items-center group-data-[collapsible=icon]:justify-center",children:[h?(0,t.jsxs)("div",{className:["flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2 transition-opacity duration-200 ease-out",v?"opacity-100":"opacity-0"].join(" "),"aria-hidden":!v,children:[(0,t.jsx)(er.ShepLogo,{className:"shrink-0",size:20}),(0,t.jsx)("span",{className:"truncate text-sm font-semibold tracking-tight",children:"Shep"})]}):null,(0,t.jsx)(et.SidebarCollapseToggle,{className:"shrink-0 transition-all duration-200"})]})}),(0,t.jsx)(ee.SidebarNavItem,{icon:a,label:"Control Center",href:"/",active:"/"===f}),(0,t.jsx)(ee.SidebarNavItem,{icon:l.Wrench,label:"Tools",href:"/tools",active:"/tools"===f})]})}),(0,t.jsx)(n.SidebarContent,{children:h?(0,t.jsxs)("div",{className:["min-w-0 overflow-hidden transition-opacity duration-200 ease-out [&_[data-sidebar=group-label]]:!mt-0 [&_[data-sidebar=group-label]]:!opacity-100 [&_[data-sidebar=group-label]]:!transition-none",v?"opacity-100":"opacity-0"].join(" "),children:[(0,t.jsx)(ei.SidebarSectionHeader,{label:"Features",onFolderClick:c,onMenuClick:d}),(0,t.jsx)(J,{children:m.map(({key:e,label:r,items:n})=>n.length>0?(0,t.jsx)(eo.FeatureStatusGroup,{label:r,count:n.length,children:n.map(e=>(0,t.jsx)(en.FeatureListItem,{name:e.name,status:e.status,startedAt:e.startedAt,duration:e.duration,onClick:u?()=>u(e.name):void 0},e.name))},e):null)})]}):null}),(0,t.jsx)(n.SidebarFooter,{children:(0,t.jsx)(n.SidebarMenu,{children:(0,t.jsx)(n.SidebarMenuItem,{children:(0,t.jsxs)(n.SidebarMenuButton,{onClick:i,tooltip:"New feature",children:[(0,t.jsx)(s.Plus,{}),(0,t.jsx)("span",{children:"New feature"})]})})})}),(0,t.jsx)(n.SidebarRail,{})]})}e.i(53777);var es=e.i(25732);let eu=(0,i.default)("volume-2",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]]),ec=(0,i.default)("volume-off",[["path",{d:"M16 9a5 5 0 0 1 .95 2.293",key:"1fgyg8"}],["path",{d:"M19.364 5.636a9 9 0 0 1 1.889 9.96",key:"l3zxae"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"m7 7-.587.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298V11",key:"1gbwow"}],["path",{d:"M9.828 4.172A.686.686 0 0 1 11 4.657v.686",key:"s2je0y"}]]);var ed=e.i(35364),ef=e.i(73709);function ep(){let{enabled:e,toggle:r}=(0,ef.useSoundEnabled)();return(0,t.jsxs)(ed.Button,{variant:"ghost",size:"icon",onClick:r,"aria-label":e?"Mute sounds":"Unmute sounds",children:[e?(0,t.jsx)(eu,{className:"h-5 w-5"}):(0,t.jsx)(ec,{className:"h-5 w-5"}),(0,t.jsx)("span",{className:"sr-only",children:"Toggle sound"})]})}var eh=e.i(39443),ev=e.i(60112),em=e.i(17406),eb=e.i(17607);let eg={[em.NotificationSeverity.Success]:"success",[em.NotificationSeverity.Error]:"error",[em.NotificationSeverity.Warning]:"warning",[em.NotificationSeverity.Info]:"info"},ew={[em.NotificationSeverity.Success]:"celebration",[em.NotificationSeverity.Error]:"caution",[em.NotificationSeverity.Warning]:"notification",[em.NotificationSeverity.Info]:"button"};function ey({children:e}){!function(){let{events:e}=(0,eh.useAgentEventsContext)(),t=(0,eb.useSound)("celebration",{volume:.5}),n=(0,eb.useSound)("caution",{volume:.5}),o=(0,eb.useSound)("notification",{volume:.5}),i=(0,eb.useSound)("button",{volume:.5}),a=(0,r.useMemo)(()=>({celebration:t,caution:n,notification:o,button:i}),[t,n,o,i]),[l,s]=(0,r.useState)(()=>void 0===globalThis.Notification?"default":globalThis.Notification.permission),u=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(e.length<=u.current)return;let t=e.slice(u.current);for(let r of(u.current=e.length,t)){if(r.severity!==em.NotificationSeverity.Error&&r.severity!==em.NotificationSeverity.Warning&&r.severity!==em.NotificationSeverity.Success)continue;!function(e){let t=eg[e.severity]??"info",r=e.eventType===em.NotificationEventType.WaitingApproval;ev.toast[t](e.featureName,{description:e.message,...r&&{action:{label:"Review",onClick:()=>{window.dispatchEvent(new CustomEvent("shep:select-feature",{detail:{featureId:e.featureId}}))}}}})}(r),globalThis.Notification?.permission==="granted"&&new Notification(`Shep: ${r.featureName}`,{body:r.message,icon:"/favicon-light.svg"});let e=ew[r.severity];a[e]?.play()}},[e,a]),(0,r.useCallback)(async()=>{void 0===globalThis.Notification||s(await globalThis.Notification.requestPermission())},[])}();let o=(0,r.useCallback)(()=>{window.dispatchEvent(new CustomEvent("shep:open-create-drawer"))},[]);return(0,t.jsxs)(n.SidebarProvider,{children:[(0,t.jsx)(el,{features:[],onNewFeature:o}),(0,t.jsx)(n.SidebarInset,{children:(0,t.jsxs)("div",{className:"relative h-full",children:[(0,t.jsxs)("div",{className:"absolute top-3 right-3 z-50 flex gap-1",children:[(0,t.jsx)(ep,{}),(0,t.jsx)(es.ThemeToggle,{})]}),(0,t.jsx)("main",{className:"h-full",children:e})]})})]})}function eS({children:e}){return(0,t.jsx)(eh.AgentEventsProvider,{children:(0,t.jsx)(ey,{children:e})})}e.s(["AppShell",()=>eS],87292)},25251,e=>{"use strict";var t=e.i(20314),r=e.i(60112);let n=({...e})=>(0,t.jsx)(r.Toaster,{className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...e});e.s(["Toaster",()=>n])}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,24270,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},76314,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return s},searchParamsToUrlQuery:function(){return i},urlQueryToSearchParams:function(){return l}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});function i(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function a(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function l(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,a(e));else t.set(r,a(n));return t}function s(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},95889,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return l},formatWithValidation:function(){return u},urlObjectKeys:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(44066)._(e.r(76314)),a=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:r}=e,n=e.protocol||"",o=e.pathname||"",l=e.hash||"",s=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),s&&"object"==typeof s&&(s=String(i.urlQueryToSearchParams(s)));let c=e.search||s&&`?${s}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||a.test(n))&&!1!==u?(u="//"+(u||""),o&&"/"!==o[0]&&(o="/"+o)):u||(u=""),l&&"#"!==l[0]&&(l="#"+l),c&&"?"!==c[0]&&(c="?"+c),o=o.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${u}${o}${c}${l}`}let s=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return l(e)}},80764,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return o}});let n=e.r(79054);function o(e,t){let r=(0,n.useRef)(null),o=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(r.current=i(e,n)),t&&(o.current=i(t,n))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},58464,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return b},MiddlewareNotFoundError:function(){return S},MissingStaticPage:function(){return y},NormalizeError:function(){return g},PageNotFoundError:function(){return w},SP:function(){return v},ST:function(){return m},WEB_VITALS:function(){return i},execOnce:function(){return a},getDisplayName:function(){return d},getLocationOrigin:function(){return u},getURL:function(){return c},isAbsoluteUrl:function(){return s},isResSent:function(){return f},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return x}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=["CLS","FCP","FID","INP","LCP","TTFB"];function a(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,s=e=>l.test(e);function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=u();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}let v="u">typeof performance,m=v&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class b extends Error{}class g extends Error{}class w extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class y extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class S extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function x(e){return JSON.stringify({message:e.message,stack:e.stack})}},51380,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return i}});let n=e.r(58464),o=e.r(53626);function i(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,o.hasBasePath)(r.pathname)}catch(e){return!1}}},38670,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},24035,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return b},useLinkStatus:function(){return w}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(44066),a=e.r(20314),l=i._(e.r(79054)),s=e.r(95889),u=e.r(18152),c=e.r(80764),d=e.r(58464),f=e.r(99267);e.r(24270);let p=e.r(59624),h=e.r(51380),v=e.r(95555);function m(e){return"string"==typeof e?e:(0,s.formatUrl)(e)}function b(t){var r;let n,o,i,[s,b]=(0,l.useOptimistic)(p.IDLE_LINK_STATUS),w=(0,l.useRef)(null),{href:y,as:S,children:x,prefetch:j=null,passHref:E,replace:C,shallow:P,scroll:T,onClick:R,onMouseEnter:N,onTouchStart:_,legacyBehavior:A=!1,onNavigate:L,ref:k,unstable_dynamicOnHover:O,...M}=t;n=x,A&&("string"==typeof n||"number"==typeof n)&&(n=(0,a.jsx)("a",{children:n}));let I=l.default.useContext(u.AppRouterContext),D=!1!==j,U=!1!==j?null===(r=j)||"auto"===r?v.FetchStrategy.PPR:v.FetchStrategy.Full:v.FetchStrategy.PPR,{href:z,as:H}=l.default.useMemo(()=>{let e=m(y);return{href:e,as:S?m(S):e}},[y,S]);if(A){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});o=l.default.Children.only(n)}let F=A?o&&"object"==typeof o&&o.ref:k,W=l.default.useCallback(e=>(null!==I&&(w.current=(0,p.mountLinkInstance)(e,z,I,U,D,b)),()=>{w.current&&((0,p.unmountLinkForCurrentNavigation)(w.current),w.current=null),(0,p.unmountPrefetchableInstance)(e)}),[D,z,I,U,b]),$={ref:(0,c.useMergedRef)(W,F),onClick(t){A||"function"!=typeof R||R(t),A&&o.props&&"function"==typeof o.props.onClick&&o.props.onClick(t),!I||t.defaultPrevented||function(t,r,n,o,i,a,s){if("u">typeof window){let u,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(r)){i&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),s){let e=!1;if(s({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(81574);l.default.startTransition(()=>{d(n||r,i?"replace":"push",a??!0,o.current)})}}(t,z,H,w,C,T,L)},onMouseEnter(e){A||"function"!=typeof N||N(e),A&&o.props&&"function"==typeof o.props.onMouseEnter&&o.props.onMouseEnter(e),I&&D&&(0,p.onNavigationIntent)(e.currentTarget,!0===O)},onTouchStart:function(e){A||"function"!=typeof _||_(e),A&&o.props&&"function"==typeof o.props.onTouchStart&&o.props.onTouchStart(e),I&&D&&(0,p.onNavigationIntent)(e.currentTarget,!0===O)}};return(0,d.isAbsoluteUrl)(H)?$.href=H:A&&!E&&("a"!==o.type||"href"in o.props)||($.href=(0,f.addBasePath)(H)),i=A?l.default.cloneElement(o,$):(0,a.jsx)("a",{...M,...$,children:n}),(0,a.jsx)(g.Provider,{value:s,children:i})}e.r(38670);let g=(0,l.createContext)(p.IDLE_LINK_STATUS),w=()=>(0,l.useContext)(g);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},87292,e=>{"use strict";var t=e.i(20314),r=e.i(79054),n=e.i(57638),o=e.i(31406),i=e.i(3645);let a=(0,i.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]);var l=e.i(81975),s=e.i(3214),u=e.i(87620),c=e.i(85995),d=e.i(22528),f=e.i(5978),p=e.i(29297),h=e.i(66033),v=e.i(5192),m=e.i(91967),b="ScrollArea",[g,w]=(0,d.createContextScope)(b),[y,S]=g(b),x=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,type:i="hover",dir:a,scrollHideDelay:l=600,...s}=e,[c,d]=r.useState(null),[p,v]=r.useState(null),[m,b]=r.useState(null),[g,w]=r.useState(null),[S,x]=r.useState(null),[j,E]=r.useState(0),[C,P]=r.useState(0),[T,R]=r.useState(!1),[N,_]=r.useState(!1),A=(0,f.useComposedRefs)(n,e=>d(e)),L=(0,h.useDirection)(a);return(0,t.jsx)(y,{scope:o,type:i,dir:L,scrollHideDelay:l,scrollArea:c,viewport:p,onViewportChange:v,content:m,onContentChange:b,scrollbarX:g,onScrollbarXChange:w,scrollbarXEnabled:T,onScrollbarXEnabledChange:R,scrollbarY:S,onScrollbarYChange:x,scrollbarYEnabled:N,onScrollbarYEnabledChange:_,onCornerWidthChange:E,onCornerHeightChange:P,children:(0,t.jsx)(u.Primitive.div,{dir:L,...s,ref:A,style:{position:"relative","--radix-scroll-area-corner-width":j+"px","--radix-scroll-area-corner-height":C+"px",...e.style}})})});x.displayName=b;var j="ScrollAreaViewport",E=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,children:i,nonce:a,...l}=e,s=S(j,o),c=r.useRef(null),d=(0,f.useComposedRefs)(n,c,s.onViewportChange);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:a}),(0,t.jsx)(u.Primitive.div,{"data-radix-scroll-area-viewport":"",...l,ref:d,style:{overflowX:s.scrollbarXEnabled?"scroll":"hidden",overflowY:s.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,t.jsx)("div",{ref:s.onContentChange,style:{minWidth:"100%",display:"table"},children:i})})]})});E.displayName=j;var C="ScrollAreaScrollbar",P=r.forwardRef((e,n)=>{let{forceMount:o,...i}=e,a=S(C,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:s}=a,u="horizontal"===e.orientation;return r.useEffect(()=>(u?l(!0):s(!0),()=>{u?l(!1):s(!1)}),[u,l,s]),"hover"===a.type?(0,t.jsx)(T,{...i,ref:n,forceMount:o}):"scroll"===a.type?(0,t.jsx)(R,{...i,ref:n,forceMount:o}):"auto"===a.type?(0,t.jsx)(N,{...i,ref:n,forceMount:o}):"always"===a.type?(0,t.jsx)(_,{...i,ref:n}):null});P.displayName=C;var T=r.forwardRef((e,n)=>{let{forceMount:o,...i}=e,a=S(C,e.__scopeScrollArea),[l,s]=r.useState(!1);return r.useEffect(()=>{let e=a.scrollArea,t=0;if(e){let r=()=>{window.clearTimeout(t),s(!0)},n=()=>{t=window.setTimeout(()=>s(!1),a.scrollHideDelay)};return e.addEventListener("pointerenter",r),e.addEventListener("pointerleave",n),()=>{window.clearTimeout(t),e.removeEventListener("pointerenter",r),e.removeEventListener("pointerleave",n)}}},[a.scrollArea,a.scrollHideDelay]),(0,t.jsx)(c.Presence,{present:o||l,children:(0,t.jsx)(N,{"data-state":l?"visible":"hidden",...i,ref:n})})}),R=r.forwardRef((e,n)=>{var o;let{forceMount:i,...a}=e,l=S(C,e.__scopeScrollArea),s="horizontal"===e.orientation,u=K(()=>f("SCROLL_END"),100),[d,f]=(o={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},r.useReducer((e,t)=>o[e][t]??e,"hidden"));return r.useEffect(()=>{if("idle"===d){let e=window.setTimeout(()=>f("HIDE"),l.scrollHideDelay);return()=>window.clearTimeout(e)}},[d,l.scrollHideDelay,f]),r.useEffect(()=>{let e=l.viewport,t=s?"scrollLeft":"scrollTop";if(e){let r=e[t],n=()=>{let n=e[t];r!==n&&(f("SCROLL"),u()),r=n};return e.addEventListener("scroll",n),()=>e.removeEventListener("scroll",n)}},[l.viewport,s,f,u]),(0,t.jsx)(c.Presence,{present:i||"hidden"!==d,children:(0,t.jsx)(_,{"data-state":"hidden"===d?"hidden":"visible",...a,ref:n,onPointerEnter:(0,m.composeEventHandlers)(e.onPointerEnter,()=>f("POINTER_ENTER")),onPointerLeave:(0,m.composeEventHandlers)(e.onPointerLeave,()=>f("POINTER_LEAVE"))})})}),N=r.forwardRef((e,n)=>{let o=S(C,e.__scopeScrollArea),{forceMount:i,...a}=e,[l,s]=r.useState(!1),u="horizontal"===e.orientation,d=K(()=>{if(o.viewport){let e=o.viewport.offsetWidth<o.viewport.scrollWidth,t=o.viewport.offsetHeight<o.viewport.scrollHeight;s(u?e:t)}},10);return q(o.viewport,d),q(o.content,d),(0,t.jsx)(c.Presence,{present:i||l,children:(0,t.jsx)(_,{"data-state":l?"visible":"hidden",...a,ref:n})})}),_=r.forwardRef((e,n)=>{let{orientation:o="vertical",...i}=e,a=S(C,e.__scopeScrollArea),l=r.useRef(null),s=r.useRef(0),[u,c]=r.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),d=$(u.viewport,u.content),f={...i,sizes:u,onSizesChange:c,hasThumb:!!(d>0&&d<1),onThumbChange:e=>l.current=e,onThumbPointerUp:()=>s.current=0,onThumbPointerDown:e=>s.current=e};function p(e,t){return function(e,t,r,n="ltr"){let o=B(r),i=t||o/2,a=r.scrollbar.paddingStart+i,l=r.scrollbar.size-r.scrollbar.paddingEnd-(o-i),s=r.content-r.viewport;return V([a,l],"ltr"===n?[0,s]:[-1*s,0])(e)}(e,s.current,u,t)}return"horizontal"===o?(0,t.jsx)(A,{...f,ref:n,onThumbPositionChange:()=>{if(a.viewport&&l.current){let e=X(a.viewport.scrollLeft,u,a.dir);l.current.style.transform=`translate3d(${e}px, 0, 0)`}},onWheelScroll:e=>{a.viewport&&(a.viewport.scrollLeft=e)},onDragScroll:e=>{a.viewport&&(a.viewport.scrollLeft=p(e,a.dir))}}):"vertical"===o?(0,t.jsx)(L,{...f,ref:n,onThumbPositionChange:()=>{if(a.viewport&&l.current){let e=X(a.viewport.scrollTop,u);l.current.style.transform=`translate3d(0, ${e}px, 0)`}},onWheelScroll:e=>{a.viewport&&(a.viewport.scrollTop=e)},onDragScroll:e=>{a.viewport&&(a.viewport.scrollTop=p(e))}}):null}),A=r.forwardRef((e,n)=>{let{sizes:o,onSizesChange:i,...a}=e,l=S(C,e.__scopeScrollArea),[s,u]=r.useState(),c=r.useRef(null),d=(0,f.useComposedRefs)(n,c,l.onScrollbarXChange);return r.useEffect(()=>{c.current&&u(getComputedStyle(c.current))},[c]),(0,t.jsx)(M,{"data-orientation":"horizontal",...a,ref:d,sizes:o,style:{bottom:0,left:"rtl"===l.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===l.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":B(o)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,r)=>{if(l.viewport){var n,o;let i=l.viewport.scrollLeft+t.deltaX;e.onWheelScroll(i),n=i,o=r,n>0&&n<o&&t.preventDefault()}},onResize:()=>{c.current&&l.viewport&&s&&i({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:W(s.paddingLeft),paddingEnd:W(s.paddingRight)}})}})}),L=r.forwardRef((e,n)=>{let{sizes:o,onSizesChange:i,...a}=e,l=S(C,e.__scopeScrollArea),[s,u]=r.useState(),c=r.useRef(null),d=(0,f.useComposedRefs)(n,c,l.onScrollbarYChange);return r.useEffect(()=>{c.current&&u(getComputedStyle(c.current))},[c]),(0,t.jsx)(M,{"data-orientation":"vertical",...a,ref:d,sizes:o,style:{top:0,right:"ltr"===l.dir?0:void 0,left:"rtl"===l.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":B(o)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,r)=>{if(l.viewport){var n,o;let i=l.viewport.scrollTop+t.deltaY;e.onWheelScroll(i),n=i,o=r,n>0&&n<o&&t.preventDefault()}},onResize:()=>{c.current&&l.viewport&&s&&i({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:W(s.paddingTop),paddingEnd:W(s.paddingBottom)}})}})}),[k,O]=g(C),M=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,sizes:i,hasThumb:a,onThumbChange:l,onThumbPointerUp:s,onThumbPointerDown:c,onThumbPositionChange:d,onDragScroll:h,onWheelScroll:v,onResize:b,...g}=e,w=S(C,o),[y,x]=r.useState(null),j=(0,f.useComposedRefs)(n,e=>x(e)),E=r.useRef(null),P=r.useRef(""),T=w.viewport,R=i.content-i.viewport,N=(0,p.useCallbackRef)(v),_=(0,p.useCallbackRef)(d),A=K(b,10);function L(e){E.current&&h({x:e.clientX-E.current.left,y:e.clientY-E.current.top})}return r.useEffect(()=>{let e=e=>{let t=e.target;y?.contains(t)&&N(e,R)};return document.addEventListener("wheel",e,{passive:!1}),()=>document.removeEventListener("wheel",e,{passive:!1})},[T,y,R,N]),r.useEffect(_,[i,_]),q(y,A),q(w.content,A),(0,t.jsx)(k,{scope:o,scrollbar:y,hasThumb:a,onThumbChange:(0,p.useCallbackRef)(l),onThumbPointerUp:(0,p.useCallbackRef)(s),onThumbPositionChange:_,onThumbPointerDown:(0,p.useCallbackRef)(c),children:(0,t.jsx)(u.Primitive.div,{...g,ref:j,style:{position:"absolute",...g.style},onPointerDown:(0,m.composeEventHandlers)(e.onPointerDown,e=>{0===e.button&&(e.target.setPointerCapture(e.pointerId),E.current=y.getBoundingClientRect(),P.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",w.viewport&&(w.viewport.style.scrollBehavior="auto"),L(e))}),onPointerMove:(0,m.composeEventHandlers)(e.onPointerMove,L),onPointerUp:(0,m.composeEventHandlers)(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=P.current,w.viewport&&(w.viewport.style.scrollBehavior=""),E.current=null})})})}),I="ScrollAreaThumb",D=r.forwardRef((e,r)=>{let{forceMount:n,...o}=e,i=O(I,e.__scopeScrollArea);return(0,t.jsx)(c.Presence,{present:n||i.hasThumb,children:(0,t.jsx)(U,{ref:r,...o})})}),U=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,style:i,...a}=e,l=S(I,o),s=O(I,o),{onThumbPositionChange:c}=s,d=(0,f.useComposedRefs)(n,e=>s.onThumbChange(e)),p=r.useRef(void 0),h=K(()=>{p.current&&(p.current(),p.current=void 0)},100);return r.useEffect(()=>{let e=l.viewport;if(e){let t=()=>{h(),p.current||(p.current=Y(e,c),c())};return c(),e.addEventListener("scroll",t),()=>e.removeEventListener("scroll",t)}},[l.viewport,h,c]),(0,t.jsx)(u.Primitive.div,{"data-state":s.hasThumb?"visible":"hidden",...a,ref:d,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...i},onPointerDownCapture:(0,m.composeEventHandlers)(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),r=e.clientX-t.left,n=e.clientY-t.top;s.onThumbPointerDown({x:r,y:n})}),onPointerUp:(0,m.composeEventHandlers)(e.onPointerUp,s.onThumbPointerUp)})});D.displayName=I;var z="ScrollAreaCorner",H=r.forwardRef((e,r)=>{let n=S(z,e.__scopeScrollArea),o=!!(n.scrollbarX&&n.scrollbarY);return"scroll"!==n.type&&o?(0,t.jsx)(F,{...e,ref:r}):null});H.displayName=z;var F=r.forwardRef((e,n)=>{let{__scopeScrollArea:o,...i}=e,a=S(z,o),[l,s]=r.useState(0),[c,d]=r.useState(0),f=!!(l&&c);return q(a.scrollbarX,()=>{let e=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(e),d(e)}),q(a.scrollbarY,()=>{let e=a.scrollbarY?.offsetWidth||0;a.onCornerWidthChange(e),s(e)}),f?(0,t.jsx)(u.Primitive.div,{...i,ref:n,style:{width:l,height:c,position:"absolute",right:"ltr"===a.dir?0:void 0,left:"rtl"===a.dir?0:void 0,bottom:0,...e.style}}):null});function W(e){return e?parseInt(e,10):0}function $(e,t){let r=e/t;return isNaN(r)?0:r}function B(e){let t=$(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd;return Math.max((e.scrollbar.size-r)*t,18)}function X(e,t,r="ltr"){let n=B(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,i=t.scrollbar.size-o,a=t.content-t.viewport,l=function(e,[t,r]){return Math.min(r,Math.max(t,e))}(e,"ltr"===r?[0,a]:[-1*a,0]);return V([0,a],[0,i-n])(l)}function V(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}var Y=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return!function o(){let i={left:e.scrollLeft,top:e.scrollTop},a=r.left!==i.left,l=r.top!==i.top;(a||l)&&t(),r=i,n=window.requestAnimationFrame(o)}(),()=>window.cancelAnimationFrame(n)};function K(e,t){let n=(0,p.useCallbackRef)(e),o=r.useRef(0);return r.useEffect(()=>()=>window.clearTimeout(o.current),[]),r.useCallback(()=>{window.clearTimeout(o.current),o.current=window.setTimeout(n,t)},[n,t])}function q(e,t){let r=(0,p.useCallbackRef)(t);(0,v.useLayoutEffect)(()=>{let t=0;if(e){let n=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(r)});return n.observe(e),()=>{window.cancelAnimationFrame(t),n.unobserve(e)}}},[e,r])}e.s(["Corner",()=>H,"Root",()=>x,"ScrollArea",()=>x,"ScrollAreaCorner",()=>H,"ScrollAreaScrollbar",()=>P,"ScrollAreaThumb",()=>D,"ScrollAreaViewport",()=>E,"Scrollbar",()=>P,"Thumb",()=>D,"Viewport",()=>E,"createScrollAreaScope",()=>w],87516);var Q=e.i(87516),Q=Q,G=e.i(31777);function J({className:e,children:r,...n}){return(0,t.jsxs)(Q.Root,{"data-slot":"scroll-area",className:(0,G.cn)("relative",e),...n,children:[(0,t.jsx)(Q.Viewport,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:r}),(0,t.jsx)(Z,{}),(0,t.jsx)(Q.Corner,{})]})}function Z({className:e,orientation:r="vertical",...n}){return(0,t.jsx)(Q.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:r,className:(0,G.cn)("flex touch-none p-px transition-colors select-none","vertical"===r&&"h-full w-2.5 border-l border-l-transparent","horizontal"===r&&"h-2.5 flex-col border-t border-t-transparent",e),...n,children:(0,t.jsx)(Q.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}e.i(90491);var ee=e.i(90798);e.i(85462);var et=e.i(26506);e.i(92233);var er=e.i(10025);e.i(8356);var en=e.i(71045);e.i(78788);var eo=e.i(91495);e.i(72028);var ei=e.i(41506),ea=e.i(40327);function el({features:e,onNewFeature:i,onFeatureClick:u,onFeaturesFolderClick:c,onFeaturesMenuClick:d}){let f=(0,o.usePathname)(),{state:p}=(0,n.useSidebar)(),{mounted:h,visible:v}=function(e,t){let[n,o]=(0,r.useState)(!e),[i,a]=(0,r.useState)(!e);return(0,r.useEffect)(()=>{if(!e){o(!0);let e=requestAnimationFrame(()=>a(!0));return()=>cancelAnimationFrame(e)}a(!1);let t=window.setTimeout(()=>o(!1),200);return()=>window.clearTimeout(t)},[e,200]),{mounted:n,visible:i}}("collapsed"===p,0),m=ea.featureStatusOrder.map(t=>{let{label:r}=ea.featureStatusConfig[t],n=e.filter(e=>e.status===t);return{key:t,label:r,items:n}});return(0,t.jsxs)(n.Sidebar,{"data-testid":"app-sidebar",collapsible:"icon",children:[(0,t.jsx)(n.SidebarHeader,{children:(0,t.jsxs)(n.SidebarMenu,{children:[(0,t.jsx)(n.SidebarMenuItem,{children:(0,t.jsxs)("div",{className:"flex h-8 items-center group-data-[collapsible=icon]:justify-center",children:[h?(0,t.jsxs)("div",{className:["flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2 transition-opacity duration-200 ease-out",v?"opacity-100":"opacity-0"].join(" "),"aria-hidden":!v,children:[(0,t.jsx)(er.ShepLogo,{className:"shrink-0",size:20}),(0,t.jsx)("span",{className:"truncate text-sm font-semibold tracking-tight",children:"Shep"})]}):null,(0,t.jsx)(et.SidebarCollapseToggle,{className:"shrink-0 transition-all duration-200"})]})}),(0,t.jsx)(ee.SidebarNavItem,{icon:a,label:"Control Center",href:"/",active:"/"===f}),(0,t.jsx)(ee.SidebarNavItem,{icon:l.Wrench,label:"Tools",href:"/tools",active:"/tools"===f})]})}),(0,t.jsx)(n.SidebarContent,{children:h?(0,t.jsxs)("div",{className:["min-w-0 overflow-hidden transition-opacity duration-200 ease-out [&_[data-sidebar=group-label]]:!mt-0 [&_[data-sidebar=group-label]]:!opacity-100 [&_[data-sidebar=group-label]]:!transition-none",v?"opacity-100":"opacity-0"].join(" "),children:[(0,t.jsx)(ei.SidebarSectionHeader,{label:"Features",onFolderClick:c,onMenuClick:d}),(0,t.jsx)(J,{children:m.map(({key:e,label:r,items:n})=>n.length>0?(0,t.jsx)(eo.FeatureStatusGroup,{label:r,count:n.length,children:n.map(e=>(0,t.jsx)(en.FeatureListItem,{name:e.name,status:e.status,startedAt:e.startedAt,duration:e.duration,onClick:u?()=>u(e.name):void 0},e.name))},e):null)})]}):null}),(0,t.jsx)(n.SidebarFooter,{children:(0,t.jsx)(n.SidebarMenu,{children:(0,t.jsx)(n.SidebarMenuItem,{children:(0,t.jsxs)(n.SidebarMenuButton,{onClick:i,tooltip:"New feature",children:[(0,t.jsx)(s.Plus,{}),(0,t.jsx)("span",{children:"New feature"})]})})})}),(0,t.jsx)(n.SidebarRail,{})]})}e.i(1354);var es=e.i(17845);e.i(53777);var eu=e.i(25732);let ec=(0,i.default)("volume-2",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]]),ed=(0,i.default)("volume-off",[["path",{d:"M16 9a5 5 0 0 1 .95 2.293",key:"1fgyg8"}],["path",{d:"M19.364 5.636a9 9 0 0 1 1.889 9.96",key:"l3zxae"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"m7 7-.587.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298V11",key:"1gbwow"}],["path",{d:"M9.828 4.172A.686.686 0 0 1 11 4.657v.686",key:"s2je0y"}]]);var ef=e.i(35364),ep=e.i(73709);function eh(){let{enabled:e,toggle:r}=(0,ep.useSoundEnabled)();return(0,t.jsxs)(ef.Button,{variant:"ghost",size:"icon",onClick:r,"aria-label":e?"Mute sounds":"Unmute sounds",children:[e?(0,t.jsx)(ec,{className:"h-5 w-5"}):(0,t.jsx)(ed,{className:"h-5 w-5"}),(0,t.jsx)("span",{className:"sr-only",children:"Toggle sound"})]})}var ev=e.i(39443),em=e.i(60112),eb=e.i(17406),eg=e.i(17607);let ew={[eb.NotificationSeverity.Success]:"success",[eb.NotificationSeverity.Error]:"error",[eb.NotificationSeverity.Warning]:"warning",[eb.NotificationSeverity.Info]:"info"},ey={[eb.NotificationSeverity.Success]:"celebration",[eb.NotificationSeverity.Error]:"caution",[eb.NotificationSeverity.Warning]:"notification",[eb.NotificationSeverity.Info]:"button"};function eS({children:e}){!function(){let{events:e}=(0,ev.useAgentEventsContext)(),t=(0,eg.useSound)("celebration",{volume:.5}),n=(0,eg.useSound)("caution",{volume:.5}),o=(0,eg.useSound)("notification",{volume:.5}),i=(0,eg.useSound)("button",{volume:.5}),a=(0,r.useMemo)(()=>({celebration:t,caution:n,notification:o,button:i}),[t,n,o,i]),[l,s]=(0,r.useState)(()=>void 0===globalThis.Notification?"default":globalThis.Notification.permission),u=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(e.length<=u.current)return;let t=e.slice(u.current);for(let r of(u.current=e.length,t)){if(r.severity!==eb.NotificationSeverity.Error&&r.severity!==eb.NotificationSeverity.Warning&&r.severity!==eb.NotificationSeverity.Success)continue;!function(e){let t=ew[e.severity]??"info",r=e.eventType===eb.NotificationEventType.WaitingApproval;em.toast[t](e.featureName,{description:e.message,...r&&{action:{label:"Review",onClick:()=>{window.dispatchEvent(new CustomEvent("shep:select-feature",{detail:{featureId:e.featureId}}))}}}})}(r),globalThis.Notification?.permission==="granted"&&new Notification(`Shep: ${r.featureName}`,{body:r.message,icon:"/favicon-light.svg"});let e=ey[r.severity];a[e]?.play()}},[e,a]),(0,r.useCallback)(async()=>{void 0===globalThis.Notification||s(await globalThis.Notification.requestPermission())},[])}();let o=(0,r.useCallback)(()=>{window.dispatchEvent(new CustomEvent("shep:open-create-drawer"))},[]),i=(0,r.useCallback)(e=>{window.dispatchEvent(new CustomEvent("shep:add-repository",{detail:{path:e}}))},[]);return(0,t.jsxs)(n.SidebarProvider,{children:[(0,t.jsx)(el,{features:[],onNewFeature:o}),(0,t.jsx)(n.SidebarInset,{children:(0,t.jsxs)("div",{className:"relative h-full",children:[(0,t.jsxs)("div",{className:"absolute top-3 right-3 z-50 flex gap-1",children:[(0,t.jsx)(es.AddRepositoryButton,{onSelect:i}),(0,t.jsx)(eh,{}),(0,t.jsx)(eu.ThemeToggle,{})]}),(0,t.jsx)("main",{className:"h-full",children:e})]})})]})}function ex({children:e}){return(0,t.jsx)(ev.AgentEventsProvider,{children:(0,t.jsx)(eS,{children:e})})}e.s(["AppShell",()=>ex],87292)},25251,e=>{"use strict";var t=e.i(20314),r=e.i(60112);let n=({...e})=>(0,t.jsx)(r.Toaster,{className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...e});e.s(["Toaster",()=>n])}]);
|