Skip to content

Commit de0847b

Browse files
Merge branch 'drawdb-io:main' into rtl-fix
2 parents 5ec54e2 + 318ed9a commit de0847b

File tree

8 files changed

+251
-13
lines changed

8 files changed

+251
-13
lines changed

src/i18n/i18n.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import { hu, hungarian } from "./locales/hu";
2424
import { id, indonesian } from "./locales/id";
2525
import {te, telugu} from "./locales/te";
2626
import { tm ,tamil } from "./locales/tm";
27+
import { gu, gujarati } from "./locales/gu";
2728

2829
export const languages = [
2930
english,
@@ -48,7 +49,8 @@ export const languages = [
4849
hungarian,
4950
indonesian,
5051
telugu,
51-
tamil
52+
tamil,
53+
gujarati
5254
].sort((a, b) => a.name.localeCompare(b.name));
5355

5456
i18n
@@ -84,6 +86,7 @@ i18n
8486
id,
8587
te,
8688
tm,
89+
gu
8790
},
8891
});
8992

src/i18n/locales/gu.js

Lines changed: 218 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,218 @@
1+
const gujarati = {
2+
name: "Gujarati",
3+
native_name: "ગુજરાતી",
4+
code: "gu",
5+
};
6+
7+
const gu = {
8+
translation: {
9+
report_bug: "બગ રિપોર્ટ કરો",
10+
import: "આયાત",
11+
file: "ફાઇલ",
12+
new: "નવું",
13+
new_window: "નવું વિંડો",
14+
open: "ખોલો",
15+
save: "સેવ",
16+
save_as: "સેવ તરીકે",
17+
save_as_template: "ટેમ્પલેટ તરીકે સેવ કરો",
18+
template_saved: "ટેમ્પલેટ સેવ થઇ ગયું!",
19+
rename: "નામ બદલો",
20+
delete_diagram: "ડાયાગ્રામ કાઢી નાંખો",
21+
are_you_sure_delete_diagram:
22+
"શું તમે ખરેખર આ ડાયાગ્રામ કાઢી નાંખવા માંગો છો? આ ક્રિયા અપરિવર્તનીય છે.",
23+
oops_smth_went_wrong: "અરે! કઈક ખોટું થઇ ગયું.",
24+
import_diagram: "ડાયાગ્રામ આયાત કરો",
25+
import_from_source: "SQL થી આયાત કરો",
26+
export_as: "રૂપે નિકાસ કરો",
27+
export_source: "SQL નિકાસ કરો",
28+
models: "મોડેલ્સ",
29+
exit: "બહાર નીકળો",
30+
edit: "સંપાદિત કરો",
31+
undo: "અનડૂ",
32+
redo: "રીડૂ",
33+
clear: "સાફ કરો",
34+
are_you_sure_clear:
35+
"શું તમે ખરેખર આ ડાયાગ્રામ સાફ કરવા માંગો છો? આ અપરિવર્તનીય છે.",
36+
cut: "કાપો",
37+
copy: "કૉપિ કરો",
38+
paste: "પેસ્ટ કરો",
39+
duplicate: "નકલ કરો",
40+
delete: "કાઢી નાંખો",
41+
copy_as_image: "ચિત્ર તરીકે નકલ કરો",
42+
view: "દ્રશ્ય",
43+
header: "મેનુબાર",
44+
sidebar: "સાઇડબાર",
45+
issues: "સમસ્યાઓ",
46+
presentation_mode: "પ્રસ્તુતિ સ્થિતિ",
47+
strict_mode: "સખત સ્થિતિ",
48+
field_details: "ફિલ્ડ વિગતો",
49+
reset_view: "દ્રશ્ય ફરીથી સેટ કરો",
50+
show_grid: "ગ્રિડ બતાવો",
51+
show_cardinality: "કાર્ડિનાલિટી બતાવો",
52+
theme: "થીમ",
53+
light: "પ્રકાશ",
54+
dark: "અંધકાર",
55+
zoom_in: "ઝૂમ ઇન",
56+
zoom_out: "ઝૂમ આઉટ",
57+
fullscreen: "પૂર્ણસ્ક્રીન",
58+
settings: "સેટિંગ્સ",
59+
show_timeline: "ટાઇમલાઇન બતાવો",
60+
autosave: "આટોસેવ",
61+
panning: "પેનિંગ",
62+
table_width: "ટેબલની પહોળાઈ",
63+
language: "ભાષા",
64+
flush_storage: "સ્ટોરેજ સાફ કરો",
65+
are_you_sure_flush_storage:
66+
"શું તમે ખરેખર સ્ટોરેજ સાફ કરવા માંગો છો? આ તમામ ડાયાગ્રામ અને કસ્ટમ ટેમ્પલેટ્સને હટાવી નાખશે.",
67+
storage_flushed: "સ્ટોરેજ સાફ કરાયું",
68+
help: "મદદ",
69+
shortcuts: "શૉર્ટકટ્સ",
70+
ask_on_discord: "અમને Discord પર પૂછો",
71+
feedback: "પ્રતિસાદ",
72+
no_changes: "કોઈ ફેરફાર નથી",
73+
loading: "લોડ થઇ રહ્યું છે...",
74+
last_saved: "છેલ્લે સેવ કરેલું",
75+
saving: "સેવ થઇ રહ્યું છે...",
76+
failed_to_save: "સેવ કરવામાં નિષ્ફળ",
77+
fit_window_reset: "વિંડો ફિટ કરો / ફરીથી સેટ કરો",
78+
zoom: "ઝૂમ",
79+
add_table: "ટેબલ ઉમેરો",
80+
add_area: "વિસ્તાર ઉમેરો",
81+
add_note: "નોંધ ઉમેરો",
82+
add_type: "પ્રકાર ઉમેરો",
83+
to_do: "કરવું",
84+
tables: "ટેબલ્સ",
85+
relationships: "સંબંધો",
86+
subject_areas: "વિષય ક્ષેત્રો",
87+
notes: "નોંધો",
88+
types: "પ્રકાર",
89+
search: "શોધો...",
90+
no_tables: "કોઈ ટેબલ્સ નથી",
91+
no_tables_text: "તમારું ડાયાગ્રામ બનાવવાનું શરૂ કરો!",
92+
no_relationships: "કોઈ સંબંધો નથી",
93+
no_relationships_text: "ફિલ્ડ્સને કનેક્ટ કરવા માટે ખેંચો અને સંબંધો બનાવો!",
94+
no_subject_areas: "કોઈ વિષય ક્ષેત્રો નથી",
95+
no_subject_areas_text: "વિષય ક્ષેત્રોમાં ટેબલ્સને ગ્રૂપ કરો!",
96+
no_notes: "કોઈ નોંધો નથી",
97+
no_notes_text: "વધારાની માહિતી રેકોર્ડ કરવા માટે નોંધોનો ઉપયોગ કરો",
98+
no_types: "કોઈ પ્રકાર નથી",
99+
no_types_text: "તમારા પોતાના કસ્ટમ ડેટા પ્રકારો બનાવો",
100+
no_issues: "કોઈ સમસ્યાઓ મળી નથી.",
101+
strict_mode_is_on_no_issues:
102+
"સખત સ્થિતિ બંધ છે એટલે કોઈ સમસ્યાઓ બતાવવામાં આવશે નહીં.",
103+
name: "નામ",
104+
type: "પ્રકાર",
105+
null: "Null",
106+
not_null: "નોટ null",
107+
primary: "મુખ્ય",
108+
unique: "અનન્ય",
109+
autoincrement: "સ્વયં વધારો",
110+
default_value: "મૂળ્ય",
111+
check: "ચેક અભિવ્યક્તિ",
112+
this_will_appear_as_is: "*આ જનરેટ થયેલ સ્ક્રિપ્ટમાં જેમ છે તેમ દેખાશે.",
113+
comment: "ટિપ્પણી",
114+
add_field: "ફિલ્ડ ઉમેરો",
115+
values: "મૂલ્યો",
116+
size: "કદ",
117+
precision: "પ્રમાણ",
118+
set_precision: "પ્રમાણ સેટ કરો: (કદ, ડિજિટ્સ)",
119+
use_for_batch_input: "બેચ ઇનપુટ માટે Use ,",
120+
indices: "ઇન્ડાયસીસ",
121+
add_index: "ઇન્ડેક્સ ઉમેરો",
122+
select_fields: "ફિલ્ડ્સ પસંદ કરો",
123+
title: "શીર્ષક",
124+
not_set: "સેટ નથી",
125+
foreign: "વિદેશી",
126+
cardinality: "કાર્ડિનાલિટી",
127+
on_update: "અપડેટ પર",
128+
on_delete: "કાઢી નાંખવા પર",
129+
swap: "સ્વેપ",
130+
one_to_one: "એકથી એક",
131+
one_to_many: "એકથી ઘણાં",
132+
many_to_one: "ઘણાંથી એક",
133+
content: "વિષયવસ્તુ",
134+
types_info:
135+
"આ સુવિધા object-relational DBMS જેમ કે PostgreSQL માટે છે.\nજો MySQL અથવા MariaDB માટે ઉપયોગમાં લેવામાં આવે છે, તો સંબંધિત json માન્યતા ચકાસણી સાથે એક JSON પ્રકાર જનરેટ થશે.\nજો SQLite માટે ઉપયોગમાં લેવામાં આવે છે તો તેને BLOBમાં રૂપાંતરિત કરવામાં આવશે.\nજો MSSQL માટે ઉપયોગમાં લેવામાં આવે છે તો પહેલા ફિલ્ડ માટે એક પ્રકાર ઉપનામ જનરેટ થશે.",
136+
table_deleted: "ટેબલ કાઢી નાખી",
137+
area_deleted: "વિસ્તાર કાઢી નાખ્યો",
138+
note_deleted: "નોંધ કાઢી નાખી",
139+
relationship_deleted: "સંબંધ કાઢી નાખ્યો",
140+
type_deleted: "પ્રકાર કાઢી નાખ્યો",
141+
cannot_connect: "કનેક્ટ કરી શકતા નથી, કોલમના પ્રકારો અલગ-અલગ છે",
142+
copied_to_clipboard: "ક્લિપબોર્ડ પર કૉપિ કર્યું",
143+
create_new_diagram: "નવું ડાયાગ્રામ બનાવો",
144+
cancel: "રદ કરો",
145+
open_diagram: "ડાયાગ્રામ ખોલો",
146+
rename_diagram: "ડાયાગ્રામનું નામ બદલો",
147+
export: "નિકાસ",
148+
export_image: "ચિત્ર નિકાસ કરો",
149+
create: "બનાવો",
150+
confirm: "પુષ્ટિ કરો",
151+
last_modified: "છેલ્લે સુધારેલા",
152+
drag_and_drop_files: "ફાઇલને અહીં ખેંચો અને છોડો અથવા અપલોડ કરવા માટે ક્લિક કરો.",
153+
support_json_and_ddb: "JSON અને DDB ફાઇલો સપોર્ટેડ છે",
154+
upload_sql_to_generate_diagrams:
155+
"તમારી ટેબલ અને કોલમને આપમેળે જનરેટ કરવા માટે SQL ફાઇલ અપલોડ કરો.",
156+
overwrite_existing_diagram: "મોજુદા ડાયાગ્રામને ઓવરરાઈટ કરો",
157+
only_mysql_supported:
158+
"*હાલમાં ફક્ત MySQL સ્ક્રિપ્ટ્સ લોડ કરવા સપોર્ટેડ છે.",
159+
blank: "ખાલી",
160+
filename: "ફાઇલનામ",
161+
table_w_no_name: "નામ વિના ટેબલ ઘોષિત",
162+
duplicate_table_by_name: "નામ દ્વારા ડુપ્લિકેટ ટેબલ '{{tableName}}'",
163+
empty_field_name: "ટેબલ '{{tableName}}' માં ખાલી ફિલ્ડ `નામ`",
164+
empty_field_type: "ટેબલ '{{tableName}}' માં ખાલી ફીલ્ડ `પ્રકાર`",
165+
no_values_for_field:
166+
"ટેબલ '{{tableName}}' ના ફીલ્ડ '{{fieldName}}' નો પ્રકાર `{{type}}` છે પરંતુ કોઈ મૂલ્ય નિર્દિષ્ટ નથી",
167+
default_doesnt_match_type:
168+
"ટેબલ '{{tableName}}' માં ફીલ્ડ '{{fieldName}}' નું ડિફોલ્ટ મૂલ્ય તેના પ્રકાર સાથે મેળ ખાતું નથી",
169+
not_null_is_null:
170+
"ટેબલ '{{tableName}}' ના ફીલ્ડ '{{fieldName}}' નું મૂલ્ય NOT NULL છે પરંતુ ડિફોલ્ટ NULL છે",
171+
duplicate_fields:
172+
"ટેબલ '{{tableName}}' માં નામ '{{fieldName}}' વાળા ડુપ્લિકેટ ટેબલ ફીલ્ડ્સ",
173+
duplicate_index:
174+
"ટેબલ '{{tableName}}' માં નામ '{{indexName}}' વાળો ડુપ્લિકેટ ઈન્ડેક્સ",
175+
empty_index: "ટેબલ '{{tableName}}' માં ઈન્ડેક્સ કોઈ કૉલમ ઈન્ડેક્સ કરતું નથી",
176+
no_primary_key: "ટેબલ '{{tableName}}' માં કોઈ પ્રાથમિક કી નથી",
177+
type_with_no_name: "કોઈ નામ ન હોય તેવા પ્રકારને ઘોષિત કર્યું",
178+
duplicate_types: "નામ '{{typeName}}' વાળા ડુપ્લિકેટ પ્રકાર",
179+
type_w_no_fields: "કોઈ ફીલ્ડ્સ ન હોય તેવા પ્રકાર '{{typeName}}' ને ઘોષિત કર્યું",
180+
empty_type_field_name: "પ્રકાર '{{typeName}}' માં ખાલી ફીલ્ડ `નામ`",
181+
empty_type_field_type: "પ્રકાર '{{typeName}}' માં ખાલી ફીલ્ડ `પ્રકાર`",
182+
no_values_for_type_field:
183+
"પ્રકાર '{{typeName}}' ના ફીલ્ડ '{{fieldName}}' નો પ્રકાર `{{type}}` છે પરંતુ કોઈ મૂલ્ય નિર્દિષ્ટ નથી",
184+
duplicate_type_fields:
185+
"પ્રકાર '{{typeName}}' માં નામ '{{fieldName}}' વાળા ડુપ્લિકેટ પ્રકાર ફીલ્ડ્સ",
186+
duplicate_reference: "નામ '{{refName}}' વાળો ડુપ્લિકેટ સંદર્ભ",
187+
circular_dependency: "ટેબલ '{{refName}}' માં પરિપત્ર નિર્ભરતા",
188+
timeline: "સમયરેખા",
189+
priority: "પ્રાથમિકતા",
190+
none: "કોઈ નથી",
191+
low: "નીચું",
192+
medium: "મધ્યમ",
193+
high: "ઉચ્ચ",
194+
sort_by: "દ્વારા ક્રમબદ્ધ કરો",
195+
my_order: "મારો ક્રમ",
196+
completed: "પૂર્ણ",
197+
alphabetically: "વર્ણમાલાક્રમમાં",
198+
add_task: "કાર્ય ઉમેરો",
199+
details: "વિગતો",
200+
no_tasks: "તમારી પાસે હજુ સુધી કોઈ કાર્ય નથી.",
201+
no_activity: "તમારી પાસે હજુ સુધી કોઈ પ્રવૃત્તિ નથી.",
202+
move_element: "{{name}} ને {{coords}} પર ખસેડો",
203+
edit_area: "{{extra}} એડિટ ક્ષેત્ર {{areaName}}",
204+
delete_area: "વિસ્તાર કાઢી નાખો {{areaName}}",
205+
edit_note: "{{extra}} નોંધ સંપાદિત કરો {{noteTitle}}",
206+
delete_note: "નોંધ કાઢી નાખો {{noteTitle}}",
207+
edit_table: "{{extra}} ટેબલ સંપાદિત કરો {{tableName}}",
208+
delete_table: "ટેબલ કાઢી નાખો {{tableName}}",
209+
edit_type: "{{extra}} પ્રકાર સંપાદિત કરો {{typeName}}",
210+
delete_type: "પ્રકાર કાઢી નાખો {{typeName}}",
211+
add_relationship: "સંબંધ ઉમેરો",
212+
edit_relationship: "{{extra}} સંબંધ સંપાદિત કરો {{refName}}",
213+
delete_relationship: "સબંધ કાઢી નાખો {{refName}}",
214+
not_found: "મળ્યું નથી",
215+
},
216+
};
217+
218+
export { gu, gujarati };

src/utils/exportSQL/mariadb.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1+
import { exportFieldComment, parseDefault } from "./shared";
2+
13
import { dbToTypes } from "../../data/datatypes";
2-
import { parseDefault } from "./shared";
34

45
export function toMariaDB(diagram) {
56
return `${diagram.tables
@@ -10,7 +11,7 @@ export function toMariaDB(diagram) {
1011
}CREATE OR REPLACE TABLE \`${table.name}\` (\n${table.fields
1112
.map(
1213
(field) =>
13-
`${field.comment === "" ? "" : `\t-- ${field.comment}\n`}\t\`${
14+
`${exportFieldComment(field.comment)}\t\`${
1415
field.name
1516
}\` ${field.type}${field.notNull ? " NOT NULL" : ""}${
1617
field.increment ? " AUTO_INCREMENT" : ""

src/utils/exportSQL/mssql.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1+
import { exportFieldComment, parseDefault } from "./shared";
2+
13
import { dbToTypes } from "../../data/datatypes";
2-
import { parseDefault } from "./shared";
34

45
export function toMSSQL(diagram) {
56
return `${diagram.tables
@@ -10,7 +11,7 @@ export function toMSSQL(diagram) {
1011
}CREATE TABLE [${table.name}] (\n${table.fields
1112
.map(
1213
(field) =>
13-
`${field.comment === "" ? "" : `\t-- ${field.comment}\n`}\t[${
14+
`${exportFieldComment(field.comment)}\t[${
1415
field.name
1516
}] ${field.type}${
1617
field.notNull ? " NOT NULL" : ""

src/utils/exportSQL/mysql.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1+
import { exportFieldComment, parseDefault } from "./shared";
2+
13
import { dbToTypes } from "../../data/datatypes";
2-
import { parseDefault } from "./shared";
34

45
export function toMySQL(diagram) {
56
return `${diagram.tables
@@ -10,9 +11,9 @@ export function toMySQL(diagram) {
1011
}CREATE TABLE \`${table.name}\` (\n${table.fields
1112
.map(
1213
(field) =>
13-
`${field.comment === "" ? "" : `\t-- ${field.comment}\n`}\t\`${
14+
`${exportFieldComment(field.comment)}\t\`${
1415
field.name
15-
}\` ${field.type}${(field.size !== undefined && field.size !== "")? "(" + field.size + ")" : ""}${
16+
}\` ${field.type}${field.size !== undefined && field.size !== "" ? "(" + field.size + ")" : ""}${
1617
field.notNull ? " NOT NULL" : ""
1718
}${
1819
field.increment ? " AUTO_INCREMENT" : ""

src/utils/exportSQL/postgres.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1+
import { exportFieldComment, parseDefault } from "./shared";
2+
13
import { dbToTypes } from "../../data/datatypes";
2-
import { parseDefault } from "./shared";
34

45
export function toPostgres(diagram) {
56
const enumStatements = diagram.enums
@@ -28,7 +29,7 @@ export function toPostgres(diagram) {
2829
`CREATE TABLE "${table.name}" (\n${table.fields
2930
.map(
3031
(field) =>
31-
`${field.comment === "" ? "" : `\t-- ${field.comment}\n`}\t"${
32+
`${exportFieldComment(field.comment)}\t"${
3233
field.name
3334
}" ${field.type}${field.isArray ? " ARRAY" : ""}${field.notNull ? " NOT NULL" : ""}${field.unique ? " UNIQUE" : ""}${
3435
field.default.trim() !== ""

src/utils/exportSQL/shared.js

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1+
import { isFunction, isKeyword, strHasQuotes } from "../utils";
2+
13
import { DB } from "../../data/constants";
24
import { dbToTypes } from "../../data/datatypes";
3-
import { isFunction, isKeyword, strHasQuotes } from "../utils";
45

56
export function parseDefault(field, database = DB.GENERIC) {
67
if (
@@ -14,3 +15,14 @@ export function parseDefault(field, database = DB.GENERIC) {
1415

1516
return `'${field.default}'`;
1617
}
18+
19+
export function exportFieldComment(comment) {
20+
if (comment === "") {
21+
return "";
22+
}
23+
24+
return comment
25+
.split("\n")
26+
.map((commentLine) => `\t-- ${commentLine}\n`)
27+
.join("");
28+
}

src/utils/exportSQL/sqlite.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1+
import { exportFieldComment, parseDefault } from "./shared";
2+
13
import { dbToTypes } from "../../data/datatypes";
2-
import { parseDefault } from "./shared";
34

45
export function toSqlite(diagram) {
56
return diagram.tables
@@ -10,7 +11,7 @@ export function toSqlite(diagram) {
1011
}CREATE TABLE IF NOT EXISTS "${table.name}" (\n${table.fields
1112
.map(
1213
(field) =>
13-
`${field.comment === "" ? "" : `\t-- ${field.comment}\n`}\t"${
14+
`${exportFieldComment(field.comment)}\t"${
1415
field.name
1516
}" ${field.type}${field.notNull ? " NOT NULL" : ""}${
1617
field.unique ? " UNIQUE" : ""

0 commit comments

Comments
 (0)