nodal-agents 0.4.4 → 0.5.2
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/README.md +54 -21
- package/cli.js +95 -105
- package/migrations/0035_community_agent_skills.sql +13 -0
- package/migrations/0036_agent_jobs_effective_input_tokens.sql +18 -0
- package/migrations/0037_agent_jobs_total_cost_usd.sql +11 -0
- package/migrations/0038_agent_jobs_served_provider.sql +7 -0
- package/migrations/0039_agent_skills_learning_loop.sql +20 -0
- package/migrations/0040_entities_last_curator_run.sql +7 -0
- package/migrations/0041_reflection_enabled.sql +1 -0
- package/migrations/0042_drop_agent_runs.sql +1 -0
- package/migrations/0043_skill_assignment.sql +2 -0
- package/migrations/0044_entities_lan_command_yolo.sql +1 -0
- package/migrations/meta/_journal.json +314 -244
- package/package.json +4 -1
- package/runner.js +12187 -2147
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/app-path-routes-manifest.json +11 -10
- package/web/.next/build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/routes-manifest.json +6 -0
- package/web/.next/server/app/(dashboard)/agents/[id]/edit/page.js +3 -3
- package/web/.next/server/app/(dashboard)/agents/[id]/edit/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/agents/[id]/edit/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/agents/[id]/telegram/page.js +2 -2
- package/web/.next/server/app/(dashboard)/agents/[id]/telegram/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/agents/[id]/telegram/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/agents/page.js +2 -2
- package/web/.next/server/app/(dashboard)/agents/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/agents/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/approvals/page.js +2 -2
- package/web/.next/server/app/(dashboard)/approvals/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/approvals/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/automations/page.js +2 -2
- package/web/.next/server/app/(dashboard)/automations/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/automations/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/billing/page.js +2 -2
- package/web/.next/server/app/(dashboard)/billing/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/billing/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/chat/page.js +2 -2
- package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/connectors/page.js +2 -2
- package/web/.next/server/app/(dashboard)/connectors/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/connectors/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/credentials/page.js +2 -2
- package/web/.next/server/app/(dashboard)/credentials/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/credentials/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/jobs/[id]/page.js +2 -2
- package/web/.next/server/app/(dashboard)/jobs/[id]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/jobs/[id]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/jobs/page.js +2 -2
- package/web/.next/server/app/(dashboard)/jobs/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/jobs/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/learned-skills/page.js +2 -0
- package/web/.next/server/app/(dashboard)/learned-skills/page.js.nft.json +1 -0
- package/web/.next/server/app/(dashboard)/learned-skills/page_client-reference-manifest.js +1 -0
- package/web/.next/server/app/(dashboard)/llm-providers/page.js +2 -2
- package/web/.next/server/app/(dashboard)/llm-providers/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/llm-providers/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/logs/page.js +2 -2
- package/web/.next/server/app/(dashboard)/logs/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/logs/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/mcp/page.js +2 -2
- package/web/.next/server/app/(dashboard)/mcp/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/mcp/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/memories/page.js +2 -2
- package/web/.next/server/app/(dashboard)/memories/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/memories/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/page.js +4 -4
- package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/settings/page.js +2 -2
- package/web/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/skills/[id]/edit/page.js +2 -2
- package/web/.next/server/app/(dashboard)/skills/[id]/edit/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/skills/[id]/edit/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/skills/new/page.js +2 -2
- package/web/.next/server/app/(dashboard)/skills/new/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/skills/new/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/skills/page.js +2 -2
- package/web/.next/server/app/(dashboard)/skills/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error/page.js +3 -3
- package/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error.html +1 -1
- package/web/.next/server/app/_global-error.rsc +3 -3
- package/web/.next/server/app/_global-error.segments/_full.segment.rsc +3 -3
- package/web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
- package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/server/app/_not-found/page.js +2 -2
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_not-found.html +1 -1
- package/web/.next/server/app/_not-found.rsc +4 -4
- package/web/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
- package/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/web/.next/server/app/_not-found.segments/_index.segment.rsc +4 -4
- package/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/web/.next/server/app/api/auth/[...all]/route.js +1 -1
- package/web/.next/server/app/api/auth/[...all]/route.js.nft.json +1 -1
- package/web/.next/server/app/api/health/route.js +1 -1
- package/web/.next/server/app/api/oauth/[provider]/callback/route.js +1 -1
- package/web/.next/server/app/api/oauth/[provider]/callback/route.js.nft.json +1 -1
- package/web/.next/server/app/api/oauth/[provider]/start/route.js +1 -1
- package/web/.next/server/app/api/oauth/[provider]/start/route.js.nft.json +1 -1
- package/web/.next/server/app/auth/callback/route.js +1 -1
- package/web/.next/server/app/login/page.js +2 -2
- package/web/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/onboarding/page.js +2 -2
- package/web/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/onboarding.html +1 -1
- package/web/.next/server/app/onboarding.rsc +4 -4
- package/web/.next/server/app/onboarding.segments/_full.segment.rsc +4 -4
- package/web/.next/server/app/onboarding.segments/_head.segment.rsc +1 -1
- package/web/.next/server/app/onboarding.segments/_index.segment.rsc +4 -4
- package/web/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
- package/web/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +1 -1
- package/web/.next/server/app/onboarding.segments/onboarding.segment.rsc +1 -1
- package/web/.next/server/app-paths-manifest.json +11 -10
- package/web/.next/server/chunks/2556.js +1 -0
- package/web/.next/server/chunks/3279.js +1 -0
- package/web/.next/server/chunks/3636.js +1 -0
- package/web/.next/server/chunks/3966.js +1 -0
- package/web/.next/server/chunks/4574.js +1 -1
- package/web/.next/server/chunks/{3889.js → 5869.js} +1 -1
- package/web/.next/server/chunks/6606.js +1 -0
- package/web/.next/server/chunks/{7826.js → 8732.js} +27 -27
- package/web/.next/server/chunks/9267.js +16 -0
- package/web/.next/server/chunks/9656.js +1 -0
- package/web/.next/server/chunks/{7741.js → 9942.js} +17 -17
- package/web/.next/server/middleware-build-manifest.js +1 -1
- package/web/.next/server/pages/404.html +1 -1
- package/web/.next/server/pages/500.html +1 -1
- package/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/server/server-reference-manifest.json +1 -1
- package/web/.next/static/FgBmSI8AhGeFcxmEUF1VS/_buildManifest.js +1 -0
- package/web/.next/static/chunks/3178-bde220b789f10130.js +1 -0
- package/web/.next/static/chunks/4454-882460b60106f0d5.js +1 -0
- package/web/.next/static/chunks/6078-abdc3955397924b3.js +1 -0
- package/web/.next/static/chunks/6413-c2d4ac3709048f19.js +1 -0
- package/web/.next/static/chunks/{8666-90a1f5d99b79411e.js → 6908-e8114db85dca4371.js} +1 -1
- package/web/.next/static/chunks/7164-a5cae6a1833041a7.js +1 -0
- package/web/.next/static/chunks/9711-628acc64d23620d2.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/agents/[id]/edit/page-9d2c7d640411e42d.js +2 -0
- package/web/.next/static/chunks/app/(dashboard)/agents/[id]/telegram/page-1471b733a0d6dd17.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/agents/page-2a30943e74c78967.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/approvals/page-8556dfa45a425603.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/automations/page-3b724d8f6e8c957f.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/chat/page-b98de38c17f2cd96.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/connectors/page-6591a8753b6a19c1.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/credentials/page-19061f4a8bf1978f.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/jobs/[id]/page-7e9af908ef12f252.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/jobs/page-9b09d95cc1a8053c.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/layout-a34502d1a8386a62.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/learned-skills/page-447ba18bc6af3c57.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/llm-providers/page-c0c5aa806b9b47d4.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/logs/page-21d587049e8a6ccb.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/mcp/page-f9337250ed07249e.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/memories/page-b935752c6cb36a04.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/{page-29cfae3bf701076e.js → page-2a69294b49293833.js} +1 -1
- package/web/.next/static/chunks/app/(dashboard)/settings/page-cc13aebbb8d33d19.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/skills/[id]/edit/page-85c75cc88ee1d6a8.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/skills/new/page-9b0777fccb89a00b.js +1 -0
- package/web/.next/static/chunks/app/(dashboard)/skills/page-e25db7f660751dfd.js +1 -0
- package/web/.next/static/chunks/app/error-f106e9e65e16edb3.js +1 -0
- package/web/.next/static/css/de0fc0bc138be3b3.css +3 -0
- package/web/.next/server/chunks/3233.js +0 -1
- package/web/.next/server/chunks/4808.js +0 -1
- package/web/.next/server/chunks/5329.js +0 -1
- package/web/.next/server/chunks/593.js +0 -1
- package/web/.next/server/chunks/6128.js +0 -1
- package/web/.next/server/chunks/7231.js +0 -1
- package/web/.next/server/chunks/7466.js +0 -16
- package/web/.next/static/PV5qpGylrVW3jZ7zKHuhE/_buildManifest.js +0 -1
- package/web/.next/static/chunks/8396-f3502b9af3172006.js +0 -1
- package/web/.next/static/chunks/9098-2bfef80a73c706b3.js +0 -1
- package/web/.next/static/chunks/9123-67530ba510c58003.js +0 -1
- package/web/.next/static/chunks/9167-12a4a42d1a7d7db5.js +0 -1
- package/web/.next/static/chunks/9582-fbf7c8d9b2a39101.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/agents/[id]/edit/page-a2c267f563cd1a70.js +0 -2
- package/web/.next/static/chunks/app/(dashboard)/agents/[id]/telegram/page-2d7cae43f5e6952a.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/agents/page-bed833ebdd3646fb.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/approvals/page-4b27762472802ce0.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/automations/page-9e5d2ce807ce1c37.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/chat/page-8f81d7e3abb475a6.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/connectors/page-39b1d9560235d574.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/credentials/page-f1e797e327ecdf7c.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/jobs/[id]/page-112bb22a9ec43be0.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/jobs/page-44351170ed5f9180.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/layout-53e69de869cba0d0.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/llm-providers/page-8f6ce47ba228e38b.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/logs/page-b814deb9854b0cb5.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/mcp/page-cdf057e468c6e92e.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/memories/page-e706ab4aa681fa99.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/settings/page-312ae27ae71ea6d1.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/skills/[id]/edit/page-89a8a30db5eb96e1.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/skills/new/page-46a424b203591560.js +0 -1
- package/web/.next/static/chunks/app/(dashboard)/skills/page-edad7bbd3230fb7a.js +0 -1
- package/web/.next/static/chunks/app/error-61e58aa304e1b34e.js +0 -1
- package/web/.next/static/css/78ead23854ab041e.css +0 -3
- /package/web/.next/static/{PV5qpGylrVW3jZ7zKHuhE → FgBmSI8AhGeFcxmEUF1VS}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
exports.id=4574,exports.ids=[4574],exports.modules={12788:(a,b,c)=>{"use strict";c.d(b,{O:()=>m,V:()=>n});var d=c(18199),e=c(99768),f=c(49500),g=c(52019),h=c(42891),i=c(16471),j=c(66618),k=c(29123),l=c(57119);let m=(0,d.cJ)("entities",{id:(0,e.uR)("id").primaryKey().defaultRandom(),userId:(0,e.uR)("user_id").notNull().references(()=>l.V.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull(),slug:(0,f.Qq)("slug").notNull().unique(),description:(0,f.Qq)("description"),icon:(0,f.Qq)("icon").default("\uD83C\uDFE2"),industry:(0,f.Qq)("industry"),goal:(0,f.Qq)("goal"),mcpToken:(0,e.uR)("mcp_token").defaultRandom(),rootAgentId:(0,e.uR)("root_agent_id"),rootGrants:(0,g.Fx)("root_grants").notNull().default((0,k.ll)`'{}'::jsonb`),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,i.GL)("entities_mcp_token_idx").on(a.mcpToken),(0,i.Pe)("idx_entities_user_id").on(a.userId),(0,i.Pe)("idx_entities_root_agent_id").on(a.rootAgentId)]),n=(0,d.cJ)("entity_members",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").notNull().references(()=>m.id,{onDelete:"cascade"}),userId:(0,e.uR)("user_id").notNull().references(()=>l.V.id,{onDelete:"cascade"}),role:(0,f.Qq)("role").default("owner"),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).defaultNow()},a=>[(0,i.Pe)("idx_entity_members_entity_id").on(a.entityId),(0,i.Pe)("idx_entity_members_user_id").on(a.userId),(0,i.Pe)("idx_entity_members_user").on(a.userId,a.entityId),(0,j.z6)("entity_members_role_check",(0,k.ll)`${a.role} IN ('owner', 'admin', 'member', 'viewer')`)])},36535:(a,b,c)=>{"use strict";c.d(b,{s$:()=>m,vV:()=>u,NY:()=>s,p6:()=>q,YT:()=>am,zw:()=>ag,dO:()=>K,Li:()=>I,ap:()=>ah,vH:()=>e,nE:()=>g,ip:()=>Q,BJ:()=>w,dg:()=>A,rc:()=>y,yO:()=>aj,Uw:()=>M,GN:()=>o,bt:()=>P,Y7:()=>O,RF:()=>G,Ur:()=>E,GB:()=>C,PN:()=>k,Hi:()=>i,aT:()=>ak,ZH:()=>ac,R3:()=>ad,DI:()=>al});var d=c(61989);let e=["telegram","api","whatsapp","internal","cron","task-board","slack","discord","dashboard"],f=d.k5(e),g=["pending","processing","completed","failed","awaiting_approval","awaiting_delegation","cancelled"],h=d.k5(g),i=["todo","in_progress","done","cancelled","blocked"],j=d.k5(i),k=["low","medium","high"],l=d.k5(k),m=["agent","orchestrator","system"],n=d.k5(m),o=["router","planner"],p=d.k5(o),q=["api_key","oauth2","bearer","basic","none"],r=d.k5(q),s=["pending","approved","rejected","expired"],t=d.k5(s),u=["auto_approve","require_approval","block"],v=d.k5(u),w=["preference","context","outcome","learned_rule"],x=d.k5(w),y=["agent","reflection","manual"],z=d.k5(y),A=["L1","L2","L3"],B=d.k5(A),C=["cron","heartbeat"],D=d.k5(C),E=["success","failed","no_action"],F=d.k5(E),G=["entity","operator"],H=d.k5(G),I=["owner","admin","member","viewer"],J=d.k5(I),K=["agency","startup","personal","studio","enterprise","other"],L=d.k5(K),M=["read","write","destructive"],N=d.k5(M),O=["webhook","transform","schedule"];d.k5(O);let P=["pre_task","post_task","pre_tool","post_tool","on_memory_save"];d.k5(P);let Q=["http","stdio"];d.k5(Q),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Ik({id:d.Yj().guid(),user_id:d.Yj().guid(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),description:d.Yj().max(500).nullable(),icon:d.Yj().max(4),industry:L.nullable(),goal:d.Yj().max(1e3).nullable(),mcp_token:d.Yj().guid().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,mcp_token:!0,created_at:!0,updated_at:!0}).extend({description:d.Yj().max(500).nullable().optional(),icon:d.Yj().max(4).default("\uD83C\uDFE2"),industry:L.nullable().optional(),goal:d.Yj().max(1e3).nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid(),user_id:d.Yj().guid(),role:J,created_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0}).extend({role:J.default("owner")}),d.Ik({user_id:d.Yj().guid(),display_name:d.Yj().max(120).nullable(),avatar_url:d.Yj().max(500).nullable(),timezone:d.Yj().max(80),locale:d.Yj().max(10),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({created_at:!0,updated_at:!0}).extend({display_name:d.Yj().max(120).nullable().optional(),avatar_url:d.Yj().max(500).nullable().optional(),timezone:d.Yj().max(80).default("UTC"),locale:d.Yj().max(10).default("en")}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),personality:d.Yj().min(1),model:d.Yj().min(1),active:d.zM(),is_default:d.zM(),role:n,orchestrator_mode:p.nullable(),telegram_bot_token:d.Yj().nullable(),telegram_bot_username:d.Yj().nullable(),telegram_offset:d.ai().int().nonnegative().nullable(),requires_approval:d.YO(d.Yj()),capabilities:d.YO(d.Yj()),task_context_template:d.Yj().nullable(),avatar_url:d.Yj().nullable(),system_agent:d.zM(),max_tokens_per_job:d.ai().int().min(0),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,telegram_offset:!0,capabilities:!0,system_agent:!0}).extend({active:d.zM().default(!0),is_default:d.zM().default(!1),role:n.default("agent"),orchestrator_mode:p.nullable().optional(),telegram_bot_token:d.Yj().nullable().optional(),telegram_bot_username:d.Yj().nullable().optional(),requires_approval:d.YO(d.Yj()).default([]),task_context_template:d.Yj().nullable().optional(),avatar_url:d.Yj().nullable().optional(),max_tokens_per_job:d.ai().int().min(0).max(5e5).default(0)});let R=d.ai().int().min(0),S=d.ai().int().min(0);d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid().nullable(),status:h,channel:f,task:d.Yj().min(1),original_task:d.Yj().nullable(),chat_id:d.Yj().nullable(),system_prompt:d.Yj().nullable(),messages:d.YO(d.g1(d.Yj(),d.L5())),tools_used:d.YO(d.Yj()),turn:d.ai().int().min(0),result:d.Yj().nullable(),error:d.Yj().nullable(),chain_count:R,request_id:d.Yj().nullable(),parent_job_id:d.Yj().guid().nullable(),parent_request_id:d.Yj().nullable(),total_duration_ms:d.ai().int().min(0),input_tokens:d.ai().int().min(0),output_tokens:d.ai().int().min(0),delegation_depth:S,pending_delegation:d.g1(d.Yj(),d.L5()).nullable(),completed_at:d.Yj().datetime().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,completed_at:!0,messages:!0,tools_used:!0,turn:!0,result:!0,error:!0,chain_count:!0,total_duration_ms:!0,input_tokens:!0,output_tokens:!0,delegation_depth:!0,pending_delegation:!0,parent_request_id:!0}).extend({status:h.default("pending"),original_task:d.Yj().nullable().optional(),chat_id:d.Yj().nullable().optional(),system_prompt:d.Yj().nullable().optional(),request_id:d.Yj().nullable().optional(),parent_job_id:d.Yj().guid().nullable().optional()});let T=d.Yj().max(2e3).nullable(),U=d.Yj().min(1).max(200);d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid(),orchestrator_id:d.Yj().guid(),title:U,description:T,status:j,priority:l,job_id:d.Yj().guid().nullable(),result:d.Yj().nullable(),created_by_agent_id:d.Yj().guid().nullable(),assigned_agent_id:d.Yj().guid().nullable(),input_tokens:d.ai().int().min(0),output_tokens:d.ai().int().min(0),cost_usd:d.ai().min(0),depends_on:d.YO(d.Yj().guid()),context:d.g1(d.Yj(),d.L5()),root_job_id:d.Yj().guid().nullable(),locked_at:d.Yj().datetime().nullable(),locked_by:d.Yj().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,job_id:!0,result:!0,created_by_agent_id:!0,assigned_agent_id:!0,input_tokens:!0,output_tokens:!0,cost_usd:!0,depends_on:!0,context:!0,root_job_id:!0,locked_at:!0,locked_by:!0}).extend({status:j.default("todo"),priority:l.default("medium"),description:T.optional(),depends_on:d.YO(d.Yj().guid()).default([]),context:d.g1(d.Yj(),d.L5()).default({}),root_job_id:d.Yj().guid().nullable().optional()}),d.Ik({id:d.Yj().guid(),owner_user_id:d.Yj().guid(),name:d.Yj().min(1),type:d.k5(["google-oauth","notion-oauth","airtable-oauth"]),payload:d.Yj(),created_at:d.p6().nullable(),updated_at:d.p6().nullable()}),d.Ik({clientId:d.Yj(),clientSecret:d.Yj(),refreshToken:d.Yj().nullable(),accessToken:d.Yj(),expiresAt:d.Yj().nullable(),scopes:d.Yj(),accountName:d.Yj(),tokenUrl:d.Yj().url()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),base_url:d.Yj().nullable(),api_key:d.Yj().nullable(),active:d.zM(),auth_type:r,credential_id:d.Yj().guid().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0}).extend({active:d.zM().default(!0),auth_type:r.default("api_key"),base_url:d.Yj().nullable().optional(),api_key:d.Yj().nullable().optional(),credential_id:d.Yj().guid().nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),job_id:d.Yj().guid().nullable(),tool_name:d.Yj().min(1),tool_input:d.g1(d.Yj(),d.L5()).nullable(),tool_output:d.Yj().nullable(),duration_ms:d.ai().int().min(0).nullable(),turn:d.ai().int().min(0).nullable(),created_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0}).extend({tool_input:d.g1(d.Yj(),d.L5()).nullable().optional(),tool_output:d.Yj().nullable().optional(),duration_ms:d.ai().int().min(0).nullable().optional(),turn:d.ai().int().min(0).nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),job_id:d.Yj().guid(),agent_id:d.Yj().guid().nullable(),tool_name:d.Yj().min(1),tool_input:d.g1(d.Yj(),d.L5()),status:t,requested_at:d.Yj().datetime(),resolved_at:d.Yj().datetime().nullable(),resolved_by:d.Yj().nullable(),expires_at:d.Yj().datetime().nullable(),notes:d.Yj().nullable()}).strict().omit({id:!0,requested_at:!0,resolved_at:!0,resolved_by:!0,expires_at:!0}).extend({status:t.default("pending"),notes:d.Yj().nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid().nullable(),tool_name:d.Yj().min(1),action:v,condition_json:d.g1(d.Yj(),d.L5()),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0}).extend({agent_id:d.Yj().guid().nullable().optional(),condition_json:d.g1(d.Yj(),d.L5()).default({})});let V=d.ai().int().min(1).max(5);d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid().nullable(),fact:d.Yj().min(1),category:x,importance:V,source:z,skill_tags:d.YO(d.Yj().max(60)),memory_layer:B.nullable(),valid_from:d.Yj().datetime().nullable(),valid_to:d.Yj().datetime().nullable(),fact_hash:d.Yj().nullable(),archived:d.zM(),last_accessed_at:d.Yj().datetime().nullable(),access_count:d.ai().int().min(0),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,fact_hash:!0,archived:!0,last_accessed_at:!0,access_count:!0,valid_from:!0,valid_to:!0}).extend({agent_id:d.Yj().guid().nullable().optional(),category:x.default("context"),importance:V.default(3),source:z.default("manual"),skill_tags:d.YO(d.Yj().max(60)).max(20).default([]),memory_layer:B.nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid().nullable(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),task_template:d.Yj().min(1),active:d.zM(),secret:d.Yj().nullable(),last_triggered_at:d.Yj().datetime().nullable(),trigger_count:d.ai().int().min(0),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,secret:!0,last_triggered_at:!0,trigger_count:!0}).extend({active:d.zM().default(!0)});let W=d.Ik({name:d.Yj().min(1),slug:d.Yj().min(1).regex(/^[a-z0-9-]+$/),risk:N,requires_approval:d.zM()}).strict(),X=d.Ik({label:d.Yj().min(1),description:d.Yj().min(1),type:d.k5(["connector_slug","manual"]),value:d.Yj().optional(),critical:d.zM()}).strict();d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),content:d.Yj().min(1),active:d.zM(),description:d.Yj().max(300).nullable(),default_content:d.Yj().nullable(),content_overridden:d.zM(),required_config:d.YO(X),operations:d.YO(W),required_builtins:d.YO(d.Yj()),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0}).extend({active:d.zM().default(!0),description:d.Yj().max(300).nullable().optional(),default_content:d.Yj().nullable().optional(),content_overridden:d.zM().default(!1),required_config:d.YO(X).default([]),operations:d.YO(W).default([]),required_builtins:d.YO(d.Yj()).default([])}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid(),agent_id:d.Yj().guid(),skill_id:d.Yj().guid(),approval_overrides:d.g1(d.Yj(),d.zM()),use_custom_instructions:d.zM(),enabled_operations:d.YO(d.Yj()).nullable(),created_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0}).extend({approval_overrides:d.g1(d.Yj(),d.zM()).default({}),use_custom_instructions:d.zM().default(!1),enabled_operations:d.YO(d.Yj()).nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid(),type:D,name:d.Yj().min(1).max(120),cron_expr:d.Yj().min(1),task:d.Yj().nullable(),objectives:d.Yj().nullable(),active:d.zM(),last_run:d.Yj().datetime().nullable(),next_run:d.Yj().datetime().nullable(),last_status:F.nullable(),chat_id:d.Yj().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,last_run:!0,next_run:!0,last_status:!0}).extend({type:D.default("cron"),active:d.zM().default(!0),task:d.Yj().nullable().optional(),objectives:d.Yj().nullable().optional(),chat_id:d.Yj().nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid(),provider:d.Yj().min(1),api_key:d.Yj(),base_url:d.Yj().nullable(),nickname:d.Yj().max(80).nullable(),is_active:d.zM(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0}).extend({api_key:d.Yj().default(""),base_url:d.Yj().nullable().optional(),nickname:d.Yj().max(80).nullable().optional(),is_active:d.zM().default(!0)}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid().nullable(),task:d.Yj().min(1),result:d.Yj().nullable(),success:d.zM(),tools_used:d.YO(d.Yj()),tokens_used:d.ai().int().min(0).nullable(),input_tokens:d.ai().int().min(0).nullable(),output_tokens:d.ai().int().min(0).nullable(),duration_ms:d.ai().int().min(0).nullable(),key_source:H.nullable(),created_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0}).extend({success:d.zM().default(!0),tools_used:d.YO(d.Yj()).default([]),result:d.Yj().nullable().optional(),tokens_used:d.ai().int().min(0).nullable().optional(),input_tokens:d.ai().int().min(0).nullable().optional(),output_tokens:d.ai().int().min(0).nullable().optional(),duration_ms:d.ai().int().min(0).nullable().optional(),key_source:H.nullable().optional()});let Y="https://accounts.google.com/o/oauth2/v2/auth",Z="https://oauth2.googleapis.com/token",$=["https://www.googleapis.com/auth/userinfo.email","openid"],_={access_type:"offline",prompt:"consent",include_granted_scopes:"true"},aa={url:"https://www.googleapis.com/oauth2/v3/userinfo",nameField:"name",emailField:"email"},ab={"google-drive":{slug:"google-drive",label:"Google Drive",authUrl:Y,tokenUrl:Z,scopes:["https://www.googleapis.com/auth/drive",...$],pkce:"pkce-s256",tokenAuth:"body",tokenBodyType:"form",accountInfo:aa,supportsRefresh:!0,authExtraParams:_,credentialType:"google-oauth"},gmail:{slug:"gmail",label:"Gmail",authUrl:Y,tokenUrl:Z,scopes:["https://www.googleapis.com/auth/gmail.readonly","https://www.googleapis.com/auth/gmail.send",...$],pkce:"pkce-s256",tokenAuth:"body",tokenBodyType:"form",accountInfo:aa,supportsRefresh:!0,authExtraParams:_,credentialType:"google-oauth"},"google-sheets":{slug:"google-sheets",label:"Google Sheets",authUrl:Y,tokenUrl:Z,scopes:["https://www.googleapis.com/auth/spreadsheets",...$],pkce:"pkce-s256",tokenAuth:"body",tokenBodyType:"form",accountInfo:aa,supportsRefresh:!0,authExtraParams:_,credentialType:"google-oauth"},"google-docs":{slug:"google-docs",label:"Google Docs",authUrl:Y,tokenUrl:Z,scopes:["https://www.googleapis.com/auth/documents",...$],pkce:"pkce-s256",tokenAuth:"body",tokenBodyType:"form",accountInfo:aa,supportsRefresh:!0,authExtraParams:_,credentialType:"google-oauth"},"notion-oauth":{slug:"notion-oauth",label:"Notion (OAuth)",authUrl:"https://api.notion.com/v1/oauth/authorize",tokenUrl:"https://api.notion.com/v1/oauth/token",scopes:[],pkce:"none",tokenAuth:"basic",tokenBodyType:"json",accountInfo:null,supportsRefresh:!1,authExtraParams:{owner:"user",response_type:"code"},credentialType:"notion-oauth"},"airtable-oauth":{slug:"airtable-oauth",label:"Airtable",authUrl:"https://airtable.com/oauth2/v1/authorize",tokenUrl:"https://airtable.com/oauth2/v1/token",scopes:["data.records:read","data.records:write","schema.bases:read","schema.bases:write"],pkce:"pkce-s256",tokenAuth:"basic",tokenBodyType:"form",accountInfo:{url:"https://api.airtable.com/v0/meta/whoami",nameField:"email"},supportsRefresh:!0,authExtraParams:{response_type:"code"},credentialType:"airtable-oauth"}};function ac(a){return ab[a]??null}function ad(a){for(let b of Object.values(ab))if(b.credentialType===a)return b;return null}let ae=d.k5(["propose_confirm","destructive_gate","fully_autonomous"]),af=d.Ik({createAgent:d.zM(),createSkill:d.zM(),updateSkill:d.zM(),assignSkill:d.zM(),createMcp:d.zM(),createConnector:d.zM(),autonomy:ae}),ag={createAgent:!0,createSkill:!0,updateSkill:!0,assignSkill:!0,createMcp:!0,createConnector:!0,autonomy:"propose_confirm"},ah={createAgent:!1,createSkill:!1,updateSkill:!1,assignSkill:!1,createMcp:!1,createConnector:!1,autonomy:"propose_confirm"},ai={createAgent:"create_agent",createSkill:"create_skill",updateSkill:"update_skill",assignSkill:"attach_skill",createMcp:"create_mcp",createConnector:"create_connector"},aj=["create_agent","create_skill","update_skill","attach_skill","create_mcp","create_connector"];function ak(a){return Object.keys(ai).filter(b=>!0===a[b]).map(a=>ai[a])}function al(a){let b=af.safeParse(a);if(b.success)return b.data;let c=null!==a&&"object"==typeof a?a:{},d="boolean"==typeof c.createAgent?c.createAgent:ag.createAgent,e="boolean"==typeof c.createSkill?c.createSkill:ag.createSkill,f="boolean"==typeof c.updateSkill?c.updateSkill:ag.updateSkill,g="boolean"==typeof c.assignSkill?c.assignSkill:ag.assignSkill,h="boolean"==typeof c.createMcp&&c.createMcp,i="boolean"==typeof c.createConnector&&c.createConnector,j=ae.safeParse(c.autonomy);return{createAgent:d,createSkill:e,updateSkill:f,assignSkill:g,createMcp:h,createConnector:i,autonomy:j.success?j.data:ag.autonomy}}let am=[{slug:"notion",label:"Notion",authType:"api_key",docsHint:"Create a Notion integration at notion.so/my-integrations and copy its internal secret."},{slug:"notion-oauth",label:"Notion (OAuth)",authType:"oauth2",credentialType:"notion-oauth",docsHint:"Public Integration via OAuth — create one at notion.so/my-integrations (Public type) and authorize from your dashboard."},{slug:"google-drive",label:"Google Drive",authType:"oauth2",credentialType:"google-oauth",docsHint:"OAuth flow — uses your Google credential (create one under Credentials)."},{slug:"gmail",label:"Gmail",authType:"oauth2",credentialType:"google-oauth",docsHint:"OAuth flow — uses your Google credential (create one under Credentials)."},{slug:"google-sheets",label:"Google Sheets",authType:"oauth2",credentialType:"google-oauth",docsHint:"OAuth flow — uses your Google credential (create one under Credentials)."},{slug:"google-docs",label:"Google Docs",authType:"oauth2",credentialType:"google-oauth",docsHint:"OAuth flow — uses your Google credential (create one under Credentials)."},{slug:"airtable-oauth",label:"Airtable (OAuth)",authType:"oauth2",credentialType:"airtable-oauth",docsHint:"OAuth flow for Airtable Public Integrations (recommended)."},{slug:"airtable",label:"Airtable",authType:"api_key",docsHint:"Personal Access Token — airtable.com/create/tokens."},{slug:"apify",label:"Apify",authType:"api_key",docsHint:"Token API Apify — console.apify.com/account/integrations."},{slug:"firecrawl",label:"Firecrawl",authType:"api_key",docsHint:"API key Firecrawl — firecrawl.dev/account."},{slug:"tavily",label:"Tavily",authType:"api_key",docsHint:"API key Tavily — app.tavily.com."}]},42112:(a,b,c)=>{"use strict";c.d(b,{lR:()=>d,Jj:()=>l,hb:()=>h,vB:()=>e,Xi:()=>m,oC:()=>n,rb:()=>o,OH:()=>p.O});class d extends Error{constructor(){super("AUTH_REQUIRED"),this.code="AUTH_REQUIRED",this.name="AuthError"}}class e extends Error{constructor(){super("NO_ENTITY"),this.code="NO_ENTITY",this.name="NoEntityError"}}var f=c(90454);let g={userId:"00000000-0000-0000-0000-000000000001",entityId:"00000000-0000-0000-0000-000000000002"};class h{getSession(a){return Promise.resolve(g)}}var i=c(88132),j=c(29045);let k=[/^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,/^10\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,/^192\.168\.\d{1,3}\.\d{1,3}$/,/^172\.(1[6-9]|2\d|3[01])\.\d{1,3}\.\d{1,3}$/];class l{#a;#b;constructor(a,b){this.#a=a,this.#b=b}get auth(){return this.#a}async getSession(a){let b,c=await this.#a.api.getSession({headers:a.headers}).catch(()=>null);if(!c?.session||!c?.user)return null;let d=c.user.id,e=await this.#b.select({entityId:f.V.entityId}).from(f.V).where((0,f.eq)(f.V.userId,d));if(e.length>0&&e[0])b=String(e[0].entityId);else{b=crypto.randomUUID();let a=`personal-${b.slice(0,8)}`;await this.#b.insert(f.O5).values({id:b,userId:d,name:"Personal",slug:a,icon:"\uD83C\uDFE0"}),await this.#b.insert(f.V).values({entityId:b,userId:d,role:"owner"})}return{userId:d,entityId:b}}async handleAuthRequest(a){return this.#a.handler(a).catch(()=>null)}}function m(a){let{db:b,baseURL:c,secret:d,googleClientId:e,googleClientSecret:g}=a,h={};e&&g&&(h.google={clientId:e,clientSecret:g});let m={baseURL:c,secret:d,trustedOrigins:a=>{let b=[c],d=a?.headers.get("origin")??null;return d&&function(a){let b;if(!a)return!1;try{b=new URL(a)}catch{return!1}if("http:"!==b.protocol&&"https:"!==b.protocol)return!1;let c=b.hostname.toLowerCase();return"localhost"===c||"::1"===c||"[::1]"===c||k.some(a=>a.test(c))}(d)&&b.push(d),b},database:(0,j.y)(b,{provider:"pg",camelCase:!0,schema:{users:f.VV,sessions:f.Mf,accounts:f.vd,verifications:f.Jt}}),user:{modelName:"users",fields:{name:"name",email:"email",emailVerified:"emailVerified",image:"image",createdAt:"createdAt",updatedAt:"updatedAt"}},session:{modelName:"sessions",fields:{userId:"userId",expiresAt:"expiresAt",token:"token",ipAddress:"ipAddress",userAgent:"userAgent",createdAt:"createdAt",updatedAt:"updatedAt"}},account:{modelName:"accounts",fields:{userId:"userId",providerId:"providerId",accountId:"accountId",accessToken:"accessToken",refreshToken:"refreshToken",idToken:"idToken",accessTokenExpiresAt:"accessTokenExpiresAt",refreshTokenExpiresAt:"refreshTokenExpiresAt",scope:"scope",password:"password",createdAt:"createdAt",updatedAt:"updatedAt"}},verification:{modelName:"verifications",fields:{identifier:"identifier",value:"value",expiresAt:"expiresAt",createdAt:"createdAt",updatedAt:"updatedAt"}},emailAndPassword:{enabled:!0},socialProviders:h,advanced:{database:{generateId:()=>crypto.randomUUID()}},databaseHooks:{user:{create:{after:async a=>{let c=crypto.randomUUID(),d=`personal-${c.slice(0,8)}`;await b.insert(f.O5).values({id:c,userId:a.id,name:"Personal",slug:d,icon:"\uD83C\uDFE0"}),await b.insert(f.V).values({entityId:c,userId:a.id,role:"owner"})}}}}};return new l((0,i.l)(m),b)}async function n(a,b){let c=await b.getSession(a);if(!c)throw new d;return c}async function o(a,b,d){let g=await n(a,b),{entityMembers:h}=await Promise.resolve().then(c.bind(c,42894)),i=await d.select({entityId:h.entityId}).from(h).where((0,f.eq)(h.userId,g.userId));if(0===i.length)throw new e;let j=""!==g.entityId?g.entityId:i[0]?.entityId??"";if(!j)throw new e;return{userId:g.userId,entityId:j}}var p=c(29758)},42894:(a,b,c)=>{"use strict";c.r(b),c.d(b,{AGENT_ROLES:()=>d.s$,APPROVAL_RULE_ACTIONS:()=>d.vV,APPROVAL_STATUSES:()=>d.NY,CONNECTOR_AUTH_TYPES:()=>d.p6,ENTITY_INDUSTRIES:()=>d.dO,ENTITY_MEMBER_ROLES:()=>d.Li,JOB_CHANNELS:()=>d.vH,JOB_STATUSES:()=>d.nE,MCP_TRANSPORTS:()=>d.ip,MEMORY_CATEGORIES:()=>d.BJ,MEMORY_LAYERS:()=>d.dg,MEMORY_SOURCES:()=>d.rc,OPERATION_RISK_LEVELS:()=>d.Uw,ORCHESTRATOR_MODES:()=>d.GN,PLUGIN_HOOKS:()=>d.bt,PLUGIN_TYPES:()=>d.Y7,RUN_KEY_SOURCES:()=>d.RF,SCHEDULE_LAST_STATUSES:()=>d.Ur,SCHEDULE_TYPES:()=>d.GB,TASK_PRIORITIES:()=>d.PN,TASK_STATUSES:()=>d.Hi,accounts:()=>O,agentAssignments:()=>g.Qj,agentBudgets:()=>g.I$,agentConnectorAssignments:()=>R,agentJobs:()=>q,agentMcpServers:()=>I,agentMemory:()=>B,agentPlugins:()=>L,agentRuns:()=>G,agentSchedules:()=>E,agentSkillAssignments:()=>D.$m,agentSkills:()=>D.eK,agentTasks:()=>s,agentWorkspaces:()=>S,agents:()=>g.X6,approvalRequests:()=>w,approvalRules:()=>x,chatMessages:()=>U,configuratorSessions:()=>K,connectors:()=>u.t,conversations:()=>T,credentials:()=>t.z,entities:()=>f.O,entityLlmKeys:()=>F.h,entityMembers:()=>f.V,mcpConnections:()=>J,mcpServers:()=>H,rateLimits:()=>M,sessions:()=>N,skillConnectors:()=>D.IS,skillVersions:()=>D.bq,toolCalls:()=>v,userProfiles:()=>e.K,users:()=>e.V,verifications:()=>P,webhookTriggers:()=>C});var d=c(36535),e=c(57119),f=c(12788),g=c(54789),h=c(18199),i=c(99768),j=c(49500),k=c(52019),l=c(91605),m=c(42891),n=c(16471),o=c(66618),p=c(29123);let q=(0,h.cJ)("agent_jobs",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),status:(0,j.Qq)("status").default("pending"),channel:(0,j.Qq)("channel").notNull(),task:(0,j.Qq)("task").notNull(),originalTask:(0,j.Qq)("original_task"),chatId:(0,j.Qq)("chat_id"),systemPrompt:(0,j.Qq)("system_prompt"),messages:(0,k.Fx)("messages").default((0,p.ll)`'[]'::jsonb`),toolsUsed:(0,j.Qq)("tools_used").array().default((0,p.ll)`'{}'::text[]`),turn:(0,l.nd)("turn").default(0),result:(0,j.Qq)("result"),error:(0,j.Qq)("error"),chainCount:(0,l.nd)("chain_count").default(0),requestId:(0,j.Qq)("request_id"),parentJobId:(0,i.uR)("parent_job_id"),parentRequestId:(0,j.Qq)("parent_request_id"),totalDurationMs:(0,l.nd)("total_duration_ms").default(0),inputTokens:(0,l.nd)("input_tokens").default(0),outputTokens:(0,l.nd)("output_tokens").default(0),delegationDepth:(0,l.nd)("delegation_depth").default(0),lastFailedDelegationSlug:(0,j.Qq)("last_failed_delegation_slug"),pendingDelegation:(0,k.Fx)("pending_delegation"),completedAt:(0,m.vE)("completed_at",{withTimezone:!0}),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_agent_jobs_entity_id").on(a.entityId),(0,n.Pe)("idx_agent_jobs_entity_created").on(a.entityId,(0,p.ll)`${a.createdAt} DESC`),(0,n.Pe)("idx_agent_jobs_entity_status_created").on(a.entityId,a.status,(0,p.ll)`${a.createdAt} DESC`),(0,n.Pe)("idx_agent_jobs_parent_job_id").on(a.parentJobId),(0,n.Pe)("idx_jobs_parent").on(a.parentJobId),(0,n.Pe)("idx_jobs_status").on(a.status,a.createdAt),(0,o.z6)("agent_jobs_status_check",(0,p.ll)`${a.status} IN ('pending','processing','completed','failed','awaiting_approval','awaiting_delegation','cancelled')`),(0,o.z6)("agent_jobs_channel_check",(0,p.ll)`${a.channel} IN ('telegram','api','whatsapp','internal','cron','task-board','slack','discord','dashboard')`)]);var r=c(49152);let s=(0,h.cJ)("agent_tasks",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),orchestratorId:(0,i.uR)("orchestrator_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),title:(0,j.Qq)("title").notNull(),description:(0,j.Qq)("description"),status:(0,j.Qq)("status").notNull().default("todo"),priority:(0,j.Qq)("priority").notNull().default("medium"),jobId:(0,i.uR)("job_id").references(()=>q.id,{onDelete:"set null"}),result:(0,j.Qq)("result"),createdByAgentId:(0,i.uR)("created_by_agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),assignedAgentId:(0,i.uR)("assigned_agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),inputTokens:(0,l.nd)("input_tokens").default(0),outputTokens:(0,l.nd)("output_tokens").default(0),costUsd:(0,r.sH)("cost_usd",{precision:10,scale:6}).default("0"),dependsOn:(0,i.uR)("depends_on").array().default((0,p.ll)`'{}'::uuid[]`),context:(0,k.Fx)("context").default((0,p.ll)`'{}'::jsonb`),rootJobId:(0,i.uR)("root_job_id"),lockedAt:(0,m.vE)("locked_at",{withTimezone:!0}),lockedBy:(0,j.Qq)("locked_by"),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,n.Pe)("idx_agent_tasks_entity").on(a.entityId),(0,n.Pe)("idx_agent_tasks_entity_status_created").on(a.entityId,a.status,(0,p.ll)`${a.createdAt} DESC`),(0,n.Pe)("idx_agent_tasks_orchestrator_status").on(a.orchestratorId,a.status),(0,n.Pe)("idx_agent_tasks_status").on(a.status),(0,n.Pe)("idx_agent_tasks_assigned").on(a.assignedAgentId),(0,o.z6)("agent_tasks_status_check",(0,p.ll)`${a.status} IN ('todo','in_progress','done','cancelled','blocked')`),(0,o.z6)("agent_tasks_priority_check",(0,p.ll)`${a.priority} IN ('low','medium','high')`),(0,o.z6)("agent_tasks_title_check",(0,p.ll)`char_length(${a.title}) <= 200`),(0,o.z6)("agent_tasks_description_check",(0,p.ll)`${a.description} IS NULL OR char_length(${a.description}) <= 2000`)]);var t=c(62637),u=c(98935);let v=(0,h.cJ)("tool_calls",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),jobId:(0,i.uR)("job_id").references(()=>q.id,{onDelete:"cascade"}),toolName:(0,j.Qq)("tool_name").notNull(),toolInput:(0,k.Fx)("tool_input"),toolOutput:(0,j.Qq)("tool_output"),durationMs:(0,l.nd)("duration_ms"),turn:(0,l.nd)("turn"),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_tool_calls_entity_id").on(a.entityId),(0,n.Pe)("idx_tool_calls_job").on(a.jobId),(0,n.Pe)("idx_tool_calls_job_created").on(a.jobId,(0,p.ll)`${a.createdAt} DESC`),(0,n.Pe)("idx_tool_calls_recent").on((0,p.ll)`${a.createdAt} DESC`)]),w=(0,h.cJ)("approval_requests",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),jobId:(0,i.uR)("job_id").notNull().references(()=>q.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),toolName:(0,j.Qq)("tool_name").notNull(),toolInput:(0,k.Fx)("tool_input").notNull(),status:(0,j.Qq)("status").default("pending"),requestedAt:(0,m.vE)("requested_at",{withTimezone:!0}).defaultNow(),resolvedAt:(0,m.vE)("resolved_at",{withTimezone:!0}),resolvedBy:(0,j.Qq)("resolved_by"),expiresAt:(0,m.vE)("expires_at",{withTimezone:!0}).default((0,p.ll)`now() + interval '1 hour'`),notes:(0,j.Qq)("notes"),executedAt:(0,m.vE)("executed_at",{withTimezone:!0})},a=>[(0,n.Pe)("idx_approval_requests_entity_id").on(a.entityId),(0,n.Pe)("idx_approval_status").on(a.status,a.requestedAt),(0,n.Pe)("idx_approval_requests_agent_id").on(a.agentId),(0,n.Pe)("idx_approval_requests_job_id").on(a.jobId),(0,o.z6)("approval_requests_status_check",(0,p.ll)`${a.status} IN ('pending','approved','rejected','expired')`)]),x=(0,h.cJ)("approval_rules",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),toolName:(0,j.Qq)("tool_name").notNull(),action:(0,j.Qq)("action").notNull(),conditionJson:(0,k.Fx)("condition_json").default((0,p.ll)`'{}'::jsonb`),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_approval_rules_entity_id").on(a.entityId),(0,o.z6)("approval_rules_action_check",(0,p.ll)`${a.action} IN ('auto_approve','require_approval','block')`)]);var y=c(64264),z=c(37607);let A=(0,y._z)({dataType(a){let b=a?.dimensions??1536;return`vector(${b})`},fromDriver:a=>JSON.parse(a),toDriver:a=>`[${a.join(",")}]`}),B=(0,h.cJ)("agent_memory",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),fact:(0,j.Qq)("fact").notNull(),category:(0,j.Qq)("category").default("context"),importance:(0,l.nd)("importance").default(3),source:(0,j.Qq)("source").default("agent"),skillTags:(0,j.Qq)("skill_tags").array().default((0,p.ll)`'{}'::text[]`),memoryLayer:(0,j.Qq)("memory_layer"),embedding:A("embedding",{dimensions:1536}),validFrom:(0,m.vE)("valid_from",{withTimezone:!0}).defaultNow(),validTo:(0,m.vE)("valid_to",{withTimezone:!0}),factHash:(0,j.Qq)("fact_hash"),archived:(0,z.zM)("archived").default(!1),lastAccessedAt:(0,m.vE)("last_accessed_at",{withTimezone:!0}).defaultNow(),accessCount:(0,l.nd)("access_count").default(0),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_agent_memory_entity_id").on(a.entityId),(0,n.Pe)("idx_agent_memory_entity_active").on(a.entityId,a.archived,a.validTo),(0,n.Pe)("idx_agent_memory_archived").on(a.archived),(0,n.Pe)("idx_agent_memory_last_accessed").on(a.lastAccessedAt),(0,n.Pe)("idx_agent_memory_layer").on(a.memoryLayer),(0,n.Pe)("idx_agent_memory_fact_hash").on(a.factHash),(0,n.Pe)("idx_memory_category").on(a.category,(0,p.ll)`${a.importance} DESC`),(0,o.z6)("agent_memory_category_check",(0,p.ll)`${a.category} IN ('preference','context','outcome','learned_rule')`),(0,o.z6)("agent_memory_importance_check",(0,p.ll)`${a.importance} >= 1 AND ${a.importance} <= 5`),(0,o.z6)("agent_memory_source_check",(0,p.ll)`${a.source} IN ('agent','reflection','manual')`)]),C=(0,h.cJ)("webhook_triggers",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),name:(0,j.Qq)("name").notNull(),slug:(0,j.Qq)("slug").notNull().unique(),taskTemplate:(0,j.Qq)("task_template").notNull(),active:(0,z.zM)("active").default(!0),secret:(0,j.Qq)("secret"),lastTriggeredAt:(0,m.vE)("last_triggered_at",{withTimezone:!0}),triggerCount:(0,l.nd)("trigger_count").default(0),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_webhook_triggers_entity_id").on(a.entityId)]);var D=c(82017);let E=(0,h.cJ)("agent_schedules",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),type:(0,j.Qq)("type").notNull().default("cron"),name:(0,j.Qq)("name").notNull(),cronExpr:(0,j.Qq)("cron_expr").notNull(),task:(0,j.Qq)("task"),objectives:(0,j.Qq)("objectives"),active:(0,z.zM)("active").default(!0),lastRun:(0,m.vE)("last_run",{withTimezone:!0}),nextRun:(0,m.vE)("next_run",{withTimezone:!0}),lastStatus:(0,j.Qq)("last_status"),chatId:(0,j.Qq)("chat_id"),notifyOnSuccess:(0,z.zM)("notify_on_success").notNull().default(!1),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_agent_schedules_entity_id").on(a.entityId),(0,n.Pe)("idx_schedules_active").on(a.active,a.nextRun),(0,o.z6)("agent_schedules_type_check",(0,p.ll)`${a.type} IN ('cron','heartbeat')`),(0,o.z6)("agent_schedules_last_status_check",(0,p.ll)`${a.lastStatus} IN ('success','failed','no_action') OR ${a.lastStatus} IS NULL`)]);var F=c(49959);let G=(0,h.cJ)("agent_runs",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),task:(0,j.Qq)("task").notNull(),result:(0,j.Qq)("result"),success:(0,z.zM)("success").default(!0),toolsUsed:(0,j.Qq)("tools_used").array().default((0,p.ll)`'{}'::text[]`),tokensUsed:(0,l.nd)("tokens_used"),inputTokens:(0,l.nd)("input_tokens"),outputTokens:(0,l.nd)("output_tokens"),durationMs:(0,l.nd)("duration_ms"),keySource:(0,j.Qq)("key_source"),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_agent_runs_entity_id").on(a.entityId),(0,n.Pe)("idx_agent_runs_agent_created").on(a.agentId,(0,p.ll)`${a.createdAt} DESC`),(0,n.Pe)("idx_runs_agent").on(a.agentId,(0,p.ll)`${a.createdAt} DESC`),(0,n.Pe)("idx_runs_recent").on((0,p.ll)`${a.createdAt} DESC`),(0,o.z6)("agent_runs_key_source_check",(0,p.ll)`${a.keySource} IN ('entity','operator') OR ${a.keySource} IS NULL`)]),H=(0,h.cJ)("mcp_servers",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),name:(0,j.Qq)("name").notNull(),slug:(0,j.Qq)("slug").notNull(),transport:(0,j.Qq)("transport").notNull(),url:(0,j.Qq)("url"),command:(0,j.Qq)("command"),args:(0,j.Qq)("args").array().default((0,p.ll)`'{}'::text[]`),envVars:(0,k.Fx)("env_vars").default((0,p.ll)`'{}'::jsonb`),apiKey:(0,j.Qq)("api_key"),apiKeyLast4:(0,j.Qq)("api_key_last4"),authScheme:(0,j.Qq)("auth_scheme"),authParamName:(0,j.Qq)("auth_param_name"),active:(0,z.zM)("active").default(!0),availableTools:(0,k.Fx)("available_tools"),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.z6)("mcp_servers_transport_check",(0,p.ll)`${a.transport} IN ('http','stdio')`),(0,o.z6)("mcp_servers_auth_scheme_check",(0,p.ll)`${a.authScheme} IN ('header','query','bearer') OR ${a.authScheme} IS NULL`)]),I=(0,h.cJ)("agent_mcp_servers",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),mcpServerId:(0,i.uR)("mcp_server_id").notNull().references(()=>H.id,{onDelete:"cascade"}),enabledTools:(0,k.Fx)("enabled_tools"),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,n.Pe)("idx_agent_mcp_servers_agent").on(a.agentId),(0,n.Pe)("idx_agent_mcp_servers_entity").on(a.entityId),(0,n.GL)("agent_mcp_servers_agent_server_unique").on(a.agentId,a.mcpServerId)]),J=(0,h.cJ)("mcp_connections",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),slug:(0,j.Qq)("slug").notNull(),active:(0,z.zM)("active").notNull().default(!0),toolConfig:(0,k.Fx)("tool_config").notNull().default((0,p.ll)`'{}'::jsonb`),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,n.Pe)("idx_mcp_connections_entity").on(a.entityId)]),K=(0,h.cJ)("configurator_sessions",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),messages:(0,k.Fx)("messages").notNull().default((0,p.ll)`'[]'::jsonb`),status:(0,j.Qq)("status").notNull().default("active"),turnCount:(0,l.nd)("turn_count").notNull().default(0),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,n.Pe)("idx_configurator_sessions_entity").on(a.entityId),(0,n.Pe)("idx_configurator_sessions_agent").on(a.agentId)]),L=(0,h.cJ)("agent_plugins",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),name:(0,j.Qq)("name").notNull(),slug:(0,j.Qq)("slug").notNull(),description:(0,j.Qq)("description"),pluginType:(0,j.Qq)("plugin_type").notNull(),config:(0,k.Fx)("config").default((0,p.ll)`'{}'::jsonb`),active:(0,z.zM)("active").default(!0),hook:(0,j.Qq)("hook").notNull(),webhookUrl:(0,j.Qq)("webhook_url"),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.z6)("agent_plugins_plugin_type_check",(0,p.ll)`${a.pluginType} IN ('webhook','transform','schedule')`),(0,o.z6)("agent_plugins_hook_check",(0,p.ll)`${a.hook} IN ('pre_task','post_task','pre_tool','post_tool','on_memory_save')`)]),M=(0,h.cJ)("rate_limits",{key:(0,j.Qq)("key").primaryKey(),count:(0,l.nd)("count").default(1),windowStart:(0,m.vE)("window_start",{withTimezone:!0}).defaultNow()}),N=(0,h.cJ)("sessions",{id:(0,j.Qq)("id").primaryKey(),userId:(0,i.uR)("user_id").notNull().references(()=>e.V.id,{onDelete:"cascade"}),expiresAt:(0,m.vE)("expires_at",{withTimezone:!0}).notNull(),token:(0,j.Qq)("token").notNull().unique(),ipAddress:(0,j.Qq)("ip_address"),userAgent:(0,j.Qq)("user_agent"),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()}),O=(0,h.cJ)("accounts",{id:(0,j.Qq)("id").primaryKey(),userId:(0,i.uR)("user_id").notNull().references(()=>e.V.id,{onDelete:"cascade"}),providerId:(0,j.Qq)("provider_id").notNull(),accountId:(0,j.Qq)("account_id").notNull(),accessToken:(0,j.Qq)("access_token"),refreshToken:(0,j.Qq)("refresh_token"),idToken:(0,j.Qq)("id_token"),accessTokenExpiresAt:(0,m.vE)("access_token_expires_at",{withTimezone:!0}),refreshTokenExpiresAt:(0,m.vE)("refresh_token_expires_at",{withTimezone:!0}),scope:(0,j.Qq)("scope"),password:(0,j.Qq)("password"),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()}),P=(0,h.cJ)("verifications",{id:(0,j.Qq)("id").primaryKey(),identifier:(0,j.Qq)("identifier").notNull(),value:(0,j.Qq)("value").notNull(),expiresAt:(0,m.vE)("expires_at",{withTimezone:!0}).notNull(),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()});var Q=c(68478);let R=(0,h.cJ)("agent_connector_assignments",{id:(0,i.uR)("id").primaryKey().defaultRandom(),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),connectorId:(0,i.uR)("connector_id").notNull().references(()=>u.t.id,{onDelete:"cascade"}),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),enabledOperations:(0,j.Qq)("enabled_operations").array(),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_agent_connector_assignments_agent_id").on(a.agentId),(0,n.Pe)("idx_agent_connector_assignments_connector_id").on(a.connectorId),(0,Q.Am)("agent_connector_unique").on(a.agentId,a.connectorId)]),S=(0,h.cJ)("agent_workspaces",{id:(0,i.uR)("id").primaryKey().defaultRandom(),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),label:(0,j.Qq)("label").notNull(),path:(0,j.Qq)("path").notNull(),position:(0,l.nd)("position").default(0).notNull(),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.GL)("agent_workspaces_agent_label_unique").on(a.agentId,a.label),(0,n.Pe)("idx_agent_workspaces_agent_id").on(a.agentId)]),T=(0,h.cJ)("conversations",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),title:(0,j.Qq)("title").notNull().default(""),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,m.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_conversations_entity_agent").on(a.entityId,a.agentId,a.updatedAt)]),U=(0,h.cJ)("chat_messages",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),conversationId:(0,i.uR)("conversation_id").references(()=>T.id,{onDelete:"cascade"}),role:(0,j.Qq)("role").notNull(),content:(0,j.Qq)("content").notNull(),jobId:(0,i.uR)("job_id").references(()=>q.id,{onDelete:"set null"}),createdAt:(0,m.vE)("created_at",{withTimezone:!0}).defaultNow()},a=>[(0,n.Pe)("idx_chat_messages_conversation").on(a.conversationId,a.createdAt),(0,o.z6)("chat_messages_role_check",(0,p.ll)`${a.role} IN ('user','assistant')`)])},49959:(a,b,c)=>{"use strict";c.d(b,{h:()=>k});var d=c(18199),e=c(99768),f=c(49500),g=c(37607),h=c(42891),i=c(16471),j=c(12788);let k=(0,d.cJ)("entity_llm_keys",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").notNull().references(()=>j.O.id,{onDelete:"cascade"}),provider:(0,f.Qq)("provider").notNull(),apiKey:(0,f.Qq)("api_key").notNull().default(""),apiKeyLast4:(0,f.Qq)("api_key_last4").notNull().default(""),baseUrl:(0,f.Qq)("base_url"),nickname:(0,f.Qq)("nickname"),isActive:(0,g.zM)("is_active").notNull().default(!0),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,i.Pe)("idx_entity_llm_keys_entity_id").on(a.entityId)])},54789:(a,b,c)=>{"use strict";c.d(b,{I$:()=>s,Qj:()=>r,X6:()=>q});var d=c(18199),e=c(99768),f=c(49500),g=c(52019),h=c(37607),i=c(27940),j=c(91605),k=c(42891),l=c(16471),m=c(66618),n=c(29123),o=c(12788),p=c(49959);let q=(0,d.cJ)("agents",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").references(()=>o.O.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull(),slug:(0,f.Qq)("slug").notNull().unique(),personality:(0,f.Qq)("personality").notNull(),model:(0,f.Qq)("model").default("claude-sonnet-4-6-20260217"),llmKeyId:(0,e.uR)("llm_key_id").references(()=>p.h.id,{onDelete:"set null"}),fallbackChain:(0,g.Fx)("fallback_chain").$type().default((0,n.ll)`'[]'::jsonb`),active:(0,h.zM)("active").default(!0),isDefault:(0,h.zM)("is_default").default(!1),role:(0,f.Qq)("role").default("agent"),orchestratorMode:(0,f.Qq)("orchestrator_mode"),telegramBotToken:(0,f.Qq)("telegram_bot_token"),telegramBotUsername:(0,f.Qq)("telegram_bot_username"),telegramOffset:(0,i.o)("telegram_offset",{mode:"number"}),lastSeenChatIdTelegram:(0,f.Qq)("last_seen_chat_id_telegram"),requiresApproval:(0,f.Qq)("requires_approval").array().default((0,n.ll)`'{}'::text[]`),capabilities:(0,f.Qq)("capabilities").array().default((0,n.ll)`'{}'::text[]`),taskContextTemplate:(0,f.Qq)("task_context_template"),avatarUrl:(0,f.Qq)("avatar_url"),systemAgent:(0,h.zM)("system_agent").default(!1),maxTokensPerJob:(0,j.nd)("max_tokens_per_job").default(0).notNull(),memoryTokenBudget:(0,j.nd)("memory_token_budget").default(1500).notNull(),position:(0,j.nd)("position").default(0).notNull(),createdAt:(0,k.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,k.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,l.Pe)("idx_agents_entity_id").on(a.entityId),(0,l.Pe)("idx_agents_position").on(a.position),(0,m.z6)("agents_role_check",(0,n.ll)`${a.role} IN ('agent', 'orchestrator', 'system')`),(0,m.z6)("agents_orchestrator_mode_check",(0,n.ll)`${a.orchestratorMode} IN ('router', 'planner') OR ${a.orchestratorMode} IS NULL`),(0,m.z6)("agents_max_tokens_per_job_check",(0,n.ll)`${a.maxTokensPerJob} >= 0`)]),r=(0,d.cJ)("agent_assignments",{id:(0,e.uR)("id").primaryKey().defaultRandom(),orchestratorId:(0,e.uR)("orchestrator_id").notNull().references(()=>q.id,{onDelete:"cascade"}),subAgentId:(0,e.uR)("sub_agent_id").notNull().references(()=>q.id,{onDelete:"cascade"}),entityId:(0,e.uR)("entity_id").notNull().references(()=>o.O.id,{onDelete:"cascade"}),instructions:(0,f.Qq)("instructions"),createdAt:(0,k.vE)("created_at",{withTimezone:!0}).notNull().defaultNow()},()=>[]),s=(0,d.cJ)("agent_budgets",{id:(0,e.uR)("id").primaryKey().defaultRandom(),agentId:(0,e.uR)("agent_id").unique().references(()=>q.id,{onDelete:"cascade"}),entityId:(0,e.uR)("entity_id").references(()=>o.O.id,{onDelete:"cascade"}),dailyTokenLimit:(0,i.o)("daily_token_limit",{mode:"number"}).default(0),monthlyTokenLimit:(0,i.o)("monthly_token_limit",{mode:"number"}).default(0),alertThresholdPct:(0,j.nd)("alert_threshold_pct").default(80),autoPause:(0,h.zM)("auto_pause").default(!1),maxJobTokens:(0,j.nd)("max_job_tokens").default(15e4),createdAt:(0,k.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,k.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,l.Pe)("idx_agent_budgets_entity_id").on(a.entityId),(0,m.z6)("agent_budgets_alert_threshold_pct_check",(0,n.ll)`${a.alertThresholdPct} >= 0 AND ${a.alertThresholdPct} <= 100`)])},57119:(a,b,c)=>{"use strict";c.d(b,{K:()=>j,V:()=>i});var d=c(18199),e=c(99768),f=c(49500),g=c(37607),h=c(42891);let i=(0,d.cJ)("users",{id:(0,e.uR)("id").primaryKey().defaultRandom(),email:(0,f.Qq)("email").notNull().unique(),passwordHash:(0,f.Qq)("password_hash"),name:(0,f.Qq)("name").notNull().default(""),emailVerified:(0,g.zM)("email_verified").notNull().default(!1),image:(0,f.Qq)("image"),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()}),j=(0,d.cJ)("user_profiles",{userId:(0,e.uR)("user_id").primaryKey().notNull().references(()=>i.id,{onDelete:"cascade"}),displayName:(0,f.Qq)("display_name"),avatarUrl:(0,f.Qq)("avatar_url"),timezone:(0,f.Qq)("timezone").notNull().default("UTC"),locale:(0,f.Qq)("locale").notNull().default("en"),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()})},58112:()=>{},62637:(a,b,c)=>{"use strict";c.d(b,{z:()=>l});var d=c(18199),e=c(99768),f=c(49500),g=c(42891),h=c(16471),i=c(66618),j=c(29123),k=c(57119);let l=(0,d.cJ)("credentials",{id:(0,e.uR)("id").primaryKey().defaultRandom(),ownerUserId:(0,e.uR)("owner_user_id").notNull().references(()=>k.V.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull(),type:(0,f.Qq)("type").notNull(),payload:(0,f.Qq)("payload").notNull(),createdAt:(0,g.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,g.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,h.Pe)("idx_credentials_owner").on(a.ownerUserId),(0,h.Pe)("idx_credentials_type").on(a.type),(0,i.z6)("credentials_type_check",(0,j.ll)`${a.type} IN ('google-oauth','notion-oauth','airtable-oauth')`)])},75224:(a,b,c)=>{"use strict";c.d(b,{_:()=>g});var d=c(61989);let e=d.Ik({DATABASE_URL:d.Yj().min(1,"DATABASE_URL is required"),RUNNER_URL:d.Yj().url().default("http://localhost:3001"),AUTH_MODE:d.k5(["local-trust","local-auth","bearer-token"]).default("local-trust"),NEXT_PUBLIC_AUTH_MODE:d.k5(["local-trust","local-auth","bearer-token"]).default("local-trust"),AUTH_SECRET:d.Yj().min(32).optional(),WORKER_SECRET:d.Yj().min(1).optional(),GOOGLE_CLIENT_ID:d.Yj().optional(),GOOGLE_CLIENT_SECRET:d.Yj().optional(),NEXT_PUBLIC_APP_URL:d.Yj().url().default("http://localhost:3000"),BIND:d.k5(["127.0.0.1","0.0.0.0"]).default("127.0.0.1"),LLM_PROVIDER:d.Yj().optional(),LLM_MODEL:d.Yj().optional(),LLM_BASE_URL:d.Yj().optional()}),f={DATABASE_URL:process.env.DATABASE_URL??"postgres://placeholder:5432/placeholder",RUNNER_URL:process.env.RUNNER_URL,AUTH_MODE:process.env.AUTH_MODE,NEXT_PUBLIC_AUTH_MODE:process.env.NEXT_PUBLIC_AUTH_MODE,AUTH_SECRET:process.env.AUTH_SECRET,WORKER_SECRET:process.env.WORKER_SECRET,GOOGLE_CLIENT_ID:process.env.GOOGLE_CLIENT_ID,GOOGLE_CLIENT_SECRET:process.env.GOOGLE_CLIENT_SECRET,NEXT_PUBLIC_APP_URL:process.env.NEXT_PUBLIC_APP_URL,BIND:process.env.BIND,LLM_PROVIDER:process.env.LLM_PROVIDER,LLM_MODEL:process.env.LLM_MODEL,LLM_BASE_URL:process.env.LLM_BASE_URL},g=e.parse(f)},82017:(a,b,c)=>{"use strict";c.d(b,{$m:()=>s,IS:()=>r,bq:()=>q,eK:()=>p});var d=c(18199),e=c(99768),f=c(49500),g=c(37607),h=c(52019),i=c(42891),j=c(16471),k=c(91605),l=c(29123),m=c(12788),n=c(54789),o=c(98935);let p=(0,d.cJ)("agent_skills",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").references(()=>m.O.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull().unique(),slug:(0,f.Qq)("slug").notNull().unique(),content:(0,f.Qq)("content").notNull(),active:(0,g.zM)("active").default(!0),description:(0,f.Qq)("description"),defaultContent:(0,f.Qq)("default_content"),contentOverridden:(0,g.zM)("content_overridden").default(!1),requiredConfig:(0,h.Fx)("required_config").default((0,l.ll)`'[]'::jsonb`),operations:(0,h.Fx)("operations").default((0,l.ll)`'[]'::jsonb`),requiredBuiltins:(0,f.Qq)("required_builtins").array().notNull().default((0,l.ll)`'{}'::text[]`),createdAt:(0,i.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,i.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,j.Pe)("idx_agent_skills_entity_id").on(a.entityId),(0,j.Pe)("idx_skills_active").on(a.active,a.slug)]),q=(0,d.cJ)("skill_versions",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").references(()=>m.O.id,{onDelete:"cascade"}),skillId:(0,e.uR)("skill_id").references(()=>p.id,{onDelete:"cascade"}),version:(0,k.nd)("version").notNull(),content:(0,f.Qq)("content").notNull(),name:(0,f.Qq)("name").notNull(),createdAt:(0,i.vE)("created_at",{withTimezone:!0}).defaultNow()},a=>[(0,j.Pe)("idx_skill_versions_entity_id").on(a.entityId),(0,j.Pe)("idx_skill_versions_skill_id").on(a.skillId,(0,l.ll)`${a.version} DESC`)]),r=(0,d.cJ)("skill_connectors",{skillId:(0,e.uR)("skill_id").notNull().references(()=>p.id,{onDelete:"cascade"}),connectorId:(0,e.uR)("connector_id").notNull().references(()=>o.t.id,{onDelete:"cascade"}),entityId:(0,e.uR)("entity_id").references(()=>m.O.id,{onDelete:"cascade"})},a=>[(0,j.Pe)("idx_skill_connectors_entity_id").on(a.entityId),(0,j.Pe)("idx_skill_connectors_skill_id").on(a.skillId)]),s=(0,d.cJ)("agent_skill_assignments",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").notNull().references(()=>m.O.id,{onDelete:"cascade"}),agentId:(0,e.uR)("agent_id").notNull().references(()=>n.X6.id,{onDelete:"cascade"}),skillId:(0,e.uR)("skill_id").notNull().references(()=>p.id,{onDelete:"cascade"}),approvalOverrides:(0,h.Fx)("approval_overrides").default((0,l.ll)`'{}'::jsonb`),useCustomInstructions:(0,g.zM)("use_custom_instructions").notNull().default(!1),enabledOperations:(0,f.Qq)("enabled_operations").array(),createdAt:(0,i.vE)("created_at",{withTimezone:!0}).notNull().defaultNow()},()=>[])},87488:()=>{},90454:(a,b,c)=>{"use strict";c.d(b,{vd:()=>f.accounts,Qj:()=>f.agentAssignments,XT:()=>f.agentConnectorAssignments,ME:()=>f.agentJobs,oS:()=>f.agentMcpServers,RK:()=>f.agentMemory,uQ:()=>f.agentSchedules,$m:()=>f.agentSkillAssignments,eK:()=>f.agentSkills,Kq:()=>f.agentWorkspaces,X6:()=>f.agents,Uo:()=>h.Uo,MZ:()=>f.approvalRequests,bN:()=>f.approvalRules,ps:()=>u,p$:()=>f.chatMessages,tK:()=>f.connectors,NP:()=>f.conversations,S$:()=>r,UU:()=>g,qz:()=>t,z3:()=>f.credentials,G0:()=>m,i8:()=>w.i,O5:()=>f.entities,hG:()=>f.entityLlmKeys,V:()=>f.entityMembers,eq:()=>h.eq,Se:()=>n,RV:()=>h.RV,h_:()=>f.mcpServers,KL:()=>h.KL,or:()=>h.or,Ic:()=>o,Mf:()=>f.sessions,ll:()=>v.ll,Ky:()=>f.toolCalls,VV:()=>f.users,Jt:()=>f.verifications});var d=c(57562),e=c(96583),f=c(42894);function g(a,b={}){let c=(0,d.A)(a,{max:b.max??10,connect_timeout:10});return{db:(0,e.f)(c,{schema:f}),close:()=>c.end()}}var h=c(97852),i=c(62637),j=c(98472),k=c(36535);function l(a){return JSON.parse((0,j.ph)(a)?(0,j.Yc)(a):a)}async function m(a,b){let[c]=await a.select().from(i.z).where((0,h.eq)(i.z.id,b));return c?{id:c.id,ownerUserId:c.ownerUserId,name:c.name,type:c.type,payload:l(c.payload)}:null}async function n(a,b){let[c]=await a.select().from(i.z).where((0,h.eq)(i.z.id,b));if(!c)return null;let d=l(c.payload),e=c.type,f=d.expiresAt?new Date(d.expiresAt):null;if(null!==f&&f.getTime()-Date.now()<6e4){let c=(0,k.R3)(e);if(c?.supportsRefresh&&d.refreshToken)try{await o(a,b);let[c]=await a.select().from(i.z).where((0,h.eq)(i.z.id,b));c&&(d=l(c.payload))}catch(b){let a=b instanceof Error?b.message:String(b);console.warn(`[getDecryptedCredentialById] auto-refresh failed: ${a}`)}}return{id:c.id,ownerUserId:c.ownerUserId,name:c.name,type:e,payload:d}}async function o(a,b){let c,[d]=await a.select().from(i.z).where((0,h.eq)(i.z.id,b));if(!d)throw Error(`refreshAndPersistCredential: credential '${b}' not found`);let e=l(d.payload),f=(0,k.R3)(d.type);if(!f)throw Error(`refreshAndPersistCredential: no provider for credential type '${d.type}'`);if(!f.supportsRefresh)throw Error(`refreshAndPersistCredential: provider '${f.slug}' does not support token refresh`);let{clientId:g,clientSecret:m,refreshToken:n}=e;if(!n)throw Error(`refreshAndPersistCredential: credential '${b}' is missing refreshToken`);let o=f.tokenUrl;if("form"===f.tokenBodyType){let a=new URLSearchParams({grant_type:"refresh_token",refresh_token:n});"body"===f.tokenAuth&&(a.set("client_id",g),a.set("client_secret",m)),c={method:"POST",headers:"basic"===f.tokenAuth?{"Content-Type":"application/x-www-form-urlencoded",Authorization:`Basic ${Buffer.from(`${g}:${m}`).toString("base64")}`}:{"Content-Type":"application/x-www-form-urlencoded"},body:a.toString()}}else{let a={grant_type:"refresh_token",refresh_token:n};"body"===f.tokenAuth&&(a.client_id=g,a.client_secret=m),c={method:"POST",headers:"basic"===f.tokenAuth?{"Content-Type":"application/json",Authorization:`Basic ${Buffer.from(`${g}:${m}`).toString("base64")}`}:{"Content-Type":"application/json"},body:JSON.stringify(a)}}let p=await fetch(o,c);if(!p.ok){let a=await p.text().catch(()=>"");throw Error(`refreshAndPersistCredential: token endpoint returned ${p.status}: ${a}`)}let q=await p.json(),r="string"==typeof q.access_token?q.access_token:null;if(!r)throw Error("refreshAndPersistCredential: token endpoint response missing 'access_token'");let s="number"==typeof q.expires_in?q.expires_in:null,t=null!==s?new Date(Date.now()+1e3*s):null,u="string"==typeof q.refresh_token?q.refresh_token:null,v={...e,accessToken:r,expiresAt:t?t.toISOString():null,refreshToken:u??e.refreshToken},w=(0,j.w)(JSON.stringify(v));return await a.update(i.z).set({payload:w,updatedAt:new Date}).where((0,h.eq)(i.z.id,b)),{accessToken:r,expiresAt:t}}var p=c(54789),q=c(12788);async function r(a,b,c){let d;if(c.subAgentIds.length>0&&(await a.select({id:p.X6.id}).from(p.X6).where((0,h.Uo)((0,h.RV)(p.X6.id,c.subAgentIds),(0,h.eq)(p.X6.entityId,b)))).length!==c.subAgentIds.length)throw Error("sub_agents_not_found");try{let[e]=await a.insert(p.X6).values({entityId:b,slug:c.slug,name:c.name,personality:c.personality,model:c.model,llmKeyId:c.llmKeyId??null,role:c.role,orchestratorMode:c.orchestratorMode,avatarUrl:c.avatarUrl??null}).returning({id:p.X6.id});d=e}catch(c){let a=c instanceof Error?c.message:String(c),b=c instanceof Error&&c.cause instanceof Error?c.cause.message:"";if(a.includes("unique")||a.includes("23505")||b.includes("unique")||b.includes("23505"))return{error:"slug_taken"};throw c}if(!d)throw Error("Insert returned no row");if(c.subAgentIds.length>0&&await a.insert(p.Qj).values(c.subAgentIds.map(a=>({orchestratorId:d.id,subAgentId:a,entityId:b}))),"orchestrator"===c.role){let[c]=await a.select({rootAgentId:q.O.rootAgentId}).from(q.O).where((0,h.eq)(q.O.id,b)).limit(1);c?.rootAgentId?c.rootAgentId!==d.id&&await a.insert(p.Qj).values({orchestratorId:c.rootAgentId,subAgentId:d.id,entityId:b}):await a.update(q.O).set({rootAgentId:d.id,rootGrants:k.ap,updatedAt:new Date}).where((0,h.eq)(q.O.id,b))}return{id:d.id}}var s=c(82017);async function t(a,b,c){try{let[d]=await a.insert(s.eK).values({entityId:b,slug:c.slug,name:c.name,content:c.content,defaultContent:c.content,description:c.description??null,active:!0}).returning({id:s.eK.id});if(!d)throw Error("Insert returned no row");return{id:d.id}}catch(c){let a=c instanceof Error?c.message:String(c),b=c instanceof Error&&c.cause instanceof Error?c.cause.message:"";if(a.includes("unique")||a.includes("23505")||b.includes("unique")||b.includes("23505"))return{error:"slug_taken"};throw c}}async function u(a,b,c,d){let[e]=await a.select({id:s.eK.id}).from(s.eK).where((0,h.Uo)((0,h.eq)(s.eK.id,c.skillId),(0,h.or)((0,h.eq)(s.eK.entityId,b),d.length>0?(0,h.RV)(s.eK.slug,d):void 0)));if(!e)return{error:"skill_not_found"};let[f]=await a.select({id:p.X6.id}).from(p.X6).where((0,h.Uo)((0,h.eq)(p.X6.id,c.agentId),(0,h.eq)(p.X6.entityId,b)));if(!f)return{error:"agent_not_found"};let[g]=await a.select({id:s.$m.id}).from(s.$m).where((0,h.Uo)((0,h.eq)(s.$m.skillId,c.skillId),(0,h.eq)(s.$m.agentId,c.agentId)));return g?{error:"already_assigned"}:(await a.insert(s.$m).values({entityId:b,skillId:c.skillId,agentId:c.agentId}),{ok:!0})}var v=c(29123),w=c(11242)},95488:(a,b,c)=>{"use strict";c.d(b,{Iz:()=>l,Lf:()=>j,St:()=>g,XK:()=>m,a1:()=>h,oC:()=>e.oC,sj:()=>n});var d=c(90454),e=c(42112),f=c(75224);let g="nodalai_active_entity";async function h(a,b){let c=function(a){let b=a.headers.get("cookie");if(!b)return null;for(let a of b.split(";")){let b=a.indexOf("=");if(-1!==b&&a.slice(0,b).trim()===g)return decodeURIComponent(a.slice(b+1).trim())}return null}(b);if(!c||c===a.entityId)return a;let[e]=await j().select({id:d.V.id}).from(d.V).where((0,d.Uo)((0,d.eq)(d.V.userId,a.userId),(0,d.eq)(d.V.entityId,c)));return e?{...a,entityId:c}:a}let i=null;function j(){if(!i){let{db:a}=(0,d.UU)(f._.DATABASE_URL);i=a}return i}let k=null;function l(){if(k)return k;if("local-trust"===f._.AUTH_MODE)return k=new e.hb;if("local-auth"===f._.AUTH_MODE){if(!f._.AUTH_SECRET)throw Error("AUTH_SECRET must be set when AUTH_MODE=local-auth");return k=(0,e.Xi)({db:j(),baseURL:f._.NEXT_PUBLIC_APP_URL,secret:f._.AUTH_SECRET,googleClientId:f._.GOOGLE_CLIENT_ID,googleClientSecret:f._.GOOGLE_CLIENT_SECRET})}return k=new e.hb}function m(){let a=l();if(!(a instanceof e.Jj))throw Error("better-auth API is only available in local-auth mode");return a.auth}async function n(a){return h(await (0,e.rb)(a,l(),j()),a)}},98472:(a,b,c)=>{"use strict";c.d(b,{Jm:()=>j,Yc:()=>m,nK:()=>n,ph:()=>k,w:()=>l});var d=c(77598),e=c(73024),f=c(48161),g=c(76760);let h="aes-256-gcm",i=null;function j(a=(0,g.join)((0,f.homedir)(),".nodalai","secrets.key")){if(i)return i;if((0,e.existsSync)(a)){let b=(0,e.readFileSync)(a,"utf-8").trim(),c=Buffer.from(b,"base64");if(32!==c.length)throw Error(`secrets: master key at ${a} is malformed (expected 32 bytes, got ${c.length})`);return i=c,c}let b=(0,g.dirname)(a);(0,e.existsSync)(b)||(0,e.mkdirSync)(b,{recursive:!0});let c=(0,d.randomBytes)(32);(0,e.writeFileSync)(a,c.toString("base64"),{mode:384});try{(0,e.chmodSync)(a,384)}catch{}return i=c,c}function k(a){return a.startsWith("enc:v1:")}function l(a,b=j()){if(""===a)return"";let c=(0,d.randomBytes)(12),e=(0,d.createCipheriv)(h,b,c),f=Buffer.concat([e.update(a,"utf-8"),e.final()]),g=e.getAuthTag();return`enc:v1:${c.toString("base64")}:${g.toString("base64")}:${f.toString("base64")}`}function m(a,b=j()){if(""===a)return"";if(!k(a))throw Error("secrets: value is not encrypted (missing enc:v1: prefix)");let c=a.split(":");if(5!==c.length)throw Error("secrets: malformed ciphertext");let[,,e,f,g]=c;if(!e||!f||!g)throw Error("secrets: malformed ciphertext");let i=Buffer.from(e,"base64"),l=Buffer.from(f,"base64"),n=Buffer.from(g,"base64"),o=(0,d.createDecipheriv)(h,b,i);return o.setAuthTag(l),Buffer.concat([o.update(n),o.final()]).toString("utf-8")}function n(a){return a.length<=4?a:a.slice(-4)}},98935:(a,b,c)=>{"use strict";c.d(b,{t:()=>n});var d=c(18199),e=c(99768),f=c(49500),g=c(37607),h=c(42891),i=c(16471),j=c(66618),k=c(29123),l=c(12788),m=c(62637);let n=(0,d.cJ)("connectors",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").references(()=>l.O.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull(),slug:(0,f.Qq)("slug").notNull(),baseUrl:(0,f.Qq)("base_url"),apiKey:(0,f.Qq)("api_key"),active:(0,g.zM)("active").default(!0),authType:(0,f.Qq)("auth_type").notNull().default("api_key"),credentialId:(0,e.uR)("credential_id").references(()=>m.z.id,{onDelete:"set null"}),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,i.Pe)("idx_connectors_entity_id").on(a.entityId),(0,i.Pe)("idx_connectors_credential_id").on(a.credentialId),(0,j.z6)("connectors_auth_type_check",(0,k.ll)`${a.authType} IN ('api_key','oauth2','bearer','basic','none')`)])}};
|
|
1
|
+
exports.id=4574,exports.ids=[4574],exports.modules={12788:(a,b,c)=>{"use strict";c.d(b,{O:()=>n,V:()=>o});var d=c(85653),e=c(99768),f=c(49500),g=c(52019),h=c(42891),i=c(37607),j=c(16471),k=c(66618),l=c(29123),m=c(57119);let n=(0,d.cJ)("entities",{id:(0,e.uR)("id").primaryKey().defaultRandom(),userId:(0,e.uR)("user_id").notNull().references(()=>m.V.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull(),slug:(0,f.Qq)("slug").notNull().unique(),description:(0,f.Qq)("description"),icon:(0,f.Qq)("icon").default("\uD83C\uDFE2"),industry:(0,f.Qq)("industry"),goal:(0,f.Qq)("goal"),mcpToken:(0,e.uR)("mcp_token").defaultRandom(),rootAgentId:(0,e.uR)("root_agent_id"),rootGrants:(0,g.Fx)("root_grants").notNull().default((0,l.ll)`'{}'::jsonb`),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).defaultNow(),lastCuratorRunAt:(0,h.vE)("last_curator_run_at",{withTimezone:!0}),reflectionEnabled:(0,i.zM)("reflection_enabled").notNull().default(!1),skillAssignmentMode:(0,f.Qq)("skill_assignment_mode").notNull().default("approval").$type(),lanCommandYolo:(0,i.zM)("lan_command_yolo").notNull().default(!1)},a=>[(0,j.GL)("entities_mcp_token_idx").on(a.mcpToken),(0,j.Pe)("idx_entities_user_id").on(a.userId),(0,j.Pe)("idx_entities_root_agent_id").on(a.rootAgentId)]),o=(0,d.cJ)("entity_members",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").notNull().references(()=>n.id,{onDelete:"cascade"}),userId:(0,e.uR)("user_id").notNull().references(()=>m.V.id,{onDelete:"cascade"}),role:(0,f.Qq)("role").default("owner"),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).defaultNow()},a=>[(0,j.Pe)("idx_entity_members_entity_id").on(a.entityId),(0,j.Pe)("idx_entity_members_user_id").on(a.userId),(0,j.Pe)("idx_entity_members_user").on(a.userId,a.entityId),(0,k.z6)("entity_members_role_check",(0,l.ll)`${a.role} IN ('owner', 'admin', 'member', 'viewer')`)])},18975:(a,b,c)=>{"use strict";c.r(b),c.d(b,{AGENT_ROLES:()=>d.s$,APPROVAL_RULE_ACTIONS:()=>d.vV,APPROVAL_STATUSES:()=>d.NY,CONNECTOR_AUTH_TYPES:()=>d.p6,ENTITY_INDUSTRIES:()=>d.dO,ENTITY_MEMBER_ROLES:()=>d.Li,JOB_CHANNELS:()=>d.vH,JOB_STATUSES:()=>d.nE,MCP_TRANSPORTS:()=>d.ip,MEMORY_CATEGORIES:()=>d.BJ,MEMORY_LAYERS:()=>d.dg,MEMORY_SOURCES:()=>d.rc,OPERATION_RISK_LEVELS:()=>d.Uw,ORCHESTRATOR_MODES:()=>d.GN,PLUGIN_HOOKS:()=>d.bt,PLUGIN_TYPES:()=>d.Y7,SCHEDULE_LAST_STATUSES:()=>d.Ur,SCHEDULE_TYPES:()=>d.GB,TASK_PRIORITIES:()=>d.PN,TASK_STATUSES:()=>d.Hi,accounts:()=>O,agentAssignments:()=>g.Qj,agentBudgets:()=>g.I$,agentConnectorAssignments:()=>R,agentJobs:()=>r,agentMcpServers:()=>I,agentMemory:()=>C,agentPlugins:()=>L,agentSchedules:()=>F,agentSkillAssignments:()=>E.$m,agentSkills:()=>E.eK,agentTasks:()=>t,agentWorkspaces:()=>S,agents:()=>g.X6,approvalRequests:()=>x,approvalRules:()=>y,chatMessages:()=>U,configuratorSessions:()=>K,connectors:()=>v.t,conversations:()=>T,credentials:()=>u.z,entities:()=>f.O,entityLlmKeys:()=>G.h,entityMembers:()=>f.V,mcpConnections:()=>J,mcpServers:()=>H,rateLimits:()=>M,sessions:()=>N,skillConnectors:()=>E.IS,skillVersions:()=>E.bq,toolCalls:()=>w,userProfiles:()=>e.K,users:()=>e.V,verifications:()=>P,webhookTriggers:()=>D});var d=c(49692),e=c(57119),f=c(12788),g=c(54789),h=c(85653),i=c(99768),j=c(49500),k=c(52019),l=c(91605),m=c(30983),n=c(42891),o=c(16471),p=c(66618),q=c(29123);let r=(0,h.cJ)("agent_jobs",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),status:(0,j.Qq)("status").default("pending"),channel:(0,j.Qq)("channel").notNull(),task:(0,j.Qq)("task").notNull(),originalTask:(0,j.Qq)("original_task"),chatId:(0,j.Qq)("chat_id"),systemPrompt:(0,j.Qq)("system_prompt"),messages:(0,k.Fx)("messages").default((0,q.ll)`'[]'::jsonb`),toolsUsed:(0,j.Qq)("tools_used").array().default((0,q.ll)`'{}'::text[]`),turn:(0,l.nd)("turn").default(0),result:(0,j.Qq)("result"),error:(0,j.Qq)("error"),chainCount:(0,l.nd)("chain_count").default(0),requestId:(0,j.Qq)("request_id"),parentJobId:(0,i.uR)("parent_job_id"),parentRequestId:(0,j.Qq)("parent_request_id"),totalDurationMs:(0,l.nd)("total_duration_ms").default(0),inputTokens:(0,l.nd)("input_tokens").default(0),outputTokens:(0,l.nd)("output_tokens").default(0),effectiveInputTokens:(0,l.nd)("effective_input_tokens").default(0),totalCostUsd:(0,m.x)("total_cost_usd").default(0),servedProvider:(0,j.Qq)("served_provider"),delegationDepth:(0,l.nd)("delegation_depth").default(0),lastFailedDelegationSlug:(0,j.Qq)("last_failed_delegation_slug"),pendingDelegation:(0,k.Fx)("pending_delegation"),completedAt:(0,n.vE)("completed_at",{withTimezone:!0}),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.Pe)("idx_agent_jobs_entity_id").on(a.entityId),(0,o.Pe)("idx_agent_jobs_entity_created").on(a.entityId,(0,q.ll)`${a.createdAt} DESC`),(0,o.Pe)("idx_agent_jobs_entity_status_created").on(a.entityId,a.status,(0,q.ll)`${a.createdAt} DESC`),(0,o.Pe)("idx_agent_jobs_parent_job_id").on(a.parentJobId),(0,o.Pe)("idx_jobs_parent").on(a.parentJobId),(0,o.Pe)("idx_jobs_status").on(a.status,a.createdAt),(0,p.z6)("agent_jobs_status_check",(0,q.ll)`${a.status} IN ('pending','processing','completed','failed','awaiting_approval','awaiting_delegation','cancelled')`),(0,p.z6)("agent_jobs_channel_check",(0,q.ll)`${a.channel} IN ('telegram','api','whatsapp','internal','cron','task-board','slack','discord','dashboard')`)]);var s=c(49152);let t=(0,h.cJ)("agent_tasks",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),orchestratorId:(0,i.uR)("orchestrator_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),title:(0,j.Qq)("title").notNull(),description:(0,j.Qq)("description"),status:(0,j.Qq)("status").notNull().default("todo"),priority:(0,j.Qq)("priority").notNull().default("medium"),jobId:(0,i.uR)("job_id").references(()=>r.id,{onDelete:"set null"}),result:(0,j.Qq)("result"),createdByAgentId:(0,i.uR)("created_by_agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),assignedAgentId:(0,i.uR)("assigned_agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),inputTokens:(0,l.nd)("input_tokens").default(0),outputTokens:(0,l.nd)("output_tokens").default(0),costUsd:(0,s.sH)("cost_usd",{precision:10,scale:6}).default("0"),dependsOn:(0,i.uR)("depends_on").array().default((0,q.ll)`'{}'::uuid[]`),context:(0,k.Fx)("context").default((0,q.ll)`'{}'::jsonb`),rootJobId:(0,i.uR)("root_job_id"),lockedAt:(0,n.vE)("locked_at",{withTimezone:!0}),lockedBy:(0,j.Qq)("locked_by"),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,o.Pe)("idx_agent_tasks_entity").on(a.entityId),(0,o.Pe)("idx_agent_tasks_entity_status_created").on(a.entityId,a.status,(0,q.ll)`${a.createdAt} DESC`),(0,o.Pe)("idx_agent_tasks_orchestrator_status").on(a.orchestratorId,a.status),(0,o.Pe)("idx_agent_tasks_status").on(a.status),(0,o.Pe)("idx_agent_tasks_assigned").on(a.assignedAgentId),(0,p.z6)("agent_tasks_status_check",(0,q.ll)`${a.status} IN ('todo','in_progress','done','cancelled','blocked')`),(0,p.z6)("agent_tasks_priority_check",(0,q.ll)`${a.priority} IN ('low','medium','high')`),(0,p.z6)("agent_tasks_title_check",(0,q.ll)`char_length(${a.title}) <= 200`),(0,p.z6)("agent_tasks_description_check",(0,q.ll)`${a.description} IS NULL OR char_length(${a.description}) <= 2000`)]);var u=c(62637),v=c(98935);let w=(0,h.cJ)("tool_calls",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),jobId:(0,i.uR)("job_id").references(()=>r.id,{onDelete:"cascade"}),toolName:(0,j.Qq)("tool_name").notNull(),toolInput:(0,k.Fx)("tool_input"),toolOutput:(0,j.Qq)("tool_output"),durationMs:(0,l.nd)("duration_ms"),turn:(0,l.nd)("turn"),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.Pe)("idx_tool_calls_entity_id").on(a.entityId),(0,o.Pe)("idx_tool_calls_job").on(a.jobId),(0,o.Pe)("idx_tool_calls_job_created").on(a.jobId,(0,q.ll)`${a.createdAt} DESC`),(0,o.Pe)("idx_tool_calls_recent").on((0,q.ll)`${a.createdAt} DESC`)]),x=(0,h.cJ)("approval_requests",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),jobId:(0,i.uR)("job_id").notNull().references(()=>r.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),toolName:(0,j.Qq)("tool_name").notNull(),toolInput:(0,k.Fx)("tool_input").notNull(),status:(0,j.Qq)("status").default("pending"),requestedAt:(0,n.vE)("requested_at",{withTimezone:!0}).defaultNow(),resolvedAt:(0,n.vE)("resolved_at",{withTimezone:!0}),resolvedBy:(0,j.Qq)("resolved_by"),expiresAt:(0,n.vE)("expires_at",{withTimezone:!0}).default((0,q.ll)`now() + interval '1 hour'`),notes:(0,j.Qq)("notes"),executedAt:(0,n.vE)("executed_at",{withTimezone:!0})},a=>[(0,o.Pe)("idx_approval_requests_entity_id").on(a.entityId),(0,o.Pe)("idx_approval_status").on(a.status,a.requestedAt),(0,o.Pe)("idx_approval_requests_agent_id").on(a.agentId),(0,o.Pe)("idx_approval_requests_job_id").on(a.jobId),(0,p.z6)("approval_requests_status_check",(0,q.ll)`${a.status} IN ('pending','approved','rejected','expired')`)]),y=(0,h.cJ)("approval_rules",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),toolName:(0,j.Qq)("tool_name").notNull(),action:(0,j.Qq)("action").notNull(),conditionJson:(0,k.Fx)("condition_json").default((0,q.ll)`'{}'::jsonb`),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.Pe)("idx_approval_rules_entity_id").on(a.entityId),(0,p.z6)("approval_rules_action_check",(0,q.ll)`${a.action} IN ('auto_approve','require_approval','block')`)]);var z=c(64264),A=c(37607);let B=(0,z._z)({dataType(a){let b=a?.dimensions??1536;return`vector(${b})`},fromDriver:a=>JSON.parse(a),toDriver:a=>`[${a.join(",")}]`}),C=(0,h.cJ)("agent_memory",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),fact:(0,j.Qq)("fact").notNull(),category:(0,j.Qq)("category").default("context"),importance:(0,l.nd)("importance").default(3),source:(0,j.Qq)("source").default("agent"),skillTags:(0,j.Qq)("skill_tags").array().default((0,q.ll)`'{}'::text[]`),memoryLayer:(0,j.Qq)("memory_layer"),embedding:B("embedding",{dimensions:1536}),validFrom:(0,n.vE)("valid_from",{withTimezone:!0}).defaultNow(),validTo:(0,n.vE)("valid_to",{withTimezone:!0}),factHash:(0,j.Qq)("fact_hash"),archived:(0,A.zM)("archived").default(!1),lastAccessedAt:(0,n.vE)("last_accessed_at",{withTimezone:!0}).defaultNow(),accessCount:(0,l.nd)("access_count").default(0),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.Pe)("idx_agent_memory_entity_id").on(a.entityId),(0,o.Pe)("idx_agent_memory_entity_active").on(a.entityId,a.archived,a.validTo),(0,o.Pe)("idx_agent_memory_archived").on(a.archived),(0,o.Pe)("idx_agent_memory_last_accessed").on(a.lastAccessedAt),(0,o.Pe)("idx_agent_memory_layer").on(a.memoryLayer),(0,o.Pe)("idx_agent_memory_fact_hash").on(a.factHash),(0,o.Pe)("idx_memory_category").on(a.category,(0,q.ll)`${a.importance} DESC`),(0,p.z6)("agent_memory_category_check",(0,q.ll)`${a.category} IN ('preference','context','outcome','learned_rule')`),(0,p.z6)("agent_memory_importance_check",(0,q.ll)`${a.importance} >= 1 AND ${a.importance} <= 5`),(0,p.z6)("agent_memory_source_check",(0,q.ll)`${a.source} IN ('agent','reflection','manual')`)]),D=(0,h.cJ)("webhook_triggers",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),name:(0,j.Qq)("name").notNull(),slug:(0,j.Qq)("slug").notNull().unique(),taskTemplate:(0,j.Qq)("task_template").notNull(),active:(0,A.zM)("active").default(!0),secret:(0,j.Qq)("secret"),lastTriggeredAt:(0,n.vE)("last_triggered_at",{withTimezone:!0}),triggerCount:(0,l.nd)("trigger_count").default(0),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.Pe)("idx_webhook_triggers_entity_id").on(a.entityId)]);var E=c(82017);let F=(0,h.cJ)("agent_schedules",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),type:(0,j.Qq)("type").notNull().default("cron"),name:(0,j.Qq)("name").notNull(),cronExpr:(0,j.Qq)("cron_expr").notNull(),task:(0,j.Qq)("task"),objectives:(0,j.Qq)("objectives"),active:(0,A.zM)("active").default(!0),lastRun:(0,n.vE)("last_run",{withTimezone:!0}),nextRun:(0,n.vE)("next_run",{withTimezone:!0}),lastStatus:(0,j.Qq)("last_status"),chatId:(0,j.Qq)("chat_id"),notifyOnSuccess:(0,A.zM)("notify_on_success").notNull().default(!1),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.Pe)("idx_agent_schedules_entity_id").on(a.entityId),(0,o.Pe)("idx_schedules_active").on(a.active,a.nextRun),(0,p.z6)("agent_schedules_type_check",(0,q.ll)`${a.type} IN ('cron','heartbeat')`),(0,p.z6)("agent_schedules_last_status_check",(0,q.ll)`${a.lastStatus} IN ('success','failed','no_action') OR ${a.lastStatus} IS NULL`)]);var G=c(49959);let H=(0,h.cJ)("mcp_servers",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),name:(0,j.Qq)("name").notNull(),slug:(0,j.Qq)("slug").notNull(),transport:(0,j.Qq)("transport").notNull(),url:(0,j.Qq)("url"),command:(0,j.Qq)("command"),args:(0,j.Qq)("args").array().default((0,q.ll)`'{}'::text[]`),envVars:(0,k.Fx)("env_vars").default((0,q.ll)`'{}'::jsonb`),apiKey:(0,j.Qq)("api_key"),apiKeyLast4:(0,j.Qq)("api_key_last4"),authScheme:(0,j.Qq)("auth_scheme"),authParamName:(0,j.Qq)("auth_param_name"),active:(0,A.zM)("active").default(!0),availableTools:(0,k.Fx)("available_tools"),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,p.z6)("mcp_servers_transport_check",(0,q.ll)`${a.transport} IN ('http','stdio')`),(0,p.z6)("mcp_servers_auth_scheme_check",(0,q.ll)`${a.authScheme} IN ('header','query','bearer') OR ${a.authScheme} IS NULL`)]),I=(0,h.cJ)("agent_mcp_servers",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),mcpServerId:(0,i.uR)("mcp_server_id").notNull().references(()=>H.id,{onDelete:"cascade"}),enabledTools:(0,k.Fx)("enabled_tools"),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,o.Pe)("idx_agent_mcp_servers_agent").on(a.agentId),(0,o.Pe)("idx_agent_mcp_servers_entity").on(a.entityId),(0,o.GL)("agent_mcp_servers_agent_server_unique").on(a.agentId,a.mcpServerId)]),J=(0,h.cJ)("mcp_connections",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),slug:(0,j.Qq)("slug").notNull(),active:(0,A.zM)("active").notNull().default(!0),toolConfig:(0,k.Fx)("tool_config").notNull().default((0,q.ll)`'{}'::jsonb`),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,o.Pe)("idx_mcp_connections_entity").on(a.entityId)]),K=(0,h.cJ)("configurator_sessions",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").references(()=>g.X6.id,{onDelete:"cascade"}),messages:(0,k.Fx)("messages").notNull().default((0,q.ll)`'[]'::jsonb`),status:(0,j.Qq)("status").notNull().default("active"),turnCount:(0,l.nd)("turn_count").notNull().default(0),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,o.Pe)("idx_configurator_sessions_entity").on(a.entityId),(0,o.Pe)("idx_configurator_sessions_agent").on(a.agentId)]),L=(0,h.cJ)("agent_plugins",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),name:(0,j.Qq)("name").notNull(),slug:(0,j.Qq)("slug").notNull(),description:(0,j.Qq)("description"),pluginType:(0,j.Qq)("plugin_type").notNull(),config:(0,k.Fx)("config").default((0,q.ll)`'{}'::jsonb`),active:(0,A.zM)("active").default(!0),hook:(0,j.Qq)("hook").notNull(),webhookUrl:(0,j.Qq)("webhook_url"),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,p.z6)("agent_plugins_plugin_type_check",(0,q.ll)`${a.pluginType} IN ('webhook','transform','schedule')`),(0,p.z6)("agent_plugins_hook_check",(0,q.ll)`${a.hook} IN ('pre_task','post_task','pre_tool','post_tool','on_memory_save')`)]),M=(0,h.cJ)("rate_limits",{key:(0,j.Qq)("key").primaryKey(),count:(0,l.nd)("count").default(1),windowStart:(0,n.vE)("window_start",{withTimezone:!0}).defaultNow()}),N=(0,h.cJ)("sessions",{id:(0,j.Qq)("id").primaryKey(),userId:(0,i.uR)("user_id").notNull().references(()=>e.V.id,{onDelete:"cascade"}),expiresAt:(0,n.vE)("expires_at",{withTimezone:!0}).notNull(),token:(0,j.Qq)("token").notNull().unique(),ipAddress:(0,j.Qq)("ip_address"),userAgent:(0,j.Qq)("user_agent"),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()}),O=(0,h.cJ)("accounts",{id:(0,j.Qq)("id").primaryKey(),userId:(0,i.uR)("user_id").notNull().references(()=>e.V.id,{onDelete:"cascade"}),providerId:(0,j.Qq)("provider_id").notNull(),accountId:(0,j.Qq)("account_id").notNull(),accessToken:(0,j.Qq)("access_token"),refreshToken:(0,j.Qq)("refresh_token"),idToken:(0,j.Qq)("id_token"),accessTokenExpiresAt:(0,n.vE)("access_token_expires_at",{withTimezone:!0}),refreshTokenExpiresAt:(0,n.vE)("refresh_token_expires_at",{withTimezone:!0}),scope:(0,j.Qq)("scope"),password:(0,j.Qq)("password"),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()}),P=(0,h.cJ)("verifications",{id:(0,j.Qq)("id").primaryKey(),identifier:(0,j.Qq)("identifier").notNull(),value:(0,j.Qq)("value").notNull(),expiresAt:(0,n.vE)("expires_at",{withTimezone:!0}).notNull(),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()});var Q=c(68478);let R=(0,h.cJ)("agent_connector_assignments",{id:(0,i.uR)("id").primaryKey().defaultRandom(),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),connectorId:(0,i.uR)("connector_id").notNull().references(()=>v.t.id,{onDelete:"cascade"}),entityId:(0,i.uR)("entity_id").notNull().references(()=>f.O.id,{onDelete:"cascade"}),enabledOperations:(0,j.Qq)("enabled_operations").array(),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.Pe)("idx_agent_connector_assignments_agent_id").on(a.agentId),(0,o.Pe)("idx_agent_connector_assignments_connector_id").on(a.connectorId),(0,Q.Am)("agent_connector_unique").on(a.agentId,a.connectorId)]),S=(0,h.cJ)("agent_workspaces",{id:(0,i.uR)("id").primaryKey().defaultRandom(),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),label:(0,j.Qq)("label").notNull(),path:(0,j.Qq)("path").notNull(),position:(0,l.nd)("position").default(0).notNull(),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.GL)("agent_workspaces_agent_label_unique").on(a.agentId,a.label),(0,o.Pe)("idx_agent_workspaces_agent_id").on(a.agentId)]),T=(0,h.cJ)("conversations",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),title:(0,j.Qq)("title").notNull().default(""),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,n.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.Pe)("idx_conversations_entity_agent").on(a.entityId,a.agentId,a.updatedAt)]),U=(0,h.cJ)("chat_messages",{id:(0,i.uR)("id").primaryKey().defaultRandom(),entityId:(0,i.uR)("entity_id").references(()=>f.O.id,{onDelete:"cascade"}),agentId:(0,i.uR)("agent_id").notNull().references(()=>g.X6.id,{onDelete:"cascade"}),conversationId:(0,i.uR)("conversation_id").references(()=>T.id,{onDelete:"cascade"}),role:(0,j.Qq)("role").notNull(),content:(0,j.Qq)("content").notNull(),jobId:(0,i.uR)("job_id").references(()=>r.id,{onDelete:"set null"}),createdAt:(0,n.vE)("created_at",{withTimezone:!0}).defaultNow()},a=>[(0,o.Pe)("idx_chat_messages_conversation").on(a.conversationId,a.createdAt),(0,p.z6)("chat_messages_role_check",(0,q.ll)`${a.role} IN ('user','assistant')`)])},42112:(a,b,c)=>{"use strict";c.d(b,{lR:()=>d,Jj:()=>l,hb:()=>h,vB:()=>e,Xi:()=>m,oC:()=>n,rb:()=>o,OH:()=>p.O});class d extends Error{constructor(){super("AUTH_REQUIRED"),this.code="AUTH_REQUIRED",this.name="AuthError"}}class e extends Error{constructor(){super("NO_ENTITY"),this.code="NO_ENTITY",this.name="NoEntityError"}}var f=c(48849);let g={userId:"00000000-0000-0000-0000-000000000001",entityId:"00000000-0000-0000-0000-000000000002"};class h{getSession(a){return Promise.resolve(g)}}var i=c(35345),j=c(29045);let k=[/^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,/^10\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,/^192\.168\.\d{1,3}\.\d{1,3}$/,/^172\.(1[6-9]|2\d|3[01])\.\d{1,3}\.\d{1,3}$/];class l{#a;#b;constructor(a,b){this.#a=a,this.#b=b}get auth(){return this.#a}async getSession(a){let b,c=await this.#a.api.getSession({headers:a.headers}).catch(()=>null);if(!c?.session||!c?.user)return null;let d=c.user.id,e=await this.#b.select({entityId:f.V.entityId}).from(f.V).where((0,f.eq)(f.V.userId,d));if(e.length>0&&e[0])b=String(e[0].entityId);else{b=crypto.randomUUID();let a=`personal-${b.slice(0,8)}`;await this.#b.insert(f.O5).values({id:b,userId:d,name:"Personal",slug:a,icon:"\uD83C\uDFE0"}),await this.#b.insert(f.V).values({entityId:b,userId:d,role:"owner"})}return{userId:d,entityId:b}}async handleAuthRequest(a){return this.#a.handler(a).catch(()=>null)}}function m(a){let{db:b,baseURL:c,secret:d,googleClientId:e,googleClientSecret:g}=a,h={};e&&g&&(h.google={clientId:e,clientSecret:g});let m={baseURL:c,secret:d,trustedOrigins:a=>{let b=[c],d=a?.headers.get("origin")??null;return d&&function(a){let b;if(!a)return!1;try{b=new URL(a)}catch{return!1}if("http:"!==b.protocol&&"https:"!==b.protocol)return!1;let c=b.hostname.toLowerCase();return"localhost"===c||"::1"===c||"[::1]"===c||k.some(a=>a.test(c))}(d)&&b.push(d),b},database:(0,j.y)(b,{provider:"pg",camelCase:!0,schema:{users:f.VV,sessions:f.Mf,accounts:f.vd,verifications:f.Jt}}),user:{modelName:"users",fields:{name:"name",email:"email",emailVerified:"emailVerified",image:"image",createdAt:"createdAt",updatedAt:"updatedAt"}},session:{modelName:"sessions",fields:{userId:"userId",expiresAt:"expiresAt",token:"token",ipAddress:"ipAddress",userAgent:"userAgent",createdAt:"createdAt",updatedAt:"updatedAt"}},account:{modelName:"accounts",fields:{userId:"userId",providerId:"providerId",accountId:"accountId",accessToken:"accessToken",refreshToken:"refreshToken",idToken:"idToken",accessTokenExpiresAt:"accessTokenExpiresAt",refreshTokenExpiresAt:"refreshTokenExpiresAt",scope:"scope",password:"password",createdAt:"createdAt",updatedAt:"updatedAt"}},verification:{modelName:"verifications",fields:{identifier:"identifier",value:"value",expiresAt:"expiresAt",createdAt:"createdAt",updatedAt:"updatedAt"}},emailAndPassword:{enabled:!0},socialProviders:h,advanced:{database:{generateId:()=>crypto.randomUUID()}},databaseHooks:{user:{create:{after:async a=>{let c=crypto.randomUUID(),d=`personal-${c.slice(0,8)}`;await b.insert(f.O5).values({id:c,userId:a.id,name:"Personal",slug:d,icon:"\uD83C\uDFE0"}),await b.insert(f.V).values({entityId:c,userId:a.id,role:"owner"})}}}}};return new l((0,i.l)(m),b)}async function n(a,b){let c=await b.getSession(a);if(!c)throw new d;return c}async function o(a,b,d){let g=await n(a,b),{entityMembers:h}=await Promise.resolve().then(c.bind(c,18975)),i=await d.select({entityId:h.entityId}).from(h).where((0,f.eq)(h.userId,g.userId));if(0===i.length)throw new e;let j=""!==g.entityId?g.entityId:i[0]?.entityId??"";if(!j)throw new e;return{userId:g.userId,entityId:j}}var p=c(87059)},48849:(a,b,c)=>{"use strict";c.d(b,{vd:()=>f.accounts,Qj:()=>f.agentAssignments,XT:()=>f.agentConnectorAssignments,ME:()=>f.agentJobs,oS:()=>f.agentMcpServers,RK:()=>f.agentMemory,uQ:()=>f.agentSchedules,$m:()=>f.agentSkillAssignments,eK:()=>f.agentSkills,Kq:()=>f.agentWorkspaces,X6:()=>f.agents,Uo:()=>h.Uo,MZ:()=>f.approvalRequests,bN:()=>f.approvalRules,HA:()=>v,ps:()=>u,p$:()=>f.chatMessages,tK:()=>f.connectors,NP:()=>f.conversations,S$:()=>r,UU:()=>g,qz:()=>t,z3:()=>f.credentials,G0:()=>m,i8:()=>x.i,O5:()=>f.entities,hG:()=>f.entityLlmKeys,V:()=>f.entityMembers,eq:()=>h.eq,Se:()=>n,RV:()=>h.RV,h_:()=>f.mcpServers,KL:()=>h.KL,or:()=>h.or,Ic:()=>o,Mf:()=>f.sessions,ll:()=>w.ll,Ky:()=>f.toolCalls,VV:()=>f.users,Jt:()=>f.verifications});var d=c(57562),e=c(96583),f=c(18975);function g(a,b={}){let c=(0,d.A)(a,{max:b.max??10,connect_timeout:10});return{db:(0,e.f)(c,{schema:f}),close:()=>c.end()}}var h=c(97852),i=c(62637),j=c(98472),k=c(49692);function l(a){return JSON.parse((0,j.ph)(a)?(0,j.Yc)(a):a)}async function m(a,b){let[c]=await a.select().from(i.z).where((0,h.eq)(i.z.id,b));return c?{id:c.id,ownerUserId:c.ownerUserId,name:c.name,type:c.type,payload:l(c.payload)}:null}async function n(a,b){let[c]=await a.select().from(i.z).where((0,h.eq)(i.z.id,b));if(!c)return null;let d=l(c.payload),e=c.type,f=d.expiresAt?new Date(d.expiresAt):null;if(null!==f&&f.getTime()-Date.now()<6e4){let c=(0,k.R3)(e);if(c?.supportsRefresh&&d.refreshToken)try{await o(a,b);let[c]=await a.select().from(i.z).where((0,h.eq)(i.z.id,b));c&&(d=l(c.payload))}catch(b){let a=b instanceof Error?b.message:String(b);console.warn(`[getDecryptedCredentialById] auto-refresh failed: ${a}`)}}return{id:c.id,ownerUserId:c.ownerUserId,name:c.name,type:e,payload:d}}async function o(a,b){let c,[d]=await a.select().from(i.z).where((0,h.eq)(i.z.id,b));if(!d)throw Error(`refreshAndPersistCredential: credential '${b}' not found`);let e=l(d.payload),f=(0,k.R3)(d.type);if(!f)throw Error(`refreshAndPersistCredential: no provider for credential type '${d.type}'`);if(!f.supportsRefresh)throw Error(`refreshAndPersistCredential: provider '${f.slug}' does not support token refresh`);let{clientId:g,clientSecret:m,refreshToken:n}=e;if(!n)throw Error(`refreshAndPersistCredential: credential '${b}' is missing refreshToken`);let o=f.tokenUrl;if("form"===f.tokenBodyType){let a=new URLSearchParams({grant_type:"refresh_token",refresh_token:n});"body"===f.tokenAuth&&(a.set("client_id",g),a.set("client_secret",m)),c={method:"POST",headers:"basic"===f.tokenAuth?{"Content-Type":"application/x-www-form-urlencoded",Authorization:`Basic ${Buffer.from(`${g}:${m}`).toString("base64")}`}:{"Content-Type":"application/x-www-form-urlencoded"},body:a.toString()}}else{let a={grant_type:"refresh_token",refresh_token:n};"body"===f.tokenAuth&&(a.client_id=g,a.client_secret=m),c={method:"POST",headers:"basic"===f.tokenAuth?{"Content-Type":"application/json",Authorization:`Basic ${Buffer.from(`${g}:${m}`).toString("base64")}`}:{"Content-Type":"application/json"},body:JSON.stringify(a)}}let p=await fetch(o,c);if(!p.ok){let a=await p.text().catch(()=>"");throw Error(`refreshAndPersistCredential: token endpoint returned ${p.status}: ${a}`)}let q=await p.json(),r="string"==typeof q.access_token?q.access_token:null;if(!r)throw Error("refreshAndPersistCredential: token endpoint response missing 'access_token'");let s="number"==typeof q.expires_in?q.expires_in:null,t=null!==s?new Date(Date.now()+1e3*s):null,u="string"==typeof q.refresh_token?q.refresh_token:null,v={...e,accessToken:r,expiresAt:t?t.toISOString():null,refreshToken:u??e.refreshToken},w=(0,j.w)(JSON.stringify(v));return await a.update(i.z).set({payload:w,updatedAt:new Date}).where((0,h.eq)(i.z.id,b)),{accessToken:r,expiresAt:t}}var p=c(54789),q=c(12788);async function r(a,b,c){let d;if(c.subAgentIds.length>0&&(await a.select({id:p.X6.id}).from(p.X6).where((0,h.Uo)((0,h.RV)(p.X6.id,c.subAgentIds),(0,h.eq)(p.X6.entityId,b)))).length!==c.subAgentIds.length)throw Error("sub_agents_not_found");try{let[e]=await a.insert(p.X6).values({entityId:b,slug:c.slug,name:c.name,personality:c.personality,model:c.model,llmKeyId:c.llmKeyId??null,role:c.role,orchestratorMode:c.orchestratorMode,avatarUrl:c.avatarUrl??null}).returning({id:p.X6.id});d=e}catch(c){let a=c instanceof Error?c.message:String(c),b=c instanceof Error&&c.cause instanceof Error?c.cause.message:"";if(a.includes("unique")||a.includes("23505")||b.includes("unique")||b.includes("23505"))return{error:"slug_taken"};throw c}if(!d)throw Error("Insert returned no row");if(c.subAgentIds.length>0&&await a.insert(p.Qj).values(c.subAgentIds.map(a=>({orchestratorId:d.id,subAgentId:a,entityId:b}))),"orchestrator"===c.role){let[c]=await a.select({rootAgentId:q.O.rootAgentId}).from(q.O).where((0,h.eq)(q.O.id,b)).limit(1);c?.rootAgentId?c.rootAgentId!==d.id&&await a.insert(p.Qj).values({orchestratorId:c.rootAgentId,subAgentId:d.id,entityId:b}):await a.update(q.O).set({rootAgentId:d.id,rootGrants:k.ap,updatedAt:new Date}).where((0,h.eq)(q.O.id,b))}return c.assignToOrchestratorId&&c.assignToOrchestratorId!==d.id&&0===(await a.select({id:p.Qj.id}).from(p.Qj).where((0,h.Uo)((0,h.eq)(p.Qj.orchestratorId,c.assignToOrchestratorId),(0,h.eq)(p.Qj.subAgentId,d.id))).limit(1)).length&&await a.insert(p.Qj).values({orchestratorId:c.assignToOrchestratorId,subAgentId:d.id,entityId:b}),{id:d.id}}var s=c(82017);async function t(a,b,c){try{let[d]=await a.insert(s.eK).values({entityId:b,slug:c.slug,name:c.name,content:c.content,defaultContent:c.content,description:c.description??null,active:!0,...void 0!==c.createdBy?{createdBy:c.createdBy}:{},...void 0!==c.createdByAgentId&&null!==c.createdByAgentId?{createdByAgentId:c.createdByAgentId}:{}}).returning({id:s.eK.id});if(!d)throw Error("Insert returned no row");return{id:d.id}}catch(c){let a=c instanceof Error?c.message:String(c),b=c instanceof Error&&c.cause instanceof Error?c.cause.message:"";if(a.includes("unique")||a.includes("23505")||b.includes("unique")||b.includes("23505"))return{error:"slug_taken"};throw c}}async function u(a,b,c,d){let[e]=await a.select({id:s.eK.id}).from(s.eK).where((0,h.Uo)((0,h.eq)(s.eK.id,c.skillId),(0,h.or)((0,h.eq)(s.eK.entityId,b),d.length>0?(0,h.RV)(s.eK.slug,d):void 0)));if(!e)return{error:"skill_not_found"};let[f]=await a.select({id:p.X6.id}).from(p.X6).where((0,h.Uo)((0,h.eq)(p.X6.id,c.agentId),(0,h.eq)(p.X6.entityId,b)));if(!f)return{error:"agent_not_found"};let[g]=await a.select({id:s.$m.id}).from(s.$m).where((0,h.Uo)((0,h.eq)(s.$m.skillId,c.skillId),(0,h.eq)(s.$m.agentId,c.agentId)));return g?{error:"already_assigned"}:(await a.insert(s.$m).values({entityId:b,skillId:c.skillId,agentId:c.agentId}),{ok:!0})}async function v(a,b,c){let[d]=await a.select({id:s.eK.id,createdBy:s.eK.createdBy}).from(s.eK).where((0,h.Uo)((0,h.eq)(s.eK.id,c),(0,h.eq)(s.eK.entityId,b))).limit(1);return d?"agent"!==d.createdBy?{error:"not_agent_skill"}:(await a.update(s.eK).set({state:"archived",archivedAt:new Date,updatedAt:new Date}).where((0,h.Uo)((0,h.eq)(s.eK.id,c),(0,h.eq)(s.eK.entityId,b))),{ok:!0}):{error:"not_found"}}var w=c(29123),x=c(11242)},49692:(a,b,c)=>{"use strict";c.d(b,{s$:()=>m,vV:()=>u,NY:()=>s,p6:()=>q,YT:()=>ak,zw:()=>ae,dO:()=>I,Li:()=>G,ap:()=>af,vH:()=>e,nE:()=>g,ip:()=>O,BJ:()=>w,dg:()=>A,rc:()=>y,yO:()=>ah,Uw:()=>K,GN:()=>o,bt:()=>N,Y7:()=>M,Ur:()=>E,GB:()=>C,PN:()=>k,Hi:()=>i,aT:()=>ai,ZH:()=>aa,R3:()=>ab,DI:()=>aj});var d=c(61989);let e=["telegram","api","whatsapp","internal","cron","task-board","slack","discord","dashboard"],f=d.k5(e),g=["pending","processing","completed","failed","awaiting_approval","awaiting_delegation","cancelled"],h=d.k5(g),i=["todo","in_progress","done","cancelled","blocked"],j=d.k5(i),k=["low","medium","high"],l=d.k5(k),m=["agent","orchestrator","system"],n=d.k5(m),o=["router","planner"],p=d.k5(o),q=["api_key","oauth2","bearer","basic","none"],r=d.k5(q),s=["pending","approved","rejected","expired"],t=d.k5(s),u=["auto_approve","require_approval","block"],v=d.k5(u),w=["preference","context","outcome","learned_rule"],x=d.k5(w),y=["agent","reflection","manual"],z=d.k5(y),A=["L1","L2","L3"],B=d.k5(A),C=["cron","heartbeat"],D=d.k5(C),E=["success","failed","no_action"],F=d.k5(E),G=["owner","admin","member","viewer"],H=d.k5(G),I=["agency","startup","personal","studio","enterprise","other"],J=d.k5(I),K=["read","write","destructive"],L=d.k5(K),M=["webhook","transform","schedule"];d.k5(M);let N=["pre_task","post_task","pre_tool","post_tool","on_memory_save"];d.k5(N);let O=["http","stdio"];d.k5(O),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Yj().guid().brand(),d.Ik({id:d.Yj().guid(),user_id:d.Yj().guid(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),description:d.Yj().max(500).nullable(),icon:d.Yj().max(4),industry:J.nullable(),goal:d.Yj().max(1e3).nullable(),mcp_token:d.Yj().guid().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,mcp_token:!0,created_at:!0,updated_at:!0}).extend({description:d.Yj().max(500).nullable().optional(),icon:d.Yj().max(4).default("\uD83C\uDFE2"),industry:J.nullable().optional(),goal:d.Yj().max(1e3).nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid(),user_id:d.Yj().guid(),role:H,created_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0}).extend({role:H.default("owner")}),d.Ik({user_id:d.Yj().guid(),display_name:d.Yj().max(120).nullable(),avatar_url:d.Yj().max(500).nullable(),timezone:d.Yj().max(80),locale:d.Yj().max(10),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({created_at:!0,updated_at:!0}).extend({display_name:d.Yj().max(120).nullable().optional(),avatar_url:d.Yj().max(500).nullable().optional(),timezone:d.Yj().max(80).default("UTC"),locale:d.Yj().max(10).default("en")}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),personality:d.Yj().min(1),model:d.Yj().min(1),active:d.zM(),is_default:d.zM(),role:n,orchestrator_mode:p.nullable(),telegram_bot_token:d.Yj().nullable(),telegram_bot_username:d.Yj().nullable(),telegram_offset:d.ai().int().nonnegative().nullable(),requires_approval:d.YO(d.Yj()),capabilities:d.YO(d.Yj()),task_context_template:d.Yj().nullable(),avatar_url:d.Yj().nullable(),system_agent:d.zM(),max_tokens_per_job:d.ai().int().min(0),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,telegram_offset:!0,capabilities:!0,system_agent:!0}).extend({active:d.zM().default(!0),is_default:d.zM().default(!1),role:n.default("agent"),orchestrator_mode:p.nullable().optional(),telegram_bot_token:d.Yj().nullable().optional(),telegram_bot_username:d.Yj().nullable().optional(),requires_approval:d.YO(d.Yj()).default([]),task_context_template:d.Yj().nullable().optional(),avatar_url:d.Yj().nullable().optional(),max_tokens_per_job:d.ai().int().min(0).max(5e5).default(0)});let P=d.ai().int().min(0),Q=d.ai().int().min(0);d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid().nullable(),status:h,channel:f,task:d.Yj().min(1),original_task:d.Yj().nullable(),chat_id:d.Yj().nullable(),system_prompt:d.Yj().nullable(),messages:d.YO(d.g1(d.Yj(),d.L5())),tools_used:d.YO(d.Yj()),turn:d.ai().int().min(0),result:d.Yj().nullable(),error:d.Yj().nullable(),chain_count:P,request_id:d.Yj().nullable(),parent_job_id:d.Yj().guid().nullable(),parent_request_id:d.Yj().nullable(),total_duration_ms:d.ai().int().min(0),input_tokens:d.ai().int().min(0),output_tokens:d.ai().int().min(0),delegation_depth:Q,pending_delegation:d.g1(d.Yj(),d.L5()).nullable(),completed_at:d.Yj().datetime().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,completed_at:!0,messages:!0,tools_used:!0,turn:!0,result:!0,error:!0,chain_count:!0,total_duration_ms:!0,input_tokens:!0,output_tokens:!0,delegation_depth:!0,pending_delegation:!0,parent_request_id:!0}).extend({status:h.default("pending"),original_task:d.Yj().nullable().optional(),chat_id:d.Yj().nullable().optional(),system_prompt:d.Yj().nullable().optional(),request_id:d.Yj().nullable().optional(),parent_job_id:d.Yj().guid().nullable().optional()});let R=d.Yj().max(2e3).nullable(),S=d.Yj().min(1).max(200);d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid(),orchestrator_id:d.Yj().guid(),title:S,description:R,status:j,priority:l,job_id:d.Yj().guid().nullable(),result:d.Yj().nullable(),created_by_agent_id:d.Yj().guid().nullable(),assigned_agent_id:d.Yj().guid().nullable(),input_tokens:d.ai().int().min(0),output_tokens:d.ai().int().min(0),cost_usd:d.ai().min(0),depends_on:d.YO(d.Yj().guid()),context:d.g1(d.Yj(),d.L5()),root_job_id:d.Yj().guid().nullable(),locked_at:d.Yj().datetime().nullable(),locked_by:d.Yj().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,job_id:!0,result:!0,created_by_agent_id:!0,assigned_agent_id:!0,input_tokens:!0,output_tokens:!0,cost_usd:!0,depends_on:!0,context:!0,root_job_id:!0,locked_at:!0,locked_by:!0}).extend({status:j.default("todo"),priority:l.default("medium"),description:R.optional(),depends_on:d.YO(d.Yj().guid()).default([]),context:d.g1(d.Yj(),d.L5()).default({}),root_job_id:d.Yj().guid().nullable().optional()}),d.Ik({id:d.Yj().guid(),owner_user_id:d.Yj().guid(),name:d.Yj().min(1),type:d.k5(["google-oauth","notion-oauth","airtable-oauth"]),payload:d.Yj(),created_at:d.p6().nullable(),updated_at:d.p6().nullable()}),d.Ik({clientId:d.Yj(),clientSecret:d.Yj(),refreshToken:d.Yj().nullable(),accessToken:d.Yj(),expiresAt:d.Yj().nullable(),scopes:d.Yj(),accountName:d.Yj(),tokenUrl:d.Yj().url()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),base_url:d.Yj().nullable(),api_key:d.Yj().nullable(),active:d.zM(),auth_type:r,credential_id:d.Yj().guid().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0}).extend({active:d.zM().default(!0),auth_type:r.default("api_key"),base_url:d.Yj().nullable().optional(),api_key:d.Yj().nullable().optional(),credential_id:d.Yj().guid().nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),job_id:d.Yj().guid().nullable(),tool_name:d.Yj().min(1),tool_input:d.g1(d.Yj(),d.L5()).nullable(),tool_output:d.Yj().nullable(),duration_ms:d.ai().int().min(0).nullable(),turn:d.ai().int().min(0).nullable(),created_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0}).extend({tool_input:d.g1(d.Yj(),d.L5()).nullable().optional(),tool_output:d.Yj().nullable().optional(),duration_ms:d.ai().int().min(0).nullable().optional(),turn:d.ai().int().min(0).nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),job_id:d.Yj().guid(),agent_id:d.Yj().guid().nullable(),tool_name:d.Yj().min(1),tool_input:d.g1(d.Yj(),d.L5()),status:t,requested_at:d.Yj().datetime(),resolved_at:d.Yj().datetime().nullable(),resolved_by:d.Yj().nullable(),expires_at:d.Yj().datetime().nullable(),notes:d.Yj().nullable()}).strict().omit({id:!0,requested_at:!0,resolved_at:!0,resolved_by:!0,expires_at:!0}).extend({status:t.default("pending"),notes:d.Yj().nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid().nullable(),tool_name:d.Yj().min(1),action:v,condition_json:d.g1(d.Yj(),d.L5()),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0}).extend({agent_id:d.Yj().guid().nullable().optional(),condition_json:d.g1(d.Yj(),d.L5()).default({})});let T=d.ai().int().min(1).max(5);d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid().nullable(),fact:d.Yj().min(1),category:x,importance:T,source:z,skill_tags:d.YO(d.Yj().max(60)),memory_layer:B.nullable(),valid_from:d.Yj().datetime().nullable(),valid_to:d.Yj().datetime().nullable(),fact_hash:d.Yj().nullable(),archived:d.zM(),last_accessed_at:d.Yj().datetime().nullable(),access_count:d.ai().int().min(0),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,fact_hash:!0,archived:!0,last_accessed_at:!0,access_count:!0,valid_from:!0,valid_to:!0}).extend({agent_id:d.Yj().guid().nullable().optional(),category:x.default("context"),importance:T.default(3),source:z.default("manual"),skill_tags:d.YO(d.Yj().max(60)).max(20).default([]),memory_layer:B.nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid().nullable(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),task_template:d.Yj().min(1),active:d.zM(),secret:d.Yj().nullable(),last_triggered_at:d.Yj().datetime().nullable(),trigger_count:d.ai().int().min(0),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,secret:!0,last_triggered_at:!0,trigger_count:!0}).extend({active:d.zM().default(!0)});let U=d.Ik({name:d.Yj().min(1),slug:d.Yj().min(1).regex(/^[a-z0-9-]+$/),risk:L,requires_approval:d.zM()}).strict(),V=d.Ik({label:d.Yj().min(1),description:d.Yj().min(1),type:d.k5(["connector_slug","manual"]),value:d.Yj().optional(),critical:d.zM()}).strict();d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),name:d.Yj().min(1).max(120),slug:d.Yj().min(1).max(80).regex(/^[a-z0-9-]+$/),content:d.Yj().min(1),active:d.zM(),description:d.Yj().max(300).nullable(),default_content:d.Yj().nullable(),content_overridden:d.zM(),required_config:d.YO(V),operations:d.YO(U),required_builtins:d.YO(d.Yj()),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0}).extend({active:d.zM().default(!0),description:d.Yj().max(300).nullable().optional(),default_content:d.Yj().nullable().optional(),content_overridden:d.zM().default(!1),required_config:d.YO(V).default([]),operations:d.YO(U).default([]),required_builtins:d.YO(d.Yj()).default([])}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid(),agent_id:d.Yj().guid(),skill_id:d.Yj().guid(),approval_overrides:d.g1(d.Yj(),d.zM()),use_custom_instructions:d.zM(),enabled_operations:d.YO(d.Yj()).nullable(),created_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0}).extend({approval_overrides:d.g1(d.Yj(),d.zM()).default({}),use_custom_instructions:d.zM().default(!1),enabled_operations:d.YO(d.Yj()).nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid().nullable(),agent_id:d.Yj().guid(),type:D,name:d.Yj().min(1).max(120),cron_expr:d.Yj().min(1),task:d.Yj().nullable(),objectives:d.Yj().nullable(),active:d.zM(),last_run:d.Yj().datetime().nullable(),next_run:d.Yj().datetime().nullable(),last_status:F.nullable(),chat_id:d.Yj().nullable(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0,last_run:!0,next_run:!0,last_status:!0}).extend({type:D.default("cron"),active:d.zM().default(!0),task:d.Yj().nullable().optional(),objectives:d.Yj().nullable().optional(),chat_id:d.Yj().nullable().optional()}),d.Ik({id:d.Yj().guid(),entity_id:d.Yj().guid(),provider:d.Yj().min(1),api_key:d.Yj(),base_url:d.Yj().nullable(),nickname:d.Yj().max(80).nullable(),is_active:d.zM(),created_at:d.Yj().datetime(),updated_at:d.Yj().datetime()}).strict().omit({id:!0,created_at:!0,updated_at:!0}).extend({api_key:d.Yj().default(""),base_url:d.Yj().nullable().optional(),nickname:d.Yj().max(80).nullable().optional(),is_active:d.zM().default(!0)});let W="https://accounts.google.com/o/oauth2/v2/auth",X="https://oauth2.googleapis.com/token",Y=["https://www.googleapis.com/auth/userinfo.email","openid"],Z={access_type:"offline",prompt:"consent",include_granted_scopes:"true"},$={url:"https://www.googleapis.com/oauth2/v3/userinfo",nameField:"name",emailField:"email"},_={"google-drive":{slug:"google-drive",label:"Google Drive",authUrl:W,tokenUrl:X,scopes:["https://www.googleapis.com/auth/drive",...Y],pkce:"pkce-s256",tokenAuth:"body",tokenBodyType:"form",accountInfo:$,supportsRefresh:!0,authExtraParams:Z,credentialType:"google-oauth"},gmail:{slug:"gmail",label:"Gmail",authUrl:W,tokenUrl:X,scopes:["https://www.googleapis.com/auth/gmail.readonly","https://www.googleapis.com/auth/gmail.send",...Y],pkce:"pkce-s256",tokenAuth:"body",tokenBodyType:"form",accountInfo:$,supportsRefresh:!0,authExtraParams:Z,credentialType:"google-oauth"},"google-sheets":{slug:"google-sheets",label:"Google Sheets",authUrl:W,tokenUrl:X,scopes:["https://www.googleapis.com/auth/spreadsheets",...Y],pkce:"pkce-s256",tokenAuth:"body",tokenBodyType:"form",accountInfo:$,supportsRefresh:!0,authExtraParams:Z,credentialType:"google-oauth"},"google-docs":{slug:"google-docs",label:"Google Docs",authUrl:W,tokenUrl:X,scopes:["https://www.googleapis.com/auth/documents",...Y],pkce:"pkce-s256",tokenAuth:"body",tokenBodyType:"form",accountInfo:$,supportsRefresh:!0,authExtraParams:Z,credentialType:"google-oauth"},"notion-oauth":{slug:"notion-oauth",label:"Notion (OAuth)",authUrl:"https://api.notion.com/v1/oauth/authorize",tokenUrl:"https://api.notion.com/v1/oauth/token",scopes:[],pkce:"none",tokenAuth:"basic",tokenBodyType:"json",accountInfo:null,supportsRefresh:!1,authExtraParams:{owner:"user",response_type:"code"},credentialType:"notion-oauth"},"airtable-oauth":{slug:"airtable-oauth",label:"Airtable",authUrl:"https://airtable.com/oauth2/v1/authorize",tokenUrl:"https://airtable.com/oauth2/v1/token",scopes:["data.records:read","data.records:write","schema.bases:read","schema.bases:write"],pkce:"pkce-s256",tokenAuth:"basic",tokenBodyType:"form",accountInfo:{url:"https://api.airtable.com/v0/meta/whoami",nameField:"email"},supportsRefresh:!0,authExtraParams:{response_type:"code"},credentialType:"airtable-oauth"}};function aa(a){return _[a]??null}function ab(a){for(let b of Object.values(_))if(b.credentialType===a)return b;return null}let ac=d.k5(["propose_confirm","destructive_gate","fully_autonomous"]),ad=d.Ik({createAgent:d.zM(),attachAgent:d.zM(),createSkill:d.zM(),updateSkill:d.zM(),assignSkill:d.zM(),createMcp:d.zM(),createConnector:d.zM(),autonomy:ac}),ae={createAgent:!0,attachAgent:!0,createSkill:!0,updateSkill:!0,assignSkill:!0,createMcp:!0,createConnector:!0,autonomy:"propose_confirm"},af={createAgent:!1,attachAgent:!1,createSkill:!1,updateSkill:!1,assignSkill:!1,createMcp:!1,createConnector:!1,autonomy:"propose_confirm"},ag={createAgent:"create_agent",attachAgent:"attach_agent",createSkill:"create_skill",updateSkill:"update_skill",assignSkill:"attach_skill",createMcp:"create_mcp",createConnector:"create_connector"},ah=["create_agent","attach_agent","create_skill","update_skill","attach_skill","create_mcp","create_connector"];function ai(a){return Object.keys(ag).filter(b=>!0===a[b]).map(a=>ag[a])}function aj(a){let b=ad.safeParse(a);if(b.success)return b.data;let c=null!==a&&"object"==typeof a?a:{},d="boolean"==typeof c.createAgent?c.createAgent:ae.createAgent,e="boolean"==typeof c.attachAgent?c.attachAgent:ae.attachAgent,f="boolean"==typeof c.createSkill?c.createSkill:ae.createSkill,g="boolean"==typeof c.updateSkill?c.updateSkill:ae.updateSkill,h="boolean"==typeof c.assignSkill?c.assignSkill:ae.assignSkill,i="boolean"==typeof c.createMcp&&c.createMcp,j="boolean"==typeof c.createConnector&&c.createConnector,k=ac.safeParse(c.autonomy);return{createAgent:d,attachAgent:e,createSkill:f,updateSkill:g,assignSkill:h,createMcp:i,createConnector:j,autonomy:k.success?k.data:ae.autonomy}}let ak=[{slug:"notion",label:"Notion",authType:"api_key",docsHint:"Create a Notion integration at notion.so/my-integrations and copy its internal secret."},{slug:"notion-oauth",label:"Notion (OAuth)",authType:"oauth2",credentialType:"notion-oauth",docsHint:"Public Integration via OAuth — create one at notion.so/my-integrations (Public type) and authorize from your dashboard."},{slug:"google-drive",label:"Google Drive",authType:"oauth2",credentialType:"google-oauth",docsHint:"OAuth flow — uses your Google credential (create one under Credentials)."},{slug:"gmail",label:"Gmail",authType:"oauth2",credentialType:"google-oauth",docsHint:"OAuth flow — uses your Google credential (create one under Credentials)."},{slug:"google-sheets",label:"Google Sheets",authType:"oauth2",credentialType:"google-oauth",docsHint:"OAuth flow — uses your Google credential (create one under Credentials)."},{slug:"google-docs",label:"Google Docs",authType:"oauth2",credentialType:"google-oauth",docsHint:"OAuth flow — uses your Google credential (create one under Credentials)."},{slug:"airtable-oauth",label:"Airtable (OAuth)",authType:"oauth2",credentialType:"airtable-oauth",docsHint:"OAuth flow for Airtable Public Integrations (recommended)."},{slug:"airtable",label:"Airtable",authType:"api_key",docsHint:"Personal Access Token — airtable.com/create/tokens."},{slug:"apify",label:"Apify",authType:"api_key",docsHint:"Token API Apify — console.apify.com/account/integrations."},{slug:"firecrawl",label:"Firecrawl",authType:"api_key",docsHint:"API key Firecrawl — firecrawl.dev/account."},{slug:"tavily",label:"Tavily",authType:"api_key",docsHint:"API key Tavily — app.tavily.com."}]},49959:(a,b,c)=>{"use strict";c.d(b,{h:()=>k});var d=c(85653),e=c(99768),f=c(49500),g=c(37607),h=c(42891),i=c(16471),j=c(12788);let k=(0,d.cJ)("entity_llm_keys",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").notNull().references(()=>j.O.id,{onDelete:"cascade"}),provider:(0,f.Qq)("provider").notNull(),apiKey:(0,f.Qq)("api_key").notNull().default(""),apiKeyLast4:(0,f.Qq)("api_key_last4").notNull().default(""),baseUrl:(0,f.Qq)("base_url"),nickname:(0,f.Qq)("nickname"),isActive:(0,g.zM)("is_active").notNull().default(!0),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()},a=>[(0,i.Pe)("idx_entity_llm_keys_entity_id").on(a.entityId)])},54789:(a,b,c)=>{"use strict";c.d(b,{I$:()=>s,Qj:()=>r,X6:()=>q});var d=c(85653),e=c(99768),f=c(49500),g=c(52019),h=c(37607),i=c(27940),j=c(91605),k=c(42891),l=c(16471),m=c(66618),n=c(29123),o=c(12788),p=c(49959);let q=(0,d.cJ)("agents",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").references(()=>o.O.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull(),slug:(0,f.Qq)("slug").notNull().unique(),personality:(0,f.Qq)("personality").notNull(),model:(0,f.Qq)("model").default("claude-sonnet-4-6-20260217"),llmKeyId:(0,e.uR)("llm_key_id").references(()=>p.h.id,{onDelete:"set null"}),fallbackChain:(0,g.Fx)("fallback_chain").$type().default((0,n.ll)`'[]'::jsonb`),active:(0,h.zM)("active").default(!0),isDefault:(0,h.zM)("is_default").default(!1),role:(0,f.Qq)("role").default("agent"),orchestratorMode:(0,f.Qq)("orchestrator_mode"),telegramBotToken:(0,f.Qq)("telegram_bot_token"),telegramBotUsername:(0,f.Qq)("telegram_bot_username"),telegramOffset:(0,i.o)("telegram_offset",{mode:"number"}),lastSeenChatIdTelegram:(0,f.Qq)("last_seen_chat_id_telegram"),requiresApproval:(0,f.Qq)("requires_approval").array().default((0,n.ll)`'{}'::text[]`),capabilities:(0,f.Qq)("capabilities").array().default((0,n.ll)`'{}'::text[]`),taskContextTemplate:(0,f.Qq)("task_context_template"),avatarUrl:(0,f.Qq)("avatar_url"),systemAgent:(0,h.zM)("system_agent").default(!1),maxTokensPerJob:(0,j.nd)("max_tokens_per_job").default(0).notNull(),memoryTokenBudget:(0,j.nd)("memory_token_budget").default(1500).notNull(),position:(0,j.nd)("position").default(0).notNull(),createdAt:(0,k.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,k.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,l.Pe)("idx_agents_entity_id").on(a.entityId),(0,l.Pe)("idx_agents_position").on(a.position),(0,m.z6)("agents_role_check",(0,n.ll)`${a.role} IN ('agent', 'orchestrator', 'system')`),(0,m.z6)("agents_orchestrator_mode_check",(0,n.ll)`${a.orchestratorMode} IN ('router', 'planner') OR ${a.orchestratorMode} IS NULL`),(0,m.z6)("agents_max_tokens_per_job_check",(0,n.ll)`${a.maxTokensPerJob} >= 0`)]),r=(0,d.cJ)("agent_assignments",{id:(0,e.uR)("id").primaryKey().defaultRandom(),orchestratorId:(0,e.uR)("orchestrator_id").notNull().references(()=>q.id,{onDelete:"cascade"}),subAgentId:(0,e.uR)("sub_agent_id").notNull().references(()=>q.id,{onDelete:"cascade"}),entityId:(0,e.uR)("entity_id").notNull().references(()=>o.O.id,{onDelete:"cascade"}),instructions:(0,f.Qq)("instructions"),createdAt:(0,k.vE)("created_at",{withTimezone:!0}).notNull().defaultNow()},()=>[]),s=(0,d.cJ)("agent_budgets",{id:(0,e.uR)("id").primaryKey().defaultRandom(),agentId:(0,e.uR)("agent_id").unique().references(()=>q.id,{onDelete:"cascade"}),entityId:(0,e.uR)("entity_id").references(()=>o.O.id,{onDelete:"cascade"}),dailyTokenLimit:(0,i.o)("daily_token_limit",{mode:"number"}).default(0),monthlyTokenLimit:(0,i.o)("monthly_token_limit",{mode:"number"}).default(0),alertThresholdPct:(0,j.nd)("alert_threshold_pct").default(80),autoPause:(0,h.zM)("auto_pause").default(!1),maxJobTokens:(0,j.nd)("max_job_tokens").default(15e4),createdAt:(0,k.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,k.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,l.Pe)("idx_agent_budgets_entity_id").on(a.entityId),(0,m.z6)("agent_budgets_alert_threshold_pct_check",(0,n.ll)`${a.alertThresholdPct} >= 0 AND ${a.alertThresholdPct} <= 100`)])},57119:(a,b,c)=>{"use strict";c.d(b,{K:()=>j,V:()=>i});var d=c(85653),e=c(99768),f=c(49500),g=c(37607),h=c(42891);let i=(0,d.cJ)("users",{id:(0,e.uR)("id").primaryKey().defaultRandom(),email:(0,f.Qq)("email").notNull().unique(),passwordHash:(0,f.Qq)("password_hash"),name:(0,f.Qq)("name").notNull().default(""),emailVerified:(0,g.zM)("email_verified").notNull().default(!1),image:(0,f.Qq)("image"),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()}),j=(0,d.cJ)("user_profiles",{userId:(0,e.uR)("user_id").primaryKey().notNull().references(()=>i.id,{onDelete:"cascade"}),displayName:(0,f.Qq)("display_name"),avatarUrl:(0,f.Qq)("avatar_url"),timezone:(0,f.Qq)("timezone").notNull().default("UTC"),locale:(0,f.Qq)("locale").notNull().default("en"),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).notNull().defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).notNull().defaultNow()})},58112:()=>{},62637:(a,b,c)=>{"use strict";c.d(b,{z:()=>l});var d=c(85653),e=c(99768),f=c(49500),g=c(42891),h=c(16471),i=c(66618),j=c(29123),k=c(57119);let l=(0,d.cJ)("credentials",{id:(0,e.uR)("id").primaryKey().defaultRandom(),ownerUserId:(0,e.uR)("owner_user_id").notNull().references(()=>k.V.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull(),type:(0,f.Qq)("type").notNull(),payload:(0,f.Qq)("payload").notNull(),createdAt:(0,g.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,g.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,h.Pe)("idx_credentials_owner").on(a.ownerUserId),(0,h.Pe)("idx_credentials_type").on(a.type),(0,i.z6)("credentials_type_check",(0,j.ll)`${a.type} IN ('google-oauth','notion-oauth','airtable-oauth')`)])},75224:(a,b,c)=>{"use strict";c.d(b,{_:()=>g});var d=c(61989);let e=d.Ik({DATABASE_URL:d.Yj().min(1,"DATABASE_URL is required"),RUNNER_URL:d.Yj().url().default("http://127.0.0.1:3001"),AUTH_MODE:d.k5(["local-trust","local-auth","bearer-token"]).default("local-trust"),NEXT_PUBLIC_AUTH_MODE:d.k5(["local-trust","local-auth","bearer-token"]).default("local-trust"),AUTH_SECRET:d.Yj().min(32).optional(),WORKER_SECRET:d.Yj().min(1).optional(),GOOGLE_CLIENT_ID:d.Yj().optional(),GOOGLE_CLIENT_SECRET:d.Yj().optional(),NEXT_PUBLIC_APP_URL:d.Yj().url().default("http://localhost:3000"),BIND:d.k5(["127.0.0.1","0.0.0.0"]).default("127.0.0.1"),LLM_PROVIDER:d.Yj().optional(),LLM_MODEL:d.Yj().optional(),LLM_BASE_URL:d.Yj().optional()}),f={DATABASE_URL:process.env.DATABASE_URL??"postgres://placeholder:5432/placeholder",RUNNER_URL:process.env.RUNNER_URL,AUTH_MODE:process.env.AUTH_MODE,NEXT_PUBLIC_AUTH_MODE:process.env.NEXT_PUBLIC_AUTH_MODE,AUTH_SECRET:process.env.AUTH_SECRET,WORKER_SECRET:process.env.WORKER_SECRET,GOOGLE_CLIENT_ID:process.env.GOOGLE_CLIENT_ID,GOOGLE_CLIENT_SECRET:process.env.GOOGLE_CLIENT_SECRET,NEXT_PUBLIC_APP_URL:process.env.NEXT_PUBLIC_APP_URL,BIND:process.env.BIND,LLM_PROVIDER:process.env.LLM_PROVIDER,LLM_MODEL:process.env.LLM_MODEL,LLM_BASE_URL:process.env.LLM_BASE_URL},g=e.parse(f)},82017:(a,b,c)=>{"use strict";c.d(b,{$m:()=>s,IS:()=>r,bq:()=>q,eK:()=>p});var d=c(85653),e=c(99768),f=c(49500),g=c(37607),h=c(52019),i=c(42891),j=c(91605),k=c(16471),l=c(29123),m=c(12788),n=c(54789),o=c(98935);let p=(0,d.cJ)("agent_skills",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").references(()=>m.O.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull().unique(),slug:(0,f.Qq)("slug").notNull().unique(),content:(0,f.Qq)("content").notNull(),active:(0,g.zM)("active").default(!0),description:(0,f.Qq)("description"),defaultContent:(0,f.Qq)("default_content"),contentOverridden:(0,g.zM)("content_overridden").default(!1),requiredConfig:(0,h.Fx)("required_config").default((0,l.ll)`'[]'::jsonb`),operations:(0,h.Fx)("operations").default((0,l.ll)`'[]'::jsonb`),requiredBuiltins:(0,f.Qq)("required_builtins").array().notNull().default((0,l.ll)`'{}'::text[]`),isCommunity:(0,g.zM)("is_community").notNull().default(!1),source:(0,f.Qq)("source"),installedScripts:(0,h.Fx)("installed_scripts").$type(),createdBy:(0,f.Qq)("created_by").notNull().default("user"),createdByAgentId:(0,e.uR)("created_by_agent_id").references(()=>n.X6.id,{onDelete:"set null"}),state:(0,f.Qq)("state").notNull().default("active"),lastUsedAt:(0,i.vE)("last_used_at",{withTimezone:!0}),patchCount:(0,j.nd)("patch_count").notNull().default(0),archivedAt:(0,i.vE)("archived_at",{withTimezone:!0}),createdAt:(0,i.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,i.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,k.Pe)("idx_agent_skills_entity_id").on(a.entityId),(0,k.Pe)("idx_skills_active").on(a.active,a.slug),(0,k.Pe)("idx_agent_skills_is_community").on(a.isCommunity)]),q=(0,d.cJ)("skill_versions",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").references(()=>m.O.id,{onDelete:"cascade"}),skillId:(0,e.uR)("skill_id").references(()=>p.id,{onDelete:"cascade"}),version:(0,j.nd)("version").notNull(),content:(0,f.Qq)("content").notNull(),name:(0,f.Qq)("name").notNull(),createdAt:(0,i.vE)("created_at",{withTimezone:!0}).defaultNow()},a=>[(0,k.Pe)("idx_skill_versions_entity_id").on(a.entityId),(0,k.Pe)("idx_skill_versions_skill_id").on(a.skillId,(0,l.ll)`${a.version} DESC`)]),r=(0,d.cJ)("skill_connectors",{skillId:(0,e.uR)("skill_id").notNull().references(()=>p.id,{onDelete:"cascade"}),connectorId:(0,e.uR)("connector_id").notNull().references(()=>o.t.id,{onDelete:"cascade"}),entityId:(0,e.uR)("entity_id").references(()=>m.O.id,{onDelete:"cascade"})},a=>[(0,k.Pe)("idx_skill_connectors_entity_id").on(a.entityId),(0,k.Pe)("idx_skill_connectors_skill_id").on(a.skillId)]),s=(0,d.cJ)("agent_skill_assignments",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").notNull().references(()=>m.O.id,{onDelete:"cascade"}),agentId:(0,e.uR)("agent_id").notNull().references(()=>n.X6.id,{onDelete:"cascade"}),skillId:(0,e.uR)("skill_id").notNull().references(()=>p.id,{onDelete:"cascade"}),approvalOverrides:(0,h.Fx)("approval_overrides").default((0,l.ll)`'{}'::jsonb`),useCustomInstructions:(0,g.zM)("use_custom_instructions").notNull().default(!1),enabledOperations:(0,f.Qq)("enabled_operations").array(),createdAt:(0,i.vE)("created_at",{withTimezone:!0}).notNull().defaultNow()},()=>[])},87488:()=>{},95488:(a,b,c)=>{"use strict";c.d(b,{Iz:()=>l,Lf:()=>j,St:()=>g,XK:()=>m,a1:()=>h,oC:()=>e.oC,sj:()=>n});var d=c(48849),e=c(42112),f=c(75224);let g="nodalai_active_entity";async function h(a,b){let c=function(a){let b=a.headers.get("cookie");if(!b)return null;for(let a of b.split(";")){let b=a.indexOf("=");if(-1!==b&&a.slice(0,b).trim()===g)return decodeURIComponent(a.slice(b+1).trim())}return null}(b);if(!c||c===a.entityId)return a;let[e]=await j().select({id:d.V.id}).from(d.V).where((0,d.Uo)((0,d.eq)(d.V.userId,a.userId),(0,d.eq)(d.V.entityId,c)));return e?{...a,entityId:c}:a}let i=null;function j(){if(!i){let{db:a}=(0,d.UU)(f._.DATABASE_URL);i=a}return i}let k=null;function l(){if(k)return k;if("local-trust"===f._.AUTH_MODE)return k=new e.hb;if("local-auth"===f._.AUTH_MODE){if(!f._.AUTH_SECRET)throw Error("AUTH_SECRET must be set when AUTH_MODE=local-auth");return k=(0,e.Xi)({db:j(),baseURL:f._.NEXT_PUBLIC_APP_URL,secret:f._.AUTH_SECRET,googleClientId:f._.GOOGLE_CLIENT_ID,googleClientSecret:f._.GOOGLE_CLIENT_SECRET})}return k=new e.hb}function m(){let a=l();if(!(a instanceof e.Jj))throw Error("better-auth API is only available in local-auth mode");return a.auth}async function n(a){return h(await (0,e.rb)(a,l(),j()),a)}},98472:(a,b,c)=>{"use strict";c.d(b,{Jm:()=>j,Yc:()=>m,nK:()=>n,ph:()=>k,w:()=>l});var d=c(77598),e=c(73024),f=c(48161),g=c(76760);let h="aes-256-gcm",i=null;function j(a=(0,g.join)((0,f.homedir)(),".nodalai","secrets.key")){if(i)return i;if((0,e.existsSync)(a)){let b=(0,e.readFileSync)(a,"utf-8").trim(),c=Buffer.from(b,"base64");if(32!==c.length)throw Error(`secrets: master key at ${a} is malformed (expected 32 bytes, got ${c.length})`);return i=c,c}let b=(0,g.dirname)(a);(0,e.existsSync)(b)||(0,e.mkdirSync)(b,{recursive:!0});let c=(0,d.randomBytes)(32);(0,e.writeFileSync)(a,c.toString("base64"),{mode:384});try{(0,e.chmodSync)(a,384)}catch{}return i=c,c}function k(a){return a.startsWith("enc:v1:")}function l(a,b=j()){if(""===a)return"";let c=(0,d.randomBytes)(12),e=(0,d.createCipheriv)(h,b,c),f=Buffer.concat([e.update(a,"utf-8"),e.final()]),g=e.getAuthTag();return`enc:v1:${c.toString("base64")}:${g.toString("base64")}:${f.toString("base64")}`}function m(a,b=j()){if(""===a)return"";if(!k(a))throw Error("secrets: value is not encrypted (missing enc:v1: prefix)");let c=a.split(":");if(5!==c.length)throw Error("secrets: malformed ciphertext");let[,,e,f,g]=c;if(!e||!f||!g)throw Error("secrets: malformed ciphertext");let i=Buffer.from(e,"base64"),l=Buffer.from(f,"base64"),n=Buffer.from(g,"base64"),o=(0,d.createDecipheriv)(h,b,i);return o.setAuthTag(l),Buffer.concat([o.update(n),o.final()]).toString("utf-8")}function n(a){return a.length<=4?a:a.slice(-4)}},98935:(a,b,c)=>{"use strict";c.d(b,{t:()=>n});var d=c(85653),e=c(99768),f=c(49500),g=c(37607),h=c(42891),i=c(16471),j=c(66618),k=c(29123),l=c(12788),m=c(62637);let n=(0,d.cJ)("connectors",{id:(0,e.uR)("id").primaryKey().defaultRandom(),entityId:(0,e.uR)("entity_id").references(()=>l.O.id,{onDelete:"cascade"}),name:(0,f.Qq)("name").notNull(),slug:(0,f.Qq)("slug").notNull(),baseUrl:(0,f.Qq)("base_url"),apiKey:(0,f.Qq)("api_key"),active:(0,g.zM)("active").default(!0),authType:(0,f.Qq)("auth_type").notNull().default("api_key"),credentialId:(0,e.uR)("credential_id").references(()=>m.z.id,{onDelete:"set null"}),createdAt:(0,h.vE)("created_at",{withTimezone:!0}).defaultNow(),updatedAt:(0,h.vE)("updated_at",{withTimezone:!0}).defaultNow()},a=>[(0,i.Pe)("idx_connectors_entity_id").on(a.entityId),(0,i.Pe)("idx_connectors_credential_id").on(a.credentialId),(0,j.z6)("connectors_auth_type_check",(0,k.ll)`${a.authType} IN ('api_key','oauth2','bearer','basic','none')`)])}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=3889,exports.ids=[3889],exports.modules={7720:(a,b,c)=>{c.d(b,{m:()=>e,o:()=>d});let d={"google-oauth":{title:"Get your Google OAuth credentials",intro:"You need a Google Cloud project with the relevant APIs enabled.",steps:[{number:1,text:"Go to Google Cloud Console and create a new project (any name).",link:{href:"https://console.cloud.google.com/",label:"console.cloud.google.com"}},{number:2,text:"Enable each API your agents will use — click the links below, then hit Enable:",subLinks:[{href:"https://console.cloud.google.com/apis/library/drive.googleapis.com",label:"Drive API"},{href:"https://console.cloud.google.com/apis/library/gmail.googleapis.com",label:"Gmail API"},{href:"https://console.cloud.google.com/apis/library/sheets.googleapis.com",label:"Sheets API"},{href:"https://console.cloud.google.com/apis/library/docs.googleapis.com",label:"Docs API"}]},{number:3,text:"In the left menu, go to APIs & Services → OAuth consent screen. Choose User Type: External, fill in the app name, then add your own email as a Test user."},{number:4,text:"Go to APIs & Services → Credentials → Create credentials → OAuth client ID → Application type: Web application."},{number:5,text:"Under Authorized JavaScript origins, add the origin shown below the form."},{number:6,text:"Under Authorized redirect URIs, paste the redirect URI shown below the form. This step is mandatory — Google rejects the connection if it is missing or differs by even one character.",hint:"Most common cause of failure when trying to connect."},{number:7,text:"Click Create. A dialog shows your Client ID and Client secret. Copy both."},{number:8,text:"Paste them into the fields below."}],format:"Client ID ends with .apps.googleusercontent.com"},"notion-oauth":{title:"Get your Notion OAuth credentials",intro:"You need a Public integration — not an Internal one. The distinction matters.",steps:[{number:1,text:"Go to Notion integrations and click + New integration.",link:{href:"https://www.notion.so/my-integrations",label:"notion.so/my-integrations"}},{number:2,text:"Set Integration type to Public (not Internal — Internal tokens are single-workspace only and cannot do OAuth).",hint:'If you see no "Type" field, you are on the wrong page.'},{number:3,text:"Fill in a name and optional logo. Under Capabilities, check at minimum: Read content, Update content, Insert content."},{number:4,text:"In the OAuth Domain & URIs section, paste the redirect URI shown below the form. This step is mandatory — Notion rejects the connection if it is missing or differs by even one character.",hint:"Most common cause of failure when trying to connect."},{number:5,text:"Click Submit. On the integration page, open the Secrets tab."},{number:6,text:"Copy the OAuth client ID (a UUID) and the OAuth client secret."},{number:7,text:"Paste them into the fields below."}],format:"Client ID is a UUID. Secret starts with secret_"},"airtable-oauth":{title:"Get your Airtable OAuth credentials",warning:"Airtable only accepts localhost or an HTTPS redirect URI — raw LAN IPs (e.g. 192.168.x.x) are rejected. Open the dashboard at http://localhost:3000 just for this flow. The resulting credential works from any host afterwards.",warningWhen:"lan-ip-only",steps:[{number:1,text:"Go to the Airtable OAuth integration page and click Register new OAuth integration.",link:{href:"https://airtable.com/create/oauth",label:"airtable.com/create/oauth"}},{number:2,text:"Give it a name (e.g. Nodal-Agents)."},{number:3,text:"In the Redirect URIs section, paste the redirect URI shown below the form. This step is mandatory — Airtable rejects the connection if it is missing or differs by even one character.",hint:"Most common cause of failure when trying to connect."},{number:4,text:"In the Scopes section, check the four scopes: data.records:read, data.records:write, schema.bases:read, schema.bases:write — then save / update the integration so the scopes are persisted.",hint:'If the scopes are not saved, Airtable returns "invalid_scope" during the OAuth flow.'},{number:5,text:"Click Register integration (or Save changes if editing an existing one)."},{number:6,text:"On the integration detail page, copy the Client ID and Client secret."},{number:7,text:"Paste them into the fields below."}],format:"Client ID is a UUID. Secret is longer."}},e={notion:{title:"Get your Notion Internal Integration Token",intro:"This is the Internal integration flow — single workspace, no OAuth redirect. Different from the Notion OAuth credential.",steps:[{number:1,text:"Go to Notion integrations and click + New integration.",link:{href:"https://www.notion.so/my-integrations",label:"notion.so/my-integrations"}},{number:2,text:"Set Integration type to Internal (not Public). Select your workspace."},{number:3,text:"Under Capabilities, check at minimum: Read content, Update content, Insert content."},{number:4,text:"Click Submit. On the integration page, open the Secrets tab and copy the Internal Integration Token."},{number:5,text:"Important: for each Notion page the agent should access, open the page, click the \xb7\xb7\xb7 menu → Connections → select your integration name.",hint:'Without this step the agent gets "object not found" errors.'}],format:"Token starts with secret_"},airtable:{title:"Get your Airtable Personal Access Token",steps:[{number:1,text:"Go to the Airtable token creation page and click Create new token.",link:{href:"https://airtable.com/create/tokens",label:"airtable.com/create/tokens"}},{number:2,text:"Give it a name. Under Scopes, add at minimum: data.records:read, data.records:write, schema.bases:read."},{number:3,text:"Under Access, choose the specific bases to expose or select All workspaces."},{number:4,text:"Click Create token and copy the value immediately — Airtable hides it after you close the dialog."}],format:"Token starts with pat"},apify:{title:"Get your Apify API token",steps:[{number:1,text:"Go to the Apify integrations page.",link:{href:"https://console.apify.com/account/integrations",label:"console.apify.com/account/integrations"}},{number:2,text:"Under API tokens, either copy the default Personal API token or click Create new token to generate a dedicated one."},{number:3,text:"Paste the token into the field below."}],format:"Token starts with apify_api_"},firecrawl:{title:"Get your Firecrawl API key",steps:[{number:1,text:"Go to your Firecrawl account page and navigate to API Keys.",link:{href:"https://www.firecrawl.dev/account",label:"firecrawl.dev/account"}},{number:2,text:"Copy your existing key or click to generate a new one, then paste it below."}],format:"Key starts with fc-"},tavily:{title:"Get your Tavily API key",steps:[{number:1,text:"Go to the Tavily app and open the API section.",link:{href:"https://app.tavily.com/",label:"app.tavily.com"}},{number:2,text:"Copy your API key and paste it below."}],format:"Key starts with tvly-"}}},28881:(a,b,c)=>{c.d(b,{Av:()=>q,Bs:()=>p,DF:()=>u,FT:()=>o,Gw:()=>s,Jh:()=>r,_E:()=>t});var d=c(43607),e=c(87388),f=c(90454),g=c(98472),h=c(61989),i=c(95488),j=c(42112),k=c(66402);function l(a){return{ok:!0,data:a}}function m(a,b){return{ok:!1,code:a,message:b}}async function n(){let a,b=(0,i.Iz)();try{let b=await (0,k.headers)();a=new Request("http://localhost/",{headers:b})}catch{a=new Request("http://localhost/")}return(0,j.oC)(a,b)}async function o(a){try{let b=await n(),c=(0,i.Lf)(),d=await c.select().from(f.z3).where((0,f.eq)(f.z3.ownerUserId,b.userId)),e=void 0!==a?d.filter(b=>b.type===a):d,g=await Promise.all(e.map(async a=>{let b=null,d=null,e=null,g=null;try{let g=await (0,f.G0)(c,a.id);g&&(b=g.payload.accountName??null,d=g.payload.expiresAt?new Date(g.payload.expiresAt):null,e=g.payload.scopes??null)}catch(a){g=a instanceof Error?a.message:"decrypt_failed"}let h=(await c.select({id:f.tK.id,slug:f.tK.slug}).from(f.tK).where((0,f.eq)(f.tK.credentialId,a.id))).map(a=>({connectorSlug:a.slug,connectorId:a.id}));return{id:a.id,name:a.name,type:a.type,accountName:b,expiresAt:d,scopes:e,inUseBy:h,createdAt:a.createdAt,updatedAt:a.updatedAt,decryptError:g}}));return l(g)}catch(a){return console.error("[listCredentialsAction]",a),m("db_error","Failed to load credentials")}}async function p(a){try{let b=await n();if(!h.Yj().guid().safeParse(a).success)return m("validation_failed","Invalid credential id");let c=(0,i.Lf)(),[d]=await c.select({id:f.z3.id,ownerUserId:f.z3.ownerUserId}).from(f.z3).where((0,f.eq)(f.z3.id,a));if(!d)return m("not_found","Credential not found");if(d.ownerUserId!==b.userId)return m("forbidden","Access denied");let g=(await c.select({id:f.tK.id}).from(f.tK).where((0,f.eq)(f.tK.credentialId,a))).length;return await c.delete(f.z3).where((0,f.eq)(f.z3.id,a)),(0,e.revalidatePath)("/credentials"),(0,e.revalidatePath)("/connectors"),l({disconnected:g})}catch(a){return console.error("[deleteCredentialAction]",a),m("db_error","Failed to delete credential")}}async function q(a,b){try{let c=await n();if(!h.Yj().guid().safeParse(a).success)return m("validation_failed","Invalid credential id");let d=b.trim();if(0===d.length||d.length>120)return m("validation_failed","Name must be 1–120 characters");let g=(0,i.Lf)(),[j]=await g.select({id:f.z3.id,ownerUserId:f.z3.ownerUserId}).from(f.z3).where((0,f.eq)(f.z3.id,a));if(!j)return m("not_found","Credential not found");if(j.ownerUserId!==c.userId)return m("forbidden","Access denied");return await g.update(f.z3).set({name:d,updatedAt:new Date}).where((0,f.eq)(f.z3.id,a)),(0,e.revalidatePath)("/credentials"),l(void 0)}catch(a){return console.error("[renameCredentialAction]",a),m("db_error","Failed to rename credential")}}async function r(a){try{let b=await n();if(!h.Yj().guid().safeParse(a).success)return m("validation_failed","Invalid credential id");let c=(0,i.Lf)(),[d]=await c.select({id:f.z3.id,ownerUserId:f.z3.ownerUserId}).from(f.z3).where((0,f.eq)(f.z3.id,a));if(!d)return m("not_found","Credential not found");if(d.ownerUserId!==b.userId)return m("forbidden","Access denied");let{expiresAt:g}=await (0,f.Ic)(c,a);return(0,e.revalidatePath)("/credentials"),l({expiresAt:g})}catch(b){let a=b instanceof Error?b.message:String(b);if(console.error("[refreshCredentialAction]",b),a.includes("does not support token refresh"))return m("oauth_no_refresh","This provider does not support token refresh");if(a.includes("missing refreshToken"))return m("missing_refresh_token","Credential is missing refresh token");return m("refresh_failed",`Token refresh failed: ${a}`)}}async function s(a){return(0,f.Se)((0,i.Lf)(),a)}async function t(a){return(0,f.Ic)((0,i.Lf)(),a)}async function u(a){let{ownerUserId:b,credentialType:c,name:d,payload:h}=a,j=(0,i.Lf)(),k=JSON.stringify(h),l=(0,g.ph)(k)?k:(0,g.w)(k),[m]=await j.insert(f.z3).values({ownerUserId:b,name:d,type:c,payload:l}).returning({id:f.z3.id});if(!m)throw Error("persistCredentialFromOauthFlow: insert returned no row");return(0,e.revalidatePath)("/credentials"),{id:m.id}}(0,c(75749).D)([o,p,q,r,s,t,u]),(0,d.A)(o,"40dea393018087820b8327c8c15b44fc1eb0b7dbd4",null),(0,d.A)(p,"406f380bdd655d0df9d2976283847dfb84a2436808",null),(0,d.A)(q,"60b8d838abde3a95a434a5a0ec7c7a5239428e0bb3",null),(0,d.A)(r,"40fcdbd9908b964c7863cbaf0537cb89f4199d80d1",null),(0,d.A)(s,"405ca9a9b7875a72ca6e617f8381b78b3a7af959e6",null),(0,d.A)(t,"405d3a063b94961afec5905ee4598f96941af1fae9",null),(0,d.A)(u,"40f38597e7c0eaf7737d8a8ded270b2bc93b03fd74",null)},60968:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(10476),e=c(64565);function f({guide:a}){let[b,c]=(0,e.useState)(!1);return(0,d.jsxs)("div",{className:"space-y-3",children:[a.intro&&(0,d.jsx)("p",{className:"text-xs text-ink-3 italic",children:a.intro}),b&&a.warning&&(0,d.jsxs)("div",{role:"note",className:"flex gap-2 rounded-md border border-warn/30 bg-warn px-3 py-2 text-xs text-warn",children:[(0,d.jsx)("span",{"aria-hidden":"true",className:"font-bold",children:"!"}),(0,d.jsx)("span",{children:a.warning})]}),(0,d.jsx)("ol",{className:"space-y-2.5",children:a.steps.map(a=>(0,d.jsxs)("li",{className:"flex gap-2",children:[(0,d.jsx)("span",{className:"shrink-0 w-5 h-5 rounded-full bg-hover text-ink-3 text-[10px] font-bold flex items-center justify-center mt-0.5",children:a.number}),(0,d.jsxs)("div",{className:"space-y-1.5 text-sm text-ink-3",children:[(0,d.jsxs)("span",{children:[a.text,a.link&&(0,d.jsxs)(d.Fragment,{children:[" ",(0,d.jsx)("a",{href:a.link.href,target:"_blank",rel:"noopener noreferrer",className:"text-indigo-400 hover:text-indigo-300 underline",children:a.link.label})]})]}),a.subLinks&&a.subLinks.length>0&&(0,d.jsx)("ul",{className:"mt-1 space-y-1 pl-1",children:a.subLinks.map(a=>(0,d.jsxs)("li",{className:"flex items-center gap-1.5 text-xs",children:[(0,d.jsx)("span",{className:"text-ink-4",children:"•"}),(0,d.jsx)("a",{href:a.href,target:"_blank",rel:"noopener noreferrer",className:"text-indigo-400 hover:text-indigo-300 underline",children:a.label})]},a.href))}),a.hint&&(0,d.jsx)("p",{className:"text-xs text-ink-3 italic",children:a.hint})]})]},a.number))}),a.format&&(0,d.jsxs)("p",{className:"text-xs text-ink-3",children:["Format: ",(0,d.jsx)("code",{className:"font-mono text-ink-3",children:a.format})]})]})}},63364:(a,b,c)=>{c.d(b,{A:()=>k});var d=c(10476),e=c(64565),f=c(90424),g=c(60968),h=c(7720);let i={"google-oauth":{label:"Google",callbackPath:"/api/oauth/google-oauth/callback",namePlaceholder:"Mon Google perso",clientIdLabel:"Client ID",clientSecretLabel:"Client secret"},"notion-oauth":{label:"Notion",callbackPath:"/api/oauth/notion-oauth/callback",namePlaceholder:"Mon Notion",clientIdLabel:"OAuth client ID",clientSecretLabel:"OAuth client secret"},"airtable-oauth":{label:"Airtable",callbackPath:"/api/oauth/airtable-oauth/callback",namePlaceholder:"Mon Airtable",clientIdLabel:"Client ID",clientSecretLabel:"Client secret"}},j=[{type:"google-oauth",label:"Google Workspace",description:"Drive, Gmail, Sheets, Docs"},{type:"notion-oauth",label:"Notion",description:"Public OAuth integration"},{type:"airtable-oauth",label:"Airtable",description:"Public OAuth integration"}];function k({initialType:a,returnToConnectorSlug:b,onClose:c}){let[l,m]=(0,e.useState)(a?"setup":"type"),[n,o]=(0,e.useState)(a??null),[p,q]=(0,e.useState)(""),[r,s]=(0,e.useState)(!1),t=(0,e.useRef)(null),u=n?i[n]:null,v=b?`/connectors?connectorSlug=${b}`:"/credentials",w=n?`/api/oauth/${n}/start`:"#";return r?(0,f.createPortal)((0,d.jsxs)("div",{role:"dialog","aria-modal":"true","aria-labelledby":"wizard-title",className:"fixed inset-0 z-50 flex items-center justify-center px-4",children:[(0,d.jsx)("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm",onClick:c,"aria-hidden":"true"}),(0,d.jsxs)("div",{className:"relative bg-paper border border-rule-2 rounded-xl w-full max-w-lg shadow-2xl flex flex-col max-h-[90vh]",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between px-6 py-4 border-b border-rule-2 shrink-0",children:[(0,d.jsx)("h2",{id:"wizard-title",className:"text-base font-semibold text-ink",children:"type"===l?"New credential":u?`Configure ${u.label} credential`:"Configure credential"}),(0,d.jsx)("button",{type:"button",onClick:c,className:"text-ink-3 hover:text-ink transition-colors text-xl leading-none","aria-label":"Close",children:"\xd7"})]}),"type"===l&&(0,d.jsxs)("div",{className:"overflow-y-auto px-6 py-5 space-y-3",children:[(0,d.jsx)("p",{className:"text-sm text-ink-3",children:"Choose the OAuth provider to connect to Nodal-Agents."}),(0,d.jsx)("div",{className:"space-y-2",children:j.map(a=>(0,d.jsxs)("button",{type:"button",onClick:()=>{o(a.type),m("setup")},className:"w-full text-left px-4 py-3 rounded-lg border border-rule-2 hover:border-rule hover:bg-hover transition-colors group",children:[(0,d.jsx)("div",{className:"text-sm font-semibold text-ink group-hover:text-ink",children:a.label}),(0,d.jsx)("div",{className:"text-xs text-ink-3 mt-0.5",children:a.description})]},a.type))}),(0,d.jsx)("div",{className:"pt-2 flex justify-end",children:(0,d.jsx)("button",{type:"button",onClick:c,className:"px-4 py-2 text-sm font-medium border border-rule-2 text-ink-3 rounded-md hover:border-rule hover:text-ink",children:"Cancel"})})]}),"setup"===l&&u&&n&&(0,d.jsxs)("form",{ref:t,method:"POST",action:w,encType:"application/x-www-form-urlencoded",className:"overflow-y-auto px-6 py-5 space-y-5",children:[(0,d.jsx)("input",{type:"hidden",name:"returnTo",value:v}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)("p",{className:"text-xs text-ink-3 font-semibold uppercase tracking-wider",children:"Setup instructions"}),(0,d.jsx)(g.A,{guide:h.o[n]})]}),(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)("p",{className:"text-xs text-ink-3",children:"Authorized redirect URI"}),(0,d.jsxs)("div",{className:"flex items-center gap-2 bg-hover border border-rule rounded-md px-3 py-2",children:[(0,d.jsx)("code",{className:"text-xs text-ink-2 font-mono flex-1 break-all",children:p||"…"}),(0,d.jsx)("button",{type:"button",onClick:function(){p&&navigator.clipboard.writeText(p).then(()=>{})},className:"shrink-0 px-2 py-0.5 text-xs font-medium border border-rule text-ink-3 rounded hover:border-ink-3 hover:text-ink transition-colors",children:"Copy"})]})]}),(0,d.jsxs)("div",{className:"space-y-3 border-t border-rule-2 pt-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsxs)("label",{className:"block text-xs text-ink-3 mb-1",children:["Display name ",(0,d.jsx)("span",{className:"text-ink-4",children:"(optional)"})]}),(0,d.jsx)("input",{name:"name",placeholder:u.namePlaceholder,className:"w-full bg-hover border border-rule rounded-md px-2 py-1.5 text-sm text-ink placeholder:text-ink-4 focus:border-ink-3 focus:outline-none"})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("label",{className:"block text-xs text-ink-3 mb-1",children:u.clientIdLabel}),(0,d.jsx)("input",{name:"clientId",required:!0,autoComplete:"off",className:"w-full bg-hover border border-rule rounded-md px-2 py-1.5 text-sm text-ink focus:border-ink-3 focus:outline-none font-mono"})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("label",{className:"block text-xs text-ink-3 mb-1",children:u.clientSecretLabel}),(0,d.jsx)("input",{name:"clientSecret",type:"password",required:!0,autoComplete:"off",className:"w-full bg-hover border border-rule rounded-md px-2 py-1.5 text-sm text-ink focus:border-ink-3 focus:outline-none font-mono"})]})]}),(0,d.jsxs)("div",{className:"flex gap-2 justify-end pt-1",children:[(0,d.jsx)("button",{type:"button",onClick:c,className:"px-4 py-2 text-sm font-medium border border-rule-2 text-ink-3 rounded-md hover:border-rule hover:text-ink",children:"Cancel"}),!a&&(0,d.jsx)("button",{type:"button",onClick:()=>m("type"),className:"px-4 py-2 text-sm font-medium border border-rule-2 text-ink-3 rounded-md hover:border-rule hover:text-ink",children:"Back"}),(0,d.jsxs)("button",{type:"submit",className:"px-4 py-2 text-sm font-semibold bg-ink text-canvas rounded-md hover:brightness-[0.92]",children:["Continue with ",u.label]})]})]})]})]}),document.body):null}},78184:(a,b,c)=>{c.r(b),c.d(b,{"001118fec506a53ebafc1ac22aced98491da4c33fc":()=>d.pD,"0019568f0902d6686eef0bddd170218a9cd13a17a4":()=>d.Hy,"001bc4cd7d773c42f0abe430aa4938eb24e122f3ed":()=>d.BO,"002d53d8489f05c476e5f803a48c3614924142e2ad":()=>d.zh,"00311575d69fa9b60cf1588f7fa53c6d2500242cc1":()=>d.JD,"0048765ef4a5e8a333fbaa7a3760314bd20d23f015":()=>d.$z,"005448c2fdf7ea031fef0a9bb5d459d3f80ace4a01":()=>d.VZ,"0057a31536542015df37b9b6145037112758805486":()=>d.oA,"006500fa84da35180ad8b9f3415bb706d7347ebb68":()=>d.Ko,"006a72d5a5e11e139d3a629fbcceea11c7cd5c08da":()=>d.Ql,"0076075a5351358daf5440c7f69c63cad833707b88":()=>d.$5,"00aace867a6070eec006371aaaed42397c2785bfe6":()=>d.Le,"00ac3cfbc9ad58456e1c96ee7bbed8abd374cb9fb1":()=>d.dO,"00bb2c47dd550c0d9c909b5fb85756329ff7d9cea3":()=>d.oG,"00bd01420b7cbef1105228a0534621bafacec7779b":()=>d.Zz,"00ebe221f142ec550145255224d88d2cb96b772d57":()=>d.$4,"00faeafbce3e40c7196643c0d91e31e27e7d0588bd":()=>d.M3,"00fc10be23e1699b25c4b506e5f22f8f4a8306e915":()=>d.cj,"4003a311e8660fcf139991909c492b3bd2aad7fe7e":()=>d.Hp,"4003fcb873df0181574d42fb4bea2505b54e5ed549":()=>d.hl,"400539c555b2a3f2f29167cb5dec3c4dcc8fc2d2b2":()=>d.WH,"40065cb48ee796d72efbd9822168ea1e87a4cb36b6":()=>d.cu,"40071f10ccaf7f47f1aff1afc670b23b607d4036f7":()=>d.t3,"4009f2c76b78aa07f023a9dc32a2473dd3e025cb58":()=>d.e4,"40106e1cae696378c9f7f89b4d0cc511df13c968d3":()=>d.QT,"4011a0e49507079213b6ce631cd4903ec46942f9e1":()=>d.Ke,"401a9d0eede57ee72eff7a603fef0186534def2d16":()=>d.Mo,"401fb2fc43a246b86d42f57b7c4be4b6c300a83665":()=>d.f_,"40245a2e007dbf597e697c65a7beb167abca4eab76":()=>d.X1,"4028e336e8831dd6916335467985f84baa9e94eab6":()=>d.P7,"402954a3df2b9ee001c5800e517d091e054d42326f":()=>d.Rz,"402c4f6416df32089c620b7f64b97ca1064e785d79":()=>d.c6,"402d0472dc019335cd4c5fe97bebaeb18ad96af5ee":()=>d.cr,"40357e9b617de7a42a00d52bfc453c33b6f103ba73":()=>d.LN,"40372879d5da92091f87db2e88fc4d7cd3fa583f07":()=>d.oC,"403efba0f740b490b80e06367cb020a727cfe0efd9":()=>d.PH,"403f4b46d48174379803fe1c702be11cf63736ef46":()=>d.PD,"404505375417085440a1ea853c50f33e5723dbbf0f":()=>d.Og,"40555201ad9b6108567fd1e445b41bb86aa9c548db":()=>d.CV,"40590ff01cd1433bab93ae7eb66ebde0137b32b0a4":()=>d.ei,"405baecc1b1556260c43db88c1cbdea3f44aa47fea":()=>d.HO,"405ca9a9b7875a72ca6e617f8381b78b3a7af959e6":()=>e.Gw,"405d3a063b94961afec5905ee4598f96941af1fae9":()=>e._E,"405da710852dfaf045979eb3bf4150d08015bfde18":()=>d.gE,"4060518a20de7e0d8a313a1b4a6bef1026af5fced1":()=>d.rf,"40636072bcb4efeb9d67f99498d3e984b1f52b51fc":()=>d.eP,"4068d449799d0839162c8c459eef6518ec3cec8eb1":()=>d.ZA,"406b65614d4cacc360468c40774fa06b20027069fe":()=>d._N,"406f380bdd655d0df9d2976283847dfb84a2436808":()=>e.Bs,"4072660be3387fc94a2f35564292dc159448f98a7b":()=>d.hP,"40767bfec90d74a95e600d8e748e02d76eef253591":()=>d.xV,"408a1c1b6416b62e96523dd4e7ffcf5b12406ff7ce":()=>d.Cy,"408b4374239f76207d53f760182cb5fa1a0aa2c1b1":()=>d.fG,"4093b63348b2c91afebb7d849fe8684cfab209c898":()=>d.Sb,"40966b799f3997fdc3e28e08a3b7528a040b60e561":()=>d.Ro,"40968376cf71f09beaceb5af45c00b88be86871e29":()=>d.fI,"40973a7505dd99f7f4dacf03329c545e6232fdb414":()=>d.iu,"409f0187893df968935c2166f22e9dabae2abe4464":()=>d.UR,"409f4ab91df4d32671bf967344110ced9c96f10297":()=>d._x,"40a7f7bf4b0aeb563c1db894ceacea5e1dea08b2ce":()=>d.ZG,"40ab6014ab962aa75535b730138f33a7c194212b24":()=>d.lV,"40ada2c69823752e444b44b7c81e93fe8382e8c9ae":()=>d.TD,"40b115e61af8fe747478744e8f07874837f936874b":()=>d.Ev,"40b38a9c4fa75e580a3d3e1ebd8ba080128c87ec86":()=>d.EA,"40c4d9f44c5c83d4d994cb041dc39a2032fa1a66f6":()=>d.JH,"40cbf23b485b0477c2fbdcffc6fcd45c4e64dc7b69":()=>d.Wq,"40cf8c4d455e06e10c47377dcd0525b8b750528bf8":()=>d.S2,"40d8a7cf9d32867c652a507e7e79627a989e33f8b7":()=>d.y4,"40db892b53bab82020950fb6c30d9c7508bd5ce3aa":()=>d.rv,"40dc3ad156374b24f4932c45c207a6b5ded0fafe31":()=>d.fl,"40dd345d903fe6038aa991e0d968ff178175882e76":()=>d.Sh,"40dea393018087820b8327c8c15b44fc1eb0b7dbd4":()=>e.FT,"40dfa1a88b09411e717b886e57790a314b93d531cb":()=>d.By,"40ecb72d2da458a2330753fee3e93712648aaccff0":()=>d.rT,"40ed173541653487cad77e8d24aa71717dda4514fd":()=>d.Jb,"40f38597e7c0eaf7737d8a8ded270b2bc93b03fd74":()=>e.DF,"40f886db2aa6738396c9820d79573481e8094556fe":()=>d.bN,"40f91faf74d47eaf54ef1581686fdb3d9c75750615":()=>d.AS,"40f9451906485ec5f95da3d81bbf331d881b1122f2":()=>d.iU,"40fcdbd9908b964c7863cbaf0537cb89f4199d80d1":()=>e.Jh,"40ff895a5d4055dd297090905f6cc38c251f57f966":()=>d.pu,"602e220c0c1799f123879c32ef57a75671b75d54dc":()=>d.f2,"60387ec0d39228d66c460aac5516bbad2b8106ba4e":()=>d.qo,"604e81f2153543d44bfbe02554eee33fe9c7eb41b6":()=>d.c2,"60524bd713205b07644a694f98b443e218cba53d69":()=>d.Ru,"60828079bdf7ac1433de3e057d76fdc01ba138233a":()=>d.dd,"60aec87a5bf59e09f43f85105b3e58327f98feb9e8":()=>d.yU,"60b8d838abde3a95a434a5a0ec7c7a5239428e0bb3":()=>e.Av,"60d33abe965baee12ec705d093bdd07654d00f0e22":()=>d.vu,"60f81a329cff55c862f755a177ae79c649aa3918e9":()=>d.wI,"708a8804d4c430873c5b65db43c98c43242eedaa68":()=>d.Oc,"70c07e81341877e5e3d66c5a105d95552fec935b4b":()=>d.z_,"70ee6bc3c68327436b7c4c9a6a288eb852a0c29082":()=>d.ch,"70fc0d769386dec2ad11c3269f562ca2c1e2871493":()=>d.Jc,"7804a10eab6db5a571bf689eb41c33f0ea7e323820":()=>d.wj,"78387ce7c2490d9e4084990b4dcfdc1611724686e5":()=>d.AH});var d=c(5786),e=c(28881)}};
|
|
1
|
+
"use strict";exports.id=5869,exports.ids=[5869],exports.modules={7720:(a,b,c)=>{c.d(b,{m:()=>e,o:()=>d});let d={"google-oauth":{title:"Get your Google OAuth credentials",intro:"You need a Google Cloud project with the relevant APIs enabled.",steps:[{number:1,text:"Go to Google Cloud Console and create a new project (any name).",link:{href:"https://console.cloud.google.com/",label:"console.cloud.google.com"}},{number:2,text:"Enable each API your agents will use — click the links below, then hit Enable:",subLinks:[{href:"https://console.cloud.google.com/apis/library/drive.googleapis.com",label:"Drive API"},{href:"https://console.cloud.google.com/apis/library/gmail.googleapis.com",label:"Gmail API"},{href:"https://console.cloud.google.com/apis/library/sheets.googleapis.com",label:"Sheets API"},{href:"https://console.cloud.google.com/apis/library/docs.googleapis.com",label:"Docs API"}]},{number:3,text:"In the left menu, go to APIs & Services → OAuth consent screen. Choose User Type: External, fill in the app name, then add your own email as a Test user."},{number:4,text:"Go to APIs & Services → Credentials → Create credentials → OAuth client ID → Application type: Web application."},{number:5,text:"Under Authorized JavaScript origins, add the origin shown below the form."},{number:6,text:"Under Authorized redirect URIs, paste the redirect URI shown below the form. This step is mandatory — Google rejects the connection if it is missing or differs by even one character.",hint:"Most common cause of failure when trying to connect."},{number:7,text:"Click Create. A dialog shows your Client ID and Client secret. Copy both."},{number:8,text:"Paste them into the fields below."}],format:"Client ID ends with .apps.googleusercontent.com"},"notion-oauth":{title:"Get your Notion OAuth credentials",intro:"You need a Public integration — not an Internal one. The distinction matters.",steps:[{number:1,text:"Go to Notion integrations and click + New integration.",link:{href:"https://www.notion.so/my-integrations",label:"notion.so/my-integrations"}},{number:2,text:"Set Integration type to Public (not Internal — Internal tokens are single-workspace only and cannot do OAuth).",hint:'If you see no "Type" field, you are on the wrong page.'},{number:3,text:"Fill in a name and optional logo. Under Capabilities, check at minimum: Read content, Update content, Insert content."},{number:4,text:"In the OAuth Domain & URIs section, paste the redirect URI shown below the form. This step is mandatory — Notion rejects the connection if it is missing or differs by even one character.",hint:"Most common cause of failure when trying to connect."},{number:5,text:"Click Submit. On the integration page, open the Secrets tab."},{number:6,text:"Copy the OAuth client ID (a UUID) and the OAuth client secret."},{number:7,text:"Paste them into the fields below."}],format:"Client ID is a UUID. Secret starts with secret_"},"airtable-oauth":{title:"Get your Airtable OAuth credentials",warning:"Airtable only accepts localhost or an HTTPS redirect URI — raw LAN IPs (e.g. 192.168.x.x) are rejected. Open the dashboard at http://localhost:3000 just for this flow. The resulting credential works from any host afterwards.",warningWhen:"lan-ip-only",steps:[{number:1,text:"Go to the Airtable OAuth integration page and click Register new OAuth integration.",link:{href:"https://airtable.com/create/oauth",label:"airtable.com/create/oauth"}},{number:2,text:"Give it a name (e.g. Nodal-Agents)."},{number:3,text:"In the Redirect URIs section, paste the redirect URI shown below the form. This step is mandatory — Airtable rejects the connection if it is missing or differs by even one character.",hint:"Most common cause of failure when trying to connect."},{number:4,text:"In the Scopes section, check the four scopes: data.records:read, data.records:write, schema.bases:read, schema.bases:write — then save / update the integration so the scopes are persisted.",hint:'If the scopes are not saved, Airtable returns "invalid_scope" during the OAuth flow.'},{number:5,text:"Click Register integration (or Save changes if editing an existing one)."},{number:6,text:"On the integration detail page, copy the Client ID and Client secret."},{number:7,text:"Paste them into the fields below."}],format:"Client ID is a UUID. Secret is longer."}},e={notion:{title:"Get your Notion Internal Integration Token",intro:"This is the Internal integration flow — single workspace, no OAuth redirect. Different from the Notion OAuth credential.",steps:[{number:1,text:"Go to Notion integrations and click + New integration.",link:{href:"https://www.notion.so/my-integrations",label:"notion.so/my-integrations"}},{number:2,text:"Set Integration type to Internal (not Public). Select your workspace."},{number:3,text:"Under Capabilities, check at minimum: Read content, Update content, Insert content."},{number:4,text:"Click Submit. On the integration page, open the Secrets tab and copy the Internal Integration Token."},{number:5,text:"Important: for each Notion page the agent should access, open the page, click the \xb7\xb7\xb7 menu → Connections → select your integration name.",hint:'Without this step the agent gets "object not found" errors.'}],format:"Token starts with secret_"},airtable:{title:"Get your Airtable Personal Access Token",steps:[{number:1,text:"Go to the Airtable token creation page and click Create new token.",link:{href:"https://airtable.com/create/tokens",label:"airtable.com/create/tokens"}},{number:2,text:"Give it a name. Under Scopes, add at minimum: data.records:read, data.records:write, schema.bases:read."},{number:3,text:"Under Access, choose the specific bases to expose or select All workspaces."},{number:4,text:"Click Create token and copy the value immediately — Airtable hides it after you close the dialog."}],format:"Token starts with pat"},apify:{title:"Get your Apify API token",steps:[{number:1,text:"Go to the Apify integrations page.",link:{href:"https://console.apify.com/account/integrations",label:"console.apify.com/account/integrations"}},{number:2,text:"Under API tokens, either copy the default Personal API token or click Create new token to generate a dedicated one."},{number:3,text:"Paste the token into the field below."}],format:"Token starts with apify_api_"},firecrawl:{title:"Get your Firecrawl API key",steps:[{number:1,text:"Go to your Firecrawl account page and navigate to API Keys.",link:{href:"https://www.firecrawl.dev/account",label:"firecrawl.dev/account"}},{number:2,text:"Copy your existing key or click to generate a new one, then paste it below."}],format:"Key starts with fc-"},tavily:{title:"Get your Tavily API key",steps:[{number:1,text:"Go to the Tavily app and open the API section.",link:{href:"https://app.tavily.com/",label:"app.tavily.com"}},{number:2,text:"Copy your API key and paste it below."}],format:"Key starts with tvly-"}}},28881:(a,b,c)=>{c.d(b,{Av:()=>q,Bs:()=>p,DF:()=>u,FT:()=>o,Gw:()=>s,Jh:()=>r,_E:()=>t});var d=c(43607),e=c(87388),f=c(48849),g=c(98472),h=c(61989),i=c(95488),j=c(42112),k=c(66402);function l(a){return{ok:!0,data:a}}function m(a,b){return{ok:!1,code:a,message:b}}async function n(){let a,b=(0,i.Iz)();try{let b=await (0,k.headers)();a=new Request("http://localhost/",{headers:b})}catch{a=new Request("http://localhost/")}return(0,j.oC)(a,b)}async function o(a){try{let b=await n(),c=(0,i.Lf)(),d=await c.select().from(f.z3).where((0,f.eq)(f.z3.ownerUserId,b.userId)),e=void 0!==a?d.filter(b=>b.type===a):d,g=await Promise.all(e.map(async a=>{let b=null,d=null,e=null,g=null;try{let g=await (0,f.G0)(c,a.id);g&&(b=g.payload.accountName??null,d=g.payload.expiresAt?new Date(g.payload.expiresAt):null,e=g.payload.scopes??null)}catch(a){g=a instanceof Error?a.message:"decrypt_failed"}let h=(await c.select({id:f.tK.id,slug:f.tK.slug}).from(f.tK).where((0,f.eq)(f.tK.credentialId,a.id))).map(a=>({connectorSlug:a.slug,connectorId:a.id}));return{id:a.id,name:a.name,type:a.type,accountName:b,expiresAt:d,scopes:e,inUseBy:h,createdAt:a.createdAt,updatedAt:a.updatedAt,decryptError:g}}));return l(g)}catch(a){return console.error("[listCredentialsAction]",a),m("db_error","Failed to load credentials")}}async function p(a){try{let b=await n();if(!h.Yj().guid().safeParse(a).success)return m("validation_failed","Invalid credential id");let c=(0,i.Lf)(),[d]=await c.select({id:f.z3.id,ownerUserId:f.z3.ownerUserId}).from(f.z3).where((0,f.eq)(f.z3.id,a));if(!d)return m("not_found","Credential not found");if(d.ownerUserId!==b.userId)return m("forbidden","Access denied");let g=(await c.select({id:f.tK.id}).from(f.tK).where((0,f.eq)(f.tK.credentialId,a))).length;return await c.delete(f.z3).where((0,f.eq)(f.z3.id,a)),(0,e.revalidatePath)("/credentials"),(0,e.revalidatePath)("/connectors"),l({disconnected:g})}catch(a){return console.error("[deleteCredentialAction]",a),m("db_error","Failed to delete credential")}}async function q(a,b){try{let c=await n();if(!h.Yj().guid().safeParse(a).success)return m("validation_failed","Invalid credential id");let d=b.trim();if(0===d.length||d.length>120)return m("validation_failed","Name must be 1–120 characters");let g=(0,i.Lf)(),[j]=await g.select({id:f.z3.id,ownerUserId:f.z3.ownerUserId}).from(f.z3).where((0,f.eq)(f.z3.id,a));if(!j)return m("not_found","Credential not found");if(j.ownerUserId!==c.userId)return m("forbidden","Access denied");return await g.update(f.z3).set({name:d,updatedAt:new Date}).where((0,f.eq)(f.z3.id,a)),(0,e.revalidatePath)("/credentials"),l(void 0)}catch(a){return console.error("[renameCredentialAction]",a),m("db_error","Failed to rename credential")}}async function r(a){try{let b=await n();if(!h.Yj().guid().safeParse(a).success)return m("validation_failed","Invalid credential id");let c=(0,i.Lf)(),[d]=await c.select({id:f.z3.id,ownerUserId:f.z3.ownerUserId}).from(f.z3).where((0,f.eq)(f.z3.id,a));if(!d)return m("not_found","Credential not found");if(d.ownerUserId!==b.userId)return m("forbidden","Access denied");let{expiresAt:g}=await (0,f.Ic)(c,a);return(0,e.revalidatePath)("/credentials"),l({expiresAt:g})}catch(b){let a=b instanceof Error?b.message:String(b);if(console.error("[refreshCredentialAction]",b),a.includes("does not support token refresh"))return m("oauth_no_refresh","This provider does not support token refresh");if(a.includes("missing refreshToken"))return m("missing_refresh_token","Credential is missing refresh token");return m("refresh_failed",`Token refresh failed: ${a}`)}}async function s(a){return(0,f.Se)((0,i.Lf)(),a)}async function t(a){return(0,f.Ic)((0,i.Lf)(),a)}async function u(a){let{ownerUserId:b,credentialType:c,name:d,payload:h}=a,j=(0,i.Lf)(),k=JSON.stringify(h),l=(0,g.ph)(k)?k:(0,g.w)(k),[m]=await j.insert(f.z3).values({ownerUserId:b,name:d,type:c,payload:l}).returning({id:f.z3.id});if(!m)throw Error("persistCredentialFromOauthFlow: insert returned no row");return(0,e.revalidatePath)("/credentials"),{id:m.id}}(0,c(75749).D)([o,p,q,r,s,t,u]),(0,d.A)(o,"40f06dcb7532017cc3901ee9d88670d2592b0c6f13",null),(0,d.A)(p,"400f645286a7da4ea924e6df40336998246aa7049f",null),(0,d.A)(q,"602246b8947868eae862822a1d275edd68e9bac278",null),(0,d.A)(r,"4013c5a9a65a68264de6ef7a909605b4c88f3fb7a0",null),(0,d.A)(s,"40ccfeec1aad5aabf95868b2ec643cf9b175d79bdc",null),(0,d.A)(t,"409c1d7dbc8d0ebb5d4e72d9c45c32735042bb7e06",null),(0,d.A)(u,"40464486e7c08e10648111603b3b74816af8b82c4f",null)},60968:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(10476),e=c(64565);function f({guide:a}){let[b,c]=(0,e.useState)(!1);return(0,d.jsxs)("div",{className:"space-y-3",children:[a.intro&&(0,d.jsx)("p",{className:"text-xs text-ink-3 italic",children:a.intro}),b&&a.warning&&(0,d.jsxs)("div",{role:"note",className:"flex gap-2 rounded-md border border-warn/30 bg-warn px-3 py-2 text-xs text-warn",children:[(0,d.jsx)("span",{"aria-hidden":"true",className:"font-bold",children:"!"}),(0,d.jsx)("span",{children:a.warning})]}),(0,d.jsx)("ol",{className:"space-y-2.5",children:a.steps.map(a=>(0,d.jsxs)("li",{className:"flex gap-2",children:[(0,d.jsx)("span",{className:"shrink-0 w-5 h-5 rounded-full bg-hover text-ink-3 text-[10px] font-bold flex items-center justify-center mt-0.5",children:a.number}),(0,d.jsxs)("div",{className:"space-y-1.5 text-sm text-ink-3",children:[(0,d.jsxs)("span",{children:[a.text,a.link&&(0,d.jsxs)(d.Fragment,{children:[" ",(0,d.jsx)("a",{href:a.link.href,target:"_blank",rel:"noopener noreferrer",className:"text-indigo-400 hover:text-indigo-300 underline",children:a.link.label})]})]}),a.subLinks&&a.subLinks.length>0&&(0,d.jsx)("ul",{className:"mt-1 space-y-1 pl-1",children:a.subLinks.map(a=>(0,d.jsxs)("li",{className:"flex items-center gap-1.5 text-xs",children:[(0,d.jsx)("span",{className:"text-ink-4",children:"•"}),(0,d.jsx)("a",{href:a.href,target:"_blank",rel:"noopener noreferrer",className:"text-indigo-400 hover:text-indigo-300 underline",children:a.label})]},a.href))}),a.hint&&(0,d.jsx)("p",{className:"text-xs text-ink-3 italic",children:a.hint})]})]},a.number))}),a.format&&(0,d.jsxs)("p",{className:"text-xs text-ink-3",children:["Format: ",(0,d.jsx)("code",{className:"font-mono text-ink-3",children:a.format})]})]})}},63364:(a,b,c)=>{c.d(b,{A:()=>k});var d=c(10476),e=c(64565),f=c(90424),g=c(60968),h=c(7720);let i={"google-oauth":{label:"Google",callbackPath:"/api/oauth/google-oauth/callback",namePlaceholder:"Mon Google perso",clientIdLabel:"Client ID",clientSecretLabel:"Client secret"},"notion-oauth":{label:"Notion",callbackPath:"/api/oauth/notion-oauth/callback",namePlaceholder:"Mon Notion",clientIdLabel:"OAuth client ID",clientSecretLabel:"OAuth client secret"},"airtable-oauth":{label:"Airtable",callbackPath:"/api/oauth/airtable-oauth/callback",namePlaceholder:"Mon Airtable",clientIdLabel:"Client ID",clientSecretLabel:"Client secret"}},j=[{type:"google-oauth",label:"Google Workspace",description:"Drive, Gmail, Sheets, Docs"},{type:"notion-oauth",label:"Notion",description:"Public OAuth integration"},{type:"airtable-oauth",label:"Airtable",description:"Public OAuth integration"}];function k({initialType:a,returnToConnectorSlug:b,onClose:c}){let[l,m]=(0,e.useState)(a?"setup":"type"),[n,o]=(0,e.useState)(a??null),[p,q]=(0,e.useState)(""),[r,s]=(0,e.useState)(!1),t=(0,e.useRef)(null),u=n?i[n]:null,v=b?`/connectors?connectorSlug=${b}`:"/credentials",w=n?`/api/oauth/${n}/start`:"#";return r?(0,f.createPortal)((0,d.jsxs)("div",{role:"dialog","aria-modal":"true","aria-labelledby":"wizard-title",className:"fixed inset-0 z-50 flex items-center justify-center px-4",children:[(0,d.jsx)("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm",onClick:c,"aria-hidden":"true"}),(0,d.jsxs)("div",{className:"relative bg-paper border border-rule-2 rounded-xl w-full max-w-lg shadow-2xl flex flex-col max-h-[90vh]",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between px-6 py-4 border-b border-rule-2 shrink-0",children:[(0,d.jsx)("h2",{id:"wizard-title",className:"text-base font-semibold text-ink",children:"type"===l?"New credential":u?`Configure ${u.label} credential`:"Configure credential"}),(0,d.jsx)("button",{type:"button",onClick:c,className:"text-ink-3 hover:text-ink transition-colors text-xl leading-none","aria-label":"Close",children:"\xd7"})]}),"type"===l&&(0,d.jsxs)("div",{className:"overflow-y-auto px-6 py-5 space-y-3",children:[(0,d.jsx)("p",{className:"text-sm text-ink-3",children:"Choose the OAuth provider to connect to Nodal-Agents."}),(0,d.jsx)("div",{className:"space-y-2",children:j.map(a=>(0,d.jsxs)("button",{type:"button",onClick:()=>{o(a.type),m("setup")},className:"w-full text-left px-4 py-3 rounded-lg border border-rule-2 hover:border-rule hover:bg-hover transition-colors group",children:[(0,d.jsx)("div",{className:"text-sm font-semibold text-ink group-hover:text-ink",children:a.label}),(0,d.jsx)("div",{className:"text-xs text-ink-3 mt-0.5",children:a.description})]},a.type))}),(0,d.jsx)("div",{className:"pt-2 flex justify-end",children:(0,d.jsx)("button",{type:"button",onClick:c,className:"px-4 py-2 text-sm font-medium border border-rule-2 text-ink-3 rounded-md hover:border-rule hover:text-ink",children:"Cancel"})})]}),"setup"===l&&u&&n&&(0,d.jsxs)("form",{ref:t,method:"POST",action:w,encType:"application/x-www-form-urlencoded",className:"overflow-y-auto px-6 py-5 space-y-5",children:[(0,d.jsx)("input",{type:"hidden",name:"returnTo",value:v}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)("p",{className:"text-xs text-ink-3 font-semibold uppercase tracking-wider",children:"Setup instructions"}),(0,d.jsx)(g.A,{guide:h.o[n]})]}),(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)("p",{className:"text-xs text-ink-3",children:"Authorized redirect URI"}),(0,d.jsxs)("div",{className:"flex items-center gap-2 bg-hover border border-rule rounded-md px-3 py-2",children:[(0,d.jsx)("code",{className:"text-xs text-ink-2 font-mono flex-1 break-all",children:p||"…"}),(0,d.jsx)("button",{type:"button",onClick:function(){p&&navigator.clipboard.writeText(p).then(()=>{})},className:"shrink-0 px-2 py-0.5 text-xs font-medium border border-rule text-ink-3 rounded hover:border-ink-3 hover:text-ink transition-colors",children:"Copy"})]})]}),(0,d.jsxs)("div",{className:"space-y-3 border-t border-rule-2 pt-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsxs)("label",{className:"block text-xs text-ink-3 mb-1",children:["Display name ",(0,d.jsx)("span",{className:"text-ink-4",children:"(optional)"})]}),(0,d.jsx)("input",{name:"name",placeholder:u.namePlaceholder,className:"w-full bg-hover border border-rule rounded-md px-2 py-1.5 text-sm text-ink placeholder:text-ink-4 focus:border-ink-3 focus:outline-none"})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("label",{className:"block text-xs text-ink-3 mb-1",children:u.clientIdLabel}),(0,d.jsx)("input",{name:"clientId",required:!0,autoComplete:"off",className:"w-full bg-hover border border-rule rounded-md px-2 py-1.5 text-sm text-ink focus:border-ink-3 focus:outline-none font-mono"})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("label",{className:"block text-xs text-ink-3 mb-1",children:u.clientSecretLabel}),(0,d.jsx)("input",{name:"clientSecret",type:"password",required:!0,autoComplete:"off",className:"w-full bg-hover border border-rule rounded-md px-2 py-1.5 text-sm text-ink focus:border-ink-3 focus:outline-none font-mono"})]})]}),(0,d.jsxs)("div",{className:"flex gap-2 justify-end pt-1",children:[(0,d.jsx)("button",{type:"button",onClick:c,className:"px-4 py-2 text-sm font-medium border border-rule-2 text-ink-3 rounded-md hover:border-rule hover:text-ink",children:"Cancel"}),!a&&(0,d.jsx)("button",{type:"button",onClick:()=>m("type"),className:"px-4 py-2 text-sm font-medium border border-rule-2 text-ink-3 rounded-md hover:border-rule hover:text-ink",children:"Back"}),(0,d.jsxs)("button",{type:"submit",className:"px-4 py-2 text-sm font-semibold bg-ink text-canvas rounded-md hover:brightness-[0.92]",children:["Continue with ",u.label]})]})]})]})]}),document.body):null}},69852:(a,b,c)=>{c.r(b),c.d(b,{"00238630ef43c629c16c2e1932f519ec1664fb7905":()=>d.Le,"002825e296e007f12d9e514c3eba3eb9199882e325":()=>d.pD,"003f817b1a4ed1f5249bfe1cc8a366b8731c36e311":()=>d.BO,"0057c828149c14de7344c7ce139adb2d8aeabbd452":()=>d.JD,"00632374186aa5fc216c8143671787c2841aac3650":()=>d.$z,"006b91f517d76998351152cd850413fea9b8fbf8bf":()=>d.$5,"0081f522e01f011e0bb7b001985bbc80f6ed67ff91":()=>d.Ql,"0089e6dd4be7fd6de3ca86e26ca9e32e714637418e":()=>d.cj,"008d9ddbfc6deefb2c17ce9387d9ccaa7c8eb0a8e3":()=>d.VZ,"008e6f9aebbe101c58c7a064aec1ff67092c9a4aea":()=>d.zh,"008e986bf66a493b15917be1faaff93ec8628eb559":()=>d.oG,"0092ea3caaa881ead205da11fcf6b2e262d83b340e":()=>d.dO,"00a2b38e800258261677d08ba6896f92176080b688":()=>d.M3,"00b3800838fa282bfd0ba971d8be305cda28dbbc83":()=>d.GY,"00de58ab168c629eeec9a50da6bbeaa55dfef81162":()=>d.Ko,"00e51eae0cdb7965abbc1c4b02dab365933b06ab2a":()=>d.$4,"00e60f5fea4ffe0e159d85edc4c4d1ae2b20533a6a":()=>d.Zz,"00ecb7ac971c0df546b19068c8725c7952f2535045":()=>d.Hy,"00f5fb4d411e4f3c201f110f3e062584c37d2f0424":()=>d.oA,"40001c3049c784f01ef64a221459316f3aafec3ae6":()=>d.y4,"4003bbfe3d05a6edcfaac34009790b8c31df7e58b6":()=>d.kh,"400c4038f78f77cb89bcf0f7158f5ed33a565a3c9f":()=>d.Mo,"400f645286a7da4ea924e6df40336998246aa7049f":()=>e.Bs,"401194ebc2ec01c67e66bd378e92e8f7da7119b254":()=>d.rf,"4013c5a9a65a68264de6ef7a909605b4c88f3fb7a0":()=>e.Jh,"401f8bab08fa0d5b6a07b6b7a3bb4441a662ff7650":()=>d.t3,"4025cc46f84f706e010eff581d7fcff14fa43f9d01":()=>d.cr,"4028f6258dc63c9aa84ada74d0cf04acd75192a205":()=>d.S2,"4029bff33da78c815f70f40108b502b26addd6505e":()=>d.Ev,"402c37dc7f4aa86b5a8b1359daba3113d0f1bf22e8":()=>d.p5,"40326a73741b7ad213b7c8520ce7e49bc180c0cf03":()=>d.fI,"40354dae7d737bfd0cb90da886469a9538c6a45631":()=>d.Hl,"40374658f030cfc80ee396075314d2628ef72e1183":()=>d.oC,"4038cd4d05bd4f2d8e8bb287d3439465c42b83c917":()=>d.ZG,"40397fc0fc0078ae5140c6022f979096911b322b4e":()=>d.Sh,"403b1c9b4efc4ba331cc340a4fa271fda5f291b2af":()=>d.EA,"40464486e7c08e10648111603b3b74816af8b82c4f":()=>e.DF,"40486dc3966eeb1da3395577eeacb2484f0de7ece4":()=>d.eP,"404fa763548e55486c7d48b1bfe3280f2cb9b5570f":()=>d.LN,"40516662615bdb11b4f57068e0287cbc33f7e54437":()=>d.hP,"4053248a035964b2cb73d81c387ae63a7d629fa23b":()=>d.iu,"4056fb7d7b49b25f3dd03679e0de2a10b93f975800":()=>d.Jb,"405d0436e852d1cb8f39fb9f8ca84287800dc05fd7":()=>d.Og,"4063a4a64be640d04af0a740a4a76e6e3e33da8a24":()=>d.iU,"4064b758829cb02bea5d8c4370b4c6df7db35388bc":()=>d.bN,"4068ff9a171502967a662249a63fea455ebeb17d75":()=>d.QT,"40728435d58e0e6a30b5733901ff09f2118a5ecf06":()=>d.WH,"4072c8f70fba612cad27eaf01f205ee71dd64e473c":()=>d.CV,"407642c815fc149ae38ccb662aab71b73209eb4cc5":()=>d.D5,"407a1e7dff83899c2aaab4e4466bea4bc01e2a338d":()=>d.fG,"407bb8e987eb7c4d5b6ac1a6bfceeff428b667e979":()=>d.P7,"407c76b7fcdb356464fe8ff037f37fe5b836f95ae5":()=>d.bV,"4081871ee2792615dd755cb012a2a76a48c61ed0d5":()=>d.Rz,"408fde198255a245b64ab9fc3a2ac1c5b3e19aac11":()=>d.UR,"4092842831070694cbfccb2f441a08a5d412239d2d":()=>d.e4,"40960722b29b3b45b56500b4c9bd7d4b986e34b0b4":()=>d.Cy,"40960f8c1e37bb13acaf2b29b4992f5516920a7385":()=>d._N,"40970b61c9a1c802e33fb194730d126601f4f61e10":()=>d.By,"409c1d7dbc8d0ebb5d4e72d9c45c32735042bb7e06":()=>e._E,"40a90865711d29328542eeefcfbf31ff8f1cae680b":()=>d.gE,"40ac17b229887b843a805eb127e57758d9dbaad73e":()=>d.cu,"40affec4d400dddc20ba36af79e18ebf31cfb7132a":()=>d.lV,"40b739e029a946a48ebffaa90c330bfdf53cd3b4b4":()=>d.Ro,"40bbfaf8cc5515558ea3f1f6ecc5228f2dc3834164":()=>d.pu,"40bd2237a21d2d9761ef9b8ac1e4b6de54403bd118":()=>d.f_,"40c1731d332f8968a708b3bf33fe98e60b75ec3d0c":()=>d._x,"40c8afff0e3536cbca7cae83cff39367bc96a97e1a":()=>d.Wq,"40ccfeec1aad5aabf95868b2ec643cf9b175d79bdc":()=>e.Gw,"40cefdf76f00a3be515b9000588fc52b96131afa44":()=>d.rv,"40d1287e2241eabb1dd30d799a4571d00b370bca35":()=>d.ei,"40d14da0c59b9db0e0a96d57d2a234322ac261b911":()=>d.Ir,"40d208b861bf1d3211c4ea7f2b9503f8c835d48fbc":()=>d.JH,"40d52523d17a2f064cd730cf5c1b2545e308085da3":()=>d.AS,"40da33e5b18b3f193f9bb7b7c54945e9243ff55169":()=>d.ZA,"40dd867bdf3733254597824522c21615bfab158981":()=>d.Ke,"40e12cc0fa29ed73d5a2d80c2278a390a5dd121729":()=>d.PH,"40e4220f195e166b9602e6d0118e7f5de848c5004b":()=>d.Sb,"40e521ef7629d00069e11b432326461050568ebf07":()=>d.wI,"40e7d01e7d67f81b4789f33a49f82577943c190ff3":()=>d.rT,"40e811e3ff3543d9d50d8caa62cfb6a265c470b43e":()=>d.HO,"40ecf2633c4bd879bfe7f47370dcdd47a2fc5e9fa2":()=>d.hl,"40f06dcb7532017cc3901ee9d88670d2592b0c6f13":()=>e.FT,"40f3920c118313ec35945e5bb6f894b6c672159799":()=>d.TD,"40f55a6b16dc6c4dabea39cae866e33fab883288d4":()=>d.Hp,"40f5d0ec2d3605c0fc3559cb07d9c6f9f19c1e1f81":()=>d.xV,"40f6130b53a888e0b3eb493c60482caffdc73e7733":()=>d.mJ,"40fa88548602e19b4a073fbad6f8cd0cf3ce7e8140":()=>d.c6,"40fbabd61360555b5f62977898c62d166442c7f69a":()=>d.X1,"40fe6fcf33f1e29c689c45603faa5d21d905c91ef4":()=>d.fl,"40fe93fc1da1c51302751dccf750bc264a35f9d098":()=>d.PD,"602246b8947868eae862822a1d275edd68e9bac278":()=>e.Av,"602650322a12eea7645bab531344604e9ceb0fe930":()=>d.yU,"603a14af39fa43d3b7102f02f2695ce501c0abc886":()=>d.dl,"607b1c4904a358a4a7b23e556c3ce700a8622f6276":()=>d.dd,"607d057468fe037819a419f4caa8bf17a5acd75806":()=>d.c2,"6094dcb8b2de2b8ca58cf887e11add25eb90008f35":()=>d.vu,"60960648779dc065b516725ce6f26f75e48edc5e27":()=>d.Ru,"609844736b68d383fea577661b9c48cf059af7d15d":()=>d.qo,"60f54f57c0e2e108f1c19225e8fc7e582858964926":()=>d.f2,"700c80d0702209f84ef589083fad3748980d321a09":()=>d.Jc,"7076b0f79d5cb1d1854f3e72ff6b8edb1bc45ac2b2":()=>d.z_,"7090568a42ecc35ce0370c22026a66fb4550c973ba":()=>d.Oc,"70c2dfab2511982f70b79513ebfb4aef647aa584d6":()=>d.ch,"784f359fb69b126311339abc6fdfc7815ecfa416f8":()=>d.wj,"78de9f6e837da1e1bb63e49077f0dc8d64b9de47db":()=>d.AH});var d=c(72153),e=c(28881)}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=6606,exports.ids=[6606],exports.modules={47645:(a,b,c)=>{c.r(b),c.d(b,{"00238630ef43c629c16c2e1932f519ec1664fb7905":()=>d.Le,"002825e296e007f12d9e514c3eba3eb9199882e325":()=>d.pD,"003f817b1a4ed1f5249bfe1cc8a366b8731c36e311":()=>d.BO,"0057c828149c14de7344c7ce139adb2d8aeabbd452":()=>d.JD,"00632374186aa5fc216c8143671787c2841aac3650":()=>d.$z,"006b91f517d76998351152cd850413fea9b8fbf8bf":()=>d.$5,"0081f522e01f011e0bb7b001985bbc80f6ed67ff91":()=>d.Ql,"0089e6dd4be7fd6de3ca86e26ca9e32e714637418e":()=>d.cj,"008d9ddbfc6deefb2c17ce9387d9ccaa7c8eb0a8e3":()=>d.VZ,"008e6f9aebbe101c58c7a064aec1ff67092c9a4aea":()=>d.zh,"008e986bf66a493b15917be1faaff93ec8628eb559":()=>d.oG,"0092ea3caaa881ead205da11fcf6b2e262d83b340e":()=>d.dO,"00a2b38e800258261677d08ba6896f92176080b688":()=>d.M3,"00b3800838fa282bfd0ba971d8be305cda28dbbc83":()=>d.GY,"00de58ab168c629eeec9a50da6bbeaa55dfef81162":()=>d.Ko,"00e51eae0cdb7965abbc1c4b02dab365933b06ab2a":()=>d.$4,"00e60f5fea4ffe0e159d85edc4c4d1ae2b20533a6a":()=>d.Zz,"00ecb7ac971c0df546b19068c8725c7952f2535045":()=>d.Hy,"00f5fb4d411e4f3c201f110f3e062584c37d2f0424":()=>d.oA,"40001c3049c784f01ef64a221459316f3aafec3ae6":()=>d.y4,"4003bbfe3d05a6edcfaac34009790b8c31df7e58b6":()=>d.kh,"400c4038f78f77cb89bcf0f7158f5ed33a565a3c9f":()=>d.Mo,"401194ebc2ec01c67e66bd378e92e8f7da7119b254":()=>d.rf,"401f8bab08fa0d5b6a07b6b7a3bb4441a662ff7650":()=>d.t3,"4025cc46f84f706e010eff581d7fcff14fa43f9d01":()=>d.cr,"4028f6258dc63c9aa84ada74d0cf04acd75192a205":()=>d.S2,"4029bff33da78c815f70f40108b502b26addd6505e":()=>d.Ev,"402c37dc7f4aa86b5a8b1359daba3113d0f1bf22e8":()=>d.p5,"40326a73741b7ad213b7c8520ce7e49bc180c0cf03":()=>d.fI,"40354dae7d737bfd0cb90da886469a9538c6a45631":()=>d.Hl,"40374658f030cfc80ee396075314d2628ef72e1183":()=>d.oC,"4038cd4d05bd4f2d8e8bb287d3439465c42b83c917":()=>d.ZG,"40397fc0fc0078ae5140c6022f979096911b322b4e":()=>d.Sh,"403b1c9b4efc4ba331cc340a4fa271fda5f291b2af":()=>d.EA,"40486dc3966eeb1da3395577eeacb2484f0de7ece4":()=>d.eP,"404fa763548e55486c7d48b1bfe3280f2cb9b5570f":()=>d.LN,"40516662615bdb11b4f57068e0287cbc33f7e54437":()=>d.hP,"4053248a035964b2cb73d81c387ae63a7d629fa23b":()=>d.iu,"4056fb7d7b49b25f3dd03679e0de2a10b93f975800":()=>d.Jb,"405d0436e852d1cb8f39fb9f8ca84287800dc05fd7":()=>d.Og,"4063a4a64be640d04af0a740a4a76e6e3e33da8a24":()=>d.iU,"4064b758829cb02bea5d8c4370b4c6df7db35388bc":()=>d.bN,"4068ff9a171502967a662249a63fea455ebeb17d75":()=>d.QT,"40728435d58e0e6a30b5733901ff09f2118a5ecf06":()=>d.WH,"4072c8f70fba612cad27eaf01f205ee71dd64e473c":()=>d.CV,"407642c815fc149ae38ccb662aab71b73209eb4cc5":()=>d.D5,"407a1e7dff83899c2aaab4e4466bea4bc01e2a338d":()=>d.fG,"407bb8e987eb7c4d5b6ac1a6bfceeff428b667e979":()=>d.P7,"407c76b7fcdb356464fe8ff037f37fe5b836f95ae5":()=>d.bV,"4081871ee2792615dd755cb012a2a76a48c61ed0d5":()=>d.Rz,"408fde198255a245b64ab9fc3a2ac1c5b3e19aac11":()=>d.UR,"4092842831070694cbfccb2f441a08a5d412239d2d":()=>d.e4,"40960722b29b3b45b56500b4c9bd7d4b986e34b0b4":()=>d.Cy,"40960f8c1e37bb13acaf2b29b4992f5516920a7385":()=>d._N,"40970b61c9a1c802e33fb194730d126601f4f61e10":()=>d.By,"40a90865711d29328542eeefcfbf31ff8f1cae680b":()=>d.gE,"40ac17b229887b843a805eb127e57758d9dbaad73e":()=>d.cu,"40affec4d400dddc20ba36af79e18ebf31cfb7132a":()=>d.lV,"40b739e029a946a48ebffaa90c330bfdf53cd3b4b4":()=>d.Ro,"40bbfaf8cc5515558ea3f1f6ecc5228f2dc3834164":()=>d.pu,"40bd2237a21d2d9761ef9b8ac1e4b6de54403bd118":()=>d.f_,"40c1731d332f8968a708b3bf33fe98e60b75ec3d0c":()=>d._x,"40c8afff0e3536cbca7cae83cff39367bc96a97e1a":()=>d.Wq,"40cefdf76f00a3be515b9000588fc52b96131afa44":()=>d.rv,"40d1287e2241eabb1dd30d799a4571d00b370bca35":()=>d.ei,"40d14da0c59b9db0e0a96d57d2a234322ac261b911":()=>d.Ir,"40d208b861bf1d3211c4ea7f2b9503f8c835d48fbc":()=>d.JH,"40d52523d17a2f064cd730cf5c1b2545e308085da3":()=>d.AS,"40da33e5b18b3f193f9bb7b7c54945e9243ff55169":()=>d.ZA,"40dd867bdf3733254597824522c21615bfab158981":()=>d.Ke,"40e12cc0fa29ed73d5a2d80c2278a390a5dd121729":()=>d.PH,"40e4220f195e166b9602e6d0118e7f5de848c5004b":()=>d.Sb,"40e521ef7629d00069e11b432326461050568ebf07":()=>d.wI,"40e7d01e7d67f81b4789f33a49f82577943c190ff3":()=>d.rT,"40e811e3ff3543d9d50d8caa62cfb6a265c470b43e":()=>d.HO,"40ecf2633c4bd879bfe7f47370dcdd47a2fc5e9fa2":()=>d.hl,"40f3920c118313ec35945e5bb6f894b6c672159799":()=>d.TD,"40f55a6b16dc6c4dabea39cae866e33fab883288d4":()=>d.Hp,"40f5d0ec2d3605c0fc3559cb07d9c6f9f19c1e1f81":()=>d.xV,"40f6130b53a888e0b3eb493c60482caffdc73e7733":()=>d.mJ,"40fa88548602e19b4a073fbad6f8cd0cf3ce7e8140":()=>d.c6,"40fbabd61360555b5f62977898c62d166442c7f69a":()=>d.X1,"40fe6fcf33f1e29c689c45603faa5d21d905c91ef4":()=>d.fl,"40fe93fc1da1c51302751dccf750bc264a35f9d098":()=>d.PD,"602650322a12eea7645bab531344604e9ceb0fe930":()=>d.yU,"603a14af39fa43d3b7102f02f2695ce501c0abc886":()=>d.dl,"607b1c4904a358a4a7b23e556c3ce700a8622f6276":()=>d.dd,"607d057468fe037819a419f4caa8bf17a5acd75806":()=>d.c2,"6094dcb8b2de2b8ca58cf887e11add25eb90008f35":()=>d.vu,"60960648779dc065b516725ce6f26f75e48edc5e27":()=>d.Ru,"609844736b68d383fea577661b9c48cf059af7d15d":()=>d.qo,"60f54f57c0e2e108f1c19225e8fc7e582858964926":()=>d.f2,"700c80d0702209f84ef589083fad3748980d321a09":()=>d.Jc,"7076b0f79d5cb1d1854f3e72ff6b8edb1bc45ac2b2":()=>d.z_,"7090568a42ecc35ce0370c22026a66fb4550c973ba":()=>d.Oc,"70c2dfab2511982f70b79513ebfb4aef647aa584d6":()=>d.ch,"784f359fb69b126311339abc6fdfc7815ecfa416f8":()=>d.wj,"78de9f6e837da1e1bb63e49077f0dc8d64b9de47db":()=>d.AH});var d=c(72153)},60546:(a,b,c)=>{c.d(b,{A:()=>p});var d=c(99386),e=c(62659),f=c(83451);let g=new Map([["bold",e.createElement(e.Fragment,null,e.createElement("path",{d:"M176.49,95.51a12,12,0,0,1,0,17l-56,56a12,12,0,0,1-17,0l-24-24a12,12,0,1,1,17-17L112,143l47.51-47.52A12,12,0,0,1,176.49,95.51ZM236,128A108,108,0,1,1,128,20,108.12,108.12,0,0,1,236,128Zm-24,0a84,84,0,1,0-84,84A84.09,84.09,0,0,0,212,128Z"}))],["duotone",e.createElement(e.Fragment,null,e.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),e.createElement("path",{d:"M173.66,98.34a8,8,0,0,1,0,11.32l-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35A8,8,0,0,1,173.66,98.34ZM232,128A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128Z"}))],["fill",e.createElement(e.Fragment,null,e.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm45.66,85.66-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35a8,8,0,0,1,11.32,11.32Z"}))],["light",e.createElement(e.Fragment,null,e.createElement("path",{d:"M172.24,99.76a6,6,0,0,1,0,8.48l-56,56a6,6,0,0,1-8.48,0l-24-24a6,6,0,0,1,8.48-8.48L112,151.51l51.76-51.75A6,6,0,0,1,172.24,99.76ZM230,128A102,102,0,1,1,128,26,102.12,102.12,0,0,1,230,128Zm-12,0a90,90,0,1,0-90,90A90.1,90.1,0,0,0,218,128Z"}))],["regular",e.createElement(e.Fragment,null,e.createElement("path",{d:"M173.66,98.34a8,8,0,0,1,0,11.32l-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35A8,8,0,0,1,173.66,98.34ZM232,128A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128Z"}))],["thin",e.createElement(e.Fragment,null,e.createElement("path",{d:"M170.83,101.17a4,4,0,0,1,0,5.66l-56,56a4,4,0,0,1-5.66,0l-24-24a4,4,0,0,1,5.66-5.66L112,154.34l53.17-53.17A4,4,0,0,1,170.83,101.17ZM228,128A100,100,0,1,1,128,28,100.11,100.11,0,0,1,228,128Zm-8,0a92,92,0,1,0-92,92A92.1,92.1,0,0,0,220,128Z"}))]]),h=e.forwardRef((a,b)=>e.createElement(f.A,{ref:b,...a,weights:g}));h.displayName="CheckCircleIcon";let i=new Map([["bold",e.createElement(e.Fragment,null,e.createElement("path",{d:"M240.26,186.1,152.81,34.23h0a28.74,28.74,0,0,0-49.62,0L15.74,186.1a27.45,27.45,0,0,0,0,27.71A28.31,28.31,0,0,0,40.55,228h174.9a28.31,28.31,0,0,0,24.79-14.19A27.45,27.45,0,0,0,240.26,186.1Zm-20.8,15.7a4.46,4.46,0,0,1-4,2.2H40.55a4.46,4.46,0,0,1-4-2.2,3.56,3.56,0,0,1,0-3.73L124,46.2a4.77,4.77,0,0,1,8,0l87.44,151.87A3.56,3.56,0,0,1,219.46,201.8ZM116,136V104a12,12,0,0,1,24,0v32a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,176Z"}))],["duotone",e.createElement(e.Fragment,null,e.createElement("path",{d:"M215.46,216H40.54C27.92,216,20,202.79,26.13,192.09L113.59,40.22c6.3-11,22.52-11,28.82,0l87.46,151.87C236,202.79,228.08,216,215.46,216Z",opacity:"0.2"}),e.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM222.93,203.8a8.5,8.5,0,0,1-7.48,4.2H40.55a8.5,8.5,0,0,1-7.48-4.2,7.59,7.59,0,0,1,0-7.72L120.52,44.21a8.75,8.75,0,0,1,15,0l87.45,151.87A7.59,7.59,0,0,1,222.93,203.8ZM120,144V104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,180Z"}))],["fill",e.createElement(e.Fragment,null,e.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM120,104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm8,88a12,12,0,1,1,12-12A12,12,0,0,1,128,192Z"}))],["light",e.createElement(e.Fragment,null,e.createElement("path",{d:"M235.07,189.09,147.61,37.22h0a22.75,22.75,0,0,0-39.22,0L20.93,189.09a21.53,21.53,0,0,0,0,21.72A22.35,22.35,0,0,0,40.55,222h174.9a22.35,22.35,0,0,0,19.6-11.19A21.53,21.53,0,0,0,235.07,189.09ZM224.66,204.8a10.46,10.46,0,0,1-9.21,5.2H40.55a10.46,10.46,0,0,1-9.21-5.2,9.51,9.51,0,0,1,0-9.72L118.79,43.21a10.75,10.75,0,0,1,18.42,0l87.46,151.87A9.51,9.51,0,0,1,224.66,204.8ZM122,144V104a6,6,0,0,1,12,0v40a6,6,0,0,1-12,0Zm16,36a10,10,0,1,1-10-10A10,10,0,0,1,138,180Z"}))],["regular",e.createElement(e.Fragment,null,e.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM222.93,203.8a8.5,8.5,0,0,1-7.48,4.2H40.55a8.5,8.5,0,0,1-7.48-4.2,7.59,7.59,0,0,1,0-7.72L120.52,44.21a8.75,8.75,0,0,1,15,0l87.45,151.87A7.59,7.59,0,0,1,222.93,203.8ZM120,144V104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,180Z"}))],["thin",e.createElement(e.Fragment,null,e.createElement("path",{d:"M233.34,190.09,145.88,38.22h0a20.75,20.75,0,0,0-35.76,0L22.66,190.09a19.52,19.52,0,0,0,0,19.71A20.36,20.36,0,0,0,40.54,220H215.46a20.36,20.36,0,0,0,17.86-10.2A19.52,19.52,0,0,0,233.34,190.09ZM226.4,205.8a12.47,12.47,0,0,1-10.94,6.2H40.54a12.47,12.47,0,0,1-10.94-6.2,11.45,11.45,0,0,1,0-11.72L117.05,42.21a12.76,12.76,0,0,1,21.9,0L226.4,194.08A11.45,11.45,0,0,1,226.4,205.8ZM124,144V104a4,4,0,0,1,8,0v40a4,4,0,0,1-8,0Zm12,36a8,8,0,1,1-8-8A8,8,0,0,1,136,180Z"}))]]),j=e.forwardRef((a,b)=>e.createElement(f.A,{ref:b,...a,weights:i}));j.displayName="WarningIcon";let k={ok:"bg-ok",lime:"bg-agent-vivid",coral:"bg-skill-vivid",blue:"bg-conn-vivid"},l={ok:"animate-[blip_1.4s_ease-out_infinite]",lime:"animate-[blip-lime_1.5s_ease-out_infinite]",coral:"animate-[blip-coral_1.4s_ease-out_infinite]",blue:"animate-[blip-blue_1.4s_ease-out_infinite]"};function m({variant:a="ok",size:b="sm",animate:c=!0,className:e=""}){return(0,d.jsx)("span",{className:`inline-block shrink-0 rounded-full ${"sm"===b?"h-[7px] w-[7px]":"h-2 w-2"} ${k[a]} ${c?l[a]:""} ${e}`})}let n={done:"Done",warn:"Attention",run:"Running",idle:"Idle","lvl-info":"INFO","lvl-ok":"OK","lvl-warn":"WARN","lvl-err":"ERR"},o={done:"bg-ok-bg text-ok",warn:"bg-warn-bg text-warn",run:"bg-run-bg text-run",idle:"bg-black/5 text-ink-3 dark:bg-white/5","lvl-info":"bg-black/5 text-ink-3 dark:bg-white/5","lvl-ok":"bg-ok-bg text-ok","lvl-warn":"bg-warn-bg text-warn","lvl-err":"bg-warn-bg text-err"};function p({variant:a,label:b,icon:c,className:e=""}){let f=b??n[a],g=null;return void 0!==c?g=c:"done"===a?g=(0,d.jsx)(h,{size:11,weight:"regular"}):"warn"===a?g=(0,d.jsx)(j,{size:11,weight:"regular"}):"run"===a&&(g=(0,d.jsx)(m,{variant:"blue",size:"sm"})),(0,d.jsxs)("span",{className:`inline-flex h-[22px] items-center gap-1.5 rounded-[5px] px-2.5 text-[11px] font-medium leading-none ${o[a]} ${e}`,children:[g,f]})}}};
|