aimeat 1.40.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -15
- package/dist/.env.example +528 -495
- package/dist/locales/en.json +314 -297
- package/dist/locales/fi.json +314 -297
- package/dist/public/components/ContactPicker.js +145 -0
- package/dist/public/components/EmptyState.js +22 -7
- package/dist/public/components/NotificationBell.js +92 -7
- package/dist/public/cortex-bundled/aimeat-dag.js +553 -0
- package/dist/public/cortex-bundled/aimeat-dag.yaml +77 -0
- package/dist/public/cortex-bundled/aimeat-flow.js +225 -0
- package/dist/public/cortex-bundled/aimeat-flow.yaml +101 -0
- package/dist/public/cortex-bundled/aimeat-ui-motion.js +323 -0
- package/dist/public/cortex-bundled/aimeat-ui-motion.yaml +86 -0
- package/dist/public/css/components/contact-picker.css +26 -0
- package/dist/public/css/theme.css +52 -2
- package/dist/public/css/views/admin.css +51 -1
- package/dist/public/css/views/agents-detail.css +78 -14
- package/dist/public/css/views/capabilities.css +2 -0
- package/dist/public/css/views/companies.css +0 -1
- package/dist/public/css/views/inbox.css +142 -7
- package/dist/public/css/views/landing.css +2 -0
- package/dist/public/css/views/members.css +0 -1
- package/dist/public/css/views/my-company.css +5 -5
- package/dist/public/css/views/offers.css +0 -3
- package/dist/public/css/views/portal-dev.css +49 -0
- package/dist/public/css/views/profile.css +171 -13
- package/dist/public/css/views/public-knowledge-viewer.css +0 -17
- package/dist/public/css/views/scheduler.css +37 -1
- package/dist/public/css/views/workflows.css +1 -1
- package/dist/public/js/services/admin.js +10 -0
- package/dist/public/js/services/agent-activity.js +15 -0
- package/dist/public/js/services/agent-directives.js +14 -0
- package/dist/public/js/services/agent-integration.js +15 -0
- package/dist/public/js/services/agent-messages.js +14 -0
- package/dist/public/js/services/agent-tasks.js +14 -0
- package/dist/public/js/services/appdev.js +67 -0
- package/dist/public/js/services/apps.js +28 -0
- package/dist/public/js/services/calibrator.js +14 -1
- package/dist/public/js/services/consent.js +17 -0
- package/dist/public/js/services/contacts.js +47 -0
- package/dist/public/js/services/ecosystem.js +14 -0
- package/dist/public/js/services/generator.js +71 -35
- package/dist/public/js/services/knowledge.js +14 -0
- package/dist/public/js/services/ledger.js +18 -0
- package/dist/public/js/services/living.js +14 -0
- package/dist/public/js/services/messages.js +7 -1
- package/dist/public/js/services/organisms.js +48 -4
- package/dist/public/js/services/schedules.js +19 -2
- package/dist/public/js/services/security.js +14 -0
- package/dist/public/js/services/work.js +14 -0
- package/dist/public/lib/VENDORED.md +77 -0
- package/dist/public/lib/drawflow@0.min.css +1 -0
- package/dist/public/lib/drawflow@0.min.js +1 -0
- package/dist/public/lib/fonts/LICENSE.md +13 -0
- package/dist/public/lib/fonts/baloo2-latin-ext.woff2 +0 -0
- package/dist/public/lib/fonts/baloo2-latin.woff2 +0 -0
- package/dist/public/lib/fonts/bangers-latin-ext.woff2 +0 -0
- package/dist/public/lib/fonts/bangers-latin.woff2 +0 -0
- package/dist/public/lib/fonts.css +51 -0
- package/dist/public/lib/p5@1.min.js +2 -0
- package/dist/public/lib/phaser@3.min.js +1 -0
- package/dist/public/lib/pixi-unsafe-eval@8.min.js +22 -0
- package/dist/public/lib/pixi@8.min.js +2329 -0
- package/dist/public/lib/realtime.js +120 -3
- package/dist/public/lib/samples/LICENSE.md +21 -9
- package/dist/public/lib/samples/bass/A1.mp3 +0 -0
- package/dist/public/lib/samples/bass/B2.mp3 +0 -0
- package/dist/public/lib/samples/bass/D2.mp3 +0 -0
- package/dist/public/lib/samples/bass/E1.mp3 +0 -0
- package/dist/public/lib/samples/bass/E3.mp3 +0 -0
- package/dist/public/lib/samples/bass/G2.mp3 +0 -0
- package/dist/public/lib/samples/drums/clap.mp3 +0 -0
- package/dist/public/lib/samples/drums/cowbell.mp3 +0 -0
- package/dist/public/lib/samples/drums/crash.mp3 +0 -0
- package/dist/public/lib/samples/drums/hihat-open.mp3 +0 -0
- package/dist/public/lib/samples/drums/hihat.mp3 +0 -0
- package/dist/public/lib/samples/drums/kick.mp3 +0 -0
- package/dist/public/lib/samples/drums/ride.mp3 +0 -0
- package/dist/public/lib/samples/drums/snare.mp3 +0 -0
- package/dist/public/lib/samples/drums/tom-high.mp3 +0 -0
- package/dist/public/lib/samples/drums/tom-low.mp3 +0 -0
- package/dist/public/lib/samples/drums/tom-mid.mp3 +0 -0
- package/dist/public/lib/samples/flute/A4.mp3 +0 -0
- package/dist/public/lib/samples/flute/A5.mp3 +0 -0
- package/dist/public/lib/samples/flute/C4.mp3 +0 -0
- package/dist/public/lib/samples/flute/C5.mp3 +0 -0
- package/dist/public/lib/samples/flute/C6.mp3 +0 -0
- package/dist/public/lib/samples/flute/E4.mp3 +0 -0
- package/dist/public/lib/samples/flute/E5.mp3 +0 -0
- package/dist/public/lib/samples/guitar/A2.mp3 +0 -0
- package/dist/public/lib/samples/guitar/A4.mp3 +0 -0
- package/dist/public/lib/samples/guitar/B3.mp3 +0 -0
- package/dist/public/lib/samples/guitar/D3.mp3 +0 -0
- package/dist/public/lib/samples/guitar/E2.mp3 +0 -0
- package/dist/public/lib/samples/guitar/E4.mp3 +0 -0
- package/dist/public/lib/samples/guitar/E5.mp3 +0 -0
- package/dist/public/lib/samples/guitar/G3.mp3 +0 -0
- package/dist/public/lib/samples/guitar-el/A2.mp3 +0 -0
- package/dist/public/lib/samples/guitar-el/A4.mp3 +0 -0
- package/dist/public/lib/samples/guitar-el/B3.mp3 +0 -0
- package/dist/public/lib/samples/guitar-el/D3.mp3 +0 -0
- package/dist/public/lib/samples/guitar-el/E2.mp3 +0 -0
- package/dist/public/lib/samples/guitar-el/E4.mp3 +0 -0
- package/dist/public/lib/samples/guitar-el/E5.mp3 +0 -0
- package/dist/public/lib/samples/guitar-el/G3.mp3 +0 -0
- package/dist/public/lib/samples/guitar-steel/A2.mp3 +0 -0
- package/dist/public/lib/samples/guitar-steel/A4.mp3 +0 -0
- package/dist/public/lib/samples/guitar-steel/B3.mp3 +0 -0
- package/dist/public/lib/samples/guitar-steel/D3.mp3 +0 -0
- package/dist/public/lib/samples/guitar-steel/E2.mp3 +0 -0
- package/dist/public/lib/samples/guitar-steel/E4.mp3 +0 -0
- package/dist/public/lib/samples/guitar-steel/E5.mp3 +0 -0
- package/dist/public/lib/samples/guitar-steel/G3.mp3 +0 -0
- package/dist/public/llms-template.txt +42 -21
- package/dist/public/spa.html +40 -34
- package/dist/public/style-testbed.html +0 -2
- package/dist/public/sw.js +23 -4
- package/dist/public/views/_template.js +21 -8
- package/dist/public/views/admin/cortex-tab.js +2 -2
- package/dist/public/views/admin/database-tab.js +140 -0
- package/dist/public/views/admin/feedback-tab.js +162 -0
- package/dist/public/views/admin/owners-tab.js +19 -29
- package/dist/public/views/admin/push-tab.js +2 -2
- package/dist/public/views/admin/services-tab.js +4 -4
- package/dist/public/views/admin/shared.js +9 -3
- package/dist/public/views/admin/sharing-groups-tab.js +13 -25
- package/dist/public/views/admin/stats-tab.js +33 -33
- package/dist/public/views/admin.js +52 -49
- package/dist/public/views/companies.js +9 -7
- package/dist/public/views/help.js +2 -1
- package/dist/public/views/invite-accept.js +64 -19
- package/dist/public/views/landing.js +41 -8
- package/dist/public/views/members.js +4 -2
- package/dist/public/views/my-company.js +27 -77
- package/dist/public/views/my-company.payments.js +177 -0
- package/dist/public/views/portal-classic.js +0 -4
- package/dist/public/views/portal-dev.js +11 -0
- package/dist/public/views/portal-dev.panels.js +52 -58
- package/dist/public/views/portal.components.js +18 -36
- package/dist/public/views/portal.prompts.js +9 -10
- package/dist/public/views/profile/access-tab/access-tokens.js +3 -3
- package/dist/public/views/profile/access-tab/agent-defaults.js +3 -3
- package/dist/public/views/profile/access-tab/connected-apps.js +5 -3
- package/dist/public/views/profile/access-tab/sharing-groups.js +8 -7
- package/dist/public/views/profile/access-tab.js +26 -10
- package/dist/public/views/profile/agents/agent-card.js +16 -5
- package/dist/public/views/profile/agents/tab-activity.js +27 -9
- package/dist/public/views/profile/agents/tab-agent-config.js +4 -1
- package/dist/public/views/profile/agents/tab-contracts.js +11 -3
- package/dist/public/views/profile/agents/tab-data-access.js +36 -20
- package/dist/public/views/profile/agents/tab-directives.js +2 -1
- package/dist/public/views/profile/agents/tab-integration.js +46 -23
- package/dist/public/views/profile/agents/tab-messages.js +37 -6
- package/dist/public/views/profile/agents/tab-quality.js +32 -8
- package/dist/public/views/profile/agents/tab-schedules.js +15 -10
- package/dist/public/views/profile/agents/tab-usage.js +19 -8
- package/dist/public/views/profile/agents-capabilities-subtab.js +3 -3
- package/dist/public/views/profile/agents-tab.js +11 -1
- package/dist/public/views/profile/appdev-tab.js +275 -0
- package/dist/public/views/profile/apps-tab.js +230 -1
- package/dist/public/views/profile/calibrator-batch.js +2 -2
- package/dist/public/views/profile/calibrator-tab.js +69 -37
- package/dist/public/views/profile/capabilities-tab.js +24 -13
- package/dist/public/views/profile/contacts-tab.js +139 -0
- package/dist/public/views/profile/data-wallet-tab.js +37 -18
- package/dist/public/views/profile/discover-tab.js +2 -1
- package/dist/public/views/profile/ecosystem-tab.automation.js +21 -7
- package/dist/public/views/profile/extensions-tab.js +4 -2
- package/dist/public/views/profile/extensions-tab.maturity.js +40 -0
- package/dist/public/views/profile/generator-dashboard/DebugPanel.js +16 -9
- package/dist/public/views/profile/generator-dashboard/use-dashboard-core.js +46 -26
- package/dist/public/views/profile/generator-dashboard/use-edit-mode.js +29 -25
- package/dist/public/views/profile/generator-dashboard/use-test-execution.js +14 -14
- package/dist/public/views/profile/generator-detail.ai.js +21 -0
- package/dist/public/views/profile/generator-detail.js +59 -26
- package/dist/public/views/profile/generator-detail.results.js +1 -1
- package/dist/public/views/profile/generator-settings.js +51 -47
- package/dist/public/views/profile/generator-tab.js +28 -7
- package/dist/public/views/profile/inbox-tab/components.js +110 -10
- package/dist/public/views/profile/inbox-tab/helpers.js +12 -0
- package/dist/public/views/profile/inbox-tab/panels.js +34 -4
- package/dist/public/views/profile/inbox-tab/use-thread-ux.js +104 -0
- package/dist/public/views/profile/inbox-tab.js +94 -47
- package/dist/public/views/profile/knowledge-tab.helpers.js +20 -0
- package/dist/public/views/profile/knowledge-tab.js +31 -28
- package/dist/public/views/profile/landing-page.cards.js +59 -46
- package/dist/public/views/profile/landing-page.js +6 -5
- package/dist/public/views/profile/landing-page.modals.js +5 -2
- package/dist/public/views/profile/libraries-tab.js +196 -0
- package/dist/public/views/profile/living-tab.js +11 -0
- package/dist/public/views/profile/memory-tab.js +45 -4
- package/dist/public/views/profile/node-stats-tab.js +29 -24
- package/dist/public/views/profile/notebook-card.js +1 -1
- package/dist/public/views/profile/notebook-tab.js +20 -1
- package/dist/public/views/profile/offers-tab.js +2 -1
- package/dist/public/views/profile/openrouter-settings.js +613 -0
- package/dist/public/views/profile/organisms/invite-panel.js +254 -0
- package/dist/public/views/profile/organisms/members.js +110 -177
- package/dist/public/views/profile/organisms/participants-panel.js +6 -2
- package/dist/public/views/profile/organisms/skills-panel.js +2 -1
- package/dist/public/views/profile/organisms/workspace/generator.js +1 -1
- package/dist/public/views/profile/organisms-tab.js +24 -16
- package/dist/public/views/profile/packages-tab.js +28 -38
- package/dist/public/views/profile/scheduler-calendar.js +72 -4
- package/dist/public/views/profile/scheduler-tab.js +16 -5
- package/dist/public/views/profile/security-tab.js +44 -44
- package/dist/public/views/profile/skills-tab.js +3 -2
- package/dist/public/views/profile/wallet-tab.js +34 -7
- package/dist/public/views/profile/work-tab.js +10 -1
- package/dist/public/views/profile/workflows-tab.js +3 -2
- package/dist/public/views/profile.js +38 -44
- package/dist/public/views/public-knowledge-viewer.js +6 -7
- package/dist/public/views/start-flows.js +16 -0
- package/dist/scripts/aeb-ledger.d.ts +2 -0
- package/dist/scripts/aeb-ledger.d.ts.map +1 -0
- package/dist/scripts/aeb-ledger.js +28 -0
- package/dist/scripts/aeb-ledger.js.map +1 -0
- package/dist/scripts/aeb-prove.d.ts +2 -0
- package/dist/scripts/aeb-prove.d.ts.map +1 -0
- package/dist/scripts/aeb-prove.js +124 -0
- package/dist/scripts/aeb-prove.js.map +1 -0
- package/dist/scripts/archive-stale-versions.js +1 -59
- package/dist/scripts/archive-stale-versions.js.map +1 -1
- package/dist/scripts/audit-mcp-tools.d.ts +1 -0
- package/dist/scripts/audit-mcp-tools.d.ts.map +1 -1
- package/dist/scripts/audit-mcp-tools.js +25 -0
- package/dist/scripts/audit-mcp-tools.js.map +1 -1
- package/dist/scripts/consent-audit-prune.js +5 -58
- package/dist/scripts/consent-audit-prune.js.map +1 -1
- package/dist/scripts/db-reset.d.ts +3 -3
- package/dist/scripts/db-reset.js +21 -62
- package/dist/scripts/db-reset.js.map +1 -1
- package/dist/scripts/kill-port.js +25 -5
- package/dist/scripts/kill-port.js.map +1 -1
- package/dist/scripts/kill-test-servers.d.ts +3 -0
- package/dist/scripts/kill-test-servers.d.ts.map +1 -0
- package/dist/scripts/kill-test-servers.js +84 -0
- package/dist/scripts/kill-test-servers.js.map +1 -0
- package/dist/scripts/migrate-to-postgres-kysely.d.ts +2 -0
- package/dist/scripts/migrate-to-postgres-kysely.d.ts.map +1 -0
- package/dist/scripts/migrate-to-postgres-kysely.js +194 -0
- package/dist/scripts/migrate-to-postgres-kysely.js.map +1 -0
- package/dist/scripts/reassign-apps.js +1 -1
- package/dist/scripts/telemetry-prune.d.ts +2 -1
- package/dist/scripts/telemetry-prune.d.ts.map +1 -1
- package/dist/scripts/telemetry-prune.js +7 -58
- package/dist/scripts/telemetry-prune.js.map +1 -1
- package/dist/src/auth/middleware.d.ts +9 -0
- package/dist/src/auth/middleware.d.ts.map +1 -1
- package/dist/src/auth/middleware.js +31 -0
- package/dist/src/auth/middleware.js.map +1 -1
- package/dist/src/cli/config-import.js +2 -2
- package/dist/src/cli/config-import.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/agent-management.d.ts +2 -0
- package/dist/src/cli/connect/mcp/tools/agent-management.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/agent-management.js +8 -0
- package/dist/src/cli/connect/mcp/tools/agent-management.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/appdev.d.ts +17 -0
- package/dist/src/cli/connect/mcp/tools/appdev.d.ts.map +1 -0
- package/dist/src/cli/connect/mcp/tools/appdev.js +123 -0
- package/dist/src/cli/connect/mcp/tools/appdev.js.map +1 -0
- package/dist/src/cli/connect/mcp/tools/apps.d.ts +3 -1
- package/dist/src/cli/connect/mcp/tools/apps.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/apps.js +49 -1
- package/dist/src/cli/connect/mcp/tools/apps.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/commerce.d.ts +16 -0
- package/dist/src/cli/connect/mcp/tools/commerce.d.ts.map +1 -0
- package/dist/src/cli/connect/mcp/tools/commerce.js +102 -0
- package/dist/src/cli/connect/mcp/tools/commerce.js.map +1 -0
- package/dist/src/cli/connect/mcp/tools/contacts.d.ts +13 -0
- package/dist/src/cli/connect/mcp/tools/contacts.d.ts.map +1 -0
- package/dist/src/cli/connect/mcp/tools/contacts.js +35 -0
- package/dist/src/cli/connect/mcp/tools/contacts.js.map +1 -0
- package/dist/src/cli/connect/mcp/tools/dm-messages.d.ts +3 -0
- package/dist/src/cli/connect/mcp/tools/dm-messages.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/dm-messages.js +24 -0
- package/dist/src/cli/connect/mcp/tools/dm-messages.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/feedback.d.ts +14 -0
- package/dist/src/cli/connect/mcp/tools/feedback.d.ts.map +1 -0
- package/dist/src/cli/connect/mcp/tools/feedback.js +29 -0
- package/dist/src/cli/connect/mcp/tools/feedback.js.map +1 -0
- package/dist/src/cli/connect/mcp/tools/index.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/index.js +10 -0
- package/dist/src/cli/connect/mcp/tools/index.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/onboarding.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/onboarding.js +4 -1
- package/dist/src/cli/connect/mcp/tools/onboarding.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/operator.d.ts +18 -0
- package/dist/src/cli/connect/mcp/tools/operator.d.ts.map +1 -0
- package/dist/src/cli/connect/mcp/tools/operator.js +65 -0
- package/dist/src/cli/connect/mcp/tools/operator.js.map +1 -0
- package/dist/src/cli/connect/mcp/tools/organisms.d.ts +2 -0
- package/dist/src/cli/connect/mcp/tools/organisms.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/organisms.js +101 -2
- package/dist/src/cli/connect/mcp/tools/organisms.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/workflows.d.ts +1 -0
- package/dist/src/cli/connect/mcp/tools/workflows.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/workflows.js +13 -0
- package/dist/src/cli/connect/mcp/tools/workflows.js.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-agent.d.ts +6 -0
- package/dist/src/cli/connect/tool-call-defs-agent.d.ts.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-agent.js +126 -0
- package/dist/src/cli/connect/tool-call-defs-agent.js.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-apps.d.ts +4 -0
- package/dist/src/cli/connect/tool-call-defs-apps.d.ts.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-apps.js +379 -1
- package/dist/src/cli/connect/tool-call-defs-apps.js.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-organism.d.ts.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-organism.js +46 -1
- package/dist/src/cli/connect/tool-call-defs-organism.js.map +1 -1
- package/dist/src/cli/init-wizard/generate.js +2 -2
- package/dist/src/cli/init-wizard/generate.js.map +1 -1
- package/dist/src/cli/init-wizard/helpers.d.ts +1 -1
- package/dist/src/cli/init-wizard/helpers.d.ts.map +1 -1
- package/dist/src/cli/init-wizard/helpers.js +2 -5
- package/dist/src/cli/init-wizard/helpers.js.map +1 -1
- package/dist/src/cli/init-wizard/presets.d.ts.map +1 -1
- package/dist/src/cli/init-wizard/presets.js +0 -1
- package/dist/src/cli/init-wizard/presets.js.map +1 -1
- package/dist/src/cli/init-wizard/steps-core.d.ts.map +1 -1
- package/dist/src/cli/init-wizard/steps-core.js +7 -11
- package/dist/src/cli/init-wizard/steps-core.js.map +1 -1
- package/dist/src/commerce/sellable-resolvers.d.ts +11 -1
- package/dist/src/commerce/sellable-resolvers.d.ts.map +1 -1
- package/dist/src/commerce/sellable-resolvers.js +55 -0
- package/dist/src/commerce/sellable-resolvers.js.map +1 -1
- package/dist/src/commerce/test-money-handler.d.ts +5 -0
- package/dist/src/commerce/test-money-handler.d.ts.map +1 -0
- package/dist/src/commerce/test-money-handler.js +27 -0
- package/dist/src/commerce/test-money-handler.js.map +1 -0
- package/dist/src/commerce/x402-facilitator.d.ts +113 -0
- package/dist/src/commerce/x402-facilitator.d.ts.map +1 -0
- package/dist/src/commerce/x402-facilitator.js +143 -0
- package/dist/src/commerce/x402-facilitator.js.map +1 -0
- package/dist/src/commerce/x402-handler.d.ts +35 -0
- package/dist/src/commerce/x402-handler.d.ts.map +1 -0
- package/dist/src/commerce/x402-handler.js +54 -0
- package/dist/src/commerce/x402-handler.js.map +1 -0
- package/dist/src/commerce/x402.d.ts +32 -8
- package/dist/src/commerce/x402.d.ts.map +1 -1
- package/dist/src/commerce/x402.js +41 -9
- package/dist/src/commerce/x402.js.map +1 -1
- package/dist/src/config-types.d.ts +21 -2
- package/dist/src/config-types.d.ts.map +1 -1
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +27 -5
- package/dist/src/config.js.map +1 -1
- package/dist/src/data/app-templates/components.d.ts +13 -1
- package/dist/src/data/app-templates/components.d.ts.map +1 -1
- package/dist/src/data/app-templates/components.js +149 -1
- package/dist/src/data/app-templates/components.js.map +1 -1
- package/dist/src/data/app-templates.d.ts +13 -0
- package/dist/src/data/app-templates.d.ts.map +1 -1
- package/dist/src/data/app-templates.js +39 -1
- package/dist/src/data/app-templates.js.map +1 -1
- package/dist/src/data/appdev-pitfalls.d.ts +56 -0
- package/dist/src/data/appdev-pitfalls.d.ts.map +1 -0
- package/dist/src/data/appdev-pitfalls.js +342 -0
- package/dist/src/data/appdev-pitfalls.js.map +1 -0
- package/dist/src/data/builtin-skills.d.ts +6 -0
- package/dist/src/data/builtin-skills.d.ts.map +1 -1
- package/dist/src/data/builtin-skills.js +151 -0
- package/dist/src/data/builtin-skills.js.map +1 -1
- package/dist/src/data/library-packs/cortex.d.ts +18 -0
- package/dist/src/data/library-packs/cortex.d.ts.map +1 -0
- package/dist/src/data/library-packs/cortex.js +339 -0
- package/dist/src/data/library-packs/cortex.js.map +1 -0
- package/dist/src/data/library-packs/sdk.d.ts +16 -0
- package/dist/src/data/library-packs/sdk.d.ts.map +1 -0
- package/dist/src/data/library-packs/sdk.js +439 -0
- package/dist/src/data/library-packs/sdk.js.map +1 -0
- package/dist/src/data/library-packs/vendored.d.ts +21 -0
- package/dist/src/data/library-packs/vendored.d.ts.map +1 -0
- package/dist/src/data/library-packs/vendored.js +381 -0
- package/dist/src/data/library-packs/vendored.js.map +1 -0
- package/dist/src/data/library-packs.d.ts +151 -0
- package/dist/src/data/library-packs.d.ts.map +1 -0
- package/dist/src/data/library-packs.js +169 -0
- package/dist/src/data/library-packs.js.map +1 -0
- package/dist/src/generated/api-types.d.ts +25542 -14448
- package/dist/src/generated/api-types.d.ts.map +1 -1
- package/dist/src/index-help.d.ts +1 -1
- package/dist/src/index-help.d.ts.map +1 -1
- package/dist/src/index-help.js +3 -3
- package/dist/src/mcp/agent-onboarding.d.ts.map +1 -1
- package/dist/src/mcp/agent-onboarding.js +8 -2
- package/dist/src/mcp/agent-onboarding.js.map +1 -1
- package/dist/src/mcp/annotations.d.ts +1 -0
- package/dist/src/mcp/annotations.d.ts.map +1 -1
- package/dist/src/mcp/annotations.js +24 -0
- package/dist/src/mcp/annotations.js.map +1 -1
- package/dist/src/mcp/app-template-proposals.d.ts +17 -0
- package/dist/src/mcp/app-template-proposals.d.ts.map +1 -0
- package/dist/src/mcp/app-template-proposals.js +94 -0
- package/dist/src/mcp/app-template-proposals.js.map +1 -0
- package/dist/src/mcp/appdev-pitfalls.d.ts +22 -0
- package/dist/src/mcp/appdev-pitfalls.d.ts.map +1 -0
- package/dist/src/mcp/appdev-pitfalls.js +208 -0
- package/dist/src/mcp/appdev-pitfalls.js.map +1 -0
- package/dist/src/mcp/appdev-proofs.d.ts +21 -0
- package/dist/src/mcp/appdev-proofs.d.ts.map +1 -0
- package/dist/src/mcp/appdev-proofs.js +103 -0
- package/dist/src/mcp/appdev-proofs.js.map +1 -0
- package/dist/src/mcp/appdev-research.d.ts +17 -0
- package/dist/src/mcp/appdev-research.d.ts.map +1 -0
- package/dist/src/mcp/appdev-research.js +27 -0
- package/dist/src/mcp/appdev-research.js.map +1 -0
- package/dist/src/mcp/apps.d.ts +6 -0
- package/dist/src/mcp/apps.d.ts.map +1 -1
- package/dist/src/mcp/apps.js +60 -5
- package/dist/src/mcp/apps.js.map +1 -1
- package/dist/src/mcp/catalog/definitions/agent-messaging.d.ts.map +1 -1
- package/dist/src/mcp/catalog/definitions/agent-messaging.js +38 -0
- package/dist/src/mcp/catalog/definitions/agent-messaging.js.map +1 -1
- package/dist/src/mcp/catalog/definitions/capabilities-groups-skills.d.ts +2 -0
- package/dist/src/mcp/catalog/definitions/capabilities-groups-skills.d.ts.map +1 -1
- package/dist/src/mcp/catalog/definitions/capabilities-groups-skills.js +139 -5
- package/dist/src/mcp/catalog/definitions/capabilities-groups-skills.js.map +1 -1
- package/dist/src/mcp/catalog/definitions/organisms-workspaces-apps.d.ts.map +1 -1
- package/dist/src/mcp/catalog/definitions/organisms-workspaces-apps.js +41 -3
- package/dist/src/mcp/catalog/definitions/organisms-workspaces-apps.js.map +1 -1
- package/dist/src/mcp/catalog/definitions/schedules-tasks-memory.d.ts.map +1 -1
- package/dist/src/mcp/catalog/definitions/schedules-tasks-memory.js +20 -0
- package/dist/src/mcp/catalog/definitions/schedules-tasks-memory.js.map +1 -1
- package/dist/src/mcp/catalog/scopes.d.ts +1 -0
- package/dist/src/mcp/catalog/scopes.d.ts.map +1 -1
- package/dist/src/mcp/catalog/scopes.js +18 -0
- package/dist/src/mcp/catalog/scopes.js.map +1 -1
- package/dist/src/mcp/catalog/surfaces.d.ts.map +1 -1
- package/dist/src/mcp/catalog/surfaces.js +17 -4
- package/dist/src/mcp/catalog/surfaces.js.map +1 -1
- package/dist/src/mcp/catalogue.d.ts +1 -0
- package/dist/src/mcp/catalogue.d.ts.map +1 -1
- package/dist/src/mcp/catalogue.js +10 -2
- package/dist/src/mcp/catalogue.js.map +1 -1
- package/dist/src/mcp/commerce.js +1 -1
- package/dist/src/mcp/commerce.js.map +1 -1
- package/dist/src/mcp/contacts.d.ts +19 -0
- package/dist/src/mcp/contacts.d.ts.map +1 -0
- package/dist/src/mcp/contacts.js +58 -0
- package/dist/src/mcp/contacts.js.map +1 -0
- package/dist/src/mcp/core-admin.js +1 -1
- package/dist/src/mcp/core-admin.js.map +1 -1
- package/dist/src/mcp/extensions.d.ts +4 -0
- package/dist/src/mcp/extensions.d.ts.map +1 -1
- package/dist/src/mcp/extensions.js +74 -12
- package/dist/src/mcp/extensions.js.map +1 -1
- package/dist/src/mcp/feedback.d.ts +20 -0
- package/dist/src/mcp/feedback.d.ts.map +1 -0
- package/dist/src/mcp/feedback.js +61 -0
- package/dist/src/mcp/feedback.js.map +1 -0
- package/dist/src/mcp/index.d.ts +1 -0
- package/dist/src/mcp/index.d.ts.map +1 -1
- package/dist/src/mcp/index.js +13 -0
- package/dist/src/mcp/index.js.map +1 -1
- package/dist/src/mcp/knowledge.d.ts +4 -0
- package/dist/src/mcp/knowledge.d.ts.map +1 -1
- package/dist/src/mcp/knowledge.js +39 -22
- package/dist/src/mcp/knowledge.js.map +1 -1
- package/dist/src/mcp/organisms-name-invites.d.ts +18 -0
- package/dist/src/mcp/organisms-name-invites.d.ts.map +1 -0
- package/dist/src/mcp/organisms-name-invites.js +143 -0
- package/dist/src/mcp/organisms-name-invites.js.map +1 -0
- package/dist/src/mcp/organisms.d.ts +3 -0
- package/dist/src/mcp/organisms.d.ts.map +1 -1
- package/dist/src/mcp/organisms.js +12 -86
- package/dist/src/mcp/organisms.js.map +1 -1
- package/dist/src/mcp/workflows.d.ts +2 -0
- package/dist/src/mcp/workflows.d.ts.map +1 -1
- package/dist/src/mcp/workflows.js +43 -3
- package/dist/src/mcp/workflows.js.map +1 -1
- package/dist/src/mcp/workspaces.d.ts +4 -0
- package/dist/src/mcp/workspaces.d.ts.map +1 -1
- package/dist/src/mcp/workspaces.js +15 -12
- package/dist/src/mcp/workspaces.js.map +1 -1
- package/dist/src/middleware/workspace-access.d.ts +3 -0
- package/dist/src/middleware/workspace-access.d.ts.map +1 -1
- package/dist/src/middleware/workspace-access.js +7 -3
- package/dist/src/middleware/workspace-access.js.map +1 -1
- package/dist/src/models/agent-onboarding-schemas.d.ts +2 -0
- package/dist/src/models/agent-onboarding-schemas.d.ts.map +1 -1
- package/dist/src/models/agent-onboarding-schemas.js +5 -0
- package/dist/src/models/agent-onboarding-schemas.js.map +1 -1
- package/dist/src/models/contribution-proof.d.ts +29 -0
- package/dist/src/models/contribution-proof.d.ts.map +1 -0
- package/dist/src/models/contribution-proof.js +23 -0
- package/dist/src/models/contribution-proof.js.map +1 -0
- package/dist/src/models/crew-def-schemas.d.ts +114 -0
- package/dist/src/models/crew-def-schemas.d.ts.map +1 -0
- package/dist/src/models/crew-def-schemas.js +140 -0
- package/dist/src/models/crew-def-schemas.js.map +1 -0
- package/dist/src/models/workflow-schemas.d.ts +69 -1
- package/dist/src/models/workflow-schemas.d.ts.map +1 -1
- package/dist/src/models/workflow-schemas.js +26 -0
- package/dist/src/models/workflow-schemas.js.map +1 -1
- package/dist/src/routes/access-tokens.d.ts +2 -0
- package/dist/src/routes/access-tokens.d.ts.map +1 -1
- package/dist/src/routes/access-tokens.js +15 -0
- package/dist/src/routes/access-tokens.js.map +1 -1
- package/dist/src/routes/admin-config.js +1 -1
- package/dist/src/routes/admin-config.js.map +1 -1
- package/dist/src/routes/admin-maintenance.d.ts +3 -0
- package/dist/src/routes/admin-maintenance.d.ts.map +1 -1
- package/dist/src/routes/admin-maintenance.js +20 -0
- package/dist/src/routes/admin-maintenance.js.map +1 -1
- package/dist/src/routes/admin-storage-stats.d.ts +17 -0
- package/dist/src/routes/admin-storage-stats.d.ts.map +1 -0
- package/dist/src/routes/admin-storage-stats.js +56 -0
- package/dist/src/routes/admin-storage-stats.js.map +1 -0
- package/dist/src/routes/admin.d.ts +1 -0
- package/dist/src/routes/admin.d.ts.map +1 -1
- package/dist/src/routes/admin.js +10 -12
- package/dist/src/routes/admin.js.map +1 -1
- package/dist/src/routes/agent-activity.d.ts +6 -0
- package/dist/src/routes/agent-activity.d.ts.map +1 -1
- package/dist/src/routes/agent-activity.js +57 -0
- package/dist/src/routes/agent-activity.js.map +1 -1
- package/dist/src/routes/agent-directives.d.ts.map +1 -1
- package/dist/src/routes/agent-directives.js +30 -0
- package/dist/src/routes/agent-directives.js.map +1 -1
- package/dist/src/routes/agent-messages.d.ts +2 -0
- package/dist/src/routes/agent-messages.d.ts.map +1 -1
- package/dist/src/routes/agent-messages.js +18 -0
- package/dist/src/routes/agent-messages.js.map +1 -1
- package/dist/src/routes/agent-onboarding.d.ts +16 -0
- package/dist/src/routes/agent-onboarding.d.ts.map +1 -1
- package/dist/src/routes/agent-onboarding.js +6 -1
- package/dist/src/routes/agent-onboarding.js.map +1 -1
- package/dist/src/routes/agent-webhook.d.ts +3 -0
- package/dist/src/routes/agent-webhook.d.ts.map +1 -1
- package/dist/src/routes/agent-webhook.js +28 -0
- package/dist/src/routes/agent-webhook.js.map +1 -1
- package/dist/src/routes/agents/device-auth.d.ts +6 -0
- package/dist/src/routes/agents/device-auth.d.ts.map +1 -1
- package/dist/src/routes/agents/device-auth.js +224 -137
- package/dist/src/routes/agents/device-auth.js.map +1 -1
- package/dist/src/routes/agents/offers.d.ts +4 -0
- package/dist/src/routes/agents/offers.d.ts.map +1 -1
- package/dist/src/routes/agents/offers.js +0 -0
- package/dist/src/routes/agents/offers.js.map +1 -1
- package/dist/src/routes/agents/profile-metadata.d.ts +3 -0
- package/dist/src/routes/agents/profile-metadata.d.ts.map +1 -1
- package/dist/src/routes/agents/profile-metadata.js +23 -10
- package/dist/src/routes/agents/profile-metadata.js.map +1 -1
- package/dist/src/routes/app-grants.d.ts.map +1 -1
- package/dist/src/routes/app-grants.js +2 -0
- package/dist/src/routes/app-grants.js.map +1 -1
- package/dist/src/routes/appdev-overview.d.ts +17 -0
- package/dist/src/routes/appdev-overview.d.ts.map +1 -0
- package/dist/src/routes/appdev-overview.js +75 -0
- package/dist/src/routes/appdev-overview.js.map +1 -0
- package/dist/src/routes/appdev-pitfalls.d.ts +20 -0
- package/dist/src/routes/appdev-pitfalls.d.ts.map +1 -0
- package/dist/src/routes/appdev-pitfalls.js +103 -0
- package/dist/src/routes/appdev-pitfalls.js.map +1 -0
- package/dist/src/routes/appeals.d.ts +1 -0
- package/dist/src/routes/appeals.d.ts.map +1 -1
- package/dist/src/routes/appeals.js +3 -1
- package/dist/src/routes/appeals.js.map +1 -1
- package/dist/src/routes/apps/agents-deploy.d.ts +24 -0
- package/dist/src/routes/apps/agents-deploy.d.ts.map +1 -0
- package/dist/src/routes/apps/agents-deploy.js +214 -0
- package/dist/src/routes/apps/agents-deploy.js.map +1 -0
- package/dist/src/routes/apps/catalogue-admin.d.ts +5 -0
- package/dist/src/routes/apps/catalogue-admin.d.ts.map +1 -1
- package/dist/src/routes/apps/catalogue-admin.js +34 -10
- package/dist/src/routes/apps/catalogue-admin.js.map +1 -1
- package/dist/src/routes/apps/drafts.d.ts +2 -0
- package/dist/src/routes/apps/drafts.d.ts.map +1 -1
- package/dist/src/routes/apps/drafts.js +4 -0
- package/dist/src/routes/apps/drafts.js.map +1 -1
- package/dist/src/routes/apps/fork-manage.d.ts +3 -1
- package/dist/src/routes/apps/fork-manage.d.ts.map +1 -1
- package/dist/src/routes/apps/fork-manage.js +26 -0
- package/dist/src/routes/apps/fork-manage.js.map +1 -1
- package/dist/src/routes/apps/publish.d.ts +5 -0
- package/dist/src/routes/apps/publish.d.ts.map +1 -1
- package/dist/src/routes/apps/publish.js +43 -1
- package/dist/src/routes/apps/publish.js.map +1 -1
- package/dist/src/routes/apps.d.ts +2 -0
- package/dist/src/routes/apps.d.ts.map +1 -1
- package/dist/src/routes/apps.js +4 -0
- package/dist/src/routes/apps.js.map +1 -1
- package/dist/src/routes/auth.d.ts +2 -0
- package/dist/src/routes/auth.d.ts.map +1 -1
- package/dist/src/routes/auth.js +11 -0
- package/dist/src/routes/auth.js.map +1 -1
- package/dist/src/routes/bootstrap.d.ts +5 -0
- package/dist/src/routes/bootstrap.d.ts.map +1 -1
- package/dist/src/routes/bootstrap.js +21 -14
- package/dist/src/routes/bootstrap.js.map +1 -1
- package/dist/src/routes/calibrator.d.ts +2 -0
- package/dist/src/routes/calibrator.d.ts.map +1 -1
- package/dist/src/routes/calibrator.js +43 -0
- package/dist/src/routes/calibrator.js.map +1 -1
- package/dist/src/routes/catalogue.d.ts +2 -0
- package/dist/src/routes/catalogue.d.ts.map +1 -1
- package/dist/src/routes/catalogue.js +20 -30
- package/dist/src/routes/catalogue.js.map +1 -1
- package/dist/src/routes/commerce.d.ts.map +1 -1
- package/dist/src/routes/commerce.js +18 -8
- package/dist/src/routes/commerce.js.map +1 -1
- package/dist/src/routes/consent.d.ts.map +1 -1
- package/dist/src/routes/consent.js +10 -0
- package/dist/src/routes/consent.js.map +1 -1
- package/dist/src/routes/contacts.d.ts +20 -0
- package/dist/src/routes/contacts.d.ts.map +1 -0
- package/dist/src/routes/contacts.js +86 -0
- package/dist/src/routes/contacts.js.map +1 -0
- package/dist/src/routes/ecosystem-apps.d.ts +2 -0
- package/dist/src/routes/ecosystem-apps.d.ts.map +1 -1
- package/dist/src/routes/ecosystem-apps.js +34 -0
- package/dist/src/routes/ecosystem-apps.js.map +1 -1
- package/dist/src/routes/extensions/actions.d.ts +3 -0
- package/dist/src/routes/extensions/actions.d.ts.map +1 -1
- package/dist/src/routes/extensions/actions.js +43 -6
- package/dist/src/routes/extensions/actions.js.map +1 -1
- package/dist/src/routes/extensions/manifest.d.ts +2 -0
- package/dist/src/routes/extensions/manifest.d.ts.map +1 -1
- package/dist/src/routes/extensions/manifest.js +68 -8
- package/dist/src/routes/extensions/manifest.js.map +1 -1
- package/dist/src/routes/extensions/paywall.d.ts +30 -0
- package/dist/src/routes/extensions/paywall.d.ts.map +1 -0
- package/dist/src/routes/extensions/paywall.js +107 -0
- package/dist/src/routes/extensions/paywall.js.map +1 -0
- package/dist/src/routes/federation-sync/messaging.d.ts.map +1 -1
- package/dist/src/routes/federation-sync/messaging.js +4 -0
- package/dist/src/routes/federation-sync/messaging.js.map +1 -1
- package/dist/src/routes/feedback.d.ts +23 -0
- package/dist/src/routes/feedback.d.ts.map +1 -0
- package/dist/src/routes/feedback.js +111 -0
- package/dist/src/routes/feedback.js.map +1 -0
- package/dist/src/routes/generator/projects.d.ts.map +1 -1
- package/dist/src/routes/generator/projects.js +18 -0
- package/dist/src/routes/generator/projects.js.map +1 -1
- package/dist/src/routes/generator/prompts.d.ts +14 -3
- package/dist/src/routes/generator/prompts.d.ts.map +1 -1
- package/dist/src/routes/generator/prompts.js +165 -90
- package/dist/src/routes/generator/prompts.js.map +1 -1
- package/dist/src/routes/generator.d.ts +2 -0
- package/dist/src/routes/generator.d.ts.map +1 -1
- package/dist/src/routes/generator.js +2 -0
- package/dist/src/routes/generator.js.map +1 -1
- package/dist/src/routes/ghii/profile.d.ts +2 -0
- package/dist/src/routes/ghii/profile.d.ts.map +1 -1
- package/dist/src/routes/ghii/profile.js +16 -11
- package/dist/src/routes/ghii/profile.js.map +1 -1
- package/dist/src/routes/knowledge/admin.d.ts +1 -0
- package/dist/src/routes/knowledge/admin.d.ts.map +1 -1
- package/dist/src/routes/knowledge/admin.js +30 -40
- package/dist/src/routes/knowledge/admin.js.map +1 -1
- package/dist/src/routes/knowledge/helpers.d.ts +1 -0
- package/dist/src/routes/knowledge/helpers.d.ts.map +1 -1
- package/dist/src/routes/knowledge/helpers.js +5 -1
- package/dist/src/routes/knowledge/helpers.js.map +1 -1
- package/dist/src/routes/knowledge/organism.d.ts +1 -0
- package/dist/src/routes/knowledge/organism.d.ts.map +1 -1
- package/dist/src/routes/knowledge/organism.js +7 -11
- package/dist/src/routes/knowledge/organism.js.map +1 -1
- package/dist/src/routes/knowledge/packages-core.d.ts +1 -0
- package/dist/src/routes/knowledge/packages-core.d.ts.map +1 -1
- package/dist/src/routes/knowledge/packages-core.js +6 -16
- package/dist/src/routes/knowledge/packages-core.js.map +1 -1
- package/dist/src/routes/knowledge/sharing.d.ts +1 -0
- package/dist/src/routes/knowledge/sharing.d.ts.map +1 -1
- package/dist/src/routes/knowledge/sharing.js +11 -31
- package/dist/src/routes/knowledge/sharing.js.map +1 -1
- package/dist/src/routes/knowledge.d.ts +2 -0
- package/dist/src/routes/knowledge.d.ts.map +1 -1
- package/dist/src/routes/knowledge.js +15 -0
- package/dist/src/routes/knowledge.js.map +1 -1
- package/dist/src/routes/ledger.d.ts +4 -0
- package/dist/src/routes/ledger.d.ts.map +1 -1
- package/dist/src/routes/ledger.js +93 -53
- package/dist/src/routes/ledger.js.map +1 -1
- package/dist/src/routes/lib-data.d.ts +2 -0
- package/dist/src/routes/lib-data.d.ts.map +1 -1
- package/dist/src/routes/lib-data.js +7 -4
- package/dist/src/routes/lib-data.js.map +1 -1
- package/dist/src/routes/lib-intake.d.ts +21 -0
- package/dist/src/routes/lib-intake.d.ts.map +1 -0
- package/dist/src/routes/lib-intake.js +63 -0
- package/dist/src/routes/lib-intake.js.map +1 -0
- package/dist/src/routes/lib-organism.d.ts +13 -0
- package/dist/src/routes/lib-organism.d.ts.map +1 -1
- package/dist/src/routes/lib-organism.js +80 -0
- package/dist/src/routes/lib-organism.js.map +1 -1
- package/dist/src/routes/lib-workflows.d.ts +24 -0
- package/dist/src/routes/lib-workflows.d.ts.map +1 -0
- package/dist/src/routes/lib-workflows.js +125 -0
- package/dist/src/routes/lib-workflows.js.map +1 -0
- package/dist/src/routes/library-packs.d.ts +31 -0
- package/dist/src/routes/library-packs.d.ts.map +1 -0
- package/dist/src/routes/library-packs.js +187 -0
- package/dist/src/routes/library-packs.js.map +1 -0
- package/dist/src/routes/libs/audio-lib-part2.d.ts +2 -0
- package/dist/src/routes/libs/audio-lib-part2.d.ts.map +1 -1
- package/dist/src/routes/libs/audio-lib-part2.js +4 -0
- package/dist/src/routes/libs/audio-lib-part2.js.map +1 -1
- package/dist/src/routes/libs/auth-lib-part2.d.ts +5 -0
- package/dist/src/routes/libs/auth-lib-part2.d.ts.map +1 -1
- package/dist/src/routes/libs/auth-lib-part2.js +118 -5
- package/dist/src/routes/libs/auth-lib-part2.js.map +1 -1
- package/dist/src/routes/libs.d.ts +10 -0
- package/dist/src/routes/libs.d.ts.map +1 -1
- package/dist/src/routes/libs.js +28 -149
- package/dist/src/routes/libs.js.map +1 -1
- package/dist/src/routes/living.d.ts +2 -0
- package/dist/src/routes/living.d.ts.map +1 -1
- package/dist/src/routes/living.js +12 -0
- package/dist/src/routes/living.js.map +1 -1
- package/dist/src/routes/matches.d.ts +3 -0
- package/dist/src/routes/matches.d.ts.map +1 -1
- package/dist/src/routes/matches.js +47 -51
- package/dist/src/routes/matches.js.map +1 -1
- package/dist/src/routes/memory/bulk.d.ts.map +1 -1
- package/dist/src/routes/memory/bulk.js +185 -70
- package/dist/src/routes/memory/bulk.js.map +1 -1
- package/dist/src/routes/memory/crud.d.ts +2 -0
- package/dist/src/routes/memory/crud.d.ts.map +1 -1
- package/dist/src/routes/memory/crud.js +70 -39
- package/dist/src/routes/memory/crud.js.map +1 -1
- package/dist/src/routes/memory/key.d.ts +2 -0
- package/dist/src/routes/memory/key.d.ts.map +1 -1
- package/dist/src/routes/memory/key.js +23 -4
- package/dist/src/routes/memory/key.js.map +1 -1
- package/dist/src/routes/memory/shared.d.ts +4 -0
- package/dist/src/routes/memory/shared.d.ts.map +1 -1
- package/dist/src/routes/memory/shared.js.map +1 -1
- package/dist/src/routes/memory.d.ts.map +1 -1
- package/dist/src/routes/memory.js +29 -1
- package/dist/src/routes/memory.js.map +1 -1
- package/dist/src/routes/messages.d.ts +6 -0
- package/dist/src/routes/messages.d.ts.map +1 -1
- package/dist/src/routes/messages.js +39 -26
- package/dist/src/routes/messages.js.map +1 -1
- package/dist/src/routes/notifications.d.ts +2 -0
- package/dist/src/routes/notifications.d.ts.map +1 -1
- package/dist/src/routes/notifications.js +21 -2
- package/dist/src/routes/notifications.js.map +1 -1
- package/dist/src/routes/organisms/crud.d.ts +6 -0
- package/dist/src/routes/organisms/crud.d.ts.map +1 -1
- package/dist/src/routes/organisms/crud.js +80 -62
- package/dist/src/routes/organisms/crud.js.map +1 -1
- package/dist/src/routes/organisms/gates.d.ts.map +1 -1
- package/dist/src/routes/organisms/gates.js +82 -1
- package/dist/src/routes/organisms/gates.js.map +1 -1
- package/dist/src/routes/organisms/intake.d.ts +29 -0
- package/dist/src/routes/organisms/intake.d.ts.map +1 -0
- package/dist/src/routes/organisms/intake.js +251 -0
- package/dist/src/routes/organisms/intake.js.map +1 -0
- package/dist/src/routes/organisms/membership.d.ts +4 -1
- package/dist/src/routes/organisms/membership.d.ts.map +1 -1
- package/dist/src/routes/organisms/membership.js +103 -60
- package/dist/src/routes/organisms/membership.js.map +1 -1
- package/dist/src/routes/organisms/shared.d.ts +28 -0
- package/dist/src/routes/organisms/shared.d.ts.map +1 -1
- package/dist/src/routes/organisms/shared.js +339 -26
- package/dist/src/routes/organisms/shared.js.map +1 -1
- package/dist/src/routes/organisms/workspace-access.d.ts +16 -0
- package/dist/src/routes/organisms/workspace-access.d.ts.map +1 -1
- package/dist/src/routes/organisms/workspace-access.js +136 -52
- package/dist/src/routes/organisms/workspace-access.js.map +1 -1
- package/dist/src/routes/organisms/workspace-ops.d.ts +6 -0
- package/dist/src/routes/organisms/workspace-ops.d.ts.map +1 -1
- package/dist/src/routes/organisms/workspace-ops.js +224 -11
- package/dist/src/routes/organisms/workspace-ops.js.map +1 -1
- package/dist/src/routes/organisms/workspace-read.d.ts +4 -0
- package/dist/src/routes/organisms/workspace-read.d.ts.map +1 -1
- package/dist/src/routes/organisms/workspace-read.js +14 -6
- package/dist/src/routes/organisms/workspace-read.js.map +1 -1
- package/dist/src/routes/organisms.d.ts.map +1 -1
- package/dist/src/routes/organisms.js +2 -0
- package/dist/src/routes/organisms.js.map +1 -1
- package/dist/src/routes/owners.d.ts +2 -0
- package/dist/src/routes/owners.d.ts.map +1 -1
- package/dist/src/routes/owners.js +17 -7
- package/dist/src/routes/owners.js.map +1 -1
- package/dist/src/routes/packages.d.ts.map +1 -1
- package/dist/src/routes/packages.js +10 -0
- package/dist/src/routes/packages.js.map +1 -1
- package/dist/src/routes/portal.d.ts +1 -1
- package/dist/src/routes/portal.d.ts.map +1 -1
- package/dist/src/routes/portal.js +3 -7
- package/dist/src/routes/portal.js.map +1 -1
- package/dist/src/routes/portfolio.d.ts +2 -0
- package/dist/src/routes/portfolio.d.ts.map +1 -1
- package/dist/src/routes/portfolio.js +41 -31
- package/dist/src/routes/portfolio.js.map +1 -1
- package/dist/src/routes/prompts.d.ts.map +1 -1
- package/dist/src/routes/prompts.js +23 -0
- package/dist/src/routes/prompts.js.map +1 -1
- package/dist/src/routes/schedules.d.ts +7 -0
- package/dist/src/routes/schedules.d.ts.map +1 -1
- package/dist/src/routes/schedules.js +102 -39
- package/dist/src/routes/schedules.js.map +1 -1
- package/dist/src/routes/upload.d.ts +4 -0
- package/dist/src/routes/upload.d.ts.map +1 -1
- package/dist/src/routes/upload.js +21 -1
- package/dist/src/routes/upload.js.map +1 -1
- package/dist/src/routes/usage.d.ts +9 -5
- package/dist/src/routes/usage.d.ts.map +1 -1
- package/dist/src/routes/usage.js +26 -5
- package/dist/src/routes/usage.js.map +1 -1
- package/dist/src/routes/wallet.d.ts +3 -0
- package/dist/src/routes/wallet.d.ts.map +1 -1
- package/dist/src/routes/wallet.js +17 -1
- package/dist/src/routes/wallet.js.map +1 -1
- package/dist/src/routes/work.d.ts.map +1 -1
- package/dist/src/routes/work.js +14 -9
- package/dist/src/routes/work.js.map +1 -1
- package/dist/src/routes/workflows.d.ts +4 -0
- package/dist/src/routes/workflows.d.ts.map +1 -1
- package/dist/src/routes/workflows.js +58 -1
- package/dist/src/routes/workflows.js.map +1 -1
- package/dist/src/server-bootstrap/config-init.d.ts.map +1 -1
- package/dist/src/server-bootstrap/config-init.js +7 -6
- package/dist/src/server-bootstrap/config-init.js.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.d.ts +1 -0
- package/dist/src/server-bootstrap/routes-loader.d.ts.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.js +27 -7
- package/dist/src/server-bootstrap/routes-loader.js.map +1 -1
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +4 -0
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/app-agent-deploy.d.ts +26 -0
- package/dist/src/services/app-agent-deploy.d.ts.map +1 -0
- package/dist/src/services/app-agent-deploy.js +91 -0
- package/dist/src/services/app-agent-deploy.js.map +1 -0
- package/dist/src/services/app-template-proposals.d.ts +94 -0
- package/dist/src/services/app-template-proposals.d.ts.map +1 -0
- package/dist/src/services/app-template-proposals.js +114 -0
- package/dist/src/services/app-template-proposals.js.map +1 -0
- package/dist/src/services/appdev-flow-constants.d.ts +33 -0
- package/dist/src/services/appdev-flow-constants.d.ts.map +1 -0
- package/dist/src/services/appdev-flow-constants.js +43 -0
- package/dist/src/services/appdev-flow-constants.js.map +1 -0
- package/dist/src/services/appdev-flow-prompt.d.ts +15 -0
- package/dist/src/services/appdev-flow-prompt.d.ts.map +1 -0
- package/dist/src/services/appdev-flow-prompt.js +40 -0
- package/dist/src/services/appdev-flow-prompt.js.map +1 -0
- package/dist/src/services/appdev-kb.d.ts +71 -0
- package/dist/src/services/appdev-kb.d.ts.map +1 -0
- package/dist/src/services/appdev-kb.js +178 -0
- package/dist/src/services/appdev-kb.js.map +1 -0
- package/dist/src/services/appdev-overview.d.ts +28 -0
- package/dist/src/services/appdev-overview.d.ts.map +1 -0
- package/dist/src/services/appdev-overview.js +189 -0
- package/dist/src/services/appdev-overview.js.map +1 -0
- package/dist/src/services/build-app-prompt.d.ts +14 -0
- package/dist/src/services/build-app-prompt.d.ts.map +1 -1
- package/dist/src/services/build-app-prompt.js +62 -34
- package/dist/src/services/build-app-prompt.js.map +1 -1
- package/dist/src/services/config-schema.d.ts.map +1 -1
- package/dist/src/services/config-schema.js +1 -3
- package/dist/src/services/config-schema.js.map +1 -1
- package/dist/src/services/consent.d.ts.map +1 -1
- package/dist/src/services/consent.js +8 -3
- package/dist/src/services/consent.js.map +1 -1
- package/dist/src/services/contacts.d.ts +64 -0
- package/dist/src/services/contacts.d.ts.map +1 -0
- package/dist/src/services/contacts.js +133 -0
- package/dist/src/services/contacts.js.map +1 -0
- package/dist/src/services/core-jobs.d.ts +4 -0
- package/dist/src/services/core-jobs.d.ts.map +1 -1
- package/dist/src/services/core-jobs.js +23 -0
- package/dist/src/services/core-jobs.js.map +1 -1
- package/dist/src/services/dangling-refs.d.ts +2 -0
- package/dist/src/services/dangling-refs.d.ts.map +1 -1
- package/dist/src/services/dangling-refs.js +3 -2
- package/dist/src/services/dangling-refs.js.map +1 -1
- package/dist/src/services/db/access-tab-db-service.d.ts +49 -0
- package/dist/src/services/db/access-tab-db-service.d.ts.map +1 -0
- package/dist/src/services/db/access-tab-db-service.js +87 -0
- package/dist/src/services/db/access-tab-db-service.js.map +1 -0
- package/dist/src/services/db/agent-activity-overview-db-service.d.ts +62 -0
- package/dist/src/services/db/agent-activity-overview-db-service.d.ts.map +1 -0
- package/dist/src/services/db/agent-activity-overview-db-service.js +88 -0
- package/dist/src/services/db/agent-activity-overview-db-service.js.map +1 -0
- package/dist/src/services/db/agent-data-access-overview-db-service.d.ts +45 -0
- package/dist/src/services/db/agent-data-access-overview-db-service.d.ts.map +1 -0
- package/dist/src/services/db/agent-data-access-overview-db-service.js +42 -0
- package/dist/src/services/db/agent-data-access-overview-db-service.js.map +1 -0
- package/dist/src/services/db/agent-db-service.d.ts +58 -0
- package/dist/src/services/db/agent-db-service.d.ts.map +1 -0
- package/dist/src/services/db/agent-db-service.js +49 -0
- package/dist/src/services/db/agent-db-service.js.map +1 -0
- package/dist/src/services/db/agent-integration-overview-db-service.d.ts +44 -0
- package/dist/src/services/db/agent-integration-overview-db-service.d.ts.map +1 -0
- package/dist/src/services/db/agent-integration-overview-db-service.js +44 -0
- package/dist/src/services/db/agent-integration-overview-db-service.js.map +1 -0
- package/dist/src/services/db/agent-messages-overview-db-service.d.ts +40 -0
- package/dist/src/services/db/agent-messages-overview-db-service.d.ts.map +1 -0
- package/dist/src/services/db/agent-messages-overview-db-service.js +47 -0
- package/dist/src/services/db/agent-messages-overview-db-service.js.map +1 -0
- package/dist/src/services/db/agent-quality-overview-db-service.d.ts +43 -0
- package/dist/src/services/db/agent-quality-overview-db-service.d.ts.map +1 -0
- package/dist/src/services/db/agent-quality-overview-db-service.js +34 -0
- package/dist/src/services/db/agent-quality-overview-db-service.js.map +1 -0
- package/dist/src/services/db/calibrator-detail-db-service.d.ts +41 -0
- package/dist/src/services/db/calibrator-detail-db-service.d.ts.map +1 -0
- package/dist/src/services/db/calibrator-detail-db-service.js +61 -0
- package/dist/src/services/db/calibrator-detail-db-service.js.map +1 -0
- package/dist/src/services/db/data-wallet-db-service.d.ts +48 -0
- package/dist/src/services/db/data-wallet-db-service.d.ts.map +1 -0
- package/dist/src/services/db/data-wallet-db-service.js +74 -0
- package/dist/src/services/db/data-wallet-db-service.js.map +1 -0
- package/dist/src/services/db/generator-state-db-service.d.ts +48 -0
- package/dist/src/services/db/generator-state-db-service.d.ts.map +1 -0
- package/dist/src/services/db/generator-state-db-service.js +45 -0
- package/dist/src/services/db/generator-state-db-service.js.map +1 -0
- package/dist/src/services/db/home-dashboard-service.d.ts +65 -0
- package/dist/src/services/db/home-dashboard-service.d.ts.map +1 -0
- package/dist/src/services/db/home-dashboard-service.js +57 -0
- package/dist/src/services/db/home-dashboard-service.js.map +1 -0
- package/dist/src/services/db/index.d.ts +48 -0
- package/dist/src/services/db/index.d.ts.map +1 -0
- package/dist/src/services/db/index.js +40 -0
- package/dist/src/services/db/index.js.map +1 -0
- package/dist/src/services/db/knowledge-tab-db-service.d.ts +35 -0
- package/dist/src/services/db/knowledge-tab-db-service.d.ts.map +1 -0
- package/dist/src/services/db/knowledge-tab-db-service.js +37 -0
- package/dist/src/services/db/knowledge-tab-db-service.js.map +1 -0
- package/dist/src/services/db/living-docs-db-service.d.ts +43 -0
- package/dist/src/services/db/living-docs-db-service.d.ts.map +1 -0
- package/dist/src/services/db/living-docs-db-service.js +45 -0
- package/dist/src/services/db/living-docs-db-service.js.map +1 -0
- package/dist/src/services/db/memory-db-service.d.ts +122 -0
- package/dist/src/services/db/memory-db-service.d.ts.map +1 -0
- package/dist/src/services/db/memory-db-service.js +171 -0
- package/dist/src/services/db/memory-db-service.js.map +1 -0
- package/dist/src/services/db/memory-tab-db-service.d.ts +54 -0
- package/dist/src/services/db/memory-tab-db-service.d.ts.map +1 -0
- package/dist/src/services/db/memory-tab-db-service.js +94 -0
- package/dist/src/services/db/memory-tab-db-service.js.map +1 -0
- package/dist/src/services/db/messages-inbox-db-service.d.ts +47 -0
- package/dist/src/services/db/messages-inbox-db-service.d.ts.map +1 -0
- package/dist/src/services/db/messages-inbox-db-service.js +76 -0
- package/dist/src/services/db/messages-inbox-db-service.js.map +1 -0
- package/dist/src/services/db/messaging-db-service.d.ts +40 -0
- package/dist/src/services/db/messaging-db-service.d.ts.map +1 -0
- package/dist/src/services/db/messaging-db-service.js +55 -0
- package/dist/src/services/db/messaging-db-service.js.map +1 -0
- package/dist/src/services/db/notebook-db-service.d.ts +35 -0
- package/dist/src/services/db/notebook-db-service.d.ts.map +1 -0
- package/dist/src/services/db/notebook-db-service.js +44 -0
- package/dist/src/services/db/notebook-db-service.js.map +1 -0
- package/dist/src/services/db/owner-identity.d.ts +36 -0
- package/dist/src/services/db/owner-identity.d.ts.map +1 -0
- package/dist/src/services/db/owner-identity.js +27 -0
- package/dist/src/services/db/owner-identity.js.map +1 -0
- package/dist/src/services/db/packages-tab-db-service.d.ts +42 -0
- package/dist/src/services/db/packages-tab-db-service.d.ts.map +1 -0
- package/dist/src/services/db/packages-tab-db-service.js +33 -0
- package/dist/src/services/db/packages-tab-db-service.js.map +1 -0
- package/dist/src/services/db/security-tab-db-service.d.ts +47 -0
- package/dist/src/services/db/security-tab-db-service.d.ts.map +1 -0
- package/dist/src/services/db/security-tab-db-service.js +61 -0
- package/dist/src/services/db/security-tab-db-service.js.map +1 -0
- package/dist/src/services/db/wallet-tab-db-service.d.ts +47 -0
- package/dist/src/services/db/wallet-tab-db-service.d.ts.map +1 -0
- package/dist/src/services/db/wallet-tab-db-service.js +80 -0
- package/dist/src/services/db/wallet-tab-db-service.js.map +1 -0
- package/dist/src/services/db/work-tab-db-service.d.ts +32 -0
- package/dist/src/services/db/work-tab-db-service.d.ts.map +1 -0
- package/dist/src/services/db/work-tab-db-service.js +49 -0
- package/dist/src/services/db/work-tab-db-service.js.map +1 -0
- package/dist/src/services/directory.d.ts +1 -0
- package/dist/src/services/directory.d.ts.map +1 -1
- package/dist/src/services/directory.js +6 -2
- package/dist/src/services/directory.js.map +1 -1
- package/dist/src/services/discovery/setup.d.ts +3 -0
- package/dist/src/services/discovery/setup.d.ts.map +1 -1
- package/dist/src/services/discovery/setup.js +2 -0
- package/dist/src/services/discovery/setup.js.map +1 -1
- package/dist/src/services/discovery/sources/memory-source.d.ts +2 -0
- package/dist/src/services/discovery/sources/memory-source.d.ts.map +1 -1
- package/dist/src/services/discovery/sources/memory-source.js.map +1 -1
- package/dist/src/services/discovery/sources/templates-source.d.ts +20 -0
- package/dist/src/services/discovery/sources/templates-source.d.ts.map +1 -0
- package/dist/src/services/discovery/sources/templates-source.js +52 -0
- package/dist/src/services/discovery/sources/templates-source.js.map +1 -0
- package/dist/src/services/ext-pay-token.d.ts +29 -0
- package/dist/src/services/ext-pay-token.d.ts.map +1 -0
- package/dist/src/services/ext-pay-token.js +63 -0
- package/dist/src/services/ext-pay-token.js.map +1 -0
- package/dist/src/services/extension-runtime.d.ts.map +1 -1
- package/dist/src/services/extension-runtime.js +9 -2
- package/dist/src/services/extension-runtime.js.map +1 -1
- package/dist/src/services/feedback.d.ts +38 -0
- package/dist/src/services/feedback.d.ts.map +1 -0
- package/dist/src/services/feedback.js +118 -0
- package/dist/src/services/feedback.js.map +1 -0
- package/dist/src/services/generator-autopilot.d.ts.map +1 -1
- package/dist/src/services/generator-autopilot.js +12 -19
- package/dist/src/services/generator-autopilot.js.map +1 -1
- package/dist/src/services/generator-prompt-seeds/blueprint-prompts.d.ts.map +1 -1
- package/dist/src/services/generator-prompt-seeds/blueprint-prompts.js +28 -1
- package/dist/src/services/generator-prompt-seeds/blueprint-prompts.js.map +1 -1
- package/dist/src/services/generator-prompt-seeds/cortex-code.d.ts +5 -0
- package/dist/src/services/generator-prompt-seeds/cortex-code.d.ts.map +1 -1
- package/dist/src/services/generator-prompt-seeds/cortex-code.js +54 -3
- package/dist/src/services/generator-prompt-seeds/cortex-code.js.map +1 -1
- package/dist/src/services/generator-prompt-seeds/extension-prompts.d.ts.map +1 -1
- package/dist/src/services/generator-prompt-seeds/extension-prompts.js +106 -2
- package/dist/src/services/generator-prompt-seeds/extension-prompts.js.map +1 -1
- package/dist/src/services/generator-prompt-seeds/shared-fragments.js +1 -1
- package/dist/src/services/generator-prompts/resolvers-blueprint.d.ts.map +1 -1
- package/dist/src/services/generator-prompts/resolvers-blueprint.js +9 -0
- package/dist/src/services/generator-prompts/resolvers-blueprint.js.map +1 -1
- package/dist/src/services/generator-prompts/resolvers-cortex.d.ts.map +1 -1
- package/dist/src/services/generator-prompts/resolvers-cortex.js +4 -0
- package/dist/src/services/generator-prompts/resolvers-cortex.js.map +1 -1
- package/dist/src/services/generator-prompts/resolvers-fix.d.ts +4 -0
- package/dist/src/services/generator-prompts/resolvers-fix.d.ts.map +1 -1
- package/dist/src/services/generator-prompts/resolvers-fix.js +68 -0
- package/dist/src/services/generator-prompts/resolvers-fix.js.map +1 -1
- package/dist/src/services/generator-prompts/resolvers.d.ts.map +1 -1
- package/dist/src/services/generator-prompts/resolvers.js +5 -1
- package/dist/src/services/generator-prompts/resolvers.js.map +1 -1
- package/dist/src/services/generator-prompts/types.d.ts +9 -0
- package/dist/src/services/generator-prompts/types.d.ts.map +1 -1
- package/dist/src/services/handbooks/agent.d.ts +2 -1
- package/dist/src/services/handbooks/agent.d.ts.map +1 -1
- package/dist/src/services/handbooks/agent.js +8 -0
- package/dist/src/services/handbooks/agent.js.map +1 -1
- package/dist/src/services/handbooks/appdev.d.ts +2 -1
- package/dist/src/services/handbooks/appdev.d.ts.map +1 -1
- package/dist/src/services/handbooks/appdev.js +19 -0
- package/dist/src/services/handbooks/appdev.js.map +1 -1
- package/dist/src/services/invitations.d.ts +76 -1
- package/dist/src/services/invitations.d.ts.map +1 -1
- package/dist/src/services/invitations.js +295 -9
- package/dist/src/services/invitations.js.map +1 -1
- package/dist/src/services/job-seeding.d.ts.map +1 -1
- package/dist/src/services/job-seeding.js +2 -0
- package/dist/src/services/job-seeding.js.map +1 -1
- package/dist/src/services/living-author.js +1 -1
- package/dist/src/services/living-author.js.map +1 -1
- package/dist/src/services/llm-strip.d.ts +13 -0
- package/dist/src/services/llm-strip.d.ts.map +1 -0
- package/dist/src/services/llm-strip.js +60 -0
- package/dist/src/services/llm-strip.js.map +1 -0
- package/dist/src/services/manifest-schema.d.ts.map +1 -1
- package/dist/src/services/manifest-schema.js +1 -0
- package/dist/src/services/manifest-schema.js.map +1 -1
- package/dist/src/services/matching.d.ts +1 -0
- package/dist/src/services/matching.d.ts.map +1 -1
- package/dist/src/services/matching.js +28 -19
- package/dist/src/services/matching.js.map +1 -1
- package/dist/src/services/message-send.d.ts.map +1 -1
- package/dist/src/services/message-send.js +5 -0
- package/dist/src/services/message-send.js.map +1 -1
- package/dist/src/services/notebook-classify.js +1 -1
- package/dist/src/services/notebook-classify.js.map +1 -1
- package/dist/src/services/notebook-plan.js +1 -1
- package/dist/src/services/notebook-plan.js.map +1 -1
- package/dist/src/services/notify.d.ts +45 -0
- package/dist/src/services/notify.d.ts.map +1 -1
- package/dist/src/services/notify.js +21 -2
- package/dist/src/services/notify.js.map +1 -1
- package/dist/src/services/owner-memory.d.ts +9 -0
- package/dist/src/services/owner-memory.d.ts.map +1 -1
- package/dist/src/services/owner-memory.js +42 -18
- package/dist/src/services/owner-memory.js.map +1 -1
- package/dist/src/services/perf-trace.d.ts +43 -0
- package/dist/src/services/perf-trace.d.ts.map +1 -0
- package/dist/src/services/perf-trace.js +149 -0
- package/dist/src/services/perf-trace.js.map +1 -0
- package/dist/src/services/prompt-defaults.d.ts.map +1 -1
- package/dist/src/services/prompt-defaults.js +0 -5
- package/dist/src/services/prompt-defaults.js.map +1 -1
- package/dist/src/services/push.d.ts +5 -0
- package/dist/src/services/push.d.ts.map +1 -1
- package/dist/src/services/push.js.map +1 -1
- package/dist/src/services/quota.d.ts +3 -1
- package/dist/src/services/quota.d.ts.map +1 -1
- package/dist/src/services/quota.js +6 -9
- package/dist/src/services/quota.js.map +1 -1
- package/dist/src/services/structure-overview.d.ts +3 -0
- package/dist/src/services/structure-overview.d.ts.map +1 -1
- package/dist/src/services/structure-overview.js +3 -1
- package/dist/src/services/structure-overview.js.map +1 -1
- package/dist/src/services/structure-snapshot.d.ts.map +1 -1
- package/dist/src/services/structure-snapshot.js +24 -1
- package/dist/src/services/structure-snapshot.js.map +1 -1
- package/dist/src/services/tracked-classify.js +1 -1
- package/dist/src/services/tracked-classify.js.map +1 -1
- package/dist/src/services/usage-summary.d.ts +3 -0
- package/dist/src/services/usage-summary.d.ts.map +1 -1
- package/dist/src/services/usage-summary.js +31 -29
- package/dist/src/services/usage-summary.js.map +1 -1
- package/dist/src/services/workflow/engine-human.d.ts +33 -0
- package/dist/src/services/workflow/engine-human.d.ts.map +1 -0
- package/dist/src/services/workflow/engine-human.js +44 -0
- package/dist/src/services/workflow/engine-human.js.map +1 -0
- package/dist/src/services/workflow/engine-steps.d.ts +13 -0
- package/dist/src/services/workflow/engine-steps.d.ts.map +1 -1
- package/dist/src/services/workflow/engine-steps.js +33 -2
- package/dist/src/services/workflow/engine-steps.js.map +1 -1
- package/dist/src/services/workflow/engine.d.ts +20 -0
- package/dist/src/services/workflow/engine.d.ts.map +1 -1
- package/dist/src/services/workflow/engine.js +77 -3
- package/dist/src/services/workflow/engine.js.map +1 -1
- package/dist/src/services/workflow/store.d.ts +3 -0
- package/dist/src/services/workflow/store.d.ts.map +1 -1
- package/dist/src/services/workflow/store.js +29 -4
- package/dist/src/services/workflow/store.js.map +1 -1
- package/dist/src/services/workspace-access.d.ts +12 -0
- package/dist/src/services/workspace-access.d.ts.map +1 -1
- package/dist/src/services/workspace-access.js +24 -5
- package/dist/src/services/workspace-access.js.map +1 -1
- package/dist/src/services/workspace-provision.d.ts +51 -0
- package/dist/src/services/workspace-provision.d.ts.map +1 -0
- package/dist/src/services/workspace-provision.js +56 -0
- package/dist/src/services/workspace-provision.js.map +1 -0
- package/dist/src/services/workspace-versions.d.ts +110 -0
- package/dist/src/services/workspace-versions.d.ts.map +1 -0
- package/dist/src/services/workspace-versions.js +0 -0
- package/dist/src/services/workspace-versions.js.map +1 -0
- package/dist/src/storage/adapter/legacy-memory-adapter.d.ts +61 -0
- package/dist/src/storage/adapter/legacy-memory-adapter.d.ts.map +1 -0
- package/dist/src/storage/adapter/legacy-memory-adapter.js +135 -0
- package/dist/src/storage/adapter/legacy-memory-adapter.js.map +1 -0
- package/dist/src/storage/adapter/memory-adapter.d.ts +126 -0
- package/dist/src/storage/adapter/memory-adapter.d.ts.map +1 -0
- package/dist/src/storage/adapter/memory-adapter.js +2 -0
- package/dist/src/storage/adapter/memory-adapter.js.map +1 -0
- package/dist/src/storage/interface.d.ts +3 -1
- package/dist/src/storage/interface.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/index.d.ts +28 -0
- package/dist/src/storage/providers/mongodb/index.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/index.js +91 -1
- package/dist/src/storage/providers/mongodb/index.js.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/apps.d.ts +9 -0
- package/dist/src/storage/providers/mongodb/methods/apps.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/apps.js +38 -0
- package/dist/src/storage/providers/mongodb/methods/apps.js.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/governance.d.ts +5 -0
- package/dist/src/storage/providers/mongodb/methods/governance.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/governance.js +23 -2
- package/dist/src/storage/providers/mongodb/methods/governance.js.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/identity.d.ts +6 -0
- package/dist/src/storage/providers/mongodb/methods/identity.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/identity.js +51 -9
- package/dist/src/storage/providers/mongodb/methods/identity.js.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/owner-memory-scope.d.ts +34 -0
- package/dist/src/storage/providers/mongodb/methods/owner-memory-scope.d.ts.map +1 -0
- package/dist/src/storage/providers/mongodb/methods/owner-memory-scope.js +77 -0
- package/dist/src/storage/providers/mongodb/methods/owner-memory-scope.js.map +1 -0
- package/dist/src/storage/providers/mongodb/methods/owners-memory-bulk.d.ts +30 -0
- package/dist/src/storage/providers/mongodb/methods/owners-memory-bulk.d.ts.map +1 -0
- package/dist/src/storage/providers/mongodb/methods/owners-memory-bulk.js +0 -0
- package/dist/src/storage/providers/mongodb/methods/owners-memory-bulk.js.map +1 -0
- package/dist/src/storage/providers/mongodb/methods/owners.d.ts +8 -4
- package/dist/src/storage/providers/mongodb/methods/owners.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/owners.js +112 -21
- package/dist/src/storage/providers/mongodb/methods/owners.js.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/sessions.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/sessions.js +4 -0
- package/dist/src/storage/providers/mongodb/methods/sessions.js.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/storage-stats.d.ts +21 -0
- package/dist/src/storage/providers/mongodb/methods/storage-stats.d.ts.map +1 -0
- package/dist/src/storage/providers/mongodb/methods/storage-stats.js +58 -0
- package/dist/src/storage/providers/mongodb/methods/storage-stats.js.map +1 -0
- package/dist/src/storage/providers/mongodb/methods/work.d.ts +8 -0
- package/dist/src/storage/providers/mongodb/methods/work.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/methods/work.js +42 -0
- package/dist/src/storage/providers/mongodb/methods/work.js.map +1 -1
- package/dist/src/storage/providers/postgres/index.d.ts +1 -0
- package/dist/src/storage/providers/postgres/index.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres/index.js +1 -0
- package/dist/src/storage/providers/postgres/index.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/db-types.d.ts +1538 -0
- package/dist/src/storage/providers/postgres-kysely/db-types.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/db-types.js +6 -0
- package/dist/src/storage/providers/postgres-kysely/db-types.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/helpers.d.ts +23 -0
- package/dist/src/storage/providers/postgres-kysely/helpers.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/helpers.js +91 -0
- package/dist/src/storage/providers/postgres-kysely/helpers.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/index.d.ts +38 -0
- package/dist/src/storage/providers/postgres-kysely/index.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/index.js +81 -0
- package/dist/src/storage/providers/postgres-kysely/index.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/actions.d.ts +16 -0
- package/dist/src/storage/providers/postgres-kysely/methods/actions.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/actions.js +103 -0
- package/dist/src/storage/providers/postgres-kysely/methods/actions.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-misc.d.ts +37 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-misc.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-misc.js +306 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-misc.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-msg-dispute-invite.d.ts +55 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-msg-dispute-invite.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-msg-dispute-invite.js +247 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-msg-dispute-invite.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-onboarding.d.ts +11 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-onboarding.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-onboarding.js +81 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-onboarding.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-tasks.d.ts +50 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-tasks.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-tasks.js +238 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-tasks.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-usage.d.ts +10 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-usage.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-usage.js +146 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-usage.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/app-grants.d.ts +11 -0
- package/dist/src/storage/providers/postgres-kysely/methods/app-grants.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/app-grants.js +51 -0
- package/dist/src/storage/providers/postgres-kysely/methods/app-grants.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/app-purchases.d.ts +10 -0
- package/dist/src/storage/providers/postgres-kysely/methods/app-purchases.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/app-purchases.js +53 -0
- package/dist/src/storage/providers/postgres-kysely/methods/app-purchases.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/apps.d.ts +48 -0
- package/dist/src/storage/providers/postgres-kysely/methods/apps.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/apps.js +367 -0
- package/dist/src/storage/providers/postgres-kysely/methods/apps.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/boards.d.ts +28 -0
- package/dist/src/storage/providers/postgres-kysely/methods/boards.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/boards.js +104 -0
- package/dist/src/storage/providers/postgres-kysely/methods/boards.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/capabilities.d.ts +36 -0
- package/dist/src/storage/providers/postgres-kysely/methods/capabilities.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/capabilities.js +222 -0
- package/dist/src/storage/providers/postgres-kysely/methods/capabilities.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/catalogue.d.ts +19 -0
- package/dist/src/storage/providers/postgres-kysely/methods/catalogue.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/catalogue.js +96 -0
- package/dist/src/storage/providers/postgres-kysely/methods/catalogue.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/consent.d.ts +26 -0
- package/dist/src/storage/providers/postgres-kysely/methods/consent.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/consent.js +119 -0
- package/dist/src/storage/providers/postgres-kysely/methods/consent.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/device-auth.d.ts +13 -0
- package/dist/src/storage/providers/postgres-kysely/methods/device-auth.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/device-auth.js +68 -0
- package/dist/src/storage/providers/postgres-kysely/methods/device-auth.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/direct-message.d.ts +72 -0
- package/dist/src/storage/providers/postgres-kysely/methods/direct-message.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/direct-message.js +352 -0
- package/dist/src/storage/providers/postgres-kysely/methods/direct-message.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/ecosystem.d.ts +22 -0
- package/dist/src/storage/providers/postgres-kysely/methods/ecosystem.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/ecosystem.js +201 -0
- package/dist/src/storage/providers/postgres-kysely/methods/ecosystem.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/federation.d.ts +42 -0
- package/dist/src/storage/providers/postgres-kysely/methods/federation.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/federation.js +295 -0
- package/dist/src/storage/providers/postgres-kysely/methods/federation.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/feedback.d.ts +15 -0
- package/dist/src/storage/providers/postgres-kysely/methods/feedback.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/feedback.js +52 -0
- package/dist/src/storage/providers/postgres-kysely/methods/feedback.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/files.d.ts +20 -0
- package/dist/src/storage/providers/postgres-kysely/methods/files.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/files.js +108 -0
- package/dist/src/storage/providers/postgres-kysely/methods/files.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity-extras.d.ts +19 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity-extras.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity-extras.js +101 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity-extras.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity.d.ts +34 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity.js +298 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/knowledge.d.ts +21 -0
- package/dist/src/storage/providers/postgres-kysely/methods/knowledge.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/knowledge.js +65 -0
- package/dist/src/storage/providers/postgres-kysely/methods/knowledge.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/marketplace.d.ts +24 -0
- package/dist/src/storage/providers/postgres-kysely/methods/marketplace.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/marketplace.js +122 -0
- package/dist/src/storage/providers/postgres-kysely/methods/marketplace.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/memory.d.ts +81 -0
- package/dist/src/storage/providers/postgres-kysely/methods/memory.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/memory.js +342 -0
- package/dist/src/storage/providers/postgres-kysely/methods/memory.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/micro-memory.d.ts +15 -0
- package/dist/src/storage/providers/postgres-kysely/methods/micro-memory.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/micro-memory.js +55 -0
- package/dist/src/storage/providers/postgres-kysely/methods/micro-memory.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/moderation.d.ts +38 -0
- package/dist/src/storage/providers/postgres-kysely/methods/moderation.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/moderation.js +176 -0
- package/dist/src/storage/providers/postgres-kysely/methods/moderation.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/node-ext-escrow.d.ts +38 -0
- package/dist/src/storage/providers/postgres-kysely/methods/node-ext-escrow.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/node-ext-escrow.js +243 -0
- package/dist/src/storage/providers/postgres-kysely/methods/node-ext-escrow.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/node-infra.d.ts +30 -0
- package/dist/src/storage/providers/postgres-kysely/methods/node-infra.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/node-infra.js +158 -0
- package/dist/src/storage/providers/postgres-kysely/methods/node-infra.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/notifications.d.ts +19 -0
- package/dist/src/storage/providers/postgres-kysely/methods/notifications.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/notifications.js +106 -0
- package/dist/src/storage/providers/postgres-kysely/methods/notifications.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/oauth.d.ts +20 -0
- package/dist/src/storage/providers/postgres-kysely/methods/oauth.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/oauth.js +94 -0
- package/dist/src/storage/providers/postgres-kysely/methods/oauth.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/organisms.d.ts +46 -0
- package/dist/src/storage/providers/postgres-kysely/methods/organisms.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/organisms.js +247 -0
- package/dist/src/storage/providers/postgres-kysely/methods/organisms.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/otk.d.ts +10 -0
- package/dist/src/storage/providers/postgres-kysely/methods/otk.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/otk.js +60 -0
- package/dist/src/storage/providers/postgres-kysely/methods/otk.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/packages.d.ts +32 -0
- package/dist/src/storage/providers/postgres-kysely/methods/packages.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/packages.js +228 -0
- package/dist/src/storage/providers/postgres-kysely/methods/packages.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/pat.d.ts +10 -0
- package/dist/src/storage/providers/postgres-kysely/methods/pat.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/pat.js +36 -0
- package/dist/src/storage/providers/postgres-kysely/methods/pat.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/schedules.d.ts +32 -0
- package/dist/src/storage/providers/postgres-kysely/methods/schedules.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/schedules.js +131 -0
- package/dist/src/storage/providers/postgres-kysely/methods/schedules.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/schema.d.ts +10 -0
- package/dist/src/storage/providers/postgres-kysely/methods/schema.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/schema.js +88 -0
- package/dist/src/storage/providers/postgres-kysely/methods/schema.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/sessions.d.ts +38 -0
- package/dist/src/storage/providers/postgres-kysely/methods/sessions.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/sessions.js +66 -0
- package/dist/src/storage/providers/postgres-kysely/methods/sessions.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/subdomain-sites.d.ts +10 -0
- package/dist/src/storage/providers/postgres-kysely/methods/subdomain-sites.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/subdomain-sites.js +36 -0
- package/dist/src/storage/providers/postgres-kysely/methods/subdomain-sites.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/system-extras.d.ts +23 -0
- package/dist/src/storage/providers/postgres-kysely/methods/system-extras.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/system-extras.js +109 -0
- package/dist/src/storage/providers/postgres-kysely/methods/system-extras.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/system.d.ts +32 -0
- package/dist/src/storage/providers/postgres-kysely/methods/system.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/system.js +144 -0
- package/dist/src/storage/providers/postgres-kysely/methods/system.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/template-listings.d.ts +34 -0
- package/dist/src/storage/providers/postgres-kysely/methods/template-listings.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/template-listings.js +278 -0
- package/dist/src/storage/providers/postgres-kysely/methods/template-listings.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.d.ts +13 -0
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.js +129 -0
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/work.d.ts +14 -0
- package/dist/src/storage/providers/postgres-kysely/methods/work.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/work.js +80 -0
- package/dist/src/storage/providers/postgres-kysely/methods/work.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/migrate.d.ts +4 -0
- package/dist/src/storage/providers/postgres-kysely/migrate.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/migrate.js +40 -0
- package/dist/src/storage/providers/postgres-kysely/migrate.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0001_base_schema.sql +2406 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0002_memory_fts.sql +20 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0003_id_defaults.sql +15 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0004_otk_initial.sql +4 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0005_storage_stats.sql +9 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0006_membership_invited_workspaces.sql +5 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0007_contacts_origin.sql +5 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0008_feedback.sql +21 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0009_invitation_return_url.sql +7 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0010_agent_model.sql +5 -0
- package/dist/src/storage/providers/sqlite/index.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/index.js +4 -1
- package/dist/src/storage/providers/sqlite/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/apps.d.ts +11 -1
- package/dist/src/storage/providers/sqlite/methods/apps.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/apps.js +40 -0
- package/dist/src/storage/providers/sqlite/methods/apps.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/capability-agents.d.ts +12 -1
- package/dist/src/storage/providers/sqlite/methods/capability-agents.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/capability-agents.js +42 -0
- package/dist/src/storage/providers/sqlite/methods/capability-agents.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/community.d.ts +6 -0
- package/dist/src/storage/providers/sqlite/methods/community.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/community.js +29 -3
- package/dist/src/storage/providers/sqlite/methods/community.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/extensions-notify.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/extensions-notify.js +11 -2
- package/dist/src/storage/providers/sqlite/methods/extensions-notify.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/feedback.d.ts +23 -0
- package/dist/src/storage/providers/sqlite/methods/feedback.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/feedback.js +64 -0
- package/dist/src/storage/providers/sqlite/methods/feedback.js.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/governance.d.ts +5 -0
- package/dist/src/storage/providers/sqlite/methods/governance.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/governance.js +43 -9
- package/dist/src/storage/providers/sqlite/methods/governance.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/identity-nodes.d.ts +8 -0
- package/dist/src/storage/providers/sqlite/methods/identity-nodes.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/identity-nodes.js +48 -0
- package/dist/src/storage/providers/sqlite/methods/identity-nodes.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/messaging.d.ts +15 -1
- package/dist/src/storage/providers/sqlite/methods/messaging.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/messaging.js +11 -2
- package/dist/src/storage/providers/sqlite/methods/messaging.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/owner-memory-bulk.d.ts +28 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-bulk.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-bulk.js +101 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-bulk.js.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-scope.d.ts +35 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-scope.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-scope.js +118 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-scope.js.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/owner.d.ts +6 -0
- package/dist/src/storage/providers/sqlite/methods/owner.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/owner.js +41 -9
- package/dist/src/storage/providers/sqlite/methods/owner.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/work.d.ts +8 -0
- package/dist/src/storage/providers/sqlite/methods/work.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/work.js +31 -0
- package/dist/src/storage/providers/sqlite/methods/work.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/action.d.ts +3 -0
- package/dist/src/storage/providers/sqlite/repos/action.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/action.js +9 -0
- package/dist/src/storage/providers/sqlite/repos/action.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/agent.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/agent.js +8 -4
- package/dist/src/storage/providers/sqlite/repos/agent.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/community.d.ts +1 -0
- package/dist/src/storage/providers/sqlite/repos/community.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/community.js +9 -3
- package/dist/src/storage/providers/sqlite/repos/community.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/direct-message.d.ts +13 -1
- package/dist/src/storage/providers/sqlite/repos/direct-message.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/direct-message.js +70 -5
- package/dist/src/storage/providers/sqlite/repos/direct-message.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/memory.d.ts +7 -0
- package/dist/src/storage/providers/sqlite/repos/memory.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/memory.js +24 -3
- package/dist/src/storage/providers/sqlite/repos/memory.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/storage-file.d.ts +12 -0
- package/dist/src/storage/providers/sqlite/repos/storage-file.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/storage-file.js +24 -0
- package/dist/src/storage/providers/sqlite/repos/storage-file.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-1.d.ts +1 -0
- package/dist/src/storage/providers/sqlite/schema-tables-1.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-1.js +18 -1
- package/dist/src/storage/providers/sqlite/schema-tables-1.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-2.d.ts +1 -0
- package/dist/src/storage/providers/sqlite/schema-tables-2.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-2.js +4 -1
- package/dist/src/storage/providers/sqlite/schema-tables-2.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-3.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-3.js +11 -1
- package/dist/src/storage/providers/sqlite/schema-tables-3.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.d.ts +0 -1
- package/dist/src/storage/providers/sqlite/schema.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.js +24 -0
- package/dist/src/storage/providers/sqlite/schema.js.map +1 -1
- package/dist/src/storage/repositories/action.repository.d.ts +2 -0
- package/dist/src/storage/repositories/action.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/agent.repository.d.ts +3 -0
- package/dist/src/storage/repositories/agent.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/app.repository.d.ts +0 -0
- package/dist/src/storage/repositories/app.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/consent.repository.d.ts +10 -0
- package/dist/src/storage/repositories/consent.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/direct-message.repository.d.ts +36 -11
- package/dist/src/storage/repositories/direct-message.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/direct-message.repository.js +2 -0
- package/dist/src/storage/repositories/direct-message.repository.js.map +1 -1
- package/dist/src/storage/repositories/feedback.repository.d.ts +28 -0
- package/dist/src/storage/repositories/feedback.repository.d.ts.map +1 -0
- package/dist/src/storage/repositories/feedback.repository.js +13 -0
- package/dist/src/storage/repositories/feedback.repository.js.map +1 -0
- package/dist/src/storage/repositories/file.repository.d.ts +11 -0
- package/dist/src/storage/repositories/file.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/identity.repository.d.ts +7 -0
- package/dist/src/storage/repositories/identity.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/index.d.ts +1 -0
- package/dist/src/storage/repositories/index.d.ts.map +1 -1
- package/dist/src/storage/repositories/invitation.repository.d.ts +3 -0
- package/dist/src/storage/repositories/invitation.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/invitation.repository.js +2 -0
- package/dist/src/storage/repositories/invitation.repository.js.map +1 -1
- package/dist/src/storage/repositories/memory.repository.d.ts +133 -1
- package/dist/src/storage/repositories/memory.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/micro-memory.repository.d.ts +6 -0
- package/dist/src/storage/repositories/micro-memory.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/organism.repository.d.ts +10 -0
- package/dist/src/storage/repositories/organism.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/stats.repository.d.ts +31 -2
- package/dist/src/storage/repositories/stats.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/stats.repository.js +5 -2
- package/dist/src/storage/repositories/stats.repository.js.map +1 -1
- package/dist/src/storage/repositories/work.repository.d.ts +7 -0
- package/dist/src/storage/repositories/work.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories-impl/memory-repository.d.ts +78 -0
- package/dist/src/storage/repositories-impl/memory-repository.d.ts.map +1 -0
- package/dist/src/storage/repositories-impl/memory-repository.js +121 -0
- package/dist/src/storage/repositories-impl/memory-repository.js.map +1 -0
- package/dist/src/storage/schema-lock-cache.d.ts +24 -0
- package/dist/src/storage/schema-lock-cache.d.ts.map +1 -0
- package/dist/src/storage/schema-lock-cache.js +19 -0
- package/dist/src/storage/schema-lock-cache.js.map +1 -0
- package/dist/src/storage/storage-factory.d.ts +6 -3
- package/dist/src/storage/storage-factory.d.ts.map +1 -1
- package/dist/src/storage/storage-factory.js +19 -12
- package/dist/src/storage/storage-factory.js.map +1 -1
- package/dist/src/storage/types/agents-messaging.d.ts +33 -0
- package/dist/src/storage/types/agents-messaging.d.ts.map +1 -1
- package/dist/src/storage/types/agents-messaging.js +3 -0
- package/dist/src/storage/types/agents-messaging.js.map +1 -1
- package/dist/src/storage/types/apps.d.ts +13 -0
- package/dist/src/storage/types/apps.d.ts.map +1 -1
- package/dist/src/storage/types/identity.d.ts +8 -0
- package/dist/src/storage/types/identity.d.ts.map +1 -1
- package/dist/src/storage/types/organisms-federation.d.ts +27 -0
- package/dist/src/storage/types/organisms-federation.d.ts.map +1 -1
- package/dist/src/storage/uow/batch-loader.d.ts +44 -0
- package/dist/src/storage/uow/batch-loader.d.ts.map +1 -0
- package/dist/src/storage/uow/batch-loader.js +101 -0
- package/dist/src/storage/uow/batch-loader.js.map +1 -0
- package/dist/src/storage/uow/identity-map.d.ts +0 -0
- package/dist/src/storage/uow/identity-map.d.ts.map +1 -0
- package/dist/src/storage/uow/identity-map.js +0 -0
- package/dist/src/storage/uow/identity-map.js.map +1 -0
- package/dist/src/storage/uow/unit-of-work.d.ts +42 -0
- package/dist/src/storage/uow/unit-of-work.d.ts.map +1 -0
- package/dist/src/storage/uow/unit-of-work.js +89 -0
- package/dist/src/storage/uow/unit-of-work.js.map +1 -0
- package/dist/src/utils/app-badge.d.ts +7 -22
- package/dist/src/utils/app-badge.d.ts.map +1 -1
- package/dist/src/utils/app-badge.js +59 -22
- package/dist/src/utils/app-badge.js.map +1 -1
- package/dist/src/utils/app-protect.d.ts +2 -0
- package/dist/src/utils/app-protect.d.ts.map +1 -1
- package/dist/src/utils/app-protect.js +3 -9
- package/dist/src/utils/app-protect.js.map +1 -1
- package/dist/src/utils/env-config/sections-node.js +4 -4
- package/dist/src/utils/env-config/sections-node.js.map +1 -1
- package/dist/src/utils/env-config/sections-platform.d.ts.map +1 -1
- package/dist/src/utils/env-config/sections-platform.js +0 -11
- package/dist/src/utils/env-config/sections-platform.js.map +1 -1
- package/dist/src/utils/env-validator.d.ts.map +1 -1
- package/dist/src/utils/env-validator.js +10 -6
- package/dist/src/utils/env-validator.js.map +1 -1
- package/dist/src/utils/html-inject.d.ts +23 -0
- package/dist/src/utils/html-inject.d.ts.map +1 -0
- package/dist/src/utils/html-inject.js +42 -0
- package/dist/src/utils/html-inject.js.map +1 -0
- package/dist/src/utils/node-descriptor.d.ts.map +1 -1
- package/dist/src/utils/node-descriptor.js +0 -1
- package/dist/src/utils/node-descriptor.js.map +1 -1
- package/dist/static/app-catalog/_template.html +15 -0
- package/dist/static/app-catalog/js/app-agents.js +232 -0
- package/dist/static/app-catalog/js/cortex.js +114 -0
- package/dist/static/app-catalog/js/detail.js +39 -1
- package/dist/static/app-catalog/js/i18n-data.js +82 -4
- package/dist/static/app-catalog/js/main.js +7 -1
- package/dist/static/app-catalog/js/render.js +30 -11
- package/dist/static/app-catalog/js/server-io.js +10 -1
- package/dist/static/app-catalog/styles/app-catalog.css +96 -9
- package/dist/static/app-catalog.html +542 -32
- package/package.json +19 -20
- package/prisma/schema.postgres.prisma +0 -1789
- package/prisma/schema.prisma +0 -1787
|
@@ -60,8 +60,6 @@ import {
|
|
|
60
60
|
saveInterviewSpec,
|
|
61
61
|
writeProjectLog,
|
|
62
62
|
} from '/js/services/generator.js';
|
|
63
|
-
import { buildBlueprintFixPrompt } from '/js/services/generator-prompts.js';
|
|
64
|
-
|
|
65
63
|
/** Load blueprint or interview prompt from backend (DB seeds — single source of truth) */
|
|
66
64
|
async function loadGeneratorPrompt(projectId, type = 'blueprint', locale = 'en') {
|
|
67
65
|
const s = window.AIMEAT?.auth?.getSession?.();
|
|
@@ -70,6 +68,17 @@ async function loadGeneratorPrompt(projectId, type = 'blueprint', locale = 'en')
|
|
|
70
68
|
if (!resp.ok) throw new Error(resp.error?.message || 'Failed to load prompt');
|
|
71
69
|
return resp.data?.prompt || '';
|
|
72
70
|
}
|
|
71
|
+
|
|
72
|
+
/** Build a self-correction prompt (e.g. gen-blueprint-fix) from backend DB templates. */
|
|
73
|
+
async function buildGeneratorPrompt(projectId, promptId, payload = {}) {
|
|
74
|
+
const s = window.AIMEAT?.auth?.getSession?.();
|
|
75
|
+
if (!s) throw new Error('Not authenticated');
|
|
76
|
+
const resp = await s.fetch(`/v1/generator/${projectId}/prompts/build`, {
|
|
77
|
+
method: 'POST', body: JSON.stringify({ promptId, ...payload }),
|
|
78
|
+
});
|
|
79
|
+
if (!resp.ok) throw new Error(resp.error?.message || 'Failed to build prompt');
|
|
80
|
+
return resp.data?.prompt || '';
|
|
81
|
+
}
|
|
73
82
|
import { validateBlueprint, validateInterviewSpec, validateSpecQuality } from '/js/services/generator-validate.js';
|
|
74
83
|
import { OpenRouterSettings, SettingsCollectionView } from './generator-settings.js';
|
|
75
84
|
import { runWithAi } from './generator-detail.js';
|
|
@@ -151,8 +160,22 @@ function NewProjectView({ onBack, onCreated, showToast, orSettings }) {
|
|
|
151
160
|
const [blueprintErrors, setBlueprintErrors] = useState([]);
|
|
152
161
|
const [interviewSpec, setInterviewSpec] = useState('');
|
|
153
162
|
const [interviewErrors, setInterviewErrors] = useState([]);
|
|
154
|
-
const [interviewParsed, setInterviewParsed] = useState(null);
|
|
155
163
|
const [aiRunning, setAiRunning] = useState(null); // null | 'interview' | 'blueprint'
|
|
164
|
+
// Setter only — the parsed interview spec is persisted to the backend (saveInterviewSpec)
|
|
165
|
+
// and re-read there; the local value is no longer consumed since blueprint-fix moved to the DB.
|
|
166
|
+
const [, setInterviewParsed] = useState(null);
|
|
167
|
+
const [blueprintFixPrompt, setBlueprintFixPrompt] = useState(null);
|
|
168
|
+
|
|
169
|
+
// Build the blueprint-fix retry prompt from the backend (DB template — keeps service_slug
|
|
170
|
+
// and every rule the canonical blueprint prompt carries) when the blueprint has errors.
|
|
171
|
+
useEffect(() => {
|
|
172
|
+
if (blueprintErrors.length > 0 && project?.projectId) {
|
|
173
|
+
buildGeneratorPrompt(project.projectId, 'gen-blueprint-fix', { errors: blueprintErrors })
|
|
174
|
+
.then(setBlueprintFixPrompt).catch(() => setBlueprintFixPrompt(null));
|
|
175
|
+
} else {
|
|
176
|
+
setBlueprintFixPrompt(null);
|
|
177
|
+
}
|
|
178
|
+
}, [blueprintErrors, project?.projectId]);
|
|
156
179
|
|
|
157
180
|
async function handleAnalyze() {
|
|
158
181
|
if (!description.trim()) return;
|
|
@@ -356,7 +379,7 @@ function NewProjectView({ onBack, onCreated, showToast, orSettings }) {
|
|
|
356
379
|
const max = orSettings.maxRetries || 3;
|
|
357
380
|
for (let attempt = 1; attempt <= max && !vr.valid; attempt++) {
|
|
358
381
|
showToast?.(t('profile.generator.openrouter.retrying').replace('{current}', attempt).replace('{max}', max));
|
|
359
|
-
const fixPrompt =
|
|
382
|
+
const fixPrompt = await buildGeneratorPrompt(project.projectId, 'gen-blueprint-fix', { errors: vr.errors });
|
|
360
383
|
content = await runWithAi(project.projectId, fixPrompt);
|
|
361
384
|
setBlueprintResult(content);
|
|
362
385
|
vr = validateBlueprint(content);
|
|
@@ -390,9 +413,7 @@ function NewProjectView({ onBack, onCreated, showToast, orSettings }) {
|
|
|
390
413
|
}
|
|
391
414
|
|
|
392
415
|
if (phase === 'blueprint') {
|
|
393
|
-
const fixPrompt =
|
|
394
|
-
? buildBlueprintFixPrompt(description, blueprintErrors, interviewParsed)
|
|
395
|
-
: null;
|
|
416
|
+
const fixPrompt = blueprintFixPrompt;
|
|
396
417
|
return html`
|
|
397
418
|
<div class="pf-gen-new-project">
|
|
398
419
|
<button class="btn-outline" onClick=${() => setPhase('describe')}>${t('profile.generator.back')}</button>
|
|
@@ -7,6 +7,21 @@
|
|
|
7
7
|
* self-contained (owns its own hooks). Extracted from inbox-tab.js to satisfy max-file-lines.
|
|
8
8
|
* @version-history
|
|
9
9
|
* v1.0.0 — 2026-07-13 — Extracted from inbox-tab.js (max-file-lines)
|
|
10
|
+
* v1.1.0 — 2026-07-14 — Composer: pasted/dropped images route to the file-attachment path (upload +
|
|
11
|
+
* shown as an image) instead of Toast UI base64-inlining them into the body (which blew the 50k
|
|
12
|
+
* body limit → 400 "Too big"). addImageBlobHook (rich) + onPaste (markdown fallback).
|
|
13
|
+
* v1.2.0 — 2026-07-17 — Two paste-image fixes: (1) MessageBubble looks up attachment urls via the new
|
|
14
|
+
* `${messageId}::${attachmentId}` composite key so images no longer bleed between messages; (2) pasted
|
|
15
|
+
* clipboard images (always named "image.png") get a unique name instead of every paste sharing one.
|
|
16
|
+
* v1.3.0 — 2026-07-17 — Reply-to with quote: a ↩ bubble action starts a quoted reply, and a bubble whose
|
|
17
|
+
* message carries `replyToId` renders the quoted original (sender + excerpt; click jumps to it).
|
|
18
|
+
* v1.3.1 — 2026-07-17 — Composer file chips get a ✕ — a queued (e.g. mis-pasted) attachment can be
|
|
19
|
+
* removed before sending instead of being stuck in the outgoing message.
|
|
20
|
+
* v1.4.0 — 2026-07-18 — Composer accepts a `focusNonce`: bumping it focuses the editor (rich .focus() or
|
|
21
|
+
* the fallback textarea) so clicking ↩ Reply on a bubble drops the cursor straight into the input.
|
|
22
|
+
* v1.5.0 — 2026-07-18 — Mobile composer is a plain auto-growing textarea (`mode:'simple'`, no Toast UI
|
|
23
|
+
* toolbar/Write-Preview/WYSIWYG — a phone keyboard + heavy WYSIWYG is miserable); ≤760px opens straight
|
|
24
|
+
* into it so Toast UI never even loads there. Desktop keeps the rich editor.
|
|
10
25
|
*/
|
|
11
26
|
import { h } from 'preact';
|
|
12
27
|
import { useState, useEffect, useCallback, useRef } from 'preact/hooks';
|
|
@@ -18,7 +33,7 @@ import { Markdown } from '/components/Markdown.js';
|
|
|
18
33
|
import { minidenticon } from '/lib/minidenticons.min.js';
|
|
19
34
|
import * as schedules from '/js/services/schedules.js';
|
|
20
35
|
import { MODES } from '/js/services/messages-ai-prompts.js';
|
|
21
|
-
import { loadToastUI, prepareBody, statusTick, timeShort, trackStateLabel, ATTACH_ICO, attachKind, IFORM_OTHER } from './helpers.js';
|
|
36
|
+
import { loadToastUI, prepareBody, quoteSnippet, statusTick, timeShort, trackStateLabel, ATTACH_ICO, attachKind, IFORM_OTHER } from './helpers.js';
|
|
22
37
|
|
|
23
38
|
export function Avatar({ seed, size = 36 }) {
|
|
24
39
|
const svg = minidenticon(typeof seed === 'string' && seed ? seed : 'user');
|
|
@@ -228,15 +243,25 @@ export function PollBuilder({ questions, setQuestions }) {
|
|
|
228
243
|
</div>`;
|
|
229
244
|
}
|
|
230
245
|
|
|
231
|
-
export function MessageBubble({ msg, mine, urlMap, starred, onStar, onTrack, onPark, onReplyAi, tracked, onOpenMarkdown, answeredWith, onAnswer, submitting }) {
|
|
246
|
+
export function MessageBubble({ msg, mine, urlMap, starred, onStar, onTrack, onPark, onReplyAi, onQuote, quoted, quotedName, onJumpTo, domId, tracked, onOpenMarkdown, answeredWith, onAnswer, submitting }) {
|
|
232
247
|
const nonInline = (msg.attachments || []).filter(a => !a.inline);
|
|
233
248
|
const expiredIds = new Set((msg.attachments || []).filter(a => a.expired).map(a => a.id));
|
|
249
|
+
// urlMap is keyed by `${messageId}::${attachmentId}` because per-message attachment ids (at0, at1…)
|
|
250
|
+
// aren't unique across messages. Build THIS message's flat { attId → url } view so prepareBody's cid
|
|
251
|
+
// resolution and the thumbnails only ever see their own message's attachments.
|
|
252
|
+
const urls = {};
|
|
253
|
+
for (const a of (msg.attachments || [])) {
|
|
254
|
+
const u = urlMap[`${msg.id}::${a.id}`];
|
|
255
|
+
if (u) urls[a.id] = u;
|
|
256
|
+
}
|
|
234
257
|
const trk = tracked ? trackStateLabel(tracked.state) : null;
|
|
235
258
|
return html`
|
|
236
|
-
<div class=${`inbox-row ${mine ? 'inbox-row--mine' : 'inbox-row--theirs'}`}>
|
|
259
|
+
<div id=${domId} class=${`inbox-row ${mine ? 'inbox-row--mine' : 'inbox-row--theirs'}`}>
|
|
237
260
|
${!mine ? html`<${Avatar} seed=${msg.senderGhii} size=${28} />` : null}
|
|
238
261
|
<div class=${`inbox-bubble ${mine ? 'inbox-bubble--mine' : 'inbox-bubble--theirs'}`}>
|
|
239
262
|
<div class="inbox-bubble-actions">
|
|
263
|
+
${onQuote ? html`<button class="inbox-bubble-act" title=${t('inbox.quoteReply')}
|
|
264
|
+
onClick=${() => onQuote(msg)}>↩</button>` : null}
|
|
240
265
|
<button class=${`inbox-bubble-act${starred ? ' inbox-bubble-act--on' : ''}`} title=${t('inbox.markImportant')}
|
|
241
266
|
onClick=${() => onStar?.(msg)}>${starred ? '⭐' : '☆'}</button>
|
|
242
267
|
<button class=${`inbox-bubble-act${tracked ? ' inbox-bubble-act--on' : ''}`}
|
|
@@ -247,7 +272,11 @@ export function MessageBubble({ msg, mine, urlMap, starred, onStar, onTrack, onP
|
|
|
247
272
|
<button class="inbox-bubble-act" title=${t('inbox.ai.replyToMessage')}
|
|
248
273
|
onClick=${() => onReplyAi?.(msg)}>✨</button>
|
|
249
274
|
</div>
|
|
250
|
-
|
|
275
|
+
${quoted ? html`<button class="inbox-bubble-quote" onClick=${() => onJumpTo?.(quoted.id)} title=${t('inbox.quoteJump')}>
|
|
276
|
+
<span class="inbox-quote-name">${escHtml(quotedName || '')}</span>
|
|
277
|
+
<span class="inbox-quote-text">${escHtml(quoteSnippet(quoted.body))}</span>
|
|
278
|
+
</button>` : null}
|
|
279
|
+
<div class="inbox-bubble-body"><${Markdown} text=${prepareBody(msg.body, urls, expiredIds)} /></div>
|
|
251
280
|
${msg.interactive?.role === 'questions' ? (
|
|
252
281
|
answeredWith
|
|
253
282
|
? html`<${InteractiveAnswered} spec=${msg.interactive} answers=${answeredWith.answers || {}} />`
|
|
@@ -256,7 +285,7 @@ export function MessageBubble({ msg, mine, urlMap, starred, onStar, onTrack, onP
|
|
|
256
285
|
) : null}
|
|
257
286
|
${nonInline.length > 0 && html`
|
|
258
287
|
<div class="inbox-attach-row">
|
|
259
|
-
${nonInline.map(a => html`<${AttachmentItem} key=${a.id} a=${a} url=${
|
|
288
|
+
${nonInline.map(a => html`<${AttachmentItem} key=${a.id} a=${a} url=${urls[a.id]} onOpenMarkdown=${onOpenMarkdown} />`)}
|
|
260
289
|
</div>`}
|
|
261
290
|
<div class="inbox-bubble-meta">
|
|
262
291
|
${trk ? html`<span class=${`inbox-track-badge inbox-track-badge--${trk.tone}`} title=${t('inbox.trackResponse')}>🔗 ${trk.text}</span>` : null}
|
|
@@ -271,15 +300,20 @@ export function MessageBubble({ msg, mine, urlMap, starred, onStar, onTrack, onP
|
|
|
271
300
|
* markdown-textarea + live-preview fallback if the editor can't load. Owns its own draft + file
|
|
272
301
|
* state; calls onSend(recipient, markdown, files, reset). Remount it (via key) per conversation so
|
|
273
302
|
* the draft doesn't leak between threads. */
|
|
274
|
-
export function Composer({ recipient, sendLabel, sending, onSend, initialText = '', draftKey = '' }) {
|
|
303
|
+
export function Composer({ recipient, sendLabel, sending, onSend, initialText = '', draftKey = '', focusNonce = 0 }) {
|
|
275
304
|
// Restore an in-progress draft for this conversation/compose (localStorage), or the passed initialText.
|
|
276
305
|
const readDraft = () => { try { return draftKey ? (localStorage.getItem(draftKey) || '') : ''; } catch { return ''; } };
|
|
277
306
|
const seeded = initialText || readDraft(); // an explicit suggested reply wins; else restore a draft
|
|
278
|
-
|
|
307
|
+
// 'rich' = Toast UI (desktop); 'simple' = a plain auto-growing textarea (mobile chat input, no toolbar/
|
|
308
|
+
// preview — a phone keyboard + heavy WYSIWYG toolbar is miserable); 'markdown' = the textarea+preview
|
|
309
|
+
// fallback when Toast UI can't load. Mobile opens straight into 'simple' so we never load Toast UI there.
|
|
310
|
+
const isNarrow = typeof window !== 'undefined' && window.matchMedia?.('(max-width: 760px)').matches;
|
|
311
|
+
const [mode, setMode] = useState(isNarrow ? 'simple' : 'rich');
|
|
279
312
|
const [md, setMd] = useState(seeded);
|
|
280
313
|
const [files, setFiles] = useState([]);
|
|
281
314
|
const containerRef = useRef(null);
|
|
282
315
|
const editorRef = useRef(null);
|
|
316
|
+
const taRef = useRef(null);
|
|
283
317
|
const fileRef = useRef(null);
|
|
284
318
|
const saveTimer = useRef(null);
|
|
285
319
|
// Debounced auto-save of the draft (skipped when there's no key). Empty text clears the draft.
|
|
@@ -292,6 +326,34 @@ export function Composer({ recipient, sendLabel, sending, onSend, initialText =
|
|
|
292
326
|
};
|
|
293
327
|
const clearDraft = () => { try { if (draftKey) localStorage.removeItem(draftKey); } catch { /* noop */ } };
|
|
294
328
|
|
|
329
|
+
// A pasted / dropped image is added to the SAME file-attachment queue as the 📎 button (uploaded to
|
|
330
|
+
// storage + rendered as an image on the bubble) — never base64-inlined into the body, which would
|
|
331
|
+
// blow the server's 50k body limit. Wrap a bare clipboard Blob in a named File so uploadAttachment
|
|
332
|
+
// (which needs .name) and the file chip both work. Functional setFiles avoids a stale closure in the
|
|
333
|
+
// editor hook (created once at construction).
|
|
334
|
+
const addPastedImage = (blob) => {
|
|
335
|
+
if (!blob) return;
|
|
336
|
+
const ext = (blob.type && blob.type.split('/')[1]) || 'png';
|
|
337
|
+
const orig = (blob instanceof File && blob.name) ? blob.name : '';
|
|
338
|
+
// Clipboard images always arrive as a File generically named "image.png", so every paste would share
|
|
339
|
+
// that one name (and read as the same file in the thread). Give each pasted image a unique name; keep
|
|
340
|
+
// a genuine dropped filename as-is.
|
|
341
|
+
const generic = !orig || orig.toLowerCase() === 'image.png';
|
|
342
|
+
const name = generic ? `pasted-${Date.now()}-${Math.random().toString(36).slice(2, 7)}.${ext}` : orig;
|
|
343
|
+
const file = (blob instanceof File && !generic) ? blob : new File([blob], name, { type: blob.type || 'image/png' });
|
|
344
|
+
setFiles((prev) => [...prev, file]);
|
|
345
|
+
};
|
|
346
|
+
// Pull image files out of a clipboard/drop event; returns true if any were handled (caller preventDefaults).
|
|
347
|
+
const handleImagePaste = (e) => {
|
|
348
|
+
const items = Array.from(e.clipboardData?.items || e.dataTransfer?.items || []);
|
|
349
|
+
const imgs = items.filter((it) => it.kind === 'file' && (it.type || '').startsWith('image/'))
|
|
350
|
+
.map((it) => it.getAsFile()).filter(Boolean);
|
|
351
|
+
if (imgs.length === 0) return false;
|
|
352
|
+
e.preventDefault();
|
|
353
|
+
imgs.forEach(addPastedImage);
|
|
354
|
+
return true;
|
|
355
|
+
};
|
|
356
|
+
|
|
295
357
|
useEffect(() => {
|
|
296
358
|
if (mode !== 'rich') return undefined;
|
|
297
359
|
let inst = null, cancelled = false;
|
|
@@ -310,6 +372,9 @@ export function Composer({ recipient, sendLabel, sending, onSend, initialText =
|
|
|
310
372
|
// editorRef is set only AFTER construction, so the constructor's own change (initialValue) is
|
|
311
373
|
// skipped — only real user edits auto-save the draft.
|
|
312
374
|
events: { change: () => { if (editorRef.current) saveDraft(editorRef.current.getMarkdown()); } },
|
|
375
|
+
// Intercept pasted / dropped images: queue them as file attachments and DON'T call the callback,
|
|
376
|
+
// so Toast UI skips its default base64 <img> insertion into the markdown body.
|
|
377
|
+
hooks: { addImageBlobHook: (blob /* , callback, source */) => { addPastedImage(blob); } },
|
|
313
378
|
toolbarItems: [
|
|
314
379
|
['bold', 'italic', 'strike'],
|
|
315
380
|
['ul', 'ol', 'task'],
|
|
@@ -338,24 +403,59 @@ export function Composer({ recipient, sendLabel, sending, onSend, initialText =
|
|
|
338
403
|
}
|
|
339
404
|
}, [mode, initialText]);
|
|
340
405
|
|
|
406
|
+
// Focus the composer when the parent bumps focusNonce (e.g. after clicking ↩ Reply on a bubble) so the
|
|
407
|
+
// user can start typing straight away instead of clicking into the editor. A short delay lets the reply
|
|
408
|
+
// bar / editor settle first. Skip the initial 0 so a fresh mount never steals focus / pops the keyboard.
|
|
409
|
+
useEffect(() => {
|
|
410
|
+
if (!focusNonce) return undefined;
|
|
411
|
+
const id = setTimeout(() => {
|
|
412
|
+
try {
|
|
413
|
+
if (mode === 'rich' && editorRef.current?.focus) editorRef.current.focus();
|
|
414
|
+
else if (taRef.current) taRef.current.focus();
|
|
415
|
+
} catch { /* noop */ }
|
|
416
|
+
}, 60);
|
|
417
|
+
return () => clearTimeout(id);
|
|
418
|
+
// Only focusNonce is the trigger; mode/refs are read at fire time.
|
|
419
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
420
|
+
}, [focusNonce]);
|
|
421
|
+
|
|
422
|
+
// Auto-grow the simple (mobile) textarea to fit its content, capped so it never eats the thread.
|
|
423
|
+
const autoGrow = (ta) => { if (!ta) return; ta.style.height = 'auto'; ta.style.height = Math.min(ta.scrollHeight, 132) + 'px'; };
|
|
424
|
+
// Size the simple textarea to any seeded draft on mount (and keep it 1 row when empty).
|
|
425
|
+
useEffect(() => { if (mode === 'simple') autoGrow(taRef.current); }, [mode]);
|
|
426
|
+
|
|
341
427
|
const getText = () => (mode === 'rich' && editorRef.current) ? editorRef.current.getMarkdown() : md;
|
|
342
428
|
const reset = () => {
|
|
343
429
|
try { editorRef.current?.setMarkdown(''); } catch { /* noop */ }
|
|
344
430
|
setMd(''); setFiles([]); if (fileRef.current) fileRef.current.value = '';
|
|
431
|
+
if (mode === 'simple' && taRef.current) taRef.current.style.height = 'auto';
|
|
345
432
|
clearDraft(); // a sent message is no longer a draft
|
|
346
433
|
};
|
|
347
434
|
const submit = () => onSend(recipient, getText(), files, reset);
|
|
435
|
+
// Remove one queued attachment before sending (a mis-paste shouldn't force starting the message over).
|
|
436
|
+
// Also clear the hidden file input when the last chip goes, so re-picking the same file fires onChange.
|
|
437
|
+
const removeFile = (idx) => setFiles((prev) => {
|
|
438
|
+
const next = prev.filter((_, j) => j !== idx);
|
|
439
|
+
if (next.length === 0 && fileRef.current) fileRef.current.value = '';
|
|
440
|
+
return next;
|
|
441
|
+
});
|
|
348
442
|
|
|
349
443
|
return html`
|
|
350
444
|
<div class="inbox-composer">
|
|
351
445
|
${files.length > 0 ? html`<div class="inbox-file-chips">
|
|
352
|
-
${files.map((f, i) => html`<span class="inbox-file-chip" key=${i}>📎 ${escHtml(f.name)}
|
|
446
|
+
${files.map((f, i) => html`<span class="inbox-file-chip" key=${f.name + i}>📎 ${escHtml(f.name)}
|
|
447
|
+
<button class="inbox-bc-chip-x" title=${t('inbox.attachmentRemove')} onClick=${() => removeFile(i)}>✕</button></span>`)}
|
|
353
448
|
</div>` : null}
|
|
354
449
|
${mode === 'rich'
|
|
355
450
|
? html`<div class="inbox-editor" ref=${containerRef}></div>`
|
|
451
|
+
: mode === 'simple'
|
|
452
|
+
? html`<textarea class="inbox-textarea inbox-textarea--chat" rows="1" ref=${taRef} placeholder=${t('inbox.bodyPlaceholder')}
|
|
453
|
+
value=${md} onPaste=${handleImagePaste}
|
|
454
|
+
onInput=${(e) => { setMd(e.target.value); saveDraft(e.target.value); autoGrow(e.target); }}></textarea>`
|
|
356
455
|
: html`<div class="inbox-md-fallback">
|
|
357
|
-
<textarea class="inbox-textarea" rows="3" placeholder=${t('inbox.bodyPlaceholder')}
|
|
358
|
-
value=${md}
|
|
456
|
+
<textarea class="inbox-textarea" rows="3" ref=${taRef} placeholder=${t('inbox.bodyPlaceholder')}
|
|
457
|
+
value=${md} onPaste=${handleImagePaste}
|
|
458
|
+
onInput=${(e) => { setMd(e.target.value); saveDraft(e.target.value); }}></textarea>
|
|
359
459
|
<div class="inbox-md-preview"><${Markdown} text=${md} /></div>
|
|
360
460
|
</div>`}
|
|
361
461
|
<div class="inbox-composer-bar">
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* pixel defense), tracked-state labels, attachment classification, the interactive-answer summary +
|
|
6
6
|
* poll tally, and the lazy Toast UI editor loader. Extracted from inbox-tab.js to satisfy max-file-lines.
|
|
7
7
|
* @version-history
|
|
8
|
+
* v1.1.0 — 2026-07-17 — quoteSnippet(): one-line plain-text excerpt of a message body for reply-quotes.
|
|
8
9
|
* v1.0.0 — 2026-07-13 — Extracted from inbox-tab.js (max-file-lines)
|
|
9
10
|
*/
|
|
10
11
|
import { t, getLocale } from '/js/i18n.js';
|
|
@@ -100,6 +101,17 @@ export function prepareBody(body, urlMap, expiredIds) {
|
|
|
100
101
|
return out;
|
|
101
102
|
}
|
|
102
103
|
|
|
104
|
+
/** One-line plain-text excerpt of a message body for a reply-quote (images/code/markdown marks stripped). */
|
|
105
|
+
export function quoteSnippet(body, max = 140) {
|
|
106
|
+
const s = String(body || '')
|
|
107
|
+
.replace(/!\[[^\]]*\]\([^)]*\)/g, '🖼')
|
|
108
|
+
.replace(/```[\s\S]*?```/g, ' ')
|
|
109
|
+
.replace(/[*_`>#]+/g, '')
|
|
110
|
+
.replace(/\s+/g, ' ')
|
|
111
|
+
.trim();
|
|
112
|
+
return s.length > max ? `${s.slice(0, max - 1)}…` : s;
|
|
113
|
+
}
|
|
114
|
+
|
|
103
115
|
/** Short label + tone for a Tracked Response state (used on the message badge + the list). */
|
|
104
116
|
export function trackStateLabel(state) {
|
|
105
117
|
switch (state) {
|
|
@@ -6,6 +6,11 @@
|
|
|
6
6
|
* (broadcast/poll results). Each is a presentational component driven entirely by props from InboxTab;
|
|
7
7
|
* the stateful container keeps all hooks. Extracted from inbox-tab.js to satisfy max-file-lines.
|
|
8
8
|
* @version-history
|
|
9
|
+
* v1.2.0 — 2026-07-18 — Clicking ↩ Reply on a bubble now focuses the composer (via `onQuoteReply` +
|
|
10
|
+
* `composerFocus` bump) so the cursor lands in the input; the ✕ cancel still uses the raw setter.
|
|
11
|
+
* v1.1.0 — 2026-07-17 — Reply-to with quote: ThreadPanel resolves each message's `replyToId` to the
|
|
12
|
+
* quoted original for its bubble (click scrolls + flashes it) and shows a dismissible "replying to"
|
|
13
|
+
* bar above the composer while a quoted reply is being written.
|
|
9
14
|
* v1.0.0 — 2026-07-13 — Extracted from inbox-tab.js (max-file-lines)
|
|
10
15
|
*/
|
|
11
16
|
import { h } from 'preact';
|
|
@@ -17,7 +22,7 @@ import { Markdown } from '/components/Markdown.js';
|
|
|
17
22
|
import { PresenceDot } from '/components/PresenceDot.js';
|
|
18
23
|
import { getSession } from '/js/services/auth.js';
|
|
19
24
|
import { Avatar, MessageBubble, Composer, CommandBar, CommandFill, SchedulePanel } from './components.js';
|
|
20
|
-
import { peerName, ownerKeyOf, isAgentPeer, ownerDisplayName, subThreadLabel, groupConversations, timeShort, dayKey, dayLabel, trackStateLabel, tallyPoll } from './helpers.js';
|
|
25
|
+
import { peerName, ownerKeyOf, isAgentPeer, ownerDisplayName, subThreadLabel, groupConversations, timeShort, dayKey, dayLabel, trackStateLabel, tallyPoll, quoteSnippet } from './helpers.js';
|
|
21
26
|
|
|
22
27
|
export function ListPanel({ requests, conversations, activeConv, peerDisplay, accept, block, openConversation }) {
|
|
23
28
|
/** One conversation row. `nested` = inside a person group (labelled by the agent/thread, indented). */
|
|
@@ -95,8 +100,22 @@ export function ThreadPanel({
|
|
|
95
100
|
schedOpen, setSchedOpen, cmdFill, agentCommands, sending, draftPrefill, prefillNonce, msgsRef,
|
|
96
101
|
peerDisplay, showToast, toggleImportant, onTrackMsg, onParkMsg, openMessageAi, submitInteractiveAnswers,
|
|
97
102
|
setMdViewer, openConversationAi, insertCommand, setCmdFill, cancelTracked, openRecord, startSuggestedReply, doSend,
|
|
103
|
+
replyQuote, setReplyQuote, onQuoteReply, composerFocus,
|
|
98
104
|
}) {
|
|
99
105
|
let lastDay = '';
|
|
106
|
+
// Reply-to quotes: resolve a message's `replyToId` to the original within the loaded page (a parent
|
|
107
|
+
// outside the page just renders without a quote). The sender label distinguishes you vs the peer.
|
|
108
|
+
const msgById = {};
|
|
109
|
+
for (const m of thread) msgById[m.id] = m;
|
|
110
|
+
const quoteSender = (q) => (q.direction === 'outbound' ? t('inbox.quoteYou') : peerDisplay(activeConv.peerGhii));
|
|
111
|
+
// Jump to the quoted original: scroll it into view inside the thread + flash it briefly.
|
|
112
|
+
const jumpTo = (id) => {
|
|
113
|
+
const el = document.getElementById(`inbox-msg-${id}`);
|
|
114
|
+
if (!el) return;
|
|
115
|
+
el.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
116
|
+
el.classList.add('inbox-row--flash');
|
|
117
|
+
setTimeout(() => el.classList.remove('inbox-row--flash'), 1400);
|
|
118
|
+
};
|
|
100
119
|
// Map each interactive QUESTION message id → the answers reply that fulfils it, so an answered
|
|
101
120
|
// question renders its read-only summary instead of the (already-used) form.
|
|
102
121
|
const answersByQ = {};
|
|
@@ -122,7 +141,7 @@ export function ThreadPanel({
|
|
|
122
141
|
${viaAgentName ? html`<div class="inbox-thread-via">🤖 ${t('inbox.sentByAgent')} ${escHtml(viaAgentName)}</div>` : null}
|
|
123
142
|
<div class="inbox-sub">${escHtml(activeConv.peerGhii)}</div>
|
|
124
143
|
</div>
|
|
125
|
-
${!viaAgentName ? html`<button class="btn-ghost btn-sm inbox-ai-btn" onClick=${openConversationAi} title=${t('inbox.ai.replyWithAi')}>✨
|
|
144
|
+
${!viaAgentName ? html`<button class="btn-ghost btn-sm inbox-ai-btn" onClick=${openConversationAi} title=${t('inbox.ai.replyWithAi')}>✨ <span class="inbox-ai-btn-label">${t('inbox.ai.replyWithAi')}</span></button>` : null}
|
|
126
145
|
${peerIsMyAgent && !viaAgentName ? html`<button class=${`btn-ghost btn-sm inbox-sched-btn${schedOpen ? ' inbox-sched-btn--on' : ''}`}
|
|
127
146
|
onClick=${() => setSchedOpen(o => !o)} title=${t('inbox.schedTitle')}>📅</button>` : null}
|
|
128
147
|
</div>
|
|
@@ -131,9 +150,13 @@ export function ThreadPanel({
|
|
|
131
150
|
${thread.map(m => {
|
|
132
151
|
const dk = dayKey(m.createdAt);
|
|
133
152
|
const showDay = dk !== lastDay; lastDay = dk;
|
|
153
|
+
// An interactive answer already summarizes its question in the body — a quote would duplicate it.
|
|
154
|
+
const quoted = (m.replyToId && m.interactive?.role !== 'answers') ? msgById[m.replyToId] : null;
|
|
134
155
|
return html`
|
|
135
156
|
${showDay ? html`<div class="inbox-day" key=${'d' + m.id}><span>${dayLabel(m.createdAt)}</span></div>` : null}
|
|
136
157
|
<${MessageBubble} key=${m.id + m.direction} msg=${m} mine=${m.direction === 'outbound'} urlMap=${urlMap}
|
|
158
|
+
domId=${`inbox-msg-${m.id}`} quoted=${quoted} quotedName=${quoted ? quoteSender(quoted) : ''} onJumpTo=${jumpTo}
|
|
159
|
+
onQuote=${(onQuoteReply && !activeConv.viaAgent) ? onQuoteReply : null}
|
|
137
160
|
starred=${important.has(m.id)} onStar=${toggleImportant} onTrack=${onTrackMsg} onPark=${onParkMsg} onReplyAi=${openMessageAi} tracked=${trackedByMsg[m.id]}
|
|
138
161
|
answeredWith=${m.interactive?.role === 'questions' ? answersByQ[m.id] : null}
|
|
139
162
|
onAnswer=${submitInteractiveAnswers} submitting=${sending}
|
|
@@ -163,9 +186,16 @@ export function ThreadPanel({
|
|
|
163
186
|
? html`<div class="inbox-announce-note">🤖 ${(t('inbox.viaAgentReadonly') || 'Sent by your agent {agent} — view only.').replace('{agent}', viaAgentName)}</div>`
|
|
164
187
|
: isAnnouncement
|
|
165
188
|
? html`<div class="inbox-announce-note">📢 ${t('inbox.announcementNote')}</div>`
|
|
166
|
-
: html
|
|
189
|
+
: html`${replyQuote ? html`<div class="inbox-replybar">
|
|
190
|
+
<button class="inbox-replybar-main" onClick=${() => jumpTo(replyQuote.id)}>
|
|
191
|
+
<span class="inbox-replybar-label">↩ ${t('inbox.replyingTo')} ${escHtml(quoteSender(replyQuote))}</span>
|
|
192
|
+
<span class="inbox-replybar-text">${escHtml(quoteSnippet(replyQuote.body))}</span>
|
|
193
|
+
</button>
|
|
194
|
+
<button class="btn-ghost btn-sm" onClick=${() => setReplyQuote?.(null)} title=${t('inbox.quoteCancel')}>✕</button>
|
|
195
|
+
</div>` : null}
|
|
196
|
+
<${Composer} key=${'c-' + activeConv.conversationId + (draftPrefill ? '-d' + prefillNonce : '')} recipient=${activeConv.peerGhii}
|
|
167
197
|
sendLabel=${t('inbox.reply')} sending=${sending} onSend=${doSend} initialText=${draftPrefill}
|
|
168
|
-
draftKey=${'aimeat.inbox.draft.' + activeConv.conversationId} />`}
|
|
198
|
+
focusNonce=${composerFocus} draftKey=${'aimeat.inbox.draft.' + activeConv.conversationId} />`}
|
|
169
199
|
</div>`;
|
|
170
200
|
}
|
|
171
201
|
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file public/views/profile/inbox-tab/use-thread-ux.js
|
|
3
|
+
* @description Thread-pane UX hooks for the profile Inbox tab: useThreadAutoScroll (jump to the
|
|
4
|
+
* latest message on open / near-bottom follow / a single one-time jump when a NEW message arrives —
|
|
5
|
+
* never a sticky pin) and useMobileComposerKeyboard (≤760px: publishes the on-screen keyboard's
|
|
6
|
+
* height as --inbox-kb from visualViewport and scrolls the composer into view on focus).
|
|
7
|
+
* Extracted from inbox-tab.js to satisfy max-file-lines.
|
|
8
|
+
* @usage import { useThreadAutoScroll, useMobileComposerKeyboard } from './inbox-tab/use-thread-ux.js';
|
|
9
|
+
* @version-history
|
|
10
|
+
* v1.2.0 — 2026-07-19 — useThreadAutoScroll now suppresses the one-time new-message jump while the
|
|
11
|
+
* composer is focused (near-bottom follow still applies). This lets the inbox reload the open thread
|
|
12
|
+
* on EVERY 'messages' live-update — so incoming messages render immediately even while you're typing
|
|
13
|
+
* a reply — without yanking the scroll/caret (the old fix instead skipped the whole reload).
|
|
14
|
+
* v1.0.0 — 2026-07-17 — Extracted from inbox-tab.js (max-file-lines) alongside the new mobile
|
|
15
|
+
* keyboard handling + one-time new-message auto-scroll.
|
|
16
|
+
* v1.1.0 — 2026-07-18 — Rework useMobileComposerKeyboard(mode): MEASURE available height (body top →
|
|
17
|
+
* visualViewport bottom) as `--inbox-avail` instead of the `dvh − keyboard` double-count that collapsed
|
|
18
|
+
* the messenger on Android Chrome; drop the composer scrollIntoView(center) that left a dead gap.
|
|
19
|
+
*/
|
|
20
|
+
import { useEffect, useRef } from 'preact/hooks';
|
|
21
|
+
|
|
22
|
+
/** Auto-scroll policy for the open thread: jump to the latest message when a thread is OPENED, follow
|
|
23
|
+
* when the reader is already near the bottom, and when a genuinely NEW message arrives (last message
|
|
24
|
+
* id changed) jump down ONCE — a single jump, not a sticky pin, so scrolling back up afterwards is
|
|
25
|
+
* never fought. Content-only refreshes (same last message — receipts, url re-resolves) never move the
|
|
26
|
+
* scroll. lastScrolledConvRef distinguishes a fresh open from an in-place update, and we wait for
|
|
27
|
+
* content (thread.length) so an async load still lands at the bottom on open. */
|
|
28
|
+
export function useThreadAutoScroll(msgsRef, mode, thread, activeConv) {
|
|
29
|
+
const lastScrolledConvRef = useRef(null);
|
|
30
|
+
const lastMsgIdRef = useRef(null);
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
const el = msgsRef.current;
|
|
33
|
+
if (mode !== 'thread' || !el || thread.length === 0) return;
|
|
34
|
+
const convKey = activeConv?.peerGhii ?? activeConv?.id ?? null;
|
|
35
|
+
const lastId = thread[thread.length - 1]?.id ?? null;
|
|
36
|
+
const isNewOpen = lastScrolledConvRef.current !== convKey;
|
|
37
|
+
const hasNewMsg = !isNewOpen && lastMsgIdRef.current !== null && lastId !== lastMsgIdRef.current;
|
|
38
|
+
const nearBottom = el.scrollHeight - el.scrollTop - el.clientHeight < 160;
|
|
39
|
+
// While you're typing a reply, a live-updated new message must still RENDER but must not yank the
|
|
40
|
+
// scroll out from under the caret — so suppress the one-time new-message jump when the composer is
|
|
41
|
+
// focused (near-bottom follow still applies: if you were already at the bottom you keep following).
|
|
42
|
+
const ae = typeof document !== 'undefined' ? document.activeElement : null;
|
|
43
|
+
const composing = ae instanceof HTMLElement && !!ae.closest('.inbox-composer');
|
|
44
|
+
if (isNewOpen || nearBottom || (hasNewMsg && !composing)) el.scrollTop = el.scrollHeight;
|
|
45
|
+
lastScrolledConvRef.current = convKey;
|
|
46
|
+
lastMsgIdRef.current = lastId;
|
|
47
|
+
// msgsRef is a stable ref object — the content deps below are the real triggers.
|
|
48
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
49
|
+
}, [thread, mode, activeConv]);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/** Mobile keyboard ergonomics — the reliable version. Rather than the fragile `dvh − keyboard` math (which
|
|
53
|
+
* double-counted on Android Chrome, where dvh ALSO shrinks for the keyboard → the messenger collapsed and
|
|
54
|
+
* left a big dead gap above the keyboard), we MEASURE the real space: from the top of `.inbox-body` down to
|
|
55
|
+
* the bottom of the visual viewport (which excludes the keyboard on every platform), and publish it as
|
|
56
|
+
* `--inbox-avail`. The ≤760px open-panel body height uses that, so the composer sits right on the keyboard
|
|
57
|
+
* with the thread filling the rest — no void, no page-scroll jump. We deliberately do NOT scrollIntoView the
|
|
58
|
+
* composer (that centered it and created the gap); instead we keep the message list pinned to the bottom.
|
|
59
|
+
* Only active on mobile with a thread/compose panel open; otherwise the var is cleared and CSS falls back. */
|
|
60
|
+
export function useMobileComposerKeyboard(mode) {
|
|
61
|
+
const syncRef = useRef(() => {});
|
|
62
|
+
useEffect(() => {
|
|
63
|
+
const vv = window.visualViewport;
|
|
64
|
+
const root = document.documentElement;
|
|
65
|
+
const isNarrow = () => window.matchMedia('(max-width: 760px)').matches;
|
|
66
|
+
const sync = () => {
|
|
67
|
+
const body = document.querySelector('.inbox-body');
|
|
68
|
+
if (!vv || !body || !isNarrow() || !body.classList.contains('inbox-body--panel')) {
|
|
69
|
+
root.style.removeProperty('--inbox-avail');
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
// Distance from the body's top edge to the top of the visible (keyboard-excluded) area, then the
|
|
73
|
+
// remaining height below it. Clamp so a mid-animation reading can't collapse the pane.
|
|
74
|
+
const top = body.getBoundingClientRect().top - (vv.offsetTop || 0);
|
|
75
|
+
const avail = Math.max(220, Math.round(vv.height - top));
|
|
76
|
+
root.style.setProperty('--inbox-avail', `${avail}px`);
|
|
77
|
+
};
|
|
78
|
+
syncRef.current = sync;
|
|
79
|
+
const onFocusIn = (e) => {
|
|
80
|
+
if (!isNarrow()) return;
|
|
81
|
+
const el = e.target;
|
|
82
|
+
if (!(el instanceof HTMLElement) || !el.closest('.inbox-composer')) return;
|
|
83
|
+
// The keyboard animates in — re-measure as the viewport settles, then keep the latest messages in view.
|
|
84
|
+
setTimeout(sync, 120); setTimeout(sync, 360);
|
|
85
|
+
setTimeout(() => { const m = document.querySelector('.inbox-msgs'); if (m) m.scrollTop = m.scrollHeight; }, 380);
|
|
86
|
+
};
|
|
87
|
+
if (vv) { vv.addEventListener('resize', sync); vv.addEventListener('scroll', sync); }
|
|
88
|
+
window.addEventListener('resize', sync);
|
|
89
|
+
window.addEventListener('focusin', onFocusIn);
|
|
90
|
+
sync();
|
|
91
|
+
return () => {
|
|
92
|
+
if (vv) { vv.removeEventListener('resize', sync); vv.removeEventListener('scroll', sync); }
|
|
93
|
+
window.removeEventListener('resize', sync);
|
|
94
|
+
window.removeEventListener('focusin', onFocusIn);
|
|
95
|
+
root.style.removeProperty('--inbox-avail');
|
|
96
|
+
};
|
|
97
|
+
}, []);
|
|
98
|
+
// Re-measure when the panel opens/closes (mode change) — no viewport event fires on a pure route switch.
|
|
99
|
+
useEffect(() => {
|
|
100
|
+
const raf = requestAnimationFrame(() => syncRef.current());
|
|
101
|
+
const t = setTimeout(() => syncRef.current(), 220);
|
|
102
|
+
return () => { cancelAnimationFrame(raf); clearTimeout(t); };
|
|
103
|
+
}, [mode]);
|
|
104
|
+
}
|