Spaces:
Runtime error
Runtime error
github-actions[bot]
commited on
Commit
Β·
b5d34cb
0
Parent(s):
Deploy Agent Tide Demo to HF Space with LFS
Browse files- .chainlit/config.toml +88 -0
- .chainlit/translations/bn.json +214 -0
- .chainlit/translations/en-US.json +214 -0
- .chainlit/translations/gu.json +214 -0
- .chainlit/translations/he-IL.json +214 -0
- .chainlit/translations/hi.json +214 -0
- .chainlit/translations/ja.json +214 -0
- .chainlit/translations/kn.json +214 -0
- .chainlit/translations/ml.json +214 -0
- .chainlit/translations/mr.json +214 -0
- .chainlit/translations/nl-NL.json +214 -0
- .chainlit/translations/nl.json +214 -0
- .chainlit/translations/ta.json +214 -0
- .chainlit/translations/te.json +214 -0
- .chainlit/translations/zh-CN.json +214 -0
- .gitattributes +5 -0
- Dockerfile +31 -0
- README.md +10 -0
- api.py +84 -0
- app.py +454 -0
- chainlit.md +182 -0
- docker-compose.yaml +11 -0
- git_utils.py +177 -0
- public/agent-tide-demo.gif +3 -0
- public/avatars/agent_tide.png +3 -0
- public/codetide-banner.png +3 -0
- public/diagram.svg +22 -0
- public/docker.svg +40 -0
- public/elements/HtmlRenderer.jsx +71 -0
- public/elements/LoadingMessage.jsx +81 -0
- public/elements/ReasoningMessage.jsx +100 -0
- public/favicon.ico +0 -0
- public/logo_dark.png +3 -0
- public/logo_light.png +3 -0
- public/stylesheet.css +16 -0
- public/test.svg +19 -0
- public/theme.json +68 -0
- requirements.txt +2 -0
- static/landing_page.html +686 -0
.chainlit/config.toml
ADDED
@@ -0,0 +1,88 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
[project]
|
2 |
+
# Whether to enable telemetry (default: true). No personal data is collected.
|
3 |
+
enable_telemetry = true
|
4 |
+
|
5 |
+
|
6 |
+
# List of environment variables to be provided by each user to use the app.
|
7 |
+
user_env = []
|
8 |
+
|
9 |
+
# Duration (in seconds) during which the session is saved when the connection is lost
|
10 |
+
session_timeout = 3600
|
11 |
+
|
12 |
+
# Duration (in seconds) of the user session expiry
|
13 |
+
user_session_timeout = 1296000 # 15 days
|
14 |
+
|
15 |
+
# Enable third parties caching (e.g LangChain cache)
|
16 |
+
cache = false
|
17 |
+
|
18 |
+
# Authorized origins
|
19 |
+
allow_origins = ["*"]
|
20 |
+
|
21 |
+
[features]
|
22 |
+
# Process and display HTML in messages. This can be a security risk (see https://stackoverflow.com/questions/19603097/why-is-it-dangerous-to-render-user-generated-html-or-javascript)
|
23 |
+
unsafe_allow_html = false
|
24 |
+
|
25 |
+
# Process and display mathematical expressions. This can clash with "$" characters in messages.
|
26 |
+
latex = false
|
27 |
+
|
28 |
+
# Automatically tag threads with the current chat profile (if a chat profile is used)
|
29 |
+
auto_tag_thread = true
|
30 |
+
|
31 |
+
# Allow users to edit their own messages
|
32 |
+
edit_message = true
|
33 |
+
|
34 |
+
# Authorize users to spontaneously upload files with messages
|
35 |
+
[features.spontaneous_file_upload]
|
36 |
+
enabled = false
|
37 |
+
# Define accepted file types using MIME types
|
38 |
+
# Examples:
|
39 |
+
# 1. For specific file types:
|
40 |
+
# accept = ["image/jpeg", "image/png", "application/pdf"]
|
41 |
+
# 2. For all files of certain type:
|
42 |
+
# accept = ["image/*", "audio/*", "video/*"]
|
43 |
+
# 3. For specific file extensions:
|
44 |
+
# accept = { "application/octet-stream" = [".xyz", ".pdb"] }
|
45 |
+
# Note: Using "*/*" is not recommended as it may cause browser warnings
|
46 |
+
accept = ["*/*"]
|
47 |
+
max_files = 20
|
48 |
+
max_size_mb = 500
|
49 |
+
|
50 |
+
[features.audio]
|
51 |
+
# Sample rate of the audio
|
52 |
+
sample_rate = 24000
|
53 |
+
|
54 |
+
[UI]
|
55 |
+
# Name of the assistant.
|
56 |
+
name = "Agent Tide"
|
57 |
+
|
58 |
+
# default_theme = "dark"
|
59 |
+
|
60 |
+
layout = "wide"
|
61 |
+
|
62 |
+
# Description of the assistant. This is used for HTML tags.
|
63 |
+
# description = ""
|
64 |
+
|
65 |
+
# Chain of Thought (CoT) display mode. Can be "hidden", "tool_call" or "full".
|
66 |
+
cot = "tool_call"
|
67 |
+
|
68 |
+
# Link to your github repo. This will add a github button in the UI's header.
|
69 |
+
github = "https://github.com/BrunoV21/CodeTide"
|
70 |
+
|
71 |
+
# Specify a CSS file that can be used to customize the user interface.
|
72 |
+
# The CSS file can be served from the public directory or via an external link.
|
73 |
+
custom_css = '/public/stylesheet.css'
|
74 |
+
|
75 |
+
# Specify a Javascript file that can be used to customize the user interface.
|
76 |
+
# The Javascript file can be served from the public directory.
|
77 |
+
# custom_js = "/public/test.js"
|
78 |
+
|
79 |
+
# Specify a custom meta image url.
|
80 |
+
custom_meta_image_url = "https://github.com/BrunoV21/CodeTide/blob/09a2f958a8ecec0e2e61f03bc5397a0457ac61fc/docs/assets/codetide-logo.png"
|
81 |
+
|
82 |
+
# Specify a custom build directory for the frontend.
|
83 |
+
# This can be used to customize the frontend code.
|
84 |
+
# Be careful: If this is a relative path, it should not start with a slash.
|
85 |
+
# custom_build = "./public/build"
|
86 |
+
|
87 |
+
[meta]
|
88 |
+
generated_by = "2.1.0"
|
.chainlit/translations/bn.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u09ac\u09be\u09a4\u09bf\u09b2 \u0995\u09b0\u09c1\u09a8",
|
5 |
+
"confirm": "\u09a8\u09bf\u09b6\u09cd\u099a\u09bf\u09a4 \u0995\u09b0\u09c1\u09a8",
|
6 |
+
"continue": "\u099a\u09be\u09b2\u09bf\u09af\u09bc\u09c7 \u09af\u09be\u09a8",
|
7 |
+
"goBack": "\u09aa\u09bf\u099b\u09a8\u09c7 \u09af\u09be\u09a8",
|
8 |
+
"reset": "\u09b0\u09bf\u09b8\u09c7\u099f \u0995\u09b0\u09c1\u09a8",
|
9 |
+
"submit": "\u099c\u09ae\u09be \u09a6\u09bf\u09a8"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u09b2\u09cb\u09a1 \u09b9\u099a\u09cd\u099b\u09c7...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u098f\u0995\u099f\u09bf \u09a4\u09cd\u09b0\u09c1\u099f\u09bf \u0998\u099f\u09c7\u099b\u09c7",
|
15 |
+
"serverConnection": "\u09b8\u09be\u09b0\u09cd\u09ad\u09be\u09b0\u09c7\u09b0 \u09b8\u09be\u09a5\u09c7 \u09b8\u0982\u09af\u09cb\u0997 \u0995\u09b0\u09be \u09af\u09be\u099a\u09cd\u099b\u09c7 \u09a8\u09be"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u0985\u09cd\u09af\u09be\u09aa\u09cd\u09b2\u09bf\u0995\u09c7\u09b6\u09a8 \u09ac\u09cd\u09af\u09ac\u09b9\u09be\u09b0 \u0995\u09b0\u09a4\u09c7 \u09b2\u0997\u0987\u09a8 \u0995\u09b0\u09c1\u09a8",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u0987\u09ae\u09c7\u0987\u09b2 \u09a0\u09bf\u0995\u09be\u09a8\u09be",
|
25 |
+
"required": "\u0987\u09ae\u09c7\u0987\u09b2 \u098f\u0995\u099f\u09bf \u0986\u09ac\u09b6\u09cd\u09af\u0995 \u0995\u09cd\u09b7\u09c7\u09a4\u09cd\u09b0"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u09aa\u09be\u09b8\u0993\u09af\u09bc\u09be\u09b0\u09cd\u09a1",
|
29 |
+
"required": "\u09aa\u09be\u09b8\u0993\u09af\u09bc\u09be\u09b0\u09cd\u09a1 \u098f\u0995\u099f\u09bf \u0986\u09ac\u09b6\u09cd\u09af\u0995 \u0995\u09cd\u09b7\u09c7\u09a4\u09cd\u09b0"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09c1\u09a8"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u0985\u09a5\u09ac\u09be"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09be \u09b8\u09ae\u09cd\u09ad\u09ac \u09b9\u099a\u09cd\u099b\u09c7 \u09a8\u09be",
|
40 |
+
"signin": "\u0985\u09a8\u09cd\u09af \u098f\u0995\u099f\u09bf \u0985\u09cd\u09af\u09be\u0995\u09be\u0989\u09a8\u09cd\u099f \u09a6\u09bf\u09af\u09bc\u09c7 \u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09be\u09b0 \u099a\u09c7\u09b7\u09cd\u099f\u09be \u0995\u09b0\u09c1\u09a8",
|
41 |
+
"oauthSignin": "\u0985\u09a8\u09cd\u09af \u098f\u0995\u099f\u09bf \u0985\u09cd\u09af\u09be\u0995\u09be\u0989\u09a8\u09cd\u099f \u09a6\u09bf\u09af\u09bc\u09c7 \u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09be\u09b0 \u099a\u09c7\u09b7\u09cd\u099f\u09be \u0995\u09b0\u09c1\u09a8",
|
42 |
+
"redirectUriMismatch": "\u09b0\u09bf\u09a1\u09be\u0987\u09b0\u09c7\u0995\u09cd\u099f URI \u0993\u0986\u09a5 \u0985\u09cd\u09af\u09be\u09aa \u0995\u09a8\u09ab\u09bf\u0997\u09be\u09b0\u09c7\u09b6\u09a8\u09c7\u09b0 \u09b8\u09be\u09a5\u09c7 \u09ae\u09bf\u09b2\u099b\u09c7 \u09a8\u09be",
|
43 |
+
"oauthCallback": "\u0985\u09a8\u09cd\u09af \u098f\u0995\u099f\u09bf \u0985\u09cd\u09af\u09be\u0995\u09be\u0989\u09a8\u09cd\u099f \u09a6\u09bf\u09af\u09bc\u09c7 \u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09be\u09b0 \u099a\u09c7\u09b7\u09cd\u099f\u09be \u0995\u09b0\u09c1\u09a8",
|
44 |
+
"oauthCreateAccount": "\u0985\u09a8\u09cd\u09af \u098f\u0995\u099f\u09bf \u0985\u09cd\u09af\u09be\u0995\u09be\u0989\u09a8\u09cd\u099f \u09a6\u09bf\u09af\u09bc\u09c7 \u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09be\u09b0 \u099a\u09c7\u09b7\u09cd\u099f\u09be \u0995\u09b0\u09c1\u09a8",
|
45 |
+
"emailCreateAccount": "\u0985\u09a8\u09cd\u09af \u098f\u0995\u099f\u09bf \u0985\u09cd\u09af\u09be\u0995\u09be\u0989\u09a8\u09cd\u099f \u09a6\u09bf\u09af\u09bc\u09c7 \u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09be\u09b0 \u099a\u09c7\u09b7\u09cd\u099f\u09be \u0995\u09b0\u09c1\u09a8",
|
46 |
+
"callback": "\u0985\u09a8\u09cd\u09af \u098f\u0995\u099f\u09bf \u0985\u09cd\u09af\u09be\u0995\u09be\u0989\u09a8\u09cd\u099f \u09a6\u09bf\u09af\u09bc\u09c7 \u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09be\u09b0 \u099a\u09c7\u09b7\u09cd\u099f\u09be \u0995\u09b0\u09c1\u09a8",
|
47 |
+
"oauthAccountNotLinked": "\u0986\u09aa\u09a8\u09be\u09b0 \u09aa\u09b0\u09bf\u099a\u09af\u09bc \u09a8\u09bf\u09b6\u09cd\u099a\u09bf\u09a4 \u0995\u09b0\u09a4\u09c7, \u0986\u09aa\u09a8\u09bf \u09af\u09c7 \u0985\u09cd\u09af\u09be\u0995\u09be\u0989\u09a8\u09cd\u099f\u099f\u09bf \u09ae\u09c2\u09b2\u09a4 \u09ac\u09cd\u09af\u09ac\u09b9\u09be\u09b0 \u0995\u09b0\u09c7\u099b\u09bf\u09b2\u09c7\u09a8 \u09b8\u09c7\u099f\u09bf \u09a6\u09bf\u09af\u09bc\u09c7 \u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09c1\u09a8",
|
48 |
+
"emailSignin": "\u0987\u09ae\u09c7\u0987\u09b2 \u09aa\u09be\u09a0\u09be\u09a8\u09cb \u09af\u09be\u09af\u09bc\u09a8\u09bf",
|
49 |
+
"emailVerify": "\u0985\u09a8\u09c1\u0997\u09cd\u09b0\u09b9 \u0995\u09b0\u09c7 \u0986\u09aa\u09a8\u09be\u09b0 \u0987\u09ae\u09c7\u0987\u09b2 \u09af\u09be\u099a\u09be\u0987 \u0995\u09b0\u09c1\u09a8, \u098f\u0995\u099f\u09bf \u09a8\u09a4\u09c1\u09a8 \u0987\u09ae\u09c7\u0987\u09b2 \u09aa\u09be\u09a0\u09be\u09a8\u09cb \u09b9\u09af\u09bc\u09c7\u099b\u09c7",
|
50 |
+
"credentialsSignin": "\u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u09ac\u09cd\u09af\u09b0\u09cd\u09a5 \u09b9\u09af\u09bc\u09c7\u099b\u09c7\u0964 \u0986\u09aa\u09a8\u09be\u09b0 \u09a6\u09c7\u0993\u09af\u09bc\u09be \u09a4\u09a5\u09cd\u09af \u09b8\u09a0\u09bf\u0995 \u0995\u09bf\u09a8\u09be \u09af\u09be\u099a\u09be\u0987 \u0995\u09b0\u09c1\u09a8",
|
51 |
+
"sessionRequired": "\u098f\u0987 \u09aa\u09c3\u09b7\u09cd\u09a0\u09be \u09a6\u09c7\u0996\u09a4\u09c7 \u0985\u09a8\u09c1\u0997\u09cd\u09b0\u09b9 \u0995\u09b0\u09c7 \u09b8\u09be\u0987\u09a8 \u0987\u09a8 \u0995\u09b0\u09c1\u09a8"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "{{provider}} \u09a6\u09bf\u09af\u09bc\u09c7 \u099a\u09be\u09b2\u09bf\u09af\u09bc\u09c7 \u09af\u09be\u09a8"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u0986\u09aa\u09a8\u09be\u09b0 \u09ac\u09be\u09b0\u09cd\u09a4\u09be \u098f\u0996\u09be\u09a8\u09c7 \u099f\u09be\u0987\u09aa \u0995\u09b0\u09c1\u09a8...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u09ac\u09be\u09b0\u09cd\u09a4\u09be \u09aa\u09be\u09a0\u09be\u09a8",
|
63 |
+
"stop": "\u0995\u09be\u099c \u09ac\u09a8\u09cd\u09a7 \u0995\u09b0\u09c1\u09a8",
|
64 |
+
"attachFiles": "\u09ab\u09be\u0987\u09b2 \u09b8\u0982\u09af\u09c1\u0995\u09cd\u09a4 \u0995\u09b0\u09c1\u09a8"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u09b0\u09c7\u0995\u09b0\u09cd\u09a1\u09bf\u0982 \u09b6\u09c1\u09b0\u09c1 \u0995\u09b0\u09c1\u09a8",
|
69 |
+
"stop": "\u09b0\u09c7\u0995\u09b0\u09cd\u09a1\u09bf\u0982 \u09ac\u09a8\u09cd\u09a7 \u0995\u09b0\u09c1\u09a8",
|
70 |
+
"connecting": "\u09b8\u0982\u09af\u09cb\u0997 \u0995\u09b0\u09be \u09b9\u099a\u09cd\u099b\u09c7"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u098f\u0996\u09be\u09a8\u09c7 \u09ab\u09be\u0987\u09b2 \u099f\u09c7\u09a8\u09c7 \u0986\u09a8\u09c1\u09a8",
|
74 |
+
"browse": "\u09ab\u09be\u0987\u09b2 \u09ac\u09cd\u09b0\u09be\u0989\u099c \u0995\u09b0\u09c1\u09a8",
|
75 |
+
"sizeLimit": "\u09b8\u09c0\u09ae\u09be:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u0986\u09aa\u09b2\u09cb\u09a1 \u09ac\u09cd\u09af\u09b0\u09cd\u09a5 \u09b9\u09af\u09bc\u09c7\u099b\u09c7",
|
78 |
+
"cancelled": "\u0986\u09aa\u09b2\u09cb\u09a1 \u09ac\u09be\u09a4\u09bf\u09b2 \u0995\u09b0\u09be \u09b9\u09af\u09bc\u09c7\u099b\u09c7"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u09ac\u09cd\u09af\u09ac\u09b9\u09be\u09b0 \u0995\u09b0\u099b\u09c7",
|
84 |
+
"used": "\u09ac\u09cd\u09af\u09ac\u09b9\u09c3\u09a4"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u0995\u09cd\u09b2\u09bf\u09aa\u09ac\u09cb\u09b0\u09cd\u09a1\u09c7 \u0995\u09aa\u09bf \u0995\u09b0\u09c1\u09a8",
|
89 |
+
"success": "\u0995\u09aa\u09bf \u0995\u09b0\u09be \u09b9\u09af\u09bc\u09c7\u099b\u09c7!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u09b8\u09b9\u09be\u09af\u09bc\u0995",
|
94 |
+
"negative": "\u09b8\u09b9\u09be\u09af\u09bc\u0995 \u09a8\u09af\u09bc",
|
95 |
+
"edit": "\u09aa\u09cd\u09b0\u09a4\u09bf\u0995\u09cd\u09b0\u09bf\u09af\u09bc\u09be \u09b8\u09ae\u09cd\u09aa\u09be\u09a6\u09a8\u09be \u0995\u09b0\u09c1\u09a8",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u09ae\u09a8\u09cd\u09a4\u09ac\u09cd\u09af \u09af\u09cb\u0997 \u0995\u09b0\u09c1\u09a8",
|
98 |
+
"submit": "\u09aa\u09cd\u09b0\u09a4\u09bf\u0995\u09cd\u09b0\u09bf\u09af\u09bc\u09be \u099c\u09ae\u09be \u09a6\u09bf\u09a8"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u09b9\u09be\u09b2\u09a8\u09be\u0997\u09be\u09a6 \u0995\u09b0\u09be \u09b9\u099a\u09cd\u099b\u09c7",
|
102 |
+
"updated": "\u09aa\u09cd\u09b0\u09a4\u09bf\u0995\u09cd\u09b0\u09bf\u09af\u09bc\u09be \u09b9\u09be\u09b2\u09a8\u09be\u0997\u09be\u09a6 \u0995\u09b0\u09be \u09b9\u09af\u09bc\u09c7\u099b\u09c7"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u09b8\u09b0\u09cd\u09ac\u09b6\u09c7\u09b7 \u0987\u09a8\u09aa\u09c1\u099f",
|
108 |
+
"empty": "\u0995\u09cb\u09a8\u09cb \u09a4\u09a5\u09cd\u09af \u09a8\u09c7\u0987...",
|
109 |
+
"show": "\u0987\u09a4\u09bf\u09b9\u09be\u09b8 \u09a6\u09c7\u0996\u09c1\u09a8"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u09b8\u09c7\u099f\u09bf\u0982\u09b8 \u09aa\u09cd\u09af\u09be\u09a8\u09c7\u09b2"
|
113 |
+
},
|
114 |
+
"watermark": "\u09a6\u09cd\u09ac\u09be\u09b0\u09be \u09a8\u09bf\u09b0\u09cd\u09ae\u09bf\u09a4"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u09aa\u09c2\u09b0\u09cd\u09ac\u09ac\u09b0\u09cd\u09a4\u09c0 \u099a\u09cd\u09af\u09be\u099f",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u0985\u09a8\u09c1\u09b8\u09a8\u09cd\u09a7\u09be\u09a8",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u0986\u099c",
|
125 |
+
"yesterday": "\u0997\u09a4\u0995\u09be\u09b2",
|
126 |
+
"previous7days": "\u0997\u09a4 \u09ed \u09a6\u09bf\u09a8",
|
127 |
+
"previous30days": "\u0997\u09a4 \u09e9\u09e6 \u09a6\u09bf\u09a8"
|
128 |
+
},
|
129 |
+
"empty": "\u0995\u09cb\u09a8\u09cb \u09a5\u09cd\u09b0\u09c7\u09a1 \u09aa\u09be\u0993\u09af\u09bc\u09be \u09af\u09be\u09af\u09bc\u09a8\u09bf",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u09b8\u09be\u0987\u09a1\u09ac\u09be\u09b0 \u09ac\u09a8\u09cd\u09a7 \u0995\u09b0\u09c1\u09a8",
|
132 |
+
"open": "\u09b8\u09be\u0987\u09a1\u09ac\u09be\u09b0 \u0996\u09c1\u09b2\u09c1\u09a8"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u09b6\u09bf\u09b0\u09cb\u09a8\u09be\u09ae\u09b9\u09c0\u09a8 \u0986\u09b2\u09cb\u099a\u09a8\u09be",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u09ae\u09c1\u099b\u09c7 \u09ab\u09c7\u09b2\u09be \u09a8\u09bf\u09b6\u09cd\u099a\u09bf\u09a4 \u0995\u09b0\u09c1\u09a8",
|
144 |
+
"description": "\u098f\u099f\u09bf \u09a5\u09cd\u09b0\u09c7\u09a1 \u098f\u09ac\u0982 \u098f\u09b0 \u09ac\u09be\u09b0\u09cd\u09a4\u09be \u0993 \u0989\u09aa\u09be\u09a6\u09be\u09a8\u0997\u09c1\u09b2\u09bf \u09ae\u09c1\u099b\u09c7 \u09ab\u09c7\u09b2\u09ac\u09c7\u0964 \u098f\u0987 \u0995\u09be\u099c\u099f\u09bf \u09aa\u09c2\u09b0\u09cd\u09ac\u09be\u09ac\u09b8\u09cd\u09a5\u09be\u09af\u09bc \u09ab\u09c7\u09b0\u09be\u09a8\u09cb \u09af\u09be\u09ac\u09c7 \u09a8\u09be",
|
145 |
+
"success": "\u099a\u09cd\u09af\u09be\u099f \u09ae\u09c1\u099b\u09c7 \u09ab\u09c7\u09b2\u09be \u09b9\u09af\u09bc\u09c7\u099b\u09c7",
|
146 |
+
"inProgress": "\u099a\u09cd\u09af\u09be\u099f \u09ae\u09c1\u099b\u09c7 \u09ab\u09c7\u09b2\u09be \u09b9\u099a\u09cd\u099b\u09c7"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u09a5\u09cd\u09b0\u09c7\u09a1\u09c7\u09b0 \u09a8\u09be\u09ae \u09aa\u09b0\u09bf\u09ac\u09b0\u09cd\u09a4\u09a8 \u0995\u09b0\u09c1\u09a8",
|
150 |
+
"description": "\u098f\u0987 \u09a5\u09cd\u09b0\u09c7\u09a1\u09c7\u09b0 \u099c\u09a8\u09cd\u09af \u098f\u0995\u099f\u09bf \u09a8\u09a4\u09c1\u09a8 \u09a8\u09be\u09ae \u09a6\u09bf\u09a8",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u09a8\u09be\u09ae",
|
154 |
+
"placeholder": "\u09a8\u09a4\u09c1\u09a8 \u09a8\u09be\u09ae \u09b2\u09bf\u0996\u09c1\u09a8"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u09a5\u09cd\u09b0\u09c7\u09a1\u09c7\u09b0 \u09a8\u09be\u09ae \u09aa\u09b0\u09bf\u09ac\u09b0\u09cd\u09a4\u09a8 \u0995\u09b0\u09be \u09b9\u09af\u09bc\u09c7\u099b\u09c7!",
|
158 |
+
"inProgress": "\u09a5\u09cd\u09b0\u09c7\u09a1\u09c7\u09b0 \u09a8\u09be\u09ae \u09aa\u09b0\u09bf\u09ac\u09b0\u09cd\u09a4\u09a8 \u0995\u09b0\u09be \u09b9\u099a\u09cd\u099b\u09c7"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u099a\u09cd\u09af\u09be\u099f",
|
166 |
+
"readme": "\u09b0\u09bf\u09a1\u09ae\u09bf",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u09a8\u09a4\u09c1\u09a8 \u099a\u09cd\u09af\u09be\u099f",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u09a8\u09a4\u09c1\u09a8 \u099a\u09cd\u09af\u09be\u099f \u09a4\u09c8\u09b0\u09bf \u0995\u09b0\u09c1\u09a8",
|
177 |
+
"description": "\u098f\u099f\u09bf \u0986\u09aa\u09a8\u09be\u09b0 \u09ac\u09b0\u09cd\u09a4\u09ae\u09be\u09a8 \u099a\u09cd\u09af\u09be\u099f \u0987\u09a4\u09bf\u09b9\u09be\u09b8 \u09ae\u09c1\u099b\u09c7 \u09ab\u09c7\u09b2\u09ac\u09c7\u0964 \u0986\u09aa\u09a8\u09bf \u0995\u09bf \u099a\u09be\u09b2\u09bf\u09af\u09bc\u09c7 \u09af\u09c7\u09a4\u09c7 \u099a\u09be\u09a8?",
|
178 |
+
"tooltip": "\u09a8\u09a4\u09c1\u09a8 \u099a\u09cd\u09af\u09be\u099f"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u09b8\u09c7\u099f\u09bf\u0982\u09b8",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "\u098f\u09aa\u09bf\u0986\u0987 \u0995\u09c0",
|
186 |
+
"logout": "\u09b2\u0997\u0986\u0989\u099f"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u09aa\u09cd\u09b0\u09af\u09bc\u09cb\u099c\u09a8\u09c0\u09af\u09bc \u098f\u09aa\u09bf\u0986\u0987 \u0995\u09c0",
|
192 |
+
"description": "\u098f\u0987 \u0985\u09cd\u09af\u09be\u09aa\u09cd\u09b2\u09bf\u0995\u09c7\u09b6\u09a8 \u09ac\u09cd\u09af\u09ac\u09b9\u09be\u09b0 \u0995\u09b0\u09a4\u09c7 \u09a8\u09bf\u09ae\u09cd\u09a8\u09b2\u09bf\u0996\u09bf\u09a4 \u098f\u09aa\u09bf\u0986\u0987 \u0995\u09c0 \u09aa\u09cd\u09b0\u09af\u09bc\u09cb\u099c\u09a8\u0964 \u0995\u09c0\u0997\u09c1\u09b2\u09bf \u0986\u09aa\u09a8\u09be\u09b0 \u09a1\u09bf\u09ad\u09be\u0987\u09b8\u09c7\u09b0 \u09b2\u09cb\u0995\u09be\u09b2 \u09b8\u09cd\u099f\u09cb\u09b0\u09c7\u099c\u09c7 \u09b8\u0982\u09b0\u0995\u09cd\u09b7\u09bf\u09a4 \u09a5\u09be\u0995\u09c7\u0964",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u09b8\u09ab\u09b2\u09ad\u09be\u09ac\u09c7 \u09b8\u0982\u09b0\u0995\u09cd\u09b7\u09bf\u09a4 \u09b9\u09af\u09bc\u09c7\u099b\u09c7"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/en-US.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "Cancel",
|
5 |
+
"confirm": "Confirm",
|
6 |
+
"continue": "Continue",
|
7 |
+
"goBack": "Go Back",
|
8 |
+
"reset": "Reset",
|
9 |
+
"submit": "Submit"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "Loading...",
|
13 |
+
"error": {
|
14 |
+
"default": "An error occurred",
|
15 |
+
"serverConnection": "Could not reach the server"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "Login to access the app",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "Email address",
|
25 |
+
"required": "email is a required field"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "Password",
|
29 |
+
"required": "password is a required field"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "Sign In"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "OR"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "Unable to sign in",
|
40 |
+
"signin": "Try signing in with a different account",
|
41 |
+
"oauthSignin": "Try signing in with a different account",
|
42 |
+
"redirectUriMismatch": "The redirect URI is not matching the oauth app configuration",
|
43 |
+
"oauthCallback": "Try signing in with a different account",
|
44 |
+
"oauthCreateAccount": "Try signing in with a different account",
|
45 |
+
"emailCreateAccount": "Try signing in with a different account",
|
46 |
+
"callback": "Try signing in with a different account",
|
47 |
+
"oauthAccountNotLinked": "To confirm your identity, sign in with the same account you used originally",
|
48 |
+
"emailSignin": "The e-mail could not be sent",
|
49 |
+
"emailVerify": "Please verify your email, a new email has been sent",
|
50 |
+
"credentialsSignin": "Sign in failed. Check the details you provided are correct",
|
51 |
+
"sessionRequired": "Please sign in to access this page"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "Continue with {{provider}}"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "Type your message here...",
|
61 |
+
"actions": {
|
62 |
+
"send": "Send message",
|
63 |
+
"stop": "Stop Task",
|
64 |
+
"attachFiles": "Attach files"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "Start recording",
|
69 |
+
"stop": "Stop recording",
|
70 |
+
"connecting": "Connecting"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "Drag and drop files here",
|
74 |
+
"browse": "Browse Files",
|
75 |
+
"sizeLimit": "Limit:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "Failed to upload",
|
78 |
+
"cancelled": "Cancelled upload of"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "Using",
|
84 |
+
"used": "Used"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "Copy to clipboard",
|
89 |
+
"success": "Copied!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "Helpful",
|
94 |
+
"negative": "Not helpful",
|
95 |
+
"edit": "Edit feedback",
|
96 |
+
"dialog": {
|
97 |
+
"title": "Add a comment",
|
98 |
+
"submit": "Submit feedback"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "Updating",
|
102 |
+
"updated": "Feedback updated"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "Last Inputs",
|
108 |
+
"empty": "Such empty...",
|
109 |
+
"show": "Show history"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "Settings panel"
|
113 |
+
},
|
114 |
+
"watermark": "Built with"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "Past Chats",
|
119 |
+
"filters": {
|
120 |
+
"search": "Search",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "Today",
|
125 |
+
"yesterday": "Yesterday",
|
126 |
+
"previous7days": "Previous 7 days",
|
127 |
+
"previous30days": "Previous 30 days"
|
128 |
+
},
|
129 |
+
"empty": "No threads found",
|
130 |
+
"actions": {
|
131 |
+
"close": "Close sidebar",
|
132 |
+
"open": "Open sidebar"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "Untitled Conversation",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "Confirm deletion",
|
144 |
+
"description": "This will delete the thread as well as its messages and elements. This action cannot be undone",
|
145 |
+
"success": "Chat deleted",
|
146 |
+
"inProgress": "Deleting chat"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "Rename Thread",
|
150 |
+
"description": "Enter a new name for this thread",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "Name",
|
154 |
+
"placeholder": "Enter new name"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "Thread renamed!",
|
158 |
+
"inProgress": "Renaming thread"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "Chat",
|
166 |
+
"readme": "Readme",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "New Chat",
|
175 |
+
"dialog": {
|
176 |
+
"title": "Create New Chat",
|
177 |
+
"description": "This will clear your current chat history. Are you sure you want to continue?",
|
178 |
+
"tooltip": "New Chat"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "Settings",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API Keys",
|
186 |
+
"logout": "Logout"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "Required API Keys",
|
192 |
+
"description": "To use this app, the following API keys are required. The keys are stored on your device's local storage.",
|
193 |
+
"success": {
|
194 |
+
"saved": "Saved successfully"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/gu.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u0ab0\u0aa6 \u0a95\u0ab0\u0acb",
|
5 |
+
"confirm": "\u0aaa\u0ac1\u0ab7\u0acd\u0a9f\u0abf \u0a95\u0ab0\u0acb",
|
6 |
+
"continue": "\u0a9a\u0abe\u0ab2\u0ac1 \u0ab0\u0abe\u0a96\u0acb",
|
7 |
+
"goBack": "\u0aaa\u0abe\u0a9b\u0abe \u0a9c\u0abe\u0a93",
|
8 |
+
"reset": "\u0ab0\u0ac0\u0ab8\u0ac7\u0a9f \u0a95\u0ab0\u0acb",
|
9 |
+
"submit": "\u0ab8\u0aac\u0aae\u0abf\u0a9f \u0a95\u0ab0\u0acb"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u0ab2\u0acb\u0aa1 \u0aa5\u0a88 \u0ab0\u0ab9\u0acd\u0aaf\u0ac1\u0a82 \u0a9b\u0ac7...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u0a8f\u0a95 \u0aad\u0ac2\u0ab2 \u0aa5\u0a88",
|
15 |
+
"serverConnection": "\u0ab8\u0ab0\u0acd\u0ab5\u0ab0 \u0ab8\u0ac1\u0aa7\u0ac0 \u0aaa\u0ab9\u0acb\u0a82\u0a9a\u0ac0 \u0ab6\u0a95\u0abe\u0aaf\u0ac1\u0a82 \u0aa8\u0aa5\u0ac0"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u0a8f\u0aaa\u0acd\u0ab2\u0abf\u0a95\u0ac7\u0ab6\u0aa8 \u0a8d\u0a95\u0acd\u0ab8\u0ac7\u0ab8 \u0a95\u0ab0\u0ab5\u0abe \u0aae\u0abe\u0a9f\u0ac7 \u0ab2\u0ac9\u0a97\u0abf\u0aa8 \u0a95\u0ab0\u0acb",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u0a88\u0aae\u0ac7\u0ab2 \u0a8f\u0aa1\u0acd\u0ab0\u0ac7\u0ab8",
|
25 |
+
"required": "\u0a88\u0aae\u0ac7\u0ab2 \u0a86\u0ab5\u0ab6\u0acd\u0aaf\u0a95 \u0a9b\u0ac7"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u0aaa\u0abe\u0ab8\u0ab5\u0ab0\u0acd\u0aa1",
|
29 |
+
"required": "\u0aaa\u0abe\u0ab8\u0ab5\u0ab0\u0acd\u0aa1 \u0a86\u0ab5\u0ab6\u0acd\u0aaf\u0a95 \u0a9b\u0ac7"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0acb"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u0a85\u0aa5\u0ab5\u0abe"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0ac0 \u0ab6\u0a95\u0abe\u0aaf\u0ac1\u0a82 \u0aa8\u0aa5\u0ac0",
|
40 |
+
"signin": "\u0a85\u0ab2\u0a97 \u0a8f\u0a95\u0abe\u0a89\u0aa8\u0acd\u0a9f\u0aa5\u0ac0 \u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0ab5\u0abe\u0aa8\u0acb \u0aaa\u0acd\u0ab0\u0aaf\u0abe\u0ab8 \u0a95\u0ab0\u0acb",
|
41 |
+
"oauthSignin": "\u0a85\u0ab2\u0a97 \u0a8f\u0a95\u0abe\u0a89\u0aa8\u0acd\u0a9f\u0aa5\u0ac0 \u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0ab5\u0abe\u0aa8\u0acb \u0aaa\u0acd\u0ab0\u0aaf\u0abe\u0ab8 \u0a95\u0ab0\u0acb",
|
42 |
+
"redirectUriMismatch": "\u0ab0\u0ac0\u0aa1\u0abe\u0aaf\u0ab0\u0ac7\u0a95\u0acd\u0a9f URI oauth \u0a8d\u0aaa \u0a95\u0aa8\u0acd\u0aab\u0abf\u0a97\u0ab0\u0ac7\u0ab6\u0aa8 \u0ab8\u0abe\u0aa5\u0ac7 \u0aae\u0ac7\u0ab3 \u0a96\u0abe\u0aa4\u0acb \u0aa8\u0aa5\u0ac0",
|
43 |
+
"oauthCallback": "\u0a85\u0ab2\u0a97 \u0a8f\u0a95\u0abe\u0a89\u0aa8\u0acd\u0a9f\u0aa5\u0ac0 \u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0ab5\u0abe\u0aa8\u0acb \u0aaa\u0acd\u0ab0\u0aaf\u0abe\u0ab8 \u0a95\u0ab0\u0acb",
|
44 |
+
"oauthCreateAccount": "\u0a85\u0ab2\u0a97 \u0a8f\u0a95\u0abe\u0a89\u0aa8\u0acd\u0a9f\u0aa5\u0ac0 \u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0ab5\u0abe\u0aa8\u0acb \u0aaa\u0acd\u0ab0\u0aaf\u0abe\u0ab8 \u0a95\u0ab0\u0acb",
|
45 |
+
"emailCreateAccount": "\u0a85\u0ab2\u0a97 \u0a8f\u0a95\u0abe\u0a89\u0aa8\u0acd\u0a9f\u0aa5\u0ac0 \u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0ab5\u0abe\u0aa8\u0acb \u0aaa\u0acd\u0ab0\u0aaf\u0abe\u0ab8 \u0a95\u0ab0\u0acb",
|
46 |
+
"callback": "\u0a85\u0ab2\u0a97 \u0a8f\u0a95\u0abe\u0a89\u0aa8\u0acd\u0a9f\u0aa5\u0ac0 \u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0ab5\u0abe\u0aa8\u0acb \u0aaa\u0acd\u0ab0\u0aaf\u0abe\u0ab8 \u0a95\u0ab0\u0acb",
|
47 |
+
"oauthAccountNotLinked": "\u0aa4\u0aae\u0abe\u0ab0\u0ac0 \u0a93\u0ab3\u0a96\u0aa8\u0ac0 \u0aaa\u0ac1\u0ab7\u0acd\u0a9f\u0abf \u0a95\u0ab0\u0ab5\u0abe \u0aae\u0abe\u0a9f\u0ac7, \u0aae\u0ac2\u0ab3 \u0ab0\u0ac2\u0aaa\u0ac7 \u0ab5\u0abe\u0aaa\u0ab0\u0ac7\u0ab2\u0abe \u0a8f\u0a95\u0abe\u0a89\u0aa8\u0acd\u0a9f\u0aa5\u0ac0 \u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0acb",
|
48 |
+
"emailSignin": "\u0a88\u0aae\u0ac7\u0ab2 \u0aae\u0acb\u0a95\u0ab2\u0ac0 \u0ab6\u0a95\u0abe\u0aaf\u0acb \u0aa8\u0aa5\u0ac0",
|
49 |
+
"emailVerify": "\u0a95\u0ac3\u0aaa\u0abe \u0a95\u0ab0\u0ac0 \u0aa4\u0aae\u0abe\u0ab0\u0acb \u0a88\u0aae\u0ac7\u0ab2 \u0a9a\u0a95\u0abe\u0ab8\u0acb, \u0aa8\u0ab5\u0acb \u0a88\u0aae\u0ac7\u0ab2 \u0aae\u0acb\u0a95\u0ab2\u0ab5\u0abe\u0aae\u0abe\u0a82 \u0a86\u0ab5\u0acd\u0aaf\u0acb \u0a9b\u0ac7",
|
50 |
+
"credentialsSignin": "\u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0aa8\u0abf\u0ab7\u0acd\u0aab\u0ab3. \u0a86\u0aaa\u0ac7\u0ab2\u0ac0 \u0ab5\u0abf\u0a97\u0aa4\u0acb \u0ab8\u0abe\u0a9a\u0ac0 \u0a9b\u0ac7 \u0a95\u0ac7 \u0aa8\u0ab9\u0ac0\u0a82 \u0aa4\u0ac7 \u0a9a\u0a95\u0abe\u0ab8\u0acb",
|
51 |
+
"sessionRequired": "\u0a86 \u0aaa\u0ac7\u0a9c\u0aa8\u0ac7 \u0a8d\u0a95\u0acd\u0ab8\u0ac7\u0ab8 \u0a95\u0ab0\u0ab5\u0abe \u0aae\u0abe\u0a9f\u0ac7 \u0a95\u0ac3\u0aaa\u0abe \u0a95\u0ab0\u0ac0 \u0ab8\u0abe\u0a87\u0aa8 \u0a87\u0aa8 \u0a95\u0ab0\u0acb"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "{{provider}} \u0ab8\u0abe\u0aa5\u0ac7 \u0a9a\u0abe\u0ab2\u0ac1 \u0ab0\u0abe\u0a96\u0acb"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u0a85\u0ab9\u0ac0\u0a82 \u0aa4\u0aae\u0abe\u0ab0\u0acb \u0ab8\u0a82\u0aa6\u0ac7\u0ab6 \u0ab2\u0a96\u0acb...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u0ab8\u0a82\u0aa6\u0ac7\u0ab6 \u0aae\u0acb\u0a95\u0ab2\u0acb",
|
63 |
+
"stop": "\u0a95\u0abe\u0ab0\u0acd\u0aaf \u0ab0\u0acb\u0a95\u0acb",
|
64 |
+
"attachFiles": "\u0aab\u0abe\u0a87\u0ab2\u0acd\u0ab8 \u0a9c\u0acb\u0aa1\u0acb"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u0ab0\u0ac7\u0a95\u0acb\u0ab0\u0acd\u0aa1\u0abf\u0a82\u0a97 \u0ab6\u0ab0\u0ac2 \u0a95\u0ab0\u0acb",
|
69 |
+
"stop": "\u0ab0\u0ac7\u0a95\u0acb\u0ab0\u0acd\u0aa1\u0abf\u0a82\u0a97 \u0aac\u0a82\u0aa7 \u0a95\u0ab0\u0acb",
|
70 |
+
"connecting": "\u0a95\u0aa8\u0ac7\u0a95\u0acd\u0a9f \u0aa5\u0a88 \u0ab0\u0ab9\u0acd\u0aaf\u0ac1\u0a82 \u0a9b\u0ac7"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u0a85\u0ab9\u0ac0\u0a82 \u0aab\u0abe\u0a87\u0ab2\u0acd\u0ab8 \u0a96\u0ac7\u0a82\u0a9a\u0acb \u0a85\u0aa8\u0ac7 \u0a9b\u0acb\u0aa1\u0acb",
|
74 |
+
"browse": "\u0aab\u0abe\u0a87\u0ab2\u0acd\u0ab8 \u0aac\u0acd\u0ab0\u0abe\u0a89\u0a9d \u0a95\u0ab0\u0acb",
|
75 |
+
"sizeLimit": "\u0aae\u0ab0\u0acd\u0aaf\u0abe\u0aa6\u0abe:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u0a85\u0aaa\u0ab2\u0acb\u0aa1 \u0a95\u0ab0\u0ab5\u0abe\u0aae\u0abe\u0a82 \u0aa8\u0abf\u0ab7\u0acd\u0aab\u0ab3",
|
78 |
+
"cancelled": "\u0a85\u0aaa\u0ab2\u0acb\u0aa1 \u0ab0\u0aa6 \u0a95\u0ab0\u0acd\u0aaf\u0ac1\u0a82"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u0ab5\u0abe\u0aaa\u0ab0\u0ac0 \u0ab0\u0ab9\u0acd\u0aaf\u0abe \u0a9b\u0ac7",
|
84 |
+
"used": "\u0ab5\u0aaa\u0ab0\u0abe\u0aaf\u0ac7\u0ab2"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u0a95\u0acd\u0ab2\u0abf\u0aaa\u0aac\u0acb\u0ab0\u0acd\u0aa1 \u0aaa\u0ab0 \u0a95\u0ac9\u0aaa\u0abf \u0a95\u0ab0\u0acb",
|
89 |
+
"success": "\u0a95\u0ac9\u0aaa\u0abf \u0aa5\u0aaf\u0ac1\u0a82!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u0a89\u0aaa\u0aaf\u0acb\u0a97\u0ac0",
|
94 |
+
"negative": "\u0aac\u0abf\u0aa8\u0a89\u0aaa\u0aaf\u0acb\u0a97\u0ac0",
|
95 |
+
"edit": "\u0aaa\u0acd\u0ab0\u0aa4\u0abf\u0ab8\u0abe\u0aa6 \u0ab8\u0a82\u0aaa\u0abe\u0aa6\u0abf\u0aa4 \u0a95\u0ab0\u0acb",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u0a9f\u0abf\u0aaa\u0acd\u0aaa\u0aa3\u0ac0 \u0a89\u0aae\u0ac7\u0ab0\u0acb",
|
98 |
+
"submit": "\u0aaa\u0acd\u0ab0\u0aa4\u0abf\u0ab8\u0abe\u0aa6 \u0ab8\u0aac\u0aae\u0abf\u0a9f \u0a95\u0ab0\u0acb"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u0a85\u0aaa\u0aa1\u0ac7\u0a9f \u0aa5\u0a88 \u0ab0\u0ab9\u0acd\u0aaf\u0ac1\u0a82 \u0a9b\u0ac7",
|
102 |
+
"updated": "\u0aaa\u0acd\u0ab0\u0aa4\u0abf\u0ab8\u0abe\u0aa6 \u0a85\u0aaa\u0aa1\u0ac7\u0a9f \u0aa5\u0aaf\u0acb"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u0a9b\u0ac7\u0ab2\u0acd\u0ab2\u0abe \u0a87\u0aa8\u0aaa\u0ac1\u0a9f\u0acd\u0ab8",
|
108 |
+
"empty": "\u0a96\u0abe\u0ab2\u0ac0 \u0a9b\u0ac7...",
|
109 |
+
"show": "\u0a87\u0aa4\u0abf\u0ab9\u0abe\u0ab8 \u0aac\u0aa4\u0abe\u0ab5\u0acb"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u0ab8\u0ac7\u0a9f\u0abf\u0a82\u0a97\u0acd\u0ab8 \u0aaa\u0ac7\u0aa8\u0ab2"
|
113 |
+
},
|
114 |
+
"watermark": "\u0ab8\u0abe\u0aa5\u0ac7 \u0aac\u0aa8\u0abe\u0ab5\u0ac7\u0ab2"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u0aaa\u0abe\u0a9b\u0ab2\u0ac0 \u0a9a\u0ac7\u0a9f\u0acd\u0ab8",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u0ab6\u0acb\u0aa7\u0acb",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u0a86\u0a9c\u0ac7",
|
125 |
+
"yesterday": "\u0a97\u0a88\u0a95\u0abe\u0ab2\u0ac7",
|
126 |
+
"previous7days": "\u0aaa\u0abe\u0a9b\u0ab2\u0abe 7 \u0aa6\u0abf\u0ab5\u0ab8",
|
127 |
+
"previous30days": "\u0aaa\u0abe\u0a9b\u0ab2\u0abe 30 \u0aa6\u0abf\u0ab5\u0ab8"
|
128 |
+
},
|
129 |
+
"empty": "\u0a95\u0acb\u0a88 \u0aa5\u0acd\u0ab0\u0ac7\u0aa1\u0acd\u0ab8 \u0aae\u0ab3\u0acd\u0aaf\u0abe \u0aa8\u0aa5\u0ac0",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u0ab8\u0abe\u0a87\u0aa1\u0aac\u0abe\u0ab0 \u0aac\u0a82\u0aa7 \u0a95\u0ab0\u0acb",
|
132 |
+
"open": "\u0ab8\u0abe\u0a87\u0aa1\u0aac\u0abe\u0ab0 \u0a96\u0acb\u0ab2\u0acb"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u0ab6\u0ac0\u0ab0\u0acd\u0ab7\u0a95 \u0ab5\u0a97\u0ab0\u0aa8\u0ac0 \u0ab5\u0abe\u0aa4\u0a9a\u0ac0\u0aa4",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u0a95\u0abe\u0aa2\u0ac0 \u0aa8\u0abe\u0a96\u0ab5\u0abe\u0aa8\u0ac0 \u0aaa\u0ac1\u0ab7\u0acd\u0a9f\u0abf \u0a95\u0ab0\u0acb",
|
144 |
+
"description": "\u0a86 \u0aa5\u0acd\u0ab0\u0ac7\u0aa1 \u0a85\u0aa8\u0ac7 \u0aa4\u0ac7\u0aa8\u0abe \u0ab8\u0a82\u0aa6\u0ac7\u0ab6\u0abe\u0a93 \u0a85\u0aa8\u0ac7 \u0aa4\u0aa4\u0acd\u0ab5\u0acb\u0aa8\u0ac7 \u0a95\u0abe\u0aa2\u0ac0 \u0aa8\u0abe\u0a96\u0ab6\u0ac7. \u0a86 \u0a95\u0acd\u0ab0\u0abf\u0aaf\u0abe \u0aaa\u0abe\u0a9b\u0ac0 \u0aab\u0ac7\u0ab0\u0ab5\u0ac0 \u0ab6\u0a95\u0abe\u0ab6\u0ac7 \u0aa8\u0ab9\u0ac0\u0a82",
|
145 |
+
"success": "\u0a9a\u0ac7\u0a9f \u0a95\u0abe\u0aa2\u0ac0 \u0aa8\u0abe\u0a96\u0ac0",
|
146 |
+
"inProgress": "\u0a9a\u0ac7\u0a9f \u0a95\u0abe\u0aa2\u0ac0 \u0aa8\u0abe\u0a96\u0ac0 \u0ab0\u0ab9\u0acd\u0aaf\u0abe \u0a9b\u0ac0\u0a8f"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u0aa5\u0acd\u0ab0\u0ac7\u0aa1\u0aa8\u0ac1\u0a82 \u0aa8\u0abe\u0aae \u0aac\u0aa6\u0ab2\u0acb",
|
150 |
+
"description": "\u0a86 \u0aa5\u0acd\u0ab0\u0ac7\u0aa1 \u0aae\u0abe\u0a9f\u0ac7 \u0aa8\u0ab5\u0ac1\u0a82 \u0aa8\u0abe\u0aae \u0aa6\u0abe\u0a96\u0ab2 \u0a95\u0ab0\u0acb",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u0aa8\u0abe\u0aae",
|
154 |
+
"placeholder": "\u0aa8\u0ab5\u0ac1\u0a82 \u0aa8\u0abe\u0aae \u0aa6\u0abe\u0a96\u0ab2 \u0a95\u0ab0\u0acb"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u0aa5\u0acd\u0ab0\u0ac7\u0aa1\u0aa8\u0ac1\u0a82 \u0aa8\u0abe\u0aae \u0aac\u0aa6\u0ab2\u0abe\u0aaf\u0ac1\u0a82!",
|
158 |
+
"inProgress": "\u0aa5\u0acd\u0ab0\u0ac7\u0aa1\u0aa8\u0ac1\u0a82 \u0aa8\u0abe\u0aae \u0aac\u0aa6\u0ab2\u0ac0 \u0ab0\u0ab9\u0acd\u0aaf\u0abe \u0a9b\u0ac0\u0a8f"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u0a9a\u0ac7\u0a9f",
|
166 |
+
"readme": "\u0ab5\u0abe\u0a82\u0a9a\u0acb",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u0aa8\u0ab5\u0ac0 \u0a9a\u0ac7\u0a9f",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u0aa8\u0ab5\u0ac0 \u0a9a\u0ac7\u0a9f \u0aac\u0aa8\u0abe\u0ab5\u0acb",
|
177 |
+
"description": "\u0a86 \u0aa4\u0aae\u0abe\u0ab0\u0acb \u0ab5\u0ab0\u0acd\u0aa4\u0aae\u0abe\u0aa8 \u0a9a\u0ac7\u0a9f \u0a87\u0aa4\u0abf\u0ab9\u0abe\u0ab8 \u0ab8\u0abe\u0aab \u0a95\u0ab0\u0ab6\u0ac7. \u0ab6\u0ac1\u0a82 \u0aa4\u0aae\u0ac7 \u0a9a\u0abe\u0ab2\u0ac1 \u0ab0\u0abe\u0a96\u0ab5\u0abe \u0aae\u0abe\u0a82\u0a97\u0acb \u0a9b\u0acb?",
|
178 |
+
"tooltip": "\u0aa8\u0ab5\u0ac0 \u0a9a\u0ac7\u0a9f"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u0ab8\u0ac7\u0a9f\u0abf\u0a82\u0a97\u0acd\u0ab8",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API \u0a95\u0ac0",
|
186 |
+
"logout": "\u0ab2\u0ac9\u0a97\u0a86\u0a89\u0a9f"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u0a9c\u0ab0\u0ac2\u0ab0\u0ac0 API \u0a95\u0ac0",
|
192 |
+
"description": "\u0a86 \u0a8f\u0aaa\u0acd\u0ab2\u0abf\u0a95\u0ac7\u0ab6\u0aa8 \u0ab5\u0abe\u0aaa\u0ab0\u0ab5\u0abe \u0aae\u0abe\u0a9f\u0ac7, \u0aa8\u0ac0\u0a9a\u0ac7\u0aa8\u0ac0 API \u0a95\u0ac0 \u0a9c\u0ab0\u0ac2\u0ab0\u0ac0 \u0a9b\u0ac7. \u0a95\u0ac0 \u0aa4\u0aae\u0abe\u0ab0\u0abe \u0aa1\u0abf\u0ab5\u0abe\u0a87\u0ab8\u0aa8\u0abe \u0ab2\u0acb\u0a95\u0ab2 \u0ab8\u0acd\u0a9f\u0acb\u0ab0\u0ac7\u0a9c\u0aae\u0abe\u0a82 \u0ab8\u0a82\u0a97\u0acd\u0ab0\u0ab9\u0abf\u0aa4 \u0aa5\u0ab6\u0ac7.",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u0ab8\u0aab\u0ab3\u0aa4\u0abe\u0aaa\u0ac2\u0ab0\u0acd\u0ab5\u0a95 \u0ab8\u0abe\u0a9a\u0ab5\u0acd\u0aaf\u0ac1\u0a82"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/he-IL.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u05d1\u05d9\u05d8\u05d5\u05dc",
|
5 |
+
"confirm": "\u05d0\u05d9\u05e9\u05d5\u05e8",
|
6 |
+
"continue": "\u05d4\u05de\u05e9\u05da",
|
7 |
+
"goBack": "\u05d7\u05d6\u05d5\u05e8",
|
8 |
+
"reset": "\u05d0\u05d9\u05e4\u05d5\u05e1",
|
9 |
+
"submit": "\u05e9\u05dc\u05d7"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u05d8\u05d5\u05e2\u05df...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u05d0\u05d9\u05e8\u05e2\u05d4 \u05e9\u05d2\u05d9\u05d0\u05d4",
|
15 |
+
"serverConnection": "\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05ea\u05d7\u05d1\u05e8 \u05dc\u05e9\u05e8\u05ea"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u05d4\u05ea\u05d7\u05d1\u05e8 \u05db\u05d3\u05d9 \u05dc\u05d2\u05e9\u05ea \u05dc\u05d0\u05e4\u05dc\u05d9\u05e7\u05e6\u05d9\u05d4",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u05db\u05ea\u05d5\u05d1\u05ea \u05d0\u05d9\u05de\u05d9\u05d9\u05dc",
|
25 |
+
"required": "\u05e9\u05d3\u05d4 \u05d4\u05d0\u05d9\u05de\u05d9\u05d9\u05dc \u05d4\u05d5\u05d0 \u05e9\u05d3\u05d4 \u05d7\u05d5\u05d1\u05d4"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u05e1\u05d9\u05e1\u05de\u05d4",
|
29 |
+
"required": "\u05e9\u05d3\u05d4 \u05d4\u05e1\u05d9\u05e1\u05de\u05d4 \u05d4\u05d5\u05d0 \u05e9\u05d3\u05d4 \u05d7\u05d5\u05d1\u05d4"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u05d4\u05ea\u05d7\u05d1\u05e8"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u05d0\u05d5"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05ea\u05d7\u05d1\u05e8",
|
40 |
+
"signin": "\u05e0\u05e1\u05d4 \u05dc\u05d4\u05ea\u05d7\u05d1\u05e8 \u05e2\u05dd \u05d7\u05e9\u05d1\u05d5\u05df \u05d0\u05d7\u05e8",
|
41 |
+
"oauthSignin": "\u05e0\u05e1\u05d4 \u05dc\u05d4\u05ea\u05d7\u05d1\u05e8 \u05e2\u05dd \u05d7\u05e9\u05d1\u05d5\u05df \u05d0\u05d7\u05e8",
|
42 |
+
"redirectUriMismatch": "\u05db\u05ea\u05d5\u05d1\u05ea \u05d4\u05d4\u05e4\u05e0\u05d9\u05d4 \u05d0\u05d9\u05e0\u05d4 \u05ea\u05d5\u05d0\u05de\u05ea \u05d0\u05ea \u05ea\u05e6\u05d5\u05e8\u05ea \u05d0\u05e4\u05dc\u05d9\u05e7\u05e6\u05d9\u05d9\u05ea OAuth",
|
43 |
+
"oauthCallback": "\u05e0\u05e1\u05d4 \u05dc\u05d4\u05ea\u05d7\u05d1\u05e8 \u05e2\u05dd \u05d7\u05e9\u05d1\u05d5\u05df \u05d0\u05d7\u05e8",
|
44 |
+
"oauthCreateAccount": "\u05e0\u05e1\u05d4 \u05dc\u05d4\u05ea\u05d7\u05d1\u05e8 \u05e2\u05dd \u05d7\u05e9\u05d1\u05d5\u05df \u05d0\u05d7\u05e8",
|
45 |
+
"emailCreateAccount": "\u05e0\u05e1\u05d4 \u05dc\u05d4\u05ea\u05d7\u05d1\u05e8 \u05e2\u05dd \u05d7\u05e9\u05d1\u05d5\u05df \u05d0\u05d7\u05e8",
|
46 |
+
"callback": "\u05e0\u05e1\u05d4 \u05dc\u05d4\u05ea\u05d7\u05d1\u05e8 \u05e2\u05dd \u05d7\u05e9\u05d1\u05d5\u05df \u05d0\u05d7\u05e8",
|
47 |
+
"oauthAccountNotLinked": "\u05db\u05d3\u05d9 \u05dc\u05d0\u05de\u05ea \u05d0\u05ea \u05d6\u05d4\u05d5\u05ea\u05da, \u05d4\u05ea\u05d7\u05d1\u05e8 \u05e2\u05dd \u05d0\u05d5\u05ea\u05d5 \u05d7\u05e9\u05d1\u05d5\u05df \u05d1\u05d5 \u05d4\u05e9\u05ea\u05de\u05e9\u05ea \u05d1\u05de\u05e7\u05d5\u05e8",
|
48 |
+
"emailSignin": "\u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05d4\u05d9\u05d4 \u05dc\u05e9\u05dc\u05d5\u05d7 \u05d0\u05ea \u05d4\u05d0\u05d9\u05de\u05d9\u05d9\u05dc",
|
49 |
+
"emailVerify": "\u05d0\u05e0\u05d0 \u05d0\u05de\u05ea \u05d0\u05ea \u05d4\u05d0\u05d9\u05de\u05d9\u05d9\u05dc \u05e9\u05dc\u05da, \u05e0\u05e9\u05dc\u05d7 \u05d0\u05d9\u05de\u05d9\u05d9\u05dc \u05d7\u05d3\u05e9",
|
50 |
+
"credentialsSignin": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4. \u05d1\u05d3\u05d5\u05e7 \u05e9\u05d4\u05e4\u05e8\u05d8\u05d9\u05dd \u05e9\u05d4\u05d6\u05e0\u05ea \u05e0\u05db\u05d5\u05e0\u05d9\u05dd",
|
51 |
+
"sessionRequired": "\u05d0\u05e0\u05d0 \u05d4\u05ea\u05d7\u05d1\u05e8 \u05db\u05d3\u05d9 \u05dc\u05d2\u05e9\u05ea \u05dc\u05d3\u05e3 \u05d6\u05d4"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "\u05d4\u05de\u05e9\u05da \u05e2\u05dd {{provider}}"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u05d4\u05e7\u05dc\u05d3 \u05d0\u05ea \u05d4\u05d4\u05d5\u05d3\u05e2\u05d4 \u05e9\u05dc\u05da \u05db\u05d0\u05df...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u05e9\u05dc\u05d7 \u05d4\u05d5\u05d3\u05e2\u05d4",
|
63 |
+
"stop": "\u05e2\u05e6\u05d5\u05e8 \u05de\u05e9\u05d9\u05de\u05d4",
|
64 |
+
"attachFiles": "\u05e6\u05e8\u05e3 \u05e7\u05d1\u05e6\u05d9\u05dd"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u05d4\u05ea\u05d7\u05dc \u05d4\u05e7\u05dc\u05d8\u05d4",
|
69 |
+
"stop": "\u05e2\u05e6\u05d5\u05e8 \u05d4\u05e7\u05dc\u05d8\u05d4",
|
70 |
+
"connecting": "\u05de\u05ea\u05d7\u05d1\u05e8"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u05d2\u05e8\u05d5\u05e8 \u05d5\u05e9\u05d7\u05e8\u05e8 \u05e7\u05d1\u05e6\u05d9\u05dd \u05db\u05d0\u05df",
|
74 |
+
"browse": "\u05e2\u05d9\u05d9\u05df \u05d1\u05e7\u05d1\u05e6\u05d9\u05dd",
|
75 |
+
"sizeLimit": "\u05de\u05d2\u05d1\u05dc\u05d4:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u05d4\u05e2\u05dc\u05d0\u05d4 \u05e0\u05db\u05e9\u05dc\u05d4",
|
78 |
+
"cancelled": "\u05d4\u05e2\u05dc\u05d0\u05d4 \u05d1\u05d5\u05d8\u05dc\u05d4 \u05e9\u05dc"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u05de\u05e9\u05ea\u05de\u05e9 \u05d1",
|
84 |
+
"used": "\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u05d4\u05e2\u05ea\u05e7 \u05dc\u05dc\u05d5\u05d7",
|
89 |
+
"success": "\u05d4\u05d5\u05e2\u05ea\u05e7!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u05de\u05d5\u05e2\u05d9\u05dc",
|
94 |
+
"negative": "\u05dc\u05d0 \u05de\u05d5\u05e2\u05d9\u05dc",
|
95 |
+
"edit": "\u05e2\u05e8\u05d5\u05da \u05de\u05e9\u05d5\u05d1",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u05d4\u05d5\u05e1\u05e3 \u05ea\u05d2\u05d5\u05d1\u05d4",
|
98 |
+
"submit": "\u05e9\u05dc\u05d7 \u05de\u05e9\u05d5\u05d1"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u05de\u05e2\u05d3\u05db\u05df",
|
102 |
+
"updated": "\u05d4\u05de\u05e9\u05d5\u05d1 \u05e2\u05d5\u05d3\u05db\u05df"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u05e7\u05dc\u05d8\u05d9\u05dd \u05d0\u05d7\u05e8\u05d5\u05e0\u05d9\u05dd",
|
108 |
+
"empty": "\u05db\u05dc \u05db\u05da \u05e8\u05d9\u05e7...",
|
109 |
+
"show": "\u05d4\u05e6\u05d2 \u05d4\u05d9\u05e1\u05d8\u05d5\u05e8\u05d9\u05d4"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u05e4\u05d0\u05e0\u05dc \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea"
|
113 |
+
},
|
114 |
+
"watermark": "\u05e0\u05d1\u05e0\u05d4 \u05d1\u05d0\u05de\u05e6\u05e2\u05d5\u05ea"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u05e6'\u05d0\u05d8\u05d9\u05dd \u05e7\u05d5\u05d3\u05de\u05d9\u05dd",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u05d7\u05d9\u05e4\u05d5\u05e9",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u05d4\u05d9\u05d5\u05dd",
|
125 |
+
"yesterday": "\u05d0\u05ea\u05de\u05d5\u05dc",
|
126 |
+
"previous7days": "7 \u05d9\u05de\u05d9\u05dd \u05d0\u05d7\u05e8\u05d5\u05e0\u05d9\u05dd",
|
127 |
+
"previous30days": "30 \u05d9\u05de\u05d9\u05dd \u05d0\u05d7\u05e8\u05d5\u05e0\u05d9\u05dd"
|
128 |
+
},
|
129 |
+
"empty": "\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d5 \u05e9\u05d9\u05d7\u05d5\u05ea",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u05e1\u05d2\u05d5\u05e8 \u05e1\u05e8\u05d2\u05dc \u05e6\u05d3",
|
132 |
+
"open": "\u05e4\u05ea\u05d7 \u05e1\u05e8\u05d2\u05dc \u05e6\u05d3"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u05e9\u05d9\u05d7\u05d4 \u05dc\u05dc\u05d0 \u05db\u05d5\u05ea\u05e8\u05ea",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u05d0\u05e9\u05e8 \u05de\u05d7\u05d9\u05e7\u05d4",
|
144 |
+
"description": "\u05e4\u05e2\u05d5\u05dc\u05d4 \u05d6\u05d5 \u05ea\u05de\u05d7\u05e7 \u05d0\u05ea \u05d4\u05e9\u05d9\u05d7\u05d4 \u05d5\u05db\u05df \u05d0\u05ea \u05d4\u05d4\u05d5\u05d3\u05e2\u05d5\u05ea \u05d5\u05d4\u05d0\u05dc\u05de\u05e0\u05d8\u05d9\u05dd \u05e9\u05dc\u05d4. \u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d1\u05d8\u05dc \u05e4\u05e2\u05d5\u05dc\u05d4 \u05d6\u05d5",
|
145 |
+
"success": "\u05d4\u05e6'\u05d0\u05d8 \u05e0\u05de\u05d7\u05e7",
|
146 |
+
"inProgress": "\u05de\u05d5\u05d7\u05e7 \u05e6'\u05d0\u05d8"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u05e9\u05e0\u05d4 \u05e9\u05dd \u05e9\u05d9\u05d7\u05d4",
|
150 |
+
"description": "\u05d4\u05d6\u05df \u05e9\u05dd \u05d7\u05d3\u05e9 \u05dc\u05e9\u05d9\u05d7\u05d4 \u05d6\u05d5",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u05e9\u05dd",
|
154 |
+
"placeholder": "\u05d4\u05d6\u05df \u05e9\u05dd \u05d7\u05d3\u05e9"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u05e9\u05dd \u05d4\u05e9\u05d9\u05d7\u05d4 \u05e9\u05d5\u05e0\u05d4!",
|
158 |
+
"inProgress": "\u05de\u05e9\u05e0\u05d4 \u05e9\u05dd \u05e9\u05d9\u05d7\u05d4"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u05e6'\u05d0\u05d8",
|
166 |
+
"readme": "\u05e7\u05e8\u05d0 \u05d0\u05d5\u05ea\u05d9",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u05e6'\u05d0\u05d8 \u05d7\u05d3\u05e9",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u05e6\u05d5\u05e8 \u05e6'\u05d0\u05d8 \u05d7\u05d3\u05e9",
|
177 |
+
"description": "\u05e4\u05e2\u05d5\u05dc\u05d4 \u05d6\u05d5 \u05ea\u05e0\u05e7\u05d4 \u05d0\u05ea \u05d4\u05d9\u05e1\u05d8\u05d5\u05e8\u05d9\u05d9\u05ea \u05d4\u05e6'\u05d0\u05d8 \u05d4\u05e0\u05d5\u05db\u05d7\u05d9\u05ea \u05e9\u05dc\u05da. \u05d4\u05d0\u05dd \u05d0\u05ea\u05d4 \u05d1\u05d8\u05d5\u05d7 \u05e9\u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05d4\u05de\u05e9\u05d9\u05da?",
|
178 |
+
"tooltip": "\u05e6'\u05d0\u05d8 \u05d7\u05d3\u05e9"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u05d4\u05d2\u05d3\u05e8\u05d5\u05ea",
|
184 |
+
"settingsKey": "\u05d4",
|
185 |
+
"apiKeys": "\u05de\u05e4\u05ea\u05d7\u05d5\u05ea API",
|
186 |
+
"logout": "\u05d4\u05ea\u05e0\u05ea\u05e7"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u05de\u05e4\u05ea\u05d7\u05d5\u05ea API \u05e0\u05d3\u05e8\u05e9\u05d9\u05dd",
|
192 |
+
"description": "\u05db\u05d3\u05d9 \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05d0\u05e4\u05dc\u05d9\u05e7\u05e6\u05d9\u05d4 \u05d6\u05d5, \u05e0\u05d3\u05e8\u05e9\u05d9\u05dd \u05de\u05e4\u05ea\u05d7\u05d5\u05ea API \u05d4\u05d1\u05d0\u05d9\u05dd. \u05d4\u05de\u05e4\u05ea\u05d7\u05d5\u05ea \u05de\u05d0\u05d5\u05d7\u05e1\u05e0\u05d9\u05dd \u05d1\u05d0\u05d7\u05e1\u05d5\u05df \u05d4\u05de\u05e7\u05d5\u05de\u05d9 \u05e9\u05dc \u05d4\u05de\u05db\u05e9\u05d9\u05e8 \u05e9\u05dc\u05da.",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u05e0\u05e9\u05de\u05e8 \u05d1\u05d4\u05e6\u05dc\u05d7\u05d4"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/hi.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u0930\u0926\u094d\u0926 \u0915\u0930\u0947\u0902",
|
5 |
+
"confirm": "\u092a\u0941\u0937\u094d\u091f\u093f \u0915\u0930\u0947\u0902",
|
6 |
+
"continue": "\u091c\u093e\u0930\u0940 \u0930\u0916\u0947\u0902",
|
7 |
+
"goBack": "\u0935\u093e\u092a\u0938 \u091c\u093e\u090f\u0902",
|
8 |
+
"reset": "\u0930\u0940\u0938\u0947\u091f \u0915\u0930\u0947\u0902",
|
9 |
+
"submit": "\u091c\u092e\u093e \u0915\u0930\u0947\u0902"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u0932\u094b\u0921 \u0939\u094b \u0930\u0939\u093e \u0939\u0948...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u090f\u0915 \u0924\u094d\u0930\u0941\u091f\u093f \u0939\u0941\u0908",
|
15 |
+
"serverConnection": "\u0938\u0930\u094d\u0935\u0930 \u0938\u0947 \u0938\u0902\u092a\u0930\u094d\u0915 \u0928\u0939\u0940\u0902 \u0939\u094b \u092a\u093e \u0930\u0939\u093e"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u0910\u092a \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930\u0928\u0947 \u0915\u0947 \u0932\u093f\u090f \u0932\u0949\u0917\u093f\u0928 \u0915\u0930\u0947\u0902",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u0908\u092e\u0947\u0932 \u092a\u0924\u093e",
|
25 |
+
"required": "\u0908\u092e\u0947\u0932 \u090f\u0915 \u0906\u0935\u0936\u094d\u092f\u0915 \u092b\u093c\u0940\u0932\u094d\u0921 \u0939\u0948"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u092a\u093e\u0938\u0935\u0930\u094d\u0921",
|
29 |
+
"required": "\u092a\u093e\u0938\u0935\u0930\u094d\u0921 \u090f\u0915 \u0906\u0935\u0936\u094d\u092f\u0915 \u092b\u093c\u0940\u0932\u094d\u0921 \u0939\u0948"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0947\u0902"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u092f\u093e"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0928\u0947 \u092e\u0947\u0902 \u0905\u0938\u092e\u0930\u094d\u0925",
|
40 |
+
"signin": "\u0915\u093f\u0938\u0940 \u0926\u0942\u0938\u0930\u0947 \u0916\u093e\u0924\u0947 \u0938\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0928\u0947 \u0915\u093e \u092a\u094d\u0930\u092f\u093e\u0938 \u0915\u0930\u0947\u0902",
|
41 |
+
"oauthSignin": "\u0915\u093f\u0938\u0940 \u0926\u0942\u0938\u0930\u0947 \u0916\u093e\u0924\u0947 \u0938\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0928\u0947 \u0915\u093e \u092a\u094d\u0930\u092f\u093e\u0938 \u0915\u0930\u0947\u0902",
|
42 |
+
"redirectUriMismatch": "\u0930\u0940\u0921\u093e\u092f\u0930\u0947\u0915\u094d\u091f URI oauth \u0910\u092a \u0915\u0949\u0928\u094d\u092b\u093c\u093f\u0917\u0930\u0947\u0936\u0928 \u0938\u0947 \u092e\u0947\u0932 \u0928\u0939\u0940\u0902 \u0916\u093e \u0930\u0939\u093e",
|
43 |
+
"oauthCallback": "\u0915\u093f\u0938\u0940 \u0926\u0942\u0938\u0930\u0947 \u0916\u093e\u0924\u0947 \u0938\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0928\u0947 \u0915\u093e \u092a\u094d\u0930\u092f\u093e\u0938 \u0915\u0930\u0947\u0902",
|
44 |
+
"oauthCreateAccount": "\u0915\u093f\u0938\u0940 \u0926\u0942\u0938\u0930\u0947 \u0916\u093e\u0924\u0947 \u0938\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0928\u0947 \u0915\u093e \u092a\u094d\u0930\u092f\u093e\u0938 \u0915\u0930\u0947\u0902",
|
45 |
+
"emailCreateAccount": "\u0915\u093f\u0938\u0940 \u0926\u0942\u0938\u0930\u0947 \u0916\u093e\u0924\u0947 \u0938\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0928\u0947 \u0915\u093e \u092a\u094d\u0930\u092f\u093e\u0938 \u0915\u0930\u0947\u0902",
|
46 |
+
"callback": "\u0915\u093f\u0938\u0940 \u0926\u0942\u0938\u0930\u0947 \u0916\u093e\u0924\u0947 \u0938\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0928\u0947 \u0915\u093e \u092a\u094d\u0930\u092f\u093e\u0938 \u0915\u0930\u0947\u0902",
|
47 |
+
"oauthAccountNotLinked": "\u0905\u092a\u0928\u0940 \u092a\u0939\u091a\u093e\u0928 \u0915\u0940 \u092a\u0941\u0937\u094d\u091f\u093f \u0915\u0930\u0928\u0947 \u0915\u0947 \u0932\u093f\u090f, \u0909\u0938\u0940 \u0916\u093e\u0924\u0947 \u0938\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0947\u0902 \u091c\u093f\u0938\u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0906\u092a\u0928\u0947 \u092e\u0942\u0932 \u0930\u0942\u092a \u0938\u0947 \u0915\u093f\u092f\u093e \u0925\u093e",
|
48 |
+
"emailSignin": "\u0908\u092e\u0947\u0932 \u0928\u0939\u0940\u0902 \u092d\u0947\u091c\u093e \u091c\u093e \u0938\u0915\u093e",
|
49 |
+
"emailVerify": "\u0915\u0943\u092a\u092f\u093e \u0905\u092a\u0928\u093e \u0908\u092e\u0947\u0932 \u0938\u0924\u094d\u092f\u093e\u092a\u093f\u0924 \u0915\u0930\u0947\u0902, \u090f\u0915 \u0928\u092f\u093e \u0908\u092e\u0947\u0932 \u092d\u0947\u091c\u093e \u0917\u092f\u093e \u0939\u0948",
|
50 |
+
"credentialsSignin": "\u0938\u093e\u0907\u0928 \u0907\u0928 \u0935\u093f\u092b\u0932\u0964 \u0906\u092a\u0915\u0947 \u0926\u094d\u0935\u093e\u0930\u093e \u092a\u094d\u0930\u0926\u093e\u0928 \u0915\u093f\u090f \u0917\u090f \u0935\u093f\u0935\u0930\u0923 \u0915\u0940 \u091c\u093e\u0902\u091a \u0915\u0930\u0947\u0902",
|
51 |
+
"sessionRequired": "\u0907\u0938 \u092a\u0943\u0937\u094d\u0920 \u0924\u0915 \u092a\u0939\u0941\u0902\u091a\u0928\u0947 \u0915\u0947 \u0932\u093f\u090f \u0915\u0943\u092a\u092f\u093e \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0947\u0902"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "{{provider}} \u0915\u0947 \u0938\u093e\u0925 \u091c\u093e\u0930\u0940 \u0930\u0916\u0947\u0902"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u0905\u092a\u0928\u093e \u0938\u0902\u0926\u0947\u0936 \u092f\u0939\u093e\u0902 \u091f\u093e\u0907\u092a \u0915\u0930\u0947\u0902...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u0938\u0902\u0926\u0947\u0936 \u092d\u0947\u091c\u0947\u0902",
|
63 |
+
"stop": "\u0915\u093e\u0930\u094d\u092f \u0930\u094b\u0915\u0947\u0902",
|
64 |
+
"attachFiles": "\u092b\u093c\u093e\u0907\u0932\u0947\u0902 \u0938\u0902\u0932\u0917\u094d\u0928 \u0915\u0930\u0947\u0902"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u0930\u093f\u0915\u0949\u0930\u094d\u0921\u093f\u0902\u0917 \u0936\u0941\u0930\u0942 \u0915\u0930\u0947\u0902",
|
69 |
+
"stop": "\u0930\u093f\u0915\u0949\u0930\u094d\u0921\u093f\u0902\u0917 \u0930\u094b\u0915\u0947\u0902",
|
70 |
+
"connecting": "\u0915\u0928\u0947\u0915\u094d\u091f \u0939\u094b \u0930\u0939\u093e \u0939\u0948"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u092b\u093c\u093e\u0907\u0932\u094b\u0902 \u0915\u094b \u092f\u0939\u093e\u0902 \u0916\u0940\u0902\u091a\u0947\u0902 \u0914\u0930 \u091b\u094b\u0921\u093c\u0947\u0902",
|
74 |
+
"browse": "\u092b\u093c\u093e\u0907\u0932\u0947\u0902 \u092c\u094d\u0930\u093e\u0909\u091c\u093c \u0915\u0930\u0947\u0902",
|
75 |
+
"sizeLimit": "\u0938\u0940\u092e\u093e:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u0905\u092a\u0932\u094b\u0921 \u0915\u0930\u0928\u0947 \u092e\u0947\u0902 \u0935\u093f\u092b\u0932",
|
78 |
+
"cancelled": "\u0915\u093e \u0905\u092a\u0932\u094b\u0921 \u0930\u0926\u094d\u0926 \u0915\u093f\u092f\u093e \u0917\u092f\u093e"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u0909\u092a\u092f\u094b\u0917 \u0915\u0930 \u0930\u0939\u0947 \u0939\u0948\u0902",
|
84 |
+
"used": "\u0909\u092a\u092f\u094b\u0917 \u0915\u093f\u092f\u093e"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u0915\u094d\u0932\u093f\u092a\u092c\u094b\u0930\u094d\u0921 \u092a\u0930 \u0915\u0949\u092a\u0940 \u0915\u0930\u0947\u0902",
|
89 |
+
"success": "\u0915\u0949\u092a\u0940 \u0915\u093f\u092f\u093e \u0917\u092f\u093e!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u0938\u0939\u093e\u092f\u0915",
|
94 |
+
"negative": "\u0938\u0939\u093e\u092f\u0915 \u0928\u0939\u0940\u0902",
|
95 |
+
"edit": "\u092a\u094d\u0930\u0924\u093f\u0915\u094d\u0930\u093f\u092f\u093e \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u0947\u0902",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u091f\u093f\u092a\u094d\u092a\u0923\u0940 \u091c\u094b\u0921\u093c\u0947\u0902",
|
98 |
+
"submit": "\u092a\u094d\u0930\u0924\u093f\u0915\u094d\u0930\u093f\u092f\u093e \u091c\u092e\u093e \u0915\u0930\u0947\u0902"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u0905\u092a\u0921\u0947\u091f \u0939\u094b \u0930\u0939\u093e \u0939\u0948",
|
102 |
+
"updated": "\u092a\u094d\u0930\u0924\u093f\u0915\u094d\u0930\u093f\u092f\u093e \u0905\u092a\u0921\u0947\u091f \u0915\u0940 \u0917\u0908"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u092a\u093f\u091b\u0932\u0947 \u0907\u0928\u092a\u0941\u091f",
|
108 |
+
"empty": "\u0915\u0941\u091b \u092d\u0940 \u0928\u0939\u0940\u0902 \u0939\u0948...",
|
109 |
+
"show": "\u0907\u0924\u093f\u0939\u093e\u0938 \u0926\u093f\u0916\u093e\u090f\u0902"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u0938\u0947\u091f\u093f\u0902\u0917\u094d\u0938 \u092a\u0948\u0928\u0932"
|
113 |
+
},
|
114 |
+
"watermark": "\u0915\u0947 \u0938\u093e\u0925 \u092c\u0928\u093e\u092f\u093e \u0917\u092f\u093e"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u092a\u093f\u091b\u0932\u0940 \u091a\u0948\u091f",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u0916\u094b\u091c\u0947\u0902",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u0906\u091c",
|
125 |
+
"yesterday": "\u0915\u0932",
|
126 |
+
"previous7days": "\u092a\u093f\u091b\u0932\u0947 7 \u0926\u093f\u0928",
|
127 |
+
"previous30days": "\u092a\u093f\u091b\u0932\u0947 30 \u0926\u093f\u0928"
|
128 |
+
},
|
129 |
+
"empty": "\u0915\u094b\u0908 \u0925\u094d\u0930\u0947\u0921 \u0928\u0939\u0940\u0902 \u092e\u093f\u0932\u093e",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u0938\u093e\u0907\u0921\u092c\u093e\u0930 \u092c\u0902\u0926 \u0915\u0930\u0947\u0902",
|
132 |
+
"open": "\u0938\u093e\u0907\u0921\u092c\u093e\u0930 \u0916\u094b\u0932\u0947\u0902"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u0936\u0940\u0930\u094d\u0937\u0915\u0939\u0940\u0928 \u0935\u093e\u0930\u094d\u0924\u093e\u0932\u093e\u092a",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u0939\u091f\u093e\u0928\u0947 \u0915\u0940 \u092a\u0941\u0937\u094d\u091f\u093f \u0915\u0930\u0947\u0902",
|
144 |
+
"description": "\u092f\u0939 \u0925\u094d\u0930\u0947\u0921 \u0914\u0930 \u0907\u0938\u0915\u0947 \u0938\u0902\u0926\u0947\u0936\u094b\u0902 \u0914\u0930 \u0924\u0924\u094d\u0935\u094b\u0902 \u0915\u094b \u0939\u091f\u093e \u0926\u0947\u0917\u093e\u0964 \u092f\u0939 \u0915\u094d\u0930\u093f\u092f\u093e \u0935\u093e\u092a\u0938 \u0928\u0939\u0940\u0902 \u0915\u0940 \u091c\u093e \u0938\u0915\u0924\u0940",
|
145 |
+
"success": "\u091a\u0948\u091f \u0939\u091f\u093e \u0926\u0940 \u0917\u0908",
|
146 |
+
"inProgress": "\u091a\u0948\u091f \u0939\u091f\u093e\u0908 \u091c\u093e \u0930\u0939\u0940 \u0939\u0948"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u0925\u094d\u0930\u0947\u0921 \u0915\u093e \u0928\u093e\u092e \u092c\u0926\u0932\u0947\u0902",
|
150 |
+
"description": "\u0907\u0938 \u0925\u094d\u0930\u0947\u0921 \u0915\u0947 \u0932\u093f\u090f \u090f\u0915 \u0928\u092f\u093e \u0928\u093e\u092e \u0926\u0930\u094d\u091c \u0915\u0930\u0947\u0902",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u0928\u093e\u092e",
|
154 |
+
"placeholder": "\u0928\u092f\u093e \u0928\u093e\u092e \u0926\u0930\u094d\u091c \u0915\u0930\u0947\u0902"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u0925\u094d\u0930\u0947\u0921 \u0915\u093e \u0928\u093e\u092e \u092c\u0926\u0932 \u0926\u093f\u092f\u093e \u0917\u092f\u093e!",
|
158 |
+
"inProgress": "\u0925\u094d\u0930\u0947\u0921 \u0915\u093e \u0928\u093e\u092e \u092c\u0926\u0932\u093e \u091c\u093e \u0930\u0939\u093e \u0939\u0948"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u091a\u0948\u091f",
|
166 |
+
"readme": "\u0930\u0940\u0921\u092e\u0940",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u0928\u0908 \u091a\u0948\u091f",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u0928\u0908 \u091a\u0948\u091f \u092c\u0928\u093e\u090f\u0902",
|
177 |
+
"description": "\u092f\u0939 \u0906\u092a\u0915\u093e \u0935\u0930\u094d\u0924\u092e\u093e\u0928 \u091a\u0948\u091f \u0907\u0924\u093f\u0939\u093e\u0938 \u0938\u093e\u092b\u093c \u0915\u0930 \u0926\u0947\u0917\u093e\u0964 \u0915\u094d\u092f\u093e \u0906\u092a \u091c\u093e\u0930\u0940 \u0930\u0916\u0928\u093e \u091a\u093e\u0939\u0924\u0947 \u0939\u0948\u0902?",
|
178 |
+
"tooltip": "\u0928\u0908 \u091a\u0948\u091f"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u0938\u0947\u091f\u093f\u0902\u0917\u094d\u0938",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API \u0915\u0941\u0902\u091c\u093f\u092f\u093e\u0902",
|
186 |
+
"logout": "\u0932\u0949\u0917\u0906\u0909\u091f"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u0906\u0935\u0936\u094d\u092f\u0915 API \u0915\u0941\u0902\u091c\u093f\u092f\u093e\u0902",
|
192 |
+
"description": "\u0907\u0938 \u0910\u092a \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930\u0928\u0947 \u0915\u0947 \u0932\u093f\u090f, \u0928\u093f\u092e\u094d\u0928\u0932\u093f\u0916\u093f\u0924 API \u0915\u0941\u0902\u091c\u093f\u092f\u093e\u0902 \u0906\u0935\u0936\u094d\u092f\u0915 \u0939\u0948\u0902\u0964 \u0915\u0941\u0902\u091c\u093f\u092f\u093e\u0902 \u0906\u092a\u0915\u0947 \u0921\u093f\u0935\u093e\u0907\u0938 \u0915\u0947 \u0938\u094d\u0925\u093e\u0928\u0940\u092f \u0938\u0902\u0917\u094d\u0930\u0939\u0923 \u092e\u0947\u0902 \u0938\u0902\u0917\u094d\u0930\u0939\u0940\u0924 \u0915\u0940 \u091c\u093e\u0924\u0940 \u0939\u0948\u0902\u0964",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u0938\u092b\u0932\u0924\u093e\u092a\u0942\u0930\u094d\u0935\u0915 \u0938\u0939\u0947\u091c\u093e \u0917\u092f\u093e"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/ja.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u30ad\u30e3\u30f3\u30bb\u30eb",
|
5 |
+
"confirm": "\u78ba\u8a8d",
|
6 |
+
"continue": "\u7d9a\u3051\u308b",
|
7 |
+
"goBack": "\u623b\u308b",
|
8 |
+
"reset": "\u30ea\u30bb\u30c3\u30c8",
|
9 |
+
"submit": "\u9001\u4fe1"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u8aad\u307f\u8fbc\u307f\u4e2d...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f",
|
15 |
+
"serverConnection": "\u30b5\u30fc\u30d0\u30fc\u306b\u63a5\u7d9a\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u30a2\u30d7\u30ea\u306b\u30ed\u30b0\u30a4\u30f3",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
|
25 |
+
"required": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306f\u5fc5\u9808\u9805\u76ee\u3067\u3059"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u30d1\u30b9\u30ef\u30fc\u30c9",
|
29 |
+
"required": "\u30d1\u30b9\u30ef\u30fc\u30c9\u306f\u5fc5\u9808\u9805\u76ee\u3067\u3059"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u30b5\u30a4\u30f3\u30a4\u30f3"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u307e\u305f\u306f"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u30b5\u30a4\u30f3\u30a4\u30f3\u3067\u304d\u307e\u305b\u3093",
|
40 |
+
"signin": "\u5225\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044",
|
41 |
+
"oauthSignin": "\u5225\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044",
|
42 |
+
"redirectUriMismatch": "\u30ea\u30c0\u30a4\u30ec\u30af\u30c8URI\u304cOAuth\u30a2\u30d7\u30ea\u306e\u8a2d\u5b9a\u3068\u4e00\u81f4\u3057\u307e\u305b\u3093",
|
43 |
+
"oauthCallback": "\u5225\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044",
|
44 |
+
"oauthCreateAccount": "\u5225\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044",
|
45 |
+
"emailCreateAccount": "\u5225\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044",
|
46 |
+
"callback": "\u5225\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044",
|
47 |
+
"oauthAccountNotLinked": "\u672c\u4eba\u78ba\u8a8d\u306e\u305f\u3081\u3001\u6700\u521d\u306b\u4f7f\u7528\u3057\u305f\u306e\u3068\u540c\u3058\u30a2\u30ab\u30a6\u30f3\u30c8\u3067\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044",
|
48 |
+
"emailSignin": "\u30e1\u30fc\u30eb\u3092\u9001\u4fe1\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f",
|
49 |
+
"emailVerify": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u65b0\u3057\u3044\u30e1\u30fc\u30eb\u304c\u9001\u4fe1\u3055\u308c\u307e\u3057\u305f",
|
50 |
+
"credentialsSignin": "\u30b5\u30a4\u30f3\u30a4\u30f3\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\u5165\u529b\u3057\u305f\u60c5\u5831\u304c\u6b63\u3057\u3044\u304b\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044",
|
51 |
+
"sessionRequired": "\u3053\u306e\u30da\u30fc\u30b8\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u306b\u306f\u30b5\u30a4\u30f3\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "{{provider}}\u3067\u7d9a\u3051\u308b"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u9001\u4fe1",
|
63 |
+
"stop": "\u30bf\u30b9\u30af\u3092\u505c\u6b62",
|
64 |
+
"attachFiles": "\u30d5\u30a1\u30a4\u30eb\u3092\u6dfb\u4ed8"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u9332\u97f3\u958b\u59cb",
|
69 |
+
"stop": "\u9332\u97f3\u505c\u6b62",
|
70 |
+
"connecting": "\u63a5\u7d9a\u4e2d"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u3053\u3053\u306b\u30d5\u30a1\u30a4\u30eb\u3092\u30c9\u30e9\u30c3\u30b0\uff06\u30c9\u30ed\u30c3\u30d7",
|
74 |
+
"browse": "\u30d5\u30a1\u30a4\u30eb\u3092\u53c2\u7167",
|
75 |
+
"sizeLimit": "\u5236\u9650\uff1a",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u306b\u5931\u6557\u3057\u307e\u3057\u305f",
|
78 |
+
"cancelled": "\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3092\u30ad\u30e3\u30f3\u30bb\u30eb\u3057\u307e\u3057\u305f\uff1a"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u4f7f\u7528\u4e2d",
|
84 |
+
"used": "\u4f7f\u7528\u6e08\u307f"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u306b\u30b3\u30d4\u30fc",
|
89 |
+
"success": "\u30b3\u30d4\u30fc\u3057\u307e\u3057\u305f\uff01"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u5f79\u306b\u7acb\u3063\u305f",
|
94 |
+
"negative": "\u5f79\u306b\u7acb\u305f\u306a\u304b\u3063\u305f",
|
95 |
+
"edit": "\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u7de8\u96c6",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u30b3\u30e1\u30f3\u30c8\u3092\u8ffd\u52a0",
|
98 |
+
"submit": "\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u9001\u4fe1"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u66f4\u65b0\u4e2d",
|
102 |
+
"updated": "\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u66f4\u65b0\u3057\u307e\u3057\u305f"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u6700\u8fd1\u306e\u5165\u529b",
|
108 |
+
"empty": "\u4f55\u3082\u3042\u308a\u307e\u305b\u3093...",
|
109 |
+
"show": "\u5c65\u6b74\u3092\u8868\u793a"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u8a2d\u5b9a\u30d1\u30cd\u30eb"
|
113 |
+
},
|
114 |
+
"watermark": "\u958b\u767a\u5143\uff1a"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u904e\u53bb\u306e\u30c1\u30e3\u30c3\u30c8",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u691c\u7d22",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u4eca\u65e5",
|
125 |
+
"yesterday": "\u6628\u65e5",
|
126 |
+
"previous7days": "\u904e\u53bb7\u65e5\u9593",
|
127 |
+
"previous30days": "\u904e\u53bb30\u65e5\u9593"
|
128 |
+
},
|
129 |
+
"empty": "\u30b9\u30ec\u30c3\u30c9\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u9589\u3058\u308b",
|
132 |
+
"open": "\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u958b\u304f"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u7121\u984c\u306e\u4f1a\u8a71",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u524a\u9664\u306e\u78ba\u8a8d",
|
144 |
+
"description": "\u3053\u306e\u30b9\u30ec\u30c3\u30c9\u3068\u305d\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u3001\u8981\u7d20\u304c\u524a\u9664\u3055\u308c\u307e\u3059\u3002\u3053\u306e\u64cd\u4f5c\u306f\u53d6\u308a\u6d88\u305b\u307e\u305b\u3093",
|
145 |
+
"success": "\u30c1\u30e3\u30c3\u30c8\u3092\u524a\u9664\u3057\u307e\u3057\u305f",
|
146 |
+
"inProgress": "\u30c1\u30e3\u30c3\u30c8\u3092\u524a\u9664\u4e2d"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u30b9\u30ec\u30c3\u30c9\u306e\u540d\u524d\u3092\u5909\u66f4",
|
150 |
+
"description": "\u3053\u306e\u30b9\u30ec\u30c3\u30c9\u306e\u65b0\u3057\u3044\u540d\u524d\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u540d\u524d",
|
154 |
+
"placeholder": "\u65b0\u3057\u3044\u540d\u524d\u3092\u5165\u529b"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u30b9\u30ec\u30c3\u30c9\u540d\u3092\u5909\u66f4\u3057\u307e\u3057\u305f\uff01",
|
158 |
+
"inProgress": "\u30b9\u30ec\u30c3\u30c9\u540d\u3092\u5909\u66f4\u4e2d"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u30c1\u30e3\u30c3\u30c8",
|
166 |
+
"readme": "\u8aac\u660e\u66f8",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u65b0\u898f\u30c1\u30e3\u30c3\u30c8",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u65b0\u898f\u30c1\u30e3\u30c3\u30c8\u306e\u4f5c\u6210",
|
177 |
+
"description": "\u73fe\u5728\u306e\u30c1\u30e3\u30c3\u30c8\u5c65\u6b74\u304c\u30af\u30ea\u30a2\u3055\u308c\u307e\u3059\u3002\u7d9a\u884c\u3057\u307e\u3059\u304b\uff1f",
|
178 |
+
"tooltip": "\u65b0\u898f\u30c1\u30e3\u30c3\u30c8"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u8a2d\u5b9a",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API\u30ad\u30fc",
|
186 |
+
"logout": "\u30ed\u30b0\u30a2\u30a6\u30c8"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u5fc5\u8981\u306aAPI\u30ad\u30fc",
|
192 |
+
"description": "\u3053\u306e\u30a2\u30d7\u30ea\u3092\u4f7f\u7528\u3059\u308b\u306b\u306f\u3001\u4ee5\u4e0b\u306eAPI\u30ad\u30fc\u304c\u5fc5\u8981\u3067\u3059\u3002\u30ad\u30fc\u306f\u304a\u4f7f\u3044\u306e\u30c7\u30d0\u30a4\u30b9\u306e\u30ed\u30fc\u30ab\u30eb\u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u4fdd\u5b58\u3055\u308c\u307e\u3059\u3002",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u4fdd\u5b58\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/kn.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u0cb0\u0ca6\u0ccd\u0ca6\u0cc1\u0cae\u0cbe\u0ca1\u0cbf",
|
5 |
+
"confirm": "\u0ca6\u0cc3\u0ca2\u0cc0\u0c95\u0cb0\u0cbf\u0cb8\u0cbf",
|
6 |
+
"continue": "\u0cae\u0cc1\u0c82\u0ca6\u0cc1\u0cb5\u0cb0\u0cbf\u0cb8\u0cbf",
|
7 |
+
"goBack": "\u0cb9\u0cbf\u0c82\u0ca6\u0cc6 \u0cb9\u0ccb\u0c97\u0cbf",
|
8 |
+
"reset": "\u0cae\u0cb0\u0cc1\u0cb9\u0cca\u0c82\u0ca6\u0cbf\u0cb8\u0cbf",
|
9 |
+
"submit": "\u0cb8\u0cb2\u0ccd\u0cb2\u0cbf\u0cb8\u0cbf"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u0cb2\u0ccb\u0ca1\u0ccd \u0c86\u0c97\u0cc1\u0ca4\u0ccd\u0ca4\u0cbf\u0ca6\u0cc6...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u0ca6\u0ccb\u0cb7 \u0cb8\u0c82\u0cad\u0cb5\u0cbf\u0cb8\u0cbf\u0ca6\u0cc6",
|
15 |
+
"serverConnection": "\u0cb8\u0cb0\u0ccd\u0cb5\u0cb0\u0ccd\u200c \u0c85\u0ca8\u0ccd\u0ca8\u0cc1 \u0ca4\u0cb2\u0cc1\u0caa\u0cb2\u0cc1 \u0cb8\u0cbe\u0ca7\u0ccd\u0caf\u0cb5\u0cbe\u0c97\u0cb2\u0cbf\u0cb2\u0ccd\u0cb2"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u0c85\u0caa\u0ccd\u0cb2\u0cbf\u0c95\u0cc7\u0cb6\u0ca8\u0ccd\u200c\u0c97\u0cc6 \u0caa\u0ccd\u0cb0\u0cb5\u0cc7\u0cb6\u0cbf\u0cb8\u0cb2\u0cc1 \u0cb2\u0cbe\u0c97\u0cbf\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cbf",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u0c87\u0cae\u0cc7\u0cb2\u0ccd \u0cb5\u0cbf\u0cb3\u0cbe\u0cb8",
|
25 |
+
"required": "\u0c87\u0cae\u0cc7\u0cb2\u0ccd \u0c85\u0c97\u0ca4\u0ccd\u0caf\u0cb5\u0cbf\u0cb0\u0cc1\u0cb5 \u0c95\u0ccd\u0cb7\u0cc7\u0ca4\u0ccd\u0cb0"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u0caa\u0cbe\u0cb8\u0ccd\u200c\u0cb5\u0cb0\u0ccd\u0ca1\u0ccd",
|
29 |
+
"required": "\u0caa\u0cbe\u0cb8\u0ccd\u200c\u0cb5\u0cb0\u0ccd\u0ca1\u0ccd \u0c85\u0c97\u0ca4\u0ccd\u0caf\u0cb5\u0cbf\u0cb0\u0cc1\u0cb5 \u0c95\u0ccd\u0cb7\u0cc7\u0ca4\u0ccd\u0cb0"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cbf"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u0c85\u0ca5\u0cb5\u0cbe"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cb2\u0cc1 \u0cb8\u0cbe\u0ca7\u0ccd\u0caf\u0cb5\u0cbe\u0c97\u0cb2\u0cbf\u0cb2\u0ccd\u0cb2",
|
40 |
+
"signin": "\u0cac\u0cc7\u0cb0\u0cc6 \u0c96\u0cbe\u0ca4\u0cc6\u0caf\u0cca\u0c82\u0ca6\u0cbf\u0c97\u0cc6 \u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cb2\u0cc1 \u0caa\u0ccd\u0cb0\u0caf\u0ca4\u0ccd\u0ca8\u0cbf\u0cb8\u0cbf",
|
41 |
+
"oauthSignin": "\u0cac\u0cc7\u0cb0\u0cc6 \u0c96\u0cbe\u0ca4\u0cc6\u0caf\u0cca\u0c82\u0ca6\u0cbf\u0c97\u0cc6 \u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cb2\u0cc1 \u0caa\u0ccd\u0cb0\u0caf\u0ca4\u0ccd\u0ca8\u0cbf\u0cb8\u0cbf",
|
42 |
+
"redirectUriMismatch": "\u0cb0\u0cc0\u0ca1\u0cc8\u0cb0\u0cc6\u0c95\u0ccd\u0c9f\u0ccd URI \u0c93\u0ca5\u0ccd \u0c85\u0caa\u0ccd\u0cb2\u0cbf\u0c95\u0cc7\u0cb6\u0ca8\u0ccd \u0c95\u0cbe\u0ca8\u0ccd\u0cab\u0cbf\u0c97\u0cb0\u0cc7\u0cb6\u0ca8\u0ccd\u200c\u0c97\u0cc6 \u0cb9\u0cca\u0c82\u0ca6\u0cbf\u0c95\u0cc6\u0caf\u0cbe\u0c97\u0cc1\u0ca4\u0ccd\u0ca4\u0cbf\u0cb2\u0ccd\u0cb2",
|
43 |
+
"oauthCallback": "\u0cac\u0cc7\u0cb0\u0cc6 \u0c96\u0cbe\u0ca4\u0cc6\u0caf\u0cca\u0c82\u0ca6\u0cbf\u0c97\u0cc6 \u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cb2\u0cc1 \u0caa\u0ccd\u0cb0\u0caf\u0ca4\u0ccd\u0ca8\u0cbf\u0cb8\u0cbf",
|
44 |
+
"oauthCreateAccount": "\u0cac\u0cc7\u0cb0\u0cc6 \u0c96\u0cbe\u0ca4\u0cc6\u0caf\u0cca\u0c82\u0ca6\u0cbf\u0c97\u0cc6 \u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cb2\u0cc1 \u0caa\u0ccd\u0cb0\u0caf\u0ca4\u0ccd\u0ca8\u0cbf\u0cb8\u0cbf",
|
45 |
+
"emailCreateAccount": "\u0cac\u0cc7\u0cb0\u0cc6 \u0c96\u0cbe\u0ca4\u0cc6\u0caf\u0cca\u0c82\u0ca6\u0cbf\u0c97\u0cc6 \u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cb2\u0cc1 \u0caa\u0ccd\u0cb0\u0caf\u0ca4\u0ccd\u0ca8\u0cbf\u0cb8\u0cbf",
|
46 |
+
"callback": "\u0cac\u0cc7\u0cb0\u0cc6 \u0c96\u0cbe\u0ca4\u0cc6\u0caf\u0cca\u0c82\u0ca6\u0cbf\u0c97\u0cc6 \u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cb2\u0cc1 \u0caa\u0ccd\u0cb0\u0caf\u0ca4\u0ccd\u0ca8\u0cbf\u0cb8\u0cbf",
|
47 |
+
"oauthAccountNotLinked": "\u0ca8\u0cbf\u0cae\u0ccd\u0cae \u0c97\u0cc1\u0cb0\u0cc1\u0ca4\u0ca8\u0ccd\u0ca8\u0cc1 \u0ca6\u0cc3\u0ca2\u0cc0\u0c95\u0cb0\u0cbf\u0cb8\u0cb2\u0cc1, \u0ca8\u0cc0\u0cb5\u0cc1 \u0cae\u0cca\u0ca6\u0cb2\u0cc1 \u0cac\u0cb3\u0cb8\u0cbf\u0ca6 \u0c85\u0ca6\u0cc7 \u0c96\u0cbe\u0ca4\u0cc6\u0caf\u0cca\u0c82\u0ca6\u0cbf\u0c97\u0cc6 \u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cbf",
|
48 |
+
"emailSignin": "\u0c87\u0cae\u0cc7\u0cb2\u0ccd \u0c95\u0cb3\u0cc1\u0cb9\u0cbf\u0cb8\u0cb2\u0cc1 \u0cb8\u0cbe\u0ca7\u0ccd\u0caf\u0cb5\u0cbe\u0c97\u0cb2\u0cbf\u0cb2\u0ccd\u0cb2",
|
49 |
+
"emailVerify": "\u0ca6\u0caf\u0cb5\u0cbf\u0c9f\u0ccd\u0c9f\u0cc1 \u0ca8\u0cbf\u0cae\u0ccd\u0cae \u0c87\u0cae\u0cc7\u0cb2\u0ccd \u0caa\u0cb0\u0cbf\u0cb6\u0cc0\u0cb2\u0cbf\u0cb8\u0cbf, \u0cb9\u0cca\u0cb8 \u0c87\u0cae\u0cc7\u0cb2\u0ccd \u0c95\u0cb3\u0cc1\u0cb9\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cbf\u0ca6\u0cc6",
|
50 |
+
"credentialsSignin": "\u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cb5\u0cbf\u0cab\u0cb2\u0cb5\u0cbe\u0c97\u0cbf\u0ca6\u0cc6. \u0ca8\u0cc0\u0cb5\u0cc1 \u0c92\u0ca6\u0c97\u0cbf\u0cb8\u0cbf\u0ca6 \u0cb5\u0cbf\u0cb5\u0cb0\u0c97\u0cb3\u0cc1 \u0cb8\u0cb0\u0cbf\u0caf\u0cbe\u0c97\u0cbf\u0cb5\u0cc6\u0caf\u0cc7 \u0c8e\u0c82\u0ca6\u0cc1 \u0caa\u0cb0\u0cbf\u0cb6\u0cc0\u0cb2\u0cbf\u0cb8\u0cbf",
|
51 |
+
"sessionRequired": "\u0c88 \u0caa\u0cc1\u0c9f\u0cb5\u0ca8\u0ccd\u0ca8\u0cc1 \u0caa\u0ccd\u0cb0\u0cb5\u0cc7\u0cb6\u0cbf\u0cb8\u0cb2\u0cc1 \u0ca6\u0caf\u0cb5\u0cbf\u0c9f\u0ccd\u0c9f\u0cc1 \u0cb8\u0cc8\u0ca8\u0ccd \u0c87\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cbf"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "{{provider}} \u0ca8\u0cca\u0c82\u0ca6\u0cbf\u0c97\u0cc6 \u0cae\u0cc1\u0c82\u0ca6\u0cc1\u0cb5\u0cb0\u0cbf\u0cb8\u0cbf"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u0ca8\u0cbf\u0cae\u0ccd\u0cae \u0cb8\u0c82\u0ca6\u0cc7\u0cb6\u0cb5\u0ca8\u0ccd\u0ca8\u0cc1 \u0c87\u0cb2\u0ccd\u0cb2\u0cbf \u0c9f\u0cc8\u0caa\u0ccd \u0cae\u0cbe\u0ca1\u0cbf...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u0cb8\u0c82\u0ca6\u0cc7\u0cb6 \u0c95\u0cb3\u0cc1\u0cb9\u0cbf\u0cb8\u0cbf",
|
63 |
+
"stop": "\u0c95\u0cbe\u0cb0\u0ccd\u0caf \u0ca8\u0cbf\u0cb2\u0ccd\u0cb2\u0cbf\u0cb8\u0cbf",
|
64 |
+
"attachFiles": "\u0cab\u0cc8\u0cb2\u0ccd\u200c\u0c97\u0cb3\u0ca8\u0ccd\u0ca8\u0cc1 \u0cb2\u0c97\u0ca4\u0ccd\u0ca4\u0cbf\u0cb8\u0cbf"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u0cb0\u0cc6\u0c95\u0cbe\u0cb0\u0ccd\u0ca1\u0cbf\u0c82\u0c97\u0ccd \u0caa\u0ccd\u0cb0\u0cbe\u0cb0\u0c82\u0cad\u0cbf\u0cb8\u0cbf",
|
69 |
+
"stop": "\u0cb0\u0cc6\u0c95\u0cbe\u0cb0\u0ccd\u0ca1\u0cbf\u0c82\u0c97\u0ccd \u0ca8\u0cbf\u0cb2\u0ccd\u0cb2\u0cbf\u0cb8\u0cbf",
|
70 |
+
"connecting": "\u0cb8\u0c82\u0caa\u0cb0\u0ccd\u0c95\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cc1\u0ca4\u0ccd\u0ca4\u0cbf\u0ca6\u0cc6"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u0cab\u0cc8\u0cb2\u0ccd\u200c\u0c97\u0cb3\u0ca8\u0ccd\u0ca8\u0cc1 \u0c87\u0cb2\u0ccd\u0cb2\u0cbf \u0c8e\u0cb3\u0cc6\u0ca6\u0cc1 \u0cac\u0cbf\u0ca1\u0cbf",
|
74 |
+
"browse": "\u0cab\u0cc8\u0cb2\u0ccd\u200c\u0c97\u0cb3\u0ca8\u0ccd\u0ca8\u0cc1 \u0cac\u0ccd\u0cb0\u0ccc\u0cb8\u0ccd \u0cae\u0cbe\u0ca1\u0cbf",
|
75 |
+
"sizeLimit": "\u0cae\u0cbf\u0ca4\u0cbf:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u0c85\u0caa\u0ccd\u200c\u0cb2\u0ccb\u0ca1\u0ccd \u0cb5\u0cbf\u0cab\u0cb2\u0cb5\u0cbe\u0c97\u0cbf\u0ca6\u0cc6",
|
78 |
+
"cancelled": "\u0c85\u0caa\u0ccd\u200c\u0cb2\u0ccb\u0ca1\u0ccd \u0cb0\u0ca6\u0ccd\u0ca6\u0cc1\u0c97\u0cca\u0cb3\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cbf\u0ca6\u0cc6"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u0cac\u0cb3\u0cb8\u0cc1\u0ca4\u0ccd\u0ca4\u0cbf\u0cb0\u0cc1\u0cb5\u0cc1\u0ca6\u0cc1",
|
84 |
+
"used": "\u0cac\u0cb3\u0cb8\u0cb2\u0cbe\u0c97\u0cbf\u0ca6\u0cc6"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u0c95\u0ccd\u0cb2\u0cbf\u0caa\u0ccd\u200c\u0cac\u0ccb\u0cb0\u0ccd\u0ca1\u0ccd\u200c\u0c97\u0cc6 \u0ca8\u0c95\u0cb2\u0cbf\u0cb8\u0cbf",
|
89 |
+
"success": "\u0ca8\u0c95\u0cb2\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cbf\u0ca6\u0cc6!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u0cb8\u0cb9\u0cbe\u0caf\u0c95\u0cb5\u0cbe\u0c97\u0cbf\u0ca6\u0cc6",
|
94 |
+
"negative": "\u0cb8\u0cb9\u0cbe\u0caf\u0c95\u0cb5\u0cbe\u0c97\u0cbf\u0cb2\u0ccd\u0cb2",
|
95 |
+
"edit": "\u0caa\u0ccd\u0cb0\u0ca4\u0cbf\u0c95\u0ccd\u0cb0\u0cbf\u0caf\u0cc6 \u0cb8\u0c82\u0caa\u0cbe\u0ca6\u0cbf\u0cb8\u0cbf",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u0c95\u0cbe\u0cae\u0cc6\u0c82\u0c9f\u0ccd \u0cb8\u0cc7\u0cb0\u0cbf\u0cb8\u0cbf",
|
98 |
+
"submit": "\u0caa\u0ccd\u0cb0\u0ca4\u0cbf\u0c95\u0ccd\u0cb0\u0cbf\u0caf\u0cc6 \u0cb8\u0cb2\u0ccd\u0cb2\u0cbf\u0cb8\u0cbf"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u0ca8\u0cb5\u0cc0\u0c95\u0cb0\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cc1\u0ca4\u0ccd\u0ca4\u0cbf\u0ca6\u0cc6",
|
102 |
+
"updated": "\u0caa\u0ccd\u0cb0\u0ca4\u0cbf\u0c95\u0ccd\u0cb0\u0cbf\u0caf\u0cc6 \u0ca8\u0cb5\u0cc0\u0c95\u0cb0\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cbf\u0ca6\u0cc6"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u0c95\u0cca\u0ca8\u0cc6\u0caf \u0c87\u0ca8\u0ccd\u200c\u0caa\u0cc1\u0c9f\u0ccd\u200c\u0c97\u0cb3\u0cc1",
|
108 |
+
"empty": "\u0c96\u0cbe\u0cb2\u0cbf\u0caf\u0cbe\u0c97\u0cbf\u0ca6\u0cc6...",
|
109 |
+
"show": "\u0c87\u0ca4\u0cbf\u0cb9\u0cbe\u0cb8 \u0ca4\u0ccb\u0cb0\u0cbf\u0cb8\u0cbf"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u0cb8\u0cc6\u0c9f\u0ccd\u0c9f\u0cbf\u0c82\u0c97\u0ccd\u200c\u0c97\u0cb3 \u0caa\u0ccd\u0caf\u0cbe\u0ca8\u0cc6\u0cb2\u0ccd"
|
113 |
+
},
|
114 |
+
"watermark": "\u0c87\u0ca6\u0cb0\u0cca\u0c82\u0ca6\u0cbf\u0c97\u0cc6 \u0ca8\u0cbf\u0cb0\u0ccd\u0cae\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cbf\u0ca6\u0cc6"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u0cb9\u0cbf\u0c82\u0ca6\u0cbf\u0ca8 \u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6\u0c97\u0cb3\u0cc1",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u0cb9\u0cc1\u0ca1\u0cc1\u0c95\u0cbf",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u0c87\u0c82\u0ca6\u0cc1",
|
125 |
+
"yesterday": "\u0ca8\u0cbf\u0ca8\u0ccd\u0ca8\u0cc6",
|
126 |
+
"previous7days": "\u0cb9\u0cbf\u0c82\u0ca6\u0cbf\u0ca8 7 \u0ca6\u0cbf\u0ca8\u0c97\u0cb3\u0cc1",
|
127 |
+
"previous30days": "\u0cb9\u0cbf\u0c82\u0ca6\u0cbf\u0ca8 30 \u0ca6\u0cbf\u0ca8\u0c97\u0cb3\u0cc1"
|
128 |
+
},
|
129 |
+
"empty": "\u0caf\u0cbe\u0cb5\u0cc1\u0ca6\u0cc7 \u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6\u0c97\u0cb3\u0cc1 \u0c95\u0c82\u0ca1\u0cc1\u0cac\u0c82\u0ca6\u0cbf\u0cb2\u0ccd\u0cb2",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u0caa\u0c95\u0ccd\u0c95\u0ca6 \u0caa\u0c9f\u0ccd\u0c9f\u0cbf \u0cae\u0cc1\u0c9a\u0ccd\u0c9a\u0cbf",
|
132 |
+
"open": "\u0caa\u0c95\u0ccd\u0c95\u0ca6 \u0caa\u0c9f\u0ccd\u0c9f\u0cbf \u0ca4\u0cc6\u0cb0\u0cc6\u0caf\u0cbf\u0cb0\u0cbf"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u0cb6\u0cc0\u0cb0\u0ccd\u0cb7\u0cbf\u0c95\u0cc6\u0cb0\u0cb9\u0cbf\u0ca4 \u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u0c85\u0cb3\u0cbf\u0cb8\u0cc1\u0cb5\u0cbf\u0c95\u0cc6\u0caf\u0ca8\u0ccd\u0ca8\u0cc1 \u0ca6\u0cc3\u0ca2\u0cc0\u0c95\u0cb0\u0cbf\u0cb8\u0cbf",
|
144 |
+
"description": "\u0c87\u0ca6\u0cc1 \u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6\u0caf\u0ca8\u0ccd\u0ca8\u0cc1 \u0cb9\u0cbe\u0c97\u0cc2 \u0c85\u0ca6\u0cb0 \u0cb8\u0c82\u0ca6\u0cc7\u0cb6\u0c97\u0cb3\u0cc1 \u0cae\u0ca4\u0ccd\u0ca4\u0cc1 \u0c85\u0c82\u0cb6\u0c97\u0cb3\u0ca8\u0ccd\u0ca8\u0cc1 \u0c85\u0cb3\u0cbf\u0cb8\u0cc1\u0ca4\u0ccd\u0ca4\u0ca6\u0cc6. \u0c88 \u0c95\u0ccd\u0cb0\u0cbf\u0caf\u0cc6\u0caf\u0ca8\u0ccd\u0ca8\u0cc1 \u0cb0\u0ca6\u0ccd\u0ca6\u0cc1\u0c97\u0cca\u0cb3\u0cbf\u0cb8\u0cb2\u0cc1 \u0cb8\u0cbe\u0ca7\u0ccd\u0caf\u0cb5\u0cbf\u0cb2\u0ccd\u0cb2",
|
145 |
+
"success": "\u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6 \u0c85\u0cb3\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cbf\u0ca6\u0cc6",
|
146 |
+
"inProgress": "\u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6 \u0c85\u0cb3\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cc1\u0ca4\u0ccd\u0ca4\u0cbf\u0ca6\u0cc6"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6\u0caf \u0cb9\u0cc6\u0cb8\u0cb0\u0cc1 \u0cac\u0ca6\u0cb2\u0cbe\u0caf\u0cbf\u0cb8\u0cbf",
|
150 |
+
"description": "\u0c88 \u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6\u0c97\u0cc6 \u0cb9\u0cca\u0cb8 \u0cb9\u0cc6\u0cb8\u0cb0\u0ca8\u0ccd\u0ca8\u0cc1 \u0ca8\u0cae\u0cc2\u0ca6\u0cbf\u0cb8\u0cbf",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u0cb9\u0cc6\u0cb8\u0cb0\u0cc1",
|
154 |
+
"placeholder": "\u0cb9\u0cca\u0cb8 \u0cb9\u0cc6\u0cb8\u0cb0\u0ca8\u0ccd\u0ca8\u0cc1 \u0ca8\u0cae\u0cc2\u0ca6\u0cbf\u0cb8\u0cbf"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6\u0caf \u0cb9\u0cc6\u0cb8\u0cb0\u0cc1 \u0cac\u0ca6\u0cb2\u0cbe\u0caf\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cbf\u0ca6\u0cc6!",
|
158 |
+
"inProgress": "\u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6\u0caf \u0cb9\u0cc6\u0cb8\u0cb0\u0cc1 \u0cac\u0ca6\u0cb2\u0cbe\u0caf\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cc1\u0ca4\u0ccd\u0ca4\u0cbf\u0ca6\u0cc6"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6",
|
166 |
+
"readme": "\u0c93\u0ca6\u0cbf",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u0cb9\u0cca\u0cb8 \u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u0cb9\u0cca\u0cb8 \u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6 \u0cb0\u0c9a\u0cbf\u0cb8\u0cbf",
|
177 |
+
"description": "\u0c87\u0ca6\u0cc1 \u0ca8\u0cbf\u0cae\u0ccd\u0cae \u0caa\u0ccd\u0cb0\u0cb8\u0ccd\u0ca4\u0cc1\u0ca4 \u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6\u0caf \u0c87\u0ca4\u0cbf\u0cb9\u0cbe\u0cb8\u0cb5\u0ca8\u0ccd\u0ca8\u0cc1 \u0c85\u0cb3\u0cbf\u0cb8\u0cc1\u0ca4\u0ccd\u0ca4\u0ca6\u0cc6. \u0ca8\u0cc0\u0cb5\u0cc1 \u0cae\u0cc1\u0c82\u0ca6\u0cc1\u0cb5\u0cb0\u0cc6\u0caf\u0cb2\u0cc1 \u0cac\u0caf\u0cb8\u0cc1\u0cb5\u0cbf\u0cb0\u0cbe?",
|
178 |
+
"tooltip": "\u0cb9\u0cca\u0cb8 \u0cb8\u0c82\u0cad\u0cbe\u0cb7\u0ca3\u0cc6"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u0cb8\u0cc6\u0c9f\u0ccd\u0c9f\u0cbf\u0c82\u0c97\u0ccd\u200c\u0c97\u0cb3\u0cc1",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API \u0c95\u0cc0\u0c97\u0cb3\u0cc1",
|
186 |
+
"logout": "\u0cb2\u0cbe\u0c97\u0ccd \u0c94\u0c9f\u0ccd"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u0c85\u0c97\u0ca4\u0ccd\u0caf\u0cb5\u0cbf\u0cb0\u0cc1\u0cb5 API \u0c95\u0cc0\u0c97\u0cb3\u0cc1",
|
192 |
+
"description": "\u0c88 \u0c85\u0caa\u0ccd\u0cb2\u0cbf\u0c95\u0cc7\u0cb6\u0ca8\u0ccd \u0cac\u0cb3\u0cb8\u0cb2\u0cc1, \u0c88 \u0c95\u0cc6\u0cb3\u0c97\u0cbf\u0ca8 API \u0c95\u0cc0\u0c97\u0cb3\u0cc1 \u0c85\u0c97\u0ca4\u0ccd\u0caf\u0cb5\u0cbf\u0cb0\u0cc1\u0ca4\u0ccd\u0ca4\u0cb5\u0cc6. \u0c95\u0cc0\u0c97\u0cb3\u0ca8\u0ccd\u0ca8\u0cc1 \u0ca8\u0cbf\u0cae\u0ccd\u0cae \u0cb8\u0cbe\u0ca7\u0ca8\u0ca6 \u0cb8\u0ccd\u0ca5\u0cb3\u0cc0\u0caf \u0cb8\u0c82\u0c97\u0ccd\u0cb0\u0cb9\u0ca3\u0cc6\u0caf\u0cb2\u0ccd\u0cb2\u0cbf \u0cb8\u0c82\u0c97\u0ccd\u0cb0\u0cb9\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cc1\u0ca4\u0ccd\u0ca4\u0ca6\u0cc6.",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u0caf\u0cb6\u0cb8\u0ccd\u0cb5\u0cbf\u0caf\u0cbe\u0c97\u0cbf \u0c89\u0cb3\u0cbf\u0cb8\u0cb2\u0cbe\u0c97\u0cbf\u0ca6\u0cc6"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/ml.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u0d31\u0d26\u0d4d\u0d26\u0d3e\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
5 |
+
"confirm": "\u0d38\u0d4d\u0d25\u0d3f\u0d30\u0d40\u0d15\u0d30\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
6 |
+
"continue": "\u0d24\u0d41\u0d1f\u0d30\u0d41\u0d15",
|
7 |
+
"goBack": "\u0d24\u0d3f\u0d30\u0d3f\u0d15\u0d46 \u0d2a\u0d4b\u0d15\u0d41\u0d15",
|
8 |
+
"reset": "\u0d2a\u0d41\u0d28\u0d03\u0d38\u0d1c\u0d4d\u0d1c\u0d2e\u0d3e\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
9 |
+
"submit": "\u0d38\u0d2e\u0d7c\u0d2a\u0d4d\u0d2a\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u0d32\u0d4b\u0d21\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d28\u0d4d\u0d28\u0d41...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u0d12\u0d30\u0d41 \u0d2a\u0d3f\u0d36\u0d15\u0d4d \u0d38\u0d02\u0d2d\u0d35\u0d3f\u0d1a\u0d4d\u0d1a\u0d41",
|
15 |
+
"serverConnection": "\u0d38\u0d46\u0d7c\u0d35\u0d31\u0d41\u0d2e\u0d3e\u0d2f\u0d3f \u0d2c\u0d28\u0d4d\u0d27\u0d2a\u0d4d\u0d2a\u0d46\u0d1f\u0d3e\u0d7b \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d3f\u0d32\u0d4d\u0d32"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u0d06\u0d2a\u0d4d\u0d2a\u0d4d \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d15\u0d4d\u0d15\u0d3e\u0d7b \u0d32\u0d4b\u0d17\u0d3f\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u0d07\u0d2e\u0d46\u0d2f\u0d3f\u0d7d \u0d35\u0d3f\u0d32\u0d3e\u0d38\u0d02",
|
25 |
+
"required": "\u0d07\u0d2e\u0d46\u0d2f\u0d3f\u0d7d \u0d12\u0d30\u0d41 \u0d06\u0d35\u0d36\u0d4d\u0d2f\u0d2e\u0d3e\u0d2f \u0d2b\u0d40\u0d7d\u0d21\u0d4d \u0d06\u0d23\u0d4d"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u0d2a\u0d3e\u0d38\u0d4d\u200c\u0d35\u0d47\u0d21\u0d4d",
|
29 |
+
"required": "\u0d2a\u0d3e\u0d38\u0d4d\u200c\u0d35\u0d47\u0d21\u0d4d \u0d12\u0d30\u0d41 \u0d06\u0d35\u0d36\u0d4d\u0d2f\u0d2e\u0d3e\u0d2f \u0d2b\u0d40\u0d7d\u0d21\u0d4d \u0d06\u0d23\u0d4d"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u0d38\u0d48\u0d7b \u0d07\u0d7b"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u0d05\u0d32\u0d4d\u0d32\u0d46\u0d19\u0d4d\u0d15\u0d3f\u0d7d"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d3e\u0d7b \u0d15\u0d34\u0d3f\u0d2f\u0d41\u0d28\u0d4d\u0d28\u0d3f\u0d32\u0d4d\u0d32",
|
40 |
+
"signin": "\u0d2e\u0d31\u0d4d\u0d31\u0d4a\u0d30\u0d41 \u0d05\u0d15\u0d4d\u0d15\u0d57\u0d23\u0d4d\u0d1f\u0d4d \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d \u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d3e\u0d7b \u0d36\u0d4d\u0d30\u0d2e\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
41 |
+
"oauthSignin": "\u0d2e\u0d31\u0d4d\u0d31\u0d4a\u0d30\u0d41 \u0d05\u0d15\u0d4d\u0d15\u0d57\u0d23\u0d4d\u0d1f\u0d4d \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d \u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d3e\u0d7b \u0d36\u0d4d\u0d30\u0d2e\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
42 |
+
"redirectUriMismatch": "\u0d31\u0d40\u0d21\u0d2f\u0d31\u0d15\u0d4d\u0d1f\u0d4d URI oauth \u0d06\u0d2a\u0d4d\u0d2a\u0d4d \u0d15\u0d4b\u0d7a\u0d2b\u0d3f\u0d17\u0d31\u0d47\u0d37\u0d28\u0d41\u0d2e\u0d3e\u0d2f\u0d3f \u0d2a\u0d4a\u0d30\u0d41\u0d24\u0d4d\u0d24\u0d2a\u0d4d\u0d2a\u0d46\u0d1f\u0d41\u0d28\u0d4d\u0d28\u0d3f\u0d32\u0d4d\u0d32",
|
43 |
+
"oauthCallback": "\u0d2e\u0d31\u0d4d\u0d31\u0d4a\u0d30\u0d41 \u0d05\u0d15\u0d4d\u0d15\u0d57\u0d23\u0d4d\u0d1f\u0d4d \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d \u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d3e\u0d7b \u0d36\u0d4d\u0d30\u0d2e\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
44 |
+
"oauthCreateAccount": "\u0d2e\u0d31\u0d4d\u0d31\u0d4a\u0d30\u0d41 \u0d05\u0d15\u0d4d\u0d15\u0d57\u0d23\u0d4d\u0d1f\u0d4d \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d \u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d3e\u0d7b \u0d36\u0d4d\u0d30\u0d2e\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
45 |
+
"emailCreateAccount": "\u0d2e\u0d31\u0d4d\u0d31\u0d4a\u0d30\u0d41 \u0d05\u0d15\u0d4d\u0d15\u0d57\u0d23\u0d4d\u0d1f\u0d4d \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d \u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d3e\u0d7b \u0d36\u0d4d\u0d30\u0d2e\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
46 |
+
"callback": "\u0d2e\u0d31\u0d4d\u0d31\u0d4a\u0d30\u0d41 \u0d05\u0d15\u0d4d\u0d15\u0d57\u0d23\u0d4d\u0d1f\u0d4d \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d \u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d3e\u0d7b \u0d36\u0d4d\u0d30\u0d2e\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
47 |
+
"oauthAccountNotLinked": "\u0d28\u0d3f\u0d19\u0d4d\u0d19\u0d33\u0d41\u0d1f\u0d46 \u0d35\u0d4d\u0d2f\u0d15\u0d4d\u0d24\u0d3f\u0d24\u0d4d\u0d35\u0d02 \u0d38\u0d4d\u0d25\u0d3f\u0d30\u0d40\u0d15\u0d30\u0d3f\u0d15\u0d4d\u0d15\u0d3e\u0d7b, \u0d06\u0d26\u0d4d\u0d2f\u0d02 \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a \u0d05\u0d24\u0d47 \u0d05\u0d15\u0d4d\u0d15\u0d57\u0d23\u0d4d\u0d1f\u0d4d \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d \u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15",
|
48 |
+
"emailSignin": "\u0d07\u0d2e\u0d46\u0d2f\u0d3f\u0d7d \u0d05\u0d2f\u0d2f\u0d4d\u0d15\u0d4d\u0d15\u0d3e\u0d7b \u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e\u0d3f\u0d32\u0d4d\u0d32",
|
49 |
+
"emailVerify": "\u0d28\u0d3f\u0d19\u0d4d\u0d19\u0d33\u0d41\u0d1f\u0d46 \u0d07\u0d2e\u0d46\u0d2f\u0d3f\u0d7d \u0d2a\u0d30\u0d3f\u0d36\u0d4b\u0d27\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15, \u0d12\u0d30\u0d41 \u0d2a\u0d41\u0d24\u0d3f\u0d2f \u0d07\u0d2e\u0d46\u0d2f\u0d3f\u0d7d \u0d05\u0d2f\u0d1a\u0d4d\u0d1a\u0d3f\u0d1f\u0d4d\u0d1f\u0d41\u0d23\u0d4d\u0d1f\u0d4d",
|
50 |
+
"credentialsSignin": "\u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d2a\u0d30\u0d3e\u0d1c\u0d2f\u0d2a\u0d4d\u0d2a\u0d46\u0d1f\u0d4d\u0d1f\u0d41. \u0d28\u0d3f\u0d19\u0d4d\u0d19\u0d7e \u0d28\u0d7d\u0d15\u0d3f\u0d2f \u0d35\u0d3f\u0d35\u0d30\u0d19\u0d4d\u0d19\u0d7e \u0d36\u0d30\u0d3f\u0d2f\u0d3e\u0d23\u0d46\u0d28\u0d4d\u0d28\u0d4d \u0d2a\u0d30\u0d3f\u0d36\u0d4b\u0d27\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
51 |
+
"sessionRequired": "\u0d08 \u0d2a\u0d47\u0d1c\u0d4d \u0d06\u0d15\u0d4d\u0d38\u0d38\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d3e\u0d7b \u0d26\u0d2f\u0d35\u0d3e\u0d2f\u0d3f \u0d38\u0d48\u0d7b \u0d07\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "{{provider}} \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d \u0d24\u0d41\u0d1f\u0d30\u0d41\u0d15"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u0d28\u0d3f\u0d19\u0d4d\u0d19\u0d33\u0d41\u0d1f\u0d46 \u0d38\u0d28\u0d4d\u0d26\u0d47\u0d36\u0d02 \u0d07\u0d35\u0d3f\u0d1f\u0d46 \u0d1f\u0d48\u0d2a\u0d4d\u0d2a\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u0d38\u0d28\u0d4d\u0d26\u0d47\u0d36\u0d02 \u0d05\u0d2f\u0d2f\u0d4d\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
63 |
+
"stop": "\u0d1f\u0d3e\u0d38\u0d4d\u0d15\u0d4d \u0d28\u0d3f\u0d7c\u0d24\u0d4d\u0d24\u0d41\u0d15",
|
64 |
+
"attachFiles": "\u0d2b\u0d2f\u0d32\u0d41\u0d15\u0d7e \u0d05\u0d31\u0d4d\u0d31\u0d3e\u0d1a\u0d4d\u0d1a\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u0d31\u0d46\u0d15\u0d4d\u0d15\u0d4b\u0d7c\u0d21\u0d3f\u0d02\u0d17\u0d4d \u0d06\u0d30\u0d02\u0d2d\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
69 |
+
"stop": "\u0d31\u0d46\u0d15\u0d4d\u0d15\u0d4b\u0d7c\u0d21\u0d3f\u0d02\u0d17\u0d4d \u0d28\u0d3f\u0d7c\u0d24\u0d4d\u0d24\u0d41\u0d15",
|
70 |
+
"connecting": "\u0d2c\u0d28\u0d4d\u0d27\u0d3f\u0d2a\u0d4d\u0d2a\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d41"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u0d2b\u0d2f\u0d32\u0d41\u0d15\u0d7e \u0d07\u0d35\u0d3f\u0d1f\u0d46 \u0d35\u0d32\u0d3f\u0d1a\u0d4d\u0d1a\u0d3f\u0d1f\u0d41\u0d15",
|
74 |
+
"browse": "\u0d2b\u0d2f\u0d32\u0d41\u0d15\u0d7e \u0d24\u0d3f\u0d30\u0d2f\u0d41\u0d15",
|
75 |
+
"sizeLimit": "\u0d2a\u0d30\u0d3f\u0d27\u0d3f:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u0d05\u0d2a\u0d4d\u200c\u0d32\u0d4b\u0d21\u0d4d \u0d2a\u0d30\u0d3e\u0d1c\u0d2f\u0d2a\u0d4d\u0d2a\u0d46\u0d1f\u0d4d\u0d1f\u0d41",
|
78 |
+
"cancelled": "\u0d05\u0d2a\u0d4d\u200c\u0d32\u0d4b\u0d21\u0d4d \u0d31\u0d26\u0d4d\u0d26\u0d3e\u0d15\u0d4d\u0d15\u0d3f"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d41",
|
84 |
+
"used": "\u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d41"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u0d15\u0d4d\u0d32\u0d3f\u0d2a\u0d4d\u0d2a\u0d4d\u0d2c\u0d4b\u0d7c\u0d21\u0d3f\u0d32\u0d47\u0d15\u0d4d\u0d15\u0d4d \u0d2a\u0d15\u0d7c\u0d24\u0d4d\u0d24\u0d41\u0d15",
|
89 |
+
"success": "\u0d2a\u0d15\u0d7c\u0d24\u0d4d\u0d24\u0d3f!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u0d38\u0d39\u0d3e\u0d2f\u0d15\u0d30\u0d02",
|
94 |
+
"negative": "\u0d38\u0d39\u0d3e\u0d2f\u0d15\u0d30\u0d2e\u0d32\u0d4d\u0d32",
|
95 |
+
"edit": "\u0d2b\u0d40\u0d21\u0d4d\u0d2c\u0d3e\u0d15\u0d4d\u0d15\u0d4d \u0d0e\u0d21\u0d3f\u0d31\u0d4d\u0d31\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u0d12\u0d30\u0d41 \u0d15\u0d2e\u0d28\u0d4d\u0d31\u0d4d \u0d1a\u0d47\u0d7c\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
98 |
+
"submit": "\u0d2b\u0d40\u0d21\u0d4d\u0d2c\u0d3e\u0d15\u0d4d\u0d15\u0d4d \u0d38\u0d2e\u0d7c\u0d2a\u0d4d\u0d2a\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u0d05\u0d2a\u0d4d\u0d21\u0d47\u0d31\u0d4d\u0d31\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d28\u0d4d\u0d28\u0d41",
|
102 |
+
"updated": "\u0d2b\u0d40\u0d21\u0d4d\u0d2c\u0d3e\u0d15\u0d4d\u0d15\u0d4d \u0d05\u0d2a\u0d4d\u0d21\u0d47\u0d31\u0d4d\u0d31\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d24\u0d41"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u0d05\u0d35\u0d38\u0d3e\u0d28 \u0d07\u0d7b\u0d2a\u0d41\u0d1f\u0d4d\u0d1f\u0d41\u0d15\u0d7e",
|
108 |
+
"empty": "\u0d12\u0d28\u0d4d\u0d28\u0d41\u0d2e\u0d3f\u0d32\u0d4d\u0d32...",
|
109 |
+
"show": "\u0d39\u0d3f\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d31\u0d3f \u0d15\u0d3e\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u0d15\u0d4d\u0d30\u0d2e\u0d40\u0d15\u0d30\u0d23\u0d19\u0d4d\u0d19\u0d7e \u0d2a\u0d3e\u0d28\u0d7d"
|
113 |
+
},
|
114 |
+
"watermark": "\u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d \u0d28\u0d3f\u0d7c\u0d2e\u0d4d\u0d2e\u0d3f\u0d1a\u0d4d\u0d1a\u0d24\u0d4d"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u0d2e\u0d41\u0d7b \u0d1a\u0d3e\u0d31\u0d4d\u0d31\u0d41\u0d15\u0d7e",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u0d24\u0d3f\u0d30\u0d2f\u0d41\u0d15",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u0d07\u0d28\u0d4d\u0d28\u0d4d",
|
125 |
+
"yesterday": "\u0d07\u0d28\u0d4d\u0d28\u0d32\u0d46",
|
126 |
+
"previous7days": "\u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e 7 \u0d26\u0d3f\u0d35\u0d38\u0d02",
|
127 |
+
"previous30days": "\u0d15\u0d34\u0d3f\u0d1e\u0d4d\u0d1e 30 \u0d26\u0d3f\u0d35\u0d38\u0d02"
|
128 |
+
},
|
129 |
+
"empty": "\u0d24\u0d4d\u0d30\u0d46\u0d21\u0d41\u0d15\u0d7e \u0d15\u0d23\u0d4d\u0d1f\u0d46\u0d24\u0d4d\u0d24\u0d3f\u0d2f\u0d3f\u0d32\u0d4d\u0d32",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u0d38\u0d48\u0d21\u0d4d\u0d2c\u0d3e\u0d7c \u0d05\u0d1f\u0d2f\u0d4d\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
132 |
+
"open": "\u0d38\u0d48\u0d21\u0d4d\u0d2c\u0d3e\u0d7c \u0d24\u0d41\u0d31\u0d15\u0d4d\u0d15\u0d41\u0d15"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u0d2a\u0d47\u0d30\u0d3f\u0d32\u0d4d\u0d32\u0d3e\u0d24\u0d4d\u0d24 \u0d38\u0d02\u0d2d\u0d3e\u0d37\u0d23\u0d02",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u0d21\u0d3f\u0d32\u0d40\u0d31\u0d4d\u0d31\u0d4d \u0d38\u0d4d\u0d25\u0d3f\u0d30\u0d40\u0d15\u0d30\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
144 |
+
"description": "\u0d07\u0d24\u0d4d \u0d24\u0d4d\u0d30\u0d46\u0d21\u0d41\u0d02 \u0d05\u0d24\u0d3f\u0d28\u0d4d\u0d31\u0d46 \u0d38\u0d28\u0d4d\u0d26\u0d47\u0d36\u0d19\u0d4d\u0d19\u0d33\u0d41\u0d02 \u0d18\u0d1f\u0d15\u0d19\u0d4d\u0d19\u0d33\u0d41\u0d02 \u0d21\u0d3f\u0d32\u0d40\u0d31\u0d4d\u0d31\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d02. \u0d08 \u0d2a\u0d4d\u0d30\u0d35\u0d7c\u0d24\u0d4d\u0d24\u0d3f \u0d2a\u0d34\u0d2f\u0d2a\u0d1f\u0d3f\u0d2f\u0d3e\u0d15\u0d4d\u0d15\u0d3e\u0d7b \u0d15\u0d34\u0d3f\u0d2f\u0d3f\u0d32\u0d4d\u0d32",
|
145 |
+
"success": "\u0d1a\u0d3e\u0d31\u0d4d\u0d31\u0d4d \u0d21\u0d3f\u0d32\u0d40\u0d31\u0d4d\u0d31\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d24\u0d41",
|
146 |
+
"inProgress": "\u0d1a\u0d3e\u0d31\u0d4d\u0d31\u0d4d \u0d21\u0d3f\u0d32\u0d40\u0d31\u0d4d\u0d31\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d28\u0d4d\u0d28\u0d41"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u0d24\u0d4d\u0d30\u0d46\u0d21\u0d4d \u0d2a\u0d41\u0d28\u0d7c\u0d28\u0d3e\u0d2e\u0d15\u0d30\u0d23\u0d02 \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15",
|
150 |
+
"description": "\u0d08 \u0d24\u0d4d\u0d30\u0d46\u0d21\u0d3f\u0d28\u0d4d \u0d12\u0d30\u0d41 \u0d2a\u0d41\u0d24\u0d3f\u0d2f \u0d2a\u0d47\u0d30\u0d4d \u0d28\u0d7d\u0d15\u0d41\u0d15",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u0d2a\u0d47\u0d30\u0d4d",
|
154 |
+
"placeholder": "\u0d2a\u0d41\u0d24\u0d3f\u0d2f \u0d2a\u0d47\u0d30\u0d4d \u0d28\u0d7d\u0d15\u0d41\u0d15"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u0d24\u0d4d\u0d30\u0d46\u0d21\u0d4d \u0d2a\u0d41\u0d28\u0d7c\u0d28\u0d3e\u0d2e\u0d15\u0d30\u0d23\u0d02 \u0d1a\u0d46\u0d2f\u0d4d\u0d24\u0d41!",
|
158 |
+
"inProgress": "\u0d24\u0d4d\u0d30\u0d46\u0d21\u0d4d \u0d2a\u0d41\u0d28\u0d7c\u0d28\u0d3e\u0d2e\u0d15\u0d30\u0d23\u0d02 \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d28\u0d4d\u0d28\u0d41"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u0d1a\u0d3e\u0d31\u0d4d\u0d31\u0d4d",
|
166 |
+
"readme": "\u0d35\u0d3e\u0d2f\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u0d2a\u0d41\u0d24\u0d3f\u0d2f \u0d1a\u0d3e\u0d31\u0d4d\u0d31\u0d4d",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u0d2a\u0d41\u0d24\u0d3f\u0d2f \u0d1a\u0d3e\u0d31\u0d4d\u0d31\u0d4d \u0d38\u0d43\u0d37\u0d4d\u0d1f\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15",
|
177 |
+
"description": "\u0d07\u0d24\u0d4d \u0d28\u0d3f\u0d19\u0d4d\u0d19\u0d33\u0d41\u0d1f\u0d46 \u0d28\u0d3f\u0d32\u0d35\u0d3f\u0d32\u0d46 \u0d1a\u0d3e\u0d31\u0d4d\u0d31\u0d4d \u0d39\u0d3f\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d31\u0d3f \u0d2e\u0d3e\u0d2f\u0d4d\u0d15\u0d4d\u0d15\u0d41\u0d02. \u0d24\u0d41\u0d1f\u0d30\u0d3e\u0d7b \u0d24\u0d3e\u0d7d\u0d2a\u0d4d\u0d2a\u0d30\u0d4d\u0d2f\u0d2e\u0d41\u0d23\u0d4d\u0d1f\u0d4b?",
|
178 |
+
"tooltip": "\u0d2a\u0d41\u0d24\u0d3f\u0d2f \u0d1a\u0d3e\u0d31\u0d4d\u0d31\u0d4d"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u0d15\u0d4d\u0d30\u0d2e\u0d40\u0d15\u0d30\u0d23\u0d19\u0d4d\u0d19\u0d7e",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API \u0d15\u0d40\u0d15\u0d7e",
|
186 |
+
"logout": "\u0d32\u0d4b\u0d17\u0d4d\u0d14\u0d1f\u0d4d\u0d1f\u0d4d"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u0d06\u0d35\u0d36\u0d4d\u0d2f\u0d2e\u0d3e\u0d2f API \u0d15\u0d40\u0d15\u0d7e",
|
192 |
+
"description": "\u0d08 \u0d06\u0d2a\u0d4d\u0d2a\u0d4d \u0d09\u0d2a\u0d2f\u0d4b\u0d17\u0d3f\u0d15\u0d4d\u0d15\u0d3e\u0d7b, \u0d24\u0d3e\u0d34\u0d46\u0d2a\u0d4d\u0d2a\u0d31\u0d2f\u0d41\u0d28\u0d4d\u0d28 API \u0d15\u0d40\u0d15\u0d7e \u0d06\u0d35\u0d36\u0d4d\u0d2f\u0d2e\u0d3e\u0d23\u0d4d. \u0d15\u0d40\u0d15\u0d7e \u0d28\u0d3f\u0d19\u0d4d\u0d19\u0d33\u0d41\u0d1f\u0d46 \u0d09\u0d2a\u0d15\u0d30\u0d23\u0d24\u0d4d\u0d24\u0d3f\u0d28\u0d4d\u0d31\u0d46 \u0d32\u0d4b\u0d15\u0d4d\u0d15\u0d7d \u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4b\u0d31\u0d47\u0d1c\u0d3f\u0d7d \u0d38\u0d02\u0d2d\u0d30\u0d3f\u0d15\u0d4d\u0d15\u0d2a\u0d4d\u0d2a\u0d46\u0d1f\u0d41\u0d28\u0d4d\u0d28\u0d41.",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u0d35\u0d3f\u0d1c\u0d2f\u0d15\u0d30\u0d2e\u0d3e\u0d2f\u0d3f \u0d38\u0d02\u0d30\u0d15\u0d4d\u0d37\u0d3f\u0d1a\u0d4d\u0d1a\u0d41"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/mr.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u0930\u0926\u094d\u0926 \u0915\u0930\u093e",
|
5 |
+
"confirm": "\u092a\u0941\u0937\u094d\u091f\u0940 \u0915\u0930\u093e",
|
6 |
+
"continue": "\u092a\u0941\u0922\u0947 \u091c\u093e",
|
7 |
+
"goBack": "\u092e\u093e\u0917\u0947 \u091c\u093e",
|
8 |
+
"reset": "\u0930\u0940\u0938\u0947\u091f \u0915\u0930\u093e",
|
9 |
+
"submit": "\u0938\u092c\u092e\u093f\u091f \u0915\u0930\u093e"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u0932\u094b\u0921 \u0915\u0930\u0924 \u0906\u0939\u0947...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u090f\u0915 \u0924\u094d\u0930\u0941\u091f\u0940 \u0906\u0932\u0940",
|
15 |
+
"serverConnection": "\u0938\u0930\u094d\u0935\u094d\u0939\u0930\u0936\u0940 \u0915\u0928\u0947\u0915\u094d\u091f \u0939\u094b\u090a \u0936\u0915\u0932\u0947 \u0928\u093e\u0939\u0940"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u0905\u0945\u092a \u0935\u093e\u092a\u0930\u0923\u094d\u092f\u093e\u0938\u093e\u0920\u0940 \u0932\u0949\u0917\u093f\u0928 \u0915\u0930\u093e",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u0908\u092e\u0947\u0932 \u092a\u0924\u094d\u0924\u093e",
|
25 |
+
"required": "\u0908\u092e\u0947\u0932 \u0906\u0935\u0936\u094d\u092f\u0915 \u0906\u0939\u0947"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u092a\u093e\u0938\u0935\u0930\u094d\u0921",
|
29 |
+
"required": "\u092a\u093e\u0938\u0935\u0930\u094d\u0921 \u0906\u0935\u0936\u094d\u092f\u0915 \u0906\u0939\u0947"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u093e"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u0915\u093f\u0902\u0935\u093e"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0942 \u0936\u0915\u0924 \u0928\u093e\u0939\u0940",
|
40 |
+
"signin": "\u0935\u0947\u0917\u0933\u094d\u092f\u093e \u0916\u093e\u0924\u094d\u092f\u093e\u0928\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0923\u094d\u092f\u093e\u091a\u093e \u092a\u094d\u0930\u092f\u0924\u094d\u0928 \u0915\u0930\u093e",
|
41 |
+
"oauthSignin": "\u0935\u0947\u0917\u0933\u094d\u092f\u093e \u0916\u093e\u0924\u094d\u092f\u093e\u0928\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0923\u094d\u092f\u093e\u091a\u093e \u092a\u094d\u0930\u092f\u0924\u094d\u0928 \u0915\u0930\u093e",
|
42 |
+
"redirectUriMismatch": "\u0930\u0940\u0921\u093e\u092f\u0930\u0947\u0915\u094d\u091f URI \u0913\u0925 \u0905\u0945\u092a \u0915\u0949\u0928\u094d\u092b\u093f\u0917\u0930\u0947\u0936\u0928\u0936\u0940 \u091c\u0941\u0933\u0924 \u0928\u093e\u0939\u0940",
|
43 |
+
"oauthCallback": "\u0935\u0947\u0917\u0933\u094d\u092f\u093e \u0916\u093e\u0924\u094d\u092f\u093e\u0928\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0923\u094d\u092f\u093e\u091a\u093e \u092a\u094d\u0930\u092f\u0924\u094d\u0928 \u0915\u0930\u093e",
|
44 |
+
"oauthCreateAccount": "\u0935\u0947\u0917\u0933\u094d\u092f\u093e \u0916\u093e\u0924\u094d\u092f\u093e\u0928\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0923\u094d\u092f\u093e\u091a\u093e \u092a\u094d\u0930\u092f\u0924\u094d\u0928 \u0915\u0930\u093e",
|
45 |
+
"emailCreateAccount": "\u0935\u0947\u0917\u0933\u094d\u092f\u093e \u0916\u093e\u0924\u094d\u092f\u093e\u0928\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0923\u094d\u092f\u093e\u091a\u093e \u092a\u094d\u0930\u092f\u0924\u094d\u0928 \u0915\u0930\u093e",
|
46 |
+
"callback": "\u0935\u0947\u0917\u0933\u094d\u092f\u093e \u0916\u093e\u0924\u094d\u092f\u093e\u0928\u0947 \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u0923\u094d\u092f\u093e\u091a\u093e \u092a\u094d\u0930\u092f\u0924\u094d\u0928 \u0915\u0930\u093e",
|
47 |
+
"oauthAccountNotLinked": "\u0924\u0941\u092e\u091a\u0940 \u0913\u0933\u0916 \u092a\u091f\u0935\u0923\u094d\u092f\u093e\u0938\u093e\u0920\u0940, \u092e\u0942\u0933 \u0935\u093e\u092a\u0930\u0932\u0947\u0932\u094d\u092f\u093e \u0916\u093e\u0924\u094d\u092f\u093e\u0928\u0947\u091a \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u093e",
|
48 |
+
"emailSignin": "\u0908\u092e\u0947\u0932 \u092a\u093e\u0920\u0935\u0942 \u0936\u0915\u0932\u0947 \u0928\u093e\u0939\u0940",
|
49 |
+
"emailVerify": "\u0915\u0943\u092a\u092f\u093e \u0924\u0941\u092e\u091a\u093e \u0908\u092e\u0947\u0932 \u0924\u092a\u093e\u0938\u093e, \u0928\u0935\u0940\u0928 \u0908\u092e\u0947\u0932 \u092a\u093e\u0920\u0935\u0932\u093e \u0917\u0947\u0932\u093e \u0906\u0939\u0947",
|
50 |
+
"credentialsSignin": "\u0938\u093e\u0907\u0928 \u0907\u0928 \u0905\u092f\u0936\u0938\u094d\u0935\u0940. \u0924\u0941\u092e\u094d\u0939\u0940 \u0926\u093f\u0932\u0947\u0932\u0940 \u092e\u093e\u0939\u093f\u0924\u0940 \u092f\u094b\u0917\u094d\u092f \u0906\u0939\u0947 \u0915\u093e \u0924\u0947 \u0924\u092a\u093e\u0938\u093e",
|
51 |
+
"sessionRequired": "\u092f\u093e \u092a\u0943\u0937\u094d\u0920\u093e\u0935\u0930 \u092a\u094d\u0930\u0935\u0947\u0936 \u0915\u0930\u0923\u094d\u092f\u093e\u0938\u093e\u0920\u0940 \u0915\u0943\u092a\u092f\u093e \u0938\u093e\u0907\u0928 \u0907\u0928 \u0915\u0930\u093e"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "{{provider}} \u0938\u0939 \u092a\u0941\u0922\u0947 \u091c\u093e"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u0924\u0941\u092e\u091a\u093e \u0938\u0902\u0926\u0947\u0936 \u092f\u0947\u0925\u0947 \u091f\u093e\u0907\u092a \u0915\u0930\u093e...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u0938\u0902\u0926\u0947\u0936 \u092a\u093e\u0920\u0935\u093e",
|
63 |
+
"stop": "\u0915\u093e\u0930\u094d\u092f \u0925\u093e\u0902\u092c\u0935\u093e",
|
64 |
+
"attachFiles": "\u092b\u093e\u0907\u0932\u094d\u0938 \u091c\u094b\u0921\u093e"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u0930\u0947\u0915\u0949\u0930\u094d\u0921\u093f\u0902\u0917 \u0938\u0941\u0930\u0942 \u0915\u0930\u093e",
|
69 |
+
"stop": "\u0930\u0947\u0915\u0949\u0930\u094d\u0921\u093f\u0902\u0917 \u0925\u093e\u0902\u092c\u0935\u093e",
|
70 |
+
"connecting": "\u0915\u0928\u0947\u0915\u094d\u091f \u0915\u0930\u0924 \u0906\u0939\u0947"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u092b\u093e\u0907\u0932\u094d\u0938 \u092f\u0947\u0925\u0947 \u0921\u094d\u0930\u0945\u0917 \u0906\u0923\u093f \u0921\u094d\u0930\u0949\u092a \u0915\u0930\u093e",
|
74 |
+
"browse": "\u092b\u093e\u0907\u0932\u094d\u0938 \u092c\u094d\u0930\u093e\u0909\u091d \u0915\u0930\u093e",
|
75 |
+
"sizeLimit": "\u092e\u0930\u094d\u092f\u093e\u0926\u093e:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u0905\u092a\u0932\u094b\u0921 \u0905\u092f\u0936\u0938\u094d\u0935\u0940",
|
78 |
+
"cancelled": "\u092f\u093e\u0902\u091a\u0947 \u0905\u092a\u0932\u094b\u0921 \u0930\u0926\u094d\u0926 \u0915\u0947\u0932\u0947"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u0935\u093e\u092a\u0930\u0924 \u0906\u0939\u0947",
|
84 |
+
"used": "\u0935\u093e\u092a\u0930\u0932\u0947"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u0915\u094d\u0932\u093f\u092a\u092c\u094b\u0930\u094d\u0921\u0935\u0930 \u0915\u0949\u092a\u0940 \u0915\u0930\u093e",
|
89 |
+
"success": "\u0915\u0949\u092a\u0940 \u0915\u0947\u0932\u0947!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u0909\u092a\u092f\u0941\u0915\u094d\u0924",
|
94 |
+
"negative": "\u0909\u092a\u092f\u0941\u0915\u094d\u0924 \u0928\u093e\u0939\u0940",
|
95 |
+
"edit": "\u092b\u0940\u0921\u092c\u0945\u0915 \u0938\u0902\u092a\u093e\u0926\u093f\u0924 \u0915\u0930\u093e",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u091f\u093f\u092a\u094d\u092a\u0923\u0940 \u091c\u094b\u0921\u093e",
|
98 |
+
"submit": "\u092b\u0940\u0921\u092c\u0945\u0915 \u0938\u092c\u092e\u093f\u091f \u0915\u0930\u093e"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u0905\u092a\u0921\u0947\u091f \u0915\u0930\u0924 \u0906\u0939\u0947",
|
102 |
+
"updated": "\u092b\u0940\u0921\u092c\u0945\u0915 \u0905\u092a\u0921\u0947\u091f \u0915\u0947\u0932\u0947"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u0936\u0947\u0935\u091f\u091a\u0947 \u0907\u0928\u092a\u0941\u091f",
|
108 |
+
"empty": "\u0930\u093f\u0915\u093e\u092e\u0947 \u0906\u0939\u0947...",
|
109 |
+
"show": "\u0907\u0924\u093f\u0939\u093e\u0938 \u0926\u093e\u0916\u0935\u093e"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u0938\u0947\u091f\u093f\u0902\u0917\u094d\u091c \u092a\u0945\u0928\u0932"
|
113 |
+
},
|
114 |
+
"watermark": "\u0938\u0939 \u092c\u0928\u0935\u0932\u0947"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u092e\u093e\u0917\u0940\u0932 \u091a\u0945\u091f\u094d\u0938",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u0936\u094b\u0927\u093e",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u0906\u091c",
|
125 |
+
"yesterday": "\u0915\u093e\u0932",
|
126 |
+
"previous7days": "\u092e\u093e\u0917\u0940\u0932 7 \u0926\u093f\u0935\u0938",
|
127 |
+
"previous30days": "\u092e\u093e\u0917\u0940\u0932 30 \u0926\u093f\u0935\u0938"
|
128 |
+
},
|
129 |
+
"empty": "\u0915\u094b\u0923\u0924\u0947\u0939\u0940 \u0925\u094d\u0930\u0947\u0921 \u0938\u093e\u092a\u0921\u0932\u0947 \u0928\u093e\u0939\u0940\u0924",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u0938\u093e\u0907\u0921\u092c\u093e\u0930 \u092c\u0902\u0926 \u0915\u0930\u093e",
|
132 |
+
"open": "\u0938\u093e\u0907\u0921\u092c\u093e\u0930 \u0909\u0918\u0921\u093e"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u0936\u0940\u0930\u094d\u0937\u0915\u0935\u093f\u0930\u0939\u093f\u0924 \u0938\u0902\u092d\u093e\u0937\u0923",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u0939\u091f\u0935\u093f\u0923\u094d\u092f\u093e\u091a\u0940 \u092a\u0941\u0937\u094d\u091f\u0940 \u0915\u0930\u093e",
|
144 |
+
"description": "\u0939\u0947 \u0925\u094d\u0930\u0947\u0921 \u0906\u0923\u093f \u0924\u094d\u092f\u093e\u091a\u0947 \u0938\u0902\u0926\u0947\u0936 \u0935 \u0918\u091f\u0915 \u0939\u091f\u0935\u0947\u0932. \u0939\u0940 \u0915\u094d\u0930\u093f\u092f\u093e \u092a\u0942\u0930\u094d\u0935\u0935\u0924 \u0915\u0947\u0932\u0940 \u091c\u093e\u090a \u0936\u0915\u0924 \u0928\u093e\u0939\u0940",
|
145 |
+
"success": "\u091a\u0945\u091f \u0939\u091f\u0935\u0932\u093e",
|
146 |
+
"inProgress": "\u091a\u0945\u091f \u0939\u091f\u0935\u0924 \u0906\u0939\u0947"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u0925\u094d\u0930\u0947\u0921\u091a\u0947 \u0928\u093e\u0935 \u092c\u0926\u0932\u093e",
|
150 |
+
"description": "\u092f\u093e \u0925\u094d\u0930\u0947\u0921\u0938\u093e\u0920\u0940 \u0928\u0935\u0940\u0928 \u0928\u093e\u0935 \u092a\u094d\u0930\u0935\u093f\u0937\u094d\u091f \u0915\u0930\u093e",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u0928\u093e\u0935",
|
154 |
+
"placeholder": "\u0928\u0935\u0940\u0928 \u0928\u093e\u0935 \u092a\u094d\u0930\u0935\u093f\u0937\u094d\u091f \u0915\u0930\u093e"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u0925\u094d\u0930\u0947\u0921\u091a\u0947 \u0928\u093e\u0935 \u092c\u0926\u0932\u0932\u0947!",
|
158 |
+
"inProgress": "\u0925\u094d\u0930\u0947\u0921\u091a\u0947 \u0928\u093e\u0935 \u092c\u0926\u0932\u0924 \u0906\u0939\u0947"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u091a\u0945\u091f",
|
166 |
+
"readme": "\u0935\u093e\u091a\u093e",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u0928\u0935\u0940\u0928 \u091a\u0945\u091f",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u0928\u0935\u0940\u0928 \u091a\u0945\u091f \u0924\u092f\u093e\u0930 \u0915\u0930\u093e",
|
177 |
+
"description": "\u0939\u0947 \u0924\u0941\u092e\u091a\u093e \u0938\u0927\u094d\u092f\u093e\u091a\u093e \u091a\u0945\u091f \u0907\u0924\u093f\u0939\u093e\u0938 \u0938\u093e\u092b \u0915\u0930\u0947\u0932. \u0924\u0941\u092e\u094d\u0939\u093e\u0932\u093e \u0916\u093e\u0924\u094d\u0930\u0940 \u0906\u0939\u0947 \u0915\u0940 \u0924\u0941\u092e\u094d\u0939\u0940 \u092a\u0941\u0922\u0947 \u091c\u093e\u090a \u0907\u091a\u094d\u091b\u093f\u0924\u093e?",
|
178 |
+
"tooltip": "\u0928\u0935\u0940\u0928 \u091a\u0945\u091f"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u0938\u0947\u091f\u093f\u0902\u0917\u094d\u091c",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API \u0915\u0940\u091c",
|
186 |
+
"logout": "\u0932\u0949\u0917\u0906\u0909\u091f"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u0906\u0935\u0936\u094d\u092f\u0915 API \u0915\u0940\u091c",
|
192 |
+
"description": "\u0939\u0947 \u0905\u0945\u092a \u0935\u093e\u092a\u0930\u0923\u094d\u092f\u093e\u0938\u093e\u0920\u0940 \u0916\u093e\u0932\u0940\u0932 API \u0915\u0940\u091c \u0906\u0935\u0936\u094d\u092f\u0915 \u0906\u0939\u0947\u0924. \u0915\u0940\u091c \u0924\u0941\u092e\u091a\u094d\u092f\u093e \u0921\u093f\u0935\u094d\u0939\u093e\u0907\u0938\u091a\u094d\u092f\u093e \u0932\u094b\u0915\u0932 \u0938\u094d\u091f\u094b\u0930\u0947\u091c\u092e\u0927\u094d\u092f\u0947 \u0938\u093e\u0920\u0935\u0932\u094d\u092f\u093e \u091c\u093e\u0924\u093e\u0924.",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u092f\u0936\u0938\u094d\u0935\u0940\u0930\u093f\u0924\u094d\u092f\u093e \u091c\u0924\u0928 \u0915\u0947\u0932\u0947"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/nl-NL.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "Annuleren",
|
5 |
+
"confirm": "Bevestigen",
|
6 |
+
"continue": "Doorgaan",
|
7 |
+
"goBack": "Terug",
|
8 |
+
"reset": "Herstellen",
|
9 |
+
"submit": "Versturen"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "Laden...",
|
13 |
+
"error": {
|
14 |
+
"default": "Er is een fout opgetreden",
|
15 |
+
"serverConnection": "Kon geen verbinding maken met de server"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "Inloggen om toegang te krijgen tot de app",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "E-mailadres",
|
25 |
+
"required": "e-mail is een verplicht veld"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "Wachtwoord",
|
29 |
+
"required": "wachtwoord is een verplicht veld"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "Inloggen"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "OF"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "Kan niet inloggen",
|
40 |
+
"signin": "Probeer in te loggen met een ander account",
|
41 |
+
"oauthSignin": "Probeer in te loggen met een ander account",
|
42 |
+
"redirectUriMismatch": "De redirect URI komt niet overeen met de oauth app configuratie",
|
43 |
+
"oauthCallback": "Probeer in te loggen met een ander account",
|
44 |
+
"oauthCreateAccount": "Probeer in te loggen met een ander account",
|
45 |
+
"emailCreateAccount": "Probeer in te loggen met een ander account",
|
46 |
+
"callback": "Probeer in te loggen met een ander account",
|
47 |
+
"oauthAccountNotLinked": "Om je identiteit te bevestigen, log in met hetzelfde account dat je oorspronkelijk hebt gebruikt",
|
48 |
+
"emailSignin": "De e-mail kon niet worden verzonden",
|
49 |
+
"emailVerify": "Verifieer je e-mail, er is een nieuwe e-mail verzonden",
|
50 |
+
"credentialsSignin": "Inloggen mislukt. Controleer of de ingevoerde gegevens correct zijn",
|
51 |
+
"sessionRequired": "Log in om toegang te krijgen tot deze pagina"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "Doorgaan met {{provider}}"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "Typ hier je bericht...",
|
61 |
+
"actions": {
|
62 |
+
"send": "Bericht versturen",
|
63 |
+
"stop": "Taak stoppen",
|
64 |
+
"attachFiles": "Bestanden bijvoegen"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "Start opname",
|
69 |
+
"stop": "Stop opname",
|
70 |
+
"connecting": "Verbinden"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "Sleep bestanden hierheen",
|
74 |
+
"browse": "Bestanden zoeken",
|
75 |
+
"sizeLimit": "Limiet:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "Uploaden mislukt",
|
78 |
+
"cancelled": "Upload geannuleerd van"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "In gebruik",
|
84 |
+
"used": "Gebruikt"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "Kopi\u00ebren naar klembord",
|
89 |
+
"success": "Gekopieerd!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "Nuttig",
|
94 |
+
"negative": "Niet nuttig",
|
95 |
+
"edit": "Feedback bewerken",
|
96 |
+
"dialog": {
|
97 |
+
"title": "Voeg een opmerking toe",
|
98 |
+
"submit": "Feedback versturen"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "Bijwerken",
|
102 |
+
"updated": "Feedback bijgewerkt"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "Laatste invoer",
|
108 |
+
"empty": "Zo leeg...",
|
109 |
+
"show": "Toon geschiedenis"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "Instellingenpaneel"
|
113 |
+
},
|
114 |
+
"watermark": "Gebouwd met"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "Eerdere chats",
|
119 |
+
"filters": {
|
120 |
+
"search": "Zoeken",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "Vandaag",
|
125 |
+
"yesterday": "Gisteren",
|
126 |
+
"previous7days": "Afgelopen 7 dagen",
|
127 |
+
"previous30days": "Afgelopen 30 dagen"
|
128 |
+
},
|
129 |
+
"empty": "Geen gesprekken gevonden",
|
130 |
+
"actions": {
|
131 |
+
"close": "Zijbalk sluiten",
|
132 |
+
"open": "Zijbalk openen"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "Naamloos gesprek",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "Verwijdering bevestigen",
|
144 |
+
"description": "Dit zal het gesprek en bijbehorende berichten en elementen verwijderen. Deze actie kan niet ongedaan worden gemaakt",
|
145 |
+
"success": "Chat verwijderd",
|
146 |
+
"inProgress": "Chat verwijderen"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "Gesprek hernoemen",
|
150 |
+
"description": "Voer een nieuwe naam in voor dit gesprek",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "Naam",
|
154 |
+
"placeholder": "Voer nieuwe naam in"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "Gesprek hernoemd!",
|
158 |
+
"inProgress": "Gesprek hernoemen"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "Chat",
|
166 |
+
"readme": "Leesmij",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "Nieuwe chat",
|
175 |
+
"dialog": {
|
176 |
+
"title": "Nieuwe chat aanmaken",
|
177 |
+
"description": "Dit zal je huidige chatgeschiedenis wissen. Weet je zeker dat je door wilt gaan?",
|
178 |
+
"tooltip": "Nieuwe chat"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "Instellingen",
|
184 |
+
"settingsKey": "I",
|
185 |
+
"apiKeys": "API-sleutels",
|
186 |
+
"logout": "Uitloggen"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "Vereiste API-sleutels",
|
192 |
+
"description": "Om deze app te gebruiken zijn de volgende API-sleutels vereist. De sleutels worden opgeslagen in de lokale opslag van je apparaat.",
|
193 |
+
"success": {
|
194 |
+
"saved": "Succesvol opgeslagen"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/nl.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "Annuleren",
|
5 |
+
"confirm": "Bevestigen",
|
6 |
+
"continue": "Doorgaan",
|
7 |
+
"goBack": "Terug",
|
8 |
+
"reset": "Herstellen",
|
9 |
+
"submit": "Versturen"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "Laden...",
|
13 |
+
"error": {
|
14 |
+
"default": "Er is een fout opgetreden",
|
15 |
+
"serverConnection": "Kon geen verbinding maken met de server"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "Inloggen om toegang te krijgen tot de app",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "E-mailadres",
|
25 |
+
"required": "e-mail is een verplicht veld"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "Wachtwoord",
|
29 |
+
"required": "wachtwoord is een verplicht veld"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "Inloggen"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "OF"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "Kan niet inloggen",
|
40 |
+
"signin": "Probeer in te loggen met een ander account",
|
41 |
+
"oauthSignin": "Probeer in te loggen met een ander account",
|
42 |
+
"redirectUriMismatch": "De redirect URI komt niet overeen met de oauth app configuratie",
|
43 |
+
"oauthCallback": "Probeer in te loggen met een ander account",
|
44 |
+
"oauthCreateAccount": "Probeer in te loggen met een ander account",
|
45 |
+
"emailCreateAccount": "Probeer in te loggen met een ander account",
|
46 |
+
"callback": "Probeer in te loggen met een ander account",
|
47 |
+
"oauthAccountNotLinked": "Om je identiteit te bevestigen, log in met hetzelfde account dat je oorspronkelijk hebt gebruikt",
|
48 |
+
"emailSignin": "De e-mail kon niet worden verzonden",
|
49 |
+
"emailVerify": "Verifieer je e-mail, er is een nieuwe e-mail verzonden",
|
50 |
+
"credentialsSignin": "Inloggen mislukt. Controleer of de ingevoerde gegevens correct zijn",
|
51 |
+
"sessionRequired": "Log in om toegang te krijgen tot deze pagina"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "Doorgaan met {{provider}}"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "Typ hier je bericht...",
|
61 |
+
"actions": {
|
62 |
+
"send": "Bericht versturen",
|
63 |
+
"stop": "Taak stoppen",
|
64 |
+
"attachFiles": "Bestanden bijvoegen"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "Start opname",
|
69 |
+
"stop": "Stop opname",
|
70 |
+
"connecting": "Verbinden"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "Sleep bestanden hierheen",
|
74 |
+
"browse": "Bestanden zoeken",
|
75 |
+
"sizeLimit": "Limiet:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "Uploaden mislukt",
|
78 |
+
"cancelled": "Upload geannuleerd van"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "In gebruik",
|
84 |
+
"used": "Gebruikt"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "Kopi\u00ebren naar klembord",
|
89 |
+
"success": "Gekopieerd!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "Nuttig",
|
94 |
+
"negative": "Niet nuttig",
|
95 |
+
"edit": "Feedback bewerken",
|
96 |
+
"dialog": {
|
97 |
+
"title": "Voeg een opmerking toe",
|
98 |
+
"submit": "Feedback versturen"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "Bijwerken",
|
102 |
+
"updated": "Feedback bijgewerkt"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "Laatste invoer",
|
108 |
+
"empty": "Zo leeg...",
|
109 |
+
"show": "Toon geschiedenis"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "Instellingenpaneel"
|
113 |
+
},
|
114 |
+
"watermark": "LLM's kunnen fouten maken. Overweeg het controleren van belangrijke informatie."
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "Eerdere chats",
|
119 |
+
"filters": {
|
120 |
+
"search": "Zoeken",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "Vandaag",
|
125 |
+
"yesterday": "Gisteren",
|
126 |
+
"previous7days": "Afgelopen 7 dagen",
|
127 |
+
"previous30days": "Afgelopen 30 dagen"
|
128 |
+
},
|
129 |
+
"empty": "Geen gesprekken gevonden",
|
130 |
+
"actions": {
|
131 |
+
"close": "Zijbalk sluiten",
|
132 |
+
"open": "Zijbalk openen"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "Naamloos gesprek",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "Verwijdering bevestigen",
|
144 |
+
"description": "Dit zal het gesprek en bijbehorende berichten en elementen verwijderen. Deze actie kan niet ongedaan worden gemaakt",
|
145 |
+
"success": "Chat verwijderd",
|
146 |
+
"inProgress": "Chat verwijderen"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "Gesprek hernoemen",
|
150 |
+
"description": "Voer een nieuwe naam in voor dit gesprek",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "Naam",
|
154 |
+
"placeholder": "Voer nieuwe naam in"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "Gesprek hernoemd!",
|
158 |
+
"inProgress": "Gesprek hernoemen"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "Chat",
|
166 |
+
"readme": "Leesmij",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "Nieuwe chat",
|
175 |
+
"dialog": {
|
176 |
+
"title": "Nieuwe chat aanmaken",
|
177 |
+
"description": "Dit zal je huidige chatgeschiedenis wissen. Weet je zeker dat je door wilt gaan?",
|
178 |
+
"tooltip": "Nieuwe chat"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "Instellingen",
|
184 |
+
"settingsKey": "I",
|
185 |
+
"apiKeys": "API-sleutels",
|
186 |
+
"logout": "Uitloggen"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "Vereiste API-sleutels",
|
192 |
+
"description": "Om deze app te gebruiken zijn de volgende API-sleutels vereist. De sleutels worden opgeslagen in de lokale opslag van je apparaat.",
|
193 |
+
"success": {
|
194 |
+
"saved": "Succesvol opgeslagen"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/ta.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u0bb0\u0ba4\u0bcd\u0ba4\u0bc1 \u0b9a\u0bc6\u0baf\u0bcd",
|
5 |
+
"confirm": "\u0b89\u0bb1\u0bc1\u0ba4\u0bbf\u0baa\u0bcd\u0baa\u0b9f\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1",
|
6 |
+
"continue": "\u0ba4\u0bca\u0b9f\u0bb0\u0bcd\u0b95",
|
7 |
+
"goBack": "\u0ba4\u0bbf\u0bb0\u0bc1\u0bae\u0bcd\u0baa\u0bbf\u0b9a\u0bcd \u0b9a\u0bc6\u0bb2\u0bcd",
|
8 |
+
"reset": "\u0bae\u0bc0\u0b9f\u0bcd\u0b9f\u0bae\u0bc8",
|
9 |
+
"submit": "\u0b9a\u0bae\u0bb0\u0bcd\u0baa\u0bcd\u0baa\u0bbf"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u0b8f\u0bb1\u0bcd\u0bb1\u0bc1\u0b95\u0bbf\u0bb1\u0ba4\u0bc1...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u0baa\u0bbf\u0bb4\u0bc8 \u0b8f\u0bb1\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0ba4\u0bc1",
|
15 |
+
"serverConnection": "\u0b9a\u0bc7\u0bb5\u0bc8\u0baf\u0b95\u0ba4\u0bcd\u0ba4\u0bc8 \u0b85\u0b9f\u0bc8\u0baf \u0bae\u0bc1\u0b9f\u0bbf\u0baf\u0bb5\u0bbf\u0bb2\u0bcd\u0bb2\u0bc8"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u0baa\u0baf\u0ba9\u0bcd\u0baa\u0bbe\u0b9f\u0bcd\u0b9f\u0bc8 \u0b85\u0ba3\u0bc1\u0b95 \u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf\u0bb5\u0bc1\u0bae\u0bcd",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u0bae\u0bbf\u0ba9\u0bcd\u0ba9\u0b9e\u0bcd\u0b9a\u0bb2\u0bcd \u0bae\u0bc1\u0b95\u0bb5\u0bb0\u0bbf",
|
25 |
+
"required": "\u0bae\u0bbf\u0ba9\u0bcd\u0ba9\u0b9e\u0bcd\u0b9a\u0bb2\u0bcd \u0ba4\u0bc7\u0bb5\u0bc8\u0baf\u0bbe\u0ba9 \u0baa\u0bc1\u0bb2\u0bae\u0bcd"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u0b95\u0b9f\u0bb5\u0bc1\u0b9a\u0bcd\u0b9a\u0bca\u0bb2\u0bcd",
|
29 |
+
"required": "\u0b95\u0b9f\u0bb5\u0bc1\u0b9a\u0bcd\u0b9a\u0bca\u0bb2\u0bcd \u0ba4\u0bc7\u0bb5\u0bc8\u0baf\u0bbe\u0ba9 \u0baa\u0bc1\u0bb2\u0bae\u0bcd"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0b95"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u0b85\u0bb2\u0bcd\u0bb2\u0ba4\u0bc1"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf \u0bae\u0bc1\u0b9f\u0bbf\u0baf\u0bb5\u0bbf\u0bb2\u0bcd\u0bb2\u0bc8",
|
40 |
+
"signin": "\u0bb5\u0bc7\u0bb1\u0bc1 \u0b95\u0ba3\u0b95\u0bcd\u0b95\u0bc1\u0b9f\u0ba9\u0bcd \u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf \u0bae\u0bc1\u0baf\u0bb1\u0bcd\u0b9a\u0bbf\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd",
|
41 |
+
"oauthSignin": "\u0bb5\u0bc7\u0bb1\u0bc1 \u0b95\u0ba3\u0b95\u0bcd\u0b95\u0bc1\u0b9f\u0ba9\u0bcd \u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf \u0bae\u0bc1\u0baf\u0bb1\u0bcd\u0b9a\u0bbf\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd",
|
42 |
+
"redirectUriMismatch": "\u0ba4\u0bbf\u0b9a\u0bc8\u0ba4\u0bbf\u0bb0\u0bc1\u0baa\u0bcd\u0baa\u0bb2\u0bcd URI \u0b93\u0b86\u0ba4\u0bcd \u0baa\u0baf\u0ba9\u0bcd\u0baa\u0bbe\u0b9f\u0bcd\u0b9f\u0bc1 \u0b95\u0b9f\u0bcd\u0b9f\u0bae\u0bc8\u0baa\u0bcd\u0baa\u0bc1\u0b9f\u0ba9\u0bcd \u0baa\u0bca\u0bb0\u0bc1\u0ba8\u0bcd\u0ba4\u0bb5\u0bbf\u0bb2\u0bcd\u0bb2\u0bc8",
|
43 |
+
"oauthCallback": "\u0bb5\u0bc7\u0bb1\u0bc1 \u0b95\u0ba3\u0b95\u0bcd\u0b95\u0bc1\u0b9f\u0ba9\u0bcd \u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf \u0bae\u0bc1\u0baf\u0bb1\u0bcd\u0b9a\u0bbf\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd",
|
44 |
+
"oauthCreateAccount": "\u0bb5\u0bc7\u0bb1\u0bc1 \u0b95\u0ba3\u0b95\u0bcd\u0b95\u0bc1\u0b9f\u0ba9\u0bcd \u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf \u0bae\u0bc1\u0baf\u0bb1\u0bcd\u0b9a\u0bbf\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd",
|
45 |
+
"emailCreateAccount": "\u0bb5\u0bc7\u0bb1\u0bc1 \u0b95\u0ba3\u0b95\u0bcd\u0b95\u0bc1\u0b9f\u0ba9\u0bcd \u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf \u0bae\u0bc1\u0baf\u0bb1\u0bcd\u0b9a\u0bbf\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd",
|
46 |
+
"callback": "\u0bb5\u0bc7\u0bb1\u0bc1 \u0b95\u0ba3\u0b95\u0bcd\u0b95\u0bc1\u0b9f\u0ba9\u0bcd \u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf \u0bae\u0bc1\u0baf\u0bb1\u0bcd\u0b9a\u0bbf\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd",
|
47 |
+
"oauthAccountNotLinked": "\u0b89\u0b99\u0bcd\u0b95\u0bb3\u0bcd \u0b85\u0b9f\u0bc8\u0baf\u0bbe\u0bb3\u0ba4\u0bcd\u0ba4\u0bc8 \u0b89\u0bb1\u0bc1\u0ba4\u0bbf\u0baa\u0bcd\u0baa\u0b9f\u0bc1\u0ba4\u0bcd\u0ba4, \u0bae\u0bc1\u0ba4\u0bb2\u0bbf\u0bb2\u0bcd \u0baa\u0baf\u0ba9\u0bcd\u0baa\u0b9f\u0bc1\u0ba4\u0bcd\u0ba4\u0bbf\u0baf \u0b85\u0ba4\u0bc7 \u0b95\u0ba3\u0b95\u0bcd\u0b95\u0bc1\u0b9f\u0ba9\u0bcd \u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf\u0bb5\u0bc1\u0bae\u0bcd",
|
48 |
+
"emailSignin": "\u0bae\u0bbf\u0ba9\u0bcd\u0ba9\u0b9e\u0bcd\u0b9a\u0bb2\u0bc8 \u0b85\u0ba9\u0bc1\u0baa\u0bcd\u0baa \u0bae\u0bc1\u0b9f\u0bbf\u0baf\u0bb5\u0bbf\u0bb2\u0bcd\u0bb2\u0bc8",
|
49 |
+
"emailVerify": "\u0b89\u0b99\u0bcd\u0b95\u0bb3\u0bcd \u0bae\u0bbf\u0ba9\u0bcd\u0ba9\u0b9e\u0bcd\u0b9a\u0bb2\u0bc8 \u0b9a\u0bb0\u0bbf\u0baa\u0bbe\u0bb0\u0bcd\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd, \u0baa\u0bc1\u0ba4\u0bbf\u0baf \u0bae\u0bbf\u0ba9\u0bcd\u0ba9\u0b9e\u0bcd\u0b9a\u0bb2\u0bcd \u0b85\u0ba9\u0bc1\u0baa\u0bcd\u0baa\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0bc1\u0bb3\u0bcd\u0bb3\u0ba4\u0bc1",
|
50 |
+
"credentialsSignin": "\u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0bb5\u0bc1 \u0ba4\u0bcb\u0bb2\u0bcd\u0bb5\u0bbf\u0baf\u0b9f\u0bc8\u0ba8\u0bcd\u0ba4\u0ba4\u0bc1. \u0ba8\u0bc0\u0b99\u0bcd\u0b95\u0bb3\u0bcd \u0bb5\u0bb4\u0b99\u0bcd\u0b95\u0bbf\u0baf \u0bb5\u0bbf\u0bb5\u0bb0\u0b99\u0bcd\u0b95\u0bb3\u0bcd \u0b9a\u0bb0\u0bbf\u0baf\u0bbe\u0ba9\u0bb5\u0bc8 \u0b8e\u0ba9 \u0b9a\u0bb0\u0bbf\u0baa\u0bbe\u0bb0\u0bcd\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd",
|
51 |
+
"sessionRequired": "\u0b87\u0ba8\u0bcd\u0ba4\u0baa\u0bcd \u0baa\u0b95\u0bcd\u0b95\u0ba4\u0bcd\u0ba4\u0bc8 \u0b85\u0ba3\u0bc1\u0b95 \u0b89\u0bb3\u0bcd\u0ba8\u0bc1\u0bb4\u0bc8\u0baf\u0bb5\u0bc1\u0bae\u0bcd"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "{{provider}} \u0bae\u0bc2\u0bb2\u0bae\u0bcd \u0ba4\u0bca\u0b9f\u0bb0\u0bb5\u0bc1\u0bae\u0bcd"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u0b89\u0b99\u0bcd\u0b95\u0bb3\u0bcd \u0b9a\u0bc6\u0baf\u0bcd\u0ba4\u0bbf\u0baf\u0bc8 \u0b87\u0b99\u0bcd\u0b95\u0bc7 \u0ba4\u0b9f\u0bcd\u0b9f\u0b9a\u0bcd\u0b9a\u0bc1 \u0b9a\u0bc6\u0baf\u0bcd\u0baf\u0bb5\u0bc1\u0bae\u0bcd...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u0b9a\u0bc6\u0baf\u0bcd\u0ba4\u0bbf \u0b85\u0ba9\u0bc1\u0baa\u0bcd\u0baa\u0bc1",
|
63 |
+
"stop": "\u0baa\u0ba3\u0bbf\u0baf\u0bc8 \u0ba8\u0bbf\u0bb1\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1",
|
64 |
+
"attachFiles": "\u0b95\u0bcb\u0baa\u0bcd\u0baa\u0bc1\u0b95\u0bb3\u0bc8 \u0b87\u0ba3\u0bc8"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u0baa\u0ba4\u0bbf\u0bb5\u0bc1 \u0ba4\u0bca\u0b9f\u0b99\u0bcd\u0b95\u0bc1",
|
69 |
+
"stop": "\u0baa\u0ba4\u0bbf\u0bb5\u0bc8 \u0ba8\u0bbf\u0bb1\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1",
|
70 |
+
"connecting": "\u0b87\u0ba3\u0bc8\u0b95\u0bcd\u0b95\u0bbf\u0bb1\u0ba4\u0bc1"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u0b95\u0bcb\u0baa\u0bcd\u0baa\u0bc1\u0b95\u0bb3\u0bc8 \u0b87\u0b99\u0bcd\u0b95\u0bc7 \u0b87\u0bb4\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1 \u0bb5\u0bbf\u0b9f\u0bb5\u0bc1\u0bae\u0bcd",
|
74 |
+
"browse": "\u0b95\u0bcb\u0baa\u0bcd\u0baa\u0bc1\u0b95\u0bb3\u0bc8 \u0b89\u0bb2\u0bbe\u0bb5\u0bc1",
|
75 |
+
"sizeLimit": "\u0bb5\u0bb0\u0bae\u0bcd\u0baa\u0bc1:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u0baa\u0ba4\u0bbf\u0bb5\u0bc7\u0bb1\u0bcd\u0bb1\u0bae\u0bcd \u0ba4\u0bcb\u0bb2\u0bcd\u0bb5\u0bbf\u0baf\u0b9f\u0bc8\u0ba8\u0bcd\u0ba4\u0ba4\u0bc1",
|
78 |
+
"cancelled": "\u0baa\u0ba4\u0bbf\u0bb5\u0bc7\u0bb1\u0bcd\u0bb1\u0bae\u0bcd \u0bb0\u0ba4\u0bcd\u0ba4\u0bc1 \u0b9a\u0bc6\u0baf\u0bcd\u0baf\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0ba4\u0bc1"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u0baa\u0baf\u0ba9\u0bcd\u0baa\u0b9f\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1\u0b95\u0bbf\u0bb1\u0ba4\u0bc1",
|
84 |
+
"used": "\u0baa\u0baf\u0ba9\u0bcd\u0baa\u0b9f\u0bc1\u0ba4\u0bcd\u0ba4\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0ba4\u0bc1"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u0b95\u0bbf\u0bb3\u0bbf\u0baa\u0bcd\u0baa\u0bcb\u0bb0\u0bcd\u0b9f\u0bc1\u0b95\u0bcd\u0b95\u0bc1 \u0ba8\u0b95\u0bb2\u0bc6\u0b9f\u0bc1",
|
89 |
+
"success": "\u0ba8\u0b95\u0bb2\u0bc6\u0b9f\u0bc1\u0b95\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0ba4\u0bc1!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u0baa\u0baf\u0ba9\u0bc1\u0bb3\u0bcd\u0bb3\u0ba4\u0bbe\u0b95 \u0b87\u0bb0\u0bc1\u0ba8\u0bcd\u0ba4\u0ba4\u0bc1",
|
94 |
+
"negative": "\u0baa\u0baf\u0ba9\u0bc1\u0bb3\u0bcd\u0bb3\u0ba4\u0bbe\u0b95 \u0b87\u0bb2\u0bcd\u0bb2\u0bc8",
|
95 |
+
"edit": "\u0b95\u0bb0\u0bc1\u0ba4\u0bcd\u0ba4\u0bc8 \u0ba4\u0bbf\u0bb0\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u0b95\u0bb0\u0bc1\u0ba4\u0bcd\u0ba4\u0bc8\u0b9a\u0bcd \u0b9a\u0bc7\u0bb0\u0bcd",
|
98 |
+
"submit": "\u0b95\u0bb0\u0bc1\u0ba4\u0bcd\u0ba4\u0bc8 \u0b9a\u0bae\u0bb0\u0bcd\u0baa\u0bcd\u0baa\u0bbf"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u0baa\u0bc1\u0ba4\u0bc1\u0baa\u0bcd\u0baa\u0bbf\u0b95\u0bcd\u0b95\u0bbf\u0bb1\u0ba4\u0bc1",
|
102 |
+
"updated": "\u0b95\u0bb0\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1 \u0baa\u0bc1\u0ba4\u0bc1\u0baa\u0bcd\u0baa\u0bbf\u0b95\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0ba4\u0bc1"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u0b95\u0b9f\u0bc8\u0b9a\u0bbf \u0b89\u0bb3\u0bcd\u0bb3\u0bc0\u0b9f\u0bc1\u0b95\u0bb3\u0bcd",
|
108 |
+
"empty": "\u0b95\u0bbe\u0bb2\u0bbf\u0baf\u0bbe\u0b95 \u0b89\u0bb3\u0bcd\u0bb3\u0ba4\u0bc1...",
|
109 |
+
"show": "\u0bb5\u0bb0\u0bb2\u0bbe\u0bb1\u0bcd\u0bb1\u0bc8\u0b95\u0bcd \u0b95\u0bbe\u0b9f\u0bcd\u0b9f\u0bc1"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u0b85\u0bae\u0bc8\u0baa\u0bcd\u0baa\u0bc1\u0b95\u0bb3\u0bcd \u0baa\u0bb2\u0b95\u0bae\u0bcd"
|
113 |
+
},
|
114 |
+
"watermark": "\u0b89\u0b9f\u0ba9\u0bcd \u0b89\u0bb0\u0bc1\u0bb5\u0bbe\u0b95\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0ba4\u0bc1"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u0b95\u0b9f\u0ba8\u0bcd\u0ba4 \u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd\u0b95\u0bb3\u0bcd",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u0ba4\u0bc7\u0b9f\u0bc1",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u0b87\u0ba9\u0bcd\u0bb1\u0bc1",
|
125 |
+
"yesterday": "\u0ba8\u0bc7\u0bb1\u0bcd\u0bb1\u0bc1",
|
126 |
+
"previous7days": "\u0b95\u0b9f\u0ba8\u0bcd\u0ba4 7 \u0ba8\u0bbe\u0b9f\u0bcd\u0b95\u0bb3\u0bcd",
|
127 |
+
"previous30days": "\u0b95\u0b9f\u0ba8\u0bcd\u0ba4 30 \u0ba8\u0bbe\u0b9f\u0bcd\u0b95\u0bb3\u0bcd"
|
128 |
+
},
|
129 |
+
"empty": "\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd\u0b95\u0bb3\u0bcd \u0b8e\u0ba4\u0bc1\u0bb5\u0bc1\u0bae\u0bcd \u0b87\u0bb2\u0bcd\u0bb2\u0bc8",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u0baa\u0b95\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0bbf\u0baf\u0bc8 \u0bae\u0bc2\u0b9f\u0bc1",
|
132 |
+
"open": "\u0baa\u0b95\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0bbf\u0baf\u0bc8 \u0ba4\u0bbf\u0bb1"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u0ba4\u0bb2\u0bc8\u0baa\u0bcd\u0baa\u0bbf\u0b9f\u0bbe\u0ba4 \u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u0ba8\u0bc0\u0b95\u0bcd\u0b95\u0bc1\u0bb5\u0ba4\u0bc8 \u0b89\u0bb1\u0bc1\u0ba4\u0bbf\u0baa\u0bcd\u0baa\u0b9f\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1",
|
144 |
+
"description": "\u0b87\u0ba4\u0bc1 \u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd \u0bae\u0bb1\u0bcd\u0bb1\u0bc1\u0bae\u0bcd \u0b85\u0ba4\u0ba9\u0bcd \u0b9a\u0bc6\u0baf\u0bcd\u0ba4\u0bbf\u0b95\u0bb3\u0bcd, \u0b89\u0bb1\u0bc1\u0baa\u0bcd\u0baa\u0bc1\u0b95\u0bb3\u0bc8 \u0ba8\u0bc0\u0b95\u0bcd\u0b95\u0bc1\u0bae\u0bcd. \u0b87\u0ba8\u0bcd\u0ba4 \u0b9a\u0bc6\u0baf\u0bb2\u0bc8 \u0bae\u0bc0\u0b9f\u0bcd\u0b9f\u0bc6\u0b9f\u0bc1\u0b95\u0bcd\u0b95 \u0bae\u0bc1\u0b9f\u0bbf\u0baf\u0bbe\u0ba4\u0bc1",
|
145 |
+
"success": "\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd \u0ba8\u0bc0\u0b95\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0ba4\u0bc1",
|
146 |
+
"inProgress": "\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bc8 \u0ba8\u0bc0\u0b95\u0bcd\u0b95\u0bc1\u0b95\u0bbf\u0bb1\u0ba4\u0bc1"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bc8 \u0bae\u0bb1\u0bc1\u0baa\u0bc6\u0baf\u0bb0\u0bbf\u0b9f\u0bc1",
|
150 |
+
"description": "\u0b87\u0ba8\u0bcd\u0ba4 \u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bc1\u0b95\u0bcd\u0b95\u0bc1 \u0baa\u0bc1\u0ba4\u0bbf\u0baf \u0baa\u0bc6\u0baf\u0bb0\u0bc8 \u0b89\u0bb3\u0bcd\u0bb3\u0bbf\u0b9f\u0bb5\u0bc1\u0bae\u0bcd",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u0baa\u0bc6\u0baf\u0bb0\u0bcd",
|
154 |
+
"placeholder": "\u0baa\u0bc1\u0ba4\u0bbf\u0baf \u0baa\u0bc6\u0baf\u0bb0\u0bc8 \u0b89\u0bb3\u0bcd\u0bb3\u0bbf\u0b9f\u0bb5\u0bc1\u0bae\u0bcd"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd \u0bae\u0bb1\u0bc1\u0baa\u0bc6\u0baf\u0bb0\u0bbf\u0b9f\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0ba4\u0bc1!",
|
158 |
+
"inProgress": "\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bc8 \u0bae\u0bb1\u0bc1\u0baa\u0bc6\u0baf\u0bb0\u0bbf\u0b9f\u0bc1\u0b95\u0bbf\u0bb1\u0ba4\u0bc1"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd",
|
166 |
+
"readme": "\u0baa\u0b9f\u0bbf\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u0baa\u0bc1\u0ba4\u0bbf\u0baf \u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u0baa\u0bc1\u0ba4\u0bbf\u0baf \u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bc8 \u0b89\u0bb0\u0bc1\u0bb5\u0bbe\u0b95\u0bcd\u0b95\u0bc1",
|
177 |
+
"description": "\u0b87\u0ba4\u0bc1 \u0b89\u0b99\u0bcd\u0b95\u0bb3\u0bcd \u0ba4\u0bb1\u0bcd\u0baa\u0bcb\u0ba4\u0bc8\u0baf \u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd \u0bb5\u0bb0\u0bb2\u0bbe\u0bb1\u0bcd\u0bb1\u0bc8 \u0b85\u0bb4\u0bbf\u0b95\u0bcd\u0b95\u0bc1\u0bae\u0bcd. \u0ba4\u0bca\u0b9f\u0bb0 \u0bb5\u0bbf\u0bb0\u0bc1\u0bae\u0bcd\u0baa\u0bc1\u0b95\u0bbf\u0bb1\u0bc0\u0bb0\u0bcd\u0b95\u0bb3\u0bbe?",
|
178 |
+
"tooltip": "\u0baa\u0bc1\u0ba4\u0bbf\u0baf \u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u0b85\u0bae\u0bc8\u0baa\u0bcd\u0baa\u0bc1\u0b95\u0bb3\u0bcd",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API \u0bb5\u0bbf\u0b9a\u0bc8\u0b95\u0bb3\u0bcd",
|
186 |
+
"logout": "\u0bb5\u0bc6\u0bb3\u0bbf\u0baf\u0bc7\u0bb1\u0bc1"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u0ba4\u0bc7\u0bb5\u0bc8\u0baf\u0bbe\u0ba9 API \u0bb5\u0bbf\u0b9a\u0bc8\u0b95\u0bb3\u0bcd",
|
192 |
+
"description": "\u0b87\u0ba8\u0bcd\u0ba4 \u0baa\u0baf\u0ba9\u0bcd\u0baa\u0bbe\u0b9f\u0bcd\u0b9f\u0bc8\u0baa\u0bcd \u0baa\u0baf\u0ba9\u0bcd\u0baa\u0b9f\u0bc1\u0ba4\u0bcd\u0ba4, \u0baa\u0bbf\u0ba9\u0bcd\u0bb5\u0bb0\u0bc1\u0bae\u0bcd API \u0bb5\u0bbf\u0b9a\u0bc8\u0b95\u0bb3\u0bcd \u0ba4\u0bc7\u0bb5\u0bc8. \u0bb5\u0bbf\u0b9a\u0bc8\u0b95\u0bb3\u0bcd \u0b89\u0b99\u0bcd\u0b95\u0bb3\u0bcd \u0b9a\u0bbe\u0ba4\u0ba9\u0ba4\u0bcd\u0ba4\u0bbf\u0ba9\u0bcd \u0b89\u0bb3\u0bcd\u0bb3\u0bc2\u0bb0\u0bcd \u0b9a\u0bc7\u0bae\u0bbf\u0baa\u0bcd\u0baa\u0b95\u0ba4\u0bcd\u0ba4\u0bbf\u0bb2\u0bcd \u0b9a\u0bc7\u0bae\u0bbf\u0b95\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0b9f\u0bc1\u0bae\u0bcd.",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u0bb5\u0bc6\u0bb1\u0bcd\u0bb1\u0bbf\u0b95\u0bb0\u0bae\u0bbe\u0b95 \u0b9a\u0bc7\u0bae\u0bbf\u0b95\u0bcd\u0b95\u0baa\u0bcd\u0baa\u0b9f\u0bcd\u0b9f\u0ba4\u0bc1"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/te.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u0c30\u0c26\u0c4d\u0c26\u0c41 \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
5 |
+
"confirm": "\u0c28\u0c3f\u0c30\u0c4d\u0c27\u0c3e\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
6 |
+
"continue": "\u0c15\u0c4a\u0c28\u0c38\u0c3e\u0c17\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
7 |
+
"goBack": "\u0c35\u0c46\u0c28\u0c15\u0c4d\u0c15\u0c3f \u0c35\u0c46\u0c33\u0c4d\u0c33\u0c02\u0c21\u0c3f",
|
8 |
+
"reset": "\u0c30\u0c40\u0c38\u0c46\u0c1f\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
9 |
+
"submit": "\u0c38\u0c2e\u0c30\u0c4d\u0c2a\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u0c32\u0c4b\u0c21\u0c4d \u0c05\u0c35\u0c41\u0c24\u0c4b\u0c02\u0c26\u0c3f...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u0c32\u0c4b\u0c2a\u0c02 \u0c38\u0c02\u0c2d\u0c35\u0c3f\u0c02\u0c1a\u0c3f\u0c02\u0c26\u0c3f",
|
15 |
+
"serverConnection": "\u0c38\u0c30\u0c4d\u0c35\u0c30\u0c4d\u200c\u0c28\u0c3f \u0c1a\u0c47\u0c30\u0c41\u0c15\u0c4b\u0c32\u0c47\u0c15\u0c2a\u0c4b\u0c2f\u0c3e\u0c2e\u0c41"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u0c2f\u0c3e\u0c2a\u0c4d\u200c\u0c28\u0c3f \u0c09\u0c2a\u0c2f\u0c4b\u0c17\u0c3f\u0c02\u0c1a\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f \u0c32\u0c3e\u0c17\u0c3f\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u0c07\u0c2e\u0c46\u0c2f\u0c3f\u0c32\u0c4d \u0c1a\u0c3f\u0c30\u0c41\u0c28\u0c3e\u0c2e\u0c3e",
|
25 |
+
"required": "\u0c07\u0c2e\u0c46\u0c2f\u0c3f\u0c32\u0c4d \u0c24\u0c2a\u0c4d\u0c2a\u0c28\u0c3f\u0c38\u0c30\u0c3f"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u0c2a\u0c3e\u0c38\u0c4d\u200c\u0c35\u0c30\u0c4d\u0c21\u0c4d",
|
29 |
+
"required": "\u0c2a\u0c3e\u0c38\u0c4d\u200c\u0c35\u0c30\u0c4d\u0c21\u0c4d \u0c24\u0c2a\u0c4d\u0c2a\u0c28\u0c3f\u0c38\u0c30\u0c3f"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u0c32\u0c47\u0c26\u0c3e"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c32\u0c47\u0c15\u0c2a\u0c4b\u0c2f\u0c3e\u0c2e\u0c41",
|
40 |
+
"signin": "\u0c35\u0c47\u0c30\u0c47 \u0c16\u0c3e\u0c24\u0c3e\u0c24\u0c4b \u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f \u0c2a\u0c4d\u0c30\u0c2f\u0c24\u0c4d\u0c28\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
41 |
+
"oauthSignin": "\u0c35\u0c47\u0c30\u0c47 \u0c16\u0c3e\u0c24\u0c3e\u0c24\u0c4b \u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f \u0c2a\u0c4d\u0c30\u0c2f\u0c24\u0c4d\u0c28\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
42 |
+
"redirectUriMismatch": "\u0c30\u0c40\u0c21\u0c48\u0c30\u0c46\u0c15\u0c4d\u0c1f\u0c4d URI oauth \u0c2f\u0c3e\u0c2a\u0c4d \u0c15\u0c3e\u0c28\u0c4d\u0c2b\u0c3f\u0c17\u0c30\u0c47\u0c37\u0c28\u0c4d\u200c\u0c24\u0c4b \u0c38\u0c30\u0c3f\u0c2a\u0c4b\u0c32\u0c21\u0c02 \u0c32\u0c47\u0c26\u0c41",
|
43 |
+
"oauthCallback": "\u0c35\u0c47\u0c30\u0c47 \u0c16\u0c3e\u0c24\u0c3e\u0c24\u0c4b \u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f \u0c2a\u0c4d\u0c30\u0c2f\u0c24\u0c4d\u0c28\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
44 |
+
"oauthCreateAccount": "\u0c35\u0c47\u0c30\u0c47 \u0c16\u0c3e\u0c24\u0c3e\u0c24\u0c4b \u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f \u0c2a\u0c4d\u0c30\u0c2f\u0c24\u0c4d\u0c28\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
45 |
+
"emailCreateAccount": "\u0c35\u0c47\u0c30\u0c47 \u0c16\u0c3e\u0c24\u0c3e\u0c24\u0c4b \u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f \u0c2a\u0c4d\u0c30\u0c2f\u0c24\u0c4d\u0c28\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
46 |
+
"callback": "\u0c35\u0c47\u0c30\u0c47 \u0c16\u0c3e\u0c24\u0c3e\u0c24\u0c4b \u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f \u0c2a\u0c4d\u0c30\u0c2f\u0c24\u0c4d\u0c28\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
47 |
+
"oauthAccountNotLinked": "\u0c2e\u0c40 \u0c17\u0c41\u0c30\u0c4d\u0c24\u0c3f\u0c02\u0c2a\u0c41\u0c28\u0c41 \u0c28\u0c3f\u0c30\u0c4d\u0c27\u0c3e\u0c30\u0c3f\u0c02\u0c1a\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f, \u0c2e\u0c40\u0c30\u0c41 \u0c2e\u0c4a\u0c26\u0c1f \u0c09\u0c2a\u0c2f\u0c4b\u0c17\u0c3f\u0c02\u0c1a\u0c3f\u0c28 \u0c05\u0c26\u0c47 \u0c16\u0c3e\u0c24\u0c3e\u0c24\u0c4b \u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
48 |
+
"emailSignin": "\u0c07\u0c2e\u0c46\u0c2f\u0c3f\u0c32\u0c4d \u0c2a\u0c02\u0c2a\u0c21\u0c02 \u0c38\u0c3e\u0c27\u0c4d\u0c2f\u0c02 \u0c15\u0c3e\u0c32\u0c47\u0c26\u0c41",
|
49 |
+
"emailVerify": "\u0c26\u0c2f\u0c1a\u0c47\u0c38\u0c3f \u0c2e\u0c40 \u0c07\u0c2e\u0c46\u0c2f\u0c3f\u0c32\u0c4d\u200c\u0c28\u0c3f \u0c27\u0c43\u0c35\u0c40\u0c15\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f, \u0c15\u0c4a\u0c24\u0c4d\u0c24 \u0c07\u0c2e\u0c46\u0c2f\u0c3f\u0c32\u0c4d \u0c2a\u0c02\u0c2a\u0c2c\u0c21\u0c3f\u0c02\u0c26\u0c3f",
|
50 |
+
"credentialsSignin": "\u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c35\u0c3f\u0c2b\u0c32\u0c2e\u0c48\u0c02\u0c26\u0c3f. \u0c2e\u0c40\u0c30\u0c41 \u0c05\u0c02\u0c26\u0c3f\u0c02\u0c1a\u0c3f\u0c28 \u0c35\u0c3f\u0c35\u0c30\u0c3e\u0c32\u0c41 \u0c38\u0c30\u0c48\u0c28\u0c35\u0c47\u0c28\u0c3e \u0c05\u0c28\u0c3f \u0c24\u0c28\u0c3f\u0c16\u0c40 \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
51 |
+
"sessionRequired": "\u0c08 \u0c2a\u0c47\u0c1c\u0c40\u0c28\u0c3f \u0c2f\u0c3e\u0c15\u0c4d\u0c38\u0c46\u0c38\u0c4d \u0c1a\u0c47\u0c2f\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f \u0c26\u0c2f\u0c1a\u0c47\u0c38\u0c3f \u0c38\u0c48\u0c28\u0c4d \u0c07\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "{{provider}}\u0c24\u0c4b \u0c15\u0c4a\u0c28\u0c38\u0c3e\u0c17\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u0c2e\u0c40 \u0c38\u0c02\u0c26\u0c47\u0c36\u0c3e\u0c28\u0c4d\u0c28\u0c3f \u0c07\u0c15\u0c4d\u0c15\u0c21 \u0c1f\u0c48\u0c2a\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u0c38\u0c02\u0c26\u0c47\u0c36\u0c02 \u0c2a\u0c02\u0c2a\u0c02\u0c21\u0c3f",
|
63 |
+
"stop": "\u0c2a\u0c28\u0c3f \u0c06\u0c2a\u0c02\u0c21\u0c3f",
|
64 |
+
"attachFiles": "\u0c2b\u0c48\u0c32\u0c4d\u0c38\u0c4d \u0c1c\u0c4b\u0c21\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u0c30\u0c3f\u0c15\u0c3e\u0c30\u0c4d\u0c21\u0c3f\u0c02\u0c17\u0c4d \u0c2a\u0c4d\u0c30\u0c3e\u0c30\u0c02\u0c2d\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
69 |
+
"stop": "\u0c30\u0c3f\u0c15\u0c3e\u0c30\u0c4d\u0c21\u0c3f\u0c02\u0c17\u0c4d \u0c06\u0c2a\u0c02\u0c21\u0c3f",
|
70 |
+
"connecting": "\u0c05\u0c28\u0c41\u0c38\u0c02\u0c27\u0c3e\u0c28\u0c3f\u0c38\u0c4d\u0c24\u0c4b\u0c02\u0c26\u0c3f"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u0c2b\u0c48\u0c32\u0c4d\u0c38\u0c4d\u200c\u0c28\u0c3f \u0c07\u0c15\u0c4d\u0c15\u0c21 \u0c21\u0c4d\u0c30\u0c3e\u0c17\u0c4d \u0c1a\u0c47\u0c38\u0c3f \u0c21\u0c4d\u0c30\u0c3e\u0c2a\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
74 |
+
"browse": "\u0c2b\u0c48\u0c32\u0c4d\u0c38\u0c4d \u0c2c\u0c4d\u0c30\u0c4c\u0c1c\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
75 |
+
"sizeLimit": "\u0c2a\u0c30\u0c3f\u0c2e\u0c3f\u0c24\u0c3f:",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u0c05\u0c2a\u0c4d\u200c\u0c32\u0c4b\u0c21\u0c4d \u0c35\u0c3f\u0c2b\u0c32\u0c2e\u0c48\u0c02\u0c26\u0c3f",
|
78 |
+
"cancelled": "\u0c05\u0c2a\u0c4d\u200c\u0c32\u0c4b\u0c21\u0c4d \u0c30\u0c26\u0c4d\u0c26\u0c41 \u0c1a\u0c47\u0c2f\u0c2c\u0c21\u0c3f\u0c02\u0c26\u0c3f"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u0c09\u0c2a\u0c2f\u0c4b\u0c17\u0c3f\u0c38\u0c4d\u0c24\u0c4b\u0c02\u0c26\u0c3f",
|
84 |
+
"used": "\u0c09\u0c2a\u0c2f\u0c4b\u0c17\u0c3f\u0c02\u0c1a\u0c2c\u0c21\u0c3f\u0c02\u0c26\u0c3f"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u0c15\u0c4d\u0c32\u0c3f\u0c2a\u0c4d\u200c\u0c2c\u0c4b\u0c30\u0c4d\u0c21\u0c4d\u200c\u0c15\u0c3f \u0c15\u0c3e\u0c2a\u0c40 \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
89 |
+
"success": "\u0c15\u0c3e\u0c2a\u0c40 \u0c1a\u0c47\u0c2f\u0c2c\u0c21\u0c3f\u0c02\u0c26\u0c3f!"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u0c38\u0c39\u0c3e\u0c2f\u0c15\u0c30\u0c02",
|
94 |
+
"negative": "\u0c38\u0c39\u0c3e\u0c2f\u0c15\u0c30\u0c02 \u0c15\u0c3e\u0c26\u0c41",
|
95 |
+
"edit": "\u0c05\u0c2d\u0c3f\u0c2a\u0c4d\u0c30\u0c3e\u0c2f\u0c3e\u0c28\u0c4d\u0c28\u0c3f \u0c38\u0c35\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u0c35\u0c4d\u0c2f\u0c3e\u0c16\u0c4d\u0c2f \u0c1c\u0c4b\u0c21\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
98 |
+
"submit": "\u0c05\u0c2d\u0c3f\u0c2a\u0c4d\u0c30\u0c3e\u0c2f\u0c3e\u0c28\u0c4d\u0c28\u0c3f \u0c38\u0c2e\u0c30\u0c4d\u0c2a\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u0c28\u0c35\u0c40\u0c15\u0c30\u0c3f\u0c38\u0c4d\u0c24\u0c4b\u0c02\u0c26\u0c3f",
|
102 |
+
"updated": "\u0c05\u0c2d\u0c3f\u0c2a\u0c4d\u0c30\u0c3e\u0c2f\u0c02 \u0c28\u0c35\u0c40\u0c15\u0c30\u0c3f\u0c02\u0c1a\u0c2c\u0c21\u0c3f\u0c02\u0c26\u0c3f"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u0c1a\u0c3f\u0c35\u0c30\u0c3f \u0c07\u0c28\u0c4d\u200c\u0c2a\u0c41\u0c1f\u0c4d\u200c\u0c32\u0c41",
|
108 |
+
"empty": "\u0c16\u0c3e\u0c33\u0c40\u0c17\u0c3e \u0c09\u0c02\u0c26\u0c3f...",
|
109 |
+
"show": "\u0c1a\u0c30\u0c3f\u0c24\u0c4d\u0c30\u0c28\u0c41 \u0c1a\u0c42\u0c2a\u0c3f\u0c02\u0c1a\u0c41"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u0c38\u0c46\u0c1f\u0c4d\u0c1f\u0c3f\u0c02\u0c17\u0c4d\u200c\u0c32 \u0c2a\u0c4d\u0c2f\u0c3e\u0c28\u0c46\u0c32\u0c4d"
|
113 |
+
},
|
114 |
+
"watermark": "\u0c24\u0c4b \u0c28\u0c3f\u0c30\u0c4d\u0c2e\u0c3f\u0c02\u0c1a\u0c2c\u0c21\u0c3f\u0c02\u0c26\u0c3f"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u0c17\u0c24 \u0c1a\u0c3e\u0c1f\u0c4d\u200c\u0c32\u0c41",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u0c35\u0c46\u0c24\u0c15\u0c02\u0c21\u0c3f",
|
121 |
+
"placeholder": "Search conversations..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u0c08\u0c30\u0c4b\u0c1c\u0c41",
|
125 |
+
"yesterday": "\u0c28\u0c3f\u0c28\u0c4d\u0c28",
|
126 |
+
"previous7days": "\u0c17\u0c24 7 \u0c30\u0c4b\u0c1c\u0c41\u0c32\u0c41",
|
127 |
+
"previous30days": "\u0c17\u0c24 30 \u0c30\u0c4b\u0c1c\u0c41\u0c32\u0c41"
|
128 |
+
},
|
129 |
+
"empty": "\u0c25\u0c4d\u0c30\u0c46\u0c21\u0c4d\u200c\u0c32\u0c41 \u0c15\u0c28\u0c41\u0c17\u0c4a\u0c28\u0c2c\u0c21\u0c32\u0c47\u0c26\u0c41",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u0c38\u0c48\u0c21\u0c4d\u200c\u0c2c\u0c3e\u0c30\u0c4d \u0c2e\u0c42\u0c38\u0c3f\u0c35\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
132 |
+
"open": "\u0c38\u0c48\u0c21\u0c4d\u200c\u0c2c\u0c3e\u0c30\u0c4d \u0c24\u0c46\u0c30\u0c35\u0c02\u0c21\u0c3f"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u0c2a\u0c47\u0c30\u0c41 \u0c32\u0c47\u0c28\u0c3f \u0c38\u0c02\u0c2d\u0c3e\u0c37\u0c23",
|
137 |
+
"menu": {
|
138 |
+
"rename": "Rename",
|
139 |
+
"delete": "Delete"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u0c24\u0c4a\u0c32\u0c17\u0c3f\u0c02\u0c2a\u0c41\u0c28\u0c41 \u0c28\u0c3f\u0c30\u0c4d\u0c27\u0c3e\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
144 |
+
"description": "\u0c07\u0c26\u0c3f \u0c25\u0c4d\u0c30\u0c46\u0c21\u0c4d\u200c\u0c24\u0c4b \u0c2a\u0c3e\u0c1f\u0c41 \u0c26\u0c3e\u0c28\u0c3f \u0c38\u0c02\u0c26\u0c47\u0c36\u0c3e\u0c32\u0c28\u0c41 \u0c2e\u0c30\u0c3f\u0c2f\u0c41 \u0c05\u0c02\u0c36\u0c3e\u0c32\u0c28\u0c41 \u0c24\u0c4a\u0c32\u0c17\u0c3f\u0c38\u0c4d\u0c24\u0c41\u0c02\u0c26\u0c3f. \u0c08 \u0c1a\u0c30\u0c4d\u0c2f\u0c28\u0c41 \u0c30\u0c26\u0c4d\u0c26\u0c41 \u0c1a\u0c47\u0c2f\u0c32\u0c47\u0c30\u0c41",
|
145 |
+
"success": "\u0c1a\u0c3e\u0c1f\u0c4d \u0c24\u0c4a\u0c32\u0c17\u0c3f\u0c02\u0c1a\u0c2c\u0c21\u0c3f\u0c02\u0c26\u0c3f",
|
146 |
+
"inProgress": "\u0c1a\u0c3e\u0c1f\u0c4d\u200c\u0c28\u0c3f \u0c24\u0c4a\u0c32\u0c17\u0c3f\u0c38\u0c4d\u0c24\u0c4b\u0c02\u0c26\u0c3f"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u0c25\u0c4d\u0c30\u0c46\u0c21\u0c4d \u0c2a\u0c47\u0c30\u0c41 \u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c02\u0c21\u0c3f",
|
150 |
+
"description": "\u0c08 \u0c25\u0c4d\u0c30\u0c46\u0c21\u0c4d \u0c15\u0c4b\u0c38\u0c02 \u0c15\u0c4a\u0c24\u0c4d\u0c24 \u0c2a\u0c47\u0c30\u0c41\u0c28\u0c41 \u0c28\u0c2e\u0c4b\u0c26\u0c41 \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u0c2a\u0c47\u0c30\u0c41",
|
154 |
+
"placeholder": "\u0c15\u0c4a\u0c24\u0c4d\u0c24 \u0c2a\u0c47\u0c30\u0c41\u0c28\u0c41 \u0c28\u0c2e\u0c4b\u0c26\u0c41 \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u0c25\u0c4d\u0c30\u0c46\u0c21\u0c4d \u0c2a\u0c47\u0c30\u0c41 \u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c2c\u0c21\u0c3f\u0c02\u0c26\u0c3f!",
|
158 |
+
"inProgress": "\u0c25\u0c4d\u0c30\u0c46\u0c21\u0c4d \u0c2a\u0c47\u0c30\u0c41 \u0c2e\u0c3e\u0c30\u0c41\u0c38\u0c4d\u0c24\u0c4b\u0c02\u0c26\u0c3f"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u0c1a\u0c3e\u0c1f\u0c4d",
|
166 |
+
"readme": "\u0c1a\u0c26\u0c35\u0c02\u0c21\u0c3f",
|
167 |
+
"theme": {
|
168 |
+
"light": "Light Theme",
|
169 |
+
"dark": "Dark Theme",
|
170 |
+
"system": "Follow System"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u0c15\u0c4a\u0c24\u0c4d\u0c24 \u0c1a\u0c3e\u0c1f\u0c4d",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u0c15\u0c4a\u0c24\u0c4d\u0c24 \u0c1a\u0c3e\u0c1f\u0c4d \u0c38\u0c43\u0c37\u0c4d\u0c1f\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f",
|
177 |
+
"description": "\u0c07\u0c26\u0c3f \u0c2e\u0c40 \u0c2a\u0c4d\u0c30\u0c38\u0c4d\u0c24\u0c41\u0c24 \u0c1a\u0c3e\u0c1f\u0c4d \u0c1a\u0c30\u0c3f\u0c24\u0c4d\u0c30\u0c28\u0c41 \u0c24\u0c41\u0c21\u0c3f\u0c1a\u0c3f\u0c35\u0c47\u0c38\u0c4d\u0c24\u0c41\u0c02\u0c26\u0c3f. \u0c2e\u0c40\u0c30\u0c41 \u0c15\u0c4a\u0c28\u0c38\u0c3e\u0c17\u0c3f\u0c02\u0c1a\u0c3e\u0c32\u0c28\u0c41\u0c15\u0c41\u0c02\u0c1f\u0c41\u0c28\u0c4d\u0c28\u0c3e\u0c30\u0c3e?",
|
178 |
+
"tooltip": "\u0c15\u0c4a\u0c24\u0c4d\u0c24 \u0c1a\u0c3e\u0c1f\u0c4d"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u0c38\u0c46\u0c1f\u0c4d\u0c1f\u0c3f\u0c02\u0c17\u0c4d\u200c\u0c32\u0c41",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API \u0c15\u0c40\u0c32\u0c41",
|
186 |
+
"logout": "\u0c32\u0c3e\u0c17\u0c4d \u0c05\u0c35\u0c41\u0c1f\u0c4d"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u0c05\u0c35\u0c38\u0c30\u0c2e\u0c48\u0c28 API \u0c15\u0c40\u0c32\u0c41",
|
192 |
+
"description": "\u0c08 \u0c2f\u0c3e\u0c2a\u0c4d\u200c\u0c28\u0c3f \u0c09\u0c2a\u0c2f\u0c4b\u0c17\u0c3f\u0c02\u0c1a\u0c21\u0c3e\u0c28\u0c3f\u0c15\u0c3f, \u0c15\u0c3f\u0c02\u0c26\u0c3f API \u0c15\u0c40\u0c32\u0c41 \u0c05\u0c35\u0c38\u0c30\u0c02. \u0c15\u0c40\u0c32\u0c41 \u0c2e\u0c40 \u0c2a\u0c30\u0c3f\u0c15\u0c30\u0c02 \u0c2f\u0c4a\u0c15\u0c4d\u0c15 \u0c38\u0c4d\u0c25\u0c3e\u0c28\u0c3f\u0c15 \u0c28\u0c3f\u0c32\u0c4d\u0c35\u0c32\u0c4b \u0c28\u0c3f\u0c32\u0c4d\u0c35 \u0c1a\u0c47\u0c2f\u0c2c\u0c21\u0c24\u0c3e\u0c2f\u0c3f.",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u0c35\u0c3f\u0c1c\u0c2f\u0c35\u0c02\u0c24\u0c02\u0c17\u0c3e \u0c38\u0c47\u0c35\u0c4d \u0c1a\u0c47\u0c2f\u0c2c\u0c21\u0c3f\u0c02\u0c26\u0c3f"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "Info",
|
199 |
+
"note": "Note",
|
200 |
+
"tip": "Tip",
|
201 |
+
"important": "Important",
|
202 |
+
"warning": "Warning",
|
203 |
+
"caution": "Caution",
|
204 |
+
"debug": "Debug",
|
205 |
+
"example": "Example",
|
206 |
+
"success": "Success",
|
207 |
+
"help": "Help",
|
208 |
+
"idea": "Idea",
|
209 |
+
"pending": "Pending",
|
210 |
+
"security": "Security",
|
211 |
+
"beta": "Beta",
|
212 |
+
"best-practice": "Best Practice"
|
213 |
+
}
|
214 |
+
}
|
.chainlit/translations/zh-CN.json
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"common": {
|
3 |
+
"actions": {
|
4 |
+
"cancel": "\u53d6\u6d88",
|
5 |
+
"confirm": "\u786e\u8ba4",
|
6 |
+
"continue": "\u7ee7\u7eed",
|
7 |
+
"goBack": "\u8fd4\u56de",
|
8 |
+
"reset": "\u91cd\u7f6e",
|
9 |
+
"submit": "\u63d0\u4ea4"
|
10 |
+
},
|
11 |
+
"status": {
|
12 |
+
"loading": "\u52a0\u8f7d\u4e2d...",
|
13 |
+
"error": {
|
14 |
+
"default": "\u53d1\u751f\u9519\u8bef",
|
15 |
+
"serverConnection": "\u65e0\u6cd5\u8fde\u63a5\u5230\u670d\u52a1\u5668"
|
16 |
+
}
|
17 |
+
}
|
18 |
+
},
|
19 |
+
"auth": {
|
20 |
+
"login": {
|
21 |
+
"title": "\u767b\u5f55\u4ee5\u8bbf\u95ee\u5e94\u7528",
|
22 |
+
"form": {
|
23 |
+
"email": {
|
24 |
+
"label": "\u7535\u5b50\u90ae\u7bb1",
|
25 |
+
"required": "\u90ae\u7bb1\u662f\u5fc5\u586b\u9879"
|
26 |
+
},
|
27 |
+
"password": {
|
28 |
+
"label": "\u5bc6\u7801",
|
29 |
+
"required": "\u5bc6\u7801\u662f\u5fc5\u586b\u9879"
|
30 |
+
},
|
31 |
+
"actions": {
|
32 |
+
"signin": "\u767b\u5f55"
|
33 |
+
},
|
34 |
+
"alternativeText": {
|
35 |
+
"or": "\u6216"
|
36 |
+
}
|
37 |
+
},
|
38 |
+
"errors": {
|
39 |
+
"default": "\u65e0\u6cd5\u767b\u5f55",
|
40 |
+
"signin": "\u8bf7\u5c1d\u8bd5\u4f7f\u7528\u5176\u4ed6\u8d26\u53f7\u767b\u5f55",
|
41 |
+
"oauthSignin": "\u8bf7\u5c1d\u8bd5\u4f7f\u7528\u5176\u4ed6\u8d26\u53f7\u767b\u5f55",
|
42 |
+
"redirectUriMismatch": "\u91cd\u5b9a\u5411URI\u4e0eOAuth\u5e94\u7528\u914d\u7f6e\u4e0d\u5339\u914d",
|
43 |
+
"oauthCallback": "\u8bf7\u5c1d\u8bd5\u4f7f\u7528\u5176\u4ed6\u8d26\u53f7\u767b\u5f55",
|
44 |
+
"oauthCreateAccount": "\u8bf7\u5c1d\u8bd5\u4f7f\u7528\u5176\u4ed6\u8d26\u53f7\u767b\u5f55",
|
45 |
+
"emailCreateAccount": "\u8bf7\u5c1d\u8bd5\u4f7f\u7528\u5176\u4ed6\u8d26\u53f7\u767b\u5f55",
|
46 |
+
"callback": "\u8bf7\u5c1d\u8bd5\u4f7f\u7528\u5176\u4ed6\u8d26\u53f7\u767b\u5f55",
|
47 |
+
"oauthAccountNotLinked": "\u4e3a\u786e\u8ba4\u60a8\u7684\u8eab\u4efd\uff0c\u8bf7\u4f7f\u7528\u539f\u59cb\u8d26\u53f7\u767b\u5f55",
|
48 |
+
"emailSignin": "\u90ae\u4ef6\u53d1\u9001\u5931\u8d25",
|
49 |
+
"emailVerify": "\u8bf7\u9a8c\u8bc1\u60a8\u7684\u90ae\u7bb1\uff0c\u65b0\u7684\u9a8c\u8bc1\u90ae\u4ef6\u5df2\u53d1\u9001",
|
50 |
+
"credentialsSignin": "\u767b\u5f55\u5931\u8d25\u3002\u8bf7\u68c0\u67e5\u60a8\u63d0\u4f9b\u7684\u4fe1\u606f\u662f\u5426\u6b63\u786e",
|
51 |
+
"sessionRequired": "\u8bf7\u767b\u5f55\u4ee5\u8bbf\u95ee\u6b64\u9875\u9762"
|
52 |
+
}
|
53 |
+
},
|
54 |
+
"provider": {
|
55 |
+
"continue": "\u7ee7\u7eed\u4f7f\u7528{{provider}}"
|
56 |
+
}
|
57 |
+
},
|
58 |
+
"chat": {
|
59 |
+
"input": {
|
60 |
+
"placeholder": "\u5728\u6b64\u8f93\u5165\u60a8\u7684\u6d88\u606f...",
|
61 |
+
"actions": {
|
62 |
+
"send": "\u53d1\u9001\u6d88\u606f",
|
63 |
+
"stop": "\u505c\u6b62\u4efb\u52a1",
|
64 |
+
"attachFiles": "\u9644\u52a0\u6587\u4ef6"
|
65 |
+
}
|
66 |
+
},
|
67 |
+
"speech": {
|
68 |
+
"start": "\u5f00\u59cb\u5f55\u97f3",
|
69 |
+
"stop": "\u505c\u6b62\u5f55\u97f3",
|
70 |
+
"connecting": "\u8fde\u63a5\u4e2d"
|
71 |
+
},
|
72 |
+
"fileUpload": {
|
73 |
+
"dragDrop": "\u5c06\u6587\u4ef6\u62d6\u653e\u5230\u8fd9\u91cc",
|
74 |
+
"browse": "\u6d4f\u89c8\u6587\u4ef6",
|
75 |
+
"sizeLimit": "\u9650\u5236\uff1a",
|
76 |
+
"errors": {
|
77 |
+
"failed": "\u4e0a\u4f20\u5931\u8d25",
|
78 |
+
"cancelled": "\u5df2\u53d6\u6d88\u4e0a\u4f20"
|
79 |
+
}
|
80 |
+
},
|
81 |
+
"messages": {
|
82 |
+
"status": {
|
83 |
+
"using": "\u4f7f\u7528\u4e2d",
|
84 |
+
"used": "\u5df2\u4f7f\u7528"
|
85 |
+
},
|
86 |
+
"actions": {
|
87 |
+
"copy": {
|
88 |
+
"button": "\u590d\u5236\u5230\u526a\u8d34\u677f",
|
89 |
+
"success": "\u5df2\u590d\u5236\uff01"
|
90 |
+
}
|
91 |
+
},
|
92 |
+
"feedback": {
|
93 |
+
"positive": "\u6709\u5e2e\u52a9",
|
94 |
+
"negative": "\u6ca1\u6709\u5e2e\u52a9",
|
95 |
+
"edit": "\u7f16\u8f91\u53cd\u9988",
|
96 |
+
"dialog": {
|
97 |
+
"title": "\u6dfb\u52a0\u8bc4\u8bba",
|
98 |
+
"submit": "\u63d0\u4ea4\u53cd\u9988"
|
99 |
+
},
|
100 |
+
"status": {
|
101 |
+
"updating": "\u66f4\u65b0\u4e2d",
|
102 |
+
"updated": "\u53cd\u9988\u5df2\u66f4\u65b0"
|
103 |
+
}
|
104 |
+
}
|
105 |
+
},
|
106 |
+
"history": {
|
107 |
+
"title": "\u6700\u8fd1\u8f93\u5165",
|
108 |
+
"empty": "\u7a7a\u7a7a\u5982\u4e5f...",
|
109 |
+
"show": "\u663e\u793a\u5386\u53f2"
|
110 |
+
},
|
111 |
+
"settings": {
|
112 |
+
"title": "\u8bbe\u7f6e\u9762\u677f"
|
113 |
+
},
|
114 |
+
"watermark": "\u6280\u672f\u652f\u6301"
|
115 |
+
},
|
116 |
+
"threadHistory": {
|
117 |
+
"sidebar": {
|
118 |
+
"title": "\u5386\u53f2\u5bf9\u8bdd",
|
119 |
+
"filters": {
|
120 |
+
"search": "\u641c\u7d22",
|
121 |
+
"placeholder": "\u641c\u7d22\u4f1a\u8bdd..."
|
122 |
+
},
|
123 |
+
"timeframes": {
|
124 |
+
"today": "\u4eca\u5929",
|
125 |
+
"yesterday": "\u6628\u5929",
|
126 |
+
"previous7days": "\u8fc7\u53bb7\u5929",
|
127 |
+
"previous30days": "\u8fc7\u53bb30\u5929"
|
128 |
+
},
|
129 |
+
"empty": "\u672a\u627e\u5230\u5bf9\u8bdd",
|
130 |
+
"actions": {
|
131 |
+
"close": "\u5173\u95ed\u4fa7\u8fb9\u680f",
|
132 |
+
"open": "\u6253\u5f00\u4fa7\u8fb9\u680f"
|
133 |
+
}
|
134 |
+
},
|
135 |
+
"thread": {
|
136 |
+
"untitled": "\u672a\u547d\u540d\u5bf9\u8bdd",
|
137 |
+
"menu": {
|
138 |
+
"rename": "\u91cd\u547d\u540d",
|
139 |
+
"delete": "\u5220\u9664"
|
140 |
+
},
|
141 |
+
"actions": {
|
142 |
+
"delete": {
|
143 |
+
"title": "\u786e\u8ba4\u5220\u9664",
|
144 |
+
"description": "\u8fd9\u5c06\u5220\u9664\u8be5\u5bf9\u8bdd\u53ca\u5176\u6240\u6709\u6d88\u606f\u548c\u5143\u7d20\u3002\u6b64\u64cd\u4f5c\u65e0\u6cd5\u64a4\u9500",
|
145 |
+
"success": "\u5bf9\u8bdd\u5df2\u5220\u9664",
|
146 |
+
"inProgress": "\u6b63\u5728\u5220\u9664\u5bf9\u8bdd"
|
147 |
+
},
|
148 |
+
"rename": {
|
149 |
+
"title": "\u91cd\u547d\u540d\u5bf9\u8bdd",
|
150 |
+
"description": "\u4e3a\u6b64\u5bf9\u8bdd\u8f93\u5165\u65b0\u540d\u79f0",
|
151 |
+
"form": {
|
152 |
+
"name": {
|
153 |
+
"label": "\u540d\u79f0",
|
154 |
+
"placeholder": "\u8f93\u5165\u65b0\u540d\u79f0"
|
155 |
+
}
|
156 |
+
},
|
157 |
+
"success": "\u5bf9\u8bdd\u5df2\u91cd\u547d\u540d\uff01",
|
158 |
+
"inProgress": "\u6b63\u5728\u91cd\u547d\u540d\u5bf9\u8bdd"
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
},
|
163 |
+
"navigation": {
|
164 |
+
"header": {
|
165 |
+
"chat": "\u804a\u5929",
|
166 |
+
"readme": "\u8bf4\u660e",
|
167 |
+
"theme": {
|
168 |
+
"light": "\u6d45\u8272\u4e3b\u9898",
|
169 |
+
"dark": "\u6df1\u8272\u4e3b\u9898",
|
170 |
+
"system": "\u8ddf\u968f\u7cfb\u7edf"
|
171 |
+
}
|
172 |
+
},
|
173 |
+
"newChat": {
|
174 |
+
"button": "\u65b0\u5efa\u5bf9\u8bdd",
|
175 |
+
"dialog": {
|
176 |
+
"title": "\u521b\u5efa\u65b0\u5bf9\u8bdd",
|
177 |
+
"description": "\u8fd9\u5c06\u6e05\u9664\u60a8\u5f53\u524d\u7684\u804a\u5929\u8bb0\u5f55\u3002\u786e\u5b9a\u8981\u7ee7\u7eed\u5417\uff1f",
|
178 |
+
"tooltip": "\u65b0\u5efa\u5bf9\u8bdd"
|
179 |
+
}
|
180 |
+
},
|
181 |
+
"user": {
|
182 |
+
"menu": {
|
183 |
+
"settings": "\u8bbe\u7f6e",
|
184 |
+
"settingsKey": "S",
|
185 |
+
"apiKeys": "API\u5bc6\u94a5",
|
186 |
+
"logout": "\u9000\u51fa\u767b\u5f55"
|
187 |
+
}
|
188 |
+
}
|
189 |
+
},
|
190 |
+
"apiKeys": {
|
191 |
+
"title": "\u6240\u9700API\u5bc6\u94a5",
|
192 |
+
"description": "\u4f7f\u7528\u6b64\u5e94\u7528\u9700\u8981\u4ee5\u4e0bAPI\u5bc6\u94a5\u3002\u8fd9\u4e9b\u5bc6\u94a5\u5b58\u50a8\u5728\u60a8\u8bbe\u5907\u7684\u672c\u5730\u5b58\u50a8\u4e2d\u3002",
|
193 |
+
"success": {
|
194 |
+
"saved": "\u4fdd\u5b58\u6210\u529f"
|
195 |
+
}
|
196 |
+
},
|
197 |
+
"alerts": {
|
198 |
+
"info": "\u4fe1\u606f",
|
199 |
+
"note": "\u6ce8\u91ca",
|
200 |
+
"tip": "\u63d0\u793a",
|
201 |
+
"important": "\u91cd\u8981",
|
202 |
+
"warning": "\u8b66\u544a",
|
203 |
+
"caution": "\u6ce8\u610f",
|
204 |
+
"debug": "\u8c03\u8bd5",
|
205 |
+
"example": "\u793a\u4f8b",
|
206 |
+
"success": "\u6210\u529f",
|
207 |
+
"help": "\u5e2e\u52a9",
|
208 |
+
"idea": "\u60f3\u6cd5",
|
209 |
+
"pending": "\u5f85\u5904\u7406",
|
210 |
+
"security": "\u5b89\u5168",
|
211 |
+
"beta": "\u6d4b\u8bd5",
|
212 |
+
"best-practice": "\u6700\u4f73\u5b9e\u8df5"
|
213 |
+
}
|
214 |
+
}
|
.gitattributes
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
*.gif filter=lfs diff=lfs merge=lfs -text
|
2 |
+
*.png filter=lfs diff=lfs merge=lfs -text
|
3 |
+
public/*.gif filter=lfs diff=lfs merge=lfs -text
|
4 |
+
public/*.png filter=lfs diff=lfs merge=lfs -text
|
5 |
+
public/avatars/*.png filter=lfs diff=lfs merge=lfs -text
|
Dockerfile
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Use the official Python 3.12 image
|
2 |
+
FROM python:3.12-slim
|
3 |
+
|
4 |
+
# Set the working directory
|
5 |
+
WORKDIR /app
|
6 |
+
|
7 |
+
# Install required system dependencies
|
8 |
+
RUN apt-get update && apt-get install -y \
|
9 |
+
curl \
|
10 |
+
git \
|
11 |
+
libpq-dev \
|
12 |
+
gcc \
|
13 |
+
&& rm -rf /var/lib/apt/lists/*
|
14 |
+
|
15 |
+
# Create the /app/files directory and set full permissions
|
16 |
+
RUN mkdir -p /app/.files && chmod 777 /app/.files
|
17 |
+
RUN mkdir -p /app/logs && chmod 777 /app/logs
|
18 |
+
RUN mkdir -p /app/observability_data && chmod 777 /app/observability_data
|
19 |
+
RUN mkdir -p /app/storage && chmod 777 /app/storage
|
20 |
+
RUN mkdir -p /app/sessions && chmod 777 /app/sessions
|
21 |
+
|
22 |
+
# Copy the current repository into the container
|
23 |
+
COPY . /app
|
24 |
+
|
25 |
+
# Upgrade pip and install dependencies
|
26 |
+
RUN pip install --upgrade pip && \
|
27 |
+
pip install -r requirements.txt
|
28 |
+
|
29 |
+
EXPOSE 7860
|
30 |
+
|
31 |
+
CMD uvicorn api:app --host 0.0.0.0 --port 7860
|
README.md
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
title: Agent Tide Demo
|
3 |
+
emoji: π
|
4 |
+
colorFrom: indigo
|
5 |
+
colorTo: blue
|
6 |
+
sdk: docker
|
7 |
+
pinned: true
|
8 |
+
license: apache-2.0
|
9 |
+
short_description: Your new coding companion that actually knows the codebase!
|
10 |
+
---
|
api.py
ADDED
@@ -0,0 +1,84 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from fastapi.responses import HTMLResponse, FileResponse, RedirectResponse
|
2 |
+
from fastapi.templating import Jinja2Templates
|
3 |
+
from fastapi.staticfiles import StaticFiles
|
4 |
+
from fastapi import FastAPI, Request
|
5 |
+
from chainlit.utils import mount_chainlit
|
6 |
+
from pathlib import Path
|
7 |
+
import os
|
8 |
+
|
9 |
+
ROOT_PATH = os.getenv("API_ROOT_PATH", "./")
|
10 |
+
app = FastAPI(title="AgentTide", description="Precision-Driven Software Engineering Agent")
|
11 |
+
|
12 |
+
# Mount static files directory for assets (logo, CSS, JS, etc.)
|
13 |
+
app.mount("/static", StaticFiles(directory=F"{ROOT_PATH}/public"), name="static")
|
14 |
+
|
15 |
+
templates = Jinja2Templates(directory=F"{ROOT_PATH}/static")
|
16 |
+
|
17 |
+
@app.get("/", response_class=HTMLResponse)
|
18 |
+
async def root(request: Request):
|
19 |
+
"""Serve the AgentTide landing page"""
|
20 |
+
demo_base_url = os.getenv("DEMO_BASE_URL", "")
|
21 |
+
return RedirectResponse(url=f"{demo_base_url}/landing_page")
|
22 |
+
|
23 |
+
@app.get("/landing_page", response_class=HTMLResponse)
|
24 |
+
async def landing_page(request: Request):
|
25 |
+
"""Serve the AgentTide landing page"""
|
26 |
+
demo_base_url = os.getenv("DEMO_BASE_URL", "")
|
27 |
+
return templates.TemplateResponse(
|
28 |
+
"landing_page.html",
|
29 |
+
{"request": request, "DEMO_BASE_URL": demo_base_url}
|
30 |
+
)
|
31 |
+
|
32 |
+
@app.get("/health")
|
33 |
+
async def health_check():
|
34 |
+
"""Health check endpoint"""
|
35 |
+
return {"status": "healthy", "service": "AgentTide"}
|
36 |
+
|
37 |
+
@app.get("/favicon.ico", include_in_schema=False)
|
38 |
+
async def favicon():
|
39 |
+
"""Serve favicon"""
|
40 |
+
favicon_path = Path(F"{ROOT_PATH}/public/favicon.ico")
|
41 |
+
if favicon_path.exists():
|
42 |
+
return FileResponse(favicon_path)
|
43 |
+
else:
|
44 |
+
# Return 204 No Content if favicon doesn't exist
|
45 |
+
return HTMLResponse(status_code=204)
|
46 |
+
|
47 |
+
@app.get("/logo_dark.png", include_in_schema=False)
|
48 |
+
async def logo_dark():
|
49 |
+
"""Serve favicon"""
|
50 |
+
favicon_path = Path(F"{ROOT_PATH}/public/logo_dark.png")
|
51 |
+
if favicon_path.exists():
|
52 |
+
return FileResponse(favicon_path)
|
53 |
+
else:
|
54 |
+
# Return 204 No Content if favicon doesn't exist
|
55 |
+
return HTMLResponse(status_code=204)
|
56 |
+
|
57 |
+
@app.get("/codetide-banner.png", include_in_schema=False)
|
58 |
+
async def codetide_banner():
|
59 |
+
"""Serve favicon"""
|
60 |
+
favicon_path = Path(F"{ROOT_PATH}/public/codetide-banner.png")
|
61 |
+
if favicon_path.exists():
|
62 |
+
return FileResponse(favicon_path)
|
63 |
+
else:
|
64 |
+
# Return 204 No Content if favicon doesn't exist
|
65 |
+
return HTMLResponse(status_code=204)
|
66 |
+
|
67 |
+
@app.get("/agent-tide-demo.gif", include_in_schema=False)
|
68 |
+
async def agent_tide_deo_gif():
|
69 |
+
"""Serve favicon"""
|
70 |
+
favicon_path = Path(F"{ROOT_PATH}/public/agent-tide-demo.gif")
|
71 |
+
if favicon_path.exists():
|
72 |
+
return FileResponse(favicon_path)
|
73 |
+
else:
|
74 |
+
# Return 204 No Content if favicon doesn't exist
|
75 |
+
return HTMLResponse(status_code=204)
|
76 |
+
|
77 |
+
mount_chainlit(app=app, target=F"{ROOT_PATH}/app.py", path="/tide")
|
78 |
+
|
79 |
+
if __name__ == "__main__":
|
80 |
+
from dotenv import load_dotenv
|
81 |
+
import uvicorn
|
82 |
+
|
83 |
+
load_dotenv()
|
84 |
+
uvicorn.run(app, host="0.0.0.0", port=7860)
|
app.py
ADDED
@@ -0,0 +1,454 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
### chainlit app without data persistance enabled
|
2 |
+
# ruff: noqa: E402
|
3 |
+
from pathlib import Path
|
4 |
+
import os
|
5 |
+
|
6 |
+
os.environ.setdefault("CHAINLIT_APP_ROOT", str(Path(os.path.abspath(__file__)).parent))
|
7 |
+
|
8 |
+
from codetide.agents.tide.ui.defaults import AICORE_CONFIG_EXAMPLE, EXCEPTION_MESSAGE, MISSING_CONFIG_MESSAGE, STARTERS
|
9 |
+
from codetide.agents.tide.ui.stream_processor import StreamProcessor, MarkerConfig
|
10 |
+
from codetide.agents.tide.ui.utils import run_concurrent_tasks, send_reasoning_msg
|
11 |
+
from codetide.agents.tide.ui.agent_tide_ui import AgentTideUi
|
12 |
+
from codetide.core.defaults import DEFAULT_ENCODING
|
13 |
+
from codetide.core.logs import logger
|
14 |
+
from codetide.agents.tide.models import Step
|
15 |
+
|
16 |
+
from aicore.const import STREAM_END_TOKEN, STREAM_START_TOKEN
|
17 |
+
from aicore.models import AuthenticationError, ModelError
|
18 |
+
from aicore.llm import Llm, LlmConfig
|
19 |
+
from aicore.config import Config
|
20 |
+
|
21 |
+
from git_utils import commit_and_push_changes, validate_git_url, checkout_new_branch
|
22 |
+
from chainlit.cli import run_chainlit
|
23 |
+
from typing import Optional
|
24 |
+
from pathlib import Path
|
25 |
+
from ulid import ulid
|
26 |
+
import chainlit as cl
|
27 |
+
import subprocess
|
28 |
+
import asyncio
|
29 |
+
import shutil
|
30 |
+
import json
|
31 |
+
import stat
|
32 |
+
import yaml
|
33 |
+
import time
|
34 |
+
import os
|
35 |
+
|
36 |
+
DEFAULT_SESSIONS_WORKSPACE = Path(os.getcwd()) / "sessions"
|
37 |
+
|
38 |
+
@cl.on_chat_start
|
39 |
+
async def start_chat():
|
40 |
+
session_id = ulid()
|
41 |
+
cl.user_session.set("session_id", session_id)
|
42 |
+
await cl.context.emitter.set_commands(AgentTideUi.commands)
|
43 |
+
cl.user_session.set("chat_history", [])
|
44 |
+
|
45 |
+
exception = True
|
46 |
+
while exception:
|
47 |
+
try:
|
48 |
+
user_message = await cl.AskUserMessage(
|
49 |
+
content="Provide a valid github url to give AgentTide some context!",
|
50 |
+
timeout=3600
|
51 |
+
).send()
|
52 |
+
url = user_message.get("output")
|
53 |
+
await validate_git_url(url)
|
54 |
+
exception = None
|
55 |
+
except Exception as e:
|
56 |
+
await cl.Message(f"Invalid url found, please provide only the url, if it is a private repo you can inlucde a PAT in the url: {e}").send()
|
57 |
+
exception = e
|
58 |
+
|
59 |
+
process = await asyncio.create_subprocess_exec(
|
60 |
+
"git", "clone", url, str(DEFAULT_SESSIONS_WORKSPACE / session_id),
|
61 |
+
stdout=asyncio.subprocess.PIPE,
|
62 |
+
stderr=asyncio.subprocess.PIPE
|
63 |
+
)
|
64 |
+
|
65 |
+
try:
|
66 |
+
stdout, stderr = await asyncio.wait_for(process.communicate(), timeout=300)
|
67 |
+
except asyncio.TimeoutError:
|
68 |
+
process.kill()
|
69 |
+
await process.wait()
|
70 |
+
raise
|
71 |
+
|
72 |
+
if process.returncode != 0:
|
73 |
+
raise subprocess.CalledProcessError(process.returncode, ["git", "clone", url], stdout, stderr)
|
74 |
+
|
75 |
+
logger.info(f"finished cloning to {DEFAULT_SESSIONS_WORKSPACE / session_id}")
|
76 |
+
|
77 |
+
res = await cl.AskActionMessage(
|
78 |
+
content="Select the LLM to power Agent Tide! You can use one of the following free options or configure your own via api key! We recommend `gpt-4.1` or `sonnet-4` for ultimate performance (don't worry we are not logging api keys, you can check the code yourself)! Bear in mind that free alternatives can be context and rate limited.",
|
79 |
+
actions=[
|
80 |
+
cl.Action(name="kimi-k2", payload={"model": "moonshotai/kimi-k2:free"}, label="kimi-k2"),
|
81 |
+
cl.Action(name="qwen3-coder", payload={"model": "qwen/qwen3-coder:free"}, label="qwen3-coder"),
|
82 |
+
cl.Action(name="gpt-oss-20b", payload={"model": "openai/gpt-oss-20b:free"}, label="gpt-oss-20b"),
|
83 |
+
cl.Action(name="custom", payload={"model": "custom"}, label="bring your model")
|
84 |
+
],
|
85 |
+
timeout=3600
|
86 |
+
).send()
|
87 |
+
|
88 |
+
|
89 |
+
if res and res.get("payload").get("model") != "custom":
|
90 |
+
llm_config = LlmConfig(
|
91 |
+
provider="openrouter",
|
92 |
+
model=res.get("payload").get("model"),
|
93 |
+
api_key=os.getenv("OPENROUTER_API_KEY"),
|
94 |
+
max_tokens=int(os.getenv("OPENROUTER_MAX_TOKENS"))
|
95 |
+
)
|
96 |
+
agent_tide_ui = AgentTideUi(
|
97 |
+
DEFAULT_SESSIONS_WORKSPACE / session_id,
|
98 |
+
history=cl.user_session.get("chat_history"),
|
99 |
+
llm_config=llm_config,
|
100 |
+
session_id=session_id
|
101 |
+
)
|
102 |
+
await agent_tide_ui.load()
|
103 |
+
|
104 |
+
elif res.get("payload").get("model") == "custom":
|
105 |
+
agent_tide_ui = AgentTideUi(
|
106 |
+
DEFAULT_SESSIONS_WORKSPACE / session_id,
|
107 |
+
history=cl.user_session.get("chat_history"),
|
108 |
+
llm_config=cl.user_session.get("settings") or None,
|
109 |
+
session_id=session_id
|
110 |
+
)
|
111 |
+
await agent_tide_ui.load()
|
112 |
+
|
113 |
+
exception = True
|
114 |
+
|
115 |
+
while exception:
|
116 |
+
try:
|
117 |
+
agent_tide_ui.agent_tide.llm.provider.validate_config(force_check_against_provider=True)
|
118 |
+
exception = None
|
119 |
+
|
120 |
+
except (AuthenticationError, ModelError) as e:
|
121 |
+
exception = e
|
122 |
+
await cl.Message(
|
123 |
+
content=MISSING_CONFIG_MESSAGE.format(
|
124 |
+
agent_tide_config_path="because-we-dont-actually-store-it-it-only-exists-while-this-session-is-alive",
|
125 |
+
config_file="config-file-in-yaml",
|
126 |
+
example_config=AICORE_CONFIG_EXAMPLE
|
127 |
+
),
|
128 |
+
elements=[
|
129 |
+
cl.File(
|
130 |
+
name="config.yml",
|
131 |
+
display="inline",
|
132 |
+
content=AICORE_CONFIG_EXAMPLE,
|
133 |
+
size="small"
|
134 |
+
),
|
135 |
+
]
|
136 |
+
).send()
|
137 |
+
|
138 |
+
_config_files = None
|
139 |
+
while _config_files is None:
|
140 |
+
_config_files = await cl.AskFileMessage(
|
141 |
+
content=EXCEPTION_MESSAGE.format(exception=json.dumps(exception.__dict__, indent=4)),
|
142 |
+
accept=[".yml", ".yaml"],
|
143 |
+
timeout=3600
|
144 |
+
).send()
|
145 |
+
|
146 |
+
if _config_files:
|
147 |
+
_config_file = _config_files[0]
|
148 |
+
|
149 |
+
try:
|
150 |
+
with open(_config_file.path, "r", encoding=DEFAULT_ENCODING) as _file:
|
151 |
+
config_raw = _file.read()
|
152 |
+
config_dict = yaml.safe_load(config_raw)
|
153 |
+
config = Config(**config_dict)
|
154 |
+
|
155 |
+
agent_tide_ui.agent_tide.llm = Llm.from_config(config.llm)
|
156 |
+
agent_tide_ui.agent_tide.llm.provider.session_id = agent_tide_ui.agent_tide.session_id
|
157 |
+
agent_tide_ui.agent_tide.pass_custom_logger_fn()
|
158 |
+
|
159 |
+
session_dir_path = DEFAULT_SESSIONS_WORKSPACE / session_id
|
160 |
+
if not os.path.exists(session_dir_path):
|
161 |
+
os.makedirs(session_dir_path, exist_ok=True)
|
162 |
+
|
163 |
+
except Exception as e:
|
164 |
+
exception = e
|
165 |
+
|
166 |
+
await cl.Message(
|
167 |
+
content="Hi, I'm Tide... Nice to meet you!"
|
168 |
+
).send()
|
169 |
+
|
170 |
+
new_branch_name = f"agent-tide-{ulid()}"
|
171 |
+
cl.user_session.set("current_branch_name", new_branch_name)
|
172 |
+
checkout_new_branch(agent_tide_ui.agent_tide.tide.repo, new_branch_name=new_branch_name)
|
173 |
+
cl.user_session.set("AgentTideUi", agent_tide_ui)
|
174 |
+
|
175 |
+
@cl.set_starters
|
176 |
+
async def set_starters():
|
177 |
+
return [cl.Starter(**kwargs) for kwargs in STARTERS]
|
178 |
+
|
179 |
+
@cl.on_chat_end
|
180 |
+
async def empty_current_session():
|
181 |
+
session_id = cl.user_session.get("session_id")
|
182 |
+
session_path = DEFAULT_SESSIONS_WORKSPACE / session_id
|
183 |
+
if os.path.exists(session_path):
|
184 |
+
shutil.rmtree(session_path)
|
185 |
+
|
186 |
+
def remove_readonly(func, path, _):
|
187 |
+
"""Clear the readonly bit and reattempt the removal"""
|
188 |
+
os.chmod(path, stat.S_IWRITE)
|
189 |
+
func(path)
|
190 |
+
|
191 |
+
@cl.on_app_shutdown
|
192 |
+
async def empty_all_sessions():
|
193 |
+
if os.path.exists(DEFAULT_SESSIONS_WORKSPACE):
|
194 |
+
shutil.rmtree(DEFAULT_SESSIONS_WORKSPACE, onexc=remove_readonly)
|
195 |
+
|
196 |
+
@cl.action_callback("execute_steps")
|
197 |
+
async def on_execute_steps(action :cl.Action):
|
198 |
+
agent_tide_ui: AgentTideUi = cl.user_session.get("AgentTideUi")
|
199 |
+
|
200 |
+
latest_step_message :cl.Message = cl.user_session.get("latest_step_message")
|
201 |
+
if latest_step_message and latest_step_message.id == action.payload.get("msg_id"):
|
202 |
+
await latest_step_message.remove_actions()
|
203 |
+
await latest_step_message.send() # close message ?
|
204 |
+
|
205 |
+
if agent_tide_ui.current_step is None:
|
206 |
+
task_list = cl.TaskList("Steps")
|
207 |
+
for step in agent_tide_ui.agent_tide.steps.root:
|
208 |
+
task = cl.Task(title=step.description)#, forId=message.id)
|
209 |
+
await task_list.add_task(task)
|
210 |
+
|
211 |
+
# Update the task list in the interface
|
212 |
+
await task_list.send()
|
213 |
+
cl.user_session.set("StepsTaskList", task_list)
|
214 |
+
|
215 |
+
else:
|
216 |
+
task_list = cl.user_session.get("StepsTaskList")
|
217 |
+
|
218 |
+
is_done = agent_tide_ui.increment_step()
|
219 |
+
# Optionally remove the action button from the chatbot user interface
|
220 |
+
|
221 |
+
if is_done:
|
222 |
+
task_list.tasks[-1].status = cl.TaskStatus.DONE
|
223 |
+
await cl.sleep(3)
|
224 |
+
await task_list.remove()
|
225 |
+
await action.remove()
|
226 |
+
|
227 |
+
# await cl.send_window_message("Finished implementing Steps")
|
228 |
+
|
229 |
+
else:
|
230 |
+
current_task_idx = agent_tide_ui.current_step
|
231 |
+
if current_task_idx >= 1:
|
232 |
+
task_list.tasks[current_task_idx-1].status = cl.TaskStatus.DONE
|
233 |
+
|
234 |
+
step :Step = agent_tide_ui.agent_tide.steps.root[agent_tide_ui.current_step]
|
235 |
+
|
236 |
+
task_list.status = f"Executing step {current_task_idx}"
|
237 |
+
await task_list.send()
|
238 |
+
await action.remove()
|
239 |
+
|
240 |
+
step_instructions_msg = await cl.Message(
|
241 |
+
content=step.as_instruction(),
|
242 |
+
author="Agent Tide"
|
243 |
+
).send()
|
244 |
+
|
245 |
+
await agent_loop(step_instructions_msg, codeIdentifiers=step.get_code_identifiers(agent_tide_ui.agent_tide.tide._as_file_paths), agent_tide_ui=agent_tide_ui)
|
246 |
+
|
247 |
+
task_list.status = f"Waiting feedback on step {current_task_idx}"
|
248 |
+
await task_list.send()
|
249 |
+
|
250 |
+
@cl.action_callback("stop_steps")
|
251 |
+
async def on_stop_steps(action :cl.Action):
|
252 |
+
agent_tide_ui: AgentTideUi = cl.user_session.get("AgentTideUi")
|
253 |
+
|
254 |
+
latest_step_message :cl.Message = cl.user_session.get("latest_step_message")
|
255 |
+
if latest_step_message and latest_step_message.id == action.payload.get("msg_id"):
|
256 |
+
await latest_step_message.remove_actions()
|
257 |
+
await latest_step_message.send() # close message ?
|
258 |
+
|
259 |
+
task_list = cl.user_session.get("StepsTaskList")
|
260 |
+
if task_list:
|
261 |
+
agent_tide_ui.current_step = None
|
262 |
+
await task_list.remove()
|
263 |
+
|
264 |
+
@cl.action_callback("checkout_commit_push")
|
265 |
+
async def on_checkout_commit_push(action :cl.Action):
|
266 |
+
agent_tide_ui: AgentTideUi = cl.user_session.get("AgentTideUi")
|
267 |
+
# await agent_tide_ui.agent_tide.prepare_commit()
|
268 |
+
# agent_tide_ui.agent_tide.commit("AgentTide - add all and push")
|
269 |
+
await commit_and_push_changes(agent_tide_ui.agent_tide.tide.rootpath, branch_name=cl.user_session.get("current_branch_name"), commit_message="AgentTide - add all and push", checkout=False)
|
270 |
+
|
271 |
+
@cl.action_callback("inspect_code_context")
|
272 |
+
async def on_inspect_context(action :cl.Action):
|
273 |
+
agent_tide_ui: AgentTideUi = cl.user_session.get("AgentTideUi")
|
274 |
+
|
275 |
+
await action.remove()
|
276 |
+
|
277 |
+
inspect_msg = cl.Message(
|
278 |
+
content="",
|
279 |
+
author="Agent Tide",
|
280 |
+
elements= [
|
281 |
+
cl.Text(
|
282 |
+
name="CodeTIde Retrieved Identifiers",
|
283 |
+
content=f"""```json\n{json.dumps(list(agent_tide_ui.agent_tide._last_code_identifers), indent=4)}\n```"""
|
284 |
+
)
|
285 |
+
]
|
286 |
+
)
|
287 |
+
agent_tide_ui.agent_tide._last_code_identifers = None
|
288 |
+
|
289 |
+
if agent_tide_ui.agent_tide._last_code_context:
|
290 |
+
inspect_msg.elements.append(
|
291 |
+
cl.File(
|
292 |
+
name=f"codetide_context_{ulid()}.txt",
|
293 |
+
content=agent_tide_ui.agent_tide._last_code_context
|
294 |
+
)
|
295 |
+
)
|
296 |
+
agent_tide_ui.agent_tide._last_code_context = None
|
297 |
+
|
298 |
+
await inspect_msg.send()
|
299 |
+
|
300 |
+
@cl.on_message
|
301 |
+
async def agent_loop(message: Optional[cl.Message]=None, codeIdentifiers: Optional[list] = None, agent_tide_ui :Optional[AgentTideUi]=None):
|
302 |
+
|
303 |
+
loading_msg = await cl.Message(
|
304 |
+
content="",
|
305 |
+
elements=[
|
306 |
+
cl.CustomElement(
|
307 |
+
name="LoadingMessage",
|
308 |
+
props={
|
309 |
+
"messages": ["Working", "Syncing CodeTide", "Thinking", "Looking for context"],
|
310 |
+
"interval": 1500, # 1.5 seconds between messages
|
311 |
+
"showIcon": True
|
312 |
+
}
|
313 |
+
)
|
314 |
+
]
|
315 |
+
).send()
|
316 |
+
|
317 |
+
if agent_tide_ui is None:
|
318 |
+
agent_tide_ui = cl.user_session.get("AgentTideUi")
|
319 |
+
|
320 |
+
chat_history = cl.user_session.get("chat_history")
|
321 |
+
|
322 |
+
if message is not None:
|
323 |
+
if message.command:
|
324 |
+
command_prompt = await agent_tide_ui.get_command_prompt(message.command)
|
325 |
+
if command_prompt:
|
326 |
+
message.content = "\n\n---\n\n".join([command_prompt, message.content])
|
327 |
+
|
328 |
+
chat_history.append({"role": "user", "content": message.content})
|
329 |
+
await agent_tide_ui.add_to_history(message.content)
|
330 |
+
|
331 |
+
context_msg = cl.Message(content="", author="AgentTide")
|
332 |
+
msg = cl.Message(content="", author="Agent Tide")
|
333 |
+
async with cl.Step("ApplyPatch", type="tool") as diff_step:
|
334 |
+
await diff_step.remove()
|
335 |
+
|
336 |
+
# Initialize the stream processor
|
337 |
+
stream_processor = StreamProcessor(
|
338 |
+
marker_configs=[
|
339 |
+
MarkerConfig(
|
340 |
+
begin_marker="*** Begin Commit",
|
341 |
+
end_marker="*** End Commit",
|
342 |
+
start_wrapper="\n```shell\n",
|
343 |
+
end_wrapper="\n```\n",
|
344 |
+
target_step=msg
|
345 |
+
),
|
346 |
+
MarkerConfig(
|
347 |
+
begin_marker="*** Begin Patch",
|
348 |
+
end_marker="*** End Patch",
|
349 |
+
start_wrapper="\n```shell\n",
|
350 |
+
end_wrapper="\n```\n",
|
351 |
+
target_step=diff_step
|
352 |
+
),
|
353 |
+
MarkerConfig(
|
354 |
+
begin_marker="*** Begin Steps",
|
355 |
+
end_marker="*** End Steps",
|
356 |
+
start_wrapper="\n```shell\n",
|
357 |
+
end_wrapper="\n```\n",
|
358 |
+
target_step=msg
|
359 |
+
)
|
360 |
+
],
|
361 |
+
global_fallback_msg=msg
|
362 |
+
)
|
363 |
+
|
364 |
+
st = time.time()
|
365 |
+
is_reasonig_sent = False
|
366 |
+
async for chunk in run_concurrent_tasks(agent_tide_ui, codeIdentifiers):
|
367 |
+
if chunk == STREAM_START_TOKEN:
|
368 |
+
is_reasonig_sent = await send_reasoning_msg(loading_msg, context_msg, agent_tide_ui, st)
|
369 |
+
continue
|
370 |
+
|
371 |
+
elif not is_reasonig_sent:
|
372 |
+
is_reasonig_sent = await send_reasoning_msg(loading_msg, context_msg, agent_tide_ui, st)
|
373 |
+
|
374 |
+
elif chunk == STREAM_END_TOKEN:
|
375 |
+
# Handle any remaining content
|
376 |
+
await stream_processor.finalize()
|
377 |
+
break
|
378 |
+
|
379 |
+
await stream_processor.process_chunk(chunk)
|
380 |
+
|
381 |
+
await asyncio.sleep(0.5)
|
382 |
+
if agent_tide_ui.agent_tide.steps:
|
383 |
+
cl.user_session.set("latest_step_message", msg)
|
384 |
+
msg.actions = [
|
385 |
+
cl.Action(
|
386 |
+
name="stop_steps",
|
387 |
+
tooltip="stop",
|
388 |
+
icon="octagon-x",
|
389 |
+
payload={"msg_id": msg.id}
|
390 |
+
),
|
391 |
+
cl.Action(
|
392 |
+
name="execute_steps",
|
393 |
+
tooltip="Next step",
|
394 |
+
icon="fast-forward",
|
395 |
+
payload={"msg_id": msg.id}
|
396 |
+
)
|
397 |
+
]
|
398 |
+
|
399 |
+
if agent_tide_ui.agent_tide._last_code_identifers:
|
400 |
+
msg.actions.append(
|
401 |
+
cl.Action(
|
402 |
+
name="inspect_code_context",
|
403 |
+
tooltip="Inspect CodeContext",
|
404 |
+
icon= "telescope",
|
405 |
+
payload={"msg_id": msg.id}
|
406 |
+
)
|
407 |
+
)
|
408 |
+
|
409 |
+
msg.actions.append(
|
410 |
+
cl.Action(
|
411 |
+
name="checkout_commit_push",
|
412 |
+
tooltip="A new branch will be created and the changes made so far will be commited and pushed to the upstream repository",
|
413 |
+
icon="circle-fading-arrow-up",
|
414 |
+
payload={"msg_id": msg.id}
|
415 |
+
)
|
416 |
+
)
|
417 |
+
|
418 |
+
# Send the final message
|
419 |
+
await msg.send()
|
420 |
+
|
421 |
+
chat_history.append({"role": "assistant", "content": msg.content})
|
422 |
+
await agent_tide_ui.add_to_history(msg.content)
|
423 |
+
|
424 |
+
if agent_tide_ui.agent_tide._has_patch:
|
425 |
+
choice = await cl.AskActionMessage(
|
426 |
+
content="AgentTide is asking you to review the Patch before applying it.",
|
427 |
+
actions=[
|
428 |
+
cl.Action(name="approve_patch", payload={"lgtm": True}, label="βοΈ Approve"),
|
429 |
+
cl.Action(name="reject_patch", payload={"lgtm": False}, label="β Reject"),
|
430 |
+
],
|
431 |
+
timeout=3600
|
432 |
+
).send()
|
433 |
+
|
434 |
+
if choice:
|
435 |
+
lgtm = choice.get("payload", []).get("lgtm")
|
436 |
+
if lgtm:
|
437 |
+
agent_tide_ui.agent_tide.approve()
|
438 |
+
else:
|
439 |
+
response = await cl.AskUserMessage(
|
440 |
+
content="""Please provide specific feedback explaining why the patch was rejected. Include what's wrong, which parts are problematic, and what needs to change. Avoid vague responses like "doesn't work" - instead be specific like "missing error handling for FileNotFoundError" or "function should return boolean, not None." Your detailed feedback helps generate a better solution.""",
|
441 |
+
timeout=3600
|
442 |
+
).send()
|
443 |
+
|
444 |
+
feedback = response.get("output")
|
445 |
+
agent_tide_ui.agent_tide.reject(feedback)
|
446 |
+
chat_history.append({"role": "user", "content": feedback})
|
447 |
+
await agent_loop(agent_tide_ui=agent_tide_ui)
|
448 |
+
|
449 |
+
if __name__ == "__main__":
|
450 |
+
from dotenv import load_dotenv
|
451 |
+
load_dotenv()
|
452 |
+
|
453 |
+
# TODO add button button to ckeckout and push
|
454 |
+
run_chainlit(os.path.abspath(__file__))
|
chainlit.md
ADDED
@@ -0,0 +1,182 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 
|
2 |
+
|
3 |
+
---
|
4 |
+
|
5 |
+
# Welcome to Agent Tide! ππ€
|
6 |
+
|
7 |
+
```
|
8 |
+
ββββββ βββββββ ββββββββββββ ββββββββββββ βββββββββββββββββββ ββββββββ
|
9 |
+
ββββββββββββββββ βββββββββββββ ββββββββββββ ββββββββββββββββββββββββββββ
|
10 |
+
βββββββββββ ββββββββββ ββββββ βββ βββ βββ ββββββ βββββββββ
|
11 |
+
βββββββββββ βββββββββ ββββββββββ βββ βββ ββββββ βββββββββ
|
12 |
+
βββ βββββββββββββββββββββββ ββββββ βββ βββ βββββββββββββββββββ
|
13 |
+
βββ βββ βββββββ βββββββββββ βββββ βββ βββ ββββββββββ ββββββββ
|
14 |
+
```
|
15 |
+
|
16 |
+
---
|
17 |
+
|
18 |
+
## What is Agent Tide?
|
19 |
+
|
20 |
+
**Agent Tide** is a next-generation, precision-driven software engineering agent built on top of [CodeTide](https://github.com/BrunoV21/CodeTide). It enables you to interact directly with your local codebaseβ**everything is local and stays local**. No code, context, or metadata ever leaves your machine.
|
21 |
+
|
22 |
+
Unlike most agent frameworks that rely on hidden inner logic, opaque planning, or LLMs doing everything in a single pass, Agent Tide offers a transparent, stepwise, and human-in-the-loop workflow. Think of it as "ChatGPT, but connected to your codebase"βwith full visibility and control over every change.
|
23 |
+
|
24 |
+
---
|
25 |
+
|
26 |
+
## How Does Agent Tide Work?
|
27 |
+
|
28 |
+
1. **Direct Codebase Connection & Context Loading**
|
29 |
+
- Agent Tide uses CodeTide's fast, symbolic codebase parser to build a tree of all code identifiers (functions, classes, methods, etc.).
|
30 |
+
- When you make a request, Agent Tide analyzes it and loads only the relevant identifiers and their dependenciesβretrieving just the code snippets needed for your task.
|
31 |
+
- This context loading is fast, deterministic, and fully local.
|
32 |
+
|
33 |
+
2. **Three Modes of Operation**
|
34 |
+
- **Clarification:** If your request is ambiguous, Agent Tide will ask for more information before proceeding.
|
35 |
+
- **Direct Implementation:** For simple, clear requests, Agent Tide will immediately generate a patch to fulfill your request.
|
36 |
+
- **Planning Mode:** For complex tasks, Agent Tide enters a planning modeβdecomposing your request into a step-by-step plan. You can review, edit, or reorder steps before execution.
|
37 |
+
|
38 |
+
3. **Human-in-the-Loop, Stepwise Execution**
|
39 |
+
- You always see the plan before any code is changed. You can modify steps, request clarifications, or approve the plan.
|
40 |
+
- When ready, click "Proceed to next step" to have Agent Tide implement each step sequentially.
|
41 |
+
- After each step, you can review the patch, provide feedback, or continue to the next stepβ**keeping you in control at all times**.
|
42 |
+
|
43 |
+
4. **Patch-Based, Token-Efficient Editing**
|
44 |
+
- All code changes are generated as atomic, high-precision diffs (patches), not full file rewrites.
|
45 |
+
- This means you see exactly what will change, and can stop or correct the agent at any pointβno waiting for a huge batch of changes to finish before intervening.
|
46 |
+
- This approach is also highly efficient for LLM token usage and latency.
|
47 |
+
|
48 |
+
5. **Privacy & Local-First Philosophy**
|
49 |
+
- No code, context, or metadata is sent to any external service other than the selected LLM provider.
|
50 |
+
- All code analysis, context building, and patching is performed locally.
|
51 |
+
|
52 |
+
6. **Model Compatibility**
|
53 |
+
- Agent Tide works best with GPT-4.1, Claude Sonnet 4, and Opus 4.1.
|
54 |
+
- Some models (e.g., DeepSeek Chat) may struggle with patch/diff generation.
|
55 |
+
|
56 |
+
7. **Terminal & MCP Integration**
|
57 |
+
- Terminal access is not available yet.
|
58 |
+
- MCP (Multi-Component Patch) integration via aicore is deactivated by default in this demo, but can be enabled for more advanced use cases.
|
59 |
+
|
60 |
+
---
|
61 |
+
|
62 |
+
## Why Agent Tide?
|
63 |
+
|
64 |
+
- **Transparency:** Every step, plan, and patch is visible and editable before execution.
|
65 |
+
- **Control:** You decide when and how changes are appliedβno "black box" agent behavior.
|
66 |
+
- **Precision:** Code changes are atomic, minimal, and always shown as diffs.
|
67 |
+
- **Speed:** Context loading and patching are fast, thanks to CodeTide's symbolic engine.
|
68 |
+
- **Privacy:** Your code never leaves your machine.
|
69 |
+
|
70 |
+
---
|
71 |
+
|
72 |
+
## Example Things to Ask Agent Tide
|
73 |
+
|
74 |
+
You can ask Agent Tide to perform a wide variety of code-related tasks. Here are some example prompts to get you started:
|
75 |
+
|
76 |
+
- **Add new functionality**
|
77 |
+
- "Add a function to calculate the factorial of a number in `utils.py`."
|
78 |
+
- "Implement a REST API endpoint for user registration."
|
79 |
+
|
80 |
+
- **Refactor or improve code**
|
81 |
+
- "Refactor the `process_data` function to improve readability and performance."
|
82 |
+
- "Rename the variable `x` to `user_id` throughout `models/user.py`."
|
83 |
+
|
84 |
+
- **Fix bugs**
|
85 |
+
- "Fix the bug where the login form crashes on empty input."
|
86 |
+
- "Resolve the off-by-one error in the `get_page` method."
|
87 |
+
|
88 |
+
- **Write or update tests**
|
89 |
+
- "Add unit tests for the `EmailSender` class."
|
90 |
+
- "Increase test coverage for `api/views.py`."
|
91 |
+
|
92 |
+
- **Documentation**
|
93 |
+
- "Generate a docstring for the `parse_config` function."
|
94 |
+
- "Update the README with installation instructions."
|
95 |
+
|
96 |
+
- **Code analysis and suggestions**
|
97 |
+
- "List all functions in `main.py` that are missing type annotations."
|
98 |
+
- "Suggest performance improvements for the `data_loader` module."
|
99 |
+
|
100 |
+
- **Other codebase tasks**
|
101 |
+
- "Delete the deprecated `old_utils.py` file."
|
102 |
+
- "Move the `helpers` directory into `core/`."
|
103 |
+
|
104 |
+
Feel free to be specific or general in your requests. Agent Tide will analyze your codebase and generate precise, production-ready patches to fulfill your needs!
|
105 |
+
|
106 |
+
---
|
107 |
+
|
108 |
+
## Usage Tips & Advanced Workflows
|
109 |
+
|
110 |
+
- **Direct Context Control:**
|
111 |
+
If you already know the exact code context you want Agent Tide to use, you can specify identifiers directly in your request.
|
112 |
+
Use the format:
|
113 |
+
```
|
114 |
+
module.submodule.file_withoutextension.object
|
115 |
+
```
|
116 |
+
For example:
|
117 |
+
```
|
118 |
+
Please update codetide.agents.tide.ui.app.agent_loop to support async.
|
119 |
+
```
|
120 |
+
This helps Agent Tide load only the relevant code blocks, making the process faster and more precise.
|
121 |
+
|
122 |
+
- **Planning and Human-in-the-Loop:**
|
123 |
+
Agent Tide allows you to interact directly with your local codebaseβeverything is local and will stay local.
|
124 |
+
Most agent frameworks are filled with hidden logic, letting the LLM do all the planning and execution at once.
|
125 |
+
Agent Tide offers a more direct perspective:
|
126 |
+
- The first thing Agent Tide does is use the CodeTide repo tree to load identifiers related to your request, then builds context blocks with the relevant code snippets (and their dependencies).
|
127 |
+
- Once context is loaded, Agent Tide can:
|
128 |
+
1. Ask for more information or clarification if your request is ambiguous.
|
129 |
+
2. Start implementing changes right away if the request is simple.
|
130 |
+
3. Enter planning mode and present you with a step-by-step plan (you can also request this explicitly: "create me a plan to do X").
|
131 |
+
- You can edit the plan, reorder steps, or request changes until you are satisfied.
|
132 |
+
- Click "Start implementing steps" and Agent Tide will go step by step, letting you review, correct, or continue after each one.
|
133 |
+
- This keeps you in the loop and gives you direct control and visualization of every change.
|
134 |
+
- Code is generated as diffs for optimized token usage and latencyβso you can intervene at any point, even if the agent is working on many files.
|
135 |
+
|
136 |
+
- **Model and Integration Notes:**
|
137 |
+
- Agent Tide works best with GPT-4.1, Claude Sonnet 4, and Opus 4.1.
|
138 |
+
- Models like DeepSeek Chat may struggle with patch generation.
|
139 |
+
- Terminal access is available for advanced workflows.
|
140 |
+
- MCP integration (via aicore) is deactivated by default in this demo.
|
141 |
+
|
142 |
+
---
|
143 |
+
|
144 |
+
## Available Slash Commands
|
145 |
+
|
146 |
+
Agent Tide supports special commands that can be invoked directly from the chat input using a `/command` syntax. These commands provide quick access to advanced features and workflows.
|
147 |
+
|
148 |
+
### How to Use
|
149 |
+
|
150 |
+
Type `/command` (replace `command` with the actual command name) in the text input box and press Enter. Agent Tide will recognize and execute the command.
|
151 |
+
|
152 |
+
### Available Commands
|
153 |
+
|
154 |
+
1. **/test**
|
155 |
+
- **Description:** Request test implementations for a specific element.
|
156 |
+
- **Usage:**
|
157 |
+
`/test` add coverage for apply_patch tool.
|
158 |
+
|
159 |
+
2. **/review**
|
160 |
+
- **Description:** Request a code review for a specific file, function, or recent patch.
|
161 |
+
- **Usage:**
|
162 |
+
`/review` codetide/agents/tide/ui/app.py
|
163 |
+
|
164 |
+
3. **/commit**
|
165 |
+
- **Description:** Commit changed files. This command will stage and commit all recent changes, generating a conventional commit message.
|
166 |
+
- **Usage:**
|
167 |
+
`/commit` the changes we just made
|
168 |
+
|
169 |
+
4. **/plan**
|
170 |
+
- **Description:** Create a step-by-step task plan for your request. This command will instruct Agent Tide to decompose your request into actionable steps, which you can review and edit before execution.
|
171 |
+
- **Usage:**
|
172 |
+
`/plan` add a new authentication system to the project
|
173 |
+
|
174 |
+
You can use these commands at any time to guide Agent Tide's workflow, request reviews, generate commit messages, or create implementation plans. More commands may be added in the futureβrefer to this section for updates.
|
175 |
+
|
176 |
+
---
|
177 |
+
|
178 |
+
**Original repository:** [https://github.com/BrunoV21/CodeTide](https://github.com/BrunoV21/CodeTide)
|
179 |
+
|
180 |
+
---
|
181 |
+
|
182 |
+
_This README was written by AgentTide!_
|
docker-compose.yaml
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
version: "3.8"
|
2 |
+
|
3 |
+
services:
|
4 |
+
app:
|
5 |
+
build:
|
6 |
+
context: .
|
7 |
+
dockerfile: Dockerfile
|
8 |
+
ports:
|
9 |
+
- "7860:7860"
|
10 |
+
restart: unless-stopped
|
11 |
+
command: python -m chainlit run app.py -w --host 0.0.0.0 --port 7860
|
git_utils.py
ADDED
@@ -0,0 +1,177 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from pathlib import Path
|
2 |
+
from ulid import ulid
|
3 |
+
import subprocess
|
4 |
+
import asyncio
|
5 |
+
import pygit2
|
6 |
+
import re
|
7 |
+
|
8 |
+
|
9 |
+
GIT_URL_PATTERN = re.compile(
|
10 |
+
r'^(?:http|https|git|ssh)://' # Protocol
|
11 |
+
r'(?:\S+@)?' # Optional username
|
12 |
+
r'([^/]+)' # Domain
|
13 |
+
r'(?:[:/])([^/]+/[^/]+?)(?:\.git)?$' # Repo path
|
14 |
+
)
|
15 |
+
|
16 |
+
async def validate_git_url(url) -> None:
|
17 |
+
"""Validate the Git repository URL using git ls-remote."""
|
18 |
+
|
19 |
+
if not GIT_URL_PATTERN.match(url):
|
20 |
+
raise ValueError(f"Invalid Git repository URL format: {url}")
|
21 |
+
|
22 |
+
try:
|
23 |
+
process = await asyncio.create_subprocess_exec(
|
24 |
+
"git", "ls-remote", url,
|
25 |
+
stdout=asyncio.subprocess.PIPE,
|
26 |
+
stderr=asyncio.subprocess.PIPE
|
27 |
+
)
|
28 |
+
|
29 |
+
stdout, stderr = await asyncio.wait_for(process.communicate(), timeout=10)
|
30 |
+
|
31 |
+
if process.returncode != 0:
|
32 |
+
raise subprocess.CalledProcessError(process.returncode, ["git", "ls-remote", url], stdout, stderr)
|
33 |
+
|
34 |
+
if not stdout.strip():
|
35 |
+
raise ValueError(f"URL {url} points to an empty repository")
|
36 |
+
|
37 |
+
except asyncio.TimeoutError:
|
38 |
+
process.kill()
|
39 |
+
await process.wait()
|
40 |
+
raise ValueError(f"Timeout while validating URL {url}")
|
41 |
+
except subprocess.CalledProcessError as e:
|
42 |
+
raise ValueError(f"Invalid Git repository URL: {url}. Error: {e.stderr}") from e
|
43 |
+
|
44 |
+
async def commit_and_push_changes(repo_path: Path, branch_name: str = None, commit_message: str = "Auto-commit: Save changes", checkout :bool=True) -> None:
|
45 |
+
"""Add all changes, commit with default message, and push to remote."""
|
46 |
+
|
47 |
+
repo_path_str = str(repo_path)
|
48 |
+
|
49 |
+
try:
|
50 |
+
# Create new branch with Agent Tide + ULID name if not provided
|
51 |
+
if not branch_name:
|
52 |
+
branch_name = f"agent-tide-{ulid()}"
|
53 |
+
|
54 |
+
if checkout:
|
55 |
+
# Create and checkout new branch
|
56 |
+
process = await asyncio.create_subprocess_exec(
|
57 |
+
"git", "checkout", "-b", branch_name,
|
58 |
+
cwd=repo_path_str,
|
59 |
+
stdout=asyncio.subprocess.PIPE,
|
60 |
+
stderr=asyncio.subprocess.PIPE
|
61 |
+
)
|
62 |
+
|
63 |
+
stdout, stderr = await asyncio.wait_for(process.communicate(), timeout=10)
|
64 |
+
|
65 |
+
if process.returncode != 0:
|
66 |
+
raise subprocess.CalledProcessError(process.returncode, ["git", "checkout", "-b", branch_name], stdout, stderr)
|
67 |
+
|
68 |
+
# Add all changes
|
69 |
+
process = await asyncio.create_subprocess_exec(
|
70 |
+
"git", "add", ".",
|
71 |
+
cwd=repo_path_str,
|
72 |
+
stdout=asyncio.subprocess.PIPE,
|
73 |
+
stderr=asyncio.subprocess.PIPE
|
74 |
+
)
|
75 |
+
|
76 |
+
stdout, stderr = await asyncio.wait_for(process.communicate(), timeout=30)
|
77 |
+
|
78 |
+
if process.returncode != 0:
|
79 |
+
raise subprocess.CalledProcessError(process.returncode, ["git", "add", "."], stdout, stderr)
|
80 |
+
|
81 |
+
# Commit changes
|
82 |
+
process = await asyncio.create_subprocess_exec(
|
83 |
+
"git", "commit", "-m", commit_message,
|
84 |
+
cwd=repo_path_str,
|
85 |
+
stdout=asyncio.subprocess.PIPE,
|
86 |
+
stderr=asyncio.subprocess.PIPE
|
87 |
+
)
|
88 |
+
|
89 |
+
stdout, stderr = await asyncio.wait_for(process.communicate(), timeout=30)
|
90 |
+
|
91 |
+
if process.returncode != 0:
|
92 |
+
# Check if it's because there are no changes to commit
|
93 |
+
if "nothing to commit" in stderr or "nothing to commit" in stdout:
|
94 |
+
return # No changes to commit, exit gracefully
|
95 |
+
raise subprocess.CalledProcessError(process.returncode, ["git", "commit", "-m", commit_message], stdout, stderr)
|
96 |
+
|
97 |
+
# Push to remote
|
98 |
+
process = await asyncio.create_subprocess_exec(
|
99 |
+
"git", "push", "origin", branch_name,
|
100 |
+
cwd=repo_path_str,
|
101 |
+
stdout=asyncio.subprocess.PIPE,
|
102 |
+
stderr=asyncio.subprocess.PIPE
|
103 |
+
)
|
104 |
+
|
105 |
+
stdout, stderr = await asyncio.wait_for(process.communicate(), timeout=60)
|
106 |
+
|
107 |
+
if process.returncode != 0:
|
108 |
+
raise subprocess.CalledProcessError(process.returncode, ["git", "push", "origin", branch_name], stdout, stderr)
|
109 |
+
|
110 |
+
except asyncio.TimeoutError:
|
111 |
+
process.kill()
|
112 |
+
await process.wait()
|
113 |
+
raise ValueError(f"Timeout during git operation in {repo_path}")
|
114 |
+
except subprocess.CalledProcessError as e:
|
115 |
+
raise ValueError(f"Git operation failed in {repo_path}. Error: {e.stderr}") from e
|
116 |
+
|
117 |
+
def push_new_branch(repo :pygit2.Repository, branch_name :str, remote_name :str='origin'):
|
118 |
+
"""
|
119 |
+
Push a new branch to remote origin (equivalent to 'git push origin branch_name')
|
120 |
+
|
121 |
+
Args:
|
122 |
+
repo (pygit2.Repository): Repo Obj
|
123 |
+
branch_name (str): Name of the branch to push
|
124 |
+
remote_name (str): Name of the remote (default: 'origin')
|
125 |
+
|
126 |
+
Returns:
|
127 |
+
bool: True if push was successful, False otherwise
|
128 |
+
"""
|
129 |
+
|
130 |
+
# Get the remote
|
131 |
+
remote = repo.remotes[remote_name]
|
132 |
+
|
133 |
+
# Create refspec for pushing new branch
|
134 |
+
# Format: local_branch:remote_branch (this publishes the new branch)
|
135 |
+
refspec = f'refs/heads/{branch_name}:refs/heads/{branch_name}'
|
136 |
+
|
137 |
+
# Push to remote
|
138 |
+
result = remote.push([refspec])
|
139 |
+
|
140 |
+
# Check if push was successful (no error message means success)
|
141 |
+
return not result.error_message
|
142 |
+
|
143 |
+
def checkout_new_branch(repo :pygit2.Repository, new_branch_name :str, start_point=None):
|
144 |
+
"""
|
145 |
+
Create and checkout a new branch from the current HEAD or specified start point.
|
146 |
+
|
147 |
+
Args:
|
148 |
+
repo_path (str): Path to the git repository
|
149 |
+
new_branch_name (str): Name of the new branch to create and checkout
|
150 |
+
start_point (pygit2.Oid or Reference, optional): Commit or reference to start from.
|
151 |
+
If None, uses current HEAD.
|
152 |
+
|
153 |
+
Returns:
|
154 |
+
pygit2.Reference: The newly created branch reference
|
155 |
+
|
156 |
+
Raises:
|
157 |
+
ValueError: If branch already exists or invalid start point
|
158 |
+
Exception: For other git-related errors
|
159 |
+
"""
|
160 |
+
|
161 |
+
# Check if branch already exists
|
162 |
+
if new_branch_name in repo.branches.local:
|
163 |
+
raise ValueError(f"Branch '{new_branch_name}' already exists")
|
164 |
+
|
165 |
+
# Get the start point commit (default to HEAD)
|
166 |
+
if start_point is None:
|
167 |
+
if repo.head_is_detached:
|
168 |
+
raise ValueError("HEAD is detached, please specify a start point")
|
169 |
+
start_point = repo.head.target
|
170 |
+
|
171 |
+
# Create the new branch
|
172 |
+
new_branch = repo.branches.local.create(new_branch_name, repo[start_point])
|
173 |
+
|
174 |
+
# Checkout the new branch
|
175 |
+
repo.checkout(new_branch, strategy=pygit2.GIT_CHECKOUT_SAFE)
|
176 |
+
|
177 |
+
return new_branch
|
public/agent-tide-demo.gif
ADDED
![]() |
Git LFS Details
|
public/avatars/agent_tide.png
ADDED
![]() |
Git LFS Details
|
public/codetide-banner.png
ADDED
![]() |
Git LFS Details
|
public/diagram.svg
ADDED
|
public/docker.svg
ADDED
|
public/elements/HtmlRenderer.jsx
ADDED
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import { Card, CardContent } from "@/components/ui/card"
|
2 |
+
import { Button } from "@/components/ui/button"
|
3 |
+
import { X, RefreshCw } from "lucide-react"
|
4 |
+
|
5 |
+
export default function HtmlRenderer() {
|
6 |
+
// Function to sanitize HTML (basic approach)
|
7 |
+
const sanitizeHtml = (html) => {
|
8 |
+
// Create a temporary div to parse the HTML
|
9 |
+
const temp = document.createElement('div');
|
10 |
+
temp.innerHTML = html;
|
11 |
+
|
12 |
+
// Remove potentially dangerous elements
|
13 |
+
const dangerousElements = temp.querySelectorAll('script, object, embed, iframe');
|
14 |
+
dangerousElements.forEach(el => el.remove());
|
15 |
+
|
16 |
+
return temp.innerHTML;
|
17 |
+
};
|
18 |
+
|
19 |
+
const handleRefresh = () => {
|
20 |
+
// Re-render the component by updating props
|
21 |
+
updateElement(props);
|
22 |
+
};
|
23 |
+
|
24 |
+
const handleRemove = () => {
|
25 |
+
deleteElement();
|
26 |
+
};
|
27 |
+
|
28 |
+
// Get the HTML content from props
|
29 |
+
const htmlContent = props.html || props.content || '<p>No HTML content provided</p>';
|
30 |
+
const title = props.title || 'HTML Content';
|
31 |
+
const showControls = props.showControls !== false; // Default to true
|
32 |
+
|
33 |
+
return (
|
34 |
+
<div className="w-full">
|
35 |
+
{showControls && (
|
36 |
+
<div className="flex justify-between items-center mb-2">
|
37 |
+
<h3 className="text-sm font-medium text-muted-foreground">{title}</h3>
|
38 |
+
<div className="flex gap-1">
|
39 |
+
<Button
|
40 |
+
size="sm"
|
41 |
+
variant="outline"
|
42 |
+
onClick={handleRefresh}
|
43 |
+
className="h-6 px-2"
|
44 |
+
>
|
45 |
+
<RefreshCw className="h-3 w-3" />
|
46 |
+
</Button>
|
47 |
+
<Button
|
48 |
+
size="sm"
|
49 |
+
variant="outline"
|
50 |
+
onClick={handleRemove}
|
51 |
+
className="h-6 px-2"
|
52 |
+
>
|
53 |
+
<X className="h-3 w-3" />
|
54 |
+
</Button>
|
55 |
+
</div>
|
56 |
+
</div>
|
57 |
+
)}
|
58 |
+
|
59 |
+
<Card className="w-full">
|
60 |
+
<CardContent className="p-4">
|
61 |
+
<div
|
62 |
+
className="prose prose-sm max-w-none dark:prose-invert"
|
63 |
+
dangerouslySetInnerHTML={{
|
64 |
+
__html: sanitizeHtml(htmlContent)
|
65 |
+
}}
|
66 |
+
/>
|
67 |
+
</CardContent>
|
68 |
+
</Card>
|
69 |
+
</div>
|
70 |
+
);
|
71 |
+
}
|
public/elements/LoadingMessage.jsx
ADDED
@@ -0,0 +1,81 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import React, { useState, useEffect } from 'react';
|
2 |
+
|
3 |
+
const LoadingMessage = ({ messages = ['Working...', 'Syncing CodeTide', 'Thinking...', 'Looking for context'], interval = 3000 }) => {
|
4 |
+
const [currentIndex, setCurrentIndex] = useState(0);
|
5 |
+
|
6 |
+
useEffect(() => {
|
7 |
+
const timer = setInterval(() => {
|
8 |
+
setCurrentIndex((prevIndex) => (prevIndex + 1) % messages.length);
|
9 |
+
}, interval);
|
10 |
+
|
11 |
+
return () => clearInterval(timer);
|
12 |
+
}, [messages.length, interval]);
|
13 |
+
|
14 |
+
/* TODO update styles and fonts to match current - increase size a bit*/
|
15 |
+
const loadingWaveStyle = {
|
16 |
+
display: 'inline-flex',
|
17 |
+
alignItems: 'center',
|
18 |
+
gap: '8px',
|
19 |
+
padding: '8px 12px',
|
20 |
+
background: 'rgba(255, 255, 255, 0.05)',
|
21 |
+
border: '1px solid rgba(255, 255, 255, 0.1)',
|
22 |
+
borderRadius: '20px',
|
23 |
+
backdropFilter: 'blur(10px)',
|
24 |
+
color: '#e0e0e0',
|
25 |
+
fontSize: '12px',
|
26 |
+
fontWeight: '500',
|
27 |
+
letterSpacing: '0.3px',
|
28 |
+
minHeight: '20px',
|
29 |
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif'
|
30 |
+
};
|
31 |
+
|
32 |
+
const waveContainerStyle = {
|
33 |
+
display: 'flex',
|
34 |
+
gap: '2px'
|
35 |
+
};
|
36 |
+
|
37 |
+
const waveDotStyle = {
|
38 |
+
width: '3px',
|
39 |
+
height: '3px',
|
40 |
+
background: '#00d4ff',
|
41 |
+
borderRadius: '50%',
|
42 |
+
animation: 'wave 1.2s ease-in-out infinite'
|
43 |
+
};
|
44 |
+
|
45 |
+
const loadingTextStyle = {
|
46 |
+
minWidth: '120px',
|
47 |
+
transition: 'opacity 0.3s ease-in-out'
|
48 |
+
};
|
49 |
+
|
50 |
+
return (
|
51 |
+
<>
|
52 |
+
<style>
|
53 |
+
{`
|
54 |
+
@keyframes wave {
|
55 |
+
0%, 60%, 100% {
|
56 |
+
transform: scaleY(1);
|
57 |
+
opacity: 0.4;
|
58 |
+
}
|
59 |
+
30% {
|
60 |
+
transform: scaleY(2.5);
|
61 |
+
opacity: 1;
|
62 |
+
}
|
63 |
+
}
|
64 |
+
`}
|
65 |
+
</style>
|
66 |
+
<div style={loadingWaveStyle}>
|
67 |
+
<div style={waveContainerStyle}>
|
68 |
+
<div style={{...waveDotStyle, animationDelay: '0s'}}></div>
|
69 |
+
<div style={{...waveDotStyle, animationDelay: '0.15s'}}></div>
|
70 |
+
<div style={{...waveDotStyle, animationDelay: '0.3s'}}></div>
|
71 |
+
<div style={{...waveDotStyle, animationDelay: '0.45s'}}></div>
|
72 |
+
</div>
|
73 |
+
<div style={loadingTextStyle}>
|
74 |
+
{messages[currentIndex]}
|
75 |
+
</div>
|
76 |
+
</div>
|
77 |
+
</>
|
78 |
+
);
|
79 |
+
};
|
80 |
+
|
81 |
+
export default LoadingMessage;
|
public/elements/ReasoningMessage.jsx
ADDED
@@ -0,0 +1,100 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import { Card, CardContent } from "@/components/ui/card"
|
2 |
+
import { Button } from "@/components/ui/button"
|
3 |
+
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@/components/ui/tooltip"
|
4 |
+
import { ChevronDown, ChevronRight } from "lucide-react"
|
5 |
+
import { useState } from "react"
|
6 |
+
|
7 |
+
export default function ReasoningMessage() {
|
8 |
+
const [isExpanded, setIsExpanded] = useState(props.defaultExpanded !== false);
|
9 |
+
|
10 |
+
const toggleExpanded = () => {
|
11 |
+
setIsExpanded(!isExpanded);
|
12 |
+
};
|
13 |
+
|
14 |
+
// Get data from props
|
15 |
+
const reasoning = props.reasoning || "No reasoning provided";
|
16 |
+
const data = props.data || {};
|
17 |
+
const title = props.title || "Analysis Result";
|
18 |
+
const summaryText = props.summaryText || "Click to view details";
|
19 |
+
|
20 |
+
// Convert data object to array and take first two entries
|
21 |
+
const dataEntries = Object.entries(data).slice(0, 2);
|
22 |
+
|
23 |
+
// Generate HTML content
|
24 |
+
const generateHtml = () => {
|
25 |
+
let html = `
|
26 |
+
<div class="reasoning-message">
|
27 |
+
<div class="p-4 space-y-4">
|
28 |
+
<div class="reasoning-block text-sm text-muted-foreground bg-muted/30 p-3 rounded-md">
|
29 |
+
${reasoning}
|
30 |
+
</div>`;
|
31 |
+
|
32 |
+
// Add key-value entries if they exist
|
33 |
+
if (dataEntries.length > 0) {
|
34 |
+
html += `<div class="data-entries space-y-3">`;
|
35 |
+
|
36 |
+
dataEntries.forEach(([key, value], index) => {
|
37 |
+
html += `
|
38 |
+
<div class="entry-block">
|
39 |
+
<h5 class="font-medium text-sm mb-1 text-foreground">${key}</h5>
|
40 |
+
<div class="text-sm text-muted-foreground bg-background p-2 rounded border">
|
41 |
+
${typeof value === 'object' ? JSON.stringify(value, null, 2) : String(value)}
|
42 |
+
</div>
|
43 |
+
</div>`;
|
44 |
+
});
|
45 |
+
|
46 |
+
html += `</div>`;
|
47 |
+
}
|
48 |
+
|
49 |
+
html += `
|
50 |
+
</div>
|
51 |
+
</div>`;
|
52 |
+
|
53 |
+
return html;
|
54 |
+
};
|
55 |
+
|
56 |
+
return (
|
57 |
+
<div className="w-full">
|
58 |
+
<div className="flex justify-between items-center mb-2">
|
59 |
+
<h3 className="text-sm font-medium text-muted-foreground">{title}</h3>
|
60 |
+
<TooltipProvider>
|
61 |
+
<Tooltip>
|
62 |
+
<TooltipTrigger asChild>
|
63 |
+
<Button
|
64 |
+
size="sm"
|
65 |
+
variant="outline"
|
66 |
+
onClick={toggleExpanded}
|
67 |
+
className="h-6 px-2"
|
68 |
+
>
|
69 |
+
{isExpanded ? <ChevronDown className="h-3 w-3" /> : <ChevronRight className="h-3 w-3" />}
|
70 |
+
</Button>
|
71 |
+
</TooltipTrigger>
|
72 |
+
<TooltipContent>
|
73 |
+
<p>{summaryText}</p>
|
74 |
+
</TooltipContent>
|
75 |
+
</Tooltip>
|
76 |
+
</TooltipProvider>
|
77 |
+
</div>
|
78 |
+
|
79 |
+
<Card className="w-full">
|
80 |
+
<CardContent className="p-0">
|
81 |
+
{isExpanded && (
|
82 |
+
<div
|
83 |
+
className="prose prose-sm max-w-none dark:prose-invert"
|
84 |
+
dangerouslySetInnerHTML={{
|
85 |
+
__html: generateHtml()
|
86 |
+
}}
|
87 |
+
/>
|
88 |
+
)}
|
89 |
+
</CardContent>
|
90 |
+
</Card>
|
91 |
+
|
92 |
+
<style jsx>{`
|
93 |
+
.reasoning-message pre {
|
94 |
+
white-space: pre-wrap;
|
95 |
+
word-wrap: break-word;
|
96 |
+
}
|
97 |
+
`}</style>
|
98 |
+
</div>
|
99 |
+
);
|
100 |
+
}
|
public/favicon.ico
ADDED
|
public/logo_dark.png
ADDED
![]() |
Git LFS Details
|
public/logo_light.png
ADDED
![]() |
Git LFS Details
|
public/stylesheet.css
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* Only resize avatars where the image's alt text contains 'Avatar for Assistant' */
|
2 |
+
span.relative.flex.shrink-0.overflow-hidden.rounded-full:has(img[alt="Avatar for Agent Tide"]) {
|
3 |
+
width: 48px !important;
|
4 |
+
height: 48px !important;
|
5 |
+
}
|
6 |
+
|
7 |
+
span.relative.flex.shrink-0.overflow-hidden.rounded-full img[alt="Avatar for Agent Tide"] {
|
8 |
+
width: 100% !important;
|
9 |
+
height: 100% !important;
|
10 |
+
border-radius: 50% !important; /* keep them round */
|
11 |
+
}
|
12 |
+
|
13 |
+
img.logo.w-\[200px\] {
|
14 |
+
width: 1000px !important;
|
15 |
+
height: auto;
|
16 |
+
}
|
public/test.svg
ADDED
|
public/theme.json
ADDED
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"custom_fonts": [],
|
3 |
+
"variables": {
|
4 |
+
"light": {
|
5 |
+
"--font-sans": "'Inter', sans-serif",
|
6 |
+
"--font-mono": "source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace",
|
7 |
+
"--background": "210 100% 98%",
|
8 |
+
"--foreground": "217 100% 12%",
|
9 |
+
"--card": "210 100% 97%",
|
10 |
+
"--card-foreground": "217 100% 15%",
|
11 |
+
"--popover": "210 100% 97%",
|
12 |
+
"--popover-foreground": "217 100% 15%",
|
13 |
+
"--primary": "217 91% 60%",
|
14 |
+
"--primary-foreground": "0 0% 100%",
|
15 |
+
"--secondary": "210 60% 90%",
|
16 |
+
"--secondary-foreground": "217 100% 20%",
|
17 |
+
"--muted": "210 40% 85%",
|
18 |
+
"--muted-foreground": "217 20% 35%",
|
19 |
+
"--accent": "200 100% 94%",
|
20 |
+
"--accent-foreground": "217 100% 20%",
|
21 |
+
"--destructive": "0 84.2% 60.2%",
|
22 |
+
"--destructive-foreground": "210 40% 98%",
|
23 |
+
"--border": "210 40% 90%",
|
24 |
+
"--input": "210 40% 90%",
|
25 |
+
"--ring": "217 91% 60%",
|
26 |
+
"--radius": "0.75rem",
|
27 |
+
"--sidebar-background": "210 100% 97%",
|
28 |
+
"--sidebar-foreground": "217 100% 15%",
|
29 |
+
"--sidebar-primary": "217 91% 60%",
|
30 |
+
"--sidebar-primary-foreground": "0 0% 100%",
|
31 |
+
"--sidebar-accent": "210 100% 92%",
|
32 |
+
"--sidebar-accent-foreground": "217 100% 20%",
|
33 |
+
"--sidebar-border": "210 40% 88%",
|
34 |
+
"--sidebar-ring": "217 91% 60%"
|
35 |
+
},
|
36 |
+
"dark": {
|
37 |
+
"--font-sans": "'Inter', sans-serif",
|
38 |
+
"--font-mono": "source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace",
|
39 |
+
"--background": "217 100% 8%",
|
40 |
+
"--foreground": "210 20% 90%",
|
41 |
+
"--card": "217 100% 10%",
|
42 |
+
"--card-foreground": "210 20% 95%",
|
43 |
+
"--popover": "217 100% 10%",
|
44 |
+
"--popover-foreground": "210 20% 95%",
|
45 |
+
"--primary": "199 100% 55%",
|
46 |
+
"--primary-foreground": "0 0% 100%",
|
47 |
+
"--secondary": "217 50% 18%",
|
48 |
+
"--secondary-foreground": "210 40% 95%",
|
49 |
+
"--muted": "215 30% 25%",
|
50 |
+
"--muted-foreground": "210 10% 70%",
|
51 |
+
"--accent": "217 100% 15%",
|
52 |
+
"--accent-foreground": "210 20% 95%",
|
53 |
+
"--destructive": "0 62.8% 40%",
|
54 |
+
"--destructive-foreground": "0 0% 100%",
|
55 |
+
"--border": "217 50% 20%",
|
56 |
+
"--input": "217 50% 20%",
|
57 |
+
"--ring": "199 100% 55%",
|
58 |
+
"--sidebar-background": "217 100% 6%",
|
59 |
+
"--sidebar-foreground": "210 20% 95%",
|
60 |
+
"--sidebar-primary": "217 91% 60%",
|
61 |
+
"--sidebar-primary-foreground": "0 0% 100%",
|
62 |
+
"--sidebar-accent": "217 100% 10%",
|
63 |
+
"--sidebar-accent-foreground": "210 20% 95%",
|
64 |
+
"--sidebar-border": "217 40% 20%",
|
65 |
+
"--sidebar-ring": "199 100% 55%"
|
66 |
+
}
|
67 |
+
}
|
68 |
+
}
|
requirements.txt
ADDED
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
1 |
+
codetide @ git+https://github.com/BrunoV21/codetide.git#egg=codetide[agents-ui]
|
2 |
+
fastapi==0.115.7
|
static/landing_page.html
ADDED
@@ -0,0 +1,686 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!DOCTYPE html>
|
2 |
+
<html lang="en" class="dark">
|
3 |
+
<head>
|
4 |
+
<meta charset="UTF-8">
|
5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6 |
+
<title>AgentTide - Precision-Driven Software Engineering Agent</title>
|
7 |
+
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
|
8 |
+
<style>
|
9 |
+
:root {
|
10 |
+
--font-sans: 'Inter', sans-serif;
|
11 |
+
--font-mono: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace;
|
12 |
+
}
|
13 |
+
|
14 |
+
.light {
|
15 |
+
--background: 210 100% 98%;
|
16 |
+
--foreground: 217 100% 12%;
|
17 |
+
--card: 210 100% 97%;
|
18 |
+
--card-foreground: 217 100% 15%;
|
19 |
+
--primary: 217 91% 60%;
|
20 |
+
--primary-foreground: 0 0% 100%;
|
21 |
+
--secondary: 210 60% 90%;
|
22 |
+
--secondary-foreground: 217 100% 20%;
|
23 |
+
--muted: 210 40% 85%;
|
24 |
+
--muted-foreground: 217 20% 35%;
|
25 |
+
--accent: 200 100% 94%;
|
26 |
+
--accent-foreground: 217 100% 20%;
|
27 |
+
--border: 210 40% 90%;
|
28 |
+
--radius: 0.75rem;
|
29 |
+
}
|
30 |
+
|
31 |
+
.dark {
|
32 |
+
--background: 217 100% 8%;
|
33 |
+
--foreground: 210 20% 90%;
|
34 |
+
--card: 217 100% 10%;
|
35 |
+
--card-foreground: 210 20% 95%;
|
36 |
+
--primary: 199 100% 55%;
|
37 |
+
--primary-foreground: 0 0% 100%;
|
38 |
+
--secondary: 217 50% 18%;
|
39 |
+
--secondary-foreground: 210 40% 95%;
|
40 |
+
--muted: 215 30% 25%;
|
41 |
+
--muted-foreground: 210 10% 70%;
|
42 |
+
--accent: 217 100% 15%;
|
43 |
+
--accent-foreground: 210 20% 95%;
|
44 |
+
--border: 217 50% 20%;
|
45 |
+
--radius: 0.75rem;
|
46 |
+
}
|
47 |
+
|
48 |
+
* {
|
49 |
+
margin: 0;
|
50 |
+
padding: 0;
|
51 |
+
box-sizing: border-box;
|
52 |
+
}
|
53 |
+
|
54 |
+
body {
|
55 |
+
font-family: var(--font-sans);
|
56 |
+
background: hsl(var(--background));
|
57 |
+
color: hsl(var(--foreground));
|
58 |
+
line-height: 1.6;
|
59 |
+
min-height: 100vh;
|
60 |
+
position: relative;
|
61 |
+
overflow-x: hidden;
|
62 |
+
}
|
63 |
+
|
64 |
+
/* Animated background elements */
|
65 |
+
.background-elements {
|
66 |
+
position: fixed;
|
67 |
+
top: 0;
|
68 |
+
left: 0;
|
69 |
+
width: 100%;
|
70 |
+
height: 100%;
|
71 |
+
pointer-events: none;
|
72 |
+
z-index: -1;
|
73 |
+
}
|
74 |
+
|
75 |
+
.floating-code {
|
76 |
+
position: absolute;
|
77 |
+
font-family: var(--font-mono);
|
78 |
+
color: hsl(var(--muted-foreground) / 0.1);
|
79 |
+
font-size: 0.875rem;
|
80 |
+
animation: float 20s infinite linear;
|
81 |
+
}
|
82 |
+
|
83 |
+
.floating-code:nth-child(1) {
|
84 |
+
top: 10%;
|
85 |
+
left: -10%;
|
86 |
+
animation-delay: 0s;
|
87 |
+
}
|
88 |
+
|
89 |
+
.floating-code:nth-child(2) {
|
90 |
+
top: 30%;
|
91 |
+
left: -15%;
|
92 |
+
animation-delay: -5s;
|
93 |
+
}
|
94 |
+
|
95 |
+
.floating-code:nth-child(3) {
|
96 |
+
top: 50%;
|
97 |
+
left: -12%;
|
98 |
+
animation-delay: -10s;
|
99 |
+
}
|
100 |
+
|
101 |
+
.floating-code:nth-child(4) {
|
102 |
+
top: 70%;
|
103 |
+
left: -8%;
|
104 |
+
animation-delay: -15s;
|
105 |
+
}
|
106 |
+
|
107 |
+
@keyframes float {
|
108 |
+
0% {
|
109 |
+
transform: translateX(-100px) rotate(0deg);
|
110 |
+
opacity: 0;
|
111 |
+
}
|
112 |
+
10% {
|
113 |
+
opacity: 1;
|
114 |
+
}
|
115 |
+
90% {
|
116 |
+
opacity: 1;
|
117 |
+
}
|
118 |
+
100% {
|
119 |
+
transform: translateX(calc(100vw + 100px)) rotate(360deg);
|
120 |
+
opacity: 0;
|
121 |
+
}
|
122 |
+
}
|
123 |
+
|
124 |
+
.container {
|
125 |
+
max-width: 1200px;
|
126 |
+
margin: 0 auto;
|
127 |
+
padding: 0 2rem;
|
128 |
+
}
|
129 |
+
|
130 |
+
.header {
|
131 |
+
padding: 1.5rem 0 0.5rem;
|
132 |
+
text-align: center;
|
133 |
+
background: linear-gradient(135deg, hsl(var(--background)) 0%, hsl(var(--card)) 100%);
|
134 |
+
}
|
135 |
+
|
136 |
+
.logo {
|
137 |
+
max-width: 650px; /* wonβt exceed 650px on big screens */
|
138 |
+
width: 100%; /* scales down to fit smaller screens */
|
139 |
+
height: auto; /* maintains aspect ratio */
|
140 |
+
margin-bottom: 0.5rem;
|
141 |
+
filter: drop-shadow(0 4px 8px hsl(var(--foreground) / 0.1));
|
142 |
+
animation: logoGlow 3s ease-in-out infinite alternate;
|
143 |
+
}
|
144 |
+
|
145 |
+
@keyframes logoGlow {
|
146 |
+
0% {
|
147 |
+
filter: drop-shadow(0 4px 8px hsl(var(--foreground) / 0.1));
|
148 |
+
}
|
149 |
+
100% {
|
150 |
+
filter: drop-shadow(0 6px 12px hsl(var(--primary) / 0.2));
|
151 |
+
}
|
152 |
+
}
|
153 |
+
|
154 |
+
.hero {
|
155 |
+
padding: 1rem 0 2rem;
|
156 |
+
text-align: center;
|
157 |
+
background: linear-gradient(135deg, hsl(var(--background)) 0%, hsl(var(--card)) 100%);
|
158 |
+
position: relative;
|
159 |
+
}
|
160 |
+
|
161 |
+
.hero-tagline {
|
162 |
+
font-size: 1.75rem;
|
163 |
+
font-weight: 600;
|
164 |
+
margin-bottom: 1rem;
|
165 |
+
background: linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent-foreground)));
|
166 |
+
-webkit-background-clip: text;
|
167 |
+
-webkit-text-fill-color: transparent;
|
168 |
+
background-clip: text;
|
169 |
+
animation: fadeInUp 0.8s ease-out;
|
170 |
+
}
|
171 |
+
|
172 |
+
.hero .subtitle {
|
173 |
+
font-size: 1.1rem;
|
174 |
+
color: hsl(var(--muted-foreground));
|
175 |
+
margin-bottom: 2rem;
|
176 |
+
max-width: 700px;
|
177 |
+
margin-left: auto;
|
178 |
+
margin-right: auto;
|
179 |
+
font-weight: 400;
|
180 |
+
line-height: 1.7;
|
181 |
+
animation: fadeInUp 0.8s ease-out 0.2s both;
|
182 |
+
}
|
183 |
+
|
184 |
+
.highlight {
|
185 |
+
color: hsl(var(--primary));
|
186 |
+
font-weight: 500;
|
187 |
+
}
|
188 |
+
|
189 |
+
.nav-links {
|
190 |
+
display: flex;
|
191 |
+
justify-content: center;
|
192 |
+
gap: 1rem;
|
193 |
+
margin-bottom: 2.5rem;
|
194 |
+
flex-wrap: wrap;
|
195 |
+
animation: fadeInUp 0.8s ease-out 0.4s both;
|
196 |
+
}
|
197 |
+
|
198 |
+
.nav-link {
|
199 |
+
padding: 0.875rem 2rem;
|
200 |
+
border-radius: var(--radius);
|
201 |
+
text-decoration: none;
|
202 |
+
font-weight: 500;
|
203 |
+
transition: all 0.3s ease;
|
204 |
+
border: 1px solid hsl(var(--border));
|
205 |
+
background: hsl(var(--card));
|
206 |
+
color: hsl(var(--card-foreground));
|
207 |
+
position: relative;
|
208 |
+
overflow: hidden;
|
209 |
+
}
|
210 |
+
|
211 |
+
.nav-link:hover {
|
212 |
+
background: hsl(var(--accent));
|
213 |
+
color: hsl(var(--accent-foreground));
|
214 |
+
transform: translateY(-3px);
|
215 |
+
box-shadow: 0 8px 25px hsl(var(--foreground) / 0.15);
|
216 |
+
}
|
217 |
+
|
218 |
+
.cta-button {
|
219 |
+
background: linear-gradient(135deg, hsl(var(--primary)), hsl(var(--primary) / 0.8));
|
220 |
+
color: hsl(var(--primary-foreground));
|
221 |
+
border: none !important;
|
222 |
+
font-size: 1.1rem;
|
223 |
+
padding: 1rem 2.5rem !important;
|
224 |
+
font-weight: 600;
|
225 |
+
position: relative;
|
226 |
+
overflow: hidden;
|
227 |
+
}
|
228 |
+
|
229 |
+
.cta-button::before {
|
230 |
+
content: '';
|
231 |
+
position: absolute;
|
232 |
+
top: 0;
|
233 |
+
left: -100%;
|
234 |
+
width: 100%;
|
235 |
+
height: 100%;
|
236 |
+
background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
|
237 |
+
transition: left 0.5s;
|
238 |
+
}
|
239 |
+
|
240 |
+
.cta-button:hover::before {
|
241 |
+
left: 100%;
|
242 |
+
}
|
243 |
+
|
244 |
+
.cta-button:hover {
|
245 |
+
background: linear-gradient(135deg, hsl(var(--primary) / 0.9), hsl(var(--primary)));
|
246 |
+
color: hsl(var(--primary-foreground));
|
247 |
+
transform: translateY(-3px);
|
248 |
+
box-shadow: 0 12px 30px hsl(var(--primary) / 0.4);
|
249 |
+
}
|
250 |
+
|
251 |
+
.code-snippet {
|
252 |
+
background: hsl(var(--muted));
|
253 |
+
border: 1px solid hsl(var(--border));
|
254 |
+
border-radius: var(--radius);
|
255 |
+
padding: 1.25rem;
|
256 |
+
font-family: var(--font-mono);
|
257 |
+
font-size: 0.95rem;
|
258 |
+
color: hsl(var(--primary));
|
259 |
+
margin: 0 auto;
|
260 |
+
overflow-x: auto;
|
261 |
+
max-width: 600px;
|
262 |
+
position: relative;
|
263 |
+
animation: fadeInUp 0.8s ease-out 0.6s both;
|
264 |
+
}
|
265 |
+
|
266 |
+
.code-snippet::before {
|
267 |
+
content: '';
|
268 |
+
position: absolute;
|
269 |
+
top: 0;
|
270 |
+
left: 0;
|
271 |
+
right: 0;
|
272 |
+
height: 2px;
|
273 |
+
background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--primary) / 0.5));
|
274 |
+
}
|
275 |
+
|
276 |
+
/* Quick Features Row */
|
277 |
+
.quick-features {
|
278 |
+
padding: 3rem 0;
|
279 |
+
background: hsl(var(--background));
|
280 |
+
border-bottom: 1px solid hsl(var(--border));
|
281 |
+
}
|
282 |
+
|
283 |
+
.quick-features-grid {
|
284 |
+
display: grid;
|
285 |
+
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
|
286 |
+
gap: 2rem;
|
287 |
+
margin-top: 2rem;
|
288 |
+
}
|
289 |
+
|
290 |
+
.quick-feature {
|
291 |
+
text-align: center;
|
292 |
+
padding: 1.5rem;
|
293 |
+
transition: transform 0.3s ease;
|
294 |
+
}
|
295 |
+
|
296 |
+
.quick-feature:hover {
|
297 |
+
transform: translateY(-5px);
|
298 |
+
}
|
299 |
+
|
300 |
+
.quick-feature-icon {
|
301 |
+
font-size: 2.5rem;
|
302 |
+
margin-bottom: 1rem;
|
303 |
+
display: block;
|
304 |
+
}
|
305 |
+
|
306 |
+
.quick-feature h3 {
|
307 |
+
font-size: 1.125rem;
|
308 |
+
font-weight: 600;
|
309 |
+
margin-bottom: 0.75rem;
|
310 |
+
color: hsl(var(--foreground));
|
311 |
+
}
|
312 |
+
|
313 |
+
.quick-feature p {
|
314 |
+
color: hsl(var(--muted-foreground));
|
315 |
+
font-size: 0.95rem;
|
316 |
+
line-height: 1.5;
|
317 |
+
}
|
318 |
+
|
319 |
+
/* Wave Divider */
|
320 |
+
.wave-divider {
|
321 |
+
height: 100px;
|
322 |
+
background: hsl(var(--background));
|
323 |
+
position: relative;
|
324 |
+
overflow: hidden;
|
325 |
+
}
|
326 |
+
|
327 |
+
.wave-divider::before {
|
328 |
+
content: '';
|
329 |
+
position: absolute;
|
330 |
+
bottom: 0;
|
331 |
+
left: 0;
|
332 |
+
width: 200%;
|
333 |
+
height: 100%;
|
334 |
+
background: hsl(var(--card));
|
335 |
+
border-radius: 50%;
|
336 |
+
animation: wave 8s ease-in-out infinite;
|
337 |
+
}
|
338 |
+
|
339 |
+
@keyframes wave {
|
340 |
+
0%, 100% {
|
341 |
+
transform: translateX(-50%) translateY(60%);
|
342 |
+
}
|
343 |
+
50% {
|
344 |
+
transform: translateX(-50%) translateY(40%);
|
345 |
+
}
|
346 |
+
}
|
347 |
+
|
348 |
+
.features {
|
349 |
+
padding: 4rem 0;
|
350 |
+
background: hsl(var(--card));
|
351 |
+
}
|
352 |
+
|
353 |
+
.features-grid {
|
354 |
+
display: grid;
|
355 |
+
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
|
356 |
+
gap: 2rem;
|
357 |
+
margin-top: 3rem;
|
358 |
+
}
|
359 |
+
|
360 |
+
.feature-card {
|
361 |
+
padding: 2rem;
|
362 |
+
background: hsl(var(--background));
|
363 |
+
border: 1px solid hsl(var(--border));
|
364 |
+
border-radius: var(--radius);
|
365 |
+
transition: all 0.3s ease;
|
366 |
+
position: relative;
|
367 |
+
overflow: hidden;
|
368 |
+
}
|
369 |
+
|
370 |
+
.feature-card::before {
|
371 |
+
content: '';
|
372 |
+
position: absolute;
|
373 |
+
top: -2px;
|
374 |
+
left: -2px;
|
375 |
+
right: -2px;
|
376 |
+
bottom: -2px;
|
377 |
+
background: linear-gradient(45deg, hsl(var(--primary) / 0.1), transparent, hsl(var(--primary) / 0.1));
|
378 |
+
border-radius: var(--radius);
|
379 |
+
z-index: -1;
|
380 |
+
opacity: 0;
|
381 |
+
transition: opacity 0.3s ease;
|
382 |
+
}
|
383 |
+
|
384 |
+
.feature-card:hover::before {
|
385 |
+
opacity: 1;
|
386 |
+
}
|
387 |
+
|
388 |
+
.feature-card:hover {
|
389 |
+
transform: translateY(-8px);
|
390 |
+
box-shadow: 0 25px 50px hsl(var(--foreground) / 0.15);
|
391 |
+
}
|
392 |
+
|
393 |
+
.feature-icon {
|
394 |
+
width: 3rem;
|
395 |
+
height: 3rem;
|
396 |
+
background: linear-gradient(135deg, hsl(var(--primary) / 0.1), hsl(var(--primary) / 0.2));
|
397 |
+
border-radius: 50%;
|
398 |
+
display: flex;
|
399 |
+
align-items: center;
|
400 |
+
justify-content: center;
|
401 |
+
margin-bottom: 1rem;
|
402 |
+
font-size: 1.5rem;
|
403 |
+
color: hsl(var(--primary));
|
404 |
+
transition: transform 0.3s ease;
|
405 |
+
}
|
406 |
+
|
407 |
+
.feature-card:hover .feature-icon {
|
408 |
+
transform: rotate(360deg) scale(1.1);
|
409 |
+
}
|
410 |
+
|
411 |
+
.feature-card h3 {
|
412 |
+
font-size: 1.25rem;
|
413 |
+
font-weight: 600;
|
414 |
+
margin-bottom: 0.75rem;
|
415 |
+
color: hsl(var(--card-foreground));
|
416 |
+
}
|
417 |
+
|
418 |
+
.feature-card p {
|
419 |
+
color: hsl(var(--muted-foreground));
|
420 |
+
line-height: 1.6;
|
421 |
+
}
|
422 |
+
|
423 |
+
.section-title {
|
424 |
+
text-align: center;
|
425 |
+
font-size: 2.5rem;
|
426 |
+
font-weight: 700;
|
427 |
+
margin-bottom: 1rem;
|
428 |
+
background: linear-gradient(135deg, hsl(var(--foreground)), hsl(var(--primary)));
|
429 |
+
-webkit-background-clip: text;
|
430 |
+
-webkit-text-fill-color: transparent;
|
431 |
+
background-clip: text;
|
432 |
+
}
|
433 |
+
|
434 |
+
.section-subtitle {
|
435 |
+
text-align: center;
|
436 |
+
color: hsl(var(--muted-foreground));
|
437 |
+
font-size: 1.1rem;
|
438 |
+
}
|
439 |
+
|
440 |
+
.footer {
|
441 |
+
padding: 3rem 0;
|
442 |
+
border-top: 1px solid hsl(var(--border));
|
443 |
+
text-align: center;
|
444 |
+
}
|
445 |
+
|
446 |
+
.disclaimer {
|
447 |
+
background: hsl(var(--muted));
|
448 |
+
color: hsl(var(--muted-foreground));
|
449 |
+
padding: 1.5rem;
|
450 |
+
border-radius: var(--radius);
|
451 |
+
margin-bottom: 2rem;
|
452 |
+
border-left: 4px solid hsl(var(--primary));
|
453 |
+
}
|
454 |
+
|
455 |
+
.disclaimer h4 {
|
456 |
+
font-weight: 600;
|
457 |
+
margin-bottom: 0.5rem;
|
458 |
+
color: hsl(var(--foreground));
|
459 |
+
}
|
460 |
+
|
461 |
+
.theme-toggle {
|
462 |
+
position: fixed;
|
463 |
+
top: 2rem;
|
464 |
+
right: 2rem;
|
465 |
+
background: hsl(var(--card));
|
466 |
+
border: 1px solid hsl(var(--border));
|
467 |
+
color: hsl(var(--card-foreground));
|
468 |
+
padding: 0.75rem;
|
469 |
+
border-radius: var(--radius);
|
470 |
+
cursor: pointer;
|
471 |
+
font-size: 1.2rem;
|
472 |
+
transition: all 0.3s ease;
|
473 |
+
z-index: 1000;
|
474 |
+
}
|
475 |
+
|
476 |
+
.theme-toggle:hover {
|
477 |
+
background: hsl(var(--accent));
|
478 |
+
transform: scale(1.1) rotate(180deg);
|
479 |
+
}
|
480 |
+
|
481 |
+
@keyframes fadeInUp {
|
482 |
+
from {
|
483 |
+
opacity: 0;
|
484 |
+
transform: translateY(30px);
|
485 |
+
}
|
486 |
+
to {
|
487 |
+
opacity: 1;
|
488 |
+
transform: translateY(0);
|
489 |
+
}
|
490 |
+
}
|
491 |
+
|
492 |
+
@media (max-width: 768px) {
|
493 |
+
.hero-tagline {
|
494 |
+
font-size: 1.5rem;
|
495 |
+
}
|
496 |
+
|
497 |
+
.nav-links {
|
498 |
+
flex-direction: column;
|
499 |
+
align-items: center;
|
500 |
+
}
|
501 |
+
|
502 |
+
.nav-link {
|
503 |
+
width: 200px;
|
504 |
+
text-align: center;
|
505 |
+
}
|
506 |
+
|
507 |
+
.container {
|
508 |
+
padding: 0 1rem;
|
509 |
+
}
|
510 |
+
|
511 |
+
.quick-features-grid {
|
512 |
+
grid-template-columns: 1fr;
|
513 |
+
}
|
514 |
+
|
515 |
+
.floating-code {
|
516 |
+
display: none;
|
517 |
+
}
|
518 |
+
}
|
519 |
+
/* Style for Try Now button in disclaimer */
|
520 |
+
.disclaimer .cta-button {
|
521 |
+
font-size: 1rem;
|
522 |
+
padding: 0.7rem 2rem !important;
|
523 |
+
margin: 0.5rem auto 1rem auto;
|
524 |
+
display: inline-block;
|
525 |
+
box-shadow: 0 2px 8px hsl(var(--primary) / 0.10);
|
526 |
+
}
|
527 |
+
.disclaimer div {
|
528 |
+
text-align: center;
|
529 |
+
}
|
530 |
+
</style>
|
531 |
+
</head>
|
532 |
+
<body>
|
533 |
+
<div class="background-elements">
|
534 |
+
<div class="floating-code">function analyzeCode() { return insights; }</div>
|
535 |
+
<div class="floating-code">const agent = new AgentTide();</div>
|
536 |
+
<div class="floating-code">// Precision-driven refactoring</div>
|
537 |
+
<div class="floating-code">import { structuralAnalysis } from 'codetide';</div>
|
538 |
+
</div>
|
539 |
+
|
540 |
+
<button class="theme-toggle" onclick="toggleTheme()">π</button>
|
541 |
+
|
542 |
+
<header class="header">
|
543 |
+
<div class="container">
|
544 |
+
<img src="/static/logo_dark.png" alt="AgentTide Logo" class="logo">
|
545 |
+
</div>
|
546 |
+
</header>
|
547 |
+
|
548 |
+
<section class="hero">
|
549 |
+
<div class="container">
|
550 |
+
<h1 class="hero-tagline">AI Agents for Smarter Codebases</h1>
|
551 |
+
<p class="subtitle">
|
552 |
+
The next-generation, <span class="highlight">precision-driven</span> software engineering agent built on top of CodeTide.
|
553 |
+
Experience intelligent code generation with full <span class="highlight">structural understanding</span> of your codebase.
|
554 |
+
</p>
|
555 |
+
|
556 |
+
<div class="nav-links">
|
557 |
+
<a href="https://github.com/BrunoV21/CodeTide" class="nav-link">GitHub</a>
|
558 |
+
<a href="https://docs.codetide.dev" class="nav-link">Documentation</a>
|
559 |
+
<a href="{{ DEMO_BASE_URL }}/tide" class="nav-link cta-button">Try Now</a>
|
560 |
+
</div>
|
561 |
+
|
562 |
+
<div class="code-snippet">
|
563 |
+
$ uvx --from codetide[agents-ui] agent-tide-ui
|
564 |
+
</div>
|
565 |
+
</div>
|
566 |
+
</section>
|
567 |
+
|
568 |
+
<section class="quick-features">
|
569 |
+
<div class="container">
|
570 |
+
<div class="quick-features-grid">
|
571 |
+
<div class="quick-feature">
|
572 |
+
<span class="quick-feature-icon">π§ </span>
|
573 |
+
<h3>Understands Your Codebase</h3>
|
574 |
+
<p>Deep structural analysis of your entire project for context-aware modifications</p>
|
575 |
+
</div>
|
576 |
+
|
577 |
+
<div class="quick-feature">
|
578 |
+
<span class="quick-feature-icon">β‘</span>
|
579 |
+
<h3>Intelligent Refactoring</h3>
|
580 |
+
<p>Automated code improvements that maintain functionality while enhancing quality</p>
|
581 |
+
</div>
|
582 |
+
|
583 |
+
<div class="quick-feature">
|
584 |
+
<span class="quick-feature-icon">π</span>
|
585 |
+
<h3>Seamless GitHub Integration</h3>
|
586 |
+
<p>Direct repository analysis and patch generation with full version control support</p>
|
587 |
+
</div>
|
588 |
+
|
589 |
+
<div class="quick-feature">
|
590 |
+
<span class="quick-feature-icon">π</span>
|
591 |
+
<h3>CodeTide MCP Support</h3>
|
592 |
+
<p>Empower AI agents and tools with dynamic codebase interaction while keeping your data secure.</p>
|
593 |
+
</div>
|
594 |
+
</div>
|
595 |
+
</div>
|
596 |
+
</section>
|
597 |
+
|
598 |
+
<div class="wave-divider"></div>
|
599 |
+
|
600 |
+
<section class="features">
|
601 |
+
<div class="container">
|
602 |
+
<h2 class="section-title">Why Choose AgentTide?</h2>
|
603 |
+
<p class="section-subtitle">Experience the power of context-aware, privacy-first software engineering</p>
|
604 |
+
|
605 |
+
<div class="features-grid">
|
606 |
+
<div class="feature-card">
|
607 |
+
<div class="feature-icon">π</div>
|
608 |
+
<h3>Local-First & Private</h3>
|
609 |
+
<p>All code analysis and patching is performed locally. Your code never leaves your machine, ensuring complete privacy and security.</p>
|
610 |
+
</div>
|
611 |
+
|
612 |
+
<div class="feature-card">
|
613 |
+
<div class="feature-icon">ποΈ</div>
|
614 |
+
<h3>Transparent & Stepwise</h3>
|
615 |
+
<p>See every plan and patch before it's applied. Edit, reorder, or approve steps-you're always in control of the process.</p>
|
616 |
+
</div>
|
617 |
+
|
618 |
+
<div class="feature-card">
|
619 |
+
<div class="feature-icon">π§ </div>
|
620 |
+
<h3>Context-Aware</h3>
|
621 |
+
<p>AgentTide loads only the relevant code identifiers and dependencies for your request, making it fast and precise.</p>
|
622 |
+
</div>
|
623 |
+
|
624 |
+
<div class="feature-card">
|
625 |
+
<div class="feature-icon">π€</div>
|
626 |
+
<h3>Human-in-the-Loop</h3>
|
627 |
+
<p>After each step, review the patch, provide feedback, or continue-no black-box agent behavior.</p>
|
628 |
+
</div>
|
629 |
+
|
630 |
+
<div class="feature-card">
|
631 |
+
<div class="feature-icon">β‘</div>
|
632 |
+
<h3>Patch-Based Editing</h3>
|
633 |
+
<p>All changes are atomic diffs, not full file rewrites, for maximum clarity and efficiency.</p>
|
634 |
+
</div>
|
635 |
+
|
636 |
+
<div class="feature-card">
|
637 |
+
<div class="feature-icon">π―</div>
|
638 |
+
<h3>Precision-Driven</h3>
|
639 |
+
<p>Built on CodeTide's symbolic code understanding for accurate, context-aware code modifications.</p>
|
640 |
+
</div>
|
641 |
+
</div>
|
642 |
+
</div>
|
643 |
+
</section>
|
644 |
+
|
645 |
+
<footer class="footer">
|
646 |
+
<div class="container">
|
647 |
+
<div class="disclaimer">
|
648 |
+
<h4>Getting Started</h4>
|
649 |
+
<p>
|
650 |
+
To use AgentTide, you'll need to provide a GitHub repository URL to give the agent context about your codebase.
|
651 |
+
You can use one of our pre-configured free LLM providers or bring your own model.
|
652 |
+
We do not persist any data regarding Git repositories or API keys - everything stays local and private.
|
653 |
+
</p>
|
654 |
+
<div style="text-align:center; margin-top: 1.5rem;">
|
655 |
+
<a href="{{ DEMO_BASE_URL }}/tide" class="nav-link cta-button">Try Now</a>
|
656 |
+
</div>
|
657 |
+
|
658 |
+
<p>© 2025 AgentTide. Built with CodeTide. Licensed under Apache 2.0.</p>
|
659 |
+
</div>
|
660 |
+
</footer>
|
661 |
+
|
662 |
+
<script>
|
663 |
+
function toggleTheme() {
|
664 |
+
const html = document.documentElement;
|
665 |
+
const button = document.querySelector('.theme-toggle');
|
666 |
+
|
667 |
+
if (html.classList.contains('dark')) {
|
668 |
+
html.classList.remove('dark');
|
669 |
+
html.classList.add('light');
|
670 |
+
button.textContent = 'βοΈ';
|
671 |
+
} else {
|
672 |
+
html.classList.remove('light');
|
673 |
+
html.classList.add('dark');
|
674 |
+
button.textContent = 'π';
|
675 |
+
}
|
676 |
+
}
|
677 |
+
|
678 |
+
// Initialize theme based on system preference
|
679 |
+
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) {
|
680 |
+
document.documentElement.classList.remove('dark');
|
681 |
+
document.documentElement.classList.add('light');
|
682 |
+
document.querySelector('.theme-toggle').textContent = 'βοΈ';
|
683 |
+
}
|
684 |
+
</script>
|
685 |
+
</body>
|
686 |
+
</html>
|