github-actions[bot] commited on
Commit
503c74c
·
1 Parent(s): 9044487

GitHub deploy: dbe463a53d170c94514bf5454b362de89c31995b

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. backend/apps/images/main.py +3 -3
  2. backend/apps/images/utils/comfyui.py +2 -3
  3. backend/apps/webui/main.py +0 -2
  4. backend/config.py +0 -6
  5. backend/main.py +1 -2
  6. package-lock.json +0 -18
  7. package.json +0 -1
  8. src/lib/components/chat/Messages/CodeBlock.svelte +6 -9
  9. src/lib/components/chat/Messages/MarkdownInlineTokens.svelte +3 -13
  10. src/lib/components/chat/Messages/MarkdownTokens.svelte +119 -106
  11. src/lib/components/chat/Messages/ResponseMessage.svelte +91 -80
  12. src/lib/i18n/locales/ar-BH/translation.json +0 -3
  13. src/lib/i18n/locales/bg-BG/translation.json +0 -3
  14. src/lib/i18n/locales/bn-BD/translation.json +0 -3
  15. src/lib/i18n/locales/ca-ES/translation.json +0 -3
  16. src/lib/i18n/locales/ceb-PH/translation.json +0 -3
  17. src/lib/i18n/locales/de-DE/translation.json +0 -3
  18. src/lib/i18n/locales/dg-DG/translation.json +0 -3
  19. src/lib/i18n/locales/en-GB/translation.json +0 -3
  20. src/lib/i18n/locales/en-US/translation.json +0 -3
  21. src/lib/i18n/locales/es-ES/translation.json +0 -3
  22. src/lib/i18n/locales/fa-IR/translation.json +0 -3
  23. src/lib/i18n/locales/fi-FI/translation.json +0 -3
  24. src/lib/i18n/locales/fr-CA/translation.json +0 -3
  25. src/lib/i18n/locales/fr-FR/translation.json +0 -3
  26. src/lib/i18n/locales/he-IL/translation.json +0 -3
  27. src/lib/i18n/locales/hi-IN/translation.json +0 -3
  28. src/lib/i18n/locales/hr-HR/translation.json +0 -3
  29. src/lib/i18n/locales/id-ID/translation.json +0 -3
  30. src/lib/i18n/locales/it-IT/translation.json +0 -3
  31. src/lib/i18n/locales/ja-JP/translation.json +0 -3
  32. src/lib/i18n/locales/ka-GE/translation.json +0 -3
  33. src/lib/i18n/locales/ko-KR/translation.json +0 -3
  34. src/lib/i18n/locales/lt-LT/translation.json +0 -3
  35. src/lib/i18n/locales/ms-MY/translation.json +0 -3
  36. src/lib/i18n/locales/nb-NO/translation.json +0 -3
  37. src/lib/i18n/locales/nl-NL/translation.json +0 -3
  38. src/lib/i18n/locales/pa-IN/translation.json +0 -3
  39. src/lib/i18n/locales/pl-PL/translation.json +0 -3
  40. src/lib/i18n/locales/pt-BR/translation.json +0 -3
  41. src/lib/i18n/locales/pt-PT/translation.json +0 -3
  42. src/lib/i18n/locales/ro-RO/translation.json +0 -3
  43. src/lib/i18n/locales/ru-RU/translation.json +0 -3
  44. src/lib/i18n/locales/sr-RS/translation.json +0 -3
  45. src/lib/i18n/locales/sv-SE/translation.json +0 -3
  46. src/lib/i18n/locales/th-TH/translation.json +0 -3
  47. src/lib/i18n/locales/tk-TW/translation.json +0 -3
  48. src/lib/i18n/locales/tr-TR/translation.json +0 -3
  49. src/lib/i18n/locales/uk-UA/translation.json +0 -3
  50. src/lib/i18n/locales/vi-VN/translation.json +0 -3
backend/apps/images/main.py CHANGED
@@ -150,10 +150,10 @@ async def update_engine_url(
150
  else:
151
  url = form_data.AUTOMATIC1111_BASE_URL.strip("/")
152
  try:
153
- r = requests.head(url)
154
  app.state.config.AUTOMATIC1111_BASE_URL = url
155
  except Exception as e:
156
- raise HTTPException(status_code=400, detail="Invalid URL provided.")
157
 
158
  if form_data.COMFYUI_BASE_URL == None:
159
  app.state.config.COMFYUI_BASE_URL = COMFYUI_BASE_URL
@@ -514,7 +514,7 @@ async def image_generations(
514
 
515
  data = ImageGenerationPayload(**data)
516
 
517
- res = await comfyui_generate_image(
518
  app.state.config.MODEL,
519
  data,
520
  user.id,
 
150
  else:
151
  url = form_data.AUTOMATIC1111_BASE_URL.strip("/")
152
  try:
153
+ r = requests.head(url)
154
  app.state.config.AUTOMATIC1111_BASE_URL = url
155
  except Exception as e:
156
+ raise HTTPException(status_code=400, detail=ERROR_MESSAGES.DEFAULT(e))
157
 
158
  if form_data.COMFYUI_BASE_URL == None:
159
  app.state.config.COMFYUI_BASE_URL = COMFYUI_BASE_URL
 
514
 
515
  data = ImageGenerationPayload(**data)
516
 
517
+ res = comfyui_generate_image(
518
  app.state.config.MODEL,
519
  data,
520
  user.id,
backend/apps/images/utils/comfyui.py CHANGED
@@ -1,4 +1,3 @@
1
- import asyncio
2
  import websocket # NOTE: websocket-client (https://github.com/websocket-client/websocket-client)
3
  import uuid
4
  import json
@@ -329,7 +328,7 @@ class ImageGenerationPayload(BaseModel):
329
  flux_fp8_clip: Optional[bool] = None
330
 
331
 
332
- async def comfyui_generate_image(
333
  model: str, payload: ImageGenerationPayload, client_id, base_url
334
  ):
335
  ws_url = base_url.replace("http://", "ws://").replace("https://", "wss://")
@@ -398,7 +397,7 @@ async def comfyui_generate_image(
398
  return None
399
 
400
  try:
401
- images = await asyncio.to_thread(get_images, ws, comfyui_prompt, client_id, base_url)
402
  except Exception as e:
403
  log.exception(f"Error while receiving images: {e}")
404
  images = None
 
 
1
  import websocket # NOTE: websocket-client (https://github.com/websocket-client/websocket-client)
2
  import uuid
3
  import json
 
328
  flux_fp8_clip: Optional[bool] = None
329
 
330
 
331
+ def comfyui_generate_image(
332
  model: str, payload: ImageGenerationPayload, client_id, base_url
333
  ):
334
  ws_url = base_url.replace("http://", "ws://").replace("https://", "wss://")
 
397
  return None
398
 
399
  try:
400
+ images = get_images(ws, comfyui_prompt, client_id, base_url)
401
  except Exception as e:
402
  log.exception(f"Error while receiving images: {e}")
403
  images = None
backend/apps/webui/main.py CHANGED
@@ -46,7 +46,6 @@ from config import (
46
  AppConfig,
47
  OAUTH_USERNAME_CLAIM,
48
  OAUTH_PICTURE_CLAIM,
49
- OAUTH_EMAIL_CLAIM,
50
  )
51
 
52
  from apps.socket.main import get_event_call, get_event_emitter
@@ -85,7 +84,6 @@ app.state.config.ENABLE_COMMUNITY_SHARING = ENABLE_COMMUNITY_SHARING
85
 
86
  app.state.config.OAUTH_USERNAME_CLAIM = OAUTH_USERNAME_CLAIM
87
  app.state.config.OAUTH_PICTURE_CLAIM = OAUTH_PICTURE_CLAIM
88
- app.state.config.OAUTH_EMAIL_CLAIM = OAUTH_EMAIL_CLAIM
89
 
90
  app.state.MODELS = {}
91
  app.state.TOOLS = {}
 
46
  AppConfig,
47
  OAUTH_USERNAME_CLAIM,
48
  OAUTH_PICTURE_CLAIM,
 
49
  )
50
 
51
  from apps.socket.main import get_event_call, get_event_emitter
 
84
 
85
  app.state.config.OAUTH_USERNAME_CLAIM = OAUTH_USERNAME_CLAIM
86
  app.state.config.OAUTH_PICTURE_CLAIM = OAUTH_PICTURE_CLAIM
 
87
 
88
  app.state.MODELS = {}
89
  app.state.TOOLS = {}
backend/config.py CHANGED
@@ -433,12 +433,6 @@ OAUTH_PICTURE_CLAIM = PersistentConfig(
433
  os.environ.get("OAUTH_PICTURE_CLAIM", "picture"),
434
  )
435
 
436
- OAUTH_EMAIL_CLAIM = PersistentConfig(
437
- "OAUTH_EMAIL_CLAIM",
438
- "oauth.oidc.email_claim",
439
- os.environ.get("OAUTH_EMAIL_CLAIM", "email"),
440
- )
441
-
442
 
443
  def load_oauth_providers():
444
  OAUTH_PROVIDERS.clear()
 
433
  os.environ.get("OAUTH_PICTURE_CLAIM", "picture"),
434
  )
435
 
 
 
 
 
 
 
436
 
437
  def load_oauth_providers():
438
  OAUTH_PROVIDERS.clear()
backend/main.py CHANGED
@@ -2158,8 +2158,7 @@ async def oauth_callback(provider: str, request: Request, response: Response):
2158
  log.warning(f"OAuth callback failed, sub is missing: {user_data}")
2159
  raise HTTPException(400, detail=ERROR_MESSAGES.INVALID_CRED)
2160
  provider_sub = f"{provider}@{sub}"
2161
- email_claim = webui_app.state.config.OAUTH_EMAIL_CLAIM
2162
- email = user_data.get(email_claim, "").lower()
2163
  # We currently mandate that email addresses are provided
2164
  if not email:
2165
  log.warning(f"OAuth callback failed, email is missing: {user_data}")
 
2158
  log.warning(f"OAuth callback failed, sub is missing: {user_data}")
2159
  raise HTTPException(400, detail=ERROR_MESSAGES.INVALID_CRED)
2160
  provider_sub = f"{provider}@{sub}"
2161
+ email = user_data.get("email", "").lower()
 
2162
  # We currently mandate that email addresses are provided
2163
  if not email:
2164
  log.warning(f"OAuth callback failed, email is missing: {user_data}")
package-lock.json CHANGED
@@ -29,7 +29,6 @@
29
  "js-sha256": "^0.10.1",
30
  "katex": "^0.16.9",
31
  "marked": "^9.1.0",
32
- "marked-katex-extension": "^5.1.1",
33
  "mermaid": "^10.9.1",
34
  "pyodide": "^0.26.1",
35
  "socket.io-client": "^4.2.0",
@@ -1545,11 +1544,6 @@
1545
  "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
1546
  "dev": true
1547
  },
1548
- "node_modules/@types/katex": {
1549
- "version": "0.16.7",
1550
- "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz",
1551
- "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ=="
1552
- },
1553
  "node_modules/@types/mdast": {
1554
  "version": "3.0.15",
1555
  "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz",
@@ -6042,18 +6036,6 @@
6042
  "node": ">= 16"
6043
  }
6044
  },
6045
- "node_modules/marked-katex-extension": {
6046
- "version": "5.1.1",
6047
- "resolved": "https://registry.npmjs.org/marked-katex-extension/-/marked-katex-extension-5.1.1.tgz",
6048
- "integrity": "sha512-piquiCyZpZ1aiocoJlJkRXr+hkk5UI4xw9GhRZiIAAgvX5rhzUDSJ0seup1JcsgueC8MLNDuqe5cRcAzkFE42Q==",
6049
- "dependencies": {
6050
- "@types/katex": "^0.16.7"
6051
- },
6052
- "peerDependencies": {
6053
- "katex": ">=0.16 <0.17",
6054
- "marked": ">=4 <15"
6055
- }
6056
- },
6057
  "node_modules/matcher-collection": {
6058
  "version": "2.0.1",
6059
  "resolved": "https://registry.npmjs.org/matcher-collection/-/matcher-collection-2.0.1.tgz",
 
29
  "js-sha256": "^0.10.1",
30
  "katex": "^0.16.9",
31
  "marked": "^9.1.0",
 
32
  "mermaid": "^10.9.1",
33
  "pyodide": "^0.26.1",
34
  "socket.io-client": "^4.2.0",
 
1544
  "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
1545
  "dev": true
1546
  },
 
 
 
 
 
1547
  "node_modules/@types/mdast": {
1548
  "version": "3.0.15",
1549
  "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz",
 
6036
  "node": ">= 16"
6037
  }
6038
  },
 
 
 
 
 
 
 
 
 
 
 
 
6039
  "node_modules/matcher-collection": {
6040
  "version": "2.0.1",
6041
  "resolved": "https://registry.npmjs.org/matcher-collection/-/matcher-collection-2.0.1.tgz",
package.json CHANGED
@@ -70,7 +70,6 @@
70
  "js-sha256": "^0.10.1",
71
  "katex": "^0.16.9",
72
  "marked": "^9.1.0",
73
- "marked-katex-extension": "^5.1.1",
74
  "mermaid": "^10.9.1",
75
  "pyodide": "^0.26.1",
76
  "socket.io-client": "^4.2.0",
 
70
  "js-sha256": "^0.10.1",
71
  "katex": "^0.16.9",
72
  "marked": "^9.1.0",
 
73
  "mermaid": "^10.9.1",
74
  "pyodide": "^0.26.1",
75
  "socket.io-client": "^4.2.0",
src/lib/components/chat/Messages/CodeBlock.svelte CHANGED
@@ -1,15 +1,12 @@
1
  <script lang="ts">
2
- import hljs from 'highlight.js';
3
- import { loadPyodide } from 'pyodide';
4
- import { getContext, getAllContexts } from 'svelte';
5
  import { copyToClipboard } from '$lib/utils';
6
-
7
  import 'highlight.js/styles/github-dark.min.css';
8
-
 
9
  import PyodideWorker from '$lib/workers/pyodide.worker?worker';
10
 
11
- const i18n = getContext('i18n');
12
-
13
  export let id = '';
14
 
15
  export let lang = '';
@@ -236,12 +233,12 @@ __builtins__.input = input`);
236
  class="copy-code-button bg-none border-none p-1"
237
  on:click={() => {
238
  executePython(code);
239
- }}>{$i18n.t('Run')}</button
240
  >
241
  {/if}
242
  {/if}
243
  <button class="copy-code-button bg-none border-none p-1" on:click={copyCode}
244
- >{copied ? $i18n.t('Copied') : $i18n.t('Copy Code')}</button
245
  >
246
  </div>
247
  </div>
 
1
  <script lang="ts">
2
+ import Spinner from '$lib/components/common/Spinner.svelte';
 
 
3
  import { copyToClipboard } from '$lib/utils';
4
+ import hljs from 'highlight.js';
5
  import 'highlight.js/styles/github-dark.min.css';
6
+ import { loadPyodide } from 'pyodide';
7
+ import { onMount, tick } from 'svelte';
8
  import PyodideWorker from '$lib/workers/pyodide.worker?worker';
9
 
 
 
10
  export let id = '';
11
 
12
  export let lang = '';
 
233
  class="copy-code-button bg-none border-none p-1"
234
  on:click={() => {
235
  executePython(code);
236
+ }}>Run</button
237
  >
238
  {/if}
239
  {/if}
240
  <button class="copy-code-button bg-none border-none p-1" on:click={copyCode}
241
+ >{copied ? 'Copied' : 'Copy Code'}</button
242
  >
243
  </div>
244
  </div>
src/lib/components/chat/Messages/MarkdownInlineTokens.svelte CHANGED
@@ -1,11 +1,8 @@
1
  <script lang="ts">
2
  import type { Token } from 'marked';
3
- import { revertSanitizedResponseContent, unescapeHtml } from '$lib/utils';
4
- import { onMount } from 'svelte';
5
  import Image from '$lib/components/common/Image.svelte';
6
 
7
- import KatexRenderer from './KatexRenderer.svelte';
8
-
9
  export let id: string;
10
  export let tokens: Token[];
11
  </script>
@@ -28,21 +25,14 @@
28
  <svelte:self id={`${id}-em`} tokens={token.tokens} />
29
  </em>
30
  {:else if token.type === 'codespan'}
31
- <code class="codespan">{revertSanitizedResponseContent(token.raw)}</code>
32
  {:else if token.type === 'br'}
33
  <br />
34
  {:else if token.type === 'del'}
35
  <del>
36
  <svelte:self id={`${id}-del`} tokens={token.tokens} />
37
  </del>
38
- {:else if token.type === 'inlineKatex'}
39
- {#if token.text}
40
- <KatexRenderer
41
- content={revertSanitizedResponseContent(token.text)}
42
- displayMode={token?.displayMode ?? false}
43
- />
44
- {/if}
45
  {:else if token.type === 'text'}
46
- {token.raw}
47
  {/if}
48
  {/each}
 
1
  <script lang="ts">
2
  import type { Token } from 'marked';
3
+ import { unescapeHtml } from '$lib/utils';
 
4
  import Image from '$lib/components/common/Image.svelte';
5
 
 
 
6
  export let id: string;
7
  export let tokens: Token[];
8
  </script>
 
25
  <svelte:self id={`${id}-em`} tokens={token.tokens} />
26
  </em>
27
  {:else if token.type === 'codespan'}
28
+ <code class="codespan">{unescapeHtml(token.text.replaceAll('&amp;', '&'))}</code>
29
  {:else if token.type === 'br'}
30
  <br />
31
  {:else if token.type === 'del'}
32
  <del>
33
  <svelte:self id={`${id}-del`} tokens={token.tokens} />
34
  </del>
 
 
 
 
 
 
 
35
  {:else if token.type === 'text'}
36
+ {unescapeHtml(token.text)}
37
  {/if}
38
  {/each}
src/lib/components/chat/Messages/MarkdownTokens.svelte CHANGED
@@ -1,124 +1,137 @@
1
  <script lang="ts">
2
- import { onMount } from 'svelte';
3
  import type { Token } from 'marked';
4
  import { revertSanitizedResponseContent, unescapeHtml } from '$lib/utils';
5
 
 
 
 
6
  import CodeBlock from '$lib/components/chat/Messages/CodeBlock.svelte';
 
7
  import MarkdownInlineTokens from '$lib/components/chat/Messages/MarkdownInlineTokens.svelte';
8
- import KatexRenderer from './KatexRenderer.svelte';
9
 
10
  export let id: string;
11
  export let tokens: Token[];
12
  export let top = true;
13
 
 
 
14
  const headerComponent = (depth: number) => {
15
  return 'h' + depth;
16
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
  </script>
18
 
19
- <!-- {JSON.stringify(tokens)} -->
20
- {#each tokens as token, tokenIdx}
21
- {#if token.type === 'hr'}
22
- <hr />
23
- {:else if token.type === 'heading'}
24
- <svelte:element this={headerComponent(token.depth)}>
25
- <MarkdownInlineTokens id={`${id}-${tokenIdx}-h`} tokens={token.tokens} />
26
- </svelte:element>
27
- {:else if token.type === 'code'}
28
- <CodeBlock
29
- {id}
30
- lang={token?.lang ?? ''}
31
- code={revertSanitizedResponseContent(token?.text ?? '')}
32
- />
33
- {:else if token.type === 'table'}
34
- <table>
35
- <thead>
36
- <tr>
37
- {#each token.header as header, headerIdx}
38
- <th style={token.align[headerIdx] ? '' : `text-align: ${token.align[headerIdx]}`}>
39
- <MarkdownInlineTokens
40
- id={`${id}-${tokenIdx}-header-${headerIdx}`}
41
- tokens={header.tokens}
42
- />
43
- </th>
44
- {/each}
45
- </tr>
46
- </thead>
47
- <tbody>
48
- {#each token.rows as row, rowIdx}
49
- <tr>
50
- {#each row ?? [] as cell, cellIdx}
51
- <td style={token.align[cellIdx] ? '' : `text-align: ${token.align[cellIdx]}`}>
52
- <MarkdownInlineTokens
53
- id={`${id}-${tokenIdx}-row-${rowIdx}-${cellIdx}`}
54
- tokens={cell.tokens}
55
- />
56
- </td>
57
- {/each}
58
- </tr>
59
- {/each}
60
- </tbody>
61
- </table>
62
- {:else if token.type === 'blockquote'}
63
- <blockquote>
64
- <svelte:self id={`${id}-${tokenIdx}`} tokens={token.tokens} />
65
- </blockquote>
66
- {:else if token.type === 'list'}
67
- {#if token.ordered}
68
- <ol start={token.start || 1}>
69
- {#each token.items as item, itemIdx}
70
- <li>
71
- <svelte:self
72
- id={`${id}-${tokenIdx}-${itemIdx}`}
73
- tokens={item.tokens}
74
- top={token.loose}
75
- />
76
- </li>
77
- {/each}
78
- </ol>
79
  {:else}
80
- <ul>
81
- {#each token.items as item, itemIdx}
82
- <li>
83
- <svelte:self
84
- id={`${id}-${tokenIdx}-${itemIdx}`}
85
- tokens={item.tokens}
86
- top={token.loose}
87
- />
88
- </li>
89
- {/each}
90
- </ul>
91
- {/if}
92
- {:else if token.type === 'html'}
93
- {@html token.text}
94
- {:else if token.type === 'paragraph'}
95
- <p>
96
- <MarkdownInlineTokens id={`${id}-${tokenIdx}-p`} tokens={token.tokens ?? []} />
97
- </p>
98
- {:else if token.type === 'text'}
99
- {#if top}
100
- <p>
101
- {#if token.tokens}
102
- <MarkdownInlineTokens id={`${id}-${tokenIdx}-t`} tokens={token.tokens} />
103
- {:else}
104
- {unescapeHtml(token.text)}
105
- {/if}
106
- </p>
107
- {:else if token.tokens}
108
- <MarkdownInlineTokens id={`${id}-${tokenIdx}-p`} tokens={token.tokens ?? []} />
109
- {:else}
110
- {unescapeHtml(token.text)}
111
- {/if}
112
- {:else if token.type === 'inlineKatex'}
113
- {#if token.text}
114
- <KatexRenderer
115
- content={revertSanitizedResponseContent(token.text)}
116
- displayMode={token?.displayMode ?? false}
117
- />
118
  {/if}
119
- {:else if token.type === 'space'}
120
- {''}
121
- {:else}
122
- {console.log('Unknown token', token)}
123
- {/if}
124
- {/each}
 
1
  <script lang="ts">
2
+ import { marked } from 'marked';
3
  import type { Token } from 'marked';
4
  import { revertSanitizedResponseContent, unescapeHtml } from '$lib/utils';
5
 
6
+ import { onMount } from 'svelte';
7
+
8
+ import Image from '$lib/components/common/Image.svelte';
9
  import CodeBlock from '$lib/components/chat/Messages/CodeBlock.svelte';
10
+
11
  import MarkdownInlineTokens from '$lib/components/chat/Messages/MarkdownInlineTokens.svelte';
 
12
 
13
  export let id: string;
14
  export let tokens: Token[];
15
  export let top = true;
16
 
17
+ let containerElement;
18
+
19
  const headerComponent = (depth: number) => {
20
  return 'h' + depth;
21
  };
22
+
23
+ const renderer = new marked.Renderer();
24
+ // For code blocks with simple backticks
25
+ renderer.codespan = (code) => {
26
+ return `<code class="codespan">${code.replaceAll('&amp;', '&')}</code>`;
27
+ };
28
+
29
+ let codes = [];
30
+ renderer.code = (code, lang) => {
31
+ codes.push({
32
+ code: code,
33
+ lang: lang
34
+ });
35
+ codes = codes;
36
+ const codeId = `${id}-${codes.length}`;
37
+
38
+ const interval = setInterval(() => {
39
+ const codeElement = document.getElementById(`code-${codeId}`);
40
+ if (codeElement) {
41
+ clearInterval(interval);
42
+ // If the code is already loaded, don't load it again
43
+ if (codeElement.innerHTML) {
44
+ return;
45
+ }
46
+
47
+ new CodeBlock({
48
+ target: codeElement,
49
+ props: {
50
+ id: `${id}-${codes.length}`,
51
+ lang: lang,
52
+ code: revertSanitizedResponseContent(code)
53
+ },
54
+ hydrate: true,
55
+ $$inline: true
56
+ });
57
+ }
58
+ }, 10);
59
+
60
+ return `<div id="code-${id}-${codes.length}"></div>`;
61
+ };
62
+
63
+ let images = [];
64
+ renderer.image = (href, title, text) => {
65
+ images.push({
66
+ href: href,
67
+ title: title,
68
+ text: text
69
+ });
70
+ images = images;
71
+
72
+ const imageId = `${id}-${images.length}`;
73
+ const interval = setInterval(() => {
74
+ const imageElement = document.getElementById(`image-${imageId}`);
75
+ if (imageElement) {
76
+ clearInterval(interval);
77
+
78
+ // If the image is already loaded, don't load it again
79
+ if (imageElement.innerHTML) {
80
+ return;
81
+ }
82
+
83
+ console.log('image', href, text);
84
+ new Image({
85
+ target: imageElement,
86
+ props: {
87
+ src: href,
88
+ alt: text
89
+ },
90
+ $$inline: true
91
+ });
92
+ }
93
+ }, 10);
94
+
95
+ return `<div id="image-${id}-${images.length}"></div>`;
96
+ };
97
+
98
+ // Open all links in a new tab/window (from https://github.com/markedjs/marked/issues/655#issuecomment-383226346)
99
+ const origLinkRenderer = renderer.link;
100
+ renderer.link = (href, title, text) => {
101
+ const html = origLinkRenderer.call(renderer, href, title, text);
102
+ return html.replace(/^<a /, '<a target="_blank" rel="nofollow" ');
103
+ };
104
+
105
+ const { extensions, ...defaults } = marked.getDefaults() as marked.MarkedOptions & {
106
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
107
+ extensions: any;
108
+ };
109
+
110
+ $: if (tokens) {
111
+ images = [];
112
+ codes = [];
113
+ }
114
  </script>
115
 
116
+ <div bind:this={containerElement} class="flex flex-col">
117
+ {#each tokens as token, tokenIdx (`${id}-${tokenIdx}`)}
118
+ {#if token.type === 'code'}
119
+ {#if token.lang === 'mermaid'}
120
+ <pre class="mermaid">{revertSanitizedResponseContent(token.text)}</pre>
121
+ {:else}
122
+ <CodeBlock
123
+ id={`${id}-${tokenIdx}`}
124
+ lang={token?.lang ?? ''}
125
+ code={revertSanitizedResponseContent(token?.text ?? '')}
126
+ />
127
+ {/if}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  {:else}
129
+ {@html marked.parse(token.raw, {
130
+ ...defaults,
131
+ gfm: true,
132
+ breaks: true,
133
+ renderer
134
+ })}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
135
  {/if}
136
+ {/each}
137
+ </div>
 
 
 
 
src/lib/components/chat/Messages/ResponseMessage.svelte CHANGED
@@ -4,6 +4,7 @@
4
  import { marked } from 'marked';
5
  import tippy from 'tippy.js';
6
  import auto_render from 'katex/dist/contrib/auto-render.mjs';
 
7
  import mermaid from 'mermaid';
8
 
9
  import { fade } from 'svelte/transition';
@@ -78,27 +79,77 @@
78
 
79
  let tokens;
80
 
81
- import 'katex/dist/katex.min.css';
82
-
83
- import markedKatex from '$lib/utils/katex-extension';
84
- const options = {
85
- throwOnError: false
86
- };
87
-
88
- marked.use(markedKatex(options));
89
-
90
  $: (async () => {
91
  if (message?.content) {
92
  tokens = marked.lexer(
93
  replaceTokens(sanitizeResponseContent(message?.content), model?.name, $user?.name)
94
  );
 
95
  }
96
  })();
97
 
98
- $: if (message?.done ?? false) {
99
- renderLatex();
100
  }
101
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
102
  const renderLatex = () => {
103
  let chatMessageElements = document
104
  .getElementById(`message-${message.id}`)
@@ -279,14 +330,14 @@
279
  editedContent = '';
280
 
281
  await tick();
282
- renderLatex();
283
  };
284
 
285
  const cancelEditMessage = async () => {
286
  edit = false;
287
  editedContent = '';
288
  await tick();
289
- renderLatex();
290
  };
291
 
292
  const generateImage = async (message) => {
@@ -311,7 +362,7 @@
311
  $: if (!edit) {
312
  (async () => {
313
  await tick();
314
- renderLatex();
315
 
316
  await mermaid.run({
317
  querySelector: '.mermaid'
@@ -321,7 +372,7 @@
321
 
322
  onMount(async () => {
323
  await tick();
324
- renderLatex();
325
 
326
  await mermaid.run({
327
  querySelector: '.mermaid'
@@ -369,7 +420,7 @@
369
  {/if}
370
 
371
  <div
372
- class="prose chat-{message.role} w-full max-w-full dark:prose-invert prose-p:my-0 prose-img:my-1 prose-headings:my-1 prose-pre:my-0 prose-table:my-0 prose-blockquote:my-0 prose-ul:-my-0 prose-ol:-my-0 prose-li:-my-0 whitespace-pre-line"
373
  >
374
  <div>
375
  {#if (message?.statusHistory ?? [...(message?.status ? [message?.status] : [])]).length > 0}
@@ -790,71 +841,31 @@
790
  {/if}
791
 
792
  {#if message.info}
793
- <Tooltip
794
- content={message.info.openai
795
- ? `prompt_tokens: ${message.info.prompt_tokens ?? 'N/A'}<br/>
796
- completion_tokens: ${message.info.completion_tokens ?? 'N/A'}<br/>
797
- total_tokens: ${message.info.total_tokens ?? 'N/A'}`
798
- : `response_token/s: ${
799
- `${
800
- Math.round(
801
- ((message.info.eval_count ?? 0) /
802
- (message.info.eval_duration / 1000000000)) *
803
- 100
804
- ) / 100
805
- } tokens` ?? 'N/A'
806
- }<br/>
807
- prompt_token/s: ${
808
- Math.round(
809
- ((message.info.prompt_eval_count ?? 0) /
810
- (message.info.prompt_eval_duration / 1000000000)) *
811
- 100
812
- ) / 100 ?? 'N/A'
813
- } tokens<br/>
814
- total_duration: ${
815
- Math.round(((message.info.total_duration ?? 0) / 1000000) * 100) / 100 ?? 'N/A'
816
- }ms<br/>
817
- load_duration: ${
818
- Math.round(((message.info.load_duration ?? 0) / 1000000) * 100) / 100 ?? 'N/A'
819
- }ms<br/>
820
- prompt_eval_count: ${message.info.prompt_eval_count ?? 'N/A'}<br/>
821
- prompt_eval_duration: ${
822
- Math.round(((message.info.prompt_eval_duration ?? 0) / 1000000) * 100) / 100 ??
823
- 'N/A'
824
- }ms<br/>
825
- eval_count: ${message.info.eval_count ?? 'N/A'}<br/>
826
- eval_duration: ${
827
- Math.round(((message.info.eval_duration ?? 0) / 1000000) * 100) / 100 ?? 'N/A'
828
- }ms<br/>
829
- approximate_total: ${approximateToHumanReadable(message.info.total_duration)}`}
830
- placement="top"
831
- >
832
- <Tooltip content={$i18n.t('Generation Info')} placement="bottom">
833
- <button
834
- class=" {isLastMessage
835
- ? 'visible'
836
- : 'invisible group-hover:visible'} p-1.5 hover:bg-black/5 dark:hover:bg-white/5 rounded-lg dark:hover:text-white hover:text-black transition whitespace-pre-wrap"
837
- on:click={() => {
838
- console.log(message);
839
- }}
840
- id="info-{message.id}"
841
  >
842
- <svg
843
- xmlns="http://www.w3.org/2000/svg"
844
- fill="none"
845
- viewBox="0 0 24 24"
846
- stroke-width="2.3"
847
- stroke="currentColor"
848
- class="w-4 h-4"
849
- >
850
- <path
851
- stroke-linecap="round"
852
- stroke-linejoin="round"
853
- d="M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z"
854
- />
855
- </svg>
856
- </button>
857
- </Tooltip>
858
  </Tooltip>
859
  {/if}
860
 
 
4
  import { marked } from 'marked';
5
  import tippy from 'tippy.js';
6
  import auto_render from 'katex/dist/contrib/auto-render.mjs';
7
+ import 'katex/dist/katex.min.css';
8
  import mermaid from 'mermaid';
9
 
10
  import { fade } from 'svelte/transition';
 
79
 
80
  let tokens;
81
 
 
 
 
 
 
 
 
 
 
82
  $: (async () => {
83
  if (message?.content) {
84
  tokens = marked.lexer(
85
  replaceTokens(sanitizeResponseContent(message?.content), model?.name, $user?.name)
86
  );
87
+ // console.log(message?.content, tokens);
88
  }
89
  })();
90
 
91
+ $: if (message) {
92
+ renderStyling();
93
  }
94
 
95
+ const renderStyling = async () => {
96
+ await tick();
97
+
98
+ if (tooltipInstance) {
99
+ tooltipInstance[0]?.destroy();
100
+ }
101
+
102
+ renderLatex();
103
+
104
+ if (message.info) {
105
+ let tooltipContent = '';
106
+ if (message.info.openai) {
107
+ tooltipContent = `prompt_tokens: ${message.info.prompt_tokens ?? 'N/A'}<br/>
108
+ completion_tokens: ${message.info.completion_tokens ?? 'N/A'}<br/>
109
+ total_tokens: ${message.info.total_tokens ?? 'N/A'}`;
110
+ } else {
111
+ tooltipContent = `response_token/s: ${
112
+ `${
113
+ Math.round(
114
+ ((message.info.eval_count ?? 0) / (message.info.eval_duration / 1000000000)) * 100
115
+ ) / 100
116
+ } tokens` ?? 'N/A'
117
+ }<br/>
118
+ prompt_token/s: ${
119
+ Math.round(
120
+ ((message.info.prompt_eval_count ?? 0) /
121
+ (message.info.prompt_eval_duration / 1000000000)) *
122
+ 100
123
+ ) / 100 ?? 'N/A'
124
+ } tokens<br/>
125
+ total_duration: ${
126
+ Math.round(((message.info.total_duration ?? 0) / 1000000) * 100) / 100 ??
127
+ 'N/A'
128
+ }ms<br/>
129
+ load_duration: ${
130
+ Math.round(((message.info.load_duration ?? 0) / 1000000) * 100) / 100 ?? 'N/A'
131
+ }ms<br/>
132
+ prompt_eval_count: ${message.info.prompt_eval_count ?? 'N/A'}<br/>
133
+ prompt_eval_duration: ${
134
+ Math.round(((message.info.prompt_eval_duration ?? 0) / 1000000) * 100) /
135
+ 100 ?? 'N/A'
136
+ }ms<br/>
137
+ eval_count: ${message.info.eval_count ?? 'N/A'}<br/>
138
+ eval_duration: ${
139
+ Math.round(((message.info.eval_duration ?? 0) / 1000000) * 100) / 100 ?? 'N/A'
140
+ }ms<br/>
141
+ approximate_total: ${approximateToHumanReadable(message.info.total_duration)}`;
142
+ }
143
+ tooltipInstance = tippy(`#info-${message.id}`, {
144
+ content: `<span class="text-xs" id="tooltip-${message.id}">${tooltipContent}</span>`,
145
+ allowHTML: true,
146
+ theme: 'dark',
147
+ arrow: false,
148
+ offset: [0, 4]
149
+ });
150
+ }
151
+ };
152
+
153
  const renderLatex = () => {
154
  let chatMessageElements = document
155
  .getElementById(`message-${message.id}`)
 
330
  editedContent = '';
331
 
332
  await tick();
333
+ renderStyling();
334
  };
335
 
336
  const cancelEditMessage = async () => {
337
  edit = false;
338
  editedContent = '';
339
  await tick();
340
+ renderStyling();
341
  };
342
 
343
  const generateImage = async (message) => {
 
362
  $: if (!edit) {
363
  (async () => {
364
  await tick();
365
+ renderStyling();
366
 
367
  await mermaid.run({
368
  querySelector: '.mermaid'
 
372
 
373
  onMount(async () => {
374
  await tick();
375
+ renderStyling();
376
 
377
  await mermaid.run({
378
  querySelector: '.mermaid'
 
420
  {/if}
421
 
422
  <div
423
+ class="prose chat-{message.role} w-full max-w-full dark:prose-invert prose-p:my-0 prose-img:my-1 prose-headings:my-1 prose-pre:my-0 prose-table:my-0 prose-blockquote:my-0 prose-ul:-my-2 prose-ol:-my-2 prose-li:-my-3 whitespace-pre-line"
424
  >
425
  <div>
426
  {#if (message?.statusHistory ?? [...(message?.status ? [message?.status] : [])]).length > 0}
 
841
  {/if}
842
 
843
  {#if message.info}
844
+ <Tooltip content={$i18n.t('Generation Info')} placement="bottom">
845
+ <button
846
+ class=" {isLastMessage
847
+ ? 'visible'
848
+ : 'invisible group-hover:visible'} p-1.5 hover:bg-black/5 dark:hover:bg-white/5 rounded-lg dark:hover:text-white hover:text-black transition whitespace-pre-wrap"
849
+ on:click={() => {
850
+ console.log(message);
851
+ }}
852
+ id="info-{message.id}"
853
+ >
854
+ <svg
855
+ xmlns="http://www.w3.org/2000/svg"
856
+ fill="none"
857
+ viewBox="0 0 24 24"
858
+ stroke-width="2.3"
859
+ stroke="currentColor"
860
+ class="w-4 h-4"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
861
  >
862
+ <path
863
+ stroke-linecap="round"
864
+ stroke-linejoin="round"
865
+ d="M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z"
866
+ />
867
+ </svg>
868
+ </button>
 
 
 
 
 
 
 
 
 
869
  </Tooltip>
870
  {/if}
871
 
src/lib/i18n/locales/ar-BH/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "متابعة الرد",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "تم نسخ عنوان URL للدردشة المشتركة إلى الحافظة",
139
  "Copy": "نسخ",
140
- "Copy Code": "",
141
  "Copy last code block": "انسخ كتلة التعليمات البرمجية الأخيرة",
142
  "Copy last response": "انسخ الرد الأخير",
143
  "Copy Link": "أنسخ الرابط",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "من اليمين إلى اليسار",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "حفظ",
 
134
  "Continue Response": "متابعة الرد",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "تم نسخ عنوان URL للدردشة المشتركة إلى الحافظة",
138
  "Copy": "نسخ",
 
139
  "Copy last code block": "انسخ كتلة التعليمات البرمجية الأخيرة",
140
  "Copy last response": "انسخ الرد الأخير",
141
  "Copy Link": "أنسخ الرابط",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "من اليمين إلى اليسار",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "حفظ",
src/lib/i18n/locales/bg-BG/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Продължи отговора",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Копирана е връзката за чат!",
139
  "Copy": "Копирай",
140
- "Copy Code": "",
141
  "Copy last code block": "Копиране на последен код блок",
142
  "Copy last response": "Копиране на последен отговор",
143
  "Copy Link": "Копиране на връзка",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Запис",
 
134
  "Continue Response": "Продължи отговора",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Копирана е връзката за чат!",
138
  "Copy": "Копирай",
 
139
  "Copy last code block": "Копиране на последен код блок",
140
  "Copy last response": "Копиране на последен отговор",
141
  "Copy Link": "Копиране на връзка",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Запис",
src/lib/i18n/locales/bn-BD/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "যাচাই করুন",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "শেয়ারকৃত কথা-ব্যবহারের URL ক্লিপবোর্ডে কপি করা হয়েছে!",
139
  "Copy": "অনুলিপি",
140
- "Copy Code": "",
141
  "Copy last code block": "সর্বশেষ কোড ব্লক কপি করুন",
142
  "Copy last response": "সর্বশেষ রেসপন্স কপি করুন",
143
  "Copy Link": "লিংক কপি করুন",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "রোজ পাইন",
502
  "Rosé Pine Dawn": "ভোরের রোজ পাইন",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "সংরক্ষণ",
 
134
  "Continue Response": "যাচাই করুন",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "শেয়ারকৃত কথা-ব্যবহারের URL ক্লিপবোর্ডে কপি করা হয়েছে!",
138
  "Copy": "অনুলিপি",
 
139
  "Copy last code block": "সর্বশেষ কোড ব্লক কপি করুন",
140
  "Copy last response": "সর্বশেষ রেসপন্স কপি করুন",
141
  "Copy Link": "লিংক কপি করুন",
 
499
  "Rosé Pine": "রোজ পাইন",
500
  "Rosé Pine Dawn": "ভোরের রোজ পাইন",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "সংরক্ষণ",
src/lib/i18n/locales/ca-ES/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Continuar la resposta",
135
  "Continue with {{provider}}": "Continuar amb {{provider}}",
136
  "Controls": "Controls",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "S'ha copiat l'URL compartida al porta-retalls!",
139
  "Copy": "Copiar",
140
- "Copy Code": "",
141
  "Copy last code block": "Copiar l'últim bloc de codi",
142
  "Copy last response": "Copiar l'última resposta",
143
  "Copy Link": "Copiar l'enllaç",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Albada Rosé Pine",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Executa Llama 2, Code Llama, i altres models. Personalitza i crea els teus propis models.",
506
  "Running": "S'està executant",
507
  "Save": "Desar",
 
134
  "Continue Response": "Continuar la resposta",
135
  "Continue with {{provider}}": "Continuar amb {{provider}}",
136
  "Controls": "Controls",
 
137
  "Copied shared chat URL to clipboard!": "S'ha copiat l'URL compartida al porta-retalls!",
138
  "Copy": "Copiar",
 
139
  "Copy last code block": "Copiar l'últim bloc de codi",
140
  "Copy last response": "Copiar l'última resposta",
141
  "Copy Link": "Copiar l'enllaç",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Albada Rosé Pine",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Executa Llama 2, Code Llama, i altres models. Personalitza i crea els teus propis models.",
503
  "Running": "S'està executant",
504
  "Save": "Desar",
src/lib/i18n/locales/ceb-PH/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "",
139
  "Copy": "",
140
- "Copy Code": "",
141
  "Copy last code block": "Kopyaha ang katapusang bloke sa code",
142
  "Copy last response": "Kopyaha ang kataposang tubag",
143
  "Copy Link": "",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Aube Pine Rosé",
503
  "RTL": "",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Tipigi",
 
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "",
138
  "Copy": "",
 
139
  "Copy last code block": "Kopyaha ang katapusang bloke sa code",
140
  "Copy last response": "Kopyaha ang kataposang tubag",
141
  "Copy Link": "",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Aube Pine Rosé",
501
  "RTL": "",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Tipigi",
src/lib/i18n/locales/de-DE/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Antwort fortsetzen",
135
  "Continue with {{provider}}": "Mit {{provider}} fortfahren",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Freigabelink in die Zwischenablage kopiert!",
139
  "Copy": "Kopieren",
140
- "Copy Code": "",
141
  "Copy last code block": "Letzten Codeblock kopieren",
142
  "Copy last response": "Letzte Antwort kopieren",
143
  "Copy Link": "Link kopieren",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "Läuft",
507
  "Save": "Speichern",
 
134
  "Continue Response": "Antwort fortsetzen",
135
  "Continue with {{provider}}": "Mit {{provider}} fortfahren",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Freigabelink in die Zwischenablage kopiert!",
138
  "Copy": "Kopieren",
 
139
  "Copy last code block": "Letzten Codeblock kopieren",
140
  "Copy last response": "Letzte Antwort kopieren",
141
  "Copy Link": "Link kopieren",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "Läuft",
504
  "Save": "Speichern",
src/lib/i18n/locales/dg-DG/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "",
139
  "Copy": "",
140
- "Copy Code": "",
141
  "Copy last code block": "Copy last code block",
142
  "Copy last response": "Copy last response",
143
  "Copy Link": "",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Save much wow",
 
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "",
138
  "Copy": "",
 
139
  "Copy last code block": "Copy last code block",
140
  "Copy last response": "Copy last response",
141
  "Copy Link": "",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Save much wow",
src/lib/i18n/locales/en-GB/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "",
139
  "Copy": "",
140
- "Copy Code": "",
141
  "Copy last code block": "",
142
  "Copy last response": "",
143
  "Copy Link": "",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "",
502
  "Rosé Pine Dawn": "",
503
  "RTL": "",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "",
 
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "",
138
  "Copy": "",
 
139
  "Copy last code block": "",
140
  "Copy last response": "",
141
  "Copy Link": "",
 
499
  "Rosé Pine": "",
500
  "Rosé Pine Dawn": "",
501
  "RTL": "",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "",
src/lib/i18n/locales/en-US/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "",
139
  "Copy": "",
140
- "Copy Code": "",
141
  "Copy last code block": "",
142
  "Copy last response": "",
143
  "Copy Link": "",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "",
502
  "Rosé Pine Dawn": "",
503
  "RTL": "",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "",
 
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "",
138
  "Copy": "",
 
139
  "Copy last code block": "",
140
  "Copy last response": "",
141
  "Copy Link": "",
 
499
  "Rosé Pine": "",
500
  "Rosé Pine Dawn": "",
501
  "RTL": "",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "",
src/lib/i18n/locales/es-ES/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Continuar Respuesta",
135
  "Continue with {{provider}}": "Continuar con {{provider}}",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "¡URL de chat compartido copiado al portapapeles!",
139
  "Copy": "Copiar",
140
- "Copy Code": "",
141
  "Copy last code block": "Copia el último bloque de código",
142
  "Copy last response": "Copia la última respuesta",
143
  "Copy Link": "Copiar enlace",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "Ejecutando",
507
  "Save": "Guardar",
 
134
  "Continue Response": "Continuar Respuesta",
135
  "Continue with {{provider}}": "Continuar con {{provider}}",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "¡URL de chat compartido copiado al portapapeles!",
138
  "Copy": "Copiar",
 
139
  "Copy last code block": "Copia el último bloque de código",
140
  "Copy last response": "Copia la última respuesta",
141
  "Copy Link": "Copiar enlace",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "Ejecutando",
504
  "Save": "Guardar",
src/lib/i18n/locales/fa-IR/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "ادامه پاسخ",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "URL چت به کلیپ بورد کپی شد!",
139
  "Copy": "کپی",
140
- "Copy Code": "",
141
  "Copy last code block": "کپی آخرین بلوک کد",
142
  "Copy last response": "کپی آخرین پاسخ",
143
  "Copy Link": "کپی لینک",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "ذخیره",
 
134
  "Continue Response": "ادامه پاسخ",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "URL چت به کلیپ بورد کپی شد!",
138
  "Copy": "کپی",
 
139
  "Copy last code block": "کپی آخرین بلوک کد",
140
  "Copy last response": "کپی آخرین پاسخ",
141
  "Copy Link": "کپی لینک",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "ذخیره",
src/lib/i18n/locales/fi-FI/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Jatka vastausta",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Jaettu keskustelulinkki kopioitu leikepöydälle!",
139
  "Copy": "Kopioi",
140
- "Copy Code": "",
141
  "Copy last code block": "Kopioi viimeisin koodilohko",
142
  "Copy last response": "Kopioi viimeisin vastaus",
143
  "Copy Link": "Kopioi linkki",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosee-mänty",
502
  "Rosé Pine Dawn": "Aamuinen Rosee-mänty",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Tallenna",
 
134
  "Continue Response": "Jatka vastausta",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Jaettu keskustelulinkki kopioitu leikepöydälle!",
138
  "Copy": "Kopioi",
 
139
  "Copy last code block": "Kopioi viimeisin koodilohko",
140
  "Copy last response": "Kopioi viimeisin vastaus",
141
  "Copy Link": "Kopioi linkki",
 
499
  "Rosé Pine": "Rosee-mänty",
500
  "Rosé Pine Dawn": "Aamuinen Rosee-mänty",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Tallenna",
src/lib/i18n/locales/fr-CA/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Continuer la réponse",
135
  "Continue with {{provider}}": "Continuer avec {{provider}}",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "URL du chat copiée dans le presse-papiers\u00a0!",
139
  "Copy": "Copie",
140
- "Copy Code": "",
141
  "Copy last code block": "Copier le dernier bloc de code",
142
  "Copy last response": "Copier la dernière réponse",
143
  "Copy Link": "Copier le lien",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Pin rosé",
502
  "Rosé Pine Dawn": "Aube de Pin Rosé",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "Courir",
507
  "Save": "Enregistrer",
 
134
  "Continue Response": "Continuer la réponse",
135
  "Continue with {{provider}}": "Continuer avec {{provider}}",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "URL du chat copiée dans le presse-papiers\u00a0!",
138
  "Copy": "Copie",
 
139
  "Copy last code block": "Copier le dernier bloc de code",
140
  "Copy last response": "Copier la dernière réponse",
141
  "Copy Link": "Copier le lien",
 
499
  "Rosé Pine": "Pin rosé",
500
  "Rosé Pine Dawn": "Aube de Pin Rosé",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "Courir",
504
  "Save": "Enregistrer",
src/lib/i18n/locales/fr-FR/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Continuer la réponse",
135
  "Continue with {{provider}}": "Continuer avec {{provider}}",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "URL du chat copiée dans le presse-papiers\u00a0!",
139
  "Copy": "Copie",
140
- "Copy Code": "",
141
  "Copy last code block": "Copier le dernier bloc de code",
142
  "Copy last response": "Copier la dernière réponse",
143
  "Copy Link": "Copier le lien",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Pin rosé",
502
  "Rosé Pine Dawn": "Aube de Pin Rosé",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "Courir",
507
  "Save": "Enregistrer",
 
134
  "Continue Response": "Continuer la réponse",
135
  "Continue with {{provider}}": "Continuer avec {{provider}}",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "URL du chat copiée dans le presse-papiers\u00a0!",
138
  "Copy": "Copie",
 
139
  "Copy last code block": "Copier le dernier bloc de code",
140
  "Copy last response": "Copier la dernière réponse",
141
  "Copy Link": "Copier le lien",
 
499
  "Rosé Pine": "Pin rosé",
500
  "Rosé Pine Dawn": "Aube de Pin Rosé",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "Courir",
504
  "Save": "Enregistrer",
src/lib/i18n/locales/he-IL/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "המשך תגובה",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "העתקת כתובת URL של צ'אט משותף ללוח!",
139
  "Copy": "העתק",
140
- "Copy Code": "",
141
  "Copy last code block": "העתק את בלוק הקוד האחרון",
142
  "Copy last response": "העתק את התגובה האחרונה",
143
  "Copy Link": "העתק קישור",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "שמור",
 
134
  "Continue Response": "המשך תגובה",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "העתקת כתובת URL של צ'אט משותף ללוח!",
138
  "Copy": "העתק",
 
139
  "Copy last code block": "העתק את בלוק הקוד האחרון",
140
  "Copy last response": "העתק את התגובה האחרונה",
141
  "Copy Link": "העתק קישור",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "שמור",
src/lib/i18n/locales/hi-IN/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "प्रतिक्रिया जारी रखें",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "साझा चैट URL को क्लिपबोर्ड पर कॉपी किया गया!",
139
  "Copy": "कॉपी",
140
- "Copy Code": "",
141
  "Copy last code block": "अंतिम कोड ब्लॉक कॉपी करें",
142
  "Copy last response": "अंतिम प्रतिक्रिया कॉपी करें",
143
  "Copy Link": "लिंक को कॉपी करें",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "रोसे पिन",
502
  "Rosé Pine Dawn": "रोसे पिन डेन",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "सहेजें",
 
134
  "Continue Response": "प्रतिक्रिया जारी रखें",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "साझा चैट URL को क्लिपबोर्ड पर कॉपी किया गया!",
138
  "Copy": "कॉपी",
 
139
  "Copy last code block": "अंतिम कोड ब्लॉक कॉपी करें",
140
  "Copy last response": "अंतिम प्रतिक्रिया कॉपी करें",
141
  "Copy Link": "लिंक को कॉपी करें",
 
499
  "Rosé Pine": "रोसे पिन",
500
  "Rosé Pine Dawn": "रोसे पिन डेन",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "सहेजें",
src/lib/i18n/locales/hr-HR/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Nastavi odgovor",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "URL dijeljenog razgovora kopiran u međuspremnik!",
139
  "Copy": "Kopiraj",
140
- "Copy Code": "",
141
  "Copy last code block": "Kopiraj zadnji blok koda",
142
  "Copy last response": "Kopiraj zadnji odgovor",
143
  "Copy Link": "Kopiraj vezu",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "Pokrenuto",
507
  "Save": "Spremi",
 
134
  "Continue Response": "Nastavi odgovor",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "URL dijeljenog razgovora kopiran u međuspremnik!",
138
  "Copy": "Kopiraj",
 
139
  "Copy last code block": "Kopiraj zadnji blok koda",
140
  "Copy last response": "Kopiraj zadnji odgovor",
141
  "Copy Link": "Kopiraj vezu",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "Pokrenuto",
504
  "Save": "Spremi",
src/lib/i18n/locales/id-ID/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Lanjutkan Tanggapan",
135
  "Continue with {{provider}}": "Lanjutkan dengan {{penyedia}}",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Menyalin URL obrolan bersama ke papan klip!",
139
  "Copy": "Menyalin",
140
- "Copy Code": "",
141
  "Copy last code block": "Salin blok kode terakhir",
142
  "Copy last response": "Salin tanggapan terakhir",
143
  "Copy Link": "Salin Tautan",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Pinus Rosé",
502
  "Rosé Pine Dawn": "Rosé Pine Fajar",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "Berjalan",
507
  "Save": "Simpan",
 
134
  "Continue Response": "Lanjutkan Tanggapan",
135
  "Continue with {{provider}}": "Lanjutkan dengan {{penyedia}}",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Menyalin URL obrolan bersama ke papan klip!",
138
  "Copy": "Menyalin",
 
139
  "Copy last code block": "Salin blok kode terakhir",
140
  "Copy last response": "Salin tanggapan terakhir",
141
  "Copy Link": "Salin Tautan",
 
499
  "Rosé Pine": "Pinus Rosé",
500
  "Rosé Pine Dawn": "Rosé Pine Fajar",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "Berjalan",
504
  "Save": "Simpan",
src/lib/i18n/locales/it-IT/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Continua risposta",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "URL della chat condivisa copiato negli appunti!",
139
  "Copy": "Copia",
140
- "Copy Code": "",
141
  "Copy last code block": "Copia ultimo blocco di codice",
142
  "Copy last response": "Copia ultima risposta",
143
  "Copy Link": "Copia link",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Salva",
 
134
  "Continue Response": "Continua risposta",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "URL della chat condivisa copiato negli appunti!",
138
  "Copy": "Copia",
 
139
  "Copy last code block": "Copia ultimo blocco di codice",
140
  "Copy last response": "Copia ultima risposta",
141
  "Copy Link": "Copia link",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Salva",
src/lib/i18n/locales/ja-JP/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "続きの応答",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "共有チャットURLをクリップボードにコピーしました!",
139
  "Copy": "コピー",
140
- "Copy Code": "",
141
  "Copy last code block": "最後のコードブロックをコピー",
142
  "Copy last response": "最後の応答をコピー",
143
  "Copy Link": "リンクをコピー",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "保存",
 
134
  "Continue Response": "続きの応答",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "共有チャットURLをクリップボードにコピーしました!",
138
  "Copy": "コピー",
 
139
  "Copy last code block": "最後のコードブロックをコピー",
140
  "Copy last response": "最後の応答をコピー",
141
  "Copy Link": "リンクをコピー",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "保存",
src/lib/i18n/locales/ka-GE/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "პასუხის გაგრძელება",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "ყავს ჩათის URL-ი კლიპბორდში!",
139
  "Copy": "კოპირება",
140
- "Copy Code": "",
141
  "Copy last code block": "ბოლო ბლოკის კოპირება",
142
  "Copy last response": "ბოლო პასუხის კოპირება",
143
  "Copy Link": "კოპირება",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "ვარდისფერი ფიჭვის ხე",
502
  "Rosé Pine Dawn": "ვარდისფერი ფიჭვის გარიჟრაჟი",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "შენახვა",
 
134
  "Continue Response": "პასუხის გაგრძელება",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "ყავს ჩათის URL-ი კლიპბორდში!",
138
  "Copy": "კოპირება",
 
139
  "Copy last code block": "ბოლო ბლოკის კოპირება",
140
  "Copy last response": "ბოლო პასუხის კოპირება",
141
  "Copy Link": "კოპირება",
 
499
  "Rosé Pine": "ვარდისფერი ფიჭვის ხე",
500
  "Rosé Pine Dawn": "ვარდისფერი ფიჭვის გარიჟრაჟი",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "შენახვა",
src/lib/i18n/locales/ko-KR/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "대화 계속",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "공유 채팅 URL이 클립보드에 복사되었습니다!",
139
  "Copy": "복사",
140
- "Copy Code": "",
141
  "Copy last code block": "마지막 코드 블록 복사",
142
  "Copy last response": "마지막 응답 복사",
143
  "Copy Link": "링크 복사",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "실행 중",
507
  "Save": "저장",
 
134
  "Continue Response": "대화 계속",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "공유 채팅 URL이 클립보드에 복사되었습니다!",
138
  "Copy": "복사",
 
139
  "Copy last code block": "마지막 코드 블록 복사",
140
  "Copy last response": "마지막 응답 복사",
141
  "Copy Link": "링크 복사",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "실행 중",
504
  "Save": "저장",
src/lib/i18n/locales/lt-LT/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Tęsti atsakymą",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Nukopijavote pokalbio nuorodą",
139
  "Copy": "Kopijuoti",
140
- "Copy Code": "",
141
  "Copy last code block": "Kopijuoti paskutinį kodo bloką",
142
  "Copy last response": "Kopijuoti paskutinį atsakymą",
143
  "Copy Link": "Kopijuoti nuorodą",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Išsaugoti",
 
134
  "Continue Response": "Tęsti atsakymą",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Nukopijavote pokalbio nuorodą",
138
  "Copy": "Kopijuoti",
 
139
  "Copy last code block": "Kopijuoti paskutinį kodo bloką",
140
  "Copy last response": "Kopijuoti paskutinį atsakymą",
141
  "Copy Link": "Kopijuoti nuorodą",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Išsaugoti",
src/lib/i18n/locales/ms-MY/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Teruskan Respons",
135
  "Continue with {{provider}}": "Teruskan dengan {{provider}}",
136
  "Controls": "Kawalan",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Menyalin URL sembang kongsi ke papan klip",
139
  "Copy": "Salin",
140
- "Copy Code": "",
141
  "Copy last code block": "Salin Blok Kod Terakhir",
142
  "Copy last response": "Salin Respons Terakhir",
143
  "Copy Link": "Salin Pautan",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Jalankan Llama 2, Code Llama dan model lain. Sesuaikan dan buat sendiri.",
506
  "Running": "Sedang dijalankan",
507
  "Save": "Simpan",
 
134
  "Continue Response": "Teruskan Respons",
135
  "Continue with {{provider}}": "Teruskan dengan {{provider}}",
136
  "Controls": "Kawalan",
 
137
  "Copied shared chat URL to clipboard!": "Menyalin URL sembang kongsi ke papan klip",
138
  "Copy": "Salin",
 
139
  "Copy last code block": "Salin Blok Kod Terakhir",
140
  "Copy last response": "Salin Respons Terakhir",
141
  "Copy Link": "Salin Pautan",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Jalankan Llama 2, Code Llama dan model lain. Sesuaikan dan buat sendiri.",
503
  "Running": "Sedang dijalankan",
504
  "Save": "Simpan",
src/lib/i18n/locales/nb-NO/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Fortsett svar",
135
  "Continue with {{provider}}": "Fortsett med {{provider}}",
136
  "Controls": "Kontroller",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Kopiert delt chat-URL til utklippstavlen!",
139
  "Copy": "Kopier",
140
- "Copy Code": "",
141
  "Copy last code block": "Kopier siste kodeblokk",
142
  "Copy last response": "Kopier siste svar",
143
  "Copy Link": "Kopier lenke",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Kjør Llama 2, Code Llama og andre modeller. Tilpass og lag egne versjoner.",
506
  "Running": "Kjører",
507
  "Save": "Lagre",
 
134
  "Continue Response": "Fortsett svar",
135
  "Continue with {{provider}}": "Fortsett med {{provider}}",
136
  "Controls": "Kontroller",
 
137
  "Copied shared chat URL to clipboard!": "Kopiert delt chat-URL til utklippstavlen!",
138
  "Copy": "Kopier",
 
139
  "Copy last code block": "Kopier siste kodeblokk",
140
  "Copy last response": "Kopier siste svar",
141
  "Copy Link": "Kopier lenke",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Kjør Llama 2, Code Llama og andre modeller. Tilpass og lag egne versjoner.",
503
  "Running": "Kjører",
504
  "Save": "Lagre",
src/lib/i18n/locales/nl-NL/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Doorgaan met Antwoord",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "URL van gedeelde gesprekspagina gekopieerd naar klembord!",
139
  "Copy": "Kopieer",
140
- "Copy Code": "",
141
  "Copy last code block": "Kopieer laatste code blok",
142
  "Copy last response": "Kopieer laatste antwoord",
143
  "Copy Link": "Kopieer Link",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Opslaan",
 
134
  "Continue Response": "Doorgaan met Antwoord",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "URL van gedeelde gesprekspagina gekopieerd naar klembord!",
138
  "Copy": "Kopieer",
 
139
  "Copy last code block": "Kopieer laatste code blok",
140
  "Copy last response": "Kopieer laatste antwoord",
141
  "Copy Link": "Kopieer Link",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Opslaan",
src/lib/i18n/locales/pa-IN/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "ਜਵਾਬ ਜਾਰੀ ਰੱਖੋ",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "ਸਾਂਝੇ ਕੀਤੇ ਗੱਲਬਾਤ URL ਨੂੰ ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਕਰ ਦਿੱਤਾ!",
139
  "Copy": "ਕਾਪੀ ਕਰੋ",
140
- "Copy Code": "",
141
  "Copy last code block": "ਆਖਰੀ ਕੋਡ ਬਲਾਕ ਨੂੰ ਕਾਪੀ ਕਰੋ",
142
  "Copy last response": "ਆਖਰੀ ਜਵਾਬ ਨੂੰ ਕਾਪੀ ਕਰੋ",
143
  "Copy Link": "ਲਿੰਕ ਕਾਪੀ ਕਰੋ",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "ਰੋਜ਼ ਪਾਈਨ",
502
  "Rosé Pine Dawn": "ਰੋਜ਼ ਪਾਈਨ ਡਾਨ",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "ਸੰਭਾਲੋ",
 
134
  "Continue Response": "ਜਵਾਬ ਜਾਰੀ ਰੱਖੋ",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "ਸਾਂਝੇ ਕੀਤੇ ਗੱਲਬਾਤ URL ਨੂੰ ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਕਰ ਦਿੱਤਾ!",
138
  "Copy": "ਕਾਪੀ ਕਰੋ",
 
139
  "Copy last code block": "ਆਖਰੀ ਕੋਡ ਬਲਾਕ ਨੂੰ ਕਾਪੀ ਕਰੋ",
140
  "Copy last response": "ਆਖਰੀ ਜਵਾਬ ਨੂੰ ਕਾਪੀ ਕਰੋ",
141
  "Copy Link": "ਲਿੰਕ ਕਾਪੀ ਕਰੋ",
 
499
  "Rosé Pine": "ਰੋਜ਼ ਪਾਈਨ",
500
  "Rosé Pine Dawn": "ਰੋਜ਼ ਪਾਈਨ ਡਾਨ",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "ਸੰਭਾਲੋ",
src/lib/i18n/locales/pl-PL/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Kontynuuj odpowiedź",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Skopiowano URL czatu do schowka!",
139
  "Copy": "Kopiuj",
140
- "Copy Code": "",
141
  "Copy last code block": "Skopiuj ostatni blok kodu",
142
  "Copy last response": "Skopiuj ostatnią odpowiedź",
143
  "Copy Link": "Kopiuj link",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RLT",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Zapisz",
 
134
  "Continue Response": "Kontynuuj odpowiedź",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Skopiowano URL czatu do schowka!",
138
  "Copy": "Kopiuj",
 
139
  "Copy last code block": "Skopiuj ostatni blok kodu",
140
  "Copy last response": "Skopiuj ostatnią odpowiedź",
141
  "Copy Link": "Kopiuj link",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RLT",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Zapisz",
src/lib/i18n/locales/pt-BR/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Continuar Resposta",
135
  "Continue with {{provider}}": "Continuar com {{provider}}",
136
  "Controls": "Controles",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "URL de chat compartilhado copiado para a área de transferência!",
139
  "Copy": "Copiar",
140
- "Copy Code": "",
141
  "Copy last code block": "Copiar último bloco de código",
142
  "Copy last response": "Copiar última resposta",
143
  "Copy Link": "Copiar Link",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Execute Llama 2, Code Llama e outros modelos. Personalize e crie os seus próprios.",
506
  "Running": "Executando",
507
  "Save": "Salvar",
 
134
  "Continue Response": "Continuar Resposta",
135
  "Continue with {{provider}}": "Continuar com {{provider}}",
136
  "Controls": "Controles",
 
137
  "Copied shared chat URL to clipboard!": "URL de chat compartilhado copiado para a área de transferência!",
138
  "Copy": "Copiar",
 
139
  "Copy last code block": "Copiar último bloco de código",
140
  "Copy last response": "Copiar última resposta",
141
  "Copy Link": "Copiar Link",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Execute Llama 2, Code Llama e outros modelos. Personalize e crie os seus próprios.",
503
  "Running": "Executando",
504
  "Save": "Salvar",
src/lib/i18n/locales/pt-PT/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Continuar resposta",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "URL de Conversa partilhado copiada com sucesso!",
139
  "Copy": "Copiar",
140
- "Copy Code": "",
141
  "Copy last code block": "Copiar último bloco de código",
142
  "Copy last response": "Copiar última resposta",
143
  "Copy Link": "Copiar link",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "A correr",
507
  "Save": "Guardar",
 
134
  "Continue Response": "Continuar resposta",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "URL de Conversa partilhado copiada com sucesso!",
138
  "Copy": "Copiar",
 
139
  "Copy last code block": "Copiar último bloco de código",
140
  "Copy last response": "Copiar última resposta",
141
  "Copy Link": "Copiar link",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "A correr",
504
  "Save": "Guardar",
src/lib/i18n/locales/ro-RO/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Continuă Răspunsul",
135
  "Continue with {{provider}}": "Continuă cu {{provider}}",
136
  "Controls": "Controale",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "URL-ul conversației partajate a fost copiat în clipboard!",
139
  "Copy": "Copiază",
140
- "Copy Code": "",
141
  "Copy last code block": "Copiază ultimul bloc de cod",
142
  "Copy last response": "Copiază ultimul răspuns",
143
  "Copy Link": "Copiază Link",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Rulați Llama 2, Code Llama și alte modele. Personalizați și creați-vă propriile modele.",
506
  "Running": "Rulare",
507
  "Save": "Salvează",
 
134
  "Continue Response": "Continuă Răspunsul",
135
  "Continue with {{provider}}": "Continuă cu {{provider}}",
136
  "Controls": "Controale",
 
137
  "Copied shared chat URL to clipboard!": "URL-ul conversației partajate a fost copiat în clipboard!",
138
  "Copy": "Copiază",
 
139
  "Copy last code block": "Copiază ultimul bloc de cod",
140
  "Copy last response": "Copiază ultimul răspuns",
141
  "Copy Link": "Copiază Link",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Rulați Llama 2, Code Llama și alte modele. Personalizați și creați-vă propriile modele.",
503
  "Running": "Rulare",
504
  "Save": "Salvează",
src/lib/i18n/locales/ru-RU/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Продолжить ответ",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Копирование общей ссылки чат в буфер обмена!",
139
  "Copy": "Копировать",
140
- "Copy Code": "",
141
  "Copy last code block": "Копировать последний блок кода",
142
  "Copy last response": "Копировать последний ответ",
143
  "Copy Link": "Копировать ссылку",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Розовое сосновое дерево",
502
  "Rosé Pine Dawn": "Розовое сосновое дерево рассвет",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Сохранить",
 
134
  "Continue Response": "Продолжить ответ",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Копирование общей ссылки чат в буфер обмена!",
138
  "Copy": "Копировать",
 
139
  "Copy last code block": "Копировать последний блок кода",
140
  "Copy last response": "Копировать последний ответ",
141
  "Copy Link": "Копировать ссылку",
 
499
  "Rosé Pine": "Розовое сосновое дерево",
500
  "Rosé Pine Dawn": "Розовое сосновое дерево рассвет",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Сохранить",
src/lib/i18n/locales/sr-RS/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Настави одговор",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Адреса дељеног ћаскања ископирана у оставу!",
139
  "Copy": "Копирај",
140
- "Copy Code": "",
141
  "Copy last code block": "Копирај последњи блок кода",
142
  "Copy last response": "Копирај последњи одговор",
143
  "Copy Link": "Копирај везу",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "ДНЛ",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "Сачувај",
 
134
  "Continue Response": "Настави одговор",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Адреса дељеног ћаскања ископирана у оставу!",
138
  "Copy": "Копирај",
 
139
  "Copy last code block": "Копирај последњи блок кода",
140
  "Copy last response": "Копирај последњи одговор",
141
  "Copy Link": "Копирај везу",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "ДНЛ",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "Сачувај",
src/lib/i18n/locales/sv-SE/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Fortsätt svar",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Kopierad delad chatt-URL till urklipp!",
139
  "Copy": "Kopiera",
140
- "Copy Code": "",
141
  "Copy last code block": "Kopiera sista kodblock",
142
  "Copy last response": "Kopiera sista svar",
143
  "Copy Link": "Kopiera länk",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "Kör",
507
  "Save": "Spara",
 
134
  "Continue Response": "Fortsätt svar",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Kopierad delad chatt-URL till urklipp!",
138
  "Copy": "Kopiera",
 
139
  "Copy last code block": "Kopiera sista kodblock",
140
  "Copy last response": "Kopiera sista svar",
141
  "Copy Link": "Kopiera länk",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "Kör",
504
  "Save": "Spara",
src/lib/i18n/locales/th-TH/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "ตอบสนองต่อไป",
135
  "Continue with {{provider}}": "ดำเนินการต่อด้วย {{provider}}",
136
  "Controls": "การควบคุม",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "คัดลอก URL แชทที่แชร์ไปยังคลิปบอร์ดแล้ว!",
139
  "Copy": "คัดลอก",
140
- "Copy Code": "",
141
  "Copy last code block": "คัดลอกบล็อกโค้ดสุดท้าย",
142
  "Copy last response": "คัดลอกการตอบสนองล่าสุด",
143
  "Copy Link": "คัดลอกลิงก์",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "รัน Llama 2, Code Llama และโมเดลอื่นๆ ปรับแต่งและสร้างของคุณเอง",
506
  "Running": "กำลังทำงาน",
507
  "Save": "บันทึก",
 
134
  "Continue Response": "ตอบสนองต่อไป",
135
  "Continue with {{provider}}": "ดำเนินการต่อด้วย {{provider}}",
136
  "Controls": "การควบคุม",
 
137
  "Copied shared chat URL to clipboard!": "คัดลอก URL แชทที่แชร์ไปยังคลิปบอร์ดแล้ว!",
138
  "Copy": "คัดลอก",
 
139
  "Copy last code block": "คัดลอกบล็อกโค้ดสุดท้าย",
140
  "Copy last response": "คัดลอกการตอบสนองล่าสุด",
141
  "Copy Link": "คัดลอกลิงก์",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "รัน Llama 2, Code Llama และโมเดลอื่นๆ ปรับแต่งและสร้างของคุณเอง",
503
  "Running": "กำลังทำงาน",
504
  "Save": "บันทึก",
src/lib/i18n/locales/tk-TW/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "",
139
  "Copy": "",
140
- "Copy Code": "",
141
  "Copy last code block": "",
142
  "Copy last response": "",
143
  "Copy Link": "",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "",
502
  "Rosé Pine Dawn": "",
503
  "RTL": "",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "",
507
  "Save": "",
 
134
  "Continue Response": "",
135
  "Continue with {{provider}}": "",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "",
138
  "Copy": "",
 
139
  "Copy last code block": "",
140
  "Copy last response": "",
141
  "Copy Link": "",
 
499
  "Rosé Pine": "",
500
  "Rosé Pine Dawn": "",
501
  "RTL": "",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "",
504
  "Save": "",
src/lib/i18n/locales/tr-TR/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Yanıta Devam Et",
135
  "Continue with {{provider}}": "{{provider}} ile devam et",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Paylaşılan sohbet URL'si panoya kopyalandı!",
139
  "Copy": "Kopyala",
140
- "Copy Code": "",
141
  "Copy last code block": "Son kod bloğunu kopyala",
142
  "Copy last response": "Son yanıtı kopyala",
143
  "Copy Link": "Bağlantıyı Kopyala",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
506
  "Running": "Çalışıyor",
507
  "Save": "Kaydet",
 
134
  "Continue Response": "Yanıta Devam Et",
135
  "Continue with {{provider}}": "{{provider}} ile devam et",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Paylaşılan sohbet URL'si panoya kopyalandı!",
138
  "Copy": "Kopyala",
 
139
  "Copy last code block": "Son kod bloğunu kopyala",
140
  "Copy last response": "Son yanıtı kopyala",
141
  "Copy Link": "Bağlantıyı Kopyala",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "",
503
  "Running": "Çalışıyor",
504
  "Save": "Kaydet",
src/lib/i18n/locales/uk-UA/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Продовжити відповідь",
135
  "Continue with {{provider}}": "Продовжити з {{provider}}",
136
  "Controls": "Керування",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Скопійовано URL-адресу спільного чату в буфер обміну!",
139
  "Copy": "Копіювати",
140
- "Copy Code": "",
141
  "Copy last code block": "Копіювати останній блок коду",
142
  "Copy last response": "Копіювати останню відповідь",
143
  "Copy Link": "Копіювати посилання",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Запустіть Llama 2, Code Llama та інші моделі. Налаштуйте та створіть власну.",
506
  "Running": "Виконується",
507
  "Save": "Зберегти",
 
134
  "Continue Response": "Продовжити відповідь",
135
  "Continue with {{provider}}": "Продовжити з {{provider}}",
136
  "Controls": "Керування",
 
137
  "Copied shared chat URL to clipboard!": "Скопійовано URL-адресу спільного чату в буфер обміну!",
138
  "Copy": "Копіювати",
 
139
  "Copy last code block": "Копіювати останній блок коду",
140
  "Copy last response": "Копіювати останню відповідь",
141
  "Copy Link": "Копіювати посилання",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Запустіть Llama 2, Code Llama та інші моделі. Налаштуйте та створіть власну.",
503
  "Running": "Виконується",
504
  "Save": "Зберегти",
src/lib/i18n/locales/vi-VN/translation.json CHANGED
@@ -134,10 +134,8 @@
134
  "Continue Response": "Tiếp tục trả lời",
135
  "Continue with {{provider}}": "Tiếp tục với {{provider}}",
136
  "Controls": "",
137
- "Copied": "",
138
  "Copied shared chat URL to clipboard!": "Đã sao chép link chia sẻ trò chuyện vào clipboard!",
139
  "Copy": "Sao chép",
140
- "Copy Code": "",
141
  "Copy last code block": "Sao chép khối mã cuối cùng",
142
  "Copy last response": "Sao chép phản hồi cuối cùng",
143
  "Copy Link": "Sao chép link",
@@ -501,7 +499,6 @@
501
  "Rosé Pine": "Rosé Pine",
502
  "Rosé Pine Dawn": "Rosé Pine Dawn",
503
  "RTL": "RTL",
504
- "Run": "",
505
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Chạy Llama 2, Code Llama và các mô hình khác. Tùy chỉnh hoặc mô hình riêng của bạn.",
506
  "Running": "Đang chạy",
507
  "Save": "Lưu",
 
134
  "Continue Response": "Tiếp tục trả lời",
135
  "Continue with {{provider}}": "Tiếp tục với {{provider}}",
136
  "Controls": "",
 
137
  "Copied shared chat URL to clipboard!": "Đã sao chép link chia sẻ trò chuyện vào clipboard!",
138
  "Copy": "Sao chép",
 
139
  "Copy last code block": "Sao chép khối mã cuối cùng",
140
  "Copy last response": "Sao chép phản hồi cuối cùng",
141
  "Copy Link": "Sao chép link",
 
499
  "Rosé Pine": "Rosé Pine",
500
  "Rosé Pine Dawn": "Rosé Pine Dawn",
501
  "RTL": "RTL",
 
502
  "Run Llama 2, Code Llama, and other models. Customize and create your own.": "Chạy Llama 2, Code Llama và các mô hình khác. Tùy chỉnh hoặc mô hình riêng của bạn.",
503
  "Running": "Đang chạy",
504
  "Save": "Lưu",