@shepai/cli 1.104.1 → 1.105.0-pr313.ca72e53

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.
Files changed (137) hide show
  1. package/apis/json-schema/FeatureFlags.yaml +1 -1
  2. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -1
  3. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.d.ts.map +1 -1
  4. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.js +6 -1
  5. package/dist/src/presentation/web/hooks/feature-flags-context.js +1 -1
  6. package/dist/src/presentation/web/lib/feature-flags.d.ts.map +1 -1
  7. package/dist/src/presentation/web/lib/feature-flags.js +3 -1
  8. package/dist/tsconfig.build.tsbuildinfo +1 -1
  9. package/package.json +1 -1
  10. package/web/.next/BUILD_ID +1 -1
  11. package/web/.next/build-manifest.json +2 -2
  12. package/web/.next/fallback-build-manifest.json +2 -2
  13. package/web/.next/prerender-manifest.json +3 -3
  14. package/web/.next/required-server-files.js +3 -3
  15. package/web/.next/required-server-files.json +3 -3
  16. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +20 -20
  17. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  18. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  19. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +25 -25
  20. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  21. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  22. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +25 -25
  23. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  24. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  25. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +18 -18
  26. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  27. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  28. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +20 -20
  29. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  30. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  31. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +25 -25
  32. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  33. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  34. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +25 -25
  35. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  36. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  37. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +18 -18
  38. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  39. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  40. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +18 -18
  41. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  42. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  43. package/web/.next/server/app/_global-error.html +2 -2
  44. package/web/.next/server/app/_global-error.rsc +1 -1
  45. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  46. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  47. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  48. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  49. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  50. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  51. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  52. package/web/.next/server/app/settings/page/server-reference-manifest.json +5 -5
  53. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  54. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  55. package/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
  56. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  57. package/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
  58. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  59. package/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
  60. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  61. package/web/.next/server/chunks/[root-of-the-server]__f47bb8a5._.js +1 -1
  62. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  63. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  64. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_0a7546ed.js +1 -1
  65. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_0a7546ed.js.map +1 -1
  66. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_978cbb4c.js +1 -1
  67. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_978cbb4c.js.map +1 -1
  68. package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js +1 -1
  69. package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js.map +1 -1
  70. package/web/.next/server/chunks/ssr/[root-of-the-server]__24dd0927._.js +2 -2
  71. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  72. package/web/.next/server/chunks/ssr/[root-of-the-server]__51fc98b0._.js +1 -1
  73. package/web/.next/server/chunks/ssr/[root-of-the-server]__51fc98b0._.js.map +1 -1
  74. package/web/.next/server/chunks/ssr/[root-of-the-server]__57f37786._.js +1 -1
  75. package/web/.next/server/chunks/ssr/[root-of-the-server]__57f37786._.js.map +1 -1
  76. package/web/.next/server/chunks/ssr/[root-of-the-server]__5d87af2e._.js +1 -1
  77. package/web/.next/server/chunks/ssr/[root-of-the-server]__708dcad1._.js +1 -1
  78. package/web/.next/server/chunks/ssr/[root-of-the-server]__708dcad1._.js.map +1 -1
  79. package/web/.next/server/chunks/ssr/[root-of-the-server]__845a9d2a._.js +1 -1
  80. package/web/.next/server/chunks/ssr/[root-of-the-server]__845a9d2a._.js.map +1 -1
  81. package/web/.next/server/chunks/ssr/[root-of-the-server]__89e8a5cc._.js +2 -2
  82. package/web/.next/server/chunks/ssr/[root-of-the-server]__8e002910._.js +1 -1
  83. package/web/.next/server/chunks/ssr/[root-of-the-server]__8e002910._.js.map +1 -1
  84. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +2 -2
  85. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +1 -1
  86. package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js +1 -1
  87. package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js.map +1 -1
  88. package/web/.next/server/chunks/ssr/_135edb9c._.js +1 -1
  89. package/web/.next/server/chunks/ssr/_135edb9c._.js.map +1 -1
  90. package/web/.next/server/chunks/ssr/{_938693b3._.js → _3bbb2882._.js} +2 -2
  91. package/web/.next/server/chunks/ssr/{_938693b3._.js.map → _3bbb2882._.js.map} +1 -1
  92. package/web/.next/server/chunks/ssr/{_f8bb6b9b._.js → _49dcce36._.js} +2 -2
  93. package/web/.next/server/chunks/ssr/{_f8bb6b9b._.js.map → _49dcce36._.js.map} +1 -1
  94. package/web/.next/server/chunks/ssr/_8dacd1e7._.js +1 -1
  95. package/web/.next/server/chunks/ssr/_8dacd1e7._.js.map +1 -1
  96. package/web/.next/server/chunks/ssr/_a37f5f18._.js +1 -1
  97. package/web/.next/server/chunks/ssr/_a37f5f18._.js.map +1 -1
  98. package/web/.next/server/chunks/ssr/{_87bb5efc._.js → _c12d0f89._.js} +2 -2
  99. package/web/.next/server/chunks/ssr/{_87bb5efc._.js.map → _c12d0f89._.js.map} +1 -1
  100. package/web/.next/server/chunks/ssr/_cc77a143._.js +1 -1
  101. package/web/.next/server/chunks/ssr/_cc77a143._.js.map +1 -1
  102. package/web/.next/server/chunks/ssr/_e6f2da4f._.js +1 -1
  103. package/web/.next/server/chunks/ssr/_e6f2da4f._.js.map +1 -1
  104. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  105. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  106. package/web/.next/server/chunks/ssr/src_presentation_web_7275ce5d._.js +2 -2
  107. package/web/.next/server/chunks/ssr/src_presentation_web_7275ce5d._.js.map +1 -1
  108. package/web/.next/server/chunks/ssr/src_presentation_web_758dfa10._.js +2 -2
  109. package/web/.next/server/chunks/ssr/src_presentation_web_758dfa10._.js.map +1 -1
  110. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_84803221.js +1 -1
  111. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_84803221.js.map +1 -1
  112. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js +1 -1
  113. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js.map +1 -1
  114. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js +1 -1
  115. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js.map +1 -1
  116. package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js +1 -1
  117. package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js.map +1 -1
  118. package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js +1 -1
  119. package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js.map +1 -1
  120. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  121. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  122. package/web/.next/server/pages/500.html +2 -2
  123. package/web/.next/server/server-reference-manifest.js +1 -1
  124. package/web/.next/server/server-reference-manifest.json +30 -30
  125. package/web/.next/static/chunks/{39c99422e0a6dd93.js → 12cd12e2025602ec.js} +1 -1
  126. package/web/.next/static/chunks/{12c9922e7f494b51.js → 19652915bbe81412.js} +1 -1
  127. package/web/.next/static/chunks/{0ef91bcc51e23985.js → 227472dc5ca2889d.js} +1 -1
  128. package/web/.next/static/chunks/{5d9a68c730725d92.js → 2e462f40714e597d.js} +1 -1
  129. package/web/.next/static/chunks/{8c8860362bb7379c.js → 86b18c5e987491b5.js} +1 -1
  130. package/web/.next/static/chunks/{b19c1d7861f50125.js → 98b6f71df345f2b7.js} +1 -1
  131. package/web/.next/static/chunks/{f94a3b46b58e0924.js → df3ed42d7f981a50.js} +1 -1
  132. package/web/.next/static/chunks/{f25c7829f1ce4bb6.js → f2e1256ac6aae438.js} +2 -2
  133. package/web/.next/static/chunks/{05d3ec130f6fc596.js → f7225589a9dd6a07.js} +2 -2
  134. package/web/.next/static/chunks/{d7e50dcee437e450.js → f73496892f3e2b57.js} +1 -1
  135. /package/web/.next/static/{PFRJT3ptWvDx2wYGtkapS → Cyq91zReDpi2vwEDA2MW-}/_buildManifest.js +0 -0
  136. /package/web/.next/static/{PFRJT3ptWvDx2wYGtkapS → Cyq91zReDpi2vwEDA2MW-}/_clientMiddlewareManifest.json +0 -0
  137. /package/web/.next/static/{PFRJT3ptWvDx2wYGtkapS → Cyq91zReDpi2vwEDA2MW-}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- module.exports=[33244,a=>{"use strict";let b="__shepSettings";function c(){let a=globalThis[b];if(null!=a)return a;let c=process[b];return null!=c?c:null}function d(a){globalThis[b]=a,process[b]=a}function e(a){if(null!==c())throw Error("Settings already initialized. Cannot re-initialize.");d(a)}function f(){let a=c();if(null===a)throw Error("Settings not initialized. Call initializeSettings() during CLI bootstrap.");return a}function g(){return null!==c()}function h(a){if(null===c())throw Error("Settings not initialized. Cannot update before initialization.");d(a)}function i(){d(null)}a.s(["getSettings",()=>f,"hasSettings",()=>g,"initializeSettings",()=>e,"resetSettings",()=>i,"updateSettings",()=>h])},40848,a=>{"use strict";var b=a.i(33244);function c(a){return"true"===a||"1"===a}function d(){try{if((0,b.hasSettings)()){let a=(0,b.getSettings)().featureFlags;if(a)return{skills:a.skills,envDeploy:a.envDeploy,debug:a.debug}}}catch{}return{skills:c(process.env.NEXT_PUBLIC_FLAG_SKILLS),envDeploy:c(process.env.NEXT_PUBLIC_FLAG_ENV_DEPLOY),debug:!1}}a.s(["featureFlags",0,{get skills(){return d().skills},get envDeploy(){return d().envDeploy},get debug(){return d().debug}},"getFeatureFlags",()=>d])},2080,a=>{"use strict";a.s(["AppShell",()=>b]);let b=(0,a.i(28478).registerClientReference)(function(){throw Error("Attempted to call AppShell() from the server but AppShell 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.")},"[project]/src/presentation/web/components/layouts/app-shell/app-shell.tsx <module evaluation>","AppShell")},34168,a=>{"use strict";a.s(["AppShell",()=>b]);let b=(0,a.i(28478).registerClientReference)(function(){throw Error("Attempted to call AppShell() from the server but AppShell 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.")},"[project]/src/presentation/web/components/layouts/app-shell/app-shell.tsx","AppShell")},24028,a=>{"use strict";a.i(2080);var b=a.i(34168);a.n(b)},1834,a=>{"use strict";a.s(["Toaster",()=>b]);let b=(0,a.i(28478).registerClientReference)(function(){throw Error("Attempted to call Toaster() from the server but Toaster 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.")},"[project]/src/presentation/web/components/ui/sonner.tsx <module evaluation>","Toaster")},11900,a=>{"use strict";a.s(["Toaster",()=>b]);let b=(0,a.i(28478).registerClientReference)(function(){throw Error("Attempted to call Toaster() from the server but Toaster 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.")},"[project]/src/presentation/web/components/ui/sonner.tsx","Toaster")},87291,a=>{"use strict";a.i(1834);var b=a.i(11900);a.n(b)},54856,a=>{"use strict";a.s(["FeatureFlagsProvider",()=>c,"useFeatureFlags",()=>d]);var b=a.i(28478);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call FeatureFlagsProvider() from the server but FeatureFlagsProvider 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.")},"[project]/src/presentation/web/hooks/feature-flags-context.tsx <module evaluation>","FeatureFlagsProvider"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call useFeatureFlags() from the server but useFeatureFlags 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.")},"[project]/src/presentation/web/hooks/feature-flags-context.tsx <module evaluation>","useFeatureFlags")},59259,a=>{"use strict";a.s(["FeatureFlagsProvider",()=>c,"useFeatureFlags",()=>d]);var b=a.i(28478);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call FeatureFlagsProvider() from the server but FeatureFlagsProvider 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.")},"[project]/src/presentation/web/hooks/feature-flags-context.tsx","FeatureFlagsProvider"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call useFeatureFlags() from the server but useFeatureFlags 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.")},"[project]/src/presentation/web/hooks/feature-flags-context.tsx","useFeatureFlags")},74701,a=>{"use strict";a.i(54856);var b=a.i(59259);a.n(b)},72884,a=>{"use strict";var b=a.i(92807),c=a.i(24028),d=a.i(87291),e=a.i(40848),f=a.i(74701);function g({children:a}){return(0,b.jsxs)("html",{lang:"en",suppressHydrationWarning:!0,children:[(0,b.jsx)("head",{children:(0,b.jsx)("script",{dangerouslySetInnerHTML:{__html:`
1
+ module.exports=[33244,a=>{"use strict";let b="__shepSettings";function c(){let a=globalThis[b];if(null!=a)return a;let c=process[b];return null!=c?c:null}function d(a){globalThis[b]=a,process[b]=a}function e(a){if(null!==c())throw Error("Settings already initialized. Cannot re-initialize.");d(a)}function f(){let a=c();if(null===a)throw Error("Settings not initialized. Call initializeSettings() during CLI bootstrap.");return a}function g(){return null!==c()}function h(a){if(null===c())throw Error("Settings not initialized. Cannot update before initialization.");d(a)}function i(){d(null)}a.s(["getSettings",()=>f,"hasSettings",()=>g,"initializeSettings",()=>e,"resetSettings",()=>i,"updateSettings",()=>h])},40848,a=>{"use strict";var b=a.i(33244);function c(a){return"true"===a||"1"===a}function d(){try{if((0,b.hasSettings)()){let a=(0,b.getSettings)().featureFlags;if(a)return{skills:a.skills,envDeploy:a.envDeploy,debug:a.debug}}}catch{}return{skills:c(process.env.NEXT_PUBLIC_FLAG_SKILLS),envDeploy:void 0===process.env.NEXT_PUBLIC_FLAG_ENV_DEPLOY||c(process.env.NEXT_PUBLIC_FLAG_ENV_DEPLOY),debug:!1}}a.s(["featureFlags",0,{get skills(){return d().skills},get envDeploy(){return d().envDeploy},get debug(){return d().debug}},"getFeatureFlags",()=>d])},2080,a=>{"use strict";a.s(["AppShell",()=>b]);let b=(0,a.i(28478).registerClientReference)(function(){throw Error("Attempted to call AppShell() from the server but AppShell 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.")},"[project]/src/presentation/web/components/layouts/app-shell/app-shell.tsx <module evaluation>","AppShell")},34168,a=>{"use strict";a.s(["AppShell",()=>b]);let b=(0,a.i(28478).registerClientReference)(function(){throw Error("Attempted to call AppShell() from the server but AppShell 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.")},"[project]/src/presentation/web/components/layouts/app-shell/app-shell.tsx","AppShell")},24028,a=>{"use strict";a.i(2080);var b=a.i(34168);a.n(b)},1834,a=>{"use strict";a.s(["Toaster",()=>b]);let b=(0,a.i(28478).registerClientReference)(function(){throw Error("Attempted to call Toaster() from the server but Toaster 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.")},"[project]/src/presentation/web/components/ui/sonner.tsx <module evaluation>","Toaster")},11900,a=>{"use strict";a.s(["Toaster",()=>b]);let b=(0,a.i(28478).registerClientReference)(function(){throw Error("Attempted to call Toaster() from the server but Toaster 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.")},"[project]/src/presentation/web/components/ui/sonner.tsx","Toaster")},87291,a=>{"use strict";a.i(1834);var b=a.i(11900);a.n(b)},54856,a=>{"use strict";a.s(["FeatureFlagsProvider",()=>c,"useFeatureFlags",()=>d]);var b=a.i(28478);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call FeatureFlagsProvider() from the server but FeatureFlagsProvider 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.")},"[project]/src/presentation/web/hooks/feature-flags-context.tsx <module evaluation>","FeatureFlagsProvider"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call useFeatureFlags() from the server but useFeatureFlags 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.")},"[project]/src/presentation/web/hooks/feature-flags-context.tsx <module evaluation>","useFeatureFlags")},59259,a=>{"use strict";a.s(["FeatureFlagsProvider",()=>c,"useFeatureFlags",()=>d]);var b=a.i(28478);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call FeatureFlagsProvider() from the server but FeatureFlagsProvider 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.")},"[project]/src/presentation/web/hooks/feature-flags-context.tsx","FeatureFlagsProvider"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call useFeatureFlags() from the server but useFeatureFlags 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.")},"[project]/src/presentation/web/hooks/feature-flags-context.tsx","useFeatureFlags")},74701,a=>{"use strict";a.i(54856);var b=a.i(59259);a.n(b)},72884,a=>{"use strict";var b=a.i(92807),c=a.i(24028),d=a.i(87291),e=a.i(40848),f=a.i(74701);function g({children:a}){return(0,b.jsxs)("html",{lang:"en",suppressHydrationWarning:!0,children:[(0,b.jsx)("head",{children:(0,b.jsx)("script",{dangerouslySetInnerHTML:{__html:`
2
2
  (function() {
3
3
  try {
4
4
  const theme = localStorage.getItem('shep-theme');
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../packages/core/src/infrastructure/services/settings.service.ts","../../../../../../../src/presentation/web/lib/feature-flags.ts","../../../../../../../src/presentation/web/components/layouts/app-shell/app-shell.tsx/__nextjs-internal-proxy.mjs","../../../../../../../src/presentation/web/components/ui/sonner.tsx/__nextjs-internal-proxy.mjs","../../../../../../../src/presentation/web/hooks/feature-flags-context.tsx/__nextjs-internal-proxy.mjs","../../../../../../../src/presentation/web/components/layouts/app-shell/index.ts","../../../../../../../src/presentation/web/app/layout.tsx"],"sourcesContent":["/**\n * Settings Service\n *\n * Provides global access to application settings within the CLI.\n * Uses globalThis/process storage so the singleton survives Turbopack\n * module re-evaluations in Next.js API routes.\n *\n * Usage:\n * ```typescript\n * import { getSettings } from './infrastructure/services/settings.service.js';\n *\n * const settings = getSettings();\n * console.log(settings.models.default); // 'claude-sonnet-4-6'\n * ```\n */\n\nimport type { Settings } from '../../domain/generated/output.js';\n\n/** The globalThis / process key for the settings singleton. */\nconst SHEP_SETTINGS_KEY = '__shepSettings';\n\n/** Read the settings instance from globalThis, falling back to process. */\nfunction readSettings(): Settings | null {\n const fromGlobal = (globalThis as Record<string, unknown>)[SHEP_SETTINGS_KEY];\n if (fromGlobal != null) return fromGlobal as Settings;\n\n const fromProcess = (process as unknown as Record<string, unknown>)[SHEP_SETTINGS_KEY];\n if (fromProcess != null) return fromProcess as Settings;\n\n return null;\n}\n\n/** Write the settings instance to both globalThis and process. */\nfunction writeSettings(value: Settings | null): void {\n (globalThis as Record<string, unknown>)[SHEP_SETTINGS_KEY] = value;\n (process as unknown as Record<string, unknown>)[SHEP_SETTINGS_KEY] = value;\n}\n\n/**\n * Initialize the settings service with loaded settings.\n * Must be called once during CLI bootstrap.\n *\n * @param settings - The initialized settings\n * @throws Error if settings are already initialized\n */\nexport function initializeSettings(settings: Settings): void {\n if (readSettings() !== null) {\n throw new Error('Settings already initialized. Cannot re-initialize.');\n }\n\n writeSettings(settings);\n}\n\n/**\n * Get the current application settings.\n *\n * @returns Current settings instance\n * @throws Error if settings haven't been initialized yet\n *\n * @example\n * ```typescript\n * const settings = getSettings();\n * console.log(settings.system.logLevel); // 'info'\n * ```\n */\nexport function getSettings(): Settings {\n const instance = readSettings();\n if (instance === null) {\n throw new Error('Settings not initialized. Call initializeSettings() during CLI bootstrap.');\n }\n\n return instance;\n}\n\n/**\n * Check if settings have been initialized.\n *\n * @returns True if settings are initialized, false otherwise\n */\nexport function hasSettings(): boolean {\n return readSettings() !== null;\n}\n\n/**\n * Update the settings singleton with new values.\n * Used after a successful database write to refresh the in-memory\n * singleton so the rest of the application sees the updated values\n * without a full page reload.\n *\n * @param settings - The updated settings to store\n * @throws Error if settings haven't been initialized yet\n */\nexport function updateSettings(settings: Settings): void {\n if (readSettings() === null) {\n throw new Error('Settings not initialized. Cannot update before initialization.');\n }\n\n writeSettings(settings);\n}\n\n/**\n * Reset settings instance (for testing purposes only).\n * DO NOT use in production code.\n *\n * @internal\n */\nexport function resetSettings(): void {\n writeSettings(null);\n}\n","/**\n * Feature flags for the web UI.\n *\n * DB-primary resolution: reads from Settings.featureFlags when available,\n * falls back to NEXT_PUBLIC_ environment variables.\n * The debug flag is DB-only (no env var fallback).\n */\n\nimport { hasSettings, getSettings } from '@shepai/core/infrastructure/services/settings.service';\n\nfunction isEnabled(envVar: string | undefined): boolean {\n return envVar === 'true' || envVar === '1';\n}\n\nexport interface FeatureFlagsState {\n skills: boolean;\n envDeploy: boolean;\n debug: boolean;\n}\n\nexport function getFeatureFlags(): FeatureFlagsState {\n try {\n if (hasSettings()) {\n const flags = getSettings().featureFlags;\n if (flags) {\n return {\n skills: flags.skills,\n envDeploy: flags.envDeploy,\n debug: flags.debug,\n };\n }\n }\n } catch {\n // Settings not initialized (e.g., during build/SSG or client-side hydration)\n }\n\n return {\n skills: isEnabled(process.env.NEXT_PUBLIC_FLAG_SKILLS),\n envDeploy: isEnabled(process.env.NEXT_PUBLIC_FLAG_ENV_DEPLOY),\n debug: false,\n };\n}\n\n/**\n * @deprecated Use getFeatureFlags() instead for DB-primary resolution.\n * Kept for backward compatibility during migration.\n */\nexport const featureFlags = {\n get skills() {\n return getFeatureFlags().skills;\n },\n get envDeploy() {\n return getFeatureFlags().envDeploy;\n },\n get debug() {\n return getFeatureFlags().debug;\n },\n} as const;\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nimport { registerClientReference } from \"react-server-dom-turbopack/server\";\nexport const AppShell = registerClientReference(\n function() { throw new Error(\"Attempted to call AppShell() from the server but AppShell 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.\"); },\n \"[project]/src/presentation/web/components/layouts/app-shell/app-shell.tsx\",\n \"AppShell\",\n);\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nimport { registerClientReference } from \"react-server-dom-turbopack/server\";\nexport const Toaster = registerClientReference(\n function() { throw new Error(\"Attempted to call Toaster() from the server but Toaster 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.\"); },\n \"[project]/src/presentation/web/components/ui/sonner.tsx\",\n \"Toaster\",\n);\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nimport { registerClientReference } from \"react-server-dom-turbopack/server\";\nexport const FeatureFlagsProvider = registerClientReference(\n function() { throw new Error(\"Attempted to call FeatureFlagsProvider() from the server but FeatureFlagsProvider 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.\"); },\n \"[project]/src/presentation/web/hooks/feature-flags-context.tsx\",\n \"FeatureFlagsProvider\",\n);\nexport const useFeatureFlags = registerClientReference(\n function() { throw new Error(\"Attempted to call useFeatureFlags() from the server but useFeatureFlags 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.\"); },\n \"[project]/src/presentation/web/hooks/feature-flags-context.tsx\",\n \"useFeatureFlags\",\n);\n","export { AppShell } from './app-shell';\n","import type { Metadata } from 'next';\nimport '@xyflow/react/dist/base.css';\nimport './globals.css';\nimport { AppShell } from '@/components/layouts/app-shell';\nimport { Toaster } from '@/components/ui/sonner';\nimport { getFeatureFlags } from '@/lib/feature-flags';\nimport { FeatureFlagsProvider } from '@/hooks/feature-flags-context';\n\n/** Force dynamic rendering for all pages since they depend on client-side context. */\nexport const dynamic = 'force-dynamic';\n\nexport const metadata: Metadata = {\n title: 'Shep AI',\n description:\n 'Autonomous AI Native SDLC Platform - Automate the development cycle from idea to deploy',\n icons: [\n {\n rel: 'icon',\n url: '/favicon-light.svg',\n type: 'image/svg+xml',\n media: '(prefers-color-scheme: light)',\n },\n {\n rel: 'icon',\n url: '/favicon-dark.svg',\n type: 'image/svg+xml',\n media: '(prefers-color-scheme: dark)',\n },\n ],\n};\n\nexport default function RootLayout({\n children,\n}: Readonly<{\n children: React.ReactNode;\n}>) {\n return (\n <html lang=\"en\" suppressHydrationWarning>\n <head>\n <script\n dangerouslySetInnerHTML={{\n __html: `\n (function() {\n try {\n const theme = localStorage.getItem('shep-theme');\n const systemDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n if (theme === 'dark' || (theme === 'system' && systemDark) || (!theme && systemDark)) {\n document.documentElement.classList.add('dark');\n }\n } catch (e) {}\n })();\n `,\n }}\n />\n </head>\n <body className=\"min-h-screen antialiased\">\n <FeatureFlagsProvider flags={getFeatureFlags()}>\n <AppShell>{children}</AppShell>\n </FeatureFlagsProvider>\n <Toaster position=\"bottom-center\" />\n </body>\n </html>\n );\n}\n"],"names":[],"mappings":"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","ignoreList":[2,3,4]}
1
+ {"version":3,"sources":["../../../../../../../packages/core/src/infrastructure/services/settings.service.ts","../../../../../../../src/presentation/web/lib/feature-flags.ts","../../../../../../../src/presentation/web/components/layouts/app-shell/app-shell.tsx/__nextjs-internal-proxy.mjs","../../../../../../../src/presentation/web/components/ui/sonner.tsx/__nextjs-internal-proxy.mjs","../../../../../../../src/presentation/web/hooks/feature-flags-context.tsx/__nextjs-internal-proxy.mjs","../../../../../../../src/presentation/web/components/layouts/app-shell/index.ts","../../../../../../../src/presentation/web/app/layout.tsx"],"sourcesContent":["/**\n * Settings Service\n *\n * Provides global access to application settings within the CLI.\n * Uses globalThis/process storage so the singleton survives Turbopack\n * module re-evaluations in Next.js API routes.\n *\n * Usage:\n * ```typescript\n * import { getSettings } from './infrastructure/services/settings.service.js';\n *\n * const settings = getSettings();\n * console.log(settings.models.default); // 'claude-sonnet-4-6'\n * ```\n */\n\nimport type { Settings } from '../../domain/generated/output.js';\n\n/** The globalThis / process key for the settings singleton. */\nconst SHEP_SETTINGS_KEY = '__shepSettings';\n\n/** Read the settings instance from globalThis, falling back to process. */\nfunction readSettings(): Settings | null {\n const fromGlobal = (globalThis as Record<string, unknown>)[SHEP_SETTINGS_KEY];\n if (fromGlobal != null) return fromGlobal as Settings;\n\n const fromProcess = (process as unknown as Record<string, unknown>)[SHEP_SETTINGS_KEY];\n if (fromProcess != null) return fromProcess as Settings;\n\n return null;\n}\n\n/** Write the settings instance to both globalThis and process. */\nfunction writeSettings(value: Settings | null): void {\n (globalThis as Record<string, unknown>)[SHEP_SETTINGS_KEY] = value;\n (process as unknown as Record<string, unknown>)[SHEP_SETTINGS_KEY] = value;\n}\n\n/**\n * Initialize the settings service with loaded settings.\n * Must be called once during CLI bootstrap.\n *\n * @param settings - The initialized settings\n * @throws Error if settings are already initialized\n */\nexport function initializeSettings(settings: Settings): void {\n if (readSettings() !== null) {\n throw new Error('Settings already initialized. Cannot re-initialize.');\n }\n\n writeSettings(settings);\n}\n\n/**\n * Get the current application settings.\n *\n * @returns Current settings instance\n * @throws Error if settings haven't been initialized yet\n *\n * @example\n * ```typescript\n * const settings = getSettings();\n * console.log(settings.system.logLevel); // 'info'\n * ```\n */\nexport function getSettings(): Settings {\n const instance = readSettings();\n if (instance === null) {\n throw new Error('Settings not initialized. Call initializeSettings() during CLI bootstrap.');\n }\n\n return instance;\n}\n\n/**\n * Check if settings have been initialized.\n *\n * @returns True if settings are initialized, false otherwise\n */\nexport function hasSettings(): boolean {\n return readSettings() !== null;\n}\n\n/**\n * Update the settings singleton with new values.\n * Used after a successful database write to refresh the in-memory\n * singleton so the rest of the application sees the updated values\n * without a full page reload.\n *\n * @param settings - The updated settings to store\n * @throws Error if settings haven't been initialized yet\n */\nexport function updateSettings(settings: Settings): void {\n if (readSettings() === null) {\n throw new Error('Settings not initialized. Cannot update before initialization.');\n }\n\n writeSettings(settings);\n}\n\n/**\n * Reset settings instance (for testing purposes only).\n * DO NOT use in production code.\n *\n * @internal\n */\nexport function resetSettings(): void {\n writeSettings(null);\n}\n","/**\n * Feature flags for the web UI.\n *\n * DB-primary resolution: reads from Settings.featureFlags when available,\n * falls back to NEXT_PUBLIC_ environment variables.\n * The debug flag is DB-only (no env var fallback).\n */\n\nimport { hasSettings, getSettings } from '@shepai/core/infrastructure/services/settings.service';\n\nfunction isEnabled(envVar: string | undefined): boolean {\n return envVar === 'true' || envVar === '1';\n}\n\nexport interface FeatureFlagsState {\n skills: boolean;\n envDeploy: boolean;\n debug: boolean;\n}\n\nexport function getFeatureFlags(): FeatureFlagsState {\n try {\n if (hasSettings()) {\n const flags = getSettings().featureFlags;\n if (flags) {\n return {\n skills: flags.skills,\n envDeploy: flags.envDeploy,\n debug: flags.debug,\n };\n }\n }\n } catch {\n // Settings not initialized (e.g., during build/SSG or client-side hydration)\n }\n\n return {\n skills: isEnabled(process.env.NEXT_PUBLIC_FLAG_SKILLS),\n envDeploy:\n process.env.NEXT_PUBLIC_FLAG_ENV_DEPLOY !== undefined\n ? isEnabled(process.env.NEXT_PUBLIC_FLAG_ENV_DEPLOY)\n : true,\n debug: false,\n };\n}\n\n/**\n * @deprecated Use getFeatureFlags() instead for DB-primary resolution.\n * Kept for backward compatibility during migration.\n */\nexport const featureFlags = {\n get skills() {\n return getFeatureFlags().skills;\n },\n get envDeploy() {\n return getFeatureFlags().envDeploy;\n },\n get debug() {\n return getFeatureFlags().debug;\n },\n} as const;\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nimport { registerClientReference } from \"react-server-dom-turbopack/server\";\nexport const AppShell = registerClientReference(\n function() { throw new Error(\"Attempted to call AppShell() from the server but AppShell 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.\"); },\n \"[project]/src/presentation/web/components/layouts/app-shell/app-shell.tsx\",\n \"AppShell\",\n);\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nimport { registerClientReference } from \"react-server-dom-turbopack/server\";\nexport const Toaster = registerClientReference(\n function() { throw new Error(\"Attempted to call Toaster() from the server but Toaster 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.\"); },\n \"[project]/src/presentation/web/components/ui/sonner.tsx\",\n \"Toaster\",\n);\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nimport { registerClientReference } from \"react-server-dom-turbopack/server\";\nexport const FeatureFlagsProvider = registerClientReference(\n function() { throw new Error(\"Attempted to call FeatureFlagsProvider() from the server but FeatureFlagsProvider 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.\"); },\n \"[project]/src/presentation/web/hooks/feature-flags-context.tsx\",\n \"FeatureFlagsProvider\",\n);\nexport const useFeatureFlags = registerClientReference(\n function() { throw new Error(\"Attempted to call useFeatureFlags() from the server but useFeatureFlags 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.\"); },\n \"[project]/src/presentation/web/hooks/feature-flags-context.tsx\",\n \"useFeatureFlags\",\n);\n","export { AppShell } from './app-shell';\n","import type { Metadata } from 'next';\nimport '@xyflow/react/dist/base.css';\nimport './globals.css';\nimport { AppShell } from '@/components/layouts/app-shell';\nimport { Toaster } from '@/components/ui/sonner';\nimport { getFeatureFlags } from '@/lib/feature-flags';\nimport { FeatureFlagsProvider } from '@/hooks/feature-flags-context';\n\n/** Force dynamic rendering for all pages since they depend on client-side context. */\nexport const dynamic = 'force-dynamic';\n\nexport const metadata: Metadata = {\n title: 'Shep AI',\n description:\n 'Autonomous AI Native SDLC Platform - Automate the development cycle from idea to deploy',\n icons: [\n {\n rel: 'icon',\n url: '/favicon-light.svg',\n type: 'image/svg+xml',\n media: '(prefers-color-scheme: light)',\n },\n {\n rel: 'icon',\n url: '/favicon-dark.svg',\n type: 'image/svg+xml',\n media: '(prefers-color-scheme: dark)',\n },\n ],\n};\n\nexport default function RootLayout({\n children,\n}: Readonly<{\n children: React.ReactNode;\n}>) {\n return (\n <html lang=\"en\" suppressHydrationWarning>\n <head>\n <script\n dangerouslySetInnerHTML={{\n __html: `\n (function() {\n try {\n const theme = localStorage.getItem('shep-theme');\n const systemDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n if (theme === 'dark' || (theme === 'system' && systemDark) || (!theme && systemDark)) {\n document.documentElement.classList.add('dark');\n }\n } catch (e) {}\n })();\n `,\n }}\n />\n </head>\n <body className=\"min-h-screen antialiased\">\n <FeatureFlagsProvider flags={getFeatureFlags()}>\n <AppShell>{children}</AppShell>\n </FeatureFlagsProvider>\n <Toaster position=\"bottom-center\" />\n </body>\n </html>\n );\n}\n"],"names":[],"mappings":"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","ignoreList":[2,3,4]}