@agent-native/core 0.77.3 → 0.77.6
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/corpus/README.md +1 -1
- package/corpus/core/CHANGELOG.md +27 -0
- package/corpus/core/docs/content/locales/ar-SA/a2a-protocol.md +2 -2
- package/corpus/core/docs/content/locales/ar-SA/actions.md +6 -6
- package/corpus/core/docs/content/locales/ar-SA/agent-surfaces.md +5 -5
- package/corpus/core/docs/content/locales/ar-SA/agent-teams.md +4 -4
- package/corpus/core/docs/content/locales/ar-SA/agent-web-surfaces.md +2 -2
- package/corpus/core/docs/content/locales/ar-SA/authentication.md +4 -4
- package/corpus/core/docs/content/locales/ar-SA/automations.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/blueprint-installer.md +2 -2
- package/corpus/core/docs/content/locales/ar-SA/cli-adapters.md +1 -1
- package/corpus/core/docs/content/locales/ar-SA/code-agents-ui.md +2 -2
- package/corpus/core/docs/content/locales/ar-SA/components.md +14 -14
- package/corpus/core/docs/content/locales/ar-SA/context-awareness.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/creating-templates.md +12 -12
- package/corpus/core/docs/content/locales/ar-SA/cross-app-sso.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/database.md +7 -7
- package/corpus/core/docs/content/locales/ar-SA/deployment.md +4 -4
- package/corpus/core/docs/content/locales/ar-SA/dispatch.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/drop-in-agent.md +8 -8
- package/corpus/core/docs/content/locales/ar-SA/durable-resume.md +1 -1
- package/corpus/core/docs/content/locales/ar-SA/embedding-sdk.md +2 -2
- package/corpus/core/docs/content/locales/ar-SA/evals.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/extensions.md +2 -2
- package/corpus/core/docs/content/locales/ar-SA/external-agents.md +8 -8
- package/corpus/core/docs/content/locales/ar-SA/faq.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/file-uploads.md +4 -4
- package/corpus/core/docs/content/locales/ar-SA/frames.md +1 -1
- package/corpus/core/docs/content/locales/ar-SA/getting-started.md +13 -13
- package/corpus/core/docs/content/locales/ar-SA/harness-agents.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/human-approval.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/key-concepts.md +14 -14
- package/corpus/core/docs/content/locales/ar-SA/local-file-mode.md +5 -5
- package/corpus/core/docs/content/locales/ar-SA/mcp-apps.md +9 -9
- package/corpus/core/docs/content/locales/ar-SA/mcp-clients.md +9 -9
- package/corpus/core/docs/content/locales/ar-SA/mcp-protocol.md +5 -5
- package/corpus/core/docs/content/locales/ar-SA/messaging.md +5 -5
- package/corpus/core/docs/content/locales/ar-SA/migration-workbench.md +1 -1
- package/corpus/core/docs/content/locales/ar-SA/multi-app-workspace.md +1 -1
- package/corpus/core/docs/content/locales/ar-SA/multi-tenancy.md +2 -2
- package/corpus/core/docs/content/locales/ar-SA/native-chat-ui.md +4 -4
- package/corpus/core/docs/content/locales/ar-SA/notifications.md +5 -5
- package/corpus/core/docs/content/locales/ar-SA/observability.md +1 -1
- package/corpus/core/docs/content/locales/ar-SA/observational-memory.md +2 -2
- package/corpus/core/docs/content/locales/ar-SA/onboarding.md +8 -8
- package/corpus/core/docs/content/locales/ar-SA/plan-plugin.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/pr-visual-recap.md +11 -11
- package/corpus/core/docs/content/locales/ar-SA/processors.md +2 -2
- package/corpus/core/docs/content/locales/ar-SA/progress.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/pure-agent-apps.md +1 -1
- package/corpus/core/docs/content/locales/ar-SA/real-time-collaboration.md +6 -6
- package/corpus/core/docs/content/locales/ar-SA/recurring-jobs.md +5 -5
- package/corpus/core/docs/content/locales/ar-SA/routing.md +1 -1
- package/corpus/core/docs/content/locales/ar-SA/sandbox-adapters.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/security.md +10 -10
- package/corpus/core/docs/content/locales/ar-SA/server.md +9 -9
- package/corpus/core/docs/content/locales/ar-SA/sharing.md +7 -7
- package/corpus/core/docs/content/locales/ar-SA/skills-guide.md +16 -16
- package/corpus/core/docs/content/locales/ar-SA/template-analytics.md +10 -10
- package/corpus/core/docs/content/locales/ar-SA/template-assets.md +19 -19
- package/corpus/core/docs/content/locales/ar-SA/template-brain.md +11 -11
- package/corpus/core/docs/content/locales/ar-SA/template-calendar.md +9 -9
- package/corpus/core/docs/content/locales/ar-SA/template-chat.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/template-clips.md +13 -13
- package/corpus/core/docs/content/locales/ar-SA/template-content.md +15 -15
- package/corpus/core/docs/content/locales/ar-SA/template-design.md +7 -7
- package/corpus/core/docs/content/locales/ar-SA/template-dispatch.md +8 -8
- package/corpus/core/docs/content/locales/ar-SA/template-forms.md +9 -9
- package/corpus/core/docs/content/locales/ar-SA/template-mail.md +7 -7
- package/corpus/core/docs/content/locales/ar-SA/template-plan.md +3 -3
- package/corpus/core/docs/content/locales/ar-SA/template-slides.md +8 -8
- package/corpus/core/docs/content/locales/ar-SA/template-videos.md +5 -5
- package/corpus/core/docs/content/locales/ar-SA/tracking.md +6 -6
- package/corpus/core/docs/content/locales/ar-SA/using-your-agent.md +4 -4
- package/corpus/core/docs/content/locales/ar-SA/voice-input.md +4 -4
- package/corpus/core/docs/content/locales/ar-SA/what-is-agent-native.md +4 -4
- package/corpus/core/docs/content/locales/ar-SA/workspace-connections.md +8 -8
- package/corpus/core/docs/content/locales/ar-SA/workspace-management.md +4 -4
- package/corpus/core/docs/content/locales/ar-SA/workspace.md +24 -24
- package/corpus/core/docs/content/locales/ar-SA/writing-agent-instructions.md +18 -18
- package/corpus/core/docs/content/locales/de-DE/a2a-protocol.md +7 -7
- package/corpus/core/docs/content/locales/de-DE/actions.md +5 -5
- package/corpus/core/docs/content/locales/de-DE/agent-mentions.md +4 -4
- package/corpus/core/docs/content/locales/de-DE/agent-surfaces.md +22 -22
- package/corpus/core/docs/content/locales/de-DE/agent-teams.md +4 -4
- package/corpus/core/docs/content/locales/de-DE/agent-web-surfaces.md +4 -4
- package/corpus/core/docs/content/locales/de-DE/authentication.md +6 -6
- package/corpus/core/docs/content/locales/de-DE/automations.md +8 -8
- package/corpus/core/docs/content/locales/de-DE/blueprint-installer.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/client.md +6 -6
- package/corpus/core/docs/content/locales/de-DE/cloneable-saas.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/code-agents-ui.md +9 -9
- package/corpus/core/docs/content/locales/de-DE/components.md +15 -15
- package/corpus/core/docs/content/locales/de-DE/context-awareness.md +8 -8
- package/corpus/core/docs/content/locales/de-DE/creating-templates.md +13 -13
- package/corpus/core/docs/content/locales/de-DE/cross-app-sso.md +3 -3
- package/corpus/core/docs/content/locales/de-DE/database.md +5 -5
- package/corpus/core/docs/content/locales/de-DE/deployment.md +6 -6
- package/corpus/core/docs/content/locales/de-DE/dispatch.md +3 -3
- package/corpus/core/docs/content/locales/de-DE/drop-in-agent.md +14 -14
- package/corpus/core/docs/content/locales/de-DE/durable-resume.md +1 -1
- package/corpus/core/docs/content/locales/de-DE/embedding-sdk.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/evals.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/extensions.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/external-agents.md +6 -6
- package/corpus/core/docs/content/locales/de-DE/faq.md +5 -5
- package/corpus/core/docs/content/locales/de-DE/file-uploads.md +4 -4
- package/corpus/core/docs/content/locales/de-DE/frames.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/getting-started.md +16 -16
- package/corpus/core/docs/content/locales/de-DE/harness-agents.md +3 -3
- package/corpus/core/docs/content/locales/de-DE/human-approval.md +4 -4
- package/corpus/core/docs/content/locales/de-DE/key-concepts.md +14 -14
- package/corpus/core/docs/content/locales/de-DE/local-file-mode.md +8 -8
- package/corpus/core/docs/content/locales/de-DE/mcp-apps.md +4 -4
- package/corpus/core/docs/content/locales/de-DE/mcp-clients.md +7 -7
- package/corpus/core/docs/content/locales/de-DE/mcp-protocol.md +3 -3
- package/corpus/core/docs/content/locales/de-DE/messaging.md +5 -5
- package/corpus/core/docs/content/locales/de-DE/migration-workbench.md +1 -1
- package/corpus/core/docs/content/locales/de-DE/multi-app-workspace.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/multi-tenancy.md +1 -1
- package/corpus/core/docs/content/locales/de-DE/native-chat-ui.md +8 -8
- package/corpus/core/docs/content/locales/de-DE/notifications.md +3 -3
- package/corpus/core/docs/content/locales/de-DE/observability.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/observational-memory.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/onboarding.md +8 -8
- package/corpus/core/docs/content/locales/de-DE/plan-plugin.md +3 -3
- package/corpus/core/docs/content/locales/de-DE/pr-visual-recap.md +11 -11
- package/corpus/core/docs/content/locales/de-DE/processors.md +1 -1
- package/corpus/core/docs/content/locales/de-DE/progress.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/pure-agent-apps.md +1 -1
- package/corpus/core/docs/content/locales/de-DE/real-time-collaboration.md +8 -8
- package/corpus/core/docs/content/locales/de-DE/recurring-jobs.md +5 -5
- package/corpus/core/docs/content/locales/de-DE/routing.md +1 -1
- package/corpus/core/docs/content/locales/de-DE/sandbox-adapters.md +2 -2
- package/corpus/core/docs/content/locales/de-DE/security.md +10 -10
- package/corpus/core/docs/content/locales/de-DE/server.md +10 -10
- package/corpus/core/docs/content/locales/de-DE/sharing.md +6 -6
- package/corpus/core/docs/content/locales/de-DE/skills-guide.md +17 -17
- package/corpus/core/docs/content/locales/de-DE/template-analytics.md +10 -10
- package/corpus/core/docs/content/locales/de-DE/template-assets.md +21 -21
- package/corpus/core/docs/content/locales/de-DE/template-brain.md +11 -11
- package/corpus/core/docs/content/locales/de-DE/template-calendar.md +10 -10
- package/corpus/core/docs/content/locales/de-DE/template-chat.md +5 -5
- package/corpus/core/docs/content/locales/de-DE/template-clips.md +14 -14
- package/corpus/core/docs/content/locales/de-DE/template-content.md +14 -14
- package/corpus/core/docs/content/locales/de-DE/template-design.md +7 -7
- package/corpus/core/docs/content/locales/de-DE/template-dispatch.md +12 -12
- package/corpus/core/docs/content/locales/de-DE/template-forms.md +9 -9
- package/corpus/core/docs/content/locales/de-DE/template-mail.md +6 -6
- package/corpus/core/docs/content/locales/de-DE/template-plan.md +3 -3
- package/corpus/core/docs/content/locales/de-DE/template-slides.md +8 -8
- package/corpus/core/docs/content/locales/de-DE/template-videos.md +6 -6
- package/corpus/core/docs/content/locales/de-DE/tracking.md +3 -3
- package/corpus/core/docs/content/locales/de-DE/using-your-agent.md +6 -6
- package/corpus/core/docs/content/locales/de-DE/voice-input.md +9 -9
- package/corpus/core/docs/content/locales/de-DE/what-is-agent-native.md +6 -6
- package/corpus/core/docs/content/locales/de-DE/workspace-connections.md +9 -9
- package/corpus/core/docs/content/locales/de-DE/workspace-management.md +5 -5
- package/corpus/core/docs/content/locales/de-DE/workspace.md +23 -23
- package/corpus/core/docs/content/locales/de-DE/writing-agent-instructions.md +30 -30
- package/corpus/core/docs/content/locales/es-ES/a2a-protocol.md +7 -7
- package/corpus/core/docs/content/locales/es-ES/actions.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/agent-mentions.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/agent-surfaces.md +7 -7
- package/corpus/core/docs/content/locales/es-ES/agent-teams.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/agent-web-surfaces.md +5 -5
- package/corpus/core/docs/content/locales/es-ES/authentication.md +6 -6
- package/corpus/core/docs/content/locales/es-ES/automations.md +8 -8
- package/corpus/core/docs/content/locales/es-ES/blueprint-installer.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/client.md +1 -1
- package/corpus/core/docs/content/locales/es-ES/cloneable-saas.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/code-agents-ui.md +4 -4
- package/corpus/core/docs/content/locales/es-ES/components.md +5 -5
- package/corpus/core/docs/content/locales/es-ES/context-awareness.md +8 -8
- package/corpus/core/docs/content/locales/es-ES/creating-templates.md +12 -12
- package/corpus/core/docs/content/locales/es-ES/cross-app-sso.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/database.md +5 -5
- package/corpus/core/docs/content/locales/es-ES/deployment.md +4 -4
- package/corpus/core/docs/content/locales/es-ES/dispatch.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/drop-in-agent.md +8 -8
- package/corpus/core/docs/content/locales/es-ES/durable-resume.md +1 -1
- package/corpus/core/docs/content/locales/es-ES/embedding-sdk.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/evals.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/extensions.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/external-agents.md +5 -5
- package/corpus/core/docs/content/locales/es-ES/faq.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/file-uploads.md +4 -4
- package/corpus/core/docs/content/locales/es-ES/frames.md +1 -1
- package/corpus/core/docs/content/locales/es-ES/getting-started.md +13 -13
- package/corpus/core/docs/content/locales/es-ES/harness-agents.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/human-approval.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/key-concepts.md +14 -14
- package/corpus/core/docs/content/locales/es-ES/local-file-mode.md +6 -6
- package/corpus/core/docs/content/locales/es-ES/mcp-apps.md +4 -4
- package/corpus/core/docs/content/locales/es-ES/mcp-clients.md +8 -8
- package/corpus/core/docs/content/locales/es-ES/mcp-protocol.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/messaging.md +4 -4
- package/corpus/core/docs/content/locales/es-ES/migration-workbench.md +1 -1
- package/corpus/core/docs/content/locales/es-ES/multi-app-workspace.md +1 -1
- package/corpus/core/docs/content/locales/es-ES/multi-tenancy.md +1 -1
- package/corpus/core/docs/content/locales/es-ES/native-chat-ui.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/notifications.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/observability.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/observational-memory.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/onboarding.md +8 -8
- package/corpus/core/docs/content/locales/es-ES/plan-plugin.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/pr-visual-recap.md +11 -11
- package/corpus/core/docs/content/locales/es-ES/processors.md +1 -1
- package/corpus/core/docs/content/locales/es-ES/progress.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/pure-agent-apps.md +1 -1
- package/corpus/core/docs/content/locales/es-ES/real-time-collaboration.md +6 -6
- package/corpus/core/docs/content/locales/es-ES/recurring-jobs.md +5 -5
- package/corpus/core/docs/content/locales/es-ES/routing.md +1 -1
- package/corpus/core/docs/content/locales/es-ES/sandbox-adapters.md +2 -2
- package/corpus/core/docs/content/locales/es-ES/security.md +8 -8
- package/corpus/core/docs/content/locales/es-ES/server.md +11 -11
- package/corpus/core/docs/content/locales/es-ES/sharing.md +6 -6
- package/corpus/core/docs/content/locales/es-ES/skills-guide.md +16 -16
- package/corpus/core/docs/content/locales/es-ES/template-analytics.md +10 -10
- package/corpus/core/docs/content/locales/es-ES/template-assets.md +19 -19
- package/corpus/core/docs/content/locales/es-ES/template-brain.md +11 -11
- package/corpus/core/docs/content/locales/es-ES/template-calendar.md +9 -9
- package/corpus/core/docs/content/locales/es-ES/template-chat.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/template-clips.md +14 -14
- package/corpus/core/docs/content/locales/es-ES/template-content.md +13 -13
- package/corpus/core/docs/content/locales/es-ES/template-design.md +7 -7
- package/corpus/core/docs/content/locales/es-ES/template-dispatch.md +8 -8
- package/corpus/core/docs/content/locales/es-ES/template-forms.md +9 -9
- package/corpus/core/docs/content/locales/es-ES/template-mail.md +6 -6
- package/corpus/core/docs/content/locales/es-ES/template-plan.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/template-slides.md +8 -8
- package/corpus/core/docs/content/locales/es-ES/template-videos.md +5 -5
- package/corpus/core/docs/content/locales/es-ES/tracking.md +3 -3
- package/corpus/core/docs/content/locales/es-ES/using-your-agent.md +5 -5
- package/corpus/core/docs/content/locales/es-ES/voice-input.md +4 -4
- package/corpus/core/docs/content/locales/es-ES/what-is-agent-native.md +6 -6
- package/corpus/core/docs/content/locales/es-ES/workspace-connections.md +8 -8
- package/corpus/core/docs/content/locales/es-ES/workspace-management.md +4 -4
- package/corpus/core/docs/content/locales/es-ES/workspace.md +23 -23
- package/corpus/core/docs/content/locales/es-ES/writing-agent-instructions.md +18 -18
- package/corpus/core/docs/content/locales/fr-FR/a2a-protocol.md +7 -7
- package/corpus/core/docs/content/locales/fr-FR/actions.md +2 -2
- package/corpus/core/docs/content/locales/fr-FR/agent-mentions.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/agent-surfaces.md +7 -7
- package/corpus/core/docs/content/locales/fr-FR/agent-teams.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/agent-web-surfaces.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/authentication.md +6 -6
- package/corpus/core/docs/content/locales/fr-FR/automations.md +8 -8
- package/corpus/core/docs/content/locales/fr-FR/blueprint-installer.md +2 -2
- package/corpus/core/docs/content/locales/fr-FR/client.md +1 -1
- package/corpus/core/docs/content/locales/fr-FR/cloneable-saas.md +2 -2
- package/corpus/core/docs/content/locales/fr-FR/code-agents-ui.md +4 -4
- package/corpus/core/docs/content/locales/fr-FR/components.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/context-awareness.md +8 -8
- package/corpus/core/docs/content/locales/fr-FR/creating-templates.md +12 -12
- package/corpus/core/docs/content/locales/fr-FR/cross-app-sso.md +4 -4
- package/corpus/core/docs/content/locales/fr-FR/database.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/deployment.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/dispatch.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/drop-in-agent.md +9 -9
- package/corpus/core/docs/content/locales/fr-FR/durable-resume.md +1 -1
- package/corpus/core/docs/content/locales/fr-FR/embedding-sdk.md +7 -7
- package/corpus/core/docs/content/locales/fr-FR/evals.md +2 -2
- package/corpus/core/docs/content/locales/fr-FR/extensions.md +2 -2
- package/corpus/core/docs/content/locales/fr-FR/external-agents.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/faq.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/file-uploads.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/frames.md +1 -1
- package/corpus/core/docs/content/locales/fr-FR/getting-started.md +13 -13
- package/corpus/core/docs/content/locales/fr-FR/harness-agents.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/human-approval.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/key-concepts.md +15 -15
- package/corpus/core/docs/content/locales/fr-FR/local-file-mode.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/mcp-apps.md +4 -4
- package/corpus/core/docs/content/locales/fr-FR/mcp-clients.md +8 -8
- package/corpus/core/docs/content/locales/fr-FR/mcp-protocol.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/messaging.md +4 -4
- package/corpus/core/docs/content/locales/fr-FR/migration-workbench.md +1 -1
- package/corpus/core/docs/content/locales/fr-FR/multi-app-workspace.md +1 -1
- package/corpus/core/docs/content/locales/fr-FR/multi-tenancy.md +1 -1
- package/corpus/core/docs/content/locales/fr-FR/native-chat-ui.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/notifications.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/observability.md +2 -2
- package/corpus/core/docs/content/locales/fr-FR/observational-memory.md +2 -2
- package/corpus/core/docs/content/locales/fr-FR/onboarding.md +8 -8
- package/corpus/core/docs/content/locales/fr-FR/plan-plugin.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/pr-visual-recap.md +11 -11
- package/corpus/core/docs/content/locales/fr-FR/processors.md +1 -1
- package/corpus/core/docs/content/locales/fr-FR/progress.md +2 -2
- package/corpus/core/docs/content/locales/fr-FR/pure-agent-apps.md +1 -1
- package/corpus/core/docs/content/locales/fr-FR/real-time-collaboration.md +8 -8
- package/corpus/core/docs/content/locales/fr-FR/recurring-jobs.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/routing.md +1 -1
- package/corpus/core/docs/content/locales/fr-FR/sandbox-adapters.md +2 -2
- package/corpus/core/docs/content/locales/fr-FR/security.md +8 -8
- package/corpus/core/docs/content/locales/fr-FR/server.md +10 -10
- package/corpus/core/docs/content/locales/fr-FR/sharing.md +6 -6
- package/corpus/core/docs/content/locales/fr-FR/skills-guide.md +16 -16
- package/corpus/core/docs/content/locales/fr-FR/template-analytics.md +10 -10
- package/corpus/core/docs/content/locales/fr-FR/template-assets.md +20 -20
- package/corpus/core/docs/content/locales/fr-FR/template-brain.md +11 -11
- package/corpus/core/docs/content/locales/fr-FR/template-calendar.md +9 -9
- package/corpus/core/docs/content/locales/fr-FR/template-chat.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/template-clips.md +15 -15
- package/corpus/core/docs/content/locales/fr-FR/template-content.md +13 -13
- package/corpus/core/docs/content/locales/fr-FR/template-design.md +8 -8
- package/corpus/core/docs/content/locales/fr-FR/template-dispatch.md +8 -8
- package/corpus/core/docs/content/locales/fr-FR/template-forms.md +10 -10
- package/corpus/core/docs/content/locales/fr-FR/template-mail.md +6 -6
- package/corpus/core/docs/content/locales/fr-FR/template-plan.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/template-slides.md +9 -9
- package/corpus/core/docs/content/locales/fr-FR/template-videos.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/tracking.md +3 -3
- package/corpus/core/docs/content/locales/fr-FR/using-your-agent.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/voice-input.md +4 -4
- package/corpus/core/docs/content/locales/fr-FR/what-is-agent-native.md +6 -6
- package/corpus/core/docs/content/locales/fr-FR/workspace-connections.md +8 -8
- package/corpus/core/docs/content/locales/fr-FR/workspace-management.md +5 -5
- package/corpus/core/docs/content/locales/fr-FR/workspace.md +23 -23
- package/corpus/core/docs/content/locales/fr-FR/writing-agent-instructions.md +18 -18
- package/corpus/core/docs/content/locales/hi-IN/a2a-protocol.md +7 -7
- package/corpus/core/docs/content/locales/hi-IN/actions.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/agent-mentions.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/agent-surfaces.md +7 -7
- package/corpus/core/docs/content/locales/hi-IN/agent-teams.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/agent-web-surfaces.md +5 -5
- package/corpus/core/docs/content/locales/hi-IN/authentication.md +6 -6
- package/corpus/core/docs/content/locales/hi-IN/automations.md +8 -8
- package/corpus/core/docs/content/locales/hi-IN/blueprint-installer.md +2 -2
- package/corpus/core/docs/content/locales/hi-IN/client.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/cloneable-saas.md +2 -2
- package/corpus/core/docs/content/locales/hi-IN/code-agents-ui.md +4 -4
- package/corpus/core/docs/content/locales/hi-IN/components.md +5 -5
- package/corpus/core/docs/content/locales/hi-IN/context-awareness.md +8 -8
- package/corpus/core/docs/content/locales/hi-IN/creating-templates.md +14 -14
- package/corpus/core/docs/content/locales/hi-IN/cross-app-sso.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/database.md +5 -5
- package/corpus/core/docs/content/locales/hi-IN/deployment.md +5 -5
- package/corpus/core/docs/content/locales/hi-IN/dispatch.md +4 -4
- package/corpus/core/docs/content/locales/hi-IN/drop-in-agent.md +8 -8
- package/corpus/core/docs/content/locales/hi-IN/durable-resume.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/embedding-sdk.md +2 -2
- package/corpus/core/docs/content/locales/hi-IN/evals.md +2 -2
- package/corpus/core/docs/content/locales/hi-IN/extensions.md +2 -2
- package/corpus/core/docs/content/locales/hi-IN/external-agents.md +5 -5
- package/corpus/core/docs/content/locales/hi-IN/faq.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/file-uploads.md +4 -4
- package/corpus/core/docs/content/locales/hi-IN/frames.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/getting-started.md +14 -14
- package/corpus/core/docs/content/locales/hi-IN/harness-agents.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/human-approval.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/key-concepts.md +14 -14
- package/corpus/core/docs/content/locales/hi-IN/local-file-mode.md +5 -5
- package/corpus/core/docs/content/locales/hi-IN/mcp-apps.md +4 -4
- package/corpus/core/docs/content/locales/hi-IN/mcp-clients.md +7 -7
- package/corpus/core/docs/content/locales/hi-IN/mcp-protocol.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/messaging.md +6 -6
- package/corpus/core/docs/content/locales/hi-IN/migration-workbench.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/multi-app-workspace.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/multi-tenancy.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/native-chat-ui.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/notifications.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/observability.md +2 -2
- package/corpus/core/docs/content/locales/hi-IN/observational-memory.md +2 -2
- package/corpus/core/docs/content/locales/hi-IN/onboarding.md +8 -8
- package/corpus/core/docs/content/locales/hi-IN/plan-plugin.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/pr-visual-recap.md +11 -11
- package/corpus/core/docs/content/locales/hi-IN/processors.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/progress.md +2 -2
- package/corpus/core/docs/content/locales/hi-IN/pure-agent-apps.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/real-time-collaboration.md +6 -6
- package/corpus/core/docs/content/locales/hi-IN/recurring-jobs.md +5 -5
- package/corpus/core/docs/content/locales/hi-IN/routing.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/sandbox-adapters.md +2 -2
- package/corpus/core/docs/content/locales/hi-IN/security.md +8 -8
- package/corpus/core/docs/content/locales/hi-IN/server.md +10 -10
- package/corpus/core/docs/content/locales/hi-IN/sharing.md +6 -6
- package/corpus/core/docs/content/locales/hi-IN/skills-guide.md +16 -16
- package/corpus/core/docs/content/locales/hi-IN/template-analytics.md +10 -10
- package/corpus/core/docs/content/locales/hi-IN/template-assets.md +19 -19
- package/corpus/core/docs/content/locales/hi-IN/template-brain.md +11 -11
- package/corpus/core/docs/content/locales/hi-IN/template-calendar.md +9 -9
- package/corpus/core/docs/content/locales/hi-IN/template-chat.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/template-clips.md +14 -14
- package/corpus/core/docs/content/locales/hi-IN/template-content.md +13 -13
- package/corpus/core/docs/content/locales/hi-IN/template-design.md +7 -7
- package/corpus/core/docs/content/locales/hi-IN/template-dispatch.md +9 -9
- package/corpus/core/docs/content/locales/hi-IN/template-forms.md +9 -9
- package/corpus/core/docs/content/locales/hi-IN/template-mail.md +6 -6
- package/corpus/core/docs/content/locales/hi-IN/template-plan.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/template-slides.md +8 -8
- package/corpus/core/docs/content/locales/hi-IN/template-videos.md +5 -5
- package/corpus/core/docs/content/locales/hi-IN/tracking.md +3 -3
- package/corpus/core/docs/content/locales/hi-IN/using-your-agent.md +1 -1
- package/corpus/core/docs/content/locales/hi-IN/voice-input.md +4 -4
- package/corpus/core/docs/content/locales/hi-IN/what-is-agent-native.md +4 -4
- package/corpus/core/docs/content/locales/hi-IN/workspace-connections.md +8 -8
- package/corpus/core/docs/content/locales/hi-IN/workspace-management.md +4 -4
- package/corpus/core/docs/content/locales/hi-IN/workspace.md +23 -23
- package/corpus/core/docs/content/locales/hi-IN/writing-agent-instructions.md +18 -18
- package/corpus/core/docs/content/locales/ja-JP/a2a-protocol.md +7 -7
- package/corpus/core/docs/content/locales/ja-JP/actions.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/agent-mentions.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/agent-surfaces.md +7 -7
- package/corpus/core/docs/content/locales/ja-JP/agent-teams.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/agent-web-surfaces.md +5 -5
- package/corpus/core/docs/content/locales/ja-JP/authentication.md +6 -6
- package/corpus/core/docs/content/locales/ja-JP/automations.md +8 -8
- package/corpus/core/docs/content/locales/ja-JP/blueprint-installer.md +2 -2
- package/corpus/core/docs/content/locales/ja-JP/client.md +1 -1
- package/corpus/core/docs/content/locales/ja-JP/cloneable-saas.md +2 -2
- package/corpus/core/docs/content/locales/ja-JP/code-agents-ui.md +4 -4
- package/corpus/core/docs/content/locales/ja-JP/components.md +5 -5
- package/corpus/core/docs/content/locales/ja-JP/context-awareness.md +8 -8
- package/corpus/core/docs/content/locales/ja-JP/creating-templates.md +12 -12
- package/corpus/core/docs/content/locales/ja-JP/cross-app-sso.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/database.md +7 -7
- package/corpus/core/docs/content/locales/ja-JP/deployment.md +4 -4
- package/corpus/core/docs/content/locales/ja-JP/dispatch.md +4 -4
- package/corpus/core/docs/content/locales/ja-JP/drop-in-agent.md +8 -8
- package/corpus/core/docs/content/locales/ja-JP/durable-resume.md +1 -1
- package/corpus/core/docs/content/locales/ja-JP/embedding-sdk.md +2 -2
- package/corpus/core/docs/content/locales/ja-JP/evals.md +2 -2
- package/corpus/core/docs/content/locales/ja-JP/extensions.md +2 -2
- package/corpus/core/docs/content/locales/ja-JP/external-agents.md +5 -5
- package/corpus/core/docs/content/locales/ja-JP/faq.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/file-uploads.md +4 -4
- package/corpus/core/docs/content/locales/ja-JP/frames.md +1 -1
- package/corpus/core/docs/content/locales/ja-JP/getting-started.md +13 -13
- package/corpus/core/docs/content/locales/ja-JP/harness-agents.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/human-approval.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/key-concepts.md +14 -14
- package/corpus/core/docs/content/locales/ja-JP/local-file-mode.md +5 -5
- package/corpus/core/docs/content/locales/ja-JP/mcp-apps.md +4 -4
- package/corpus/core/docs/content/locales/ja-JP/mcp-clients.md +8 -8
- package/corpus/core/docs/content/locales/ja-JP/mcp-protocol.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/messaging.md +6 -6
- package/corpus/core/docs/content/locales/ja-JP/migration-workbench.md +1 -1
- package/corpus/core/docs/content/locales/ja-JP/multi-app-workspace.md +1 -1
- package/corpus/core/docs/content/locales/ja-JP/multi-tenancy.md +1 -1
- package/corpus/core/docs/content/locales/ja-JP/native-chat-ui.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/notifications.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/observability.md +2 -2
- package/corpus/core/docs/content/locales/ja-JP/observational-memory.md +2 -2
- package/corpus/core/docs/content/locales/ja-JP/onboarding.md +8 -8
- package/corpus/core/docs/content/locales/ja-JP/plan-plugin.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/pr-visual-recap.md +11 -11
- package/corpus/core/docs/content/locales/ja-JP/processors.md +1 -1
- package/corpus/core/docs/content/locales/ja-JP/progress.md +2 -2
- package/corpus/core/docs/content/locales/ja-JP/pure-agent-apps.md +1 -1
- package/corpus/core/docs/content/locales/ja-JP/real-time-collaboration.md +6 -6
- package/corpus/core/docs/content/locales/ja-JP/recurring-jobs.md +5 -5
- package/corpus/core/docs/content/locales/ja-JP/routing.md +1 -1
- package/corpus/core/docs/content/locales/ja-JP/sandbox-adapters.md +2 -2
- package/corpus/core/docs/content/locales/ja-JP/security.md +8 -8
- package/corpus/core/docs/content/locales/ja-JP/server.md +10 -10
- package/corpus/core/docs/content/locales/ja-JP/sharing.md +6 -6
- package/corpus/core/docs/content/locales/ja-JP/skills-guide.md +16 -16
- package/corpus/core/docs/content/locales/ja-JP/template-analytics.md +10 -10
- package/corpus/core/docs/content/locales/ja-JP/template-assets.md +19 -19
- package/corpus/core/docs/content/locales/ja-JP/template-brain.md +11 -11
- package/corpus/core/docs/content/locales/ja-JP/template-calendar.md +9 -9
- package/corpus/core/docs/content/locales/ja-JP/template-chat.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/template-clips.md +14 -14
- package/corpus/core/docs/content/locales/ja-JP/template-content.md +13 -13
- package/corpus/core/docs/content/locales/ja-JP/template-design.md +7 -7
- package/corpus/core/docs/content/locales/ja-JP/template-dispatch.md +12 -12
- package/corpus/core/docs/content/locales/ja-JP/template-forms.md +9 -9
- package/corpus/core/docs/content/locales/ja-JP/template-mail.md +6 -6
- package/corpus/core/docs/content/locales/ja-JP/template-plan.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/template-slides.md +8 -8
- package/corpus/core/docs/content/locales/ja-JP/template-videos.md +5 -5
- package/corpus/core/docs/content/locales/ja-JP/tracking.md +3 -3
- package/corpus/core/docs/content/locales/ja-JP/using-your-agent.md +4 -4
- package/corpus/core/docs/content/locales/ja-JP/voice-input.md +4 -4
- package/corpus/core/docs/content/locales/ja-JP/what-is-agent-native.md +4 -4
- package/corpus/core/docs/content/locales/ja-JP/workspace-connections.md +8 -8
- package/corpus/core/docs/content/locales/ja-JP/workspace-management.md +5 -5
- package/corpus/core/docs/content/locales/ja-JP/workspace.md +23 -23
- package/corpus/core/docs/content/locales/ja-JP/writing-agent-instructions.md +18 -18
- package/corpus/core/docs/content/locales/ko-KR/a2a-protocol.md +7 -7
- package/corpus/core/docs/content/locales/ko-KR/actions.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/agent-mentions.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/agent-surfaces.md +15 -15
- package/corpus/core/docs/content/locales/ko-KR/agent-teams.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/agent-web-surfaces.md +5 -5
- package/corpus/core/docs/content/locales/ko-KR/authentication.md +13 -13
- package/corpus/core/docs/content/locales/ko-KR/automations.md +8 -8
- package/corpus/core/docs/content/locales/ko-KR/blueprint-installer.md +2 -2
- package/corpus/core/docs/content/locales/ko-KR/client.md +1 -1
- package/corpus/core/docs/content/locales/ko-KR/cloneable-saas.md +2 -2
- package/corpus/core/docs/content/locales/ko-KR/code-agents-ui.md +4 -4
- package/corpus/core/docs/content/locales/ko-KR/components.md +5 -5
- package/corpus/core/docs/content/locales/ko-KR/context-awareness.md +8 -8
- package/corpus/core/docs/content/locales/ko-KR/creating-templates.md +12 -12
- package/corpus/core/docs/content/locales/ko-KR/cross-app-sso.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/database.md +7 -7
- package/corpus/core/docs/content/locales/ko-KR/deployment.md +4 -4
- package/corpus/core/docs/content/locales/ko-KR/dispatch.md +4 -4
- package/corpus/core/docs/content/locales/ko-KR/drop-in-agent.md +8 -8
- package/corpus/core/docs/content/locales/ko-KR/durable-resume.md +1 -1
- package/corpus/core/docs/content/locales/ko-KR/embedding-sdk.md +2 -2
- package/corpus/core/docs/content/locales/ko-KR/evals.md +2 -2
- package/corpus/core/docs/content/locales/ko-KR/extensions.md +2 -2
- package/corpus/core/docs/content/locales/ko-KR/external-agents.md +5 -5
- package/corpus/core/docs/content/locales/ko-KR/faq.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/file-uploads.md +4 -4
- package/corpus/core/docs/content/locales/ko-KR/frames.md +1 -1
- package/corpus/core/docs/content/locales/ko-KR/getting-started.md +13 -13
- package/corpus/core/docs/content/locales/ko-KR/harness-agents.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/human-approval.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/key-concepts.md +14 -14
- package/corpus/core/docs/content/locales/ko-KR/local-file-mode.md +5 -5
- package/corpus/core/docs/content/locales/ko-KR/mcp-apps.md +4 -4
- package/corpus/core/docs/content/locales/ko-KR/mcp-clients.md +8 -8
- package/corpus/core/docs/content/locales/ko-KR/mcp-protocol.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/messaging.md +6 -6
- package/corpus/core/docs/content/locales/ko-KR/migration-workbench.md +1 -1
- package/corpus/core/docs/content/locales/ko-KR/multi-app-workspace.md +1 -1
- package/corpus/core/docs/content/locales/ko-KR/multi-tenancy.md +1 -1
- package/corpus/core/docs/content/locales/ko-KR/native-chat-ui.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/notifications.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/observability.md +2 -2
- package/corpus/core/docs/content/locales/ko-KR/observational-memory.md +2 -2
- package/corpus/core/docs/content/locales/ko-KR/onboarding.md +8 -8
- package/corpus/core/docs/content/locales/ko-KR/plan-plugin.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/pr-visual-recap.md +11 -11
- package/corpus/core/docs/content/locales/ko-KR/processors.md +1 -1
- package/corpus/core/docs/content/locales/ko-KR/progress.md +2 -2
- package/corpus/core/docs/content/locales/ko-KR/pure-agent-apps.md +1 -1
- package/corpus/core/docs/content/locales/ko-KR/real-time-collaboration.md +6 -6
- package/corpus/core/docs/content/locales/ko-KR/recurring-jobs.md +5 -5
- package/corpus/core/docs/content/locales/ko-KR/routing.md +1 -1
- package/corpus/core/docs/content/locales/ko-KR/sandbox-adapters.md +2 -2
- package/corpus/core/docs/content/locales/ko-KR/security.md +8 -8
- package/corpus/core/docs/content/locales/ko-KR/server.md +10 -10
- package/corpus/core/docs/content/locales/ko-KR/sharing.md +6 -6
- package/corpus/core/docs/content/locales/ko-KR/skills-guide.md +16 -16
- package/corpus/core/docs/content/locales/ko-KR/template-analytics.md +10 -10
- package/corpus/core/docs/content/locales/ko-KR/template-assets.md +19 -19
- package/corpus/core/docs/content/locales/ko-KR/template-brain.md +11 -11
- package/corpus/core/docs/content/locales/ko-KR/template-calendar.md +9 -9
- package/corpus/core/docs/content/locales/ko-KR/template-chat.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/template-clips.md +14 -14
- package/corpus/core/docs/content/locales/ko-KR/template-content.md +13 -13
- package/corpus/core/docs/content/locales/ko-KR/template-design.md +7 -7
- package/corpus/core/docs/content/locales/ko-KR/template-dispatch.md +11 -11
- package/corpus/core/docs/content/locales/ko-KR/template-forms.md +9 -9
- package/corpus/core/docs/content/locales/ko-KR/template-mail.md +6 -6
- package/corpus/core/docs/content/locales/ko-KR/template-plan.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/template-slides.md +8 -8
- package/corpus/core/docs/content/locales/ko-KR/template-videos.md +5 -5
- package/corpus/core/docs/content/locales/ko-KR/tracking.md +3 -3
- package/corpus/core/docs/content/locales/ko-KR/using-your-agent.md +5 -5
- package/corpus/core/docs/content/locales/ko-KR/voice-input.md +4 -4
- package/corpus/core/docs/content/locales/ko-KR/what-is-agent-native.md +6 -6
- package/corpus/core/docs/content/locales/ko-KR/workspace-connections.md +8 -8
- package/corpus/core/docs/content/locales/ko-KR/workspace-management.md +4 -4
- package/corpus/core/docs/content/locales/ko-KR/workspace.md +23 -23
- package/corpus/core/docs/content/locales/ko-KR/writing-agent-instructions.md +18 -18
- package/corpus/core/docs/content/locales/pt-BR/a2a-protocol.md +7 -7
- package/corpus/core/docs/content/locales/pt-BR/actions.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/agent-mentions.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/agent-surfaces.md +7 -7
- package/corpus/core/docs/content/locales/pt-BR/agent-teams.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/agent-web-surfaces.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/authentication.md +6 -6
- package/corpus/core/docs/content/locales/pt-BR/automations.md +8 -8
- package/corpus/core/docs/content/locales/pt-BR/blueprint-installer.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/client.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/cloneable-saas.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/code-agents-ui.md +4 -4
- package/corpus/core/docs/content/locales/pt-BR/components.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/context-awareness.md +8 -8
- package/corpus/core/docs/content/locales/pt-BR/creating-templates.md +12 -12
- package/corpus/core/docs/content/locales/pt-BR/cross-app-sso.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/database.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/deployment.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/dispatch.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/drop-in-agent.md +9 -9
- package/corpus/core/docs/content/locales/pt-BR/durable-resume.md +1 -1
- package/corpus/core/docs/content/locales/pt-BR/embedding-sdk.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/evals.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/extensions.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/external-agents.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/faq.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/file-uploads.md +4 -4
- package/corpus/core/docs/content/locales/pt-BR/frames.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/getting-started.md +13 -13
- package/corpus/core/docs/content/locales/pt-BR/harness-agents.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/human-approval.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/key-concepts.md +15 -15
- package/corpus/core/docs/content/locales/pt-BR/local-file-mode.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/mcp-apps.md +4 -4
- package/corpus/core/docs/content/locales/pt-BR/mcp-clients.md +8 -8
- package/corpus/core/docs/content/locales/pt-BR/mcp-protocol.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/messaging.md +4 -4
- package/corpus/core/docs/content/locales/pt-BR/migration-workbench.md +1 -1
- package/corpus/core/docs/content/locales/pt-BR/multi-app-workspace.md +1 -1
- package/corpus/core/docs/content/locales/pt-BR/multi-tenancy.md +1 -1
- package/corpus/core/docs/content/locales/pt-BR/native-chat-ui.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/notifications.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/observability.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/observational-memory.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/onboarding.md +8 -8
- package/corpus/core/docs/content/locales/pt-BR/plan-plugin.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/pr-visual-recap.md +11 -11
- package/corpus/core/docs/content/locales/pt-BR/processors.md +1 -1
- package/corpus/core/docs/content/locales/pt-BR/progress.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/pure-agent-apps.md +1 -1
- package/corpus/core/docs/content/locales/pt-BR/real-time-collaboration.md +6 -6
- package/corpus/core/docs/content/locales/pt-BR/recurring-jobs.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/routing.md +1 -1
- package/corpus/core/docs/content/locales/pt-BR/sandbox-adapters.md +2 -2
- package/corpus/core/docs/content/locales/pt-BR/security.md +9 -9
- package/corpus/core/docs/content/locales/pt-BR/server.md +10 -10
- package/corpus/core/docs/content/locales/pt-BR/sharing.md +6 -6
- package/corpus/core/docs/content/locales/pt-BR/skills-guide.md +16 -16
- package/corpus/core/docs/content/locales/pt-BR/template-analytics.md +10 -10
- package/corpus/core/docs/content/locales/pt-BR/template-assets.md +20 -20
- package/corpus/core/docs/content/locales/pt-BR/template-brain.md +11 -11
- package/corpus/core/docs/content/locales/pt-BR/template-calendar.md +9 -9
- package/corpus/core/docs/content/locales/pt-BR/template-chat.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/template-clips.md +15 -15
- package/corpus/core/docs/content/locales/pt-BR/template-content.md +13 -13
- package/corpus/core/docs/content/locales/pt-BR/template-design.md +8 -8
- package/corpus/core/docs/content/locales/pt-BR/template-dispatch.md +8 -8
- package/corpus/core/docs/content/locales/pt-BR/template-forms.md +10 -10
- package/corpus/core/docs/content/locales/pt-BR/template-mail.md +6 -6
- package/corpus/core/docs/content/locales/pt-BR/template-plan.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/template-slides.md +9 -9
- package/corpus/core/docs/content/locales/pt-BR/template-videos.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/tracking.md +3 -3
- package/corpus/core/docs/content/locales/pt-BR/using-your-agent.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/voice-input.md +4 -4
- package/corpus/core/docs/content/locales/pt-BR/what-is-agent-native.md +5 -5
- package/corpus/core/docs/content/locales/pt-BR/workspace-connections.md +8 -8
- package/corpus/core/docs/content/locales/pt-BR/workspace-management.md +4 -4
- package/corpus/core/docs/content/locales/pt-BR/workspace.md +23 -23
- package/corpus/core/docs/content/locales/pt-BR/writing-agent-instructions.md +18 -18
- package/corpus/core/docs/content/locales/zh-CN/a2a-protocol.md +7 -7
- package/corpus/core/docs/content/locales/zh-CN/actions.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/agent-mentions.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/agent-surfaces.md +7 -7
- package/corpus/core/docs/content/locales/zh-CN/agent-teams.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/agent-web-surfaces.md +5 -5
- package/corpus/core/docs/content/locales/zh-CN/authentication.md +13 -13
- package/corpus/core/docs/content/locales/zh-CN/automations.md +8 -8
- package/corpus/core/docs/content/locales/zh-CN/blueprint-installer.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/client.md +1 -1
- package/corpus/core/docs/content/locales/zh-CN/cloneable-saas.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/code-agents-ui.md +4 -4
- package/corpus/core/docs/content/locales/zh-CN/components.md +7 -7
- package/corpus/core/docs/content/locales/zh-CN/context-awareness.md +8 -8
- package/corpus/core/docs/content/locales/zh-CN/creating-templates.md +12 -12
- package/corpus/core/docs/content/locales/zh-CN/cross-app-sso.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/database.md +7 -7
- package/corpus/core/docs/content/locales/zh-CN/deployment.md +4 -4
- package/corpus/core/docs/content/locales/zh-CN/dispatch.md +4 -4
- package/corpus/core/docs/content/locales/zh-CN/drop-in-agent.md +8 -8
- package/corpus/core/docs/content/locales/zh-CN/durable-resume.md +1 -1
- package/corpus/core/docs/content/locales/zh-CN/embedding-sdk.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/evals.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/extensions.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/external-agents.md +5 -5
- package/corpus/core/docs/content/locales/zh-CN/faq.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/file-uploads.md +4 -4
- package/corpus/core/docs/content/locales/zh-CN/frames.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/getting-started.md +13 -13
- package/corpus/core/docs/content/locales/zh-CN/harness-agents.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/human-approval.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/key-concepts.md +14 -14
- package/corpus/core/docs/content/locales/zh-CN/local-file-mode.md +5 -5
- package/corpus/core/docs/content/locales/zh-CN/mcp-apps.md +4 -4
- package/corpus/core/docs/content/locales/zh-CN/mcp-clients.md +7 -7
- package/corpus/core/docs/content/locales/zh-CN/mcp-protocol.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/messaging.md +6 -6
- package/corpus/core/docs/content/locales/zh-CN/migration-workbench.md +1 -1
- package/corpus/core/docs/content/locales/zh-CN/multi-app-workspace.md +1 -1
- package/corpus/core/docs/content/locales/zh-CN/multi-tenancy.md +1 -1
- package/corpus/core/docs/content/locales/zh-CN/native-chat-ui.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/notifications.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/observability.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/observational-memory.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/onboarding.md +8 -8
- package/corpus/core/docs/content/locales/zh-CN/plan-plugin.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/pr-visual-recap.md +11 -11
- package/corpus/core/docs/content/locales/zh-CN/processors.md +1 -1
- package/corpus/core/docs/content/locales/zh-CN/progress.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/pure-agent-apps.md +1 -1
- package/corpus/core/docs/content/locales/zh-CN/real-time-collaboration.md +6 -6
- package/corpus/core/docs/content/locales/zh-CN/recurring-jobs.md +5 -5
- package/corpus/core/docs/content/locales/zh-CN/routing.md +1 -1
- package/corpus/core/docs/content/locales/zh-CN/sandbox-adapters.md +2 -2
- package/corpus/core/docs/content/locales/zh-CN/security.md +8 -8
- package/corpus/core/docs/content/locales/zh-CN/server.md +10 -10
- package/corpus/core/docs/content/locales/zh-CN/sharing.md +6 -6
- package/corpus/core/docs/content/locales/zh-CN/skills-guide.md +16 -16
- package/corpus/core/docs/content/locales/zh-CN/template-analytics.md +10 -10
- package/corpus/core/docs/content/locales/zh-CN/template-assets.md +20 -20
- package/corpus/core/docs/content/locales/zh-CN/template-brain.md +11 -11
- package/corpus/core/docs/content/locales/zh-CN/template-calendar.md +9 -9
- package/corpus/core/docs/content/locales/zh-CN/template-chat.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/template-clips.md +14 -14
- package/corpus/core/docs/content/locales/zh-CN/template-content.md +13 -13
- package/corpus/core/docs/content/locales/zh-CN/template-design.md +7 -7
- package/corpus/core/docs/content/locales/zh-CN/template-dispatch.md +11 -11
- package/corpus/core/docs/content/locales/zh-CN/template-forms.md +9 -9
- package/corpus/core/docs/content/locales/zh-CN/template-mail.md +6 -6
- package/corpus/core/docs/content/locales/zh-CN/template-plan.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/template-slides.md +8 -8
- package/corpus/core/docs/content/locales/zh-CN/template-videos.md +5 -5
- package/corpus/core/docs/content/locales/zh-CN/tracking.md +3 -3
- package/corpus/core/docs/content/locales/zh-CN/using-your-agent.md +5 -5
- package/corpus/core/docs/content/locales/zh-CN/voice-input.md +4 -4
- package/corpus/core/docs/content/locales/zh-CN/what-is-agent-native.md +5 -5
- package/corpus/core/docs/content/locales/zh-CN/workspace-connections.md +8 -8
- package/corpus/core/docs/content/locales/zh-CN/workspace-management.md +5 -5
- package/corpus/core/docs/content/locales/zh-CN/workspace.md +23 -23
- package/corpus/core/docs/content/locales/zh-CN/writing-agent-instructions.md +18 -18
- package/corpus/core/package.json +1 -1
- package/corpus/core/src/agent/production-agent.ts +35 -0
- package/corpus/core/src/agent/run-store.ts +2 -0
- package/corpus/core/src/client/changelog/Changelog.tsx +22 -10
- package/corpus/core/src/client/extensions/ExtensionsSidebarSection.tsx +405 -35
- package/corpus/core/src/client/i18n.tsx +13 -1
- package/corpus/core/src/templates/default/app/i18n/ar-SA.ts +275 -274
- package/corpus/core/src/templates/default/app/i18n/de-DE.ts +270 -260
- package/corpus/core/src/templates/default/app/i18n/es-ES.ts +282 -270
- package/corpus/core/src/templates/default/app/i18n/fr-FR.ts +275 -266
- package/corpus/core/src/templates/default/app/i18n/hi-IN.ts +274 -276
- package/corpus/core/src/templates/default/app/i18n/ja-JP.ts +280 -273
- package/corpus/core/src/templates/default/app/i18n/ko-KR.ts +274 -274
- package/corpus/core/src/templates/default/app/i18n/pt-BR.ts +273 -266
- package/corpus/core/src/templates/default/app/i18n/zh-CN.ts +273 -285
- package/corpus/templates/analytics/app/components/Markdown.tsx +36 -10
- package/corpus/templates/analytics/app/components/ProviderCorpusJobNotifier.tsx +41 -17
- package/corpus/templates/analytics/app/components/dashboard/CumulativeNetChart.tsx +3 -1
- package/corpus/templates/analytics/app/components/dashboard/DataTable.tsx +4 -2
- package/corpus/templates/analytics/app/components/dashboard/RecentActivity.tsx +13 -7
- package/corpus/templates/analytics/app/components/dashboard/RevenueChart.tsx +4 -1
- package/corpus/templates/analytics/app/components/dashboard/RevenueComparisonChart.tsx +3 -1
- package/corpus/templates/analytics/app/components/dashboard/SqlChart.tsx +13 -50
- package/corpus/templates/analytics/app/components/dashboard/TimeSeriesChart.tsx +3 -1
- package/corpus/templates/analytics/app/i18n-data.ts +5172 -1
- package/corpus/templates/analytics/app/pages/Ask.tsx +7 -4
- package/corpus/templates/analytics/app/pages/DataDictionary.tsx +66 -59
- package/corpus/templates/analytics/app/pages/DataSources.tsx +131 -96
- package/corpus/templates/analytics/app/pages/NotFound.tsx +8 -3
- package/corpus/templates/analytics/app/pages/Placeholder.tsx +4 -3
- package/corpus/templates/analytics/app/pages/adhoc/BlankDashboard.tsx +8 -5
- package/corpus/templates/analytics/app/pages/adhoc/_shared/KpiChart.tsx +4 -2
- package/corpus/templates/analytics/app/pages/adhoc/explorer/components/EventCombobox.tsx +16 -6
- package/corpus/templates/analytics/app/pages/adhoc/explorer/components/EventPanel.tsx +6 -2
- package/corpus/templates/analytics/app/pages/adhoc/explorer/components/ExplorerChart.tsx +14 -5
- package/corpus/templates/analytics/app/pages/adhoc/explorer/components/FilterBuilder.tsx +6 -3
- package/corpus/templates/analytics/app/pages/adhoc/explorer/components/GroupByPicker.tsx +7 -3
- package/corpus/templates/analytics/app/pages/adhoc/explorer/components/PropertyCombobox.tsx +12 -6
- package/corpus/templates/analytics/app/pages/adhoc/explorer/components/PropertyValueCombobox.tsx +9 -5
- package/corpus/templates/analytics/app/pages/adhoc/explorer/components/SqlPreview.tsx +3 -1
- package/corpus/templates/analytics/app/pages/adhoc/explorer/index.tsx +25 -15
- package/corpus/templates/analytics/app/pages/adhoc/explorer/types.ts +32 -30
- package/corpus/templates/analytics/app/pages/adhoc/explorer/use-explorer-config.ts +10 -6
- package/corpus/templates/analytics/app/pages/adhoc/explorer-dashboard/ChartCard.tsx +20 -10
- package/corpus/templates/analytics/app/pages/adhoc/explorer-dashboard/index.tsx +50 -33
- package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/DashboardFilterBar.tsx +23 -14
- package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/PanelEditorDialog.tsx +61 -55
- package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/SqlChartCard.tsx +88 -106
- package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/ViewSqlPopover.tsx +37 -49
- package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/ViewsMenu.tsx +23 -16
- package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/index.tsx +46 -40
- package/corpus/templates/analytics/app/pages/analyses/AnalysesList.tsx +11 -8
- package/corpus/templates/analytics/app/pages/analyses/AnalysisDetail.tsx +25 -21
- package/corpus/templates/analytics/app/pages/analyses/LegacyFusionAnalysis.tsx +175 -99
- package/corpus/templates/analytics/app/pages/overview/OverviewPage.tsx +30 -12
- package/corpus/templates/analytics/app/routes/$.tsx +2 -1
- package/corpus/templates/analytics/app/routes/analyses.$id.tsx +2 -1
- package/corpus/templates/analytics/app/routes/analyses._index.tsx +2 -1
- package/corpus/templates/analytics/app/routes/ask.tsx +2 -1
- package/corpus/templates/analytics/app/routes/catalog.tsx +38 -16
- package/corpus/templates/analytics/app/routes/chart.tsx +12 -3
- package/corpus/templates/analytics/app/routes/dashboards.$id.tsx +2 -1
- package/corpus/templates/analytics/app/routes/data-dictionary.tsx +2 -1
- package/corpus/templates/analytics/app/routes/data-sources.tsx +2 -1
- package/corpus/templates/analytics/app/routes/extensions.$id.tsx +3 -1
- package/corpus/templates/analytics/app/routes/extensions._index.tsx +3 -1
- package/corpus/templates/analytics/app/routes/overview.tsx +2 -1
- package/corpus/templates/analytics/app/routes/settings.tsx +2 -1
- package/corpus/templates/analytics/app/routes/team.tsx +2 -1
- package/corpus/templates/assets/app/components/library/CreateLibraryDialog.tsx +25 -15
- package/corpus/templates/assets/app/components/library/EditLibraryDialog.tsx +17 -10
- package/corpus/templates/assets/app/components/library/LibraryCard.tsx +20 -8
- package/corpus/templates/assets/app/i18n-data.ts +4065 -1
- package/corpus/templates/assets/app/routes/_index.tsx +15 -4
- package/corpus/templates/assets/app/routes/audit.tsx +79 -56
- package/corpus/templates/assets/app/routes/brand-kits.$id.tsx +565 -330
- package/corpus/templates/assets/app/routes/brand-kits.tsx +3 -1
- package/corpus/templates/assets/app/routes/extensions.$id.tsx +3 -1
- package/corpus/templates/assets/app/routes/extensions._index.tsx +3 -1
- package/corpus/templates/assets/app/routes/extensions.tsx +3 -1
- package/corpus/templates/assets/app/routes/library.tsx +107 -74
- package/corpus/templates/assets/app/routes/team.tsx +6 -3
- package/corpus/templates/brain/app/components/brain/CanonicalPreviewSheet.tsx +14 -10
- package/corpus/templates/brain/app/i18n-data.ts +5609 -1
- package/corpus/templates/brain/app/routes/extensions.$id.tsx +3 -1
- package/corpus/templates/brain/app/routes/extensions._index.tsx +3 -1
- package/corpus/templates/brain/app/routes/extensions.tsx +3 -1
- package/corpus/templates/brain/app/routes/knowledge.tsx +51 -38
- package/corpus/templates/brain/app/routes/review.tsx +259 -154
- package/corpus/templates/brain/app/routes/settings.tsx +114 -116
- package/corpus/templates/brain/app/routes/sources.tsx +421 -352
- package/corpus/templates/brain/app/routes/team.tsx +6 -2
- package/corpus/templates/calendar/app/components/CloudUpgrade.tsx +33 -51
- package/corpus/templates/calendar/app/components/ThemeToggle.tsx +3 -1
- package/corpus/templates/calendar/app/components/TimezoneCombobox.tsx +5 -3
- package/corpus/templates/calendar/app/components/booking/BookingConfirmation.tsx +27 -13
- package/corpus/templates/calendar/app/components/booking/BookingForm.tsx +25 -13
- package/corpus/templates/calendar/app/components/booking/TimeSlotPicker.tsx +4 -1
- package/corpus/templates/calendar/app/components/calendar/AddCalendarDialog.tsx +22 -16
- package/corpus/templates/calendar/app/components/calendar/ApolloPanel.tsx +14 -13
- package/corpus/templates/calendar/app/components/calendar/AttendeeAutocomplete.tsx +22 -11
- package/corpus/templates/calendar/app/components/calendar/CommandPalette.tsx +19 -16
- package/corpus/templates/calendar/app/components/calendar/CreateEventDialog.tsx +112 -72
- package/corpus/templates/calendar/app/components/calendar/DayView.tsx +3 -1
- package/corpus/templates/calendar/app/components/calendar/EventAttendeesSection.tsx +62 -24
- package/corpus/templates/calendar/app/components/calendar/EventDescription.tsx +4 -2
- package/corpus/templates/calendar/app/components/calendar/EventDetailPanel.tsx +17 -11
- package/corpus/templates/calendar/app/components/calendar/EventDetailPopover.tsx +167 -97
- package/corpus/templates/calendar/app/components/calendar/EventOptionControls.tsx +39 -25
- package/corpus/templates/calendar/app/components/calendar/FindTimePanel.tsx +28 -16
- package/corpus/templates/calendar/app/components/calendar/GoogleConnectBanner.tsx +90 -74
- package/corpus/templates/calendar/app/components/calendar/GoogleSetupWizard.tsx +42 -34
- package/corpus/templates/calendar/app/components/calendar/GoogleSyncButton.tsx +6 -6
- package/corpus/templates/calendar/app/components/calendar/GuestNotificationDialog.tsx +44 -37
- package/corpus/templates/calendar/app/components/calendar/IntegrationsSidebar.tsx +46 -52
- package/corpus/templates/calendar/app/components/calendar/KeyboardShortcutsHelp.tsx +31 -19
- package/corpus/templates/calendar/app/components/calendar/PeopleSearchDialog.tsx +13 -9
- package/corpus/templates/calendar/app/components/calendar/WeekView.tsx +6 -4
- package/corpus/templates/calendar/app/components/layout/AppLayout.tsx +13 -7
- package/corpus/templates/calendar/app/components/layout/Sidebar.tsx +19 -18
- package/corpus/templates/calendar/app/i18n/ar-SA.ts +2 -56
- package/corpus/templates/calendar/app/i18n/de-DE.ts +2 -57
- package/corpus/templates/calendar/app/i18n/en-US.ts +2 -56
- package/corpus/templates/calendar/app/i18n/es-ES.ts +2 -57
- package/corpus/templates/calendar/app/i18n/fr-FR.ts +2 -57
- package/corpus/templates/calendar/app/i18n/hi-IN.ts +2 -56
- package/corpus/templates/calendar/app/i18n/ja-JP.ts +2 -57
- package/corpus/templates/calendar/app/i18n/ko-KR.ts +2 -56
- package/corpus/templates/calendar/app/i18n/pt-BR.ts +2 -56
- package/corpus/templates/calendar/app/i18n/zh-CN.ts +2 -56
- package/corpus/templates/calendar/app/i18n-data.ts +8680 -7
- package/corpus/templates/calendar/app/pages/AvailabilitySettings.tsx +66 -34
- package/corpus/templates/calendar/app/pages/BookingLinksPage.tsx +286 -186
- package/corpus/templates/calendar/app/pages/BookingPage.tsx +37 -21
- package/corpus/templates/calendar/app/pages/BookingsList.tsx +36 -25
- package/corpus/templates/calendar/app/pages/CalendarView.tsx +66 -49
- package/corpus/templates/calendar/app/pages/ManageBookingPage.tsx +41 -29
- package/corpus/templates/calendar/app/pages/NotFound.tsx +4 -2
- package/corpus/templates/calendar/app/routes/_app.$.tsx +2 -1
- package/corpus/templates/calendar/app/routes/_app.booking-links.tsx +3 -1
- package/corpus/templates/calendar/app/routes/_app.settings.tsx +6 -3
- package/corpus/templates/calendar/app/routes/_app.team.tsx +8 -3
- package/corpus/templates/calendar/app/routes/booking-og-meta.ts +7 -4
- package/corpus/templates/calendar/app/routes/booking.manage.$token.tsx +2 -1
- package/corpus/templates/calendar/app/routes/event.tsx +14 -8
- package/corpus/templates/chat/app/i18n/ar-SA.ts +29 -23
- package/corpus/templates/chat/app/i18n/de-DE.ts +30 -22
- package/corpus/templates/chat/app/i18n/en-US.ts +7 -0
- package/corpus/templates/chat/app/i18n/es-ES.ts +30 -22
- package/corpus/templates/chat/app/i18n/fr-FR.ts +33 -25
- package/corpus/templates/chat/app/i18n/hi-IN.ts +30 -23
- package/corpus/templates/chat/app/i18n/ja-JP.ts +30 -23
- package/corpus/templates/chat/app/i18n/ko-KR.ts +30 -23
- package/corpus/templates/chat/app/i18n/pt-BR.ts +30 -22
- package/corpus/templates/chat/app/i18n/zh-CN.ts +29 -23
- package/corpus/templates/chat/app/routes/observability.tsx +2 -1
- package/corpus/templates/clips/app/components/capture-install-options.tsx +16 -11
- package/corpus/templates/clips/app/components/editable-recording-title.tsx +8 -7
- package/corpus/templates/clips/app/components/editor/chapters-editor.tsx +12 -9
- package/corpus/templates/clips/app/components/editor/editor-layout.tsx +15 -9
- package/corpus/templates/clips/app/components/editor/editor-toolbar.tsx +71 -57
- package/corpus/templates/clips/app/components/editor/split-button.tsx +6 -5
- package/corpus/templates/clips/app/components/editor/stitch-manager.tsx +21 -19
- package/corpus/templates/clips/app/components/editor/thumbnail-picker.tsx +39 -26
- package/corpus/templates/clips/app/components/editor/transcript-editor.tsx +10 -6
- package/corpus/templates/clips/app/components/library/bulk-action-toolbar.tsx +11 -7
- package/corpus/templates/clips/app/components/library/create-space-dialog.tsx +13 -9
- package/corpus/templates/clips/app/components/library/folder-tree.tsx +26 -24
- package/corpus/templates/clips/app/components/library/library-grid.tsx +118 -14
- package/corpus/templates/clips/app/components/library/library-layout.tsx +3 -1
- package/corpus/templates/clips/app/components/library/organization-switcher.tsx +24 -13
- package/corpus/templates/clips/app/components/library/recording-card.tsx +51 -34
- package/corpus/templates/clips/app/components/library/search-bar.tsx +14 -11
- package/corpus/templates/clips/app/components/meetings/auto-record-prompt.tsx +10 -6
- package/corpus/templates/clips/app/components/meetings/canvas-editor.tsx +8 -4
- package/corpus/templates/clips/app/components/meetings/meeting-card.tsx +32 -16
- package/corpus/templates/clips/app/components/meetings/quick-ask-sidebar.tsx +23 -23
- package/corpus/templates/clips/app/components/meetings/share-meeting-dialog.tsx +11 -7
- package/corpus/templates/clips/app/components/meetings/transcript-bubbles.tsx +8 -4
- package/corpus/templates/clips/app/components/player/access-password-prompt.tsx +6 -4
- package/corpus/templates/clips/app/components/player/comments-panel.tsx +22 -13
- package/corpus/templates/clips/app/components/player/delete-recording-menu.tsx +24 -79
- package/corpus/templates/clips/app/components/player/insights-panel.tsx +29 -15
- package/corpus/templates/clips/app/components/player/player-controls.tsx +3 -1
- package/corpus/templates/clips/app/components/player/settings-panel.tsx +44 -27
- package/corpus/templates/clips/app/components/player/share-dialog.tsx +38 -32
- package/corpus/templates/clips/app/components/player/sign-in-prompt-dialog.tsx +7 -5
- package/corpus/templates/clips/app/components/player/transcript-panel.tsx +46 -35
- package/corpus/templates/clips/app/components/player/video-player.tsx +11 -5
- package/corpus/templates/clips/app/components/recorder/camera-visualizer.tsx +20 -6
- package/corpus/templates/clips/app/components/recorder/countdown-overlay.tsx +6 -4
- package/corpus/templates/clips/app/components/recorder/microphone-visualizer.tsx +3 -1
- package/corpus/templates/clips/app/components/recorder/pre-record-panel.tsx +120 -156
- package/corpus/templates/clips/app/components/recorder/recording-toolbar.tsx +16 -8
- package/corpus/templates/clips/app/components/recorder/storage-setup-card.tsx +8 -8
- package/corpus/templates/clips/app/components/sharing/share-ui.tsx +33 -31
- package/corpus/templates/clips/app/components/sharing/slack-share-hint.tsx +15 -8
- package/corpus/templates/clips/app/components/workspace/branding-editor.tsx +35 -20
- package/corpus/templates/clips/app/components/workspace/engagement-chart.tsx +6 -4
- package/corpus/templates/clips/app/components/workspace/insights-hub.tsx +35 -22
- package/corpus/templates/clips/app/components/workspace/invite-dialog.tsx +27 -17
- package/corpus/templates/clips/app/components/workspace/members-list.tsx +30 -19
- package/corpus/templates/clips/app/components/workspace/notifications-list.tsx +37 -25
- package/corpus/templates/clips/app/components/workspace/top-creators-table.tsx +14 -5
- package/corpus/templates/clips/app/i18n/ar-SA.ts +1117 -1
- package/corpus/templates/clips/app/i18n/de-DE.ts +1147 -1
- package/corpus/templates/clips/app/i18n/en-US.ts +1110 -0
- package/corpus/templates/clips/app/i18n/es-ES.ts +1139 -0
- package/corpus/templates/clips/app/i18n/fr-FR.ts +1145 -5
- package/corpus/templates/clips/app/i18n/hi-IN.ts +1113 -1
- package/corpus/templates/clips/app/i18n/ja-JP.ts +1138 -2
- package/corpus/templates/clips/app/i18n/ko-KR.ts +1124 -1
- package/corpus/templates/clips/app/i18n/pt-BR.ts +1137 -1
- package/corpus/templates/clips/app/i18n/zh-CN.ts +1094 -2
- package/corpus/templates/clips/app/root.tsx +2 -2
- package/corpus/templates/clips/app/routes/_app.archive.tsx +12 -2
- package/corpus/templates/clips/app/routes/_app.dictate.tsx +71 -49
- package/corpus/templates/clips/app/routes/_app.extensions.$id.tsx +4 -1
- package/corpus/templates/clips/app/routes/_app.extensions._index.tsx +4 -1
- package/corpus/templates/clips/app/routes/_app.insights._index.tsx +2 -1
- package/corpus/templates/clips/app/routes/_app.library.folder.$folderId.tsx +5 -2
- package/corpus/templates/clips/app/routes/_app.meetings.$meetingId.tsx +54 -38
- package/corpus/templates/clips/app/routes/_app.meetings._index.tsx +41 -30
- package/corpus/templates/clips/app/routes/_app.notifications.tsx +34 -19
- package/corpus/templates/clips/app/routes/_app.settings._index.tsx +28 -17
- package/corpus/templates/clips/app/routes/_app.settings.organization.tsx +25 -18
- package/corpus/templates/clips/app/routes/_app.spaces.$spaceId.folder.$folderId.tsx +5 -2
- package/corpus/templates/clips/app/routes/_app.spaces.$spaceId.tsx +8 -5
- package/corpus/templates/clips/app/routes/_app.spaces._index.tsx +8 -3
- package/corpus/templates/clips/app/routes/_app.trash.tsx +2 -1
- package/corpus/templates/clips/app/routes/download.tsx +39 -30
- package/corpus/templates/clips/app/routes/embed.$shareId.tsx +4 -3
- package/corpus/templates/clips/app/routes/invite.$token.tsx +41 -32
- package/corpus/templates/clips/app/routes/r.$recordingId.tsx +111 -106
- package/corpus/templates/clips/app/routes/record.tsx +101 -87
- package/corpus/templates/clips/app/routes/share.$shareId.tsx +78 -62
- package/corpus/templates/clips/app/routes/share.meeting.$meetingId.tsx +15 -12
- package/corpus/templates/clips/changelog/2026-06-25-localized-clips-settings-changelog-and-extension-sidebar-lab.md +6 -0
- package/corpus/templates/clips/desktop/src/overlays/countdown.tsx +4 -2
- package/corpus/templates/clips/desktop/src/styles.css +15 -1
- package/corpus/templates/content/app/components/ThemeToggle.tsx +3 -3
- package/corpus/templates/content/app/components/editor/BubbleToolbar.tsx +14 -12
- package/corpus/templates/content/app/components/editor/CommentsSidebar.tsx +19 -14
- package/corpus/templates/content/app/components/editor/DocumentBlockFields.tsx +16 -4
- package/corpus/templates/content/app/components/editor/DocumentDatabase.tsx +13670 -10
- package/corpus/templates/content/app/components/editor/DocumentEditor.tsx +15 -12
- package/corpus/templates/content/app/components/editor/DocumentProperties.tsx +219 -135
- package/corpus/templates/content/app/components/editor/DocumentToolbar.tsx +114 -81
- package/corpus/templates/content/app/components/editor/EmojiPicker.tsx +27 -9
- package/corpus/templates/content/app/components/editor/LinkHoverPreview.tsx +7 -5
- package/corpus/templates/content/app/components/editor/NotionConflictBanner.tsx +12 -6
- package/corpus/templates/content/app/components/editor/NotionSyncBar.tsx +54 -34
- package/corpus/templates/content/app/components/editor/SlashCommandMenu.tsx +111 -122
- package/corpus/templates/content/app/components/editor/TableHoverControls.tsx +27 -22
- package/corpus/templates/content/app/components/editor/VersionHistoryPanel.tsx +23 -19
- package/corpus/templates/content/app/components/editor/VisualEditor.tsx +6 -2
- package/corpus/templates/content/app/components/editor/database/DatabaseView.tsx +245 -238
- package/corpus/templates/content/app/components/editor/database/calculations.ts +1 -0
- package/corpus/templates/content/app/components/editor/database/filter-sort.ts +1 -0
- package/corpus/templates/content/app/components/editor/database/grouping.ts +1 -0
- package/corpus/templates/content/app/components/editor/database/navigation-state.ts +1 -0
- package/corpus/templates/content/app/components/editor/database/shared.tsx +1 -0
- package/corpus/templates/content/app/components/editor/database-sources/BuilderSourceReviewDialog.tsx +92 -53
- package/corpus/templates/content/app/components/editor/extensions/AudioBlock.tsx +86 -49
- package/corpus/templates/content/app/components/editor/extensions/CodeBlockNode.tsx +22 -12
- package/corpus/templates/content/app/components/editor/extensions/ImageBlock.tsx +138 -74
- package/corpus/templates/content/app/components/editor/extensions/LocalMdxComponentNode.tsx +16 -7
- package/corpus/templates/content/app/components/editor/extensions/VideoBlock.tsx +86 -49
- package/corpus/templates/content/app/components/editor/image-upload.ts +3 -3
- package/corpus/templates/content/app/components/editor/localComponentSlashItems.ts +2 -1
- package/corpus/templates/content/app/components/sidebar/DocumentSidebar.tsx +205 -484
- package/corpus/templates/content/app/components/sidebar/DocumentTreeItem.tsx +34 -110
- package/corpus/templates/content/app/components/sidebar/NotionButton.tsx +56 -43
- package/corpus/templates/content/app/i18n-data.ts +6977 -10
- package/corpus/templates/content/app/routes/_app.local-files.tsx +111 -85
- package/corpus/templates/content/app/routes/_app.page.$id.tsx +7 -7
- package/corpus/templates/content/app/routes/_app.settings.tsx +2 -1
- package/corpus/templates/content/app/routes/_app.team.tsx +2 -1
- package/corpus/templates/content/app/routes/_app.tsx +4 -6
- package/corpus/templates/content/app/routes/p.$id.tsx +9 -6
- package/corpus/templates/design/app/components/ThemeToggle.tsx +3 -1
- package/corpus/templates/design/app/components/design/DesignCanvas.tsx +6 -4
- package/corpus/templates/design/app/components/design/DesignToolbar.tsx +27 -22
- package/corpus/templates/design/app/components/design/DrawOverlay.tsx +4 -2
- package/corpus/templates/design/app/components/design/EditPanel.tsx +130 -100
- package/corpus/templates/design/app/components/design/PresentMode.tsx +3 -1
- package/corpus/templates/design/app/components/design/TweaksPanel.tsx +8 -6
- package/corpus/templates/design/app/components/design/VariantGrid.tsx +6 -4
- package/corpus/templates/design/app/components/design/VariantHandoffCard.tsx +8 -4
- package/corpus/templates/design/app/components/design/ViewportTabs.tsx +5 -3
- package/corpus/templates/design/app/components/design/ZoomControls.tsx +3 -1
- package/corpus/templates/design/app/components/editor/PromptDialog.tsx +31 -18
- package/corpus/templates/design/app/components/visual-editor/CanvasCommentPins.tsx +12 -8
- package/corpus/templates/design/app/components/visual-editor/DrawOverlay.tsx +14 -10
- package/corpus/templates/design/app/components/visual-editor/SaveStatusIndicator.tsx +4 -2
- package/corpus/templates/design/app/i18n-data.ts +6107 -332
- package/corpus/templates/design/app/pages/DesignEditor.tsx +106 -81
- package/corpus/templates/design/app/pages/DesignSystemSetup.tsx +110 -115
- package/corpus/templates/design/app/pages/DesignSystems.tsx +154 -83
- package/corpus/templates/design/app/pages/Index.tsx +69 -57
- package/corpus/templates/design/app/pages/NotFound.tsx +4 -2
- package/corpus/templates/design/app/pages/Present.tsx +1 -1
- package/corpus/templates/design/app/pages/Templates.tsx +18 -12
- package/corpus/templates/design/app/routes/$.tsx +2 -1
- package/corpus/templates/design/app/routes/design-systems.tsx +2 -1
- package/corpus/templates/design/app/routes/design-systems_.setup.tsx +2 -1
- package/corpus/templates/design/app/routes/design.$id.tsx +2 -1
- package/corpus/templates/design/app/routes/examples.tsx +3 -1
- package/corpus/templates/design/app/routes/extensions.$id.tsx +3 -1
- package/corpus/templates/design/app/routes/extensions._index.tsx +3 -1
- package/corpus/templates/design/app/routes/extensions.tsx +3 -1
- package/corpus/templates/design/app/routes/observability.tsx +3 -1
- package/corpus/templates/design/app/routes/present.$id.tsx +2 -1
- package/corpus/templates/design/app/routes/settings.tsx +2 -1
- package/corpus/templates/design/app/routes/team.tsx +3 -1
- package/corpus/templates/design/app/routes/templates.tsx +2 -1
- package/corpus/templates/dispatch/app/i18n-data.ts +1881 -1
- package/corpus/templates/dispatch/app/routes/chat.$threadId.tsx +10 -7
- package/corpus/templates/dispatch/app/routes/chat.tsx +9 -7
- package/corpus/templates/dispatch/app/routes/extensions.$id.tsx +2 -1
- package/corpus/templates/dispatch/app/routes/extensions._index.tsx +2 -1
- package/corpus/templates/dispatch/app/routes/integrations.tsx +327 -209
- package/corpus/templates/dispatch/app/routes/settings.tsx +3 -1
- package/corpus/templates/dispatch/app/routes/tools.$id.tsx +2 -1
- package/corpus/templates/dispatch/app/routes/tools._index.tsx +2 -1
- package/corpus/templates/forms/app/components/CloudUpgrade.tsx +38 -28
- package/corpus/templates/forms/app/components/ThemeToggle.tsx +3 -1
- package/corpus/templates/forms/app/components/builder/FieldPropertiesPanel.tsx +33 -29
- package/corpus/templates/forms/app/i18n/ar-SA.ts +279 -53
- package/corpus/templates/forms/app/i18n/de-DE.ts +287 -53
- package/corpus/templates/forms/app/i18n/en-US.ts +225 -0
- package/corpus/templates/forms/app/i18n/es-ES.ts +233 -1
- package/corpus/templates/forms/app/i18n/fr-FR.ts +290 -54
- package/corpus/templates/forms/app/i18n/hi-IN.ts +275 -55
- package/corpus/templates/forms/app/i18n/ja-JP.ts +278 -55
- package/corpus/templates/forms/app/i18n/ko-KR.ts +271 -55
- package/corpus/templates/forms/app/i18n/pt-BR.ts +286 -52
- package/corpus/templates/forms/app/i18n/zh-CN.ts +261 -56
- package/corpus/templates/forms/app/pages/FormBuilderPage.tsx +214 -148
- package/corpus/templates/forms/app/pages/FormFillPage.tsx +12 -7
- package/corpus/templates/forms/app/pages/ResponseInsightsPage.tsx +8 -4
- package/corpus/templates/forms/app/routes/_app.extensions.$id.tsx +3 -1
- package/corpus/templates/forms/app/routes/_app.extensions._index.tsx +3 -1
- package/corpus/templates/forms/app/routes/_app.forms.$id.tsx +2 -1
- package/corpus/templates/forms/app/routes/_app.forms.$id_.responses.tsx +2 -1
- package/corpus/templates/forms/app/routes/_app.forms._index.tsx +3 -4
- package/corpus/templates/forms/app/routes/_app.response-insights.tsx +3 -2
- package/corpus/templates/forms/app/routes/_app.settings.tsx +2 -1
- package/corpus/templates/forms/app/routes/_index.tsx +3 -4
- package/corpus/templates/forms/app/routes/form-preview.tsx +25 -26
- package/corpus/templates/macros/app/components/AddExerciseDialog.tsx +18 -15
- package/corpus/templates/macros/app/components/AddMealDialog.tsx +22 -19
- package/corpus/templates/macros/app/components/AddWeightDialog.tsx +17 -16
- package/corpus/templates/macros/app/components/DailyProgress.tsx +24 -18
- package/corpus/templates/macros/app/components/ExerciseCard.tsx +5 -3
- package/corpus/templates/macros/app/components/MealCard.tsx +5 -3
- package/corpus/templates/macros/app/components/VoiceDictation.tsx +14 -13
- package/corpus/templates/macros/app/components/WeeklyCaloriesChart.tsx +37 -20
- package/corpus/templates/macros/app/components/WeightCard.tsx +16 -9
- package/corpus/templates/macros/app/components/WeightTracker.tsx +13 -6
- package/corpus/templates/macros/app/i18n/ar-SA.ts +154 -2
- package/corpus/templates/macros/app/i18n/de-DE.ts +158 -2
- package/corpus/templates/macros/app/i18n/en-US.ts +152 -0
- package/corpus/templates/macros/app/i18n/es-ES.ts +154 -0
- package/corpus/templates/macros/app/i18n/fr-FR.ts +157 -2
- package/corpus/templates/macros/app/i18n/hi-IN.ts +154 -3
- package/corpus/templates/macros/app/i18n/ja-JP.ts +153 -2
- package/corpus/templates/macros/app/i18n/ko-KR.ts +153 -2
- package/corpus/templates/macros/app/i18n/pt-BR.ts +155 -0
- package/corpus/templates/macros/app/i18n/zh-CN.ts +152 -2
- package/corpus/templates/macros/app/routes/_index.tsx +20 -16
- package/corpus/templates/macros/app/routes/analytics.tsx +3 -3
- package/corpus/templates/macros/app/routes/extensions.$id.tsx +3 -1
- package/corpus/templates/macros/app/routes/extensions._index.tsx +3 -1
- package/corpus/templates/macros/app/routes/settings.tsx +2 -1
- package/corpus/templates/macros/app/routes/team.tsx +6 -3
- package/corpus/templates/mail/app/components/GoogleConnectBanner.tsx +69 -62
- package/corpus/templates/mail/app/components/ThemeToggle.tsx +10 -3
- package/corpus/templates/mail/app/components/agent-engine-picker.tsx +6 -5
- package/corpus/templates/mail/app/components/email/CodeBlockLangPicker.tsx +1 -1
- package/corpus/templates/mail/app/components/email/ComposeModal.tsx +6 -8
- package/corpus/templates/mail/app/components/email/ComposeSlashMenu.tsx +45 -34
- package/corpus/templates/mail/app/components/email/EmailThread.tsx +5 -3
- package/corpus/templates/mail/app/components/email/InlineReplyComposer.tsx +4 -6
- package/corpus/templates/mail/app/components/email/IntegrationsSidebar.tsx +16 -10
- package/corpus/templates/mail/app/components/email/MobileActionBar.tsx +28 -20
- package/corpus/templates/mail/app/components/email/SendLaterButton.tsx +12 -7
- package/corpus/templates/mail/app/components/email/SnoozeModal.tsx +9 -6
- package/corpus/templates/mail/app/components/email/SnoozePopover.tsx +9 -9
- package/corpus/templates/mail/app/components/layout/AppLayout.tsx +2 -2
- package/corpus/templates/mail/app/components/settings/GmailFiltersSection.tsx +40 -30
- package/corpus/templates/mail/app/i18n/ar-SA.ts +435 -134
- package/corpus/templates/mail/app/i18n/de-DE.ts +441 -131
- package/corpus/templates/mail/app/i18n/en-US.ts +300 -1
- package/corpus/templates/mail/app/i18n/es-ES.ts +443 -134
- package/corpus/templates/mail/app/i18n/fr-FR.ts +444 -134
- package/corpus/templates/mail/app/i18n/hi-IN.ts +441 -138
- package/corpus/templates/mail/app/i18n/ja-JP.ts +437 -134
- package/corpus/templates/mail/app/i18n/ko-KR.ts +437 -134
- package/corpus/templates/mail/app/i18n/pt-BR.ts +440 -133
- package/corpus/templates/mail/app/i18n/zh-CN.ts +361 -70
- package/corpus/templates/mail/app/pages/DraftQueuePage.tsx +66 -41
- package/corpus/templates/mail/app/pages/InboxPage.tsx +5 -1
- package/corpus/templates/mail/app/pages/SettingsPage.tsx +125 -108
- package/corpus/templates/mail/app/routes/$.tsx +2 -1
- package/corpus/templates/mail/app/routes/draft-queue.$id.tsx +2 -1
- package/corpus/templates/mail/app/routes/draft-queue.tsx +2 -1
- package/corpus/templates/mail/app/routes/email.tsx +10 -7
- package/corpus/templates/mail/app/routes/settings.tsx +2 -1
- package/corpus/templates/mail/app/routes/team.tsx +2 -1
- package/corpus/templates/plan/app/components/editor/PlanDocumentEditor.tsx +7 -4
- package/corpus/templates/plan/app/components/editor/planSlashCommands.ts +51 -26
- package/corpus/templates/plan/app/components/layout/Sidebar.tsx +2 -2
- package/corpus/templates/plan/app/components/plan/CanvasArea.tsx +7 -4
- package/corpus/templates/plan/app/components/plan/DocumentArea.tsx +19 -15
- package/corpus/templates/plan/app/components/plan/LocalCodebasePicker.tsx +34 -17
- package/corpus/templates/plan/app/components/plan/PlanContentRenderer.tsx +9 -5
- package/corpus/templates/plan/app/components/plan/PlanImageNode.tsx +9 -4
- package/corpus/templates/plan/app/components/plan/PlanImageViewer.tsx +47 -20
- package/corpus/templates/plan/app/components/plan/PlanMarkdownReader.tsx +4 -2
- package/corpus/templates/plan/app/components/plan/PlanTableOfContents.tsx +6 -1
- package/corpus/templates/plan/app/components/plan/PlanVisualSurface.tsx +10 -5
- package/corpus/templates/plan/app/components/plan/PrototypeViewer.tsx +3 -1
- package/corpus/templates/plan/app/components/plan/image-actions.ts +29 -7
- package/corpus/templates/plan/app/components/plan/planBlocks.tsx +16 -8
- package/corpus/templates/plan/app/components/plan/wireframe/LegacyRegionWireframe.tsx +27 -18
- package/corpus/templates/plan/app/components/plan/wireframe/Wireframe.tsx +3 -1
- package/corpus/templates/plan/app/components/plan/wireframe/wireframe-icons.ts +1 -0
- package/corpus/templates/plan/app/i18n/ar-SA.ts +663 -1
- package/corpus/templates/plan/app/i18n/de-DE.ts +670 -0
- package/corpus/templates/plan/app/i18n/en-US.ts +643 -0
- package/corpus/templates/plan/app/i18n/es-ES.ts +667 -0
- package/corpus/templates/plan/app/i18n/fr-FR.ts +672 -2
- package/corpus/templates/plan/app/i18n/hi-IN.ts +641 -1
- package/corpus/templates/plan/app/i18n/ja-JP.ts +633 -1
- package/corpus/templates/plan/app/i18n/ko-KR.ts +623 -1
- package/corpus/templates/plan/app/i18n/pt-BR.ts +671 -3
- package/corpus/templates/plan/app/i18n/zh-CN.ts +620 -1
- package/corpus/templates/plan/app/pages/PlansPage.tsx +697 -488
- package/corpus/templates/slides/app/components/CloudUpgrade.tsx +16 -13
- package/corpus/templates/slides/app/components/ThemeToggle.tsx +3 -1
- package/corpus/templates/slides/app/components/comments/SlideCommentsPanel.tsx +37 -25
- package/corpus/templates/slides/app/components/deck/DeckCard.tsx +3 -2
- package/corpus/templates/slides/app/components/deck/SlideRenderer.tsx +3 -1
- package/corpus/templates/slides/app/components/design-system/DesignSystemPreview.tsx +6 -4
- package/corpus/templates/slides/app/components/design-system/DesignSystemSetup.tsx +104 -73
- package/corpus/templates/slides/app/components/editor/AnimationsPanel.tsx +21 -17
- package/corpus/templates/slides/app/components/editor/AssetLibraryPanel.tsx +6 -3
- package/corpus/templates/slides/app/components/editor/BlockBubbleMenu.tsx +4 -2
- package/corpus/templates/slides/app/components/editor/CodeEditor.tsx +7 -4
- package/corpus/templates/slides/app/components/editor/EditorSidebar.tsx +26 -18
- package/corpus/templates/slides/app/components/editor/EditorToolbar.tsx +116 -91
- package/corpus/templates/slides/app/components/editor/ExportMenu.tsx +21 -21
- package/corpus/templates/slides/app/components/editor/GenerateSlidesDialog.tsx +16 -16
- package/corpus/templates/slides/app/components/editor/GeneratingOverlay.tsx +4 -2
- package/corpus/templates/slides/app/components/editor/GoogleDocImportHint.tsx +9 -5
- package/corpus/templates/slides/app/components/editor/HistoryPanel.tsx +44 -54
- package/corpus/templates/slides/app/components/editor/ImageDropPromptPopover.tsx +10 -11
- package/corpus/templates/slides/app/components/editor/ImageGenPanel.tsx +4 -2
- package/corpus/templates/slides/app/components/editor/ImageOverlay.tsx +3 -1
- package/corpus/templates/slides/app/components/editor/ImageSearchPanel.tsx +8 -5
- package/corpus/templates/slides/app/components/editor/ImportButton.tsx +3 -2
- package/corpus/templates/slides/app/components/editor/LogoSearchPanel.tsx +20 -10
- package/corpus/templates/slides/app/components/editor/MermaidToExcalidrawPanel.tsx +3 -1
- package/corpus/templates/slides/app/components/editor/PromptDialog.tsx +5 -4
- package/corpus/templates/slides/app/components/editor/ShareDialog.tsx +22 -21
- package/corpus/templates/slides/app/components/editor/SlideBubbleMenu.tsx +32 -21
- package/corpus/templates/slides/app/components/editor/SlideEditor.tsx +19 -34
- package/corpus/templates/slides/app/components/editor/SlideInlineEditor.tsx +9 -8
- package/corpus/templates/slides/app/components/editor/SlideSlashMenu.tsx +32 -27
- package/corpus/templates/slides/app/components/editor/SpeakerNotesPanel.tsx +7 -2
- package/corpus/templates/slides/app/components/layout/AgentWorkIndicator.tsx +6 -3
- package/corpus/templates/slides/app/components/presentation/PresentationView.tsx +11 -8
- package/corpus/templates/slides/app/components/visual-editor/CanvasCommentPins.tsx +6 -5
- package/corpus/templates/slides/app/components/visual-editor/DrawOverlay.tsx +8 -6
- package/corpus/templates/slides/app/components/visual-editor/MultiSelectChip.tsx +7 -3
- package/corpus/templates/slides/app/components/visual-editor/SaveStatusIndicator.tsx +4 -2
- package/corpus/templates/slides/app/i18n/ar-SA.ts +525 -3
- package/corpus/templates/slides/app/i18n/de-DE.ts +504 -4
- package/corpus/templates/slides/app/i18n/en-US.ts +490 -0
- package/corpus/templates/slides/app/i18n/es-ES.ts +514 -4
- package/corpus/templates/slides/app/i18n/fr-FR.ts +519 -5
- package/corpus/templates/slides/app/i18n/hi-IN.ts +489 -4
- package/corpus/templates/slides/app/i18n/ja-JP.ts +485 -3
- package/corpus/templates/slides/app/i18n/ko-KR.ts +481 -3
- package/corpus/templates/slides/app/i18n/pt-BR.ts +507 -2
- package/corpus/templates/slides/app/i18n/zh-CN.ts +475 -3
- package/corpus/templates/slides/app/pages/DeckEditor.tsx +25 -21
- package/corpus/templates/slides/app/pages/Index.tsx +47 -45
- package/corpus/templates/slides/app/pages/SharedPresentation.tsx +4 -3
- package/corpus/templates/slides/app/routes/$.tsx +2 -1
- package/corpus/templates/slides/app/routes/deck.$id.tsx +2 -1
- package/corpus/templates/slides/app/routes/design-systems.tsx +2 -1
- package/corpus/templates/slides/app/routes/settings.tsx +2 -1
- package/corpus/templates/slides/app/routes/share.$token.tsx +2 -1
- package/corpus/templates/slides/app/routes/slide.tsx +11 -5
- package/corpus/templates/slides/app/routes/team.tsx +6 -3
- package/corpus/templates/videos/app/components/CameraControls.tsx +11 -7
- package/corpus/templates/videos/app/components/CameraToolbar.tsx +13 -11
- package/corpus/templates/videos/app/components/CloudUpgrade.tsx +19 -16
- package/corpus/templates/videos/app/components/CompSettingsEditor.tsx +6 -1
- package/corpus/templates/videos/app/components/ComponentLibrarySidebar.tsx +29 -29
- package/corpus/templates/videos/app/components/ComponentPropsPanel.tsx +37 -17
- package/corpus/templates/videos/app/components/ComponentsSidebar.tsx +8 -3
- package/corpus/templates/videos/app/components/CompositionCard.tsx +11 -3
- package/corpus/templates/videos/app/components/CurrentElementPanel.tsx +45 -42
- package/corpus/templates/videos/app/components/CursorControls.tsx +37 -18
- package/corpus/templates/videos/app/components/CursorPositioningOverlay.tsx +3 -1
- package/corpus/templates/videos/app/components/LibraryFolderRow.tsx +8 -4
- package/corpus/templates/videos/app/components/MotionCurveSelect.tsx +9 -6
- package/corpus/templates/videos/app/components/PropsEditor.tsx +6 -2
- package/corpus/templates/videos/app/components/Sidebar.tsx +7 -7
- package/corpus/templates/videos/app/components/Timeline.tsx +8 -6
- package/corpus/templates/videos/app/components/TrackPropertiesPanel.tsx +50 -33
- package/corpus/templates/videos/app/components/TweaksPanel.tsx +18 -9
- package/corpus/templates/videos/app/components/VideoPlayer.tsx +9 -5
- package/corpus/templates/videos/app/components/design-system/DesignSystemPreview.tsx +14 -12
- package/corpus/templates/videos/app/components/design-system/DesignSystemSetup.tsx +31 -29
- package/corpus/templates/videos/app/components/keyframes/KeyframeActionButtons.tsx +11 -7
- package/corpus/templates/videos/app/i18n/ar-SA.ts +358 -1
- package/corpus/templates/videos/app/i18n/de-DE.ts +378 -0
- package/corpus/templates/videos/app/i18n/en-US.ts +362 -0
- package/corpus/templates/videos/app/i18n/es-ES.ts +377 -1
- package/corpus/templates/videos/app/i18n/fr-FR.ts +379 -2
- package/corpus/templates/videos/app/i18n/hi-IN.ts +359 -1
- package/corpus/templates/videos/app/i18n/ja-JP.ts +371 -1
- package/corpus/templates/videos/app/i18n/ko-KR.ts +364 -1
- package/corpus/templates/videos/app/i18n/pt-BR.ts +371 -1
- package/corpus/templates/videos/app/i18n/zh-CN.ts +351 -1
- package/corpus/templates/videos/app/pages/ComponentLibrary.tsx +6 -2
- package/corpus/templates/videos/app/pages/ComponentLibraryView.tsx +45 -24
- package/corpus/templates/videos/app/pages/CompositionView.tsx +61 -34
- package/corpus/templates/videos/app/routes/$.tsx +2 -1
- package/corpus/templates/videos/app/routes/c.$compositionId.tsx +2 -1
- package/corpus/templates/videos/app/routes/components.tsx +2 -1
- package/corpus/templates/videos/app/routes/design-systems.tsx +2 -1
- package/corpus/templates/videos/app/routes/settings.tsx +2 -1
- package/corpus/templates/videos/app/routes/team.tsx +2 -1
- package/dist/agent/production-agent.d.ts.map +1 -1
- package/dist/agent/production-agent.js +31 -0
- package/dist/agent/production-agent.js.map +1 -1
- package/dist/agent/run-store.d.ts +2 -0
- package/dist/agent/run-store.d.ts.map +1 -1
- package/dist/agent/run-store.js +2 -0
- package/dist/agent/run-store.js.map +1 -1
- package/dist/client/changelog/Changelog.d.ts +7 -2
- package/dist/client/changelog/Changelog.d.ts.map +1 -1
- package/dist/client/changelog/Changelog.js +9 -7
- package/dist/client/changelog/Changelog.js.map +1 -1
- package/dist/client/extensions/ExtensionsSidebarSection.d.ts.map +1 -1
- package/dist/client/extensions/ExtensionsSidebarSection.js +339 -11
- package/dist/client/extensions/ExtensionsSidebarSection.js.map +1 -1
- package/dist/client/i18n.d.ts.map +1 -1
- package/dist/client/i18n.js +12 -1
- package/dist/client/i18n.js.map +1 -1
- package/dist/collab/routes.d.ts +1 -1
- package/dist/notifications/routes.d.ts +1 -1
- package/dist/observability/routes.d.ts +5 -5
- package/dist/progress/routes.d.ts +1 -1
- package/dist/resources/handlers.d.ts +3 -3
- package/dist/server/agent-engine-api-key-route.d.ts +2 -2
- package/dist/server/transcribe-voice.d.ts +1 -1
- package/dist/templates/default/app/i18n/ar-SA.ts +275 -274
- package/dist/templates/default/app/i18n/de-DE.ts +270 -260
- package/dist/templates/default/app/i18n/es-ES.ts +282 -270
- package/dist/templates/default/app/i18n/fr-FR.ts +275 -266
- package/dist/templates/default/app/i18n/hi-IN.ts +274 -276
- package/dist/templates/default/app/i18n/ja-JP.ts +280 -273
- package/dist/templates/default/app/i18n/ko-KR.ts +274 -274
- package/dist/templates/default/app/i18n/pt-BR.ts +273 -266
- package/dist/templates/default/app/i18n/zh-CN.ts +273 -285
- package/docs/content/locales/ar-SA/a2a-protocol.md +2 -2
- package/docs/content/locales/ar-SA/actions.md +6 -6
- package/docs/content/locales/ar-SA/agent-surfaces.md +5 -5
- package/docs/content/locales/ar-SA/agent-teams.md +4 -4
- package/docs/content/locales/ar-SA/agent-web-surfaces.md +2 -2
- package/docs/content/locales/ar-SA/authentication.md +4 -4
- package/docs/content/locales/ar-SA/automations.md +3 -3
- package/docs/content/locales/ar-SA/blueprint-installer.md +2 -2
- package/docs/content/locales/ar-SA/cli-adapters.md +1 -1
- package/docs/content/locales/ar-SA/code-agents-ui.md +2 -2
- package/docs/content/locales/ar-SA/components.md +14 -14
- package/docs/content/locales/ar-SA/context-awareness.md +3 -3
- package/docs/content/locales/ar-SA/creating-templates.md +12 -12
- package/docs/content/locales/ar-SA/cross-app-sso.md +3 -3
- package/docs/content/locales/ar-SA/database.md +7 -7
- package/docs/content/locales/ar-SA/deployment.md +4 -4
- package/docs/content/locales/ar-SA/dispatch.md +3 -3
- package/docs/content/locales/ar-SA/drop-in-agent.md +8 -8
- package/docs/content/locales/ar-SA/durable-resume.md +1 -1
- package/docs/content/locales/ar-SA/embedding-sdk.md +2 -2
- package/docs/content/locales/ar-SA/evals.md +3 -3
- package/docs/content/locales/ar-SA/extensions.md +2 -2
- package/docs/content/locales/ar-SA/external-agents.md +8 -8
- package/docs/content/locales/ar-SA/faq.md +3 -3
- package/docs/content/locales/ar-SA/file-uploads.md +4 -4
- package/docs/content/locales/ar-SA/frames.md +1 -1
- package/docs/content/locales/ar-SA/getting-started.md +13 -13
- package/docs/content/locales/ar-SA/harness-agents.md +3 -3
- package/docs/content/locales/ar-SA/human-approval.md +3 -3
- package/docs/content/locales/ar-SA/key-concepts.md +14 -14
- package/docs/content/locales/ar-SA/local-file-mode.md +5 -5
- package/docs/content/locales/ar-SA/mcp-apps.md +9 -9
- package/docs/content/locales/ar-SA/mcp-clients.md +9 -9
- package/docs/content/locales/ar-SA/mcp-protocol.md +5 -5
- package/docs/content/locales/ar-SA/messaging.md +5 -5
- package/docs/content/locales/ar-SA/migration-workbench.md +1 -1
- package/docs/content/locales/ar-SA/multi-app-workspace.md +1 -1
- package/docs/content/locales/ar-SA/multi-tenancy.md +2 -2
- package/docs/content/locales/ar-SA/native-chat-ui.md +4 -4
- package/docs/content/locales/ar-SA/notifications.md +5 -5
- package/docs/content/locales/ar-SA/observability.md +1 -1
- package/docs/content/locales/ar-SA/observational-memory.md +2 -2
- package/docs/content/locales/ar-SA/onboarding.md +8 -8
- package/docs/content/locales/ar-SA/plan-plugin.md +3 -3
- package/docs/content/locales/ar-SA/pr-visual-recap.md +11 -11
- package/docs/content/locales/ar-SA/processors.md +2 -2
- package/docs/content/locales/ar-SA/progress.md +3 -3
- package/docs/content/locales/ar-SA/pure-agent-apps.md +1 -1
- package/docs/content/locales/ar-SA/real-time-collaboration.md +6 -6
- package/docs/content/locales/ar-SA/recurring-jobs.md +5 -5
- package/docs/content/locales/ar-SA/routing.md +1 -1
- package/docs/content/locales/ar-SA/sandbox-adapters.md +3 -3
- package/docs/content/locales/ar-SA/security.md +10 -10
- package/docs/content/locales/ar-SA/server.md +9 -9
- package/docs/content/locales/ar-SA/sharing.md +7 -7
- package/docs/content/locales/ar-SA/skills-guide.md +16 -16
- package/docs/content/locales/ar-SA/template-analytics.md +10 -10
- package/docs/content/locales/ar-SA/template-assets.md +19 -19
- package/docs/content/locales/ar-SA/template-brain.md +11 -11
- package/docs/content/locales/ar-SA/template-calendar.md +9 -9
- package/docs/content/locales/ar-SA/template-chat.md +3 -3
- package/docs/content/locales/ar-SA/template-clips.md +13 -13
- package/docs/content/locales/ar-SA/template-content.md +15 -15
- package/docs/content/locales/ar-SA/template-design.md +7 -7
- package/docs/content/locales/ar-SA/template-dispatch.md +8 -8
- package/docs/content/locales/ar-SA/template-forms.md +9 -9
- package/docs/content/locales/ar-SA/template-mail.md +7 -7
- package/docs/content/locales/ar-SA/template-plan.md +3 -3
- package/docs/content/locales/ar-SA/template-slides.md +8 -8
- package/docs/content/locales/ar-SA/template-videos.md +5 -5
- package/docs/content/locales/ar-SA/tracking.md +6 -6
- package/docs/content/locales/ar-SA/using-your-agent.md +4 -4
- package/docs/content/locales/ar-SA/voice-input.md +4 -4
- package/docs/content/locales/ar-SA/what-is-agent-native.md +4 -4
- package/docs/content/locales/ar-SA/workspace-connections.md +8 -8
- package/docs/content/locales/ar-SA/workspace-management.md +4 -4
- package/docs/content/locales/ar-SA/workspace.md +24 -24
- package/docs/content/locales/ar-SA/writing-agent-instructions.md +18 -18
- package/docs/content/locales/de-DE/a2a-protocol.md +7 -7
- package/docs/content/locales/de-DE/actions.md +5 -5
- package/docs/content/locales/de-DE/agent-mentions.md +4 -4
- package/docs/content/locales/de-DE/agent-surfaces.md +22 -22
- package/docs/content/locales/de-DE/agent-teams.md +4 -4
- package/docs/content/locales/de-DE/agent-web-surfaces.md +4 -4
- package/docs/content/locales/de-DE/authentication.md +6 -6
- package/docs/content/locales/de-DE/automations.md +8 -8
- package/docs/content/locales/de-DE/blueprint-installer.md +2 -2
- package/docs/content/locales/de-DE/client.md +6 -6
- package/docs/content/locales/de-DE/cloneable-saas.md +2 -2
- package/docs/content/locales/de-DE/code-agents-ui.md +9 -9
- package/docs/content/locales/de-DE/components.md +15 -15
- package/docs/content/locales/de-DE/context-awareness.md +8 -8
- package/docs/content/locales/de-DE/creating-templates.md +13 -13
- package/docs/content/locales/de-DE/cross-app-sso.md +3 -3
- package/docs/content/locales/de-DE/database.md +5 -5
- package/docs/content/locales/de-DE/deployment.md +6 -6
- package/docs/content/locales/de-DE/dispatch.md +3 -3
- package/docs/content/locales/de-DE/drop-in-agent.md +14 -14
- package/docs/content/locales/de-DE/durable-resume.md +1 -1
- package/docs/content/locales/de-DE/embedding-sdk.md +2 -2
- package/docs/content/locales/de-DE/evals.md +2 -2
- package/docs/content/locales/de-DE/extensions.md +2 -2
- package/docs/content/locales/de-DE/external-agents.md +6 -6
- package/docs/content/locales/de-DE/faq.md +5 -5
- package/docs/content/locales/de-DE/file-uploads.md +4 -4
- package/docs/content/locales/de-DE/frames.md +2 -2
- package/docs/content/locales/de-DE/getting-started.md +16 -16
- package/docs/content/locales/de-DE/harness-agents.md +3 -3
- package/docs/content/locales/de-DE/human-approval.md +4 -4
- package/docs/content/locales/de-DE/key-concepts.md +14 -14
- package/docs/content/locales/de-DE/local-file-mode.md +8 -8
- package/docs/content/locales/de-DE/mcp-apps.md +4 -4
- package/docs/content/locales/de-DE/mcp-clients.md +7 -7
- package/docs/content/locales/de-DE/mcp-protocol.md +3 -3
- package/docs/content/locales/de-DE/messaging.md +5 -5
- package/docs/content/locales/de-DE/migration-workbench.md +1 -1
- package/docs/content/locales/de-DE/multi-app-workspace.md +2 -2
- package/docs/content/locales/de-DE/multi-tenancy.md +1 -1
- package/docs/content/locales/de-DE/native-chat-ui.md +8 -8
- package/docs/content/locales/de-DE/notifications.md +3 -3
- package/docs/content/locales/de-DE/observability.md +2 -2
- package/docs/content/locales/de-DE/observational-memory.md +2 -2
- package/docs/content/locales/de-DE/onboarding.md +8 -8
- package/docs/content/locales/de-DE/plan-plugin.md +3 -3
- package/docs/content/locales/de-DE/pr-visual-recap.md +11 -11
- package/docs/content/locales/de-DE/processors.md +1 -1
- package/docs/content/locales/de-DE/progress.md +2 -2
- package/docs/content/locales/de-DE/pure-agent-apps.md +1 -1
- package/docs/content/locales/de-DE/real-time-collaboration.md +8 -8
- package/docs/content/locales/de-DE/recurring-jobs.md +5 -5
- package/docs/content/locales/de-DE/routing.md +1 -1
- package/docs/content/locales/de-DE/sandbox-adapters.md +2 -2
- package/docs/content/locales/de-DE/security.md +10 -10
- package/docs/content/locales/de-DE/server.md +10 -10
- package/docs/content/locales/de-DE/sharing.md +6 -6
- package/docs/content/locales/de-DE/skills-guide.md +17 -17
- package/docs/content/locales/de-DE/template-analytics.md +10 -10
- package/docs/content/locales/de-DE/template-assets.md +21 -21
- package/docs/content/locales/de-DE/template-brain.md +11 -11
- package/docs/content/locales/de-DE/template-calendar.md +10 -10
- package/docs/content/locales/de-DE/template-chat.md +5 -5
- package/docs/content/locales/de-DE/template-clips.md +14 -14
- package/docs/content/locales/de-DE/template-content.md +14 -14
- package/docs/content/locales/de-DE/template-design.md +7 -7
- package/docs/content/locales/de-DE/template-dispatch.md +12 -12
- package/docs/content/locales/de-DE/template-forms.md +9 -9
- package/docs/content/locales/de-DE/template-mail.md +6 -6
- package/docs/content/locales/de-DE/template-plan.md +3 -3
- package/docs/content/locales/de-DE/template-slides.md +8 -8
- package/docs/content/locales/de-DE/template-videos.md +6 -6
- package/docs/content/locales/de-DE/tracking.md +3 -3
- package/docs/content/locales/de-DE/using-your-agent.md +6 -6
- package/docs/content/locales/de-DE/voice-input.md +9 -9
- package/docs/content/locales/de-DE/what-is-agent-native.md +6 -6
- package/docs/content/locales/de-DE/workspace-connections.md +9 -9
- package/docs/content/locales/de-DE/workspace-management.md +5 -5
- package/docs/content/locales/de-DE/workspace.md +23 -23
- package/docs/content/locales/de-DE/writing-agent-instructions.md +30 -30
- package/docs/content/locales/es-ES/a2a-protocol.md +7 -7
- package/docs/content/locales/es-ES/actions.md +2 -2
- package/docs/content/locales/es-ES/agent-mentions.md +3 -3
- package/docs/content/locales/es-ES/agent-surfaces.md +7 -7
- package/docs/content/locales/es-ES/agent-teams.md +3 -3
- package/docs/content/locales/es-ES/agent-web-surfaces.md +5 -5
- package/docs/content/locales/es-ES/authentication.md +6 -6
- package/docs/content/locales/es-ES/automations.md +8 -8
- package/docs/content/locales/es-ES/blueprint-installer.md +2 -2
- package/docs/content/locales/es-ES/client.md +1 -1
- package/docs/content/locales/es-ES/cloneable-saas.md +2 -2
- package/docs/content/locales/es-ES/code-agents-ui.md +4 -4
- package/docs/content/locales/es-ES/components.md +5 -5
- package/docs/content/locales/es-ES/context-awareness.md +8 -8
- package/docs/content/locales/es-ES/creating-templates.md +12 -12
- package/docs/content/locales/es-ES/cross-app-sso.md +3 -3
- package/docs/content/locales/es-ES/database.md +5 -5
- package/docs/content/locales/es-ES/deployment.md +4 -4
- package/docs/content/locales/es-ES/dispatch.md +3 -3
- package/docs/content/locales/es-ES/drop-in-agent.md +8 -8
- package/docs/content/locales/es-ES/durable-resume.md +1 -1
- package/docs/content/locales/es-ES/embedding-sdk.md +2 -2
- package/docs/content/locales/es-ES/evals.md +2 -2
- package/docs/content/locales/es-ES/extensions.md +2 -2
- package/docs/content/locales/es-ES/external-agents.md +5 -5
- package/docs/content/locales/es-ES/faq.md +3 -3
- package/docs/content/locales/es-ES/file-uploads.md +4 -4
- package/docs/content/locales/es-ES/frames.md +1 -1
- package/docs/content/locales/es-ES/getting-started.md +13 -13
- package/docs/content/locales/es-ES/harness-agents.md +3 -3
- package/docs/content/locales/es-ES/human-approval.md +3 -3
- package/docs/content/locales/es-ES/key-concepts.md +14 -14
- package/docs/content/locales/es-ES/local-file-mode.md +6 -6
- package/docs/content/locales/es-ES/mcp-apps.md +4 -4
- package/docs/content/locales/es-ES/mcp-clients.md +8 -8
- package/docs/content/locales/es-ES/mcp-protocol.md +3 -3
- package/docs/content/locales/es-ES/messaging.md +4 -4
- package/docs/content/locales/es-ES/migration-workbench.md +1 -1
- package/docs/content/locales/es-ES/multi-app-workspace.md +1 -1
- package/docs/content/locales/es-ES/multi-tenancy.md +1 -1
- package/docs/content/locales/es-ES/native-chat-ui.md +3 -3
- package/docs/content/locales/es-ES/notifications.md +3 -3
- package/docs/content/locales/es-ES/observability.md +2 -2
- package/docs/content/locales/es-ES/observational-memory.md +2 -2
- package/docs/content/locales/es-ES/onboarding.md +8 -8
- package/docs/content/locales/es-ES/plan-plugin.md +3 -3
- package/docs/content/locales/es-ES/pr-visual-recap.md +11 -11
- package/docs/content/locales/es-ES/processors.md +1 -1
- package/docs/content/locales/es-ES/progress.md +2 -2
- package/docs/content/locales/es-ES/pure-agent-apps.md +1 -1
- package/docs/content/locales/es-ES/real-time-collaboration.md +6 -6
- package/docs/content/locales/es-ES/recurring-jobs.md +5 -5
- package/docs/content/locales/es-ES/routing.md +1 -1
- package/docs/content/locales/es-ES/sandbox-adapters.md +2 -2
- package/docs/content/locales/es-ES/security.md +8 -8
- package/docs/content/locales/es-ES/server.md +11 -11
- package/docs/content/locales/es-ES/sharing.md +6 -6
- package/docs/content/locales/es-ES/skills-guide.md +16 -16
- package/docs/content/locales/es-ES/template-analytics.md +10 -10
- package/docs/content/locales/es-ES/template-assets.md +19 -19
- package/docs/content/locales/es-ES/template-brain.md +11 -11
- package/docs/content/locales/es-ES/template-calendar.md +9 -9
- package/docs/content/locales/es-ES/template-chat.md +3 -3
- package/docs/content/locales/es-ES/template-clips.md +14 -14
- package/docs/content/locales/es-ES/template-content.md +13 -13
- package/docs/content/locales/es-ES/template-design.md +7 -7
- package/docs/content/locales/es-ES/template-dispatch.md +8 -8
- package/docs/content/locales/es-ES/template-forms.md +9 -9
- package/docs/content/locales/es-ES/template-mail.md +6 -6
- package/docs/content/locales/es-ES/template-plan.md +3 -3
- package/docs/content/locales/es-ES/template-slides.md +8 -8
- package/docs/content/locales/es-ES/template-videos.md +5 -5
- package/docs/content/locales/es-ES/tracking.md +3 -3
- package/docs/content/locales/es-ES/using-your-agent.md +5 -5
- package/docs/content/locales/es-ES/voice-input.md +4 -4
- package/docs/content/locales/es-ES/what-is-agent-native.md +6 -6
- package/docs/content/locales/es-ES/workspace-connections.md +8 -8
- package/docs/content/locales/es-ES/workspace-management.md +4 -4
- package/docs/content/locales/es-ES/workspace.md +23 -23
- package/docs/content/locales/es-ES/writing-agent-instructions.md +18 -18
- package/docs/content/locales/fr-FR/a2a-protocol.md +7 -7
- package/docs/content/locales/fr-FR/actions.md +2 -2
- package/docs/content/locales/fr-FR/agent-mentions.md +3 -3
- package/docs/content/locales/fr-FR/agent-surfaces.md +7 -7
- package/docs/content/locales/fr-FR/agent-teams.md +3 -3
- package/docs/content/locales/fr-FR/agent-web-surfaces.md +5 -5
- package/docs/content/locales/fr-FR/authentication.md +6 -6
- package/docs/content/locales/fr-FR/automations.md +8 -8
- package/docs/content/locales/fr-FR/blueprint-installer.md +2 -2
- package/docs/content/locales/fr-FR/client.md +1 -1
- package/docs/content/locales/fr-FR/cloneable-saas.md +2 -2
- package/docs/content/locales/fr-FR/code-agents-ui.md +4 -4
- package/docs/content/locales/fr-FR/components.md +5 -5
- package/docs/content/locales/fr-FR/context-awareness.md +8 -8
- package/docs/content/locales/fr-FR/creating-templates.md +12 -12
- package/docs/content/locales/fr-FR/cross-app-sso.md +4 -4
- package/docs/content/locales/fr-FR/database.md +5 -5
- package/docs/content/locales/fr-FR/deployment.md +5 -5
- package/docs/content/locales/fr-FR/dispatch.md +3 -3
- package/docs/content/locales/fr-FR/drop-in-agent.md +9 -9
- package/docs/content/locales/fr-FR/durable-resume.md +1 -1
- package/docs/content/locales/fr-FR/embedding-sdk.md +7 -7
- package/docs/content/locales/fr-FR/evals.md +2 -2
- package/docs/content/locales/fr-FR/extensions.md +2 -2
- package/docs/content/locales/fr-FR/external-agents.md +5 -5
- package/docs/content/locales/fr-FR/faq.md +3 -3
- package/docs/content/locales/fr-FR/file-uploads.md +5 -5
- package/docs/content/locales/fr-FR/frames.md +1 -1
- package/docs/content/locales/fr-FR/getting-started.md +13 -13
- package/docs/content/locales/fr-FR/harness-agents.md +3 -3
- package/docs/content/locales/fr-FR/human-approval.md +3 -3
- package/docs/content/locales/fr-FR/key-concepts.md +15 -15
- package/docs/content/locales/fr-FR/local-file-mode.md +5 -5
- package/docs/content/locales/fr-FR/mcp-apps.md +4 -4
- package/docs/content/locales/fr-FR/mcp-clients.md +8 -8
- package/docs/content/locales/fr-FR/mcp-protocol.md +3 -3
- package/docs/content/locales/fr-FR/messaging.md +4 -4
- package/docs/content/locales/fr-FR/migration-workbench.md +1 -1
- package/docs/content/locales/fr-FR/multi-app-workspace.md +1 -1
- package/docs/content/locales/fr-FR/multi-tenancy.md +1 -1
- package/docs/content/locales/fr-FR/native-chat-ui.md +3 -3
- package/docs/content/locales/fr-FR/notifications.md +3 -3
- package/docs/content/locales/fr-FR/observability.md +2 -2
- package/docs/content/locales/fr-FR/observational-memory.md +2 -2
- package/docs/content/locales/fr-FR/onboarding.md +8 -8
- package/docs/content/locales/fr-FR/plan-plugin.md +3 -3
- package/docs/content/locales/fr-FR/pr-visual-recap.md +11 -11
- package/docs/content/locales/fr-FR/processors.md +1 -1
- package/docs/content/locales/fr-FR/progress.md +2 -2
- package/docs/content/locales/fr-FR/pure-agent-apps.md +1 -1
- package/docs/content/locales/fr-FR/real-time-collaboration.md +8 -8
- package/docs/content/locales/fr-FR/recurring-jobs.md +5 -5
- package/docs/content/locales/fr-FR/routing.md +1 -1
- package/docs/content/locales/fr-FR/sandbox-adapters.md +2 -2
- package/docs/content/locales/fr-FR/security.md +8 -8
- package/docs/content/locales/fr-FR/server.md +10 -10
- package/docs/content/locales/fr-FR/sharing.md +6 -6
- package/docs/content/locales/fr-FR/skills-guide.md +16 -16
- package/docs/content/locales/fr-FR/template-analytics.md +10 -10
- package/docs/content/locales/fr-FR/template-assets.md +20 -20
- package/docs/content/locales/fr-FR/template-brain.md +11 -11
- package/docs/content/locales/fr-FR/template-calendar.md +9 -9
- package/docs/content/locales/fr-FR/template-chat.md +3 -3
- package/docs/content/locales/fr-FR/template-clips.md +15 -15
- package/docs/content/locales/fr-FR/template-content.md +13 -13
- package/docs/content/locales/fr-FR/template-design.md +8 -8
- package/docs/content/locales/fr-FR/template-dispatch.md +8 -8
- package/docs/content/locales/fr-FR/template-forms.md +10 -10
- package/docs/content/locales/fr-FR/template-mail.md +6 -6
- package/docs/content/locales/fr-FR/template-plan.md +3 -3
- package/docs/content/locales/fr-FR/template-slides.md +9 -9
- package/docs/content/locales/fr-FR/template-videos.md +5 -5
- package/docs/content/locales/fr-FR/tracking.md +3 -3
- package/docs/content/locales/fr-FR/using-your-agent.md +5 -5
- package/docs/content/locales/fr-FR/voice-input.md +4 -4
- package/docs/content/locales/fr-FR/what-is-agent-native.md +6 -6
- package/docs/content/locales/fr-FR/workspace-connections.md +8 -8
- package/docs/content/locales/fr-FR/workspace-management.md +5 -5
- package/docs/content/locales/fr-FR/workspace.md +23 -23
- package/docs/content/locales/fr-FR/writing-agent-instructions.md +18 -18
- package/docs/content/locales/hi-IN/a2a-protocol.md +7 -7
- package/docs/content/locales/hi-IN/actions.md +3 -3
- package/docs/content/locales/hi-IN/agent-mentions.md +3 -3
- package/docs/content/locales/hi-IN/agent-surfaces.md +7 -7
- package/docs/content/locales/hi-IN/agent-teams.md +3 -3
- package/docs/content/locales/hi-IN/agent-web-surfaces.md +5 -5
- package/docs/content/locales/hi-IN/authentication.md +6 -6
- package/docs/content/locales/hi-IN/automations.md +8 -8
- package/docs/content/locales/hi-IN/blueprint-installer.md +2 -2
- package/docs/content/locales/hi-IN/client.md +1 -1
- package/docs/content/locales/hi-IN/cloneable-saas.md +2 -2
- package/docs/content/locales/hi-IN/code-agents-ui.md +4 -4
- package/docs/content/locales/hi-IN/components.md +5 -5
- package/docs/content/locales/hi-IN/context-awareness.md +8 -8
- package/docs/content/locales/hi-IN/creating-templates.md +14 -14
- package/docs/content/locales/hi-IN/cross-app-sso.md +3 -3
- package/docs/content/locales/hi-IN/database.md +5 -5
- package/docs/content/locales/hi-IN/deployment.md +5 -5
- package/docs/content/locales/hi-IN/dispatch.md +4 -4
- package/docs/content/locales/hi-IN/drop-in-agent.md +8 -8
- package/docs/content/locales/hi-IN/durable-resume.md +1 -1
- package/docs/content/locales/hi-IN/embedding-sdk.md +2 -2
- package/docs/content/locales/hi-IN/evals.md +2 -2
- package/docs/content/locales/hi-IN/extensions.md +2 -2
- package/docs/content/locales/hi-IN/external-agents.md +5 -5
- package/docs/content/locales/hi-IN/faq.md +3 -3
- package/docs/content/locales/hi-IN/file-uploads.md +4 -4
- package/docs/content/locales/hi-IN/frames.md +1 -1
- package/docs/content/locales/hi-IN/getting-started.md +14 -14
- package/docs/content/locales/hi-IN/harness-agents.md +3 -3
- package/docs/content/locales/hi-IN/human-approval.md +3 -3
- package/docs/content/locales/hi-IN/key-concepts.md +14 -14
- package/docs/content/locales/hi-IN/local-file-mode.md +5 -5
- package/docs/content/locales/hi-IN/mcp-apps.md +4 -4
- package/docs/content/locales/hi-IN/mcp-clients.md +7 -7
- package/docs/content/locales/hi-IN/mcp-protocol.md +3 -3
- package/docs/content/locales/hi-IN/messaging.md +6 -6
- package/docs/content/locales/hi-IN/migration-workbench.md +1 -1
- package/docs/content/locales/hi-IN/multi-app-workspace.md +1 -1
- package/docs/content/locales/hi-IN/multi-tenancy.md +1 -1
- package/docs/content/locales/hi-IN/native-chat-ui.md +3 -3
- package/docs/content/locales/hi-IN/notifications.md +3 -3
- package/docs/content/locales/hi-IN/observability.md +2 -2
- package/docs/content/locales/hi-IN/observational-memory.md +2 -2
- package/docs/content/locales/hi-IN/onboarding.md +8 -8
- package/docs/content/locales/hi-IN/plan-plugin.md +3 -3
- package/docs/content/locales/hi-IN/pr-visual-recap.md +11 -11
- package/docs/content/locales/hi-IN/processors.md +1 -1
- package/docs/content/locales/hi-IN/progress.md +2 -2
- package/docs/content/locales/hi-IN/pure-agent-apps.md +1 -1
- package/docs/content/locales/hi-IN/real-time-collaboration.md +6 -6
- package/docs/content/locales/hi-IN/recurring-jobs.md +5 -5
- package/docs/content/locales/hi-IN/routing.md +1 -1
- package/docs/content/locales/hi-IN/sandbox-adapters.md +2 -2
- package/docs/content/locales/hi-IN/security.md +8 -8
- package/docs/content/locales/hi-IN/server.md +10 -10
- package/docs/content/locales/hi-IN/sharing.md +6 -6
- package/docs/content/locales/hi-IN/skills-guide.md +16 -16
- package/docs/content/locales/hi-IN/template-analytics.md +10 -10
- package/docs/content/locales/hi-IN/template-assets.md +19 -19
- package/docs/content/locales/hi-IN/template-brain.md +11 -11
- package/docs/content/locales/hi-IN/template-calendar.md +9 -9
- package/docs/content/locales/hi-IN/template-chat.md +3 -3
- package/docs/content/locales/hi-IN/template-clips.md +14 -14
- package/docs/content/locales/hi-IN/template-content.md +13 -13
- package/docs/content/locales/hi-IN/template-design.md +7 -7
- package/docs/content/locales/hi-IN/template-dispatch.md +9 -9
- package/docs/content/locales/hi-IN/template-forms.md +9 -9
- package/docs/content/locales/hi-IN/template-mail.md +6 -6
- package/docs/content/locales/hi-IN/template-plan.md +3 -3
- package/docs/content/locales/hi-IN/template-slides.md +8 -8
- package/docs/content/locales/hi-IN/template-videos.md +5 -5
- package/docs/content/locales/hi-IN/tracking.md +3 -3
- package/docs/content/locales/hi-IN/using-your-agent.md +1 -1
- package/docs/content/locales/hi-IN/voice-input.md +4 -4
- package/docs/content/locales/hi-IN/what-is-agent-native.md +4 -4
- package/docs/content/locales/hi-IN/workspace-connections.md +8 -8
- package/docs/content/locales/hi-IN/workspace-management.md +4 -4
- package/docs/content/locales/hi-IN/workspace.md +23 -23
- package/docs/content/locales/hi-IN/writing-agent-instructions.md +18 -18
- package/docs/content/locales/ja-JP/a2a-protocol.md +7 -7
- package/docs/content/locales/ja-JP/actions.md +3 -3
- package/docs/content/locales/ja-JP/agent-mentions.md +3 -3
- package/docs/content/locales/ja-JP/agent-surfaces.md +7 -7
- package/docs/content/locales/ja-JP/agent-teams.md +3 -3
- package/docs/content/locales/ja-JP/agent-web-surfaces.md +5 -5
- package/docs/content/locales/ja-JP/authentication.md +6 -6
- package/docs/content/locales/ja-JP/automations.md +8 -8
- package/docs/content/locales/ja-JP/blueprint-installer.md +2 -2
- package/docs/content/locales/ja-JP/client.md +1 -1
- package/docs/content/locales/ja-JP/cloneable-saas.md +2 -2
- package/docs/content/locales/ja-JP/code-agents-ui.md +4 -4
- package/docs/content/locales/ja-JP/components.md +5 -5
- package/docs/content/locales/ja-JP/context-awareness.md +8 -8
- package/docs/content/locales/ja-JP/creating-templates.md +12 -12
- package/docs/content/locales/ja-JP/cross-app-sso.md +3 -3
- package/docs/content/locales/ja-JP/database.md +7 -7
- package/docs/content/locales/ja-JP/deployment.md +4 -4
- package/docs/content/locales/ja-JP/dispatch.md +4 -4
- package/docs/content/locales/ja-JP/drop-in-agent.md +8 -8
- package/docs/content/locales/ja-JP/durable-resume.md +1 -1
- package/docs/content/locales/ja-JP/embedding-sdk.md +2 -2
- package/docs/content/locales/ja-JP/evals.md +2 -2
- package/docs/content/locales/ja-JP/extensions.md +2 -2
- package/docs/content/locales/ja-JP/external-agents.md +5 -5
- package/docs/content/locales/ja-JP/faq.md +3 -3
- package/docs/content/locales/ja-JP/file-uploads.md +4 -4
- package/docs/content/locales/ja-JP/frames.md +1 -1
- package/docs/content/locales/ja-JP/getting-started.md +13 -13
- package/docs/content/locales/ja-JP/harness-agents.md +3 -3
- package/docs/content/locales/ja-JP/human-approval.md +3 -3
- package/docs/content/locales/ja-JP/key-concepts.md +14 -14
- package/docs/content/locales/ja-JP/local-file-mode.md +5 -5
- package/docs/content/locales/ja-JP/mcp-apps.md +4 -4
- package/docs/content/locales/ja-JP/mcp-clients.md +8 -8
- package/docs/content/locales/ja-JP/mcp-protocol.md +3 -3
- package/docs/content/locales/ja-JP/messaging.md +6 -6
- package/docs/content/locales/ja-JP/migration-workbench.md +1 -1
- package/docs/content/locales/ja-JP/multi-app-workspace.md +1 -1
- package/docs/content/locales/ja-JP/multi-tenancy.md +1 -1
- package/docs/content/locales/ja-JP/native-chat-ui.md +3 -3
- package/docs/content/locales/ja-JP/notifications.md +3 -3
- package/docs/content/locales/ja-JP/observability.md +2 -2
- package/docs/content/locales/ja-JP/observational-memory.md +2 -2
- package/docs/content/locales/ja-JP/onboarding.md +8 -8
- package/docs/content/locales/ja-JP/plan-plugin.md +3 -3
- package/docs/content/locales/ja-JP/pr-visual-recap.md +11 -11
- package/docs/content/locales/ja-JP/processors.md +1 -1
- package/docs/content/locales/ja-JP/progress.md +2 -2
- package/docs/content/locales/ja-JP/pure-agent-apps.md +1 -1
- package/docs/content/locales/ja-JP/real-time-collaboration.md +6 -6
- package/docs/content/locales/ja-JP/recurring-jobs.md +5 -5
- package/docs/content/locales/ja-JP/routing.md +1 -1
- package/docs/content/locales/ja-JP/sandbox-adapters.md +2 -2
- package/docs/content/locales/ja-JP/security.md +8 -8
- package/docs/content/locales/ja-JP/server.md +10 -10
- package/docs/content/locales/ja-JP/sharing.md +6 -6
- package/docs/content/locales/ja-JP/skills-guide.md +16 -16
- package/docs/content/locales/ja-JP/template-analytics.md +10 -10
- package/docs/content/locales/ja-JP/template-assets.md +19 -19
- package/docs/content/locales/ja-JP/template-brain.md +11 -11
- package/docs/content/locales/ja-JP/template-calendar.md +9 -9
- package/docs/content/locales/ja-JP/template-chat.md +3 -3
- package/docs/content/locales/ja-JP/template-clips.md +14 -14
- package/docs/content/locales/ja-JP/template-content.md +13 -13
- package/docs/content/locales/ja-JP/template-design.md +7 -7
- package/docs/content/locales/ja-JP/template-dispatch.md +12 -12
- package/docs/content/locales/ja-JP/template-forms.md +9 -9
- package/docs/content/locales/ja-JP/template-mail.md +6 -6
- package/docs/content/locales/ja-JP/template-plan.md +3 -3
- package/docs/content/locales/ja-JP/template-slides.md +8 -8
- package/docs/content/locales/ja-JP/template-videos.md +5 -5
- package/docs/content/locales/ja-JP/tracking.md +3 -3
- package/docs/content/locales/ja-JP/using-your-agent.md +4 -4
- package/docs/content/locales/ja-JP/voice-input.md +4 -4
- package/docs/content/locales/ja-JP/what-is-agent-native.md +4 -4
- package/docs/content/locales/ja-JP/workspace-connections.md +8 -8
- package/docs/content/locales/ja-JP/workspace-management.md +5 -5
- package/docs/content/locales/ja-JP/workspace.md +23 -23
- package/docs/content/locales/ja-JP/writing-agent-instructions.md +18 -18
- package/docs/content/locales/ko-KR/a2a-protocol.md +7 -7
- package/docs/content/locales/ko-KR/actions.md +3 -3
- package/docs/content/locales/ko-KR/agent-mentions.md +3 -3
- package/docs/content/locales/ko-KR/agent-surfaces.md +15 -15
- package/docs/content/locales/ko-KR/agent-teams.md +3 -3
- package/docs/content/locales/ko-KR/agent-web-surfaces.md +5 -5
- package/docs/content/locales/ko-KR/authentication.md +13 -13
- package/docs/content/locales/ko-KR/automations.md +8 -8
- package/docs/content/locales/ko-KR/blueprint-installer.md +2 -2
- package/docs/content/locales/ko-KR/client.md +1 -1
- package/docs/content/locales/ko-KR/cloneable-saas.md +2 -2
- package/docs/content/locales/ko-KR/code-agents-ui.md +4 -4
- package/docs/content/locales/ko-KR/components.md +5 -5
- package/docs/content/locales/ko-KR/context-awareness.md +8 -8
- package/docs/content/locales/ko-KR/creating-templates.md +12 -12
- package/docs/content/locales/ko-KR/cross-app-sso.md +3 -3
- package/docs/content/locales/ko-KR/database.md +7 -7
- package/docs/content/locales/ko-KR/deployment.md +4 -4
- package/docs/content/locales/ko-KR/dispatch.md +4 -4
- package/docs/content/locales/ko-KR/drop-in-agent.md +8 -8
- package/docs/content/locales/ko-KR/durable-resume.md +1 -1
- package/docs/content/locales/ko-KR/embedding-sdk.md +2 -2
- package/docs/content/locales/ko-KR/evals.md +2 -2
- package/docs/content/locales/ko-KR/extensions.md +2 -2
- package/docs/content/locales/ko-KR/external-agents.md +5 -5
- package/docs/content/locales/ko-KR/faq.md +3 -3
- package/docs/content/locales/ko-KR/file-uploads.md +4 -4
- package/docs/content/locales/ko-KR/frames.md +1 -1
- package/docs/content/locales/ko-KR/getting-started.md +13 -13
- package/docs/content/locales/ko-KR/harness-agents.md +3 -3
- package/docs/content/locales/ko-KR/human-approval.md +3 -3
- package/docs/content/locales/ko-KR/key-concepts.md +14 -14
- package/docs/content/locales/ko-KR/local-file-mode.md +5 -5
- package/docs/content/locales/ko-KR/mcp-apps.md +4 -4
- package/docs/content/locales/ko-KR/mcp-clients.md +8 -8
- package/docs/content/locales/ko-KR/mcp-protocol.md +3 -3
- package/docs/content/locales/ko-KR/messaging.md +6 -6
- package/docs/content/locales/ko-KR/migration-workbench.md +1 -1
- package/docs/content/locales/ko-KR/multi-app-workspace.md +1 -1
- package/docs/content/locales/ko-KR/multi-tenancy.md +1 -1
- package/docs/content/locales/ko-KR/native-chat-ui.md +3 -3
- package/docs/content/locales/ko-KR/notifications.md +3 -3
- package/docs/content/locales/ko-KR/observability.md +2 -2
- package/docs/content/locales/ko-KR/observational-memory.md +2 -2
- package/docs/content/locales/ko-KR/onboarding.md +8 -8
- package/docs/content/locales/ko-KR/plan-plugin.md +3 -3
- package/docs/content/locales/ko-KR/pr-visual-recap.md +11 -11
- package/docs/content/locales/ko-KR/processors.md +1 -1
- package/docs/content/locales/ko-KR/progress.md +2 -2
- package/docs/content/locales/ko-KR/pure-agent-apps.md +1 -1
- package/docs/content/locales/ko-KR/real-time-collaboration.md +6 -6
- package/docs/content/locales/ko-KR/recurring-jobs.md +5 -5
- package/docs/content/locales/ko-KR/routing.md +1 -1
- package/docs/content/locales/ko-KR/sandbox-adapters.md +2 -2
- package/docs/content/locales/ko-KR/security.md +8 -8
- package/docs/content/locales/ko-KR/server.md +10 -10
- package/docs/content/locales/ko-KR/sharing.md +6 -6
- package/docs/content/locales/ko-KR/skills-guide.md +16 -16
- package/docs/content/locales/ko-KR/template-analytics.md +10 -10
- package/docs/content/locales/ko-KR/template-assets.md +19 -19
- package/docs/content/locales/ko-KR/template-brain.md +11 -11
- package/docs/content/locales/ko-KR/template-calendar.md +9 -9
- package/docs/content/locales/ko-KR/template-chat.md +3 -3
- package/docs/content/locales/ko-KR/template-clips.md +14 -14
- package/docs/content/locales/ko-KR/template-content.md +13 -13
- package/docs/content/locales/ko-KR/template-design.md +7 -7
- package/docs/content/locales/ko-KR/template-dispatch.md +11 -11
- package/docs/content/locales/ko-KR/template-forms.md +9 -9
- package/docs/content/locales/ko-KR/template-mail.md +6 -6
- package/docs/content/locales/ko-KR/template-plan.md +3 -3
- package/docs/content/locales/ko-KR/template-slides.md +8 -8
- package/docs/content/locales/ko-KR/template-videos.md +5 -5
- package/docs/content/locales/ko-KR/tracking.md +3 -3
- package/docs/content/locales/ko-KR/using-your-agent.md +5 -5
- package/docs/content/locales/ko-KR/voice-input.md +4 -4
- package/docs/content/locales/ko-KR/what-is-agent-native.md +6 -6
- package/docs/content/locales/ko-KR/workspace-connections.md +8 -8
- package/docs/content/locales/ko-KR/workspace-management.md +4 -4
- package/docs/content/locales/ko-KR/workspace.md +23 -23
- package/docs/content/locales/ko-KR/writing-agent-instructions.md +18 -18
- package/docs/content/locales/pt-BR/a2a-protocol.md +7 -7
- package/docs/content/locales/pt-BR/actions.md +2 -2
- package/docs/content/locales/pt-BR/agent-mentions.md +3 -3
- package/docs/content/locales/pt-BR/agent-surfaces.md +7 -7
- package/docs/content/locales/pt-BR/agent-teams.md +3 -3
- package/docs/content/locales/pt-BR/agent-web-surfaces.md +5 -5
- package/docs/content/locales/pt-BR/authentication.md +6 -6
- package/docs/content/locales/pt-BR/automations.md +8 -8
- package/docs/content/locales/pt-BR/blueprint-installer.md +2 -2
- package/docs/content/locales/pt-BR/client.md +2 -2
- package/docs/content/locales/pt-BR/cloneable-saas.md +2 -2
- package/docs/content/locales/pt-BR/code-agents-ui.md +4 -4
- package/docs/content/locales/pt-BR/components.md +5 -5
- package/docs/content/locales/pt-BR/context-awareness.md +8 -8
- package/docs/content/locales/pt-BR/creating-templates.md +12 -12
- package/docs/content/locales/pt-BR/cross-app-sso.md +3 -3
- package/docs/content/locales/pt-BR/database.md +5 -5
- package/docs/content/locales/pt-BR/deployment.md +5 -5
- package/docs/content/locales/pt-BR/dispatch.md +3 -3
- package/docs/content/locales/pt-BR/drop-in-agent.md +9 -9
- package/docs/content/locales/pt-BR/durable-resume.md +1 -1
- package/docs/content/locales/pt-BR/embedding-sdk.md +2 -2
- package/docs/content/locales/pt-BR/evals.md +2 -2
- package/docs/content/locales/pt-BR/extensions.md +2 -2
- package/docs/content/locales/pt-BR/external-agents.md +5 -5
- package/docs/content/locales/pt-BR/faq.md +3 -3
- package/docs/content/locales/pt-BR/file-uploads.md +4 -4
- package/docs/content/locales/pt-BR/frames.md +2 -2
- package/docs/content/locales/pt-BR/getting-started.md +13 -13
- package/docs/content/locales/pt-BR/harness-agents.md +3 -3
- package/docs/content/locales/pt-BR/human-approval.md +3 -3
- package/docs/content/locales/pt-BR/key-concepts.md +15 -15
- package/docs/content/locales/pt-BR/local-file-mode.md +5 -5
- package/docs/content/locales/pt-BR/mcp-apps.md +4 -4
- package/docs/content/locales/pt-BR/mcp-clients.md +8 -8
- package/docs/content/locales/pt-BR/mcp-protocol.md +3 -3
- package/docs/content/locales/pt-BR/messaging.md +4 -4
- package/docs/content/locales/pt-BR/migration-workbench.md +1 -1
- package/docs/content/locales/pt-BR/multi-app-workspace.md +1 -1
- package/docs/content/locales/pt-BR/multi-tenancy.md +1 -1
- package/docs/content/locales/pt-BR/native-chat-ui.md +3 -3
- package/docs/content/locales/pt-BR/notifications.md +3 -3
- package/docs/content/locales/pt-BR/observability.md +2 -2
- package/docs/content/locales/pt-BR/observational-memory.md +2 -2
- package/docs/content/locales/pt-BR/onboarding.md +8 -8
- package/docs/content/locales/pt-BR/plan-plugin.md +3 -3
- package/docs/content/locales/pt-BR/pr-visual-recap.md +11 -11
- package/docs/content/locales/pt-BR/processors.md +1 -1
- package/docs/content/locales/pt-BR/progress.md +2 -2
- package/docs/content/locales/pt-BR/pure-agent-apps.md +1 -1
- package/docs/content/locales/pt-BR/real-time-collaboration.md +6 -6
- package/docs/content/locales/pt-BR/recurring-jobs.md +5 -5
- package/docs/content/locales/pt-BR/routing.md +1 -1
- package/docs/content/locales/pt-BR/sandbox-adapters.md +2 -2
- package/docs/content/locales/pt-BR/security.md +9 -9
- package/docs/content/locales/pt-BR/server.md +10 -10
- package/docs/content/locales/pt-BR/sharing.md +6 -6
- package/docs/content/locales/pt-BR/skills-guide.md +16 -16
- package/docs/content/locales/pt-BR/template-analytics.md +10 -10
- package/docs/content/locales/pt-BR/template-assets.md +20 -20
- package/docs/content/locales/pt-BR/template-brain.md +11 -11
- package/docs/content/locales/pt-BR/template-calendar.md +9 -9
- package/docs/content/locales/pt-BR/template-chat.md +3 -3
- package/docs/content/locales/pt-BR/template-clips.md +15 -15
- package/docs/content/locales/pt-BR/template-content.md +13 -13
- package/docs/content/locales/pt-BR/template-design.md +8 -8
- package/docs/content/locales/pt-BR/template-dispatch.md +8 -8
- package/docs/content/locales/pt-BR/template-forms.md +10 -10
- package/docs/content/locales/pt-BR/template-mail.md +6 -6
- package/docs/content/locales/pt-BR/template-plan.md +3 -3
- package/docs/content/locales/pt-BR/template-slides.md +9 -9
- package/docs/content/locales/pt-BR/template-videos.md +5 -5
- package/docs/content/locales/pt-BR/tracking.md +3 -3
- package/docs/content/locales/pt-BR/using-your-agent.md +5 -5
- package/docs/content/locales/pt-BR/voice-input.md +4 -4
- package/docs/content/locales/pt-BR/what-is-agent-native.md +5 -5
- package/docs/content/locales/pt-BR/workspace-connections.md +8 -8
- package/docs/content/locales/pt-BR/workspace-management.md +4 -4
- package/docs/content/locales/pt-BR/workspace.md +23 -23
- package/docs/content/locales/pt-BR/writing-agent-instructions.md +18 -18
- package/docs/content/locales/zh-CN/a2a-protocol.md +7 -7
- package/docs/content/locales/zh-CN/actions.md +3 -3
- package/docs/content/locales/zh-CN/agent-mentions.md +3 -3
- package/docs/content/locales/zh-CN/agent-surfaces.md +7 -7
- package/docs/content/locales/zh-CN/agent-teams.md +3 -3
- package/docs/content/locales/zh-CN/agent-web-surfaces.md +5 -5
- package/docs/content/locales/zh-CN/authentication.md +13 -13
- package/docs/content/locales/zh-CN/automations.md +8 -8
- package/docs/content/locales/zh-CN/blueprint-installer.md +2 -2
- package/docs/content/locales/zh-CN/client.md +1 -1
- package/docs/content/locales/zh-CN/cloneable-saas.md +2 -2
- package/docs/content/locales/zh-CN/code-agents-ui.md +4 -4
- package/docs/content/locales/zh-CN/components.md +7 -7
- package/docs/content/locales/zh-CN/context-awareness.md +8 -8
- package/docs/content/locales/zh-CN/creating-templates.md +12 -12
- package/docs/content/locales/zh-CN/cross-app-sso.md +3 -3
- package/docs/content/locales/zh-CN/database.md +7 -7
- package/docs/content/locales/zh-CN/deployment.md +4 -4
- package/docs/content/locales/zh-CN/dispatch.md +4 -4
- package/docs/content/locales/zh-CN/drop-in-agent.md +8 -8
- package/docs/content/locales/zh-CN/durable-resume.md +1 -1
- package/docs/content/locales/zh-CN/embedding-sdk.md +2 -2
- package/docs/content/locales/zh-CN/evals.md +2 -2
- package/docs/content/locales/zh-CN/extensions.md +2 -2
- package/docs/content/locales/zh-CN/external-agents.md +5 -5
- package/docs/content/locales/zh-CN/faq.md +3 -3
- package/docs/content/locales/zh-CN/file-uploads.md +4 -4
- package/docs/content/locales/zh-CN/frames.md +2 -2
- package/docs/content/locales/zh-CN/getting-started.md +13 -13
- package/docs/content/locales/zh-CN/harness-agents.md +3 -3
- package/docs/content/locales/zh-CN/human-approval.md +3 -3
- package/docs/content/locales/zh-CN/key-concepts.md +14 -14
- package/docs/content/locales/zh-CN/local-file-mode.md +5 -5
- package/docs/content/locales/zh-CN/mcp-apps.md +4 -4
- package/docs/content/locales/zh-CN/mcp-clients.md +7 -7
- package/docs/content/locales/zh-CN/mcp-protocol.md +3 -3
- package/docs/content/locales/zh-CN/messaging.md +6 -6
- package/docs/content/locales/zh-CN/migration-workbench.md +1 -1
- package/docs/content/locales/zh-CN/multi-app-workspace.md +1 -1
- package/docs/content/locales/zh-CN/multi-tenancy.md +1 -1
- package/docs/content/locales/zh-CN/native-chat-ui.md +3 -3
- package/docs/content/locales/zh-CN/notifications.md +3 -3
- package/docs/content/locales/zh-CN/observability.md +2 -2
- package/docs/content/locales/zh-CN/observational-memory.md +2 -2
- package/docs/content/locales/zh-CN/onboarding.md +8 -8
- package/docs/content/locales/zh-CN/plan-plugin.md +3 -3
- package/docs/content/locales/zh-CN/pr-visual-recap.md +11 -11
- package/docs/content/locales/zh-CN/processors.md +1 -1
- package/docs/content/locales/zh-CN/progress.md +2 -2
- package/docs/content/locales/zh-CN/pure-agent-apps.md +1 -1
- package/docs/content/locales/zh-CN/real-time-collaboration.md +6 -6
- package/docs/content/locales/zh-CN/recurring-jobs.md +5 -5
- package/docs/content/locales/zh-CN/routing.md +1 -1
- package/docs/content/locales/zh-CN/sandbox-adapters.md +2 -2
- package/docs/content/locales/zh-CN/security.md +8 -8
- package/docs/content/locales/zh-CN/server.md +10 -10
- package/docs/content/locales/zh-CN/sharing.md +6 -6
- package/docs/content/locales/zh-CN/skills-guide.md +16 -16
- package/docs/content/locales/zh-CN/template-analytics.md +10 -10
- package/docs/content/locales/zh-CN/template-assets.md +20 -20
- package/docs/content/locales/zh-CN/template-brain.md +11 -11
- package/docs/content/locales/zh-CN/template-calendar.md +9 -9
- package/docs/content/locales/zh-CN/template-chat.md +3 -3
- package/docs/content/locales/zh-CN/template-clips.md +14 -14
- package/docs/content/locales/zh-CN/template-content.md +13 -13
- package/docs/content/locales/zh-CN/template-design.md +7 -7
- package/docs/content/locales/zh-CN/template-dispatch.md +11 -11
- package/docs/content/locales/zh-CN/template-forms.md +9 -9
- package/docs/content/locales/zh-CN/template-mail.md +6 -6
- package/docs/content/locales/zh-CN/template-plan.md +3 -3
- package/docs/content/locales/zh-CN/template-slides.md +8 -8
- package/docs/content/locales/zh-CN/template-videos.md +5 -5
- package/docs/content/locales/zh-CN/tracking.md +3 -3
- package/docs/content/locales/zh-CN/using-your-agent.md +5 -5
- package/docs/content/locales/zh-CN/voice-input.md +4 -4
- package/docs/content/locales/zh-CN/what-is-agent-native.md +5 -5
- package/docs/content/locales/zh-CN/workspace-connections.md +8 -8
- package/docs/content/locales/zh-CN/workspace-management.md +5 -5
- package/docs/content/locales/zh-CN/workspace.md +23 -23
- package/docs/content/locales/zh-CN/writing-agent-instructions.md +18 -18
- package/package.json +1 -1
- package/src/templates/default/app/i18n/ar-SA.ts +275 -274
- package/src/templates/default/app/i18n/de-DE.ts +270 -260
- package/src/templates/default/app/i18n/es-ES.ts +282 -270
- package/src/templates/default/app/i18n/fr-FR.ts +275 -266
- package/src/templates/default/app/i18n/hi-IN.ts +274 -276
- package/src/templates/default/app/i18n/ja-JP.ts +280 -273
- package/src/templates/default/app/i18n/ko-KR.ts +274 -274
- package/src/templates/default/app/i18n/pt-BR.ts +273 -266
- package/src/templates/default/app/i18n/zh-CN.ts +273 -285
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
useActionMutation,
|
|
3
|
+
useActionQuery,
|
|
4
|
+
useT,
|
|
5
|
+
} from "@agent-native/core/client";
|
|
2
6
|
import { DispatchShell } from "@agent-native/dispatch/components";
|
|
3
7
|
import {
|
|
4
8
|
AlertDialog,
|
|
@@ -71,8 +75,10 @@ import {
|
|
|
71
75
|
} from "react";
|
|
72
76
|
import { toast } from "sonner";
|
|
73
77
|
|
|
78
|
+
import { messagesByLocale } from "@/i18n-data";
|
|
79
|
+
|
|
74
80
|
export function meta() {
|
|
75
|
-
return [{ title: "
|
|
81
|
+
return [{ title: messagesByLocale["en-US"].routeTitles.integrations }];
|
|
76
82
|
}
|
|
77
83
|
|
|
78
84
|
const CONNECTION_QUERY_PARAMS = { includeDisabled: true } as const;
|
|
@@ -322,13 +328,7 @@ const EMPTY_RESPONSE: WorkspaceConnectionsResponse = {
|
|
|
322
328
|
counts: { providers: 0, connections: 0, grants: 0 },
|
|
323
329
|
};
|
|
324
330
|
|
|
325
|
-
|
|
326
|
-
connected: "Connected",
|
|
327
|
-
checking: "Checking",
|
|
328
|
-
needs_reauth: "Needs reauth",
|
|
329
|
-
error: "Error",
|
|
330
|
-
disabled: "Disabled",
|
|
331
|
-
};
|
|
331
|
+
type Translate = ReturnType<typeof useT>;
|
|
332
332
|
|
|
333
333
|
const STATUS_CLASSES: Record<WorkspaceConnectionStatus, string> = {
|
|
334
334
|
connected:
|
|
@@ -341,18 +341,6 @@ const STATUS_CLASSES: Record<WorkspaceConnectionStatus, string> = {
|
|
|
341
341
|
disabled: "border-border bg-muted text-muted-foreground",
|
|
342
342
|
};
|
|
343
343
|
|
|
344
|
-
const READINESS_LABELS: Record<
|
|
345
|
-
WorkspaceConnectionProviderReadinessStatus,
|
|
346
|
-
string
|
|
347
|
-
> = {
|
|
348
|
-
ready: "Ready",
|
|
349
|
-
checking: "Checking",
|
|
350
|
-
needs_credentials: "Needs refs",
|
|
351
|
-
needs_attention: "Needs attention",
|
|
352
|
-
disabled: "Disabled",
|
|
353
|
-
not_configured: "Available",
|
|
354
|
-
};
|
|
355
|
-
|
|
356
344
|
const READINESS_CLASSES: Record<
|
|
357
345
|
WorkspaceConnectionProviderReadinessStatus,
|
|
358
346
|
string
|
|
@@ -400,6 +388,33 @@ function iconForApp(appId: string): IconComponent {
|
|
|
400
388
|
return APP_ICONS[appId] ?? IconUsersGroup;
|
|
401
389
|
}
|
|
402
390
|
|
|
391
|
+
function statusLabel(t: Translate, status: WorkspaceConnectionStatus): string {
|
|
392
|
+
return t(`integrations.status.${status}`);
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
function readinessLabel(
|
|
396
|
+
t: Translate,
|
|
397
|
+
status: WorkspaceConnectionProviderReadinessStatus,
|
|
398
|
+
): string {
|
|
399
|
+
return t(`integrations.readiness.${status}`);
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
function scopeLabel(
|
|
403
|
+
t: Translate,
|
|
404
|
+
scope: WorkspaceConnectionCredentialRef["scope"],
|
|
405
|
+
): string {
|
|
406
|
+
switch (scope) {
|
|
407
|
+
case "org":
|
|
408
|
+
return t("integrations.scopeOrg");
|
|
409
|
+
case "workspace":
|
|
410
|
+
return t("integrations.scopeWorkspace");
|
|
411
|
+
case "user":
|
|
412
|
+
return t("integrations.scopeUser");
|
|
413
|
+
default:
|
|
414
|
+
return "";
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
|
|
403
418
|
function humanizeAppId(appId: string): string {
|
|
404
419
|
return appId
|
|
405
420
|
.split(/[-_]/)
|
|
@@ -427,8 +442,11 @@ function hasGrantUsageTimestamp(grant: WorkspaceConnectionGrant): boolean {
|
|
|
427
442
|
return Object.prototype.hasOwnProperty.call(grant, "lastUsedAt");
|
|
428
443
|
}
|
|
429
444
|
|
|
430
|
-
function formatTimestamp(
|
|
431
|
-
|
|
445
|
+
function formatTimestamp(
|
|
446
|
+
t: Translate,
|
|
447
|
+
value: string | null | undefined,
|
|
448
|
+
): string {
|
|
449
|
+
if (value == null) return t("integrations.time.neverUsed");
|
|
432
450
|
const date = new Date(value);
|
|
433
451
|
if (Number.isNaN(date.getTime())) return value;
|
|
434
452
|
const deltaMs = date.getTime() - Date.now();
|
|
@@ -448,7 +466,7 @@ function formatTimestamp(value: string | null | undefined): string {
|
|
|
448
466
|
return formatter.format(Math.round(deltaMs / ms), unit);
|
|
449
467
|
}
|
|
450
468
|
}
|
|
451
|
-
return "
|
|
469
|
+
return t("integrations.time.justNow");
|
|
452
470
|
}
|
|
453
471
|
|
|
454
472
|
function usageSortValue(connection: WorkspaceConnection): number {
|
|
@@ -619,17 +637,11 @@ function grantModeForApp(
|
|
|
619
637
|
return "off";
|
|
620
638
|
}
|
|
621
639
|
|
|
622
|
-
function grantModeLabel(
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
return "Selected";
|
|
628
|
-
case "explicit":
|
|
629
|
-
return "Grant";
|
|
630
|
-
case "off":
|
|
631
|
-
return "Off";
|
|
632
|
-
}
|
|
640
|
+
function grantModeLabel(
|
|
641
|
+
t: Translate,
|
|
642
|
+
mode: ReturnType<typeof grantModeForApp>,
|
|
643
|
+
): string {
|
|
644
|
+
return t(`integrations.grantMode.${mode}`);
|
|
633
645
|
}
|
|
634
646
|
|
|
635
647
|
function usageForAppGrant(
|
|
@@ -666,8 +678,9 @@ function summarizeGrant(
|
|
|
666
678
|
connection: WorkspaceConnection,
|
|
667
679
|
grantApps: GrantApp[],
|
|
668
680
|
grants: WorkspaceConnectionsResponse["grants"],
|
|
681
|
+
t: Translate,
|
|
669
682
|
) {
|
|
670
|
-
if (connection.allowedApps.length === 0) return "
|
|
683
|
+
if (connection.allowedApps.length === 0) return t("integrations.allApps");
|
|
671
684
|
const grantedAppIds = Array.from(
|
|
672
685
|
new Set([
|
|
673
686
|
...connection.allowedApps,
|
|
@@ -687,13 +700,19 @@ function summarizeGrant(
|
|
|
687
700
|
return `${labels.join(", ")}${suffix}`;
|
|
688
701
|
}
|
|
689
702
|
|
|
690
|
-
function summarizeAppList(
|
|
703
|
+
function summarizeAppList(
|
|
704
|
+
appIds: string[],
|
|
705
|
+
grantApps: GrantApp[],
|
|
706
|
+
t: Translate,
|
|
707
|
+
): string {
|
|
691
708
|
const labels = appIds
|
|
692
709
|
.map((appId) => grantApps.find((app) => app.id === appId)?.label ?? appId)
|
|
693
710
|
.slice(0, 3);
|
|
694
711
|
const suffix =
|
|
695
712
|
appIds.length > labels.length ? ` +${appIds.length - labels.length}` : "";
|
|
696
|
-
return labels.length > 0
|
|
713
|
+
return labels.length > 0
|
|
714
|
+
? `${labels.join(", ")}${suffix}`
|
|
715
|
+
: t("integrations.noApps");
|
|
697
716
|
}
|
|
698
717
|
|
|
699
718
|
function ProviderCard({
|
|
@@ -705,6 +724,7 @@ function ProviderCard({
|
|
|
705
724
|
connections: WorkspaceConnection[];
|
|
706
725
|
onCreate: () => void;
|
|
707
726
|
}) {
|
|
727
|
+
const t = useT();
|
|
708
728
|
const Icon = iconForProvider(provider.id);
|
|
709
729
|
const active = connections.filter((item) => item.status !== "disabled");
|
|
710
730
|
const readiness = provider.readiness;
|
|
@@ -723,7 +743,7 @@ function ProviderCard({
|
|
|
723
743
|
) : (
|
|
724
744
|
<IconCircleDashed size={12} />
|
|
725
745
|
)}
|
|
726
|
-
{
|
|
746
|
+
{readinessLabel(t, readinessStatus)}
|
|
727
747
|
</Pill>
|
|
728
748
|
</div>
|
|
729
749
|
<div>
|
|
@@ -743,29 +763,31 @@ function ProviderCard({
|
|
|
743
763
|
</div>
|
|
744
764
|
{readiness?.missingRequiredCredentialKeys.length ? (
|
|
745
765
|
<div className="rounded-md border border-amber-500/20 bg-amber-500/10 px-3 py-2 text-xs text-amber-700 dark:text-amber-400">
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
:
|
|
766
|
+
{t("integrations.missingKeys", {
|
|
767
|
+
keys: readiness.missingRequiredCredentialKeys
|
|
768
|
+
.slice(0, 2)
|
|
769
|
+
.join(", "),
|
|
770
|
+
suffix:
|
|
771
|
+
readiness.missingRequiredCredentialKeys.length > 2
|
|
772
|
+
? ` +${readiness.missingRequiredCredentialKeys.length - 2}`
|
|
773
|
+
: "",
|
|
774
|
+
})}
|
|
751
775
|
</div>
|
|
752
776
|
) : null}
|
|
753
777
|
</div>
|
|
754
778
|
<div className="mt-4 flex items-center justify-between gap-3 border-t pt-3">
|
|
755
779
|
<span className="text-xs text-muted-foreground">
|
|
756
780
|
{active.length > 0
|
|
757
|
-
?
|
|
758
|
-
active.length === 1 ? "" : "s"
|
|
759
|
-
}`
|
|
781
|
+
? t("integrations.activeConnection", { count: active.length })
|
|
760
782
|
: provider.credentialKeys.length === 0
|
|
761
|
-
? "
|
|
762
|
-
:
|
|
763
|
-
provider.credentialKeys.length
|
|
764
|
-
}
|
|
783
|
+
? t("integrations.noCredentialRefs")
|
|
784
|
+
: t("integrations.credentialRefCount", {
|
|
785
|
+
count: provider.credentialKeys.length,
|
|
786
|
+
})}
|
|
765
787
|
</span>
|
|
766
788
|
<Button type="button" variant="outline" size="sm" onClick={onCreate}>
|
|
767
789
|
<IconPlus size={14} />
|
|
768
|
-
|
|
790
|
+
{t("integrations.connect")}
|
|
769
791
|
</Button>
|
|
770
792
|
</div>
|
|
771
793
|
</article>
|
|
@@ -793,6 +815,7 @@ function ConnectionRow({
|
|
|
793
815
|
onToggleGrant: (appId: string, granted: boolean) => void;
|
|
794
816
|
grantPending: boolean;
|
|
795
817
|
}) {
|
|
818
|
+
const t = useT();
|
|
796
819
|
const Icon = iconForProvider(connection.provider);
|
|
797
820
|
const missingKeys = missingRequiredCredentialKeys(
|
|
798
821
|
provider,
|
|
@@ -818,11 +841,11 @@ function ConnectionRow({
|
|
|
818
841
|
{connection.label}
|
|
819
842
|
</h2>
|
|
820
843
|
<Pill className={STATUS_CLASSES[connection.status]}>
|
|
821
|
-
{
|
|
844
|
+
{statusLabel(t, connection.status)}
|
|
822
845
|
</Pill>
|
|
823
846
|
{missingKeys.length > 0 ? (
|
|
824
847
|
<Pill className={READINESS_CLASSES.needs_credentials}>
|
|
825
|
-
|
|
848
|
+
{t("integrations.missingRefs")}
|
|
826
849
|
</Pill>
|
|
827
850
|
) : null}
|
|
828
851
|
</div>
|
|
@@ -844,12 +867,12 @@ function ConnectionRow({
|
|
|
844
867
|
onClick={onRepair}
|
|
845
868
|
>
|
|
846
869
|
<IconRefresh size={14} />
|
|
847
|
-
|
|
870
|
+
{t("integrations.repair")}
|
|
848
871
|
</Button>
|
|
849
872
|
) : null}
|
|
850
873
|
<Button type="button" variant="ghost" size="sm" onClick={onEdit}>
|
|
851
874
|
<IconEdit size={14} />
|
|
852
|
-
|
|
875
|
+
{t("integrations.edit")}
|
|
853
876
|
</Button>
|
|
854
877
|
<Button
|
|
855
878
|
type="button"
|
|
@@ -858,7 +881,7 @@ function ConnectionRow({
|
|
|
858
881
|
onClick={onDelete}
|
|
859
882
|
>
|
|
860
883
|
<IconTrash size={14} />
|
|
861
|
-
|
|
884
|
+
{t("integrations.delete")}
|
|
862
885
|
</Button>
|
|
863
886
|
</div>
|
|
864
887
|
</div>
|
|
@@ -866,30 +889,32 @@ function ConnectionRow({
|
|
|
866
889
|
<div className="grid gap-2 sm:grid-cols-2 xl:grid-cols-4">
|
|
867
890
|
<ConnectionMeta
|
|
868
891
|
icon={IconKey}
|
|
869
|
-
label="
|
|
892
|
+
label={t("integrations.credentialRefs")}
|
|
870
893
|
value={
|
|
871
894
|
connection.credentialRefs.length
|
|
872
895
|
? connection.credentialRefs.map((ref) => ref.key).join(", ")
|
|
873
|
-
: "
|
|
896
|
+
: t("integrations.none")
|
|
874
897
|
}
|
|
875
898
|
/>
|
|
876
899
|
<ConnectionMeta
|
|
877
900
|
icon={IconShieldCheck}
|
|
878
|
-
label="
|
|
901
|
+
label={t("integrations.scopes")}
|
|
879
902
|
value={
|
|
880
|
-
connection.scopes.length
|
|
903
|
+
connection.scopes.length
|
|
904
|
+
? connection.scopes.join(", ")
|
|
905
|
+
: t("integrations.none")
|
|
881
906
|
}
|
|
882
907
|
/>
|
|
883
908
|
<ConnectionMeta
|
|
884
909
|
icon={IconUsersGroup}
|
|
885
|
-
label="
|
|
886
|
-
value={summarizeGrant(connection, grantApps, grants)}
|
|
910
|
+
label={t("integrations.access")}
|
|
911
|
+
value={summarizeGrant(connection, grantApps, grants, t)}
|
|
887
912
|
/>
|
|
888
913
|
{hasUsageTimestamp(connection) ? (
|
|
889
914
|
<ConnectionMeta
|
|
890
915
|
icon={IconClock}
|
|
891
|
-
label="
|
|
892
|
-
value={formatTimestamp(connection.lastUsedAt)}
|
|
916
|
+
label={t("integrations.usage")}
|
|
917
|
+
value={formatTimestamp(t, connection.lastUsedAt)}
|
|
893
918
|
/>
|
|
894
919
|
) : null}
|
|
895
920
|
</div>
|
|
@@ -902,7 +927,9 @@ function ConnectionRow({
|
|
|
902
927
|
<div className="flex items-start gap-2 rounded-md border border-amber-500/20 bg-amber-500/10 px-3 py-2 text-sm text-amber-700 dark:text-amber-400">
|
|
903
928
|
<IconAlertTriangle size={15} className="mt-0.5 shrink-0" />
|
|
904
929
|
<span className="min-w-0 break-words">
|
|
905
|
-
|
|
930
|
+
{t("integrations.requiredRefsMissing", {
|
|
931
|
+
keys: missingKeys.join(", "),
|
|
932
|
+
})}
|
|
906
933
|
</span>
|
|
907
934
|
</div>
|
|
908
935
|
) : null}
|
|
@@ -921,20 +948,20 @@ function ConnectionRow({
|
|
|
921
948
|
<div className="mb-2 flex items-center justify-between gap-2">
|
|
922
949
|
<div>
|
|
923
950
|
<h3 className="text-xs font-medium uppercase tracking-wide text-muted-foreground">
|
|
924
|
-
|
|
951
|
+
{t("integrations.appGrants")}
|
|
925
952
|
</h3>
|
|
926
953
|
<p className="mt-0.5 text-xs text-muted-foreground">
|
|
927
954
|
{connection.allowedApps.length === 0
|
|
928
|
-
? "
|
|
929
|
-
:
|
|
930
|
-
connection,
|
|
931
|
-
|
|
932
|
-
grants,
|
|
933
|
-
)} can reuse this account`}
|
|
955
|
+
? t("integrations.everyWorkspaceAppCanReuse")
|
|
956
|
+
: t("integrations.selectedAppsCanReuse", {
|
|
957
|
+
apps: summarizeGrant(connection, grantApps, grants, t),
|
|
958
|
+
})}
|
|
934
959
|
</p>
|
|
935
960
|
</div>
|
|
936
961
|
<Pill className="border-border bg-muted text-muted-foreground">
|
|
937
|
-
{connection.allowedApps.length === 0
|
|
962
|
+
{connection.allowedApps.length === 0
|
|
963
|
+
? t("integrations.allApps")
|
|
964
|
+
: t("integrations.selected")}
|
|
938
965
|
</Pill>
|
|
939
966
|
</div>
|
|
940
967
|
<div className="grid gap-1.5">
|
|
@@ -956,7 +983,7 @@ function ConnectionRow({
|
|
|
956
983
|
</span>
|
|
957
984
|
{usage !== undefined ? (
|
|
958
985
|
<span className="truncate text-xs text-muted-foreground">
|
|
959
|
-
{formatTimestamp(usage)}
|
|
986
|
+
{formatTimestamp(t, usage)}
|
|
960
987
|
</span>
|
|
961
988
|
) : null}
|
|
962
989
|
</span>
|
|
@@ -968,7 +995,7 @@ function ConnectionRow({
|
|
|
968
995
|
: "border-border bg-muted text-muted-foreground",
|
|
969
996
|
)}
|
|
970
997
|
>
|
|
971
|
-
{grantModeLabel(mode)}
|
|
998
|
+
{grantModeLabel(t, mode)}
|
|
972
999
|
</Pill>
|
|
973
1000
|
</div>
|
|
974
1001
|
<Switch
|
|
@@ -977,9 +1004,13 @@ function ConnectionRow({
|
|
|
977
1004
|
onCheckedChange={(checked) =>
|
|
978
1005
|
onToggleGrant(app.id, checked)
|
|
979
1006
|
}
|
|
980
|
-
aria-label={
|
|
981
|
-
|
|
982
|
-
|
|
1007
|
+
aria-label={t("integrations.toggleGrantAria", {
|
|
1008
|
+
action: granted
|
|
1009
|
+
? t("integrations.revoke")
|
|
1010
|
+
: t("integrations.grant"),
|
|
1011
|
+
app: app.label,
|
|
1012
|
+
connection: connection.label,
|
|
1013
|
+
})}
|
|
983
1014
|
/>
|
|
984
1015
|
</div>
|
|
985
1016
|
);
|
|
@@ -1018,6 +1049,7 @@ function CredentialRefsPreview({
|
|
|
1018
1049
|
}: {
|
|
1019
1050
|
refs: WorkspaceConnectionCredentialRef[];
|
|
1020
1051
|
}) {
|
|
1052
|
+
const t = useT();
|
|
1021
1053
|
return (
|
|
1022
1054
|
<div className="flex flex-wrap gap-1.5">
|
|
1023
1055
|
{refs.map((ref) => (
|
|
@@ -1028,7 +1060,9 @@ function CredentialRefsPreview({
|
|
|
1028
1060
|
<IconKey size={12} />
|
|
1029
1061
|
{ref.key}
|
|
1030
1062
|
{ref.scope ? (
|
|
1031
|
-
<span className="font-sans text-muted-foreground">
|
|
1063
|
+
<span className="font-sans text-muted-foreground">
|
|
1064
|
+
{scopeLabel(t, ref.scope)}
|
|
1065
|
+
</span>
|
|
1032
1066
|
) : null}
|
|
1033
1067
|
</Pill>
|
|
1034
1068
|
))}
|
|
@@ -1103,6 +1137,7 @@ function ConnectionForm({
|
|
|
1103
1137
|
onClose: () => void;
|
|
1104
1138
|
onSubmit: (event: FormEvent<HTMLFormElement>) => void;
|
|
1105
1139
|
}) {
|
|
1140
|
+
const t = useT();
|
|
1106
1141
|
if (!form) return null;
|
|
1107
1142
|
const provider = providers.find((item) => item.id === form.provider);
|
|
1108
1143
|
const credentialRefs = normalizeCredentialRefs(form.credentialRefs, provider);
|
|
@@ -1114,14 +1149,18 @@ function ConnectionForm({
|
|
|
1114
1149
|
<Modal
|
|
1115
1150
|
open={open}
|
|
1116
1151
|
onClose={onClose}
|
|
1117
|
-
title={
|
|
1152
|
+
title={
|
|
1153
|
+
form.id
|
|
1154
|
+
? t("integrations.editConnection")
|
|
1155
|
+
: t("integrations.newConnection")
|
|
1156
|
+
}
|
|
1118
1157
|
description={provider?.description}
|
|
1119
1158
|
>
|
|
1120
1159
|
<form onSubmit={onSubmit}>
|
|
1121
1160
|
<div className="grid gap-4 p-4">
|
|
1122
1161
|
<div className="grid gap-3 sm:grid-cols-2">
|
|
1123
1162
|
<div className="grid gap-1.5 text-sm">
|
|
1124
|
-
<Label>
|
|
1163
|
+
<Label>{t("integrations.provider")}</Label>
|
|
1125
1164
|
<Select
|
|
1126
1165
|
value={form.provider}
|
|
1127
1166
|
onValueChange={(value) => {
|
|
@@ -1139,7 +1178,7 @@ function ConnectionForm({
|
|
|
1139
1178
|
}}
|
|
1140
1179
|
>
|
|
1141
1180
|
<SelectTrigger>
|
|
1142
|
-
<SelectValue placeholder="
|
|
1181
|
+
<SelectValue placeholder={t("integrations.chooseProvider")} />
|
|
1143
1182
|
</SelectTrigger>
|
|
1144
1183
|
<SelectContent>
|
|
1145
1184
|
{providers.map((item) => (
|
|
@@ -1151,7 +1190,7 @@ function ConnectionForm({
|
|
|
1151
1190
|
</Select>
|
|
1152
1191
|
</div>
|
|
1153
1192
|
<div className="grid gap-1.5 text-sm">
|
|
1154
|
-
<Label>
|
|
1193
|
+
<Label>{t("integrations.statusLabel")}</Label>
|
|
1155
1194
|
<Select
|
|
1156
1195
|
value={form.status}
|
|
1157
1196
|
onValueChange={(value) =>
|
|
@@ -1165,9 +1204,9 @@ function ConnectionForm({
|
|
|
1165
1204
|
<SelectValue />
|
|
1166
1205
|
</SelectTrigger>
|
|
1167
1206
|
<SelectContent>
|
|
1168
|
-
{Object.
|
|
1207
|
+
{Object.keys(STATUS_CLASSES).map((value) => (
|
|
1169
1208
|
<SelectItem key={value} value={value}>
|
|
1170
|
-
{
|
|
1209
|
+
{statusLabel(t, value as WorkspaceConnectionStatus)}
|
|
1171
1210
|
</SelectItem>
|
|
1172
1211
|
))}
|
|
1173
1212
|
</SelectContent>
|
|
@@ -1177,42 +1216,44 @@ function ConnectionForm({
|
|
|
1177
1216
|
|
|
1178
1217
|
<div className="grid gap-3 sm:grid-cols-2">
|
|
1179
1218
|
<TextField
|
|
1180
|
-
label="
|
|
1219
|
+
label={t("integrations.label")}
|
|
1181
1220
|
value={form.label}
|
|
1182
1221
|
onChange={(value) => onChange({ ...form, label: value })}
|
|
1183
1222
|
required
|
|
1184
1223
|
/>
|
|
1185
1224
|
<TextField
|
|
1186
|
-
label="
|
|
1225
|
+
label={t("integrations.accountLabel")}
|
|
1187
1226
|
value={form.accountLabel}
|
|
1188
1227
|
onChange={(value) => onChange({ ...form, accountLabel: value })}
|
|
1189
|
-
placeholder="
|
|
1228
|
+
placeholder={t("integrations.accountLabelPlaceholder")}
|
|
1190
1229
|
/>
|
|
1191
1230
|
</div>
|
|
1192
1231
|
|
|
1193
1232
|
<div className="grid gap-3 sm:grid-cols-2">
|
|
1194
1233
|
<TextField
|
|
1195
|
-
label="
|
|
1234
|
+
label={t("integrations.accountId")}
|
|
1196
1235
|
value={form.accountId}
|
|
1197
1236
|
onChange={(value) => onChange({ ...form, accountId: value })}
|
|
1198
|
-
placeholder="
|
|
1237
|
+
placeholder={t("integrations.accountIdPlaceholder")}
|
|
1199
1238
|
/>
|
|
1200
1239
|
<TextField
|
|
1201
|
-
label="
|
|
1240
|
+
label={t("integrations.scopes")}
|
|
1202
1241
|
value={form.scopes}
|
|
1203
1242
|
onChange={(value) => onChange({ ...form, scopes: value })}
|
|
1204
|
-
placeholder="
|
|
1243
|
+
placeholder={t("integrations.scopesPlaceholder")}
|
|
1205
1244
|
/>
|
|
1206
1245
|
</div>
|
|
1207
1246
|
|
|
1208
1247
|
<div className="rounded-md border bg-background p-3">
|
|
1209
1248
|
<div className="flex items-center justify-between gap-3">
|
|
1210
1249
|
<div>
|
|
1211
|
-
<div className="text-sm font-medium">
|
|
1250
|
+
<div className="text-sm font-medium">
|
|
1251
|
+
{t("integrations.accessMode")}
|
|
1252
|
+
</div>
|
|
1212
1253
|
<div className="text-xs text-muted-foreground">
|
|
1213
1254
|
{form.allApps
|
|
1214
|
-
? "
|
|
1215
|
-
: "
|
|
1255
|
+
? t("integrations.allAppsCanReuseConnection")
|
|
1256
|
+
: t("integrations.onlySelectedAppsCanReuseConnection")}
|
|
1216
1257
|
</div>
|
|
1217
1258
|
</div>
|
|
1218
1259
|
<Switch
|
|
@@ -1220,7 +1261,7 @@ function ConnectionForm({
|
|
|
1220
1261
|
onCheckedChange={(checked) =>
|
|
1221
1262
|
onChange({ ...form, allApps: checked })
|
|
1222
1263
|
}
|
|
1223
|
-
aria-label="
|
|
1264
|
+
aria-label={t("integrations.grantAllWorkspaceAppsAria")}
|
|
1224
1265
|
/>
|
|
1225
1266
|
</div>
|
|
1226
1267
|
{!form.allApps ? (
|
|
@@ -1271,11 +1312,11 @@ function ConnectionForm({
|
|
|
1271
1312
|
onClick={onClose}
|
|
1272
1313
|
disabled={saving}
|
|
1273
1314
|
>
|
|
1274
|
-
|
|
1315
|
+
{t("integrations.cancel")}
|
|
1275
1316
|
</Button>
|
|
1276
1317
|
<Button type="submit" disabled={saving || !form.label.trim()}>
|
|
1277
1318
|
{saving ? <IconRefresh size={14} className="animate-spin" /> : null}
|
|
1278
|
-
|
|
1319
|
+
{t("integrations.saveConnection")}
|
|
1279
1320
|
</Button>
|
|
1280
1321
|
</DialogFooter>
|
|
1281
1322
|
</form>
|
|
@@ -1320,6 +1361,7 @@ function CredentialRefsEditor({
|
|
|
1320
1361
|
missingRefs: string[];
|
|
1321
1362
|
onChange: (refs: WorkspaceConnectionCredentialRef[]) => void;
|
|
1322
1363
|
}) {
|
|
1364
|
+
const t = useT();
|
|
1323
1365
|
const providerKeys = new Map(
|
|
1324
1366
|
provider?.credentialKeys.map((credential) => [
|
|
1325
1367
|
credential.key,
|
|
@@ -1332,9 +1374,11 @@ function CredentialRefsEditor({
|
|
|
1332
1374
|
<div className="rounded-md border bg-background p-3">
|
|
1333
1375
|
<div className="flex flex-wrap items-start justify-between gap-3">
|
|
1334
1376
|
<div>
|
|
1335
|
-
<div className="text-sm font-medium">
|
|
1377
|
+
<div className="text-sm font-medium">
|
|
1378
|
+
{t("integrations.credentialRefs")}
|
|
1379
|
+
</div>
|
|
1336
1380
|
<div className="mt-1 text-xs text-muted-foreground">
|
|
1337
|
-
|
|
1381
|
+
{t("integrations.credentialRefsDescription")}
|
|
1338
1382
|
</div>
|
|
1339
1383
|
</div>
|
|
1340
1384
|
<Button
|
|
@@ -1344,7 +1388,7 @@ function CredentialRefsEditor({
|
|
|
1344
1388
|
onClick={() => onChange(appendCredentialRef(refs, provider))}
|
|
1345
1389
|
>
|
|
1346
1390
|
<IconPlus size={14} />
|
|
1347
|
-
|
|
1391
|
+
{t("integrations.addRef")}
|
|
1348
1392
|
</Button>
|
|
1349
1393
|
</div>
|
|
1350
1394
|
|
|
@@ -1358,10 +1402,10 @@ function CredentialRefsEditor({
|
|
|
1358
1402
|
>
|
|
1359
1403
|
<div className="grid min-w-0 gap-1.5 text-sm">
|
|
1360
1404
|
<Label className="flex items-center gap-1.5">
|
|
1361
|
-
|
|
1405
|
+
{t("integrations.refName")}
|
|
1362
1406
|
{credential?.required ? (
|
|
1363
1407
|
<Pill className="h-5 border-border bg-muted px-1.5 text-[11px]">
|
|
1364
|
-
|
|
1408
|
+
{t("integrations.required")}
|
|
1365
1409
|
</Pill>
|
|
1366
1410
|
) : null}
|
|
1367
1411
|
</Label>
|
|
@@ -1391,7 +1435,7 @@ function CredentialRefsEditor({
|
|
|
1391
1435
|
) : null}
|
|
1392
1436
|
</div>
|
|
1393
1437
|
<div className="grid gap-1.5 text-sm">
|
|
1394
|
-
<Label>
|
|
1438
|
+
<Label>{t("integrations.scope")}</Label>
|
|
1395
1439
|
<Select
|
|
1396
1440
|
value={ref.scope ?? "org"}
|
|
1397
1441
|
onValueChange={(value) =>
|
|
@@ -1407,9 +1451,15 @@ function CredentialRefsEditor({
|
|
|
1407
1451
|
<SelectValue />
|
|
1408
1452
|
</SelectTrigger>
|
|
1409
1453
|
<SelectContent>
|
|
1410
|
-
<SelectItem value="org">
|
|
1411
|
-
|
|
1412
|
-
|
|
1454
|
+
<SelectItem value="org">
|
|
1455
|
+
{t("integrations.scopeOrg")}
|
|
1456
|
+
</SelectItem>
|
|
1457
|
+
<SelectItem value="workspace">
|
|
1458
|
+
{t("integrations.scopeWorkspace")}
|
|
1459
|
+
</SelectItem>
|
|
1460
|
+
<SelectItem value="user">
|
|
1461
|
+
{t("integrations.scopeUser")}
|
|
1462
|
+
</SelectItem>
|
|
1413
1463
|
</SelectContent>
|
|
1414
1464
|
</Select>
|
|
1415
1465
|
</div>
|
|
@@ -1421,7 +1471,9 @@ function CredentialRefsEditor({
|
|
|
1421
1471
|
onClick={() =>
|
|
1422
1472
|
onChange(rows.filter((_, itemIndex) => itemIndex !== index))
|
|
1423
1473
|
}
|
|
1424
|
-
aria-label={
|
|
1474
|
+
aria-label={t("integrations.removeRefAria", {
|
|
1475
|
+
ref: ref.key || t("integrations.credentialRef"),
|
|
1476
|
+
})}
|
|
1425
1477
|
>
|
|
1426
1478
|
<IconTrash size={14} />
|
|
1427
1479
|
</Button>
|
|
@@ -1434,7 +1486,11 @@ function CredentialRefsEditor({
|
|
|
1434
1486
|
{missingRefs.length > 0 ? (
|
|
1435
1487
|
<div className="mt-3 flex items-start gap-2 rounded-md border border-amber-500/20 bg-amber-500/10 px-3 py-2 text-xs text-amber-700 dark:text-amber-400">
|
|
1436
1488
|
<IconAlertTriangle size={14} className="mt-0.5 shrink-0" />
|
|
1437
|
-
<span>
|
|
1489
|
+
<span>
|
|
1490
|
+
{t("integrations.missingRequiredRefs", {
|
|
1491
|
+
refs: missingRefs.join(", "),
|
|
1492
|
+
})}
|
|
1493
|
+
</span>
|
|
1438
1494
|
</div>
|
|
1439
1495
|
) : null}
|
|
1440
1496
|
</div>
|
|
@@ -1472,6 +1528,7 @@ function SetupWizard({
|
|
|
1472
1528
|
onClose: () => void;
|
|
1473
1529
|
onSubmit: () => void;
|
|
1474
1530
|
}) {
|
|
1531
|
+
const t = useT();
|
|
1475
1532
|
const provider =
|
|
1476
1533
|
plan?.provider ?? providers.find((item) => item.id === state?.providerId);
|
|
1477
1534
|
const credentialRefs = form
|
|
@@ -1483,9 +1540,9 @@ function SetupWizard({
|
|
|
1483
1540
|
);
|
|
1484
1541
|
const selectedApps = form?.selectedApps ?? [];
|
|
1485
1542
|
const stepItems = [
|
|
1486
|
-
{ label: "
|
|
1487
|
-
{ label: "
|
|
1488
|
-
{ label: "
|
|
1543
|
+
{ label: t("integrations.provider"), icon: IconPlugConnected },
|
|
1544
|
+
{ label: t("integrations.refs"), icon: IconKey },
|
|
1545
|
+
{ label: t("integrations.access"), icon: IconShieldCheck },
|
|
1489
1546
|
];
|
|
1490
1547
|
const canAdvance =
|
|
1491
1548
|
step === 0
|
|
@@ -1524,8 +1581,15 @@ function SetupWizard({
|
|
|
1524
1581
|
onClose={onClose}
|
|
1525
1582
|
title={
|
|
1526
1583
|
state?.mode === "repair"
|
|
1527
|
-
?
|
|
1528
|
-
|
|
1584
|
+
? t("integrations.repairConnectionTitle", {
|
|
1585
|
+
connection:
|
|
1586
|
+
form?.label ||
|
|
1587
|
+
provider?.label ||
|
|
1588
|
+
t("integrations.connectionFallback"),
|
|
1589
|
+
})
|
|
1590
|
+
: t("integrations.connectProviderTitle", {
|
|
1591
|
+
provider: provider?.label || t("integrations.providerFallback"),
|
|
1592
|
+
})
|
|
1529
1593
|
}
|
|
1530
1594
|
description={provider?.description}
|
|
1531
1595
|
>
|
|
@@ -1558,7 +1622,7 @@ function SetupWizard({
|
|
|
1558
1622
|
|
|
1559
1623
|
{loading ? (
|
|
1560
1624
|
<div className="rounded-lg border border-dashed px-6 py-10 text-center text-sm text-muted-foreground">
|
|
1561
|
-
|
|
1625
|
+
{t("integrations.loadingSetupPlan")}
|
|
1562
1626
|
</div>
|
|
1563
1627
|
) : null}
|
|
1564
1628
|
|
|
@@ -1582,14 +1646,16 @@ function SetupWizard({
|
|
|
1582
1646
|
<div className="grid gap-4">
|
|
1583
1647
|
<div className="grid gap-3 sm:grid-cols-2">
|
|
1584
1648
|
<div className="grid gap-1.5 text-sm">
|
|
1585
|
-
<Label>
|
|
1649
|
+
<Label>{t("integrations.provider")}</Label>
|
|
1586
1650
|
<Select
|
|
1587
1651
|
value={form.provider}
|
|
1588
1652
|
disabled={state?.mode === "repair"}
|
|
1589
1653
|
onValueChange={onProviderChange}
|
|
1590
1654
|
>
|
|
1591
1655
|
<SelectTrigger>
|
|
1592
|
-
<SelectValue
|
|
1656
|
+
<SelectValue
|
|
1657
|
+
placeholder={t("integrations.chooseProvider")}
|
|
1658
|
+
/>
|
|
1593
1659
|
</SelectTrigger>
|
|
1594
1660
|
<SelectContent>
|
|
1595
1661
|
{providers.map((item) => (
|
|
@@ -1601,7 +1667,7 @@ function SetupWizard({
|
|
|
1601
1667
|
</Select>
|
|
1602
1668
|
</div>
|
|
1603
1669
|
<TextField
|
|
1604
|
-
label="
|
|
1670
|
+
label={t("integrations.connectionLabel")}
|
|
1605
1671
|
value={form.label}
|
|
1606
1672
|
onChange={(value) => onChange({ ...form, label: value })}
|
|
1607
1673
|
required
|
|
@@ -1609,24 +1675,26 @@ function SetupWizard({
|
|
|
1609
1675
|
</div>
|
|
1610
1676
|
<div className="grid gap-3 sm:grid-cols-2">
|
|
1611
1677
|
<TextField
|
|
1612
|
-
label="
|
|
1678
|
+
label={t("integrations.accountLabel")}
|
|
1613
1679
|
value={form.accountLabel}
|
|
1614
1680
|
onChange={(value) =>
|
|
1615
1681
|
onChange({ ...form, accountLabel: value })
|
|
1616
1682
|
}
|
|
1617
|
-
placeholder="
|
|
1683
|
+
placeholder={t("integrations.accountLabelPlaceholder")}
|
|
1618
1684
|
/>
|
|
1619
1685
|
<TextField
|
|
1620
|
-
label="
|
|
1686
|
+
label={t("integrations.accountId")}
|
|
1621
1687
|
value={form.accountId}
|
|
1622
1688
|
onChange={(value) =>
|
|
1623
1689
|
onChange({ ...form, accountId: value })
|
|
1624
1690
|
}
|
|
1625
|
-
placeholder="
|
|
1691
|
+
placeholder={t("integrations.accountIdPlaceholder")}
|
|
1626
1692
|
/>
|
|
1627
1693
|
</div>
|
|
1628
1694
|
<div className="rounded-md border bg-background p-3">
|
|
1629
|
-
<div className="text-sm font-medium">
|
|
1695
|
+
<div className="text-sm font-medium">
|
|
1696
|
+
{t("integrations.providerPlan")}
|
|
1697
|
+
</div>
|
|
1630
1698
|
<div className="mt-2 flex flex-wrap gap-1.5">
|
|
1631
1699
|
{provider.capabilities.map((capability) => (
|
|
1632
1700
|
<Pill key={capability} className="border-border bg-muted">
|
|
@@ -1680,10 +1748,11 @@ function SetupWizard({
|
|
|
1680
1748
|
className="mt-0.5"
|
|
1681
1749
|
/>
|
|
1682
1750
|
<span className="grid gap-1">
|
|
1683
|
-
<span className="text-sm font-medium">
|
|
1751
|
+
<span className="text-sm font-medium">
|
|
1752
|
+
{t("integrations.selectedApps")}
|
|
1753
|
+
</span>
|
|
1684
1754
|
<span className="text-xs leading-5 text-muted-foreground">
|
|
1685
|
-
|
|
1686
|
-
account.
|
|
1755
|
+
{t("integrations.selectedAppsDescription")}
|
|
1687
1756
|
</span>
|
|
1688
1757
|
</span>
|
|
1689
1758
|
</Label>
|
|
@@ -1697,9 +1766,11 @@ function SetupWizard({
|
|
|
1697
1766
|
className="mt-0.5"
|
|
1698
1767
|
/>
|
|
1699
1768
|
<span className="grid gap-1">
|
|
1700
|
-
<span className="text-sm font-medium">
|
|
1769
|
+
<span className="text-sm font-medium">
|
|
1770
|
+
{t("integrations.allApps")}
|
|
1771
|
+
</span>
|
|
1701
1772
|
<span className="text-xs leading-5 text-muted-foreground">
|
|
1702
|
-
|
|
1773
|
+
{t("integrations.allAppsDescription")}
|
|
1703
1774
|
</span>
|
|
1704
1775
|
</span>
|
|
1705
1776
|
</Label>
|
|
@@ -1707,7 +1778,9 @@ function SetupWizard({
|
|
|
1707
1778
|
|
|
1708
1779
|
{form.grantMode === "selected-apps" ? (
|
|
1709
1780
|
<div className="rounded-md border bg-background p-3">
|
|
1710
|
-
<div className="mb-3 text-sm font-medium">
|
|
1781
|
+
<div className="mb-3 text-sm font-medium">
|
|
1782
|
+
{t("integrations.appGrants")}
|
|
1783
|
+
</div>
|
|
1711
1784
|
<div className="grid gap-2 sm:grid-cols-2">
|
|
1712
1785
|
{suggestedGrantApps.map((app) => {
|
|
1713
1786
|
const AppIcon = app.icon;
|
|
@@ -1728,7 +1801,7 @@ function SetupWizard({
|
|
|
1728
1801
|
</span>
|
|
1729
1802
|
{app.recommended ? (
|
|
1730
1803
|
<Pill className="h-5 border-border bg-muted px-1.5 text-[11px]">
|
|
1731
|
-
|
|
1804
|
+
{t("integrations.suggested")}
|
|
1732
1805
|
</Pill>
|
|
1733
1806
|
) : null}
|
|
1734
1807
|
</span>
|
|
@@ -1747,9 +1820,12 @@ function SetupWizard({
|
|
|
1747
1820
|
),
|
|
1748
1821
|
})
|
|
1749
1822
|
}
|
|
1750
|
-
aria-label={
|
|
1751
|
-
|
|
1752
|
-
|
|
1823
|
+
aria-label={t("integrations.appGrantAria", {
|
|
1824
|
+
action: selected
|
|
1825
|
+
? t("integrations.remove")
|
|
1826
|
+
: t("integrations.grant"),
|
|
1827
|
+
app: app.label,
|
|
1828
|
+
})}
|
|
1753
1829
|
/>
|
|
1754
1830
|
</Label>
|
|
1755
1831
|
);
|
|
@@ -1757,7 +1833,7 @@ function SetupWizard({
|
|
|
1757
1833
|
</div>
|
|
1758
1834
|
{selectedApps.length === 0 ? (
|
|
1759
1835
|
<div className="mt-3 text-xs text-muted-foreground">
|
|
1760
|
-
|
|
1836
|
+
{t("integrations.chooseOneApp")}
|
|
1761
1837
|
</div>
|
|
1762
1838
|
) : null}
|
|
1763
1839
|
</div>
|
|
@@ -1775,7 +1851,7 @@ function SetupWizard({
|
|
|
1775
1851
|
onClick={onClose}
|
|
1776
1852
|
disabled={saving}
|
|
1777
1853
|
>
|
|
1778
|
-
|
|
1854
|
+
{t("integrations.cancel")}
|
|
1779
1855
|
</Button>
|
|
1780
1856
|
{step > 0 ? (
|
|
1781
1857
|
<Button
|
|
@@ -1785,7 +1861,7 @@ function SetupWizard({
|
|
|
1785
1861
|
disabled={saving}
|
|
1786
1862
|
>
|
|
1787
1863
|
<IconArrowLeft size={14} className="rtl:-scale-x-100" />
|
|
1788
|
-
|
|
1864
|
+
{t("integrations.back")}
|
|
1789
1865
|
</Button>
|
|
1790
1866
|
) : null}
|
|
1791
1867
|
{step < 2 ? (
|
|
@@ -1794,7 +1870,7 @@ function SetupWizard({
|
|
|
1794
1870
|
onClick={() => onStepChange(step + 1)}
|
|
1795
1871
|
disabled={!canAdvance || loading || saving}
|
|
1796
1872
|
>
|
|
1797
|
-
|
|
1873
|
+
{t("integrations.next")}
|
|
1798
1874
|
<IconArrowRight size={14} className="rtl:-scale-x-100" />
|
|
1799
1875
|
</Button>
|
|
1800
1876
|
) : (
|
|
@@ -1804,7 +1880,9 @@ function SetupWizard({
|
|
|
1804
1880
|
disabled={!canAdvance || loading || saving}
|
|
1805
1881
|
>
|
|
1806
1882
|
{saving ? <IconRefresh size={14} className="animate-spin" /> : null}
|
|
1807
|
-
{state?.mode === "repair"
|
|
1883
|
+
{state?.mode === "repair"
|
|
1884
|
+
? t("integrations.applyRepair")
|
|
1885
|
+
: t("integrations.createConnection")}
|
|
1808
1886
|
</Button>
|
|
1809
1887
|
)}
|
|
1810
1888
|
</DialogFooter>
|
|
@@ -1823,19 +1901,27 @@ function GrantPreview({
|
|
|
1823
1901
|
selectedAppIds: string[];
|
|
1824
1902
|
grantApps: GrantApp[];
|
|
1825
1903
|
}) {
|
|
1826
|
-
const
|
|
1904
|
+
const t = useT();
|
|
1905
|
+
const selectedLabel = summarizeAppList(selectedAppIds, grantApps, t);
|
|
1827
1906
|
return (
|
|
1828
1907
|
<div className="rounded-md border bg-muted/30 px-3 py-2 text-sm">
|
|
1829
1908
|
<div className="flex items-center gap-2 font-medium text-foreground">
|
|
1830
1909
|
<IconShieldCheck size={14} className="text-muted-foreground" />
|
|
1831
|
-
|
|
1910
|
+
{t("integrations.grantPreview")}
|
|
1832
1911
|
</div>
|
|
1833
1912
|
<p className="mt-1 text-xs leading-5 text-muted-foreground">
|
|
1834
1913
|
{grantMode === "all-apps"
|
|
1835
|
-
?
|
|
1914
|
+
? t("integrations.grantPreviewAllApps", {
|
|
1915
|
+
provider: providerLabel,
|
|
1916
|
+
})
|
|
1836
1917
|
: selectedAppIds.length > 0
|
|
1837
|
-
?
|
|
1838
|
-
|
|
1918
|
+
? t("integrations.grantPreviewSelected", {
|
|
1919
|
+
apps: selectedLabel,
|
|
1920
|
+
provider: providerLabel,
|
|
1921
|
+
})
|
|
1922
|
+
: t("integrations.grantPreviewEmpty", {
|
|
1923
|
+
provider: providerLabel,
|
|
1924
|
+
})}
|
|
1839
1925
|
</p>
|
|
1840
1926
|
</div>
|
|
1841
1927
|
);
|
|
@@ -1852,6 +1938,7 @@ function DeleteConfirm({
|
|
|
1852
1938
|
onClose: () => void;
|
|
1853
1939
|
onConfirm: () => void;
|
|
1854
1940
|
}) {
|
|
1941
|
+
const t = useT();
|
|
1855
1942
|
const { data: impact, isLoading: impactLoading } =
|
|
1856
1943
|
useActionQuery<WorkspaceConnectionImpactPreview>(
|
|
1857
1944
|
"preview-workspace-connection-impact",
|
|
@@ -1869,16 +1956,22 @@ function DeleteConfirm({
|
|
|
1869
1956
|
>
|
|
1870
1957
|
<AlertDialogContent>
|
|
1871
1958
|
<AlertDialogHeader>
|
|
1872
|
-
<AlertDialogTitle>
|
|
1959
|
+
<AlertDialogTitle>
|
|
1960
|
+
{t("integrations.deleteConnection")}
|
|
1961
|
+
</AlertDialogTitle>
|
|
1873
1962
|
<AlertDialogDescription>
|
|
1874
1963
|
{connection?.label
|
|
1875
|
-
?
|
|
1876
|
-
|
|
1964
|
+
? t("integrations.deleteConnectionDescription", {
|
|
1965
|
+
connection: connection.label,
|
|
1966
|
+
})
|
|
1967
|
+
: t("integrations.deleteSharedConnectionDescription")}
|
|
1877
1968
|
</AlertDialogDescription>
|
|
1878
1969
|
</AlertDialogHeader>
|
|
1879
1970
|
<ConnectionDeleteImpact impact={impact} loading={impactLoading} />
|
|
1880
1971
|
<AlertDialogFooter>
|
|
1881
|
-
<AlertDialogCancel disabled={deleting}>
|
|
1972
|
+
<AlertDialogCancel disabled={deleting}>
|
|
1973
|
+
{t("integrations.cancel")}
|
|
1974
|
+
</AlertDialogCancel>
|
|
1882
1975
|
<AlertDialogAction
|
|
1883
1976
|
disabled={deleting}
|
|
1884
1977
|
onClick={(event) => {
|
|
@@ -1890,7 +1983,7 @@ function DeleteConfirm({
|
|
|
1890
1983
|
{deleting ? (
|
|
1891
1984
|
<IconRefresh size={14} className="animate-spin" />
|
|
1892
1985
|
) : null}
|
|
1893
|
-
|
|
1986
|
+
{t("integrations.delete")}
|
|
1894
1987
|
</AlertDialogAction>
|
|
1895
1988
|
</AlertDialogFooter>
|
|
1896
1989
|
</AlertDialogContent>
|
|
@@ -1905,10 +1998,11 @@ function ConnectionDeleteImpact({
|
|
|
1905
1998
|
impact?: WorkspaceConnectionImpactPreview;
|
|
1906
1999
|
loading: boolean;
|
|
1907
2000
|
}) {
|
|
2001
|
+
const t = useT();
|
|
1908
2002
|
if (loading) {
|
|
1909
2003
|
return (
|
|
1910
2004
|
<div className="rounded-md border bg-muted/30 px-3 py-2 text-sm text-muted-foreground">
|
|
1911
|
-
|
|
2005
|
+
{t("integrations.checkingAffectedApps")}
|
|
1912
2006
|
</div>
|
|
1913
2007
|
);
|
|
1914
2008
|
}
|
|
@@ -1927,22 +2021,23 @@ function ConnectionDeleteImpact({
|
|
|
1927
2021
|
<div className="flex flex-wrap items-center gap-2">
|
|
1928
2022
|
<Pill className="border-border bg-background text-muted-foreground">
|
|
1929
2023
|
{impact.impactSummary.hasAllAppsAccess
|
|
1930
|
-
? "
|
|
1931
|
-
: "
|
|
2024
|
+
? t("integrations.allAppConnection")
|
|
2025
|
+
: t("integrations.selectedGrants")}
|
|
1932
2026
|
</Pill>
|
|
1933
2027
|
{impact.impactSummary.usageTracked ? (
|
|
1934
2028
|
<Pill className="border-border bg-background text-muted-foreground">
|
|
1935
2029
|
<IconClock size={12} />
|
|
1936
|
-
{formatTimestamp(impact.impactSummary.lastUsedAt)}
|
|
2030
|
+
{formatTimestamp(t, impact.impactSummary.lastUsedAt)}
|
|
1937
2031
|
</Pill>
|
|
1938
2032
|
) : null}
|
|
1939
2033
|
</div>
|
|
1940
2034
|
<p className="mt-2 leading-5 text-muted-foreground">
|
|
1941
2035
|
{impact.likelyAffectedApps.length > 0
|
|
1942
|
-
?
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
2036
|
+
? t("integrations.likelyAffected", {
|
|
2037
|
+
apps: appLabels.join(", "),
|
|
2038
|
+
suffix: extraCount ? ` +${extraCount}` : "",
|
|
2039
|
+
})
|
|
2040
|
+
: t("integrations.noCurrentAppGrants")}
|
|
1946
2041
|
</p>
|
|
1947
2042
|
<p className="mt-1 leading-5 text-muted-foreground">
|
|
1948
2043
|
{impact.recommendedConfirmation.body}
|
|
@@ -1952,6 +2047,7 @@ function ConnectionDeleteImpact({
|
|
|
1952
2047
|
}
|
|
1953
2048
|
|
|
1954
2049
|
export default function WorkspaceIntegrationsRoute() {
|
|
2050
|
+
const t = useT();
|
|
1955
2051
|
const queryClient = useQueryClient();
|
|
1956
2052
|
const [form, setForm] = useState<ConnectionFormState | null>(null);
|
|
1957
2053
|
const [setupWizard, setSetupWizard] = useState<SetupWizardState | null>(null);
|
|
@@ -2074,10 +2170,16 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2074
2170
|
credentialRefs,
|
|
2075
2171
|
allowedApps: form.allApps ? [] : form.selectedApps,
|
|
2076
2172
|
});
|
|
2077
|
-
toast.success(
|
|
2173
|
+
toast.success(
|
|
2174
|
+
form.id
|
|
2175
|
+
? t("integrations.connectionUpdated")
|
|
2176
|
+
: t("integrations.connectionCreated"),
|
|
2177
|
+
);
|
|
2078
2178
|
setForm(null);
|
|
2079
2179
|
} catch (error) {
|
|
2080
|
-
toast.error(
|
|
2180
|
+
toast.error(
|
|
2181
|
+
error instanceof Error ? error.message : t("integrations.failedToSave"),
|
|
2182
|
+
);
|
|
2081
2183
|
}
|
|
2082
2184
|
}
|
|
2083
2185
|
|
|
@@ -2100,7 +2202,9 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2100
2202
|
selectedApps: setupForm.selectedApps,
|
|
2101
2203
|
});
|
|
2102
2204
|
toast.success(
|
|
2103
|
-
setupForm.connectionId
|
|
2205
|
+
setupForm.connectionId
|
|
2206
|
+
? t("integrations.connectionRepaired")
|
|
2207
|
+
: t("integrations.connectionCreated"),
|
|
2104
2208
|
);
|
|
2105
2209
|
setSetupWizard(null);
|
|
2106
2210
|
setSetupForm(null);
|
|
@@ -2108,7 +2212,9 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2108
2212
|
queryClient.invalidateQueries({ queryKey: CONNECTION_QUERY_KEY });
|
|
2109
2213
|
} catch (error) {
|
|
2110
2214
|
toast.error(
|
|
2111
|
-
error instanceof Error
|
|
2215
|
+
error instanceof Error
|
|
2216
|
+
? error.message
|
|
2217
|
+
: t("integrations.failedToApplySetup"),
|
|
2112
2218
|
);
|
|
2113
2219
|
}
|
|
2114
2220
|
}
|
|
@@ -2179,13 +2285,17 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2179
2285
|
knownAppIds,
|
|
2180
2286
|
});
|
|
2181
2287
|
queryClient.invalidateQueries({ queryKey: CONNECTION_QUERY_KEY });
|
|
2182
|
-
toast.success(
|
|
2288
|
+
toast.success(
|
|
2289
|
+
granted ? t("integrations.grantAdded") : t("integrations.grantRevoked"),
|
|
2290
|
+
);
|
|
2183
2291
|
} catch (error) {
|
|
2184
2292
|
if (previous) {
|
|
2185
2293
|
queryClient.setQueryData(CONNECTION_QUERY_KEY, previous);
|
|
2186
2294
|
}
|
|
2187
2295
|
toast.error(
|
|
2188
|
-
error instanceof Error
|
|
2296
|
+
error instanceof Error
|
|
2297
|
+
? error.message
|
|
2298
|
+
: t("integrations.failedToUpdateGrant"),
|
|
2189
2299
|
);
|
|
2190
2300
|
}
|
|
2191
2301
|
}
|
|
@@ -2210,14 +2320,16 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2210
2320
|
);
|
|
2211
2321
|
try {
|
|
2212
2322
|
await deleteConnection.mutateAsync({ id: deleteTarget.id });
|
|
2213
|
-
toast.success("
|
|
2323
|
+
toast.success(t("integrations.connectionDeleted"));
|
|
2214
2324
|
setDeleteTarget(null);
|
|
2215
2325
|
} catch (error) {
|
|
2216
2326
|
if (previous) {
|
|
2217
2327
|
queryClient.setQueryData(CONNECTION_QUERY_KEY, previous);
|
|
2218
2328
|
}
|
|
2219
2329
|
toast.error(
|
|
2220
|
-
error instanceof Error
|
|
2330
|
+
error instanceof Error
|
|
2331
|
+
? error.message
|
|
2332
|
+
: t("integrations.failedToDeleteConnection"),
|
|
2221
2333
|
);
|
|
2222
2334
|
}
|
|
2223
2335
|
}
|
|
@@ -2248,8 +2360,8 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2248
2360
|
|
|
2249
2361
|
return (
|
|
2250
2362
|
<DispatchShell
|
|
2251
|
-
title="
|
|
2252
|
-
description="
|
|
2363
|
+
title={t("integrations.title")}
|
|
2364
|
+
description={t("integrations.description")}
|
|
2253
2365
|
>
|
|
2254
2366
|
<div className="space-y-6">
|
|
2255
2367
|
<section
|
|
@@ -2260,53 +2372,60 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2260
2372
|
>
|
|
2261
2373
|
<SummaryCard
|
|
2262
2374
|
icon={IconCheck}
|
|
2263
|
-
label="
|
|
2375
|
+
label={t("integrations.readyProviders")}
|
|
2264
2376
|
value={`${data.counts.readyProviders ?? 0}/${providers.length}`}
|
|
2265
|
-
detail="
|
|
2377
|
+
detail={t("integrations.readyProvidersDetail")}
|
|
2266
2378
|
/>
|
|
2267
2379
|
<SummaryCard
|
|
2268
2380
|
icon={IconPlugConnected}
|
|
2269
|
-
label="
|
|
2381
|
+
label={t("integrations.connections")}
|
|
2270
2382
|
value={String(connections.length)}
|
|
2271
|
-
detail={
|
|
2383
|
+
detail={t("integrations.connectedCount", {
|
|
2384
|
+
count: connectedCount,
|
|
2385
|
+
})}
|
|
2272
2386
|
/>
|
|
2273
2387
|
<SummaryCard
|
|
2274
2388
|
icon={IconShieldCheck}
|
|
2275
|
-
label="
|
|
2389
|
+
label={t("integrations.appGrants")}
|
|
2276
2390
|
value={String(data.grants.length)}
|
|
2277
|
-
detail={
|
|
2278
|
-
data.counts.
|
|
2279
|
-
|
|
2391
|
+
detail={t("integrations.appGrantsDetail", {
|
|
2392
|
+
allAppCount: data.counts.allAppConnections ?? 0,
|
|
2393
|
+
selectedCount: data.counts.selectedAppConnections ?? 0,
|
|
2394
|
+
})}
|
|
2280
2395
|
/>
|
|
2281
2396
|
<SummaryCard
|
|
2282
2397
|
icon={IconKey}
|
|
2283
|
-
label="
|
|
2398
|
+
label={t("integrations.keyHealth")}
|
|
2284
2399
|
value={
|
|
2285
2400
|
connectionsMissingKeys === 0
|
|
2286
|
-
? "
|
|
2287
|
-
:
|
|
2401
|
+
? t("integrations.healthy")
|
|
2402
|
+
: t("integrations.missingCount", {
|
|
2403
|
+
count: connectionsMissingKeys,
|
|
2404
|
+
})
|
|
2288
2405
|
}
|
|
2289
2406
|
detail={
|
|
2290
2407
|
attentionCount
|
|
2291
|
-
?
|
|
2292
|
-
|
|
2293
|
-
}
|
|
2294
|
-
: "
|
|
2408
|
+
? t("integrations.connectionNeedsAttention", {
|
|
2409
|
+
count: attentionCount,
|
|
2410
|
+
})
|
|
2411
|
+
: t("integrations.requiredRefsPresent")
|
|
2295
2412
|
}
|
|
2296
2413
|
/>
|
|
2297
2414
|
{usageTracked ? (
|
|
2298
2415
|
<SummaryCard
|
|
2299
2416
|
icon={IconClock}
|
|
2300
|
-
label="
|
|
2417
|
+
label={t("integrations.usage")}
|
|
2301
2418
|
value={
|
|
2302
2419
|
Number.isFinite(mostRecentUsage)
|
|
2303
|
-
? formatTimestamp(new Date(mostRecentUsage).toISOString())
|
|
2304
|
-
: "
|
|
2420
|
+
? formatTimestamp(t, new Date(mostRecentUsage).toISOString())
|
|
2421
|
+
: t("integrations.time.neverUsed")
|
|
2305
2422
|
}
|
|
2306
2423
|
detail={
|
|
2307
2424
|
neverUsedCount
|
|
2308
|
-
?
|
|
2309
|
-
|
|
2425
|
+
? t("integrations.neverUsedCount", {
|
|
2426
|
+
count: neverUsedCount,
|
|
2427
|
+
})
|
|
2428
|
+
: t("integrations.allTrackedAccountsHaveUsage")
|
|
2310
2429
|
}
|
|
2311
2430
|
/>
|
|
2312
2431
|
) : null}
|
|
@@ -2316,7 +2435,7 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2316
2435
|
|
|
2317
2436
|
{connectionsQuery.isLoading ? (
|
|
2318
2437
|
<div className="rounded-lg border border-dashed px-6 py-12 text-center text-sm text-muted-foreground">
|
|
2319
|
-
|
|
2438
|
+
{t("integrations.loadingWorkspaceIntegrations")}
|
|
2320
2439
|
</div>
|
|
2321
2440
|
) : null}
|
|
2322
2441
|
|
|
@@ -2324,10 +2443,12 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2324
2443
|
<div className="mb-3 flex items-center justify-between gap-3">
|
|
2325
2444
|
<div>
|
|
2326
2445
|
<h2 className="text-sm font-semibold text-foreground">
|
|
2327
|
-
|
|
2446
|
+
{t("integrations.providerCatalog")}
|
|
2328
2447
|
</h2>
|
|
2329
2448
|
<p className="text-xs text-muted-foreground">
|
|
2330
|
-
{
|
|
2449
|
+
{t("integrations.providersAvailable", {
|
|
2450
|
+
count: providers.length,
|
|
2451
|
+
})}
|
|
2331
2452
|
</p>
|
|
2332
2453
|
</div>
|
|
2333
2454
|
</div>
|
|
@@ -2347,14 +2468,14 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2347
2468
|
<div className="mb-3 flex items-center justify-between gap-3">
|
|
2348
2469
|
<div>
|
|
2349
2470
|
<h2 className="text-sm font-semibold text-foreground">
|
|
2350
|
-
|
|
2471
|
+
{t("integrations.connectedAccounts")}
|
|
2351
2472
|
</h2>
|
|
2352
2473
|
<p className="text-xs text-muted-foreground">
|
|
2353
2474
|
{connections.length === 0
|
|
2354
|
-
? "
|
|
2355
|
-
:
|
|
2356
|
-
connections.length
|
|
2357
|
-
}
|
|
2475
|
+
? t("integrations.noSharedConnectionsYet")
|
|
2476
|
+
: t("integrations.savedConnectionCount", {
|
|
2477
|
+
count: connections.length,
|
|
2478
|
+
})}
|
|
2358
2479
|
</p>
|
|
2359
2480
|
</div>
|
|
2360
2481
|
</div>
|
|
@@ -2365,12 +2486,10 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2365
2486
|
className="mx-auto text-muted-foreground"
|
|
2366
2487
|
/>
|
|
2367
2488
|
<p className="mt-3 text-sm font-medium text-foreground">
|
|
2368
|
-
|
|
2489
|
+
{t("integrations.noSharedAccountsYet")}
|
|
2369
2490
|
</p>
|
|
2370
2491
|
<p className="mx-auto mt-1 max-w-md text-sm leading-5 text-muted-foreground">
|
|
2371
|
-
|
|
2372
|
-
names, then grant the shared account to Brain, Analytics, Mail,
|
|
2373
|
-
Dispatch, or another workspace app.
|
|
2492
|
+
{t("integrations.emptyConnectedAccountsDescription")}
|
|
2374
2493
|
</p>
|
|
2375
2494
|
</div>
|
|
2376
2495
|
) : (
|
|
@@ -2442,6 +2561,7 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
2442
2561
|
}
|
|
2443
2562
|
|
|
2444
2563
|
function IntegrationOnboarding() {
|
|
2564
|
+
const t = useT();
|
|
2445
2565
|
const steps: Array<{
|
|
2446
2566
|
icon: IconComponent;
|
|
2447
2567
|
title: string;
|
|
@@ -2449,19 +2569,18 @@ function IntegrationOnboarding() {
|
|
|
2449
2569
|
}> = [
|
|
2450
2570
|
{
|
|
2451
2571
|
icon: IconPlugConnected,
|
|
2452
|
-
title: "
|
|
2453
|
-
detail:
|
|
2454
|
-
"Save safe account metadata and credential ref names in Dispatch.",
|
|
2572
|
+
title: t("integrations.onboardingConnectTitle"),
|
|
2573
|
+
detail: t("integrations.onboardingConnectDetail"),
|
|
2455
2574
|
},
|
|
2456
2575
|
{
|
|
2457
2576
|
icon: IconShieldCheck,
|
|
2458
|
-
title: "
|
|
2459
|
-
detail: "
|
|
2577
|
+
title: t("integrations.onboardingGrantTitle"),
|
|
2578
|
+
detail: t("integrations.onboardingGrantDetail"),
|
|
2460
2579
|
},
|
|
2461
2580
|
{
|
|
2462
2581
|
icon: IconDatabase,
|
|
2463
|
-
title: "
|
|
2464
|
-
detail: "
|
|
2582
|
+
title: t("integrations.onboardingLocalTitle"),
|
|
2583
|
+
detail: t("integrations.onboardingLocalDetail"),
|
|
2465
2584
|
},
|
|
2466
2585
|
];
|
|
2467
2586
|
|
|
@@ -2470,11 +2589,10 @@ function IntegrationOnboarding() {
|
|
|
2470
2589
|
<div className="grid gap-3 lg:grid-cols-[minmax(0,0.9fr)_minmax(0,1.6fr)] lg:items-center">
|
|
2471
2590
|
<div>
|
|
2472
2591
|
<h2 className="text-sm font-semibold text-foreground">
|
|
2473
|
-
|
|
2592
|
+
{t("integrations.onboardingTitle")}
|
|
2474
2593
|
</h2>
|
|
2475
2594
|
<p className="mt-1 text-sm leading-5 text-muted-foreground">
|
|
2476
|
-
|
|
2477
|
-
the account.
|
|
2595
|
+
{t("integrations.onboardingDescription")}
|
|
2478
2596
|
</p>
|
|
2479
2597
|
</div>
|
|
2480
2598
|
<div className="grid gap-2 sm:grid-cols-3">
|