@witty-ai/skill-insight 0.5.0-beta → 0.6.0-beta
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/.env.example +5 -0
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +4 -0
- package/.next/standalone/.next/build-manifest.json +2 -2
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/routes-manifest.json +24 -0
- package/.next/standalone/.next/server/app/_global-error.html +2 -2
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/api/config/route.js +3 -3
- package/.next/standalone/.next/server/app/api/config/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/data/route.js +3 -3
- package/.next/standalone/.next/server/app/api/data/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/otel/v1/logs/route.js +3 -3
- package/.next/standalone/.next/server/app/api/otel/v1/logs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/otel/v1/traces/route.js +1 -1
- package/.next/standalone/.next/server/app/api/otel/v1/traces/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/proxy/[taskId]/end/route.js +4 -4
- package/.next/standalone/.next/server/app/api/proxy/[taskId]/end/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/rejudge/route.js +3 -3
- package/.next/standalone/.next/server/app/api/rejudge/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/session/route.js +1 -1
- package/.next/standalone/.next/server/app/api/session/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/setup/opencode-commands/si-optimizer/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-commands/si-optimizer/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-commands/si-optimizer/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-commands/si-optimizer/route.js +6 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-commands/si-optimizer/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-commands/si-optimizer/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-commands/si-optimizer/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-tui/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-tui/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-tui/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-tui/route.js +6 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-tui/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-tui/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/setup/opencode-tui/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/download/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/route.js +3 -2
- package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/automation/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/logs/route.js +2 -2
- package/.next/standalone/.next/server/app/api/skills/logs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/route.js +3 -2
- package/.next/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route.js +8 -0
- package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/task-stats/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/task-stats/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/task-stats/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/task-stats/route.js +11 -0
- package/.next/standalone/.next/server/app/api/task-stats/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/task-stats/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/task-stats/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/upload/route.js +1 -1
- package/.next/standalone/.next/server/app/api/upload/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/details/page/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/app/details/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/details.html +1 -1
- package/.next/standalone/.next/server/app/details.rsc +2 -2
- package/.next/standalone/.next/server/app/details.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/details.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/details.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/details.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/details.segments/details/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/details.segments/details.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.html +1 -1
- package/.next/standalone/.next/server/app/login.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/skills.html +1 -1
- package/.next/standalone/.next/server/app/skills.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/skills.segments/skills.segment.rsc +1 -1
- package/.next/standalone/.next/server/app-paths-manifest.json +4 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__15dbd1f2._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1ce5e3b8._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__53775b48._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__6923eecf._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__6d8053e2._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__8402dfd1._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__863cf6de._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__89404730._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__aa5c8858._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c20da96a._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ddf63a21._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__f9e66e02._.js +3 -0
- package/.next/standalone/.next/server/chunks/_3e8b4d8c._.js +1 -1
- package/.next/standalone/.next/server/chunks/_41a98bd8._.js +1 -1
- package/.next/standalone/.next/server/chunks/_4c806e26._.js +3 -0
- package/.next/standalone/.next/server/chunks/_cd3d20ca._.js +1 -1
- package/.next/standalone/.next/server/chunks/_ddffef3e._.js +1 -1
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_setup_opencode-tui_route_actions_fc8ae29f.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_skills_sync-enterprise_route_actions_0ca45899.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_task-stats_route_actions_983505cd.js +3 -0
- package/.next/standalone/.next/server/chunks/ce889_server_app_api_setup_opencode-commands_si-optimizer_route_actions_fcde30ef.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_c33286ed.js +47 -4
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_f42faeee.js +1 -1
- package/.next/standalone/.next/server/chunks/src_98433cb8._.js +175 -0
- package/.next/standalone/.next/server/chunks/src_lib_12408140._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_c8c8c083._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_fd46f439._.js +2 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_dagre-d3-es_src_dagre_index_3582f3d0.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_lodash-es_a1341fea._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_lodash-es_e1de6ed8._.js +1 -1
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +2 -2
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/{01eddf501c574a44.js → 4ee8dc41c9f15b7b.js} +1 -1
- package/.next/standalone/.next/static/chunks/{737b8cff3c6a4e30.js → 9445b2873a413c58.js} +1 -1
- package/.next/standalone/.next/static/chunks/94dfb15df65ef720.js +2 -0
- package/.next/standalone/.next/static/chunks/9d1c5c3494fa53de.js +109 -0
- package/.next/standalone/.next/static/chunks/{e09d9ee16fe90255.js → cd0fde15dc0dfcca.js} +1 -1
- package/.next/standalone/.next/static/chunks/{ff6357067630b168.js → e13d208072a48316.js} +1 -1
- package/.next/standalone/node_modules/.prisma/client/edge.js +6 -3
- package/.next/standalone/node_modules/.prisma/client/index-browser.js +3 -0
- package/.next/standalone/node_modules/.prisma/client/index.js +6 -3
- package/.next/standalone/node_modules/.prisma/client/package.json +1 -1
- package/.next/standalone/node_modules/.prisma/client/schema.prisma +12 -9
- package/.next/standalone/node_modules/.prisma/client/wasm.js +3 -0
- package/.next/standalone/node_modules/adm-zip/util/constants.js +142 -0
- package/.next/standalone/node_modules/adm-zip/util/decoder.js +5 -0
- package/.next/standalone/node_modules/adm-zip/util/errors.js +63 -0
- package/.next/standalone/node_modules/adm-zip/util/fattr.js +76 -0
- package/.next/standalone/node_modules/adm-zip/util/index.js +5 -0
- package/.next/standalone/node_modules/adm-zip/util/utils.js +339 -0
- package/.next/standalone/package.json +6 -2
- package/.next/standalone/prisma/schema.prisma +3 -0
- package/.next/standalone/scripts/opencode_plugin.ts +23 -5
- package/.next/standalone/scripts/opencode_tui_plugin.tsx +308 -0
- package/.next/standalone/scripts/si-optimizer.md +5 -0
- package/.next/static/chunks/{01eddf501c574a44.js → 4ee8dc41c9f15b7b.js} +1 -1
- package/.next/static/chunks/{737b8cff3c6a4e30.js → 9445b2873a413c58.js} +1 -1
- package/.next/static/chunks/94dfb15df65ef720.js +2 -0
- package/.next/static/chunks/9d1c5c3494fa53de.js +109 -0
- package/.next/static/chunks/{e09d9ee16fe90255.js → cd0fde15dc0dfcca.js} +1 -1
- package/.next/static/chunks/{ff6357067630b168.js → e13d208072a48316.js} +1 -1
- package/package.json +6 -2
- package/prisma/schema.prisma +3 -0
- package/scripts/activate_telemetry.sh +44 -1
- package/scripts/opencode_plugin.ts +23 -5
- package/scripts/opencode_tui_plugin.tsx +308 -0
- package/scripts/si-optimizer.md +5 -0
- package/scripts/utils.js +0 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e2f0baee._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__fc05579d._.js +0 -3
- package/.next/standalone/.next/server/chunks/src_497d2ad2._.js +0 -175
- package/.next/standalone/.next/static/chunks/4071dbec4cf7e72e.js +0 -109
- package/.next/standalone/.next/static/chunks/a87b5e84254095a5.js +0 -1
- package/.next/standalone/LICENSE +0 -21
- package/.next/standalone/bin/cli.js +0 -106
- package/.next/standalone/custom-models.example.json +0 -21
- package/.next/standalone/eslint.config.mjs +0 -18
- package/.next/standalone/features/feature-skill-used-jump-link/design/2026-03-18-skill-used-jump-link-design.md +0 -126
- package/.next/standalone/features/feature-skill-used-jump-link/feature.json +0 -32
- package/.next/standalone/features/feature-skill-used-jump-link/issue.md +0 -32
- package/.next/standalone/features/feature-skill-used-jump-link/plans/2026-03-18-skill-used-jump-link.md +0 -528
- package/.next/standalone/next.config.ts +0 -41
- package/.next/standalone/scripts/activate_telemetry.sh +0 -159
- package/.next/standalone/scripts/create_migration_package.sh +0 -124
- package/.next/standalone/scripts/fix_models.js +0 -66
- package/.next/standalone/scripts/init_opengauss.py +0 -284
- package/.next/standalone/scripts/install.js +0 -273
- package/.next/standalone/scripts/logs.js +0 -38
- package/.next/standalone/scripts/otel_data/logs.jsonl +0 -12
- package/.next/standalone/scripts/otel_data/metrics.jsonl +0 -21
- package/.next/standalone/scripts/otel_data/raw_requests.jsonl +0 -8
- package/.next/standalone/scripts/otel_data/raw_requests.jsonl.bak +0 -6
- package/.next/standalone/scripts/otel_receiver.py +0 -580
- package/.next/standalone/scripts/postinstall.js +0 -192
- package/.next/standalone/scripts/publish-npm.js +0 -401
- package/.next/standalone/scripts/restart.js +0 -26
- package/.next/standalone/scripts/restart.sh +0 -138
- package/.next/standalone/scripts/restart_dev.sh +0 -132
- package/.next/standalone/scripts/start.js +0 -291
- package/.next/standalone/scripts/status.js +0 -41
- package/.next/standalone/scripts/stop.js +0 -90
- package/.next/standalone/scripts/sync_skills.js +0 -216
- package/.next/standalone/scripts/utils.js +0 -235
- package/.next/standalone/tests/setup_skill_optimizer.sh +0 -118
- package/.next/standalone/tsconfig.json +0 -34
- package/.next/static/chunks/4071dbec4cf7e72e.js +0 -109
- package/.next/static/chunks/a87b5e84254095a5.js +0 -1
- /package/.next/standalone/.next/static/{H581Rok68JtPV4bAVVH3l → 0uvhCJooDO_gMNlKOaHwB}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{H581Rok68JtPV4bAVVH3l → 0uvhCJooDO_gMNlKOaHwB}/_clientMiddlewareManifest.json +0 -0
- /package/.next/standalone/.next/static/{H581Rok68JtPV4bAVVH3l → 0uvhCJooDO_gMNlKOaHwB}/_ssgManifest.js +0 -0
- /package/.next/static/{H581Rok68JtPV4bAVVH3l → 0uvhCJooDO_gMNlKOaHwB}/_buildManifest.js +0 -0
- /package/.next/static/{H581Rok68JtPV4bAVVH3l → 0uvhCJooDO_gMNlKOaHwB}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{H581Rok68JtPV4bAVVH3l → 0uvhCJooDO_gMNlKOaHwB}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[77800,e=>{"use strict";function t(){let e=[],t=1;for(;;){let r=process.env[`DEFAULT_MODEL_${t}_NAME`],s=process.env[`DEFAULT_MODEL_${t}_PROVIDER`],n=process.env[`DEFAULT_MODEL_${t}_API_KEY`];if(!r||!s||!n)break;e.push({id:`default_${t}`,name:r,provider:s,apiKey:n,baseUrl:process.env[`DEFAULT_MODEL_${t}_BASE_URL`],model:process.env[`DEFAULT_MODEL_${t}_MODEL`]}),t++}return e}e.s(["loadDefaultModelConfigs",()=>t])},22965,e=>e.a(async(t,r)=>{try{var s=e.i(98043),n=e.i(77800),a=t([s]);async function o(e){let t=await i(e);return t&&t.activeConfigId&&t.configs.find(e=>e.id===t.activeConfigId)||null}async function i(e){if(!e)return{activeConfigId:null,configs:[]};let t=(0,n.loadDefaultModelConfigs)(),r=[],a=null;try{let t=await s.db.findUserSettings(e);if(t?.settingsJson){let e=JSON.parse(t.settingsJson);r=e.configs.filter(e=>!e.id.startsWith("default_")),a=e.activeConfigId}}catch(e){console.error("Failed to load user settings:",e)}let o=[...t,...r];return a&&o.find(e=>e.id===a)||(a=t.length>0?t[0].id:null),{activeConfigId:a,configs:o}}async function l(e,t){let r=t.configs.filter(e=>!e.id.startsWith("default_")),n=JSON.stringify({activeConfigId:t.activeConfigId,configs:r});await s.db.upsertUserSettings(e,n)}[s]=a.then?(await a)():a,e.s(["getActiveConfig",()=>o,"getUserSettings",()=>i,"saveUserSettings",()=>l]),r()}catch(e){r(e)}},!1),46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},66680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},98043,e=>e.a(async(t,r)=>{try{let l;var s,n=e.i(97289),a=e.i(63021),o=e.i(86414),i=t([o]);[o]=i.then?(await i)():i,(0,n.config)();let u=e.g.prisma||new a.PrismaClient,d=(0,o.getDatabaseAdapter)(),c=process.env.DB_HOST?(l=(s=d).getClient())instanceof a.PrismaClient?l:{user:{findUnique:async e=>e.where?.apiKey?s.findUserByApiKey(e.where.apiKey):e.where?.username?s.findUserByUsername(e.where.username):null,findFirst:async e=>e.where?.username?s.findUserByUsername(e.where.username):null},skill:{findFirst:async e=>{let t=e.where?.name,r=e.where?.OR?.[0]?.user??e.where?.OR?.[1]?.user;return s.findSkill(t,r)},findMany:async e=>s.findSkills(e.where||{}),findUnique:async e=>s.findSkill(e.where?.name,e.where?.user),delete:async e=>(console.warn("[OpenGaussAdapter] skill.delete not fully implemented"),null)},skillVersion:{findFirst:async e=>e.where?.skillId?s.findLatestSkillVersion(e.where.skillId):null},config:{findMany:async e=>s.findConfigs(e.where||{})},session:{findUnique:async e=>e.where?.taskId?s.findSessionByTaskId(e.where.taskId):null,update:async e=>e.where?.id?s.updateSession(e.where.id,e.data):null,upsert:async e=>{let t=e.where?.taskId;return t?s.upsertSession(t,e.create,e.update):null}},execution:{findUnique:async e=>e.where?.id?s.findExecutionById(e.where.id):null,upsert:async e=>s.upsertExecution(e),findMany:async e=>s.findExecutions(e.where,e.orderBy)}}:u;e.s(["db",0,d,"prisma",0,c]),r()}catch(e){r(e)}},!1),81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},87769,(e,t,r)=>{t.exports=e.x("node:events",()=>require("node:events"))},57764,(e,t,r)=>{t.exports=e.x("node:url",()=>require("node:url"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},63242,e=>e.a(async(t,r)=>{try{var s=e.i(85765),n=e.i(98043),a=e.i(89171),o=t([s,n]);function i(e){if(e){if(void 0!==e.stringValue)return e.stringValue;if(void 0!==e.intValue)return parseInt(e.intValue);if(void 0!==e.doubleValue)return e.doubleValue;if(void 0!==e.boolValue)return e.boolValue;if(void 0!==e.arrayValue)return e.arrayValue.values?.map(e=>i(e))||[];if(void 0!==e.kvlistValue){let t={};for(let r of e.kvlistValue.values||[])t[r.key]=i(r.value);return t}}}async function l(e){try{let t,r=e.headers.get("x-witty-api-key");if(r){let e=await n.db.findUserByApiKey(r);e&&(t=e.username,console.log(`[OTel Logs] Authenticated User: ${t}`))}let o=e.headers.get("content-type")||"";if(!o.includes("application/json"))return console.warn(`[OTel Logs] Unsupported Content-Type: ${o}`),new a.NextResponse(JSON.stringify({error:"Only application/json is supported. Set OTEL_EXPORTER_OTLP_LOGS_PROTOCOL=http/json"}),{status:415});let l=await e.json();if(!l.resourceLogs||!Array.isArray(l.resourceLogs))return console.log("[OTel Logs] Empty or missing resourceLogs"),a.NextResponse.json({status:"success",message:"No logs"});for(let e of(console.log(`[OTel Logs] Received ${l.resourceLogs.length} resourceLog(s)`),l.resourceLogs)){let r={};if(e.resource?.attributes)for(let t of e.resource.attributes)r[t.key]=i(t.value);let n=r["service.name"]||"unknown-service";for(let a of e.scopeLogs||[])for(let e of a.logRecords||[]){let a={};if(e.attributes)for(let t of e.attributes)a[t.key]=i(t.value);let o=a["event.name"]||e.body?.stringValue,l=a["session.id"]||r["session.id"]||r["service.instance.id"],u=a["user.id"]||r["user.id"],d=t||u||"anonymous";if(console.log(`[OTel Logs] Event: ${o} | Session: ${l} | User: ${d}`),!l){console.warn("[OTel Logs] No session.id found, skipping bridge.");continue}let c="cli-agent"===n||"claude-code"===n?"claudecode":n;if("user_prompt"===o)await (0,s.saveExecutionRecord)({task_id:l,query:a.prompt||"Claude Code Session",framework:c,user:d,timestamp:new Date}),console.log(`[OTel Logs] ✅ Saved user_prompt for session ${l}`);else if("api_request"===o){let e=parseInt(a.input_tokens||"0"),t=parseInt(a.output_tokens||"0"),r=parseInt(a.cache_read_tokens||"0"),n=parseInt(a.cache_creation_tokens||"0"),o=e+t+r+n,i=parseInt(a.duration_ms||"0"),u=parseFloat(a.cost_usd||"0");await (0,s.saveExecutionRecord)({task_id:l,model:a.model,tokens:o,latency:i/1e3,cost:u,framework:c,user:d}),console.log(`[OTel Logs] ✅ Saved api_request for session ${l}: model=${a.model}, tokens=${o}`)}else"tool_result"===o?console.log(`[OTel Logs] Tool: ${a.tool_name} | Success: ${a.success} | Duration: ${a.duration_ms}ms`):"api_error"===o&&console.warn(`[OTel Logs] ⚠️ API Error in session ${l}: ${a.error} (status: ${a.status_code})`)}}return a.NextResponse.json({status:"success"})}catch(e){return console.error("[OTel Logs] Handler Error:",e),a.NextResponse.json({status:"error",message:e.message},{status:500})}}async function u(){return new a.NextResponse(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, x-witty-api-key, baggage, traceparent, tracestate"}})}[s,n]=o.then?(await o)():o,e.s(["OPTIONS",()=>u,"POST",()=>l]),r()}catch(e){r(e)}},!1),75340,e=>e.a(async(t,r)=>{try{var s=e.i(47909),n=e.i(74017),a=e.i(60476),o=e.i(59756),i=e.i(61916),l=e.i(74677),u=e.i(69741),d=e.i(16795),c=e.i(87718),p=e.i(95169),f=e.i(47587),g=e.i(66012),h=e.i(70101),y=e.i(26937),v=e.i(10372),x=e.i(93695);e.i(52474);var w=e.i(220),m=e.i(63242),R=t([m]);[m]=R.then?(await R)():R;let O=new s.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/otel/v1/logs/route",pathname:"/api/otel/v1/logs",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/otel/v1/logs/route.ts",nextConfigOutput:"standalone",userland:m}),{workAsyncStorage:C,workUnitAsyncStorage:k,serverHooks:T}=O;function E(){return(0,a.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:k})}async function _(e,t,r){O.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/otel/v1/logs/route";s=s.replace(/\/index$/,"")||"/";let a=await O.prepare(e,t,{srcPage:s,multiZoneDraftMode:!1});if(!a)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:m,params:R,nextConfig:E,parsedUrl:_,isDraftMode:C,prerenderManifest:k,routerServerContext:T,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,resolvedPathname:b,clientReferenceManifest:L,serverActionsManifest:U}=a,I=(0,u.normalizeAppPath)(s),q=!!(k.dynamicRoutes[I]||k.routes[b]),N=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,_,!1):t.end("This page could not be found"),null);if(q&&!C){let e=!!k.routes[b],t=k.dynamicRoutes[I];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await N();throw new x.NoFallbackError}}let P=null;!q||O.isDev||C||(P=b,P="/index"===P?"/":P);let D=!0===O.isDev||!q,$=q&&!D;U&&L&&(0,l.setManifestsSingleton)({page:s,clientReferenceManifest:L,serverActionsManifest:U});let M=e.method||"GET",j=(0,i.getTracer)(),H=j.getActiveScopeSpan(),V={params:R,prerenderManifest:k,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,o.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,n)=>O.onRequestError(e,t,s,n,T)},sharedContext:{buildId:m}},F=new d.NodeNextRequest(e),B=new d.NodeNextResponse(t),K=c.NextRequestAdapter.fromNodeNextRequest(F,(0,c.signalFromNodeResponse)(t));try{let a=async e=>O.handle(K,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=j.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${M} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${s}`)}),l=!!(0,o.getRequestMeta)(e,"minimalMode"),u=async o=>{var i,u;let d=async({previousCacheEntry:n})=>{try{if(!l&&A&&S&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await a(o);e.fetchMetrics=V.renderOpts.fetchMetrics;let i=V.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let u=V.renderOpts.collectedTags;if(!q)return await (0,g.sendResponse)(F,B,s,V.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[v.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=v.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:w.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await O.onRequestError(e,t,{routerKind:"App Router",routePath:s,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:A})},!1,T),t}},c=await O.handleResponse({req:e,nextConfig:E,cacheKey:P,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:k,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:l});if(!q)return null;if((null==c||null==(i=c.value)?void 0:i.kind)!==w.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(u=c.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",A?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let p=(0,h.fromNodeOutgoingHttpHeaders)(c.value.headers);return l&&q||p.delete(v.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||p.get("Cache-Control")||p.set("Cache-Control",(0,y.getCacheControlHeader)(c.cacheControl)),await (0,g.sendResponse)(F,B,new Response(c.value.body,{headers:p,status:c.value.status||200})),null};H?await u(H):await j.withPropagatedContext(e.headers,()=>j.trace(p.BaseServerSpan.handleRequest,{spanName:`${M} ${s}`,kind:i.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},u))}catch(t){if(t instanceof x.NoFallbackError||await O.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:A})},!1,T),q)throw t;return await (0,g.sendResponse)(F,B,new Response(null,{status:500})),null}}e.s(["handler",()=>_,"patchFetch",()=>E,"routeModule",()=>O,"serverHooks",()=>T,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>k]),r()}catch(e){r(e)}},!1)];
|
|
1
|
+
module.exports=[77800,e=>{"use strict";function t(){let e=[],t=1;for(;;){let r=process.env[`DEFAULT_MODEL_${t}_NAME`],s=process.env[`DEFAULT_MODEL_${t}_PROVIDER`],n=process.env[`DEFAULT_MODEL_${t}_API_KEY`];if(!r||!s||!n)break;e.push({id:`default_${t}`,name:r,provider:s,apiKey:n,baseUrl:process.env[`DEFAULT_MODEL_${t}_BASE_URL`],model:process.env[`DEFAULT_MODEL_${t}_MODEL`]}),t++}return e}e.s(["loadDefaultModelConfigs",()=>t])},22965,e=>e.a(async(t,r)=>{try{var s=e.i(98043),n=e.i(77800),a=t([s]);async function o(e){let t=await i(e);return t&&t.activeConfigId&&t.configs.find(e=>e.id===t.activeConfigId)||null}async function i(e){if(!e)return{activeConfigId:null,configs:[]};let t=(0,n.loadDefaultModelConfigs)(),r=[],a=null;try{let t=await s.db.findUserSettings(e);if(t?.settingsJson){let e=JSON.parse(t.settingsJson);r=e.configs.filter(e=>!e.id.startsWith("default_")),a=e.activeConfigId}}catch(e){console.error("Failed to load user settings:",e)}let o=[...t,...r];return a&&o.find(e=>e.id===a)||(a=t.length>0?t[0].id:null),{activeConfigId:a,configs:o}}async function l(e,t){let r=t.configs.filter(e=>!e.id.startsWith("default_")),n=JSON.stringify({activeConfigId:t.activeConfigId,configs:r});await s.db.upsertUserSettings(e,n)}[s]=a.then?(await a)():a,e.s(["getActiveConfig",()=>o,"getUserSettings",()=>i,"saveUserSettings",()=>l]),r()}catch(e){r(e)}},!1),46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},66680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},98043,e=>e.a(async(t,r)=>{try{let l;var s,n=e.i(97289),a=e.i(63021),o=e.i(86414),i=t([o]);[o]=i.then?(await i)():i,(0,n.config)();let u=e.g.prisma||new a.PrismaClient,d=(0,o.getDatabaseAdapter)(),c=process.env.DB_HOST?(l=(s=d).getClient())instanceof a.PrismaClient?l:{user:{findUnique:async e=>e.where?.apiKey?s.findUserByApiKey(e.where.apiKey):e.where?.username?s.findUserByUsername(e.where.username):null,findFirst:async e=>e.where?.username?s.findUserByUsername(e.where.username):null},skill:{findFirst:async e=>{let t=e.where?.name,r=e.where?.OR?.[0]?.user??e.where?.OR?.[1]?.user;return s.findSkill(t,r)},findMany:async e=>s.findSkills(e.where||{}),findUnique:async e=>s.findSkill(e.where?.name,e.where?.user),delete:async e=>(console.warn("[OpenGaussAdapter] skill.delete not fully implemented"),null)},skillVersion:{findFirst:async e=>e.where?.skillId?s.findLatestSkillVersion(e.where.skillId):null},config:{findMany:async e=>s.findConfigs(e.where||{})},session:{findUnique:async e=>e.where?.taskId?s.findSessionByTaskId(e.where.taskId):null,update:async e=>e.where?.id?s.updateSession(e.where.id,e.data):null,upsert:async e=>{let t=e.where?.taskId;return t?s.upsertSession(t,e.create,e.update):null}},execution:{findUnique:async e=>e.where?.id?s.findExecutionById(e.where.id):null,upsert:async e=>s.upsertExecution(e),findMany:async e=>s.findExecutions(e.where,e.orderBy)}}:u;e.s(["db",0,d,"prisma",0,c]),r()}catch(e){r(e)}},!1),81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},87769,(e,t,r)=>{t.exports=e.x("node:events",()=>require("node:events"))},57764,(e,t,r)=>{t.exports=e.x("node:url",()=>require("node:url"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},63242,e=>e.a(async(t,r)=>{try{var s=e.i(85765),n=e.i(98043),a=e.i(89171),o=t([s,n]);function i(e){if(e){if(void 0!==e.stringValue)return e.stringValue;if(void 0!==e.intValue)return parseInt(e.intValue);if(void 0!==e.doubleValue)return e.doubleValue;if(void 0!==e.boolValue)return e.boolValue;if(void 0!==e.arrayValue)return e.arrayValue.values?.map(e=>i(e))||[];if(void 0!==e.kvlistValue){let t={};for(let r of e.kvlistValue.values||[])t[r.key]=i(r.value);return t}}}async function l(e){try{let t,r=e.headers.get("x-witty-api-key");if(r){let e=await n.db.findUserByApiKey(r);e&&(t=e.username,console.log(`[OTel Logs] Authenticated User: ${t}`))}let o=e.headers.get("content-type")||"";if(!o.includes("application/json"))return console.warn(`[OTel Logs] Unsupported Content-Type: ${o}`),new a.NextResponse(JSON.stringify({error:"Only application/json is supported. Set OTEL_EXPORTER_OTLP_LOGS_PROTOCOL=http/json"}),{status:415});let l=await e.json();if(!l.resourceLogs||!Array.isArray(l.resourceLogs))return console.log("[OTel Logs] Empty or missing resourceLogs"),a.NextResponse.json({status:"success",message:"No logs"});for(let e of(console.log(`[OTel Logs] Received ${l.resourceLogs.length} resourceLog(s)`),l.resourceLogs)){let r={};if(e.resource?.attributes)for(let t of e.resource.attributes)r[t.key]=i(t.value);let n=r["service.name"]||"unknown-service";for(let a of e.scopeLogs||[])for(let e of a.logRecords||[]){let a={};if(e.attributes)for(let t of e.attributes)a[t.key]=i(t.value);let o=a["event.name"]||e.body?.stringValue,l=a["session.id"]||r["session.id"]||r["service.instance.id"],u=a["user.id"]||r["user.id"],d=t||u||"anonymous";if(console.log(`[OTel Logs] Event: ${o} | Session: ${l} | User: ${d}`),!l){console.warn("[OTel Logs] No session.id found, skipping bridge.");continue}let c="cli-agent"===n||"claude-code"===n?"claudecode":n;if("user_prompt"===o)await (0,s.saveExecutionRecord)({task_id:l,query:a.prompt||"Claude Code Session",framework:c,user:d,timestamp:new Date}),console.log(`[OTel Logs] ✅ Saved user_prompt for session ${l}`);else if("api_request"===o){let e=parseInt(a.input_tokens||"0"),t=parseInt(a.output_tokens||"0"),r=parseInt(a.cache_read_tokens||"0"),n=parseInt(a.cache_creation_tokens||"0"),o=parseInt(a.reasoning_tokens||"0"),i=e+t+r+n,u=parseInt(a.duration_ms||"0"),p=parseFloat(a.cost_usd||"0");await (0,s.saveExecutionRecord)({task_id:l,model:a.model,tokens:i,latency:u/1e3,cost:p,framework:c,user:d,reasoning_tokens:o||void 0}),console.log(`[OTel Logs] ✅ Saved api_request for session ${l}: model=${a.model}, tokens=${i}`)}else"tool_result"===o?console.log(`[OTel Logs] Tool: ${a.tool_name} | Success: ${a.success} | Duration: ${a.duration_ms}ms`):"api_error"===o&&console.warn(`[OTel Logs] ⚠️ API Error in session ${l}: ${a.error} (status: ${a.status_code})`)}}return a.NextResponse.json({status:"success"})}catch(e){return console.error("[OTel Logs] Handler Error:",e),a.NextResponse.json({status:"error",message:e.message},{status:500})}}async function u(){return new a.NextResponse(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, x-witty-api-key, baggage, traceparent, tracestate"}})}[s,n]=o.then?(await o)():o,e.s(["OPTIONS",()=>u,"POST",()=>l]),r()}catch(e){r(e)}},!1),75340,e=>e.a(async(t,r)=>{try{var s=e.i(47909),n=e.i(74017),a=e.i(60476),o=e.i(59756),i=e.i(61916),l=e.i(74677),u=e.i(69741),d=e.i(16795),c=e.i(87718),p=e.i(95169),f=e.i(47587),g=e.i(66012),h=e.i(70101),y=e.i(26937),v=e.i(10372),x=e.i(93695);e.i(52474);var w=e.i(220),m=e.i(63242),R=t([m]);[m]=R.then?(await R)():R;let O=new s.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/otel/v1/logs/route",pathname:"/api/otel/v1/logs",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/otel/v1/logs/route.ts",nextConfigOutput:"standalone",userland:m}),{workAsyncStorage:k,workUnitAsyncStorage:C,serverHooks:T}=O;function E(){return(0,a.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:C})}async function _(e,t,r){O.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/otel/v1/logs/route";s=s.replace(/\/index$/,"")||"/";let a=await O.prepare(e,t,{srcPage:s,multiZoneDraftMode:!1});if(!a)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:m,params:R,nextConfig:E,parsedUrl:_,isDraftMode:k,prerenderManifest:C,routerServerContext:T,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,resolvedPathname:b,clientReferenceManifest:I,serverActionsManifest:L}=a,U=(0,u.normalizeAppPath)(s),q=!!(C.dynamicRoutes[U]||C.routes[b]),N=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,_,!1):t.end("This page could not be found"),null);if(q&&!k){let e=!!C.routes[b],t=C.dynamicRoutes[U];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await N();throw new x.NoFallbackError}}let P=null;!q||O.isDev||k||(P=b,P="/index"===P?"/":P);let D=!0===O.isDev||!q,$=q&&!D;L&&I&&(0,l.setManifestsSingleton)({page:s,clientReferenceManifest:I,serverActionsManifest:L});let M=e.method||"GET",j=(0,i.getTracer)(),H=j.getActiveScopeSpan(),V={params:R,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,o.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,n)=>O.onRequestError(e,t,s,n,T)},sharedContext:{buildId:m}},F=new d.NodeNextRequest(e),B=new d.NodeNextResponse(t),K=c.NextRequestAdapter.fromNodeNextRequest(F,(0,c.signalFromNodeResponse)(t));try{let a=async e=>O.handle(K,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=j.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${M} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${s}`)}),l=!!(0,o.getRequestMeta)(e,"minimalMode"),u=async o=>{var i,u;let d=async({previousCacheEntry:n})=>{try{if(!l&&A&&S&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await a(o);e.fetchMetrics=V.renderOpts.fetchMetrics;let i=V.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let u=V.renderOpts.collectedTags;if(!q)return await (0,g.sendResponse)(F,B,s,V.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[v.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=v.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:w.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await O.onRequestError(e,t,{routerKind:"App Router",routePath:s,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:A})},!1,T),t}},c=await O.handleResponse({req:e,nextConfig:E,cacheKey:P,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:l});if(!q)return null;if((null==c||null==(i=c.value)?void 0:i.kind)!==w.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(u=c.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",A?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let p=(0,h.fromNodeOutgoingHttpHeaders)(c.value.headers);return l&&q||p.delete(v.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||p.get("Cache-Control")||p.set("Cache-Control",(0,y.getCacheControlHeader)(c.cacheControl)),await (0,g.sendResponse)(F,B,new Response(c.value.body,{headers:p,status:c.value.status||200})),null};H?await u(H):await j.withPropagatedContext(e.headers,()=>j.trace(p.BaseServerSpan.handleRequest,{spanName:`${M} ${s}`,kind:i.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},u))}catch(t){if(t instanceof x.NoFallbackError||await O.onRequestError(e,t,{routerKind:"App Router",routePath:U,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:A})},!1,T),q)throw t;return await (0,g.sendResponse)(F,B,new Response(null,{status:500})),null}}e.s(["handler",()=>_,"patchFetch",()=>E,"routeModule",()=>O,"serverHooks",()=>T,"workAsyncStorage",()=>k,"workUnitAsyncStorage",()=>C]),r()}catch(e){r(e)}},!1)];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__6923eecf._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},66680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},98043,e=>e.a(async(t,r)=>{try{let o;var a,n=e.i(97289),s=e.i(63021),i=e.i(86414),l=t([i]);[i]=l.then?(await l)():l,(0,n.config)();let d=e.g.prisma||new s.PrismaClient,u=(0,i.getDatabaseAdapter)(),p=process.env.DB_HOST?(o=(a=u).getClient())instanceof s.PrismaClient?o:{user:{findUnique:async e=>e.where?.apiKey?a.findUserByApiKey(e.where.apiKey):e.where?.username?a.findUserByUsername(e.where.username):null,findFirst:async e=>e.where?.username?a.findUserByUsername(e.where.username):null},skill:{findFirst:async e=>{let t=e.where?.name,r=e.where?.OR?.[0]?.user??e.where?.OR?.[1]?.user;return a.findSkill(t,r)},findMany:async e=>a.findSkills(e.where||{}),findUnique:async e=>a.findSkill(e.where?.name,e.where?.user),delete:async e=>(console.warn("[OpenGaussAdapter] skill.delete not fully implemented"),null)},skillVersion:{findFirst:async e=>e.where?.skillId?a.findLatestSkillVersion(e.where.skillId):null},config:{findMany:async e=>a.findConfigs(e.where||{})},session:{findUnique:async e=>e.where?.taskId?a.findSessionByTaskId(e.where.taskId):null,update:async e=>e.where?.id?a.updateSession(e.where.id,e.data):null,upsert:async e=>{let t=e.where?.taskId;return t?a.upsertSession(t,e.create,e.update):null}},execution:{findUnique:async e=>e.where?.id?a.findExecutionById(e.where.id):null,upsert:async e=>a.upsertExecution(e),findMany:async e=>a.findExecutions(e.where,e.orderBy)}}:d;e.s(["db",0,u,"prisma",0,p]),r()}catch(e){r(e)}},!1),79832,e=>e.a(async(t,r)=>{try{var a=e.i(98043),n=t([a]);async function s(e,t){if(t)return{username:t,apiKey:null};let r=e.headers.get("x-witty-api-key");if(r)return{username:await i(r),apiKey:r};let a=new URL(e.url).searchParams.get("apiKey");return a?{username:await i(a),apiKey:a}:{username:null,apiKey:null}}async function i(e){try{let t=await a.db.findUserByApiKey(e);return t?.username||null}catch(e){return console.error("[Auth] Failed to lookup user by API Key:",e),null}}async function l(e,t){let r=await a.db.findSkillById(e);return r?"public"!==r.visibility&&r.user&&(!t||r.user!==t)&&t?{allowed:!1,skill:r}:{allowed:!0,skill:r}:{allowed:!1,skill:null}}[a]=n.then?(await n)():n,e.s(["canAccessSkill",()=>l,"resolveUser",()=>s]),r()}catch(e){r(e)}},!1),54632,e=>e.a(async(t,r)=>{try{var a=e.i(79832),n=e.i(98043),s=e.i(22734),i=e.i(89171),l=e.i(14747),o=t([a,n]);function d(e){s.default.existsSync(e)||s.default.mkdirSync(e,{recursive:!0})}async function u(e){try{let t=await e.formData(),r=t.getAll("files"),o=t.getAll("paths");if(0===r.length)return i.NextResponse.json({error:"No files uploaded"},{status:400});let u=null,p=-1;for(let e=0;e<r.length;e++)if(o[e].endsWith("SKILL.md")){u=r[e],p=e;break}if(!u)return i.NextResponse.json({error:"SKILL.md is missing"},{status:400});let c=await u.text(),h=o[p],f=h.includes("/")?h.split("/")[0]:"uploaded-skill",y="Imported via upload",x=c.match(/^---\s*([\s\S]*?)\s*---/);if(x&&x[1]){let e=x[1],t=e.match(/^name:\s*(.+)$/m),r=e.match(/^description:\s*(.+)$/m);t&&t[1]&&(f=t[1].trim()),r&&r[1]&&(y=r[1].trim())}let m=null,w=t.get("targetSkillId"),v=t.get("user"),g=(await (0,a.resolveUser)(e,v||void 0)).username;if(w){if(!(m=await n.db.findSkillById(w)))return i.NextResponse.json({error:"Target skill not found"},{status:404});if(g&&m.user&&m.user!==g)return i.NextResponse.json({error:"Unauthorized to update this skill"},{status:403});if(f!==m.name)return i.NextResponse.json({error:`Folder name mismatch! Expected: "${m.name}", Found: "${f}". Version updates must use the exact same folder name.`},{status:400})}else{if(m=await n.db.findSkill(f,g||null))return i.NextResponse.json({error:`Skill '${f}' already exists. Please use the 'Version Management' (版本管理) -> 'Upload New Version' feature to update it.`},{status:400});m=await n.db.createSkill({name:f,description:y,visibility:"private",activeVersion:0,user:g||null})}let R=await n.db.findLatestSkillVersion(m.id),k=R?R.version+1:0,E=l.default.join(process.cwd(),"data","storage","skills",m.id,`v${k}`);d(E);let S=[];for(let e=0;e<r.length;e++){let t=r[e],a=o[e],n=a.split("/"),i=n.length>1?n.slice(1).join("/"):a;if(!i)continue;let u=l.default.join(E,i);d(l.default.dirname(u));let p=Buffer.from(await t.arrayBuffer());s.default.writeFileSync(u,p),S.push(i)}let b=await n.db.createSkillVersion({skillId:m.id,version:k,content:c,assetPath:`data/storage/skills/${m.id}/v${k}`,files:JSON.stringify(S),changeLog:`Uploaded version ${k}`});return await n.db.updateSkill(m.id,{activeVersion:k}),console.log(`[Upload] Set activeVersion to ${k} for skill ${m.name}`),i.NextResponse.json({success:!0,skill:m,version:b})}catch(e){return console.error("Upload Error:",e),i.NextResponse.json({error:e.message},{status:500})}}[a,n]=o.then?(await o)():o,e.s(["POST",()=>u]),r()}catch(e){r(e)}},!1),13917,e=>e.a(async(t,r)=>{try{var a=e.i(47909),n=e.i(74017),s=e.i(60476),i=e.i(59756),l=e.i(61916),o=e.i(74677),d=e.i(69741),u=e.i(16795),p=e.i(87718),c=e.i(95169),h=e.i(47587),f=e.i(66012),y=e.i(70101),x=e.i(26937),m=e.i(10372),w=e.i(93695);e.i(52474);var v=e.i(220),g=e.i(54632),R=t([g]);[g]=R.then?(await R)():R;let S=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/skills/upload/route",pathname:"/api/skills/upload",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/upload/route.ts",nextConfigOutput:"standalone",userland:g}),{workAsyncStorage:b,workUnitAsyncStorage:C,serverHooks:A}=S;function k(){return(0,s.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:C})}async function E(e,t,r){S.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/skills/upload/route";a=a.replace(/\/index$/,"")||"/";let s=await S.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:g,params:R,nextConfig:k,parsedUrl:E,isDraftMode:b,prerenderManifest:C,routerServerContext:A,isOnDemandRevalidate:N,revalidateOnlyGenerated:U,resolvedPathname:I,clientReferenceManifest:P,serverActionsManifest:q}=s,j=(0,d.normalizeAppPath)(a),T=!!(C.dynamicRoutes[j]||C.routes[I]),O=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,E,!1):t.end("This page could not be found"),null);if(T&&!b){let e=!!C.routes[I],t=C.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(k.experimental.adapterPath)return await O();throw new w.NoFallbackError}}let _=null;!T||S.isDev||b||(_=I,_="/index"===_?"/":_);let K=!0===S.isDev||!T,$=T&&!K;q&&P&&(0,o.setManifestsSingleton)({page:a,clientReferenceManifest:P,serverActionsManifest:q});let H=e.method||"GET",B=(0,l.getTracer)(),D=B.getActiveScopeSpan(),M={params:R,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:K,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:k.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>S.onRequestError(e,t,a,n,A)},sharedContext:{buildId:g}},F=new u.NodeNextRequest(e),L=new u.NodeNextResponse(t),V=p.NextRequestAdapter.fromNodeNextRequest(F,(0,p.signalFromNodeResponse)(t));try{let s=async e=>S.handle(V,M).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=B.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${H} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${H} ${a}`)}),o=!!(0,i.getRequestMeta)(e,"minimalMode"),d=async i=>{var l,d;let u=async({previousCacheEntry:n})=>{try{if(!o&&N&&U&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await s(i);e.fetchMetrics=M.renderOpts.fetchMetrics;let l=M.renderOpts.pendingWaitUntil;l&&r.waitUntil&&(r.waitUntil(l),l=void 0);let d=M.renderOpts.collectedTags;if(!T)return await (0,f.sendResponse)(F,L,a,M.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,y.toNodeOutgoingHttpHeaders)(a.headers);d&&(t[m.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==M.renderOpts.collectedRevalidate&&!(M.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&M.renderOpts.collectedRevalidate,n=void 0===M.renderOpts.collectedExpire||M.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:M.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:N})},!1,A),t}},p=await S.handleResponse({req:e,nextConfig:k,cacheKey:_,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:U,responseGenerator:u,waitUntil:r.waitUntil,isMinimalMode:o});if(!T)return null;if((null==p||null==(l=p.value)?void 0:l.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(d=p.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",N?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,y.fromNodeOutgoingHttpHeaders)(p.value.headers);return o&&T||c.delete(m.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,x.getCacheControlHeader)(p.cacheControl)),await (0,f.sendResponse)(F,L,new Response(p.value.body,{headers:c,status:p.value.status||200})),null};D?await d(D):await B.withPropagatedContext(e.headers,()=>B.trace(c.BaseServerSpan.handleRequest,{spanName:`${H} ${a}`,kind:l.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},d))}catch(t){if(t instanceof w.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:N})},!1,A),T)throw t;return await (0,f.sendResponse)(F,L,new Response(null,{status:500})),null}}e.s(["handler",()=>E,"patchFetch",()=>k,"routeModule",()=>S,"serverHooks",()=>A,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>C]),r()}catch(e){r(e)}},!1)];
|
|
1
|
+
module.exports=[46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},66680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},98043,e=>e.a(async(t,r)=>{try{let o;var a,n=e.i(97289),s=e.i(63021),i=e.i(86414),l=t([i]);[i]=l.then?(await l)():l,(0,n.config)();let d=e.g.prisma||new s.PrismaClient,u=(0,i.getDatabaseAdapter)(),p=process.env.DB_HOST?(o=(a=u).getClient())instanceof s.PrismaClient?o:{user:{findUnique:async e=>e.where?.apiKey?a.findUserByApiKey(e.where.apiKey):e.where?.username?a.findUserByUsername(e.where.username):null,findFirst:async e=>e.where?.username?a.findUserByUsername(e.where.username):null},skill:{findFirst:async e=>{let t=e.where?.name,r=e.where?.OR?.[0]?.user??e.where?.OR?.[1]?.user;return a.findSkill(t,r)},findMany:async e=>a.findSkills(e.where||{}),findUnique:async e=>a.findSkill(e.where?.name,e.where?.user),delete:async e=>(console.warn("[OpenGaussAdapter] skill.delete not fully implemented"),null)},skillVersion:{findFirst:async e=>e.where?.skillId?a.findLatestSkillVersion(e.where.skillId):null},config:{findMany:async e=>a.findConfigs(e.where||{})},session:{findUnique:async e=>e.where?.taskId?a.findSessionByTaskId(e.where.taskId):null,update:async e=>e.where?.id?a.updateSession(e.where.id,e.data):null,upsert:async e=>{let t=e.where?.taskId;return t?a.upsertSession(t,e.create,e.update):null}},execution:{findUnique:async e=>e.where?.id?a.findExecutionById(e.where.id):null,upsert:async e=>a.upsertExecution(e),findMany:async e=>a.findExecutions(e.where,e.orderBy)}}:d;e.s(["db",0,u,"prisma",0,p]),r()}catch(e){r(e)}},!1),79832,e=>e.a(async(t,r)=>{try{var a=e.i(98043),n=t([a]);async function s(e,t){if(t)return{username:t,apiKey:null};let r=e.headers.get("x-witty-api-key");if(r)return{username:await i(r),apiKey:r};let a=new URL(e.url).searchParams.get("apiKey");return a?{username:await i(a),apiKey:a}:{username:null,apiKey:null}}async function i(e){try{let t=await a.db.findUserByApiKey(e);return t?.username||null}catch(e){return console.error("[Auth] Failed to lookup user by API Key:",e),null}}async function l(e,t){let r=await a.db.findSkillById(e);return r?"public"!==r.visibility&&r.user&&(!t||r.user!==t)&&t?{allowed:!1,skill:r}:{allowed:!0,skill:r}:{allowed:!1,skill:null}}[a]=n.then?(await n)():n,e.s(["canAccessSkill",()=>l,"resolveUser",()=>s]),r()}catch(e){r(e)}},!1),54632,e=>e.a(async(t,r)=>{try{var a=e.i(79832),n=e.i(98043),s=e.i(22734),i=e.i(89171),l=e.i(14747),o=t([a,n]);function d(e){s.default.existsSync(e)||s.default.mkdirSync(e,{recursive:!0})}async function u(e){try{let t=await e.formData(),r=t.getAll("files"),o=t.getAll("paths");if(0===r.length)return i.NextResponse.json({error:"No files uploaded"},{status:400});let u=null,p=-1;for(let e=0;e<r.length;e++)if(o[e].endsWith("SKILL.md")){u=r[e],p=e;break}if(!u)return i.NextResponse.json({error:"SKILL.md is missing"},{status:400});let c=await u.text(),h=o[p],f=h.includes("/")?h.split("/")[0]:"uploaded-skill",y="Imported via upload",x=c.match(/^---\s*([\s\S]*?)\s*---/);if(x&&x[1]){let e=x[1],t=e.match(/^name:\s*(.+)$/m),r=e.match(/^description:\s*(.+)$/m);t&&t[1]&&(f=t[1].trim()),r&&r[1]&&(y=r[1].trim())}let m=null,w=t.get("targetSkillId"),v=t.get("user"),g=(await (0,a.resolveUser)(e,v||void 0)).username;if(w){if(!(m=await n.db.findSkillById(w)))return i.NextResponse.json({error:"Target skill not found"},{status:404});if(g&&m.user&&m.user!==g)return i.NextResponse.json({error:"Unauthorized to update this skill"},{status:403});if(f!==m.name)return i.NextResponse.json({error:`Folder name mismatch! Expected: "${m.name}", Found: "${f}". Version updates must use the exact same folder name.`},{status:400})}else{if(m=await n.db.findSkill(f,g||null))return i.NextResponse.json({error:`Skill '${f}' 已经存在,请使用 版本管理 -> 上传新版本 功能更新。`},{status:400});m=await n.db.createSkill({name:f,description:y,visibility:"private",activeVersion:0,user:g||null})}let R=await n.db.findLatestSkillVersion(m.id),k=R?R.version+1:0,E=l.default.join(process.cwd(),"data","storage","skills",m.id,`v${k}`);d(E);let S=[];for(let e=0;e<r.length;e++){let t=r[e],a=o[e],n=a.split("/"),i=n.length>1?n.slice(1).join("/"):a;if(!i)continue;let u=l.default.join(E,i);d(l.default.dirname(u));let p=Buffer.from(await t.arrayBuffer());s.default.writeFileSync(u,p),S.push(i)}let b=await n.db.createSkillVersion({skillId:m.id,version:k,content:c,assetPath:`data/storage/skills/${m.id}/v${k}`,files:JSON.stringify(S),changeLog:`Uploaded version ${k}`});return await n.db.updateSkill(m.id,{activeVersion:k}),console.log(`[Upload] Set activeVersion to ${k} for skill ${m.name}`),i.NextResponse.json({success:!0,skill:m,version:b})}catch(e){return console.error("Upload Error:",e),i.NextResponse.json({error:e.message},{status:500})}}[a,n]=o.then?(await o)():o,e.s(["POST",()=>u]),r()}catch(e){r(e)}},!1),13917,e=>e.a(async(t,r)=>{try{var a=e.i(47909),n=e.i(74017),s=e.i(60476),i=e.i(59756),l=e.i(61916),o=e.i(74677),d=e.i(69741),u=e.i(16795),p=e.i(87718),c=e.i(95169),h=e.i(47587),f=e.i(66012),y=e.i(70101),x=e.i(26937),m=e.i(10372),w=e.i(93695);e.i(52474);var v=e.i(220),g=e.i(54632),R=t([g]);[g]=R.then?(await R)():R;let S=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/skills/upload/route",pathname:"/api/skills/upload",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/upload/route.ts",nextConfigOutput:"standalone",userland:g}),{workAsyncStorage:b,workUnitAsyncStorage:C,serverHooks:A}=S;function k(){return(0,s.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:C})}async function E(e,t,r){S.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/skills/upload/route";a=a.replace(/\/index$/,"")||"/";let s=await S.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:g,params:R,nextConfig:k,parsedUrl:E,isDraftMode:b,prerenderManifest:C,routerServerContext:A,isOnDemandRevalidate:N,revalidateOnlyGenerated:U,resolvedPathname:I,clientReferenceManifest:q,serverActionsManifest:P}=s,j=(0,d.normalizeAppPath)(a),T=!!(C.dynamicRoutes[j]||C.routes[I]),O=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,E,!1):t.end("This page could not be found"),null);if(T&&!b){let e=!!C.routes[I],t=C.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(k.experimental.adapterPath)return await O();throw new w.NoFallbackError}}let _=null;!T||S.isDev||b||(_=I,_="/index"===_?"/":_);let K=!0===S.isDev||!T,$=T&&!K;P&&q&&(0,o.setManifestsSingleton)({page:a,clientReferenceManifest:q,serverActionsManifest:P});let H=e.method||"GET",B=(0,l.getTracer)(),D=B.getActiveScopeSpan(),F={params:R,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:K,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:k.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>S.onRequestError(e,t,a,n,A)},sharedContext:{buildId:g}},M=new u.NodeNextRequest(e),L=new u.NodeNextResponse(t),V=p.NextRequestAdapter.fromNodeNextRequest(M,(0,p.signalFromNodeResponse)(t));try{let s=async e=>S.handle(V,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=B.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${H} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${H} ${a}`)}),o=!!(0,i.getRequestMeta)(e,"minimalMode"),d=async i=>{var l,d;let u=async({previousCacheEntry:n})=>{try{if(!o&&N&&U&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await s(i);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&r.waitUntil&&(r.waitUntil(l),l=void 0);let d=F.renderOpts.collectedTags;if(!T)return await (0,f.sendResponse)(M,L,a,F.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,y.toNodeOutgoingHttpHeaders)(a.headers);d&&(t[m.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:N})},!1,A),t}},p=await S.handleResponse({req:e,nextConfig:k,cacheKey:_,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:U,responseGenerator:u,waitUntil:r.waitUntil,isMinimalMode:o});if(!T)return null;if((null==p||null==(l=p.value)?void 0:l.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(d=p.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",N?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,y.fromNodeOutgoingHttpHeaders)(p.value.headers);return o&&T||c.delete(m.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,x.getCacheControlHeader)(p.cacheControl)),await (0,f.sendResponse)(M,L,new Response(p.value.body,{headers:c,status:p.value.status||200})),null};D?await d(D):await B.withPropagatedContext(e.headers,()=>B.trace(c.BaseServerSpan.handleRequest,{spanName:`${H} ${a}`,kind:l.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},d))}catch(t){if(t instanceof w.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:N})},!1,A),T)throw t;return await (0,f.sendResponse)(M,L,new Response(null,{status:500})),null}}e.s(["handler",()=>E,"patchFetch",()=>k,"routeModule",()=>S,"serverHooks",()=>A,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>C]),r()}catch(e){r(e)}},!1)];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__6d8053e2._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},66680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},98043,e=>e.a(async(t,r)=>{try{let l;var n,s=e.i(97289),a=e.i(63021),i=e.i(86414),o=t([i]);[i]=o.then?(await o)():o,(0,s.config)();let u=e.g.prisma||new a.PrismaClient,d=(0,i.getDatabaseAdapter)(),c=process.env.DB_HOST?(l=(n=d).getClient())instanceof a.PrismaClient?l:{user:{findUnique:async e=>e.where?.apiKey?n.findUserByApiKey(e.where.apiKey):e.where?.username?n.findUserByUsername(e.where.username):null,findFirst:async e=>e.where?.username?n.findUserByUsername(e.where.username):null},skill:{findFirst:async e=>{let t=e.where?.name,r=e.where?.OR?.[0]?.user??e.where?.OR?.[1]?.user;return n.findSkill(t,r)},findMany:async e=>n.findSkills(e.where||{}),findUnique:async e=>n.findSkill(e.where?.name,e.where?.user),delete:async e=>(console.warn("[OpenGaussAdapter] skill.delete not fully implemented"),null)},skillVersion:{findFirst:async e=>e.where?.skillId?n.findLatestSkillVersion(e.where.skillId):null},config:{findMany:async e=>n.findConfigs(e.where||{})},session:{findUnique:async e=>e.where?.taskId?n.findSessionByTaskId(e.where.taskId):null,update:async e=>e.where?.id?n.updateSession(e.where.id,e.data):null,upsert:async e=>{let t=e.where?.taskId;return t?n.upsertSession(t,e.create,e.update):null}},execution:{findUnique:async e=>e.where?.id?n.findExecutionById(e.where.id):null,upsert:async e=>n.upsertExecution(e),findMany:async e=>n.findExecutions(e.where,e.orderBy)}}:u;e.s(["db",0,d,"prisma",0,c]),r()}catch(e){r(e)}},!1),79832,e=>e.a(async(t,r)=>{try{var n=e.i(98043),s=t([n]);async function a(e,t){if(t)return{username:t,apiKey:null};let r=e.headers.get("x-witty-api-key");if(r)return{username:await i(r),apiKey:r};let n=new URL(e.url).searchParams.get("apiKey");return n?{username:await i(n),apiKey:n}:{username:null,apiKey:null}}async function i(e){try{let t=await n.db.findUserByApiKey(e);return t?.username||null}catch(e){return console.error("[Auth] Failed to lookup user by API Key:",e),null}}async function o(e,t){let r=await n.db.findSkillById(e);return r?"public"!==r.visibility&&r.user&&(!t||r.user!==t)&&t?{allowed:!1,skill:r}:{allowed:!0,skill:r}:{allowed:!1,skill:null}}[n]=s.then?(await s)():s,e.s(["canAccessSkill",()=>o,"resolveUser",()=>a]),r()}catch(e){r(e)}},!1),6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},15162,e=>e.a(async(t,r)=>{try{var n=e.i(79832),s=e.i(89920),a=e.i(89171),i=t([n,s]);[n,s]=i.then?(await i)():i;let u={isSyncing:!1,lastResult:null,startTime:null};async function o(e){return console.log("[Enterprise-Sync-API] GET请求 - 获取同步状态"),a.NextResponse.json(u)}async function l(e){if(console.log("[Enterprise-Sync-API] POST请求 - 开始同步"),"true"!==process.env.ORGANIZATION_MODE)return console.log("[Enterprise-Sync-API] 企业模式未启用"),a.NextResponse.json({error:"企业模式未启用"},{status:400});if(u.isSyncing)return console.log("[Enterprise-Sync-API] 同步正在进行中,拒绝请求"),a.NextResponse.json({error:"同步正在进行中"},{status:409});try{console.log("[Enterprise-Sync-API] 解析用户信息");let t=(await (0,n.resolveUser)(e)).username;console.log("[Enterprise-Sync-API] 用户:",t);let r=e.headers.get("cookie")||void 0;console.log("[Enterprise-Sync-API] Cookie:",r?"存在":"不存在"),u.isSyncing=!0,u.startTime=new Date().toISOString(),console.log("[Enterprise-Sync-API] 调用同步服务");let i=await (0,s.syncEnterpriseSkills)(t,r);return u.isSyncing=!1,u.lastResult=i,console.log("[Enterprise-Sync-API] 同步完成,返回结果"),a.NextResponse.json(i)}catch(e){return u.isSyncing=!1,console.error("[Enterprise-Sync-API] 同步企业技能失败:",e),console.error("[Enterprise-Sync-API] 错误信息:",e.message),console.error("[Enterprise-Sync-API] 错误堆栈:",e.stack),a.NextResponse.json({error:e.message},{status:500})}}e.s(["GET",()=>o,"POST",()=>l]),r()}catch(e){r(e)}},!1),56747,e=>e.a(async(t,r)=>{try{var n=e.i(47909),s=e.i(74017),a=e.i(60476),i=e.i(59756),o=e.i(61916),l=e.i(74677),u=e.i(69741),d=e.i(16795),c=e.i(87718),p=e.i(95169),y=e.i(47587),h=e.i(66012),x=e.i(70101),f=e.i(26937),w=e.i(10372),g=e.i(93695);e.i(52474);var R=e.i(220),m=e.i(15162),v=t([m]);[m]=v.then?(await v)():v;let A=new n.AppRouteRouteModule({definition:{kind:s.RouteKind.APP_ROUTE,page:"/api/skills/sync-enterprise/route",pathname:"/api/skills/sync-enterprise",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/sync-enterprise/route.ts",nextConfigOutput:"standalone",userland:m}),{workAsyncStorage:k,workUnitAsyncStorage:P,serverHooks:C}=A;function E(){return(0,a.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:P})}async function S(e,t,r){A.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/skills/sync-enterprise/route";n=n.replace(/\/index$/,"")||"/";let a=await A.prepare(e,t,{srcPage:n,multiZoneDraftMode:!1});if(!a)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:m,params:v,nextConfig:E,parsedUrl:S,isDraftMode:k,prerenderManifest:P,routerServerContext:C,isOnDemandRevalidate:I,revalidateOnlyGenerated:b,resolvedPathname:T,clientReferenceManifest:O,serverActionsManifest:q}=a,N=(0,u.normalizeAppPath)(n),U=!!(P.dynamicRoutes[N]||P.routes[T]),j=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,S,!1):t.end("This page could not be found"),null);if(U&&!k){let e=!!P.routes[T],t=P.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await j();throw new g.NoFallbackError}}let _=null;!U||A.isDev||k||(_=T,_="/index"===_?"/":_);let H=!0===A.isDev||!U,K=U&&!H;q&&O&&(0,l.setManifestsSingleton)({page:n,clientReferenceManifest:O,serverActionsManifest:q});let D=e.method||"GET",M=(0,o.getTracer)(),B=M.getActiveScopeSpan(),F={params:v,prerenderManifest:P,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:H,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,s)=>A.onRequestError(e,t,n,s,C)},sharedContext:{buildId:m}},$=new d.NodeNextRequest(e),G=new d.NodeNextResponse(t),L=c.NextRequestAdapter.fromNodeNextRequest($,(0,c.signalFromNodeResponse)(t));try{let a=async e=>A.handle(L,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let t=`${D} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${n}`)}),l=!!(0,i.getRequestMeta)(e,"minimalMode"),u=async i=>{var o,u;let d=async({previousCacheEntry:s})=>{try{if(!l&&I&&b&&!s)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await a(i);e.fetchMetrics=F.renderOpts.fetchMetrics;let o=F.renderOpts.pendingWaitUntil;o&&r.waitUntil&&(r.waitUntil(o),o=void 0);let u=F.renderOpts.collectedTags;if(!U)return await (0,h.sendResponse)($,G,n,F.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,x.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[w.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=w.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,s=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=w.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==s?void 0:s.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:n,routeType:"route",revalidateReason:(0,y.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:I})},!1,C),t}},c=await A.handleResponse({req:e,nextConfig:E,cacheKey:_,routeKind:s.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:I,revalidateOnlyGenerated:b,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:l});if(!U)return null;if((null==c||null==(o=c.value)?void 0:o.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(u=c.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",I?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let p=(0,x.fromNodeOutgoingHttpHeaders)(c.value.headers);return l&&U||p.delete(w.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||p.get("Cache-Control")||p.set("Cache-Control",(0,f.getCacheControlHeader)(c.cacheControl)),await (0,h.sendResponse)($,G,new Response(c.value.body,{headers:p,status:c.value.status||200})),null};B?await u(B):await M.withPropagatedContext(e.headers,()=>M.trace(p.BaseServerSpan.handleRequest,{spanName:`${D} ${n}`,kind:o.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},u))}catch(t){if(t instanceof g.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,y.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:I})},!1,C),U)throw t;return await (0,h.sendResponse)($,G,new Response(null,{status:500})),null}}e.s(["handler",()=>S,"patchFetch",()=>E,"routeModule",()=>A,"serverHooks",()=>C,"workAsyncStorage",()=>k,"workUnitAsyncStorage",()=>P]),r()}catch(e){r(e)}},!1)];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__8402dfd1._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[80490,e=>{e.v({name:"dotenv",version:"17.3.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run tests/**/*.js --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run tests/**/*.js --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}})},97289,(e,t,r)=>{let s=e.r(22734),n=e.r(14747),i=e.r(46786),a=e.r(54799),o=e.r(80490).version,l=["🔐 encrypt with Dotenvx: https://dotenvx.com","🔐 prevent committing .env to code: https://dotenvx.com/precommit","🔐 prevent building .env in docker: https://dotenvx.com/prebuild","🤖 agentic secret storage: https://dotenvx.com/as2","⚡️ secrets for agents: https://dotenvx.com/as2","🛡️ auth for agents: https://vestauth.com","🛠️ run anywhere with `dotenvx run -- yourcommand`","⚙️ specify custom .env file path with { path: '/custom/path/.env' }","⚙️ enable debug logging with { debug: true }","⚙️ override existing env vars with { override: true }","⚙️ suppress all logs with { quiet: true }","⚙️ write to custom object with { processEnv: myObject }","⚙️ load multiple .env files with { path: ['.env.local', '.env'] }"];function u(e){return"string"==typeof e?!["false","0","no","off",""].includes(e.toLowerCase()):!!e}let c=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function d(e){console.log(`[dotenv@${o}][DEBUG] ${e}`)}function E(e){console.log(`[dotenv@${o}] ${e}`)}function p(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function h(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)s.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=n.resolve(process.cwd(),".env.vault");return s.existsSync(t)?t:null}function f(e){return"~"===e[0]?n.join(i.homedir(),e.slice(1)):e}let y={configDotenv:function(e){let t,r=n.resolve(process.cwd(),".env"),i="utf8",a=process.env;e&&null!=e.processEnv&&(a=e.processEnv);let o=u(a.DOTENV_CONFIG_DEBUG||e&&e.debug),c=u(a.DOTENV_CONFIG_QUIET||e&&e.quiet);e&&e.encoding?i=e.encoding:o&&d("No encoding is specified. UTF-8 is used by default");let p=[r];if(e&&e.path)if(Array.isArray(e.path))for(let t of(p=[],e.path))p.push(f(t));else p=[f(e.path)];let h={};for(let r of p)try{let t=y.parse(s.readFileSync(r,{encoding:i}));y.populate(h,t,e)}catch(e){o&&d(`Failed to load ${r} ${e.message}`),t=e}let w=y.populate(a,h,e);if(o=u(a.DOTENV_CONFIG_DEBUG||o),c=u(a.DOTENV_CONFIG_QUIET||c),o||!c){var $;let e=Object.keys(w).length,r=[];for(let e of p)try{let t=n.relative(process.cwd(),e);r.push(t)}catch(r){o&&d(`Failed to load ${e} ${r.message}`),t=r}E(`injecting env (${e}) from ${r.join(",")} ${($=`-- tip: ${l[Math.floor(Math.random()*l.length)]}`,process.stdout.isTTY?`\x1b[2m${$}\x1b[0m`:$)}`)}return t?{parsed:h,error:t}:{parsed:h}},_configVault:function(e){let t=u(process.env.DOTENV_CONFIG_DEBUG||e&&e.debug),r=u(process.env.DOTENV_CONFIG_QUIET||e&&e.quiet);(t||!r)&&E("Loading env from encrypted .env.vault");let s=y._parseVault(e),n=process.env;return e&&null!=e.processEnv&&(n=e.processEnv),y.populate(n,s,e),{parsed:s}},_parseVault:function(e){let t,r=h(e=e||{});e.path=r;let s=y.configDotenv(e);if(!s.parsed){let e=Error(`MISSING_DATA: Cannot parse ${r} for an unknown reason`);throw e.code="MISSING_DATA",e}let n=p(e).split(","),i=n.length;for(let e=0;e<i;e++)try{let r=n[e].trim(),i=function(e,t){let r;try{r=new URL(t)}catch(e){if("ERR_INVALID_URL"===e.code){let e=Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw e.code="INVALID_DOTENV_KEY",e}throw e}let s=r.password;if(!s){let e=Error("INVALID_DOTENV_KEY: Missing key part");throw e.code="INVALID_DOTENV_KEY",e}let n=r.searchParams.get("environment");if(!n){let e=Error("INVALID_DOTENV_KEY: Missing environment part");throw e.code="INVALID_DOTENV_KEY",e}let i=`DOTENV_VAULT_${n.toUpperCase()}`,a=e.parsed[i];if(!a){let e=Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${i} in your .env.vault file.`);throw e.code="NOT_FOUND_DOTENV_ENVIRONMENT",e}return{ciphertext:a,key:s}}(s,r);t=y.decrypt(i.ciphertext,i.key);break}catch(t){if(e+1>=i)throw t}return y.parse(t)},config:function(e){if(0===p(e).length)return y.configDotenv(e);let t=h(e);if(!t){var r;return r=`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`,console.error(`[dotenv@${o}][WARN] ${r}`),y.configDotenv(e)}return y._configVault(e)},decrypt:function(e,t){let r=Buffer.from(t.slice(-64),"hex"),s=Buffer.from(e,"base64"),n=s.subarray(0,12),i=s.subarray(-16);s=s.subarray(12,-16);try{let e=a.createDecipheriv("aes-256-gcm",r,n);return e.setAuthTag(i),`${e.update(s)}${e.final()}`}catch(s){let e=s instanceof RangeError,t="Invalid key length"===s.message,r="Unsupported state or unable to authenticate data"===s.message;if(e||t){let e=Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw e.code="INVALID_DOTENV_KEY",e}if(r){let e=Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw e.code="DECRYPTION_FAILED",e}throw s}},parse:function(e){let t,r={},s=e.toString();for(s=s.replace(/\r\n?/mg,"\n");null!=(t=c.exec(s));){let e=t[1],s=t[2]||"",n=(s=s.trim())[0];s=s.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),'"'===n&&(s=(s=s.replace(/\\n/g,"\n")).replace(/\\r/g,"\r")),r[e]=s}return r},populate:function(e,t,r={}){let s=!!(r&&r.debug),n=!!(r&&r.override),i={};if("object"!=typeof t){let e=Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw e.code="OBJECT_REQUIRED",e}for(let r of Object.keys(t))Object.prototype.hasOwnProperty.call(e,r)?(!0===n&&(e[r]=t[r],i[r]=t[r]),s&&(!0===n?d(`"${r}" is already defined and WAS overwritten`):d(`"${r}" is already defined and was NOT overwritten`))):(e[r]=t[r],i[r]=t[r]);return i}};t.exports.configDotenv=y.configDotenv,t.exports._configVault=y._configVault,t.exports._parseVault=y._parseVault,t.exports.config=y.config,t.exports.decrypt=y.decrypt,t.exports.parse=y.parse,t.exports.populate=y.populate,t.exports=y},63021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},23862,e=>e.a(async(t,r)=>{try{let t=await e.y("pg-587764f78a6c7a9c");e.n(t),r()}catch(e){r(e)}},!0),5499,95638,84076,30901,e=>{"use strict";var t=e.i(66680);let r={randomUUID:t.randomUUID},s=new Uint8Array(256),n=s.length;function i(){return n>s.length-16&&((0,t.randomFillSync)(s),n=0),s.slice(n,n+=16)}e.s(["default",()=>i],95638);let a=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i,o=function(e){return"string"==typeof e&&a.test(e)};e.s(["default",0,o],84076);let l=[];for(let e=0;e<256;++e)l.push((e+256).toString(16).slice(1));function u(e,t=0){return(l[e[t+0]]+l[e[t+1]]+l[e[t+2]]+l[e[t+3]]+"-"+l[e[t+4]]+l[e[t+5]]+"-"+l[e[t+6]]+l[e[t+7]]+"-"+l[e[t+8]]+l[e[t+9]]+"-"+l[e[t+10]]+l[e[t+11]]+l[e[t+12]]+l[e[t+13]]+l[e[t+14]]+l[e[t+15]]).toLowerCase()}e.s(["default",0,function(e,t=0){let r=u(e,t);if(!o(r))throw TypeError("Stringified UUID is invalid");return r},"unsafeStringify",()=>u],30901),e.s(["default",0,function(e,t,s){if(r.randomUUID&&!t&&!e)return r.randomUUID();var n=e,a=s;let o=(n=n||{}).random??n.rng?.()??i();if(o.length<16)throw Error("Random bytes length must be >= 16");if(o[6]=15&o[6]|64,o[8]=63&o[8]|128,t){if((a=a||0)<0||a+16>t.length)throw RangeError(`UUID byte range ${a}:${a+15} is out of buffer bounds`);for(let e=0;e<16;++e)t[a+e]=o[e];return t}return u(o)}],5499)},89960,e=>{"use strict";var t=e.i(5499);e.s(["v4",()=>t.default])},86414,e=>e.a(async(t,r)=>{try{var s=e.i(97289),n=e.i(63021),i=e.i(23862),a=e.i(89960),o=t([i]);[i]=o.then?(await o)():o,(0,s.config)();class u{client;constructor(e){this.client=e}getClient(){return this.client}async createSession(e){return this.client.session.create({data:e})}async updateSession(e,t){return t.id?this.client.session.update({where:{id:t.id},data:t}):this.client.session.update({where:{taskId:e},data:t})}async upsertSession(e,t,r){return this.client.session.upsert({where:{taskId:e},create:t,update:r})}async findSessionByTaskId(e){return this.client.session.findUnique({where:{taskId:e}})}async findUserByApiKey(e){return this.client.user.findUnique({where:{apiKey:e}})}async findUserByUsername(e){return this.client.user.findUnique({where:{username:e}})}async createUser(e){return this.client.user.create({data:e})}async findSkill(e,t){let r=await this.client.skill.findMany({where:{user:t},include:{versions:{orderBy:{version:"desc"}}}}),s=e.toLowerCase();return r.find(e=>e.name.toLowerCase()===s)||null}async findSkillById(e){return this.client.skill.findUnique({where:{id:e},include:{versions:{orderBy:{version:"desc"}}}})}async createSkill(e){return this.client.skill.create({data:e})}async updateSkill(e,t){return this.client.skill.update({where:{id:e},data:t})}async deleteSkill(e){return this.client.skill.delete({where:{id:e}})}async findSkills(e){return this.client.skill.findMany({where:e,include:{versions:{orderBy:{version:"desc"}}}})}async findLatestSkillVersion(e){return this.client.skillVersion.findFirst({where:{skillId:e},orderBy:{version:"desc"}})}async createSkillVersion(e){return this.client.skillVersion.create({data:e})}async findSkillVersion(e,t){return this.client.skillVersion.findFirst({where:{skillId:e,version:t}})}async deleteSkillVersion(e,t){return this.client.skillVersion.deleteMany({where:{skillId:e,version:t}})}async findConfigs(e){return this.client.config.findMany({where:e,orderBy:{id:"desc"}})}async findConfigById(e){return this.client.config.findUnique({where:{id:e}})}async createConfig(e){return this.client.config.create({data:e})}async updateConfig(e,t){return this.client.config.update({where:{id:e},data:t})}async findExecutionById(e){return this.client.execution.findUnique({where:{id:e}})}async findExecutions(e,t){return this.client.execution.findMany({where:e,orderBy:t})}async upsertExecution(e){return this.client.execution.upsert(e)}async deleteExecution(e){try{return await this.client.execution.delete({where:{id:e}}),!0}catch{return!1}}async deleteExecutions(e){return(await this.client.execution.deleteMany({where:e})).count}async findUserSettings(e){return this.client.userSettings.findUnique({where:{user:e}})}async upsertUserSettings(e,t){return this.client.userSettings.upsert({where:{user:e},update:{settingsJson:t},create:{user:e,settingsJson:t}})}async findParsedFlow(e,t,r){return this.client.parsedFlow.findFirst({where:{skillId:e,version:t,user:r}})}async upsertParsedFlow(e){let{skillId:t,version:r,user:s}=e;return this.client.parsedFlow.upsert({where:{skillId_version_user:{skillId:t,version:r,user:s}},create:e,update:e})}async findExecutionMatch(e){return this.client.executionMatch.findUnique({where:{executionId:e}})}async upsertExecutionMatch(e){let{executionId:t}=e;return this.client.executionMatch.upsert({where:{executionId:t},create:e,update:e})}async findUserGuideState(e){return this.client.userGuideState.findUnique({where:{user:e}})}async upsertUserGuideState(e,t){return this.client.userGuideState.upsert({where:{user:e},update:t,create:{user:e,...t}})}async updateUserGuideState(e,t){return this.client.userGuideState.update({where:{user:e},data:t})}}class c{pool;constructor(e){this.pool=new i.Pool(e)}getClient(){return this.pool}async query(e,t){return this.pool.query(e,t)}async createSession(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "Session" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async updateSession(e,t){let r=Object.keys(t).filter(e=>"id"!==e&&"taskId"!==e);if(0===r.length)return null;let s=r.map((e,t)=>`"${e}" = $${t+2}`).join(", "),n=r.map(e=>t[e]),i='WHERE "taskId" = $1',a=e;t.id&&(i="WHERE id = $1",a=t.id);let o=`UPDATE "Session" SET ${s} ${i} RETURNING *`;return(await this.query(o,[a,...n])).rows[0]}async upsertSession(e,t,r){let s=await this.pool.connect();try{let n;await s.query("BEGIN");let i=await s.query('SELECT * FROM "Session" WHERE "taskId" = $1',[e]);if(i.rows.length>0){let t={};for(let[e,s]of Object.entries(r))void 0!==s&&(t[e]=s);let a=Object.keys(t);if(a.length>0){let r=a.map((e,t)=>`"${e}" = $${t+2}`).join(", "),i=a.map(e=>t[e]),o=`UPDATE "Session" SET ${r} WHERE "taskId" = $1 RETURNING *`;n=(await s.query(o,[e,...i])).rows[0]}else n=i.rows[0]}else{t.taskId||(t.taskId=e);let r={};for(let[e,s]of Object.entries(t))void 0!==s&&(r[e]=s);let i=Object.keys(r),o=Object.values(r),l=i.map(e=>`"${e}"`).join(", "),u=i.map((e,t)=>`$${t+1}`).join(", "),c=(0,a.v4)(),d=`INSERT INTO "Session" (${l}, id) VALUES (${u}, $${i.length+1}) RETURNING *`;n=(await s.query(d,[...o,c])).rows[0]}return await s.query("COMMIT"),n}catch(e){throw await s.query("ROLLBACK"),e}finally{s.release()}}async findSessionByTaskId(e){return(await this.query('SELECT * FROM "Session" WHERE "taskId" = $1',[e])).rows[0]||null}async findUserByApiKey(e){return(await this.query('SELECT * FROM "User" WHERE "apiKey" = $1',[e])).rows[0]||null}async findUserByUsername(e){return(await this.query('SELECT * FROM "User" WHERE username = $1',[e])).rows[0]||null}async createUser(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "User" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async findSkill(e,t){let r='SELECT * FROM "Skill" WHERE LOWER(name) = LOWER($1)',s=[e];t?(r+=' AND "user" = $2',s.push(t)):r+=' AND "user" IS NULL';let n=(await this.query(r,s)).rows[0]||null;if(n){let e=await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 ORDER BY version DESC',[n.id]);n.versions=e.rows}return n}async findSkillById(e){let t=(await this.query('SELECT * FROM "Skill" WHERE id = $1',[e])).rows[0]||null;if(t){let e=await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 ORDER BY version DESC',[t.id]);t.versions=e.rows}return t}async createSkill(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "Skill" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async updateSkill(e,t){let r=Object.keys(t).filter(e=>"id"!==e);if(0===r.length)return null;let s=r.map((e,t)=>`"${e}" = $${t+2}`).join(", "),n=r.map(e=>t[e]),i=`UPDATE "Skill" SET ${s} WHERE id = $1 RETURNING *`;return(await this.query(i,[e,...n])).rows[0]}async deleteSkill(e){return(await this.query('DELETE FROM "Skill" WHERE id = $1 RETURNING *',[e])).rows[0]||null}async findSkills(e){let t='SELECT * FROM "Skill"',r=[],s=[];if(void 0!==e.isUploaded&&(s.push(`"isUploaded" = $${r.length+1}`),r.push(e.isUploaded)),e.OR){let t=[];for(let s of e.OR)void 0!==s.user&&(null===s.user?t.push('"user" IS NULL'):(t.push(`"user" = $${r.length+1}`),r.push(s.user))),s.visibility&&(t.push(`"visibility" = $${r.length+1}`),r.push(s.visibility));t.length>0&&s.push(`(${t.join(" OR ")})`)}else e.name&&e.user&&(s.push(`name = $${r.length+1}`),r.push(e.name),s.push(`"user" = $${r.length+1}`),r.push(e.user));e.category&&(s.push(`category = $${r.length+1}`),r.push(e.category)),s.length>0&&(t+=" WHERE "+s.join(" AND "));let n=(await this.query(t,r)).rows;for(let e of n){let t=await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 ORDER BY version DESC',[e.id]);e.versions=t.rows}return n}async findLatestSkillVersion(e){return(await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 ORDER BY version DESC LIMIT 1',[e])).rows[0]||null}async createSkillVersion(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "SkillVersion" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async findSkillVersion(e,t){return(await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 AND version = $2',[e,t])).rows[0]||null}async deleteSkillVersion(e,t){return(await this.query('DELETE FROM "SkillVersion" WHERE "skillId" = $1 AND version = $2 RETURNING *',[e,t])).rows[0]||null}async findConfigs(e){let t='SELECT * FROM "Config"',r=[],s=[];if(e.OR){let t=[];for(let s of e.OR)void 0!==s.user&&(null===s.user?t.push('"user" IS NULL'):(t.push(`"user" = $${r.length+1}`),r.push(s.user)));t.length>0&&s.push(`(${t.join(" OR ")})`)}return s.length>0&&(t+=" WHERE "+s.join(" AND ")),t+=" ORDER BY id DESC",(await this.query(t,r)).rows}async findConfigById(e){return(await this.query('SELECT * FROM "Config" WHERE id = $1',[e])).rows[0]||null}async createConfig(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "Config" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async updateConfig(e,t){let r=Object.keys(t).filter(e=>"id"!==e);if(0===r.length)return null;let s=r.map((e,t)=>`"${e}" = $${t+2}`).join(", "),n=r.map(e=>t[e]),i=`UPDATE "Config" SET ${s} WHERE id = $1 RETURNING *`;return(await this.query(i,[e,...n])).rows[0]}async findExecutionById(e){return(await this.query('SELECT * FROM "Execution" WHERE id = $1',[e])).rows[0]||null}async findExecutions(e,t){let r='SELECT * FROM "Execution"',s=[],n=[];if(e.OR){let t=[];for(let r of e.OR)void 0!==r.user&&(null===r.user?t.push('"user" IS NULL'):(t.push(`"user" = $${s.length+1}`),s.push(r.user)));t.length>0&&n.push(`(${t.join(" OR ")})`)}return void 0!==e.id&&(n.push(`"id" = $${s.length+1}`),s.push(e.id)),void 0!==e.query&&(null===e.query?n.push('"query" IS NULL'):(n.push(`"query" = $${s.length+1}`),s.push(e.query))),void 0!==e.framework&&(null===e.framework?n.push('"framework" IS NULL'):(n.push(`"framework" = $${s.length+1}`),s.push(e.framework))),void 0!==e.taskId&&(null===e.taskId?n.push('"taskId" IS NULL'):(n.push(`"taskId" = $${s.length+1}`),s.push(e.taskId))),void 0!==e.skill&&(null===e.skill?n.push("skill IS NULL"):(n.push(`skill = $${s.length+1}`),s.push(e.skill))),void 0!==e.skillVersion&&(null===e.skillVersion?n.push('"skillVersion" IS NULL'):(n.push(`"skillVersion" = $${s.length+1}`),s.push(e.skillVersion))),n.length>0&&(r+=" WHERE "+n.join(" AND ")),t?.timestamp==="desc"&&(r+=' ORDER BY "timestamp" DESC'),(await this.query(r,s)).rows}async upsertExecution(e){let{where:t,create:r,update:s}=e,n=t.id,i=await this.pool.connect();try{let e;await i.query("BEGIN");let t=await i.query('SELECT * FROM "Execution" WHERE id = $1',[n]);if(t.rows.length>0){let r={};for(let[e,t]of Object.entries(s))void 0!==t&&(r[e]=t);let a=Object.keys(r);if(a.length>0){let t=a.map((e,t)=>`"${e}" = $${t+2}`).join(", "),s=a.map(e=>r[e]),o=`UPDATE "Execution" SET ${t} WHERE id = $1 RETURNING *`;e=(await i.query(o,[n,...s])).rows[0]}else e=t.rows[0]}else{let t={};for(let[e,s]of Object.entries(r))void 0!==s&&(t[e]=s);let s=Object.keys(t),n=Object.values(t),a=s.map(e=>`"${e}"`).join(", "),o=s.map((e,t)=>`$${t+1}`).join(", "),l=`INSERT INTO "Execution" (${a}) VALUES (${o}) RETURNING *`;e=(await i.query(l,n)).rows[0]}return await i.query("COMMIT"),e}catch(e){throw await i.query("ROLLBACK"),e}finally{i.release()}}async deleteExecution(e){try{return((await this.query('DELETE FROM "Execution" WHERE id = $1',[e])).rowCount??0)>0}catch{return!1}}async deleteExecutions(e){let t='DELETE FROM "Execution"',r=[],s=[];return e.taskId&&(s.push(`"taskId" = $${r.length+1}`),r.push(e.taskId)),e.timestamp&&e.framework&&e.query&&(s.push(`"timestamp" = $${r.length+1}`),r.push(e.timestamp),s.push(`framework = $${r.length+1}`),r.push(e.framework),s.push(`query = $${r.length+1}`),r.push(e.query)),s.length>0&&(t+=" WHERE "+s.join(" AND ")),(await this.query(t,r)).rowCount??0}async findUserSettings(e){return(await this.query('SELECT * FROM "UserSettings" WHERE "user" = $1',[e])).rows[0]||null}async upsertUserSettings(e,t){let r=await this.pool.connect();try{let s;if(await r.query("BEGIN"),(await r.query('SELECT * FROM "UserSettings" WHERE "user" = $1',[e])).rows.length>0)s=(await r.query('UPDATE "UserSettings" SET "settingsJson" = $1, "updatedAt" = CURRENT_TIMESTAMP WHERE "user" = $2 RETURNING *',[t,e])).rows[0];else{let n=(0,a.v4)();s=(await r.query('INSERT INTO "UserSettings" (id, "user", "settingsJson") VALUES ($1, $2, $3) RETURNING *',[n,e,t])).rows[0]}return await r.query("COMMIT"),s}catch(e){throw await r.query("ROLLBACK"),e}finally{r.release()}}async findParsedFlow(e,t,r){let s='SELECT * FROM "ParsedFlow" WHERE "skillId" = $1 AND version = $2',n=[e,t];return r?(s+=' AND "user" = $3',n.push(r)):s+=' AND "user" IS NULL',(await this.query(s,n)).rows[0]||null}async upsertParsedFlow(e){let{skillId:t,version:r,user:s,flowJson:n,mermaidCode:i}=e,o=await this.pool.connect();try{let e;await o.query("BEGIN");let l='SELECT * FROM "ParsedFlow" WHERE "skillId" = $1 AND version = $2',u=[t,r];s?(l+=' AND "user" = $3',u.push(s)):l+=' AND "user" IS NULL';let c=await o.query(l,u);if(c.rows.length>0)e=(await o.query('UPDATE "ParsedFlow" SET "flowJson" = $1, "mermaidCode" = $2, "parsedAt" = CURRENT_TIMESTAMP WHERE id = $3 RETURNING *',[n,i,c.rows[0].id])).rows[0];else{let l=(0,a.v4)();e=(await o.query('INSERT INTO "ParsedFlow" (id, "skillId", version, "user", "flowJson", "mermaidCode") VALUES ($1, $2, $3, $4, $5, $6) RETURNING *',[l,t,r,s,n,i])).rows[0]}return await o.query("COMMIT"),e}catch(e){throw await o.query("ROLLBACK"),e}finally{o.release()}}async findExecutionMatch(e){return(await this.query('SELECT * FROM "ExecutionMatch" WHERE "executionId" = $1',[e])).rows[0]||null}async upsertExecutionMatch(e){let{executionId:t,skillId:r,skillVersion:s,user:n,mode:i,matchJson:o,staticMermaid:l,dynamicMermaid:u,analysisText:c,extractedSteps:d,interactionCount:E}=e,p=await this.pool.connect();try{let e;if(await p.query("BEGIN"),(await p.query('SELECT * FROM "ExecutionMatch" WHERE "executionId" = $1',[t])).rows.length>0)e=(await p.query('UPDATE "ExecutionMatch" SET "skillId" = $1, "skillVersion" = $2, "user" = $3, "mode" = $4, "matchJson" = $5, "staticMermaid" = $6, "dynamicMermaid" = $7, "analysisText" = $8, "extractedSteps" = $9, "interactionCount" = $10, "matchedAt" = CURRENT_TIMESTAMP WHERE "executionId" = $11 RETURNING *',[r,s,n,i,o,l,u,c,d,E,t])).rows[0];else{let h=(0,a.v4)();e=(await p.query('INSERT INTO "ExecutionMatch" (id, "executionId", "skillId", "skillVersion", "user", "mode", "matchJson", "staticMermaid", "dynamicMermaid", "analysisText", "extractedSteps", "interactionCount") VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12) RETURNING *',[h,t,r,s,n,i,o,l,u,c,d,E])).rows[0]}return await p.query("COMMIT"),e}catch(e){throw await p.query("ROLLBACK"),e}finally{p.release()}}async findUserGuideState(e){return(await this.query('SELECT * FROM "UserGuideState" WHERE "user" = $1',[e])).rows[0]||null}async upsertUserGuideState(e,t){let r=await this.pool.connect();try{let s;await r.query("BEGIN");let n=await r.query('SELECT * FROM "UserGuideState" WHERE "user" = $1',[e]);if(n.rows.length>0){let i=Object.keys(t);if(i.length>0){let n=i.map((e,t)=>`"${e}" = $${t+2}`).join(", "),a=i.map(e=>t[e]);s=(await r.query(`UPDATE "UserGuideState" SET ${n}, "updatedAt" = CURRENT_TIMESTAMP WHERE "user" = $1 RETURNING *`,[e,...a])).rows[0]}else s=n.rows[0]}else{let n=(0,a.v4)(),i=Object.keys(t),o=Object.values(t),l=["id","user",...i].map(e=>`"${e}"`).join(", "),u=i.map((e,t)=>`$${t+3}`).join(", ");s=(await r.query(`INSERT INTO "UserGuideState" (${l}) VALUES ($1, $2, ${u}) RETURNING *`,[n,e,...o])).rows[0]}return await r.query("COMMIT"),s}catch(e){throw await r.query("ROLLBACK"),e}finally{r.release()}}async updateUserGuideState(e,t){let r=Object.keys(t);if(0===r.length)return null;let s=r.map((e,t)=>`"${e}" = $${t+2}`).join(", "),n=r.map(e=>t[e]);return(await this.query(`UPDATE "UserGuideState" SET ${s}, "updatedAt" = CURRENT_TIMESTAMP WHERE "user" = $1 RETURNING *`,[e,...n])).rows[0]||null}}function l(){if(console.log("[DatabaseAdapter] DB_HOST:",process.env.DB_HOST),process.env.DB_HOST)return console.log("[DatabaseAdapter] Using OpenGauss Adapter"),new c({host:process.env.DB_HOST,port:parseInt(process.env.DB_PORT||"5432"),database:process.env.DB_NAME||"postgres",user:process.env.DB_USER||"omm",password:process.env.DB_PASSWORD});console.log("[DatabaseAdapter] Using Prisma Adapter");let t=e.g.prisma||new n.PrismaClient;return new u(t)}e.s(["getDatabaseAdapter",()=>l]),r()}catch(e){r(e)}},!1)];
|
|
1
|
+
module.exports=[80490,e=>{e.v({name:"dotenv",version:"17.3.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run tests/**/*.js --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run tests/**/*.js --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}})},97289,(e,t,r)=>{let s=e.r(22734),n=e.r(14747),i=e.r(46786),a=e.r(54799),o=e.r(80490).version,l=["🔐 encrypt with Dotenvx: https://dotenvx.com","🔐 prevent committing .env to code: https://dotenvx.com/precommit","🔐 prevent building .env in docker: https://dotenvx.com/prebuild","🤖 agentic secret storage: https://dotenvx.com/as2","⚡️ secrets for agents: https://dotenvx.com/as2","🛡️ auth for agents: https://vestauth.com","🛠️ run anywhere with `dotenvx run -- yourcommand`","⚙️ specify custom .env file path with { path: '/custom/path/.env' }","⚙️ enable debug logging with { debug: true }","⚙️ override existing env vars with { override: true }","⚙️ suppress all logs with { quiet: true }","⚙️ write to custom object with { processEnv: myObject }","⚙️ load multiple .env files with { path: ['.env.local', '.env'] }"];function u(e){return"string"==typeof e?!["false","0","no","off",""].includes(e.toLowerCase()):!!e}let c=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function d(e){console.log(`[dotenv@${o}][DEBUG] ${e}`)}function E(e){console.log(`[dotenv@${o}] ${e}`)}function h(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function p(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)s.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=n.resolve(process.cwd(),".env.vault");return s.existsSync(t)?t:null}function f(e){return"~"===e[0]?n.join(i.homedir(),e.slice(1)):e}let y={configDotenv:function(e){let t,r=n.resolve(process.cwd(),".env"),i="utf8",a=process.env;e&&null!=e.processEnv&&(a=e.processEnv);let o=u(a.DOTENV_CONFIG_DEBUG||e&&e.debug),c=u(a.DOTENV_CONFIG_QUIET||e&&e.quiet);e&&e.encoding?i=e.encoding:o&&d("No encoding is specified. UTF-8 is used by default");let h=[r];if(e&&e.path)if(Array.isArray(e.path))for(let t of(h=[],e.path))h.push(f(t));else h=[f(e.path)];let p={};for(let r of h)try{let t=y.parse(s.readFileSync(r,{encoding:i}));y.populate(p,t,e)}catch(e){o&&d(`Failed to load ${r} ${e.message}`),t=e}let w=y.populate(a,p,e);if(o=u(a.DOTENV_CONFIG_DEBUG||o),c=u(a.DOTENV_CONFIG_QUIET||c),o||!c){var $;let e=Object.keys(w).length,r=[];for(let e of h)try{let t=n.relative(process.cwd(),e);r.push(t)}catch(r){o&&d(`Failed to load ${e} ${r.message}`),t=r}E(`injecting env (${e}) from ${r.join(",")} ${($=`-- tip: ${l[Math.floor(Math.random()*l.length)]}`,process.stdout.isTTY?`\x1b[2m${$}\x1b[0m`:$)}`)}return t?{parsed:p,error:t}:{parsed:p}},_configVault:function(e){let t=u(process.env.DOTENV_CONFIG_DEBUG||e&&e.debug),r=u(process.env.DOTENV_CONFIG_QUIET||e&&e.quiet);(t||!r)&&E("Loading env from encrypted .env.vault");let s=y._parseVault(e),n=process.env;return e&&null!=e.processEnv&&(n=e.processEnv),y.populate(n,s,e),{parsed:s}},_parseVault:function(e){let t,r=p(e=e||{});e.path=r;let s=y.configDotenv(e);if(!s.parsed){let e=Error(`MISSING_DATA: Cannot parse ${r} for an unknown reason`);throw e.code="MISSING_DATA",e}let n=h(e).split(","),i=n.length;for(let e=0;e<i;e++)try{let r=n[e].trim(),i=function(e,t){let r;try{r=new URL(t)}catch(e){if("ERR_INVALID_URL"===e.code){let e=Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw e.code="INVALID_DOTENV_KEY",e}throw e}let s=r.password;if(!s){let e=Error("INVALID_DOTENV_KEY: Missing key part");throw e.code="INVALID_DOTENV_KEY",e}let n=r.searchParams.get("environment");if(!n){let e=Error("INVALID_DOTENV_KEY: Missing environment part");throw e.code="INVALID_DOTENV_KEY",e}let i=`DOTENV_VAULT_${n.toUpperCase()}`,a=e.parsed[i];if(!a){let e=Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${i} in your .env.vault file.`);throw e.code="NOT_FOUND_DOTENV_ENVIRONMENT",e}return{ciphertext:a,key:s}}(s,r);t=y.decrypt(i.ciphertext,i.key);break}catch(t){if(e+1>=i)throw t}return y.parse(t)},config:function(e){if(0===h(e).length)return y.configDotenv(e);let t=p(e);if(!t){var r;return r=`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`,console.error(`[dotenv@${o}][WARN] ${r}`),y.configDotenv(e)}return y._configVault(e)},decrypt:function(e,t){let r=Buffer.from(t.slice(-64),"hex"),s=Buffer.from(e,"base64"),n=s.subarray(0,12),i=s.subarray(-16);s=s.subarray(12,-16);try{let e=a.createDecipheriv("aes-256-gcm",r,n);return e.setAuthTag(i),`${e.update(s)}${e.final()}`}catch(s){let e=s instanceof RangeError,t="Invalid key length"===s.message,r="Unsupported state or unable to authenticate data"===s.message;if(e||t){let e=Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw e.code="INVALID_DOTENV_KEY",e}if(r){let e=Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw e.code="DECRYPTION_FAILED",e}throw s}},parse:function(e){let t,r={},s=e.toString();for(s=s.replace(/\r\n?/mg,"\n");null!=(t=c.exec(s));){let e=t[1],s=t[2]||"",n=(s=s.trim())[0];s=s.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),'"'===n&&(s=(s=s.replace(/\\n/g,"\n")).replace(/\\r/g,"\r")),r[e]=s}return r},populate:function(e,t,r={}){let s=!!(r&&r.debug),n=!!(r&&r.override),i={};if("object"!=typeof t){let e=Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw e.code="OBJECT_REQUIRED",e}for(let r of Object.keys(t))Object.prototype.hasOwnProperty.call(e,r)?(!0===n&&(e[r]=t[r],i[r]=t[r]),s&&(!0===n?d(`"${r}" is already defined and WAS overwritten`):d(`"${r}" is already defined and was NOT overwritten`))):(e[r]=t[r],i[r]=t[r]);return i}};t.exports.configDotenv=y.configDotenv,t.exports._configVault=y._configVault,t.exports._parseVault=y._parseVault,t.exports.config=y.config,t.exports.decrypt=y.decrypt,t.exports.parse=y.parse,t.exports.populate=y.populate,t.exports=y},63021,(e,t,r)=>{t.exports=e.x("@prisma/client-2c3a283f134fdcb6",()=>require("@prisma/client-2c3a283f134fdcb6"))},23862,e=>e.a(async(t,r)=>{try{let t=await e.y("pg-587764f78a6c7a9c");e.n(t),r()}catch(e){r(e)}},!0),5499,95638,84076,30901,e=>{"use strict";var t=e.i(66680);let r={randomUUID:t.randomUUID},s=new Uint8Array(256),n=s.length;function i(){return n>s.length-16&&((0,t.randomFillSync)(s),n=0),s.slice(n,n+=16)}e.s(["default",()=>i],95638);let a=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i,o=function(e){return"string"==typeof e&&a.test(e)};e.s(["default",0,o],84076);let l=[];for(let e=0;e<256;++e)l.push((e+256).toString(16).slice(1));function u(e,t=0){return(l[e[t+0]]+l[e[t+1]]+l[e[t+2]]+l[e[t+3]]+"-"+l[e[t+4]]+l[e[t+5]]+"-"+l[e[t+6]]+l[e[t+7]]+"-"+l[e[t+8]]+l[e[t+9]]+"-"+l[e[t+10]]+l[e[t+11]]+l[e[t+12]]+l[e[t+13]]+l[e[t+14]]+l[e[t+15]]).toLowerCase()}e.s(["default",0,function(e,t=0){let r=u(e,t);if(!o(r))throw TypeError("Stringified UUID is invalid");return r},"unsafeStringify",()=>u],30901),e.s(["default",0,function(e,t,s){if(r.randomUUID&&!t&&!e)return r.randomUUID();var n=e,a=s;let o=(n=n||{}).random??n.rng?.()??i();if(o.length<16)throw Error("Random bytes length must be >= 16");if(o[6]=15&o[6]|64,o[8]=63&o[8]|128,t){if((a=a||0)<0||a+16>t.length)throw RangeError(`UUID byte range ${a}:${a+15} is out of buffer bounds`);for(let e=0;e<16;++e)t[a+e]=o[e];return t}return u(o)}],5499)},89960,e=>{"use strict";var t=e.i(5499);e.s(["v4",()=>t.default])},86414,e=>e.a(async(t,r)=>{try{var s=e.i(97289),n=e.i(63021),i=e.i(23862),a=e.i(89960),o=t([i]);[i]=o.then?(await o)():o,(0,s.config)();class u{client;constructor(e){this.client=e}getClient(){return this.client}async createSession(e){return this.client.session.create({data:e})}async updateSession(e,t){return t.id?this.client.session.update({where:{id:t.id},data:t}):this.client.session.update({where:{taskId:e},data:t})}async upsertSession(e,t,r){return this.client.session.upsert({where:{taskId:e},create:t,update:r})}async findSessionByTaskId(e){return this.client.session.findUnique({where:{taskId:e}})}async findUserByApiKey(e){return this.client.user.findUnique({where:{apiKey:e}})}async findUserByUsername(e){return this.client.user.findUnique({where:{username:e}})}async createUser(e){return this.client.user.create({data:e})}async findSkill(e,t){let r=await this.client.skill.findMany({where:{user:t},include:{versions:{orderBy:{version:"desc"}}}}),s=e.toLowerCase();return r.find(e=>e.name.toLowerCase()===s)||null}async findSkillById(e){return this.client.skill.findUnique({where:{id:e},include:{versions:{orderBy:{version:"desc"}}}})}async createSkill(e){return this.client.skill.create({data:e})}async updateSkill(e,t){return this.client.skill.update({where:{id:e},data:t})}async deleteSkill(e){return this.client.skill.delete({where:{id:e}})}async findSkills(e){return this.client.skill.findMany({where:e,include:{versions:{orderBy:{version:"desc"}}}})}async findLatestSkillVersion(e){return this.client.skillVersion.findFirst({where:{skillId:e},orderBy:{version:"desc"}})}async createSkillVersion(e){return this.client.skillVersion.create({data:e})}async findSkillVersion(e,t){return this.client.skillVersion.findFirst({where:{skillId:e,version:t}})}async findSkillVersionBySemanticVersion(e,t){return this.client.skillVersion.findFirst({where:{skillId:e,semanticVersion:t}})}async deleteSkillVersion(e,t){return this.client.skillVersion.deleteMany({where:{skillId:e,version:t}})}async findConfigs(e){return this.client.config.findMany({where:e,orderBy:{id:"desc"}})}async findConfigById(e){return this.client.config.findUnique({where:{id:e}})}async createConfig(e){return this.client.config.create({data:e})}async updateConfig(e,t){return this.client.config.update({where:{id:e},data:t})}async findExecutionById(e){return this.client.execution.findUnique({where:{id:e}})}async findExecutions(e,t){return this.client.execution.findMany({where:e,orderBy:t})}async upsertExecution(e){return this.client.execution.upsert(e)}async deleteExecution(e){try{return await this.client.execution.delete({where:{id:e}}),!0}catch{return!1}}async deleteExecutions(e){return(await this.client.execution.deleteMany({where:e})).count}async findUserSettings(e){return this.client.userSettings.findUnique({where:{user:e}})}async upsertUserSettings(e,t){return this.client.userSettings.upsert({where:{user:e},update:{settingsJson:t},create:{user:e,settingsJson:t}})}async findParsedFlow(e,t,r){return this.client.parsedFlow.findFirst({where:{skillId:e,version:t,user:r}})}async upsertParsedFlow(e){let{skillId:t,version:r,user:s}=e;return this.client.parsedFlow.upsert({where:{skillId_version_user:{skillId:t,version:r,user:s}},create:e,update:e})}async findExecutionMatch(e){return this.client.executionMatch.findUnique({where:{executionId:e}})}async upsertExecutionMatch(e){let{executionId:t}=e;return this.client.executionMatch.upsert({where:{executionId:t},create:e,update:e})}async findUserGuideState(e){return this.client.userGuideState.findUnique({where:{user:e}})}async upsertUserGuideState(e,t){return this.client.userGuideState.upsert({where:{user:e},update:t,create:{user:e,...t}})}async updateUserGuideState(e,t){return this.client.userGuideState.update({where:{user:e},data:t})}}class c{pool;constructor(e){this.pool=new i.Pool(e)}getClient(){return this.pool}async query(e,t){return this.pool.query(e,t)}async createSession(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "Session" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async updateSession(e,t){let r=Object.keys(t).filter(e=>"id"!==e&&"taskId"!==e);if(0===r.length)return null;let s=r.map((e,t)=>`"${e}" = $${t+2}`).join(", "),n=r.map(e=>t[e]),i='WHERE "taskId" = $1',a=e;t.id&&(i="WHERE id = $1",a=t.id);let o=`UPDATE "Session" SET ${s} ${i} RETURNING *`;return(await this.query(o,[a,...n])).rows[0]}async upsertSession(e,t,r){let s=await this.pool.connect();try{let n;await s.query("BEGIN");let i=await s.query('SELECT * FROM "Session" WHERE "taskId" = $1',[e]);if(i.rows.length>0){let t={};for(let[e,s]of Object.entries(r))void 0!==s&&(t[e]=s);let a=Object.keys(t);if(a.length>0){let r=a.map((e,t)=>`"${e}" = $${t+2}`).join(", "),i=a.map(e=>t[e]),o=`UPDATE "Session" SET ${r} WHERE "taskId" = $1 RETURNING *`;n=(await s.query(o,[e,...i])).rows[0]}else n=i.rows[0]}else{t.taskId||(t.taskId=e);let r={};for(let[e,s]of Object.entries(t))void 0!==s&&(r[e]=s);let i=Object.keys(r),o=Object.values(r),l=i.map(e=>`"${e}"`).join(", "),u=i.map((e,t)=>`$${t+1}`).join(", "),c=(0,a.v4)(),d=`INSERT INTO "Session" (${l}, id) VALUES (${u}, $${i.length+1}) RETURNING *`;n=(await s.query(d,[...o,c])).rows[0]}return await s.query("COMMIT"),n}catch(e){throw await s.query("ROLLBACK"),e}finally{s.release()}}async findSessionByTaskId(e){return(await this.query('SELECT * FROM "Session" WHERE "taskId" = $1',[e])).rows[0]||null}async findUserByApiKey(e){return(await this.query('SELECT * FROM "User" WHERE "apiKey" = $1',[e])).rows[0]||null}async findUserByUsername(e){return(await this.query('SELECT * FROM "User" WHERE username = $1',[e])).rows[0]||null}async createUser(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "User" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async findSkill(e,t){let r='SELECT * FROM "Skill" WHERE LOWER(name) = LOWER($1)',s=[e];t?(r+=' AND "user" = $2',s.push(t)):r+=' AND "user" IS NULL';let n=(await this.query(r,s)).rows[0]||null;if(n){let e=await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 ORDER BY version DESC',[n.id]);n.versions=e.rows}return n}async findSkillById(e){let t=(await this.query('SELECT * FROM "Skill" WHERE id = $1',[e])).rows[0]||null;if(t){let e=await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 ORDER BY version DESC',[t.id]);t.versions=e.rows}return t}async createSkill(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "Skill" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async updateSkill(e,t){let r=Object.keys(t).filter(e=>"id"!==e);if(0===r.length)return null;let s=r.map((e,t)=>`"${e}" = $${t+2}`).join(", "),n=r.map(e=>t[e]),i=`UPDATE "Skill" SET ${s} WHERE id = $1 RETURNING *`;return(await this.query(i,[e,...n])).rows[0]}async deleteSkill(e){return(await this.query('DELETE FROM "Skill" WHERE id = $1 RETURNING *',[e])).rows[0]||null}async findSkills(e){let t='SELECT * FROM "Skill"',r=[],s=[];if(void 0!==e.isUploaded&&(s.push(`"isUploaded" = $${r.length+1}`),r.push(e.isUploaded)),e.OR){let t=[];for(let s of e.OR)void 0!==s.user&&(null===s.user?t.push('"user" IS NULL'):(t.push(`"user" = $${r.length+1}`),r.push(s.user))),s.visibility&&(t.push(`"visibility" = $${r.length+1}`),r.push(s.visibility));t.length>0&&s.push(`(${t.join(" OR ")})`)}else e.name&&e.user&&(s.push(`name = $${r.length+1}`),r.push(e.name),s.push(`"user" = $${r.length+1}`),r.push(e.user));e.category&&(s.push(`category = $${r.length+1}`),r.push(e.category)),s.length>0&&(t+=" WHERE "+s.join(" AND "));let n=(await this.query(t,r)).rows;for(let e of n){let t=await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 ORDER BY version DESC',[e.id]);e.versions=t.rows}return n}async findLatestSkillVersion(e){return(await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 ORDER BY version DESC LIMIT 1',[e])).rows[0]||null}async createSkillVersion(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "SkillVersion" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async findSkillVersion(e,t){return(await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 AND version = $2',[e,t])).rows[0]||null}async findSkillVersionBySemanticVersion(e,t){return(await this.query('SELECT * FROM "SkillVersion" WHERE "skillId" = $1 AND "semanticVersion" = $2',[e,t])).rows[0]||null}async deleteSkillVersion(e,t){return(await this.query('DELETE FROM "SkillVersion" WHERE "skillId" = $1 AND version = $2 RETURNING *',[e,t])).rows[0]||null}async findConfigs(e){let t='SELECT * FROM "Config"',r=[],s=[];if(e.OR){let t=[];for(let s of e.OR)void 0!==s.user&&(null===s.user?t.push('"user" IS NULL'):(t.push(`"user" = $${r.length+1}`),r.push(s.user)));t.length>0&&s.push(`(${t.join(" OR ")})`)}return s.length>0&&(t+=" WHERE "+s.join(" AND ")),t+=" ORDER BY id DESC",(await this.query(t,r)).rows}async findConfigById(e){return(await this.query('SELECT * FROM "Config" WHERE id = $1',[e])).rows[0]||null}async createConfig(e){let t=Object.keys(e),r=Object.values(e),s=t.map((e,t)=>`$${t+1}`).join(", "),n=t.map(e=>`"${e}"`).join(", "),i=e.id||(0,a.v4)(),o=`INSERT INTO "Config" (${n}, id) VALUES (${s}, $${t.length+1}) RETURNING *`;return(await this.query(o,[...r,i])).rows[0]}async updateConfig(e,t){let r=Object.keys(t).filter(e=>"id"!==e);if(0===r.length)return null;let s=r.map((e,t)=>`"${e}" = $${t+2}`).join(", "),n=r.map(e=>t[e]),i=`UPDATE "Config" SET ${s} WHERE id = $1 RETURNING *`;return(await this.query(i,[e,...n])).rows[0]}async findExecutionById(e){return(await this.query('SELECT * FROM "Execution" WHERE id = $1',[e])).rows[0]||null}async findExecutions(e,t){let r='SELECT * FROM "Execution"',s=[],n=[];if(e.OR){let t=[];for(let r of e.OR)void 0!==r.user&&(null===r.user?t.push('"user" IS NULL'):(t.push(`"user" = $${s.length+1}`),s.push(r.user)));t.length>0&&n.push(`(${t.join(" OR ")})`)}return void 0!==e.id&&(n.push(`"id" = $${s.length+1}`),s.push(e.id)),void 0!==e.query&&(null===e.query?n.push('"query" IS NULL'):(n.push(`"query" = $${s.length+1}`),s.push(e.query))),void 0!==e.framework&&(null===e.framework?n.push('"framework" IS NULL'):(n.push(`"framework" = $${s.length+1}`),s.push(e.framework))),void 0!==e.taskId&&(null===e.taskId?n.push('"taskId" IS NULL'):(n.push(`"taskId" = $${s.length+1}`),s.push(e.taskId))),void 0!==e.skill&&(null===e.skill?n.push("skill IS NULL"):(n.push(`skill = $${s.length+1}`),s.push(e.skill))),void 0!==e.skillVersion&&(null===e.skillVersion?n.push('"skillVersion" IS NULL'):(n.push(`"skillVersion" = $${s.length+1}`),s.push(e.skillVersion))),n.length>0&&(r+=" WHERE "+n.join(" AND ")),t?.timestamp==="desc"&&(r+=' ORDER BY "timestamp" DESC'),(await this.query(r,s)).rows}async upsertExecution(e){let{where:t,create:r,update:s}=e,n=t.id,i=await this.pool.connect();try{let e;await i.query("BEGIN");let t=await i.query('SELECT * FROM "Execution" WHERE id = $1',[n]);if(t.rows.length>0){let r={};for(let[e,t]of Object.entries(s))void 0!==t&&(r[e]=t);let a=Object.keys(r);if(a.length>0){let t=a.map((e,t)=>`"${e}" = $${t+2}`).join(", "),s=a.map(e=>r[e]),o=`UPDATE "Execution" SET ${t} WHERE id = $1 RETURNING *`;e=(await i.query(o,[n,...s])).rows[0]}else e=t.rows[0]}else{let t={};for(let[e,s]of Object.entries(r))void 0!==s&&(t[e]=s);let s=Object.keys(t),n=Object.values(t),a=s.map(e=>`"${e}"`).join(", "),o=s.map((e,t)=>`$${t+1}`).join(", "),l=`INSERT INTO "Execution" (${a}) VALUES (${o}) RETURNING *`;e=(await i.query(l,n)).rows[0]}return await i.query("COMMIT"),e}catch(e){throw await i.query("ROLLBACK"),e}finally{i.release()}}async deleteExecution(e){try{return((await this.query('DELETE FROM "Execution" WHERE id = $1',[e])).rowCount??0)>0}catch{return!1}}async deleteExecutions(e){let t='DELETE FROM "Execution"',r=[],s=[];return e.taskId&&(s.push(`"taskId" = $${r.length+1}`),r.push(e.taskId)),e.timestamp&&e.framework&&e.query&&(s.push(`"timestamp" = $${r.length+1}`),r.push(e.timestamp),s.push(`framework = $${r.length+1}`),r.push(e.framework),s.push(`query = $${r.length+1}`),r.push(e.query)),s.length>0&&(t+=" WHERE "+s.join(" AND ")),(await this.query(t,r)).rowCount??0}async findUserSettings(e){return(await this.query('SELECT * FROM "UserSettings" WHERE "user" = $1',[e])).rows[0]||null}async upsertUserSettings(e,t){let r=await this.pool.connect();try{let s;if(await r.query("BEGIN"),(await r.query('SELECT * FROM "UserSettings" WHERE "user" = $1',[e])).rows.length>0)s=(await r.query('UPDATE "UserSettings" SET "settingsJson" = $1, "updatedAt" = CURRENT_TIMESTAMP WHERE "user" = $2 RETURNING *',[t,e])).rows[0];else{let n=(0,a.v4)();s=(await r.query('INSERT INTO "UserSettings" (id, "user", "settingsJson") VALUES ($1, $2, $3) RETURNING *',[n,e,t])).rows[0]}return await r.query("COMMIT"),s}catch(e){throw await r.query("ROLLBACK"),e}finally{r.release()}}async findParsedFlow(e,t,r){let s='SELECT * FROM "ParsedFlow" WHERE "skillId" = $1 AND version = $2',n=[e,t];return r?(s+=' AND "user" = $3',n.push(r)):s+=' AND "user" IS NULL',(await this.query(s,n)).rows[0]||null}async upsertParsedFlow(e){let{skillId:t,version:r,user:s,flowJson:n,mermaidCode:i}=e,o=await this.pool.connect();try{let e;await o.query("BEGIN");let l='SELECT * FROM "ParsedFlow" WHERE "skillId" = $1 AND version = $2',u=[t,r];s?(l+=' AND "user" = $3',u.push(s)):l+=' AND "user" IS NULL';let c=await o.query(l,u);if(c.rows.length>0)e=(await o.query('UPDATE "ParsedFlow" SET "flowJson" = $1, "mermaidCode" = $2, "parsedAt" = CURRENT_TIMESTAMP WHERE id = $3 RETURNING *',[n,i,c.rows[0].id])).rows[0];else{let l=(0,a.v4)();e=(await o.query('INSERT INTO "ParsedFlow" (id, "skillId", version, "user", "flowJson", "mermaidCode") VALUES ($1, $2, $3, $4, $5, $6) RETURNING *',[l,t,r,s,n,i])).rows[0]}return await o.query("COMMIT"),e}catch(e){throw await o.query("ROLLBACK"),e}finally{o.release()}}async findExecutionMatch(e){return(await this.query('SELECT * FROM "ExecutionMatch" WHERE "executionId" = $1',[e])).rows[0]||null}async upsertExecutionMatch(e){let{executionId:t,skillId:r,skillVersion:s,user:n,mode:i,matchJson:o,staticMermaid:l,dynamicMermaid:u,analysisText:c,extractedSteps:d,interactionCount:E}=e,h=await this.pool.connect();try{let e;if(await h.query("BEGIN"),(await h.query('SELECT * FROM "ExecutionMatch" WHERE "executionId" = $1',[t])).rows.length>0)e=(await h.query('UPDATE "ExecutionMatch" SET "skillId" = $1, "skillVersion" = $2, "user" = $3, "mode" = $4, "matchJson" = $5, "staticMermaid" = $6, "dynamicMermaid" = $7, "analysisText" = $8, "extractedSteps" = $9, "interactionCount" = $10, "matchedAt" = CURRENT_TIMESTAMP WHERE "executionId" = $11 RETURNING *',[r,s,n,i,o,l,u,c,d,E,t])).rows[0];else{let p=(0,a.v4)();e=(await h.query('INSERT INTO "ExecutionMatch" (id, "executionId", "skillId", "skillVersion", "user", "mode", "matchJson", "staticMermaid", "dynamicMermaid", "analysisText", "extractedSteps", "interactionCount") VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12) RETURNING *',[p,t,r,s,n,i,o,l,u,c,d,E])).rows[0]}return await h.query("COMMIT"),e}catch(e){throw await h.query("ROLLBACK"),e}finally{h.release()}}async findUserGuideState(e){return(await this.query('SELECT * FROM "UserGuideState" WHERE "user" = $1',[e])).rows[0]||null}async upsertUserGuideState(e,t){let r=await this.pool.connect();try{let s;await r.query("BEGIN");let n=await r.query('SELECT * FROM "UserGuideState" WHERE "user" = $1',[e]);if(n.rows.length>0){let i=Object.keys(t);if(i.length>0){let n=i.map((e,t)=>`"${e}" = $${t+2}`).join(", "),a=i.map(e=>t[e]);s=(await r.query(`UPDATE "UserGuideState" SET ${n}, "updatedAt" = CURRENT_TIMESTAMP WHERE "user" = $1 RETURNING *`,[e,...a])).rows[0]}else s=n.rows[0]}else{let n=(0,a.v4)(),i=Object.keys(t),o=Object.values(t),l=["id","user",...i].map(e=>`"${e}"`).join(", "),u=i.map((e,t)=>`$${t+3}`).join(", ");s=(await r.query(`INSERT INTO "UserGuideState" (${l}) VALUES ($1, $2, ${u}) RETURNING *`,[n,e,...o])).rows[0]}return await r.query("COMMIT"),s}catch(e){throw await r.query("ROLLBACK"),e}finally{r.release()}}async updateUserGuideState(e,t){let r=Object.keys(t);if(0===r.length)return null;let s=r.map((e,t)=>`"${e}" = $${t+2}`).join(", "),n=r.map(e=>t[e]);return(await this.query(`UPDATE "UserGuideState" SET ${s}, "updatedAt" = CURRENT_TIMESTAMP WHERE "user" = $1 RETURNING *`,[e,...n])).rows[0]||null}}function l(){if(console.log("[DatabaseAdapter] DB_HOST:",process.env.DB_HOST),process.env.DB_HOST)return console.log("[DatabaseAdapter] Using OpenGauss Adapter"),new c({host:process.env.DB_HOST,port:parseInt(process.env.DB_PORT||"5432"),database:process.env.DB_NAME||"postgres",user:process.env.DB_USER||"omm",password:process.env.DB_PASSWORD});console.log("[DatabaseAdapter] Using Prisma Adapter");let t=e.g.prisma||new n.PrismaClient;return new u(t)}e.s(["getDatabaseAdapter",()=>l]),r()}catch(e){r(e)}},!1)];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__863cf6de._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},66680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},98043,e=>e.a(async(t,r)=>{try{let l;var n,a=e.i(97289),s=e.i(63021),i=e.i(86414),o=t([i]);[i]=o.then?(await o)():o,(0,a.config)();let d=e.g.prisma||new s.PrismaClient,u=(0,i.getDatabaseAdapter)(),c=process.env.DB_HOST?(l=(n=u).getClient())instanceof s.PrismaClient?l:{user:{findUnique:async e=>e.where?.apiKey?n.findUserByApiKey(e.where.apiKey):e.where?.username?n.findUserByUsername(e.where.username):null,findFirst:async e=>e.where?.username?n.findUserByUsername(e.where.username):null},skill:{findFirst:async e=>{let t=e.where?.name,r=e.where?.OR?.[0]?.user??e.where?.OR?.[1]?.user;return n.findSkill(t,r)},findMany:async e=>n.findSkills(e.where||{}),findUnique:async e=>n.findSkill(e.where?.name,e.where?.user),delete:async e=>(console.warn("[OpenGaussAdapter] skill.delete not fully implemented"),null)},skillVersion:{findFirst:async e=>e.where?.skillId?n.findLatestSkillVersion(e.where.skillId):null},config:{findMany:async e=>n.findConfigs(e.where||{})},session:{findUnique:async e=>e.where?.taskId?n.findSessionByTaskId(e.where.taskId):null,update:async e=>e.where?.id?n.updateSession(e.where.id,e.data):null,upsert:async e=>{let t=e.where?.taskId;return t?n.upsertSession(t,e.create,e.update):null}},execution:{findUnique:async e=>e.where?.id?n.findExecutionById(e.where.id):null,upsert:async e=>n.upsertExecution(e),findMany:async e=>n.findExecutions(e.where,e.orderBy)}}:d;e.s(["db",0,u,"prisma",0,c]),r()}catch(e){r(e)}},!1),79832,e=>e.a(async(t,r)=>{try{var n=e.i(98043),a=t([n]);async function s(e,t){if(t)return{username:t,apiKey:null};let r=e.headers.get("x-witty-api-key");if(r)return{username:await i(r),apiKey:r};let n=new URL(e.url).searchParams.get("apiKey");return n?{username:await i(n),apiKey:n}:{username:null,apiKey:null}}async function i(e){try{let t=await n.db.findUserByApiKey(e);return t?.username||null}catch(e){return console.error("[Auth] Failed to lookup user by API Key:",e),null}}async function o(e,t){let r=await n.db.findSkillById(e);return r?"public"!==r.visibility&&r.user&&(!t||r.user!==t)&&t?{allowed:!1,skill:r}:{allowed:!0,skill:r}:{allowed:!1,skill:null}}[n]=a.then?(await a)():a,e.s(["canAccessSkill",()=>o,"resolveUser",()=>s]),r()}catch(e){r(e)}},!1),6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},56042,e=>e.a(async(t,r)=>{try{var n=e.i(79832),a=e.i(98043),s=e.i(22734),i=e.i(89171),o=e.i(14747),l=e.i(89920),d=t([n,a,l]);async function u(e){try{let t=e.nextUrl.searchParams,r=t.get("query"),s=t.get("category"),o=t.get("user"),{username:l}=await (0,n.resolveUser)(e,o),d={};if(l&&(d.OR=[{user:l},{user:null},{visibility:"public"}]),r){let e={OR:[{name:{contains:r}},{description:{contains:r}}]};d.OR?(d.AND=[{OR:d.OR},e],delete d.OR):d.OR=e.OR}s&&"全部"!==s&&(d.category=s);let u=await a.db.findSkills(d);u.sort((e,t)=>{let r=e.versions?.find(e=>0===e.version),n=t.versions?.find(e=>0===e.version),a=r?new Date(r.createdAt).getTime():0;return(n?new Date(n.createdAt).getTime():0)-a});let c=u.map(e=>{let t=e.versions?.find(t=>t.version===(e.activeVersion||0)),r=t?.changeLog||e.description,n=t?.createdAt?new Date(t.createdAt).toISOString():e.updatedAt.toISOString();return{id:e.id,name:e.name,description:r,category:e.category,tags:e.tags?JSON.parse(e.tags):[],author:e.author,updatedAt:n,version:e.activeVersion||0,activeVersion:e.activeVersion||0,visibility:e.visibility,qualityScore:0,usageCount:0,successRate:0,isUploaded:e.isUploaded,versions:e.versions?.map(e=>({version:e.version,createdAt:e.createdAt?new Date(e.createdAt).toISOString():"",changeLog:e.changeLog}))||[]}});return i.NextResponse.json(c)}catch(e){return console.error("Fetch Skills Error:",e),i.NextResponse.json({error:"Failed to fetch skills"},{status:500})}}async function c(e){let t=e.nextUrl.searchParams,r=t.get("id"),d=t.get("user");if(!r)return i.NextResponse.json({error:"ID required"},{status:400});try{let{username:t}=await (0,n.resolveUser)(e,d),u=await a.db.findSkillById(r);if(!u)return i.NextResponse.json({error:"Skill not found"},{status:404});if(t&&u.user&&u.user!==t)return i.NextResponse.json({error:"Unauthorized delete"},{status:403});if("true"===process.env.ORGANIZATION_MODE)try{let t=e.headers.get("cookie")||void 0;for(let e of(console.log("[Delete-Skill] 企业模式,开始删除企业skill"),u.versions||[]))e.enterpriseSkillId&&(console.log("[Delete-Skill] 删除企业skill ID:",e.enterpriseSkillId),await (0,l.deleteEnterpriseSkill)(e.enterpriseSkillId,t))}catch(e){console.error("[Delete-Skill] 企业删除失败,继续删除本地skill:",e),console.error("[Delete-Skill] 错误信息:",e.message)}let c=o.default.join(process.cwd(),"data","storage","skills",r);return s.default.existsSync(c)&&s.default.rmSync(c,{recursive:!0,force:!0}),await a.db.deleteSkill(r),i.NextResponse.json({success:!0})}catch(e){return console.error("Delete Skill Error:",e),i.NextResponse.json({error:e.message},{status:500})}}[n,a,l]=d.then?(await d)():d,e.s(["DELETE",()=>c,"GET",()=>u,"dynamic",0,"force-dynamic"]),r()}catch(e){r(e)}},!1),87542,e=>e.a(async(t,r)=>{try{var n=e.i(47909),a=e.i(74017),s=e.i(60476),i=e.i(59756),o=e.i(61916),l=e.i(74677),d=e.i(69741),u=e.i(16795),c=e.i(87718),p=e.i(95169),h=e.i(47587),y=e.i(66012),f=e.i(70101),x=e.i(26937),w=e.i(10372),g=e.i(93695);e.i(52474);var v=e.i(220),m=e.i(56042),R=t([m]);[m]=R.then?(await R)():R;let E=new n.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/skills/route",pathname:"/api/skills",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/route.ts",nextConfigOutput:"standalone",userland:m}),{workAsyncStorage:A,workUnitAsyncStorage:b,serverHooks:C}=E;function k(){return(0,s.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:b})}async function S(e,t,r){E.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/skills/route";n=n.replace(/\/index$/,"")||"/";let s=await E.prepare(e,t,{srcPage:n,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:m,params:R,nextConfig:k,parsedUrl:S,isDraftMode:A,prerenderManifest:b,routerServerContext:C,isOnDemandRevalidate:O,revalidateOnlyGenerated:I,resolvedPathname:U,clientReferenceManifest:N,serverActionsManifest:q}=s,T=(0,d.normalizeAppPath)(n),D=!!(b.dynamicRoutes[T]||b.routes[U]),P=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!A){let e=!!b.routes[U],t=b.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(k.experimental.adapterPath)return await P();throw new g.NoFallbackError}}let j=null;!D||E.isDev||A||(j=U,j="/index"===j?"/":j);let _=!0===E.isDev||!D,H=D&&!_;q&&N&&(0,l.setManifestsSingleton)({page:n,clientReferenceManifest:N,serverActionsManifest:q});let K=e.method||"GET",M=(0,o.getTracer)(),B=M.getActiveScopeSpan(),F={params:R,prerenderManifest:b,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:_,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:k.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>E.onRequestError(e,t,n,a,C)},sharedContext:{buildId:m}},L=new u.NodeNextRequest(e),V=new u.NodeNextResponse(t),$=c.NextRequestAdapter.fromNodeNextRequest(L,(0,c.signalFromNodeResponse)(t));try{let s=async e=>E.handle($,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${K} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${K} ${n}`)}),l=!!(0,i.getRequestMeta)(e,"minimalMode"),d=async i=>{var o,d;let u=async({previousCacheEntry:a})=>{try{if(!l&&O&&I&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await s(i);e.fetchMetrics=F.renderOpts.fetchMetrics;let o=F.renderOpts.pendingWaitUntil;o&&r.waitUntil&&(r.waitUntil(o),o=void 0);let d=F.renderOpts.collectedTags;if(!D)return await (0,y.sendResponse)(L,V,n,F.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(n.headers);d&&(t[w.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=w.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,a=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=w.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==a?void 0:a.isStale)&&await E.onRequestError(e,t,{routerKind:"App Router",routePath:n,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:O})},!1,C),t}},c=await E.handleResponse({req:e,nextConfig:k,cacheKey:j,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:I,responseGenerator:u,waitUntil:r.waitUntil,isMinimalMode:l});if(!D)return null;if((null==c||null==(o=c.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(d=c.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",O?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let p=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return l&&D||p.delete(w.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||p.get("Cache-Control")||p.set("Cache-Control",(0,x.getCacheControlHeader)(c.cacheControl)),await (0,y.sendResponse)(L,V,new Response(c.value.body,{headers:p,status:c.value.status||200})),null};B?await d(B):await M.withPropagatedContext(e.headers,()=>M.trace(p.BaseServerSpan.handleRequest,{spanName:`${K} ${n}`,kind:o.SpanKind.SERVER,attributes:{"http.method":K,"http.target":e.url}},d))}catch(t){if(t instanceof g.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:O})},!1,C),D)throw t;return await (0,y.sendResponse)(L,V,new Response(null,{status:500})),null}}e.s(["handler",()=>S,"patchFetch",()=>k,"routeModule",()=>E,"serverHooks",()=>C,"workAsyncStorage",()=>A,"workUnitAsyncStorage",()=>b]),r()}catch(e){r(e)}},!1)];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__89404730._.js.map
|