@seliseblocks/mailcraft 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DOCS.md +557 -0
- package/LICENSE +21 -0
- package/README.md +126 -0
- package/dist/mailcraft-editor.bundle.js +519 -0
- package/dist/mailcraft-editor.bundle.js.map +7 -0
- package/examples/templates/activate-your-account.html +54 -0
- package/examples/templates/back-in-stock.html +63 -0
- package/examples/templates/cart-left-behind.html +74 -0
- package/examples/templates/community-giveaway.html +81 -0
- package/examples/templates/frontend-futures-invite.html +69 -0
- package/examples/templates/give-25-get-25.html +69 -0
- package/examples/templates/invoice-paid.html +77 -0
- package/examples/templates/meet-nova-launch.html +69 -0
- package/examples/templates/mega-weekend-sale.html +57 -0
- package/examples/templates/order-confirmed.html +80 -0
- package/examples/templates/rate-your-headphones.html +71 -0
- package/examples/templates/reset-your-password.html +54 -0
- package/examples/templates/thankyou-promo-code.html +68 -0
- package/examples/templates/the-sunday-brief.html +47 -0
- package/examples/templates/welcome-to-your-workspace.html +62 -0
- package/examples/templates/your-order-shipped.html +74 -0
- package/examples/templates/your-password-was-changed.html +58 -0
- package/examples/templates/your-signin-code.html +58 -0
- package/examples/vanilla.html +1574 -0
- package/package.json +66 -0
- package/src/core/accent.js +194 -0
- package/src/core/assets.js +15 -0
- package/src/core/binder.js +119 -0
- package/src/core/blocks.js +256 -0
- package/src/core/css-cascade.js +117 -0
- package/src/core/editor-core.js +1492 -0
- package/src/core/export.js +58 -0
- package/src/core/footer.js +73 -0
- package/src/core/i18n/ar.js +177 -0
- package/src/core/i18n/bg.js +152 -0
- package/src/core/i18n/bn.js +176 -0
- package/src/core/i18n/ca.js +152 -0
- package/src/core/i18n/cs.js +152 -0
- package/src/core/i18n/da.js +152 -0
- package/src/core/i18n/de-CH.js +152 -0
- package/src/core/i18n/de.js +152 -0
- package/src/core/i18n/dz.js +179 -0
- package/src/core/i18n/el.js +152 -0
- package/src/core/i18n/en.js +269 -0
- package/src/core/i18n/es.js +152 -0
- package/src/core/i18n/et.js +152 -0
- package/src/core/i18n/fi.js +152 -0
- package/src/core/i18n/fr.js +152 -0
- package/src/core/i18n/hr.js +152 -0
- package/src/core/i18n/hu.js +152 -0
- package/src/core/i18n/index.js +83 -0
- package/src/core/i18n/it.js +152 -0
- package/src/core/i18n/lt.js +152 -0
- package/src/core/i18n/lv.js +152 -0
- package/src/core/i18n/nb.js +152 -0
- package/src/core/i18n/nl.js +152 -0
- package/src/core/i18n/pl.js +152 -0
- package/src/core/i18n/pt.js +152 -0
- package/src/core/i18n/ro.js +152 -0
- package/src/core/i18n/ru.js +152 -0
- package/src/core/i18n/sk.js +152 -0
- package/src/core/i18n/sl.js +152 -0
- package/src/core/i18n/sv.js +152 -0
- package/src/core/i18n/tables.js +50 -0
- package/src/core/i18n/tr.js +152 -0
- package/src/core/i18n/uk.js +152 -0
- package/src/core/icons.js +235 -0
- package/src/core/ids.js +1 -0
- package/src/core/import-html.js +959 -0
- package/src/core/layout-style.js +115 -0
- package/src/core/parse.js +10 -0
- package/src/core/placeholder.js +15 -0
- package/src/core/sanitize.js +141 -0
- package/src/core/storage-limits.js +184 -0
- package/src/core/storage.js +85 -0
- package/src/core/theme.js +1 -0
- package/src/core/toolbar.js +67 -0
- package/src/core/variables.js +11 -0
- package/src/create-editor.js +109 -0
- package/src/index.js +9 -0
- package/src/mailcraft-editor.js +1862 -0
- package/src/render/block-body.js +295 -0
- package/src/render/canvas.js +284 -0
- package/src/render/fields.js +609 -0
- package/src/render/focus-preserve.js +158 -0
- package/src/render/rte.js +212 -0
- package/src/render/screenshot.js +132 -0
- package/src/render/story.js +415 -0
- package/src/render/style.js +452 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/** Estonian (Eesti) — `et`. AI-drafted, not reviewed by a native speaker. Correctable one key at a time via `.messages` overrides. */
|
|
2
|
+
export const ET = {
|
|
3
|
+
'action.undoHint': 'Võta tagasi — ⌘Z',
|
|
4
|
+
'action.redoHint': 'Tee uuesti — ⌘⇧Z',
|
|
5
|
+
'action.chromeToDark': 'Tume',
|
|
6
|
+
'action.chromeToLight': 'Hele',
|
|
7
|
+
'action.chromeHint': 'Redaktori teema hele / tume',
|
|
8
|
+
'action.aiCopy': 'Tekst',
|
|
9
|
+
'action.aiCopyHint': 'Koosta tekst tehisintellektiga',
|
|
10
|
+
'action.code': 'Kood',
|
|
11
|
+
'action.codeHint': 'Muuda töötlemata HTML-i otseeelvaatega',
|
|
12
|
+
'action.preview': 'Eelvaade',
|
|
13
|
+
'action.export': 'Ekspordi',
|
|
14
|
+
'device.desktop': 'Arvuti',
|
|
15
|
+
'device.desktopHint': 'Arvuti laius',
|
|
16
|
+
'device.mobile': 'Mobiil',
|
|
17
|
+
'device.mobileHint': 'Mobiili laius',
|
|
18
|
+
'device.dark': 'Tume',
|
|
19
|
+
'device.darkHint': 'Postkasti tume režiim',
|
|
20
|
+
'status.autosaveOn': 'automaatne salvestamine sees',
|
|
21
|
+
'status.saved': 'salvestatud {time}',
|
|
22
|
+
'status.saveFailed': 'ei salvestatud — talletusruum täis',
|
|
23
|
+
'canvas.meta': '{rows} rida · {blocks} plokki · {width}px',
|
|
24
|
+
'tab.design': 'Stiil',
|
|
25
|
+
'tab.designHint': 'Vali stiil valikule',
|
|
26
|
+
'tab.blocks': 'Plokid',
|
|
27
|
+
'tab.blocksHint': 'Sisuplokid ja muutujad',
|
|
28
|
+
'tab.rows': 'Sektsioonid',
|
|
29
|
+
'tab.rowsHint': 'Sektsioonide paigutused ja lõuendi mudel',
|
|
30
|
+
'tab.files': 'Failid',
|
|
31
|
+
'tab.filesHint': 'Ressursside teek',
|
|
32
|
+
'tab.layers': 'Struktuur',
|
|
33
|
+
'tab.layersHint': 'Dokumendi struktuur',
|
|
34
|
+
'tab.theme': 'Teema',
|
|
35
|
+
'tab.themeHint': 'Globaalsed stiilid',
|
|
36
|
+
'tab.data': 'Muut.',
|
|
37
|
+
'tab.dataHint': 'Sinu koodi pakutavad muutujad',
|
|
38
|
+
'inspector.blockProperties': 'Ploki omadused',
|
|
39
|
+
'inspector.sectionProperties': 'Sektsiooni omadused',
|
|
40
|
+
'inspector.title': 'Inspektor',
|
|
41
|
+
'inspector.sectionLabel': 'Sektsioon',
|
|
42
|
+
'inspector.nothingSelected': 'Midagi pole valitud',
|
|
43
|
+
'action.duplicateHint': 'Paljunda — ⌘D',
|
|
44
|
+
'action.deleteHint': 'Kustuta — ⌫',
|
|
45
|
+
'inspector.emptyBody':
|
|
46
|
+
'Vali lõuendil rida või plokk, et seda siin kujundada. Lohista plokke vahekaardilt <strong style="color: var(--ed-text); font-weight: 600;">Plokid</strong>; topeltklõpsa mistahes tekstil, et seda otse muuta.',
|
|
47
|
+
'inspector.shortcuts': 'Kiirklahvid',
|
|
48
|
+
'shortcut.undoRedo': '⌘Z / ⌘⇧Z — võta tagasi, tee uuesti',
|
|
49
|
+
'shortcut.duplicate': '⌘D — paljunda valik',
|
|
50
|
+
'shortcut.delete': '⌫ — kustuta valik',
|
|
51
|
+
'shortcut.export': '⌘E — ekspordi HTML',
|
|
52
|
+
'shortcut.escape': 'ESC — tühista valik, sulge',
|
|
53
|
+
'blocks.dragHint': 'Lohista lõuendile',
|
|
54
|
+
'blocks.count': '{count} plokki',
|
|
55
|
+
'rows.sectionLayouts': 'Sektsioonide paigutused',
|
|
56
|
+
'rows.customMarkup': 'Kohandatud kood',
|
|
57
|
+
'rows.htmlRowHint': 'Lohista lisamiseks või klõpsa lisamiseks — täislaiuses rida, mille täidad töötlemata HTML-iga',
|
|
58
|
+
'rows.rawHtmlSection': 'Töötlemata HTML-i sektsioon',
|
|
59
|
+
'rows.rawHtmlDesc': 'Täislaiuses sektsioon, sinu enda kood, endiselt lohistatav',
|
|
60
|
+
'rows.canvasModel': 'Lõuendi mudel',
|
|
61
|
+
'rows.modeRowBased': 'Ridadel põhinev',
|
|
62
|
+
'rows.modeFreeStack': 'Vaba virn',
|
|
63
|
+
'rows.hintRows':
|
|
64
|
+
'Sektsioonidel põhinev: aseta esmalt paigutus, seejärel plokid selle veergudesse — igal sektsioonil on oma taust, äär, flex- või ruudustiku seaded.',
|
|
65
|
+
'rows.hintStack': 'Vaba virn: ilma paigutusteta — iga asetatud plokk saab oma täislaiuses sektsiooniks, virnastatuna järjekorras.',
|
|
66
|
+
'files.libraryCount': 'Teek — {count} faili',
|
|
67
|
+
'files.openManager': 'Ava failihaldur',
|
|
68
|
+
'files.dragToCanvas': 'Lohista mistahes fail otse lõuendile, et paigutada see pildiplokina.',
|
|
69
|
+
'layers.structure': 'Struktuur',
|
|
70
|
+
'layers.sectionSingle': 'Sektsioon',
|
|
71
|
+
'layers.sectionMulti': 'Sektsioon · {count} veergu',
|
|
72
|
+
'layers.blockCount': '{count} plokki',
|
|
73
|
+
'theme.globalStyles': 'Globaalsed stiilid',
|
|
74
|
+
'vars.title': 'Muutujad',
|
|
75
|
+
'vars.fromCode': '{count} sinu koodist',
|
|
76
|
+
'vars.declaredNote': 'Sinu rakenduse deklareeritud — lõuend näitab alati tokenit, mitte kunagi väärtust.',
|
|
77
|
+
'vars.filterPlaceholder': 'Filtreeri muutujaid…',
|
|
78
|
+
'vars.insertHint': 'Klõpsa, et lisada valitud teksti, pealkirja või nupu sisse',
|
|
79
|
+
'vars.insert': 'lisa',
|
|
80
|
+
'vars.noMatch': 'Ükski muutuja ei vasta sellele filtrile.',
|
|
81
|
+
'vars.noneDeclared': 'Sinu rakendus pole veel muutujaid deklareerinud.',
|
|
82
|
+
'vars.rteHint': 'Teksti muutmisel saad valida muutuja ka otse sisseehitatud tööriistariba rippmenüüst.',
|
|
83
|
+
'modal.fileManager': 'Failihaldur',
|
|
84
|
+
'modal.assetsTitle': 'Ressursid',
|
|
85
|
+
'modal.replaceImage': 'Asenda pilt',
|
|
86
|
+
'library.searchPlaceholder': 'Otsi faile…',
|
|
87
|
+
'action.upload': 'Laadi üles',
|
|
88
|
+
'library.clickToPlace': 'Klõpsa failil, et see paigutada · või lohista fail lõuendile',
|
|
89
|
+
'library.clickToReplace': 'Klõpsa failil, et asendada valitud pilt',
|
|
90
|
+
'library.storageLabel': '{count} faili · {size}',
|
|
91
|
+
'library.folders': 'Kaustad',
|
|
92
|
+
'library.dropHint': 'Lohista pildifailid siia üleslaadimiseks — või kasuta nuppu Laadi üles.',
|
|
93
|
+
'library.deleteFileHint': 'Kustuta fail',
|
|
94
|
+
'library.del': 'KUSTUTA',
|
|
95
|
+
'toast.assetDeleted': '{name} kustutatud',
|
|
96
|
+
'modal.export': 'Ekspordi',
|
|
97
|
+
'modal.exportTitle': 'Tabelipõhine e-kirja HTML',
|
|
98
|
+
'export.copy': 'Kopeeri',
|
|
99
|
+
'export.copied': 'Kopeeritud',
|
|
100
|
+
'action.download': 'Laadi alla',
|
|
101
|
+
'export.meta': '{kb} KB · tabelid + sisestiilid · Outlooki jaoks turvalised laiused',
|
|
102
|
+
'modal.rawHtmlTitle': 'Töötlemata HTML, otseeelvaade',
|
|
103
|
+
'code.statusEdited': 'Koodivaade — muudetud — eelvaade otse, veel rakendamata',
|
|
104
|
+
'code.statusSynced': 'Koodivaade — lõuendiga sünkroonis',
|
|
105
|
+
'action.reload': 'Laadi uuesti',
|
|
106
|
+
'action.reloadHint': 'Laadi allikas lõuendilt uuesti',
|
|
107
|
+
'action.applyToCanvas': 'Rakenda lõuendile',
|
|
108
|
+
'action.applyToCanvasHint': 'Analüüsi allikas tagasi muudetavateks ridadeks',
|
|
109
|
+
'action.closeWithoutApplyingHint': 'Sulge ilma rakendamata',
|
|
110
|
+
'code.source': 'Allikas',
|
|
111
|
+
'code.livePreview': 'Otseeelvaade',
|
|
112
|
+
'code.liveHtmlPreviewTitle': 'HTML-i otseeelvaade',
|
|
113
|
+
'code.applyNote':
|
|
114
|
+
'Rakendamine analüüsib iga ülataseme tabelirea lõuendireaks, mida saad endiselt valida, ümber korraldada ja kustutada — käsitsi kirjutatud kood jääb protsessis muutumatuks.',
|
|
115
|
+
'code.meta': '{kb} KB · {lines} rida',
|
|
116
|
+
'toast.sourceReloaded': 'Allikas laaditi lõuendilt uuesti',
|
|
117
|
+
'toast.sourceAppliedOne': 'Allikas rakendatud — 1 rida lõuendil',
|
|
118
|
+
'toast.sourceAppliedMany': 'Allikas rakendatud — {rows} rida lõuendil',
|
|
119
|
+
'toast.parseError': 'Seda HTML-i ei õnnestunud analüüsida',
|
|
120
|
+
'modal.copyAssist': 'Tekstiabiline',
|
|
121
|
+
'modal.draftCopyTitle': 'Koosta tekst sellele kampaaniale',
|
|
122
|
+
'ai.goal': 'Eesmärk',
|
|
123
|
+
'ai.tone': 'Toon',
|
|
124
|
+
'ai.briefLabel': 'Millest see e-kiri räägib?',
|
|
125
|
+
'ai.briefPlaceholder': 'nt sügiskollektsioon, 15% tellijatele, tasuta tarne üle 150 €',
|
|
126
|
+
'ai.generate': 'Genereeri tekst',
|
|
127
|
+
'ai.writing': 'Kirjutamine…',
|
|
128
|
+
'ai.kindHeadline': 'Pealkiri',
|
|
129
|
+
'ai.kindBody': 'Põhitekst',
|
|
130
|
+
'ai.kindButton': 'Nupu tekst',
|
|
131
|
+
'ai.actionInsertHeading': 'Lisa pealkirjana',
|
|
132
|
+
'ai.actionInsertText': 'Lisa tekstiplokina',
|
|
133
|
+
'ai.actionInsertButton': 'Lisa nupuna',
|
|
134
|
+
'toast.headingAdded': 'Pealkiri lisatud',
|
|
135
|
+
'toast.textBlockAdded': 'Tekstiplokk lisatud',
|
|
136
|
+
'toast.buttonAdded': 'Nupp lisatud',
|
|
137
|
+
'preview.kickerMobile': 'Eelvaade — mobiil 375px',
|
|
138
|
+
'preview.kickerDark': 'Eelvaade — tume postkast',
|
|
139
|
+
'preview.kickerDesktop': 'Eelvaade — arvuti {width}px',
|
|
140
|
+
'action.close': 'Sulge',
|
|
141
|
+
'toast.duplicated': 'Paljundatud',
|
|
142
|
+
'toast.fileUploadedOne': '1 fail üles laaditud',
|
|
143
|
+
'toast.fileUploadedMany': '{count} faili üles laaditud',
|
|
144
|
+
'toast.imageReplaced': 'Pilt asendatud',
|
|
145
|
+
'toast.imageAdded': 'Pilt lisatud lõuendile',
|
|
146
|
+
'toast.htmlCopied': 'HTML kopeeritud lõikelauale',
|
|
147
|
+
'toast.templateLoaded': '{name} laaditud',
|
|
148
|
+
'toast.snippetDefaultLabel': 'Katke',
|
|
149
|
+
'toast.snippetInserted': '{name} lisatud',
|
|
150
|
+
'toast.snippetCopied': '{name} kopeeritud — vali tekstiplokk selle lisamiseks',
|
|
151
|
+
};
|
|
152
|
+
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/** Finnish (Suomi) — `fi`. AI-drafted, not reviewed by a native speaker. Correctable one key at a time via `.messages` overrides. */
|
|
2
|
+
export const FI = {
|
|
3
|
+
'action.undoHint': 'Kumoa — ⌘Z',
|
|
4
|
+
'action.redoHint': 'Tee uudelleen — ⌘⇧Z',
|
|
5
|
+
'action.chromeToDark': 'Tumma',
|
|
6
|
+
'action.chromeToLight': 'Vaalea',
|
|
7
|
+
'action.chromeHint': 'Editorin teema vaalea / tumma',
|
|
8
|
+
'action.aiCopy': 'Teksti',
|
|
9
|
+
'action.aiCopyHint': 'Kirjoita teksti tekoälyllä',
|
|
10
|
+
'action.code': 'Koodi',
|
|
11
|
+
'action.codeHint': 'Muokkaa raakaa HTML:ää suoralla esikatselulla',
|
|
12
|
+
'action.preview': 'Esikatselu',
|
|
13
|
+
'action.export': 'Vie',
|
|
14
|
+
'device.desktop': 'Työpöytä',
|
|
15
|
+
'device.desktopHint': 'Työpöydän leveys',
|
|
16
|
+
'device.mobile': 'Mobiili',
|
|
17
|
+
'device.mobileHint': 'Mobiilin leveys',
|
|
18
|
+
'device.dark': 'Tumma',
|
|
19
|
+
'device.darkHint': 'Saapuneet-tumma tila',
|
|
20
|
+
'status.autosaveOn': 'automaattitallennus päällä',
|
|
21
|
+
'status.saved': 'tallennettu {time}',
|
|
22
|
+
'status.saveFailed': 'ei tallennettu — tallennustila täynnä',
|
|
23
|
+
'canvas.meta': '{rows} riviä · {blocks} lohkoa · {width}px',
|
|
24
|
+
'tab.design': 'Tyyli',
|
|
25
|
+
'tab.designHint': 'Muotoile valinta',
|
|
26
|
+
'tab.blocks': 'Lohkot',
|
|
27
|
+
'tab.blocksHint': 'Sisältölohkot ja muuttujat',
|
|
28
|
+
'tab.rows': 'Osiot',
|
|
29
|
+
'tab.rowsHint': 'Osioiden asettelut ja kangasmalli',
|
|
30
|
+
'tab.files': 'Tiedostot',
|
|
31
|
+
'tab.filesHint': 'Resurssikirjasto',
|
|
32
|
+
'tab.layers': 'Rakenne',
|
|
33
|
+
'tab.layersHint': 'Asiakirjan rakenne',
|
|
34
|
+
'tab.theme': 'Teema',
|
|
35
|
+
'tab.themeHint': 'Yleiset tyylit',
|
|
36
|
+
'tab.data': 'Muutt.',
|
|
37
|
+
'tab.dataHint': 'Koodisi tarjoamat muuttujat',
|
|
38
|
+
'inspector.blockProperties': 'Lohkon ominaisuudet',
|
|
39
|
+
'inspector.sectionProperties': 'Osion ominaisuudet',
|
|
40
|
+
'inspector.title': 'Tarkastaja',
|
|
41
|
+
'inspector.sectionLabel': 'Osio',
|
|
42
|
+
'inspector.nothingSelected': 'Ei valintaa',
|
|
43
|
+
'action.duplicateHint': 'Monista — ⌘D',
|
|
44
|
+
'action.deleteHint': 'Poista — ⌫',
|
|
45
|
+
'inspector.emptyBody':
|
|
46
|
+
'Valitse rivi tai lohko kankaalta muotoillaksesi sen tässä. Vedä lohkoja välilehdeltä <strong style="color: var(--ed-text); font-weight: 600;">Lohkot</strong>; kaksoisnapsauta tekstiä muokataksesi sitä suoraan.',
|
|
47
|
+
'inspector.shortcuts': 'Pikanäppäimet',
|
|
48
|
+
'shortcut.undoRedo': '⌘Z / ⌘⇧Z — kumoa, tee uudelleen',
|
|
49
|
+
'shortcut.duplicate': '⌘D — monista valinta',
|
|
50
|
+
'shortcut.delete': '⌫ — poista valinta',
|
|
51
|
+
'shortcut.export': '⌘E — vie HTML',
|
|
52
|
+
'shortcut.escape': 'ESC — poista valinta, sulje',
|
|
53
|
+
'blocks.dragHint': 'Vedä kankaalle',
|
|
54
|
+
'blocks.count': '{count} lohkoa',
|
|
55
|
+
'rows.sectionLayouts': 'Osioiden asettelut',
|
|
56
|
+
'rows.customMarkup': 'Mukautettu koodi',
|
|
57
|
+
'rows.htmlRowHint': 'Vedä lisätäksesi, tai napsauta lisätäksesi — täysleveä rivi, jonka täytät raa’alla HTML:llä',
|
|
58
|
+
'rows.rawHtmlSection': 'Raaka HTML-osio',
|
|
59
|
+
'rows.rawHtmlDesc': 'Täysleveä osio, oma koodisi, edelleen vedettävissä',
|
|
60
|
+
'rows.canvasModel': 'Kangasmalli',
|
|
61
|
+
'rows.modeRowBased': 'Riveihin perustuva',
|
|
62
|
+
'rows.modeFreeStack': 'Vapaa pino',
|
|
63
|
+
'rows.hintRows':
|
|
64
|
+
'Osioihin perustuva: pudota ensin asettelu, sitten lohkoja sen sarakkeisiin — jokaisella osiolla on oma tausta, reunus, flex- tai ruudukkoasetukset.',
|
|
65
|
+
'rows.hintStack': 'Vapaa pino: ilman asetteluja — jokaisesta pudottamastasi lohkosta tulee oma täysleveä osio, pinottuna järjestyksessä.',
|
|
66
|
+
'files.libraryCount': 'Kirjasto — {count} tiedostoa',
|
|
67
|
+
'files.openManager': 'Avaa tiedostonhallinta',
|
|
68
|
+
'files.dragToCanvas': 'Vedä mikä tahansa tiedosto suoraan kankaalle asettaaksesi sen kuvalohkona.',
|
|
69
|
+
'layers.structure': 'Rakenne',
|
|
70
|
+
'layers.sectionSingle': 'Osio',
|
|
71
|
+
'layers.sectionMulti': 'Osio · {count} saraketta',
|
|
72
|
+
'layers.blockCount': '{count} lohkoa',
|
|
73
|
+
'theme.globalStyles': 'Yleiset tyylit',
|
|
74
|
+
'vars.title': 'Muuttujat',
|
|
75
|
+
'vars.fromCode': '{count} koodistasi',
|
|
76
|
+
'vars.declaredNote': 'Sovelluksesi määrittelemiä — kangas näyttää aina tokenin, ei koskaan arvoa.',
|
|
77
|
+
'vars.filterPlaceholder': 'Suodata muuttujia…',
|
|
78
|
+
'vars.insertHint': 'Napsauta lisätäksesi valittuun tekstiin, otsikkoon tai painikkeeseen',
|
|
79
|
+
'vars.insert': 'lisää',
|
|
80
|
+
'vars.noMatch': 'Yksikään muuttuja ei vastaa tätä suodatinta.',
|
|
81
|
+
'vars.noneDeclared': 'Sovelluksesi ei ole vielä määritellyt muuttujia.',
|
|
82
|
+
'vars.rteHint': 'Tekstiä muokatessasi voit myös valita muuttujan suoraan sisäisen työkalurivin pudotusvalikosta.',
|
|
83
|
+
'modal.fileManager': 'Tiedostonhallinta',
|
|
84
|
+
'modal.assetsTitle': 'Resurssit',
|
|
85
|
+
'modal.replaceImage': 'Korvaa kuva',
|
|
86
|
+
'library.searchPlaceholder': 'Etsi tiedostoja…',
|
|
87
|
+
'action.upload': 'Lataa',
|
|
88
|
+
'library.clickToPlace': 'Napsauta tiedostoa asettaaksesi sen · tai vedä tiedosto kankaalle',
|
|
89
|
+
'library.clickToReplace': 'Napsauta tiedostoa korvataksesi valitun kuvan',
|
|
90
|
+
'library.storageLabel': '{count} tiedostoa · {size}',
|
|
91
|
+
'library.folders': 'Kansiot',
|
|
92
|
+
'library.dropHint': 'Pudota kuvatiedostoja tähän ladataksesi ne — tai käytä Lataa-painiketta.',
|
|
93
|
+
'library.deleteFileHint': 'Poista tiedosto',
|
|
94
|
+
'library.del': 'POISTA',
|
|
95
|
+
'toast.assetDeleted': '{name} poistettu',
|
|
96
|
+
'modal.export': 'Vie',
|
|
97
|
+
'modal.exportTitle': 'Taulukkopohjainen sähköposti-HTML',
|
|
98
|
+
'export.copy': 'Kopioi',
|
|
99
|
+
'export.copied': 'Kopioitu',
|
|
100
|
+
'action.download': 'Lataa',
|
|
101
|
+
'export.meta': '{kb} kt · taulukot + inline-tyylit · Outlook-turvalliset leveydet',
|
|
102
|
+
'modal.rawHtmlTitle': 'Raaka HTML, suora esikatselu',
|
|
103
|
+
'code.statusEdited': 'Koodinäkymä — muokattu — esikatselu suorana, ei vielä käytössä',
|
|
104
|
+
'code.statusSynced': 'Koodinäkymä — synkronoitu kankaan kanssa',
|
|
105
|
+
'action.reload': 'Lataa uudelleen',
|
|
106
|
+
'action.reloadHint': 'Lataa lähde uudelleen kankaalta',
|
|
107
|
+
'action.applyToCanvas': 'Käytä kankaalla',
|
|
108
|
+
'action.applyToCanvasHint': 'Jäsennä lähde takaisin muokattaviksi riveiksi',
|
|
109
|
+
'action.closeWithoutApplyingHint': 'Sulje käyttämättä',
|
|
110
|
+
'code.source': 'Lähde',
|
|
111
|
+
'code.livePreview': 'Suora esikatselu',
|
|
112
|
+
'code.liveHtmlPreviewTitle': 'Suora HTML-esikatselu',
|
|
113
|
+
'code.applyNote':
|
|
114
|
+
'Käytä jäsentää jokaisen ylimmän tason taulukkorivin kangasriviksi, jonka voit yhä valita, järjestää uudelleen ja poistaa — käsin kirjoitettu koodi säilyy prosessin läpi muuttumattomana.',
|
|
115
|
+
'code.meta': '{kb} kt · {lines} riviä',
|
|
116
|
+
'toast.sourceReloaded': 'Lähde ladattu uudelleen kankaalta',
|
|
117
|
+
'toast.sourceAppliedOne': 'Lähde käytössä — 1 rivi kankaalla',
|
|
118
|
+
'toast.sourceAppliedMany': 'Lähde käytössä — {rows} riviä kankaalla',
|
|
119
|
+
'toast.parseError': 'Tätä HTML:ää ei voitu jäsentää',
|
|
120
|
+
'modal.copyAssist': 'Tekstiavustaja',
|
|
121
|
+
'modal.draftCopyTitle': 'Kirjoita teksti tälle kampanjalle',
|
|
122
|
+
'ai.goal': 'Tavoite',
|
|
123
|
+
'ai.tone': 'Sävy',
|
|
124
|
+
'ai.briefLabel': 'Mistä tämä sähköposti kertoo?',
|
|
125
|
+
'ai.briefPlaceholder': 'esim. Syyskokoelma, 15 % tilaajille, ilmainen toimitus yli 150 €',
|
|
126
|
+
'ai.generate': 'Luo teksti',
|
|
127
|
+
'ai.writing': 'Kirjoitetaan…',
|
|
128
|
+
'ai.kindHeadline': 'Otsikko',
|
|
129
|
+
'ai.kindBody': 'Leipäteksti',
|
|
130
|
+
'ai.kindButton': 'Painikkeen teksti',
|
|
131
|
+
'ai.actionInsertHeading': 'Lisää otsikkona',
|
|
132
|
+
'ai.actionInsertText': 'Lisää tekstilohkona',
|
|
133
|
+
'ai.actionInsertButton': 'Lisää painikkeena',
|
|
134
|
+
'toast.headingAdded': 'Otsikko lisätty',
|
|
135
|
+
'toast.textBlockAdded': 'Tekstilohko lisätty',
|
|
136
|
+
'toast.buttonAdded': 'Painike lisätty',
|
|
137
|
+
'preview.kickerMobile': 'Esikatselu — mobiili 375px',
|
|
138
|
+
'preview.kickerDark': 'Esikatselu — tumma saapuneet',
|
|
139
|
+
'preview.kickerDesktop': 'Esikatselu — työpöytä {width}px',
|
|
140
|
+
'action.close': 'Sulje',
|
|
141
|
+
'toast.duplicated': 'Monistettu',
|
|
142
|
+
'toast.fileUploadedOne': '1 tiedosto ladattu',
|
|
143
|
+
'toast.fileUploadedMany': '{count} tiedostoa ladattu',
|
|
144
|
+
'toast.imageReplaced': 'Kuva korvattu',
|
|
145
|
+
'toast.imageAdded': 'Kuva lisätty kankaalle',
|
|
146
|
+
'toast.htmlCopied': 'HTML kopioitu leikepöydälle',
|
|
147
|
+
'toast.templateLoaded': '{name} ladattu',
|
|
148
|
+
'toast.snippetDefaultLabel': 'Katkelma',
|
|
149
|
+
'toast.snippetInserted': '{name} lisätty',
|
|
150
|
+
'toast.snippetCopied': '{name} kopioitu — valitse tekstilohko lisätäksesi sen',
|
|
151
|
+
};
|
|
152
|
+
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/** French (Français) — `fr`. AI-drafted, not reviewed by a native speaker. Correctable one key at a time via `.messages` overrides. */
|
|
2
|
+
export const FR = {
|
|
3
|
+
'action.undoHint': 'Annuler — ⌘Z',
|
|
4
|
+
'action.redoHint': 'Rétablir — ⌘⇧Z',
|
|
5
|
+
'action.chromeToDark': 'Sombre',
|
|
6
|
+
'action.chromeToLight': 'Clair',
|
|
7
|
+
'action.chromeHint': 'Thème de l’éditeur clair / sombre',
|
|
8
|
+
'action.aiCopy': 'Texte',
|
|
9
|
+
'action.aiCopyHint': 'Rédiger un texte avec l’IA',
|
|
10
|
+
'action.code': 'Code',
|
|
11
|
+
'action.codeHint': 'Modifier le HTML brut avec aperçu en direct',
|
|
12
|
+
'action.preview': 'Aperçu',
|
|
13
|
+
'action.export': 'Exporter',
|
|
14
|
+
'device.desktop': 'Bureau',
|
|
15
|
+
'device.desktopHint': 'Largeur bureau',
|
|
16
|
+
'device.mobile': 'Mobile',
|
|
17
|
+
'device.mobileHint': 'Largeur mobile',
|
|
18
|
+
'device.dark': 'Sombre',
|
|
19
|
+
'device.darkHint': 'Boîte de réception sombre',
|
|
20
|
+
'status.autosaveOn': 'sauvegarde automatique activée',
|
|
21
|
+
'status.saved': 'enregistré {time}',
|
|
22
|
+
'status.saveFailed': 'non enregistré — stockage plein',
|
|
23
|
+
'canvas.meta': '{rows} lignes · {blocks} blocs · {width}px',
|
|
24
|
+
'tab.design': 'Style',
|
|
25
|
+
'tab.designHint': 'Styliser la sélection',
|
|
26
|
+
'tab.blocks': 'Blocs',
|
|
27
|
+
'tab.blocksHint': 'Blocs de contenu et variables',
|
|
28
|
+
'tab.rows': 'Sect.',
|
|
29
|
+
'tab.rowsHint': 'Mises en page de section et modèle de canevas',
|
|
30
|
+
'tab.files': 'Fichiers',
|
|
31
|
+
'tab.filesHint': 'Bibliothèque de ressources',
|
|
32
|
+
'tab.layers': 'Structure',
|
|
33
|
+
'tab.layersHint': 'Structure du document',
|
|
34
|
+
'tab.theme': 'Thème',
|
|
35
|
+
'tab.themeHint': 'Styles globaux',
|
|
36
|
+
'tab.data': 'Var.',
|
|
37
|
+
'tab.dataHint': 'Variables fournies par votre code',
|
|
38
|
+
'inspector.blockProperties': 'Propriétés du bloc',
|
|
39
|
+
'inspector.sectionProperties': 'Propriétés de la section',
|
|
40
|
+
'inspector.title': 'Inspecteur',
|
|
41
|
+
'inspector.sectionLabel': 'Section',
|
|
42
|
+
'inspector.nothingSelected': 'Rien n’est sélectionné',
|
|
43
|
+
'action.duplicateHint': 'Dupliquer — ⌘D',
|
|
44
|
+
'action.deleteHint': 'Supprimer — ⌫',
|
|
45
|
+
'inspector.emptyBody':
|
|
46
|
+
'Sélectionnez une ligne ou un bloc sur le canevas pour le styliser ici. Glissez des blocs depuis l’onglet <strong style="color: var(--ed-text); font-weight: 600;">Blocs</strong> ; double-cliquez sur un texte pour le modifier directement.',
|
|
47
|
+
'inspector.shortcuts': 'Raccourcis',
|
|
48
|
+
'shortcut.undoRedo': '⌘Z / ⌘⇧Z — annuler, rétablir',
|
|
49
|
+
'shortcut.duplicate': '⌘D — dupliquer la sélection',
|
|
50
|
+
'shortcut.delete': '⌫ — supprimer la sélection',
|
|
51
|
+
'shortcut.export': '⌘E — exporter le HTML',
|
|
52
|
+
'shortcut.escape': 'ESC — désélectionner, fermer',
|
|
53
|
+
'blocks.dragHint': 'Glisser sur le canevas',
|
|
54
|
+
'blocks.count': '{count} blocs',
|
|
55
|
+
'rows.sectionLayouts': 'Mises en page de section',
|
|
56
|
+
'rows.customMarkup': 'Balisage personnalisé',
|
|
57
|
+
'rows.htmlRowHint': 'Glissez pour insérer, ou cliquez pour ajouter — une ligne pleine largeur que vous remplissez de HTML brut',
|
|
58
|
+
'rows.rawHtmlSection': 'Section HTML brut',
|
|
59
|
+
'rows.rawHtmlDesc': 'Section pleine largeur, votre propre balisage, toujours déplaçable',
|
|
60
|
+
'rows.canvasModel': 'Modèle de canevas',
|
|
61
|
+
'rows.modeRowBased': 'Basé sur les lignes',
|
|
62
|
+
'rows.modeFreeStack': 'Pile libre',
|
|
63
|
+
'rows.hintRows':
|
|
64
|
+
'Basé sur les sections : déposez d’abord une mise en page, puis des blocs dans ses colonnes — chaque section a son propre arrière-plan, sa bordure, ses réglages flex ou grille.',
|
|
65
|
+
'rows.hintStack': 'Pile libre : sans mise en page — chaque bloc déposé devient sa propre section pleine largeur, empilée dans l’ordre.',
|
|
66
|
+
'files.libraryCount': 'Bibliothèque — {count} fichiers',
|
|
67
|
+
'files.openManager': 'Ouvrir le gestionnaire de fichiers',
|
|
68
|
+
'files.dragToCanvas': 'Glissez un fichier directement sur le canevas pour le placer comme bloc image.',
|
|
69
|
+
'layers.structure': 'Structure',
|
|
70
|
+
'layers.sectionSingle': 'Section',
|
|
71
|
+
'layers.sectionMulti': 'Section · {count} col.',
|
|
72
|
+
'layers.blockCount': '{count} blocs',
|
|
73
|
+
'theme.globalStyles': 'Styles globaux',
|
|
74
|
+
'vars.title': 'Variables',
|
|
75
|
+
'vars.fromCode': '{count} provenant de votre code',
|
|
76
|
+
'vars.declaredNote': 'Déclarées par votre application — le canevas affiche toujours le jeton, jamais une valeur.',
|
|
77
|
+
'vars.filterPlaceholder': 'Filtrer les variables…',
|
|
78
|
+
'vars.insertHint': 'Cliquer pour insérer dans le texte, le titre ou le bouton sélectionné',
|
|
79
|
+
'vars.insert': 'insérer',
|
|
80
|
+
'vars.noMatch': 'Aucune variable ne correspond à ce filtre.',
|
|
81
|
+
'vars.noneDeclared': 'Votre application n’a encore déclaré aucune variable.',
|
|
82
|
+
'vars.rteHint': 'En modifiant du texte, vous pouvez aussi choisir une variable directement dans le menu de la barre d’outils.',
|
|
83
|
+
'modal.fileManager': 'Gestionnaire de fichiers',
|
|
84
|
+
'modal.assetsTitle': 'Ressources',
|
|
85
|
+
'modal.replaceImage': 'Remplacer l’image',
|
|
86
|
+
'library.searchPlaceholder': 'Rechercher des fichiers…',
|
|
87
|
+
'action.upload': 'Téléverser',
|
|
88
|
+
'library.clickToPlace': 'Cliquez sur un fichier pour le placer · ou glissez un fichier sur le canevas',
|
|
89
|
+
'library.clickToReplace': 'Cliquez sur un fichier pour remplacer l’image sélectionnée',
|
|
90
|
+
'library.storageLabel': '{count} fichiers · {size}',
|
|
91
|
+
'library.folders': 'Dossiers',
|
|
92
|
+
'library.dropHint': 'Déposez des fichiers image ici pour les téléverser — ou utilisez le bouton Téléverser.',
|
|
93
|
+
'library.deleteFileHint': 'Supprimer le fichier',
|
|
94
|
+
'library.del': 'SUPPR',
|
|
95
|
+
'toast.assetDeleted': '{name} supprimé',
|
|
96
|
+
'modal.export': 'Exporter',
|
|
97
|
+
'modal.exportTitle': 'HTML d’e-mail basé sur des tableaux',
|
|
98
|
+
'export.copy': 'Copier',
|
|
99
|
+
'export.copied': 'Copié',
|
|
100
|
+
'action.download': 'Télécharger',
|
|
101
|
+
'export.meta': '{kb} Ko · tableaux + styles en ligne · largeurs sûres pour Outlook',
|
|
102
|
+
'modal.rawHtmlTitle': 'HTML brut, aperçu en direct',
|
|
103
|
+
'code.statusEdited': 'Vue du code — modifié — aperçu en direct, pas encore appliqué',
|
|
104
|
+
'code.statusSynced': 'Vue du code — synchronisé avec le canevas',
|
|
105
|
+
'action.reload': 'Recharger',
|
|
106
|
+
'action.reloadHint': 'Recharger la source depuis le canevas',
|
|
107
|
+
'action.applyToCanvas': 'Appliquer au canevas',
|
|
108
|
+
'action.applyToCanvasHint': 'Analyser la source pour la reconvertir en lignes modifiables',
|
|
109
|
+
'action.closeWithoutApplyingHint': 'Fermer sans appliquer',
|
|
110
|
+
'code.source': 'Source',
|
|
111
|
+
'code.livePreview': 'Aperçu en direct',
|
|
112
|
+
'code.liveHtmlPreviewTitle': 'Aperçu HTML en direct',
|
|
113
|
+
'code.applyNote':
|
|
114
|
+
'Appliquer analyse chaque ligne de tableau de premier niveau en une ligne de canevas que vous pouvez toujours sélectionner, réorganiser et supprimer — le balisage écrit à la main survit à l’aller-retour.',
|
|
115
|
+
'code.meta': '{kb} Ko · {lines} lignes',
|
|
116
|
+
'toast.sourceReloaded': 'Source rechargée depuis le canevas',
|
|
117
|
+
'toast.sourceAppliedOne': 'Source appliquée — 1 ligne sur le canevas',
|
|
118
|
+
'toast.sourceAppliedMany': 'Source appliquée — {rows} lignes sur le canevas',
|
|
119
|
+
'toast.parseError': 'Impossible d’analyser ce HTML',
|
|
120
|
+
'modal.copyAssist': 'Assistant de rédaction',
|
|
121
|
+
'modal.draftCopyTitle': 'Rédiger le texte de cette campagne',
|
|
122
|
+
'ai.goal': 'Objectif',
|
|
123
|
+
'ai.tone': 'Ton',
|
|
124
|
+
'ai.briefLabel': 'De quoi parle cet e-mail ?',
|
|
125
|
+
'ai.briefPlaceholder': 'ex. Collection automne, 15 % pour les abonnés, livraison gratuite dès 150 €',
|
|
126
|
+
'ai.generate': 'Générer le texte',
|
|
127
|
+
'ai.writing': 'Rédaction en cours…',
|
|
128
|
+
'ai.kindHeadline': 'Titre',
|
|
129
|
+
'ai.kindBody': 'Corps du texte',
|
|
130
|
+
'ai.kindButton': 'Texte du bouton',
|
|
131
|
+
'ai.actionInsertHeading': 'Insérer comme titre',
|
|
132
|
+
'ai.actionInsertText': 'Insérer comme bloc de texte',
|
|
133
|
+
'ai.actionInsertButton': 'Insérer comme bouton',
|
|
134
|
+
'toast.headingAdded': 'Titre ajouté',
|
|
135
|
+
'toast.textBlockAdded': 'Bloc de texte ajouté',
|
|
136
|
+
'toast.buttonAdded': 'Bouton ajouté',
|
|
137
|
+
'preview.kickerMobile': 'Aperçu — mobile 375px',
|
|
138
|
+
'preview.kickerDark': 'Aperçu — boîte de réception sombre',
|
|
139
|
+
'preview.kickerDesktop': 'Aperçu — bureau {width}px',
|
|
140
|
+
'action.close': 'Fermer',
|
|
141
|
+
'toast.duplicated': 'Dupliqué',
|
|
142
|
+
'toast.fileUploadedOne': '1 fichier téléversé',
|
|
143
|
+
'toast.fileUploadedMany': '{count} fichiers téléversés',
|
|
144
|
+
'toast.imageReplaced': 'Image remplacée',
|
|
145
|
+
'toast.imageAdded': 'Image ajoutée au canevas',
|
|
146
|
+
'toast.htmlCopied': 'HTML copié dans le presse-papiers',
|
|
147
|
+
'toast.templateLoaded': '{name} chargé',
|
|
148
|
+
'toast.snippetDefaultLabel': 'Extrait',
|
|
149
|
+
'toast.snippetInserted': '{name} inséré',
|
|
150
|
+
'toast.snippetCopied': '{name} copié — sélectionnez un bloc de texte pour l’insérer',
|
|
151
|
+
};
|
|
152
|
+
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/** Croatian (Hrvatski) — `hr`. AI-drafted, not reviewed by a native speaker. Correctable one key at a time via `.messages` overrides. */
|
|
2
|
+
export const HR = {
|
|
3
|
+
'action.undoHint': 'Poništi — ⌘Z',
|
|
4
|
+
'action.redoHint': 'Ponovi — ⌘⇧Z',
|
|
5
|
+
'action.chromeToDark': 'Tamno',
|
|
6
|
+
'action.chromeToLight': 'Svijetlo',
|
|
7
|
+
'action.chromeHint': 'Tema uređivača svijetla / tamna',
|
|
8
|
+
'action.aiCopy': 'Tekst',
|
|
9
|
+
'action.aiCopyHint': 'Napiši tekst uz pomoć AI',
|
|
10
|
+
'action.code': 'Kôd',
|
|
11
|
+
'action.codeHint': 'Uredi izvorni HTML uz prikaz uživo',
|
|
12
|
+
'action.preview': 'Pregled',
|
|
13
|
+
'action.export': 'Izvezi',
|
|
14
|
+
'device.desktop': 'Računalo',
|
|
15
|
+
'device.desktopHint': 'Širina za računalo',
|
|
16
|
+
'device.mobile': 'Mobitel',
|
|
17
|
+
'device.mobileHint': 'Širina za mobitel',
|
|
18
|
+
'device.dark': 'Tamno',
|
|
19
|
+
'device.darkHint': 'Tamni način sandučića',
|
|
20
|
+
'status.autosaveOn': 'automatsko spremanje uključeno',
|
|
21
|
+
'status.saved': 'spremljeno {time}',
|
|
22
|
+
'status.saveFailed': 'nije spremljeno — spremište je puno',
|
|
23
|
+
'canvas.meta': '{rows} redaka · {blocks} blokova · {width}px',
|
|
24
|
+
'tab.design': 'Stil',
|
|
25
|
+
'tab.designHint': 'Oblikuj odabir',
|
|
26
|
+
'tab.blocks': 'Blokovi',
|
|
27
|
+
'tab.blocksHint': 'Blokovi sadržaja i varijable',
|
|
28
|
+
'tab.rows': 'Odjeljci',
|
|
29
|
+
'tab.rowsHint': 'Rasporedi odjeljaka i model platna',
|
|
30
|
+
'tab.files': 'Datoteke',
|
|
31
|
+
'tab.filesHint': 'Knjižnica resursa',
|
|
32
|
+
'tab.layers': 'Struktura',
|
|
33
|
+
'tab.layersHint': 'Struktura dokumenta',
|
|
34
|
+
'tab.theme': 'Tema',
|
|
35
|
+
'tab.themeHint': 'Globalni stilovi',
|
|
36
|
+
'tab.data': 'Var.',
|
|
37
|
+
'tab.dataHint': 'Varijable koje pruža vaš kod',
|
|
38
|
+
'inspector.blockProperties': 'Svojstva bloka',
|
|
39
|
+
'inspector.sectionProperties': 'Svojstva odjeljka',
|
|
40
|
+
'inspector.title': 'Inspektor',
|
|
41
|
+
'inspector.sectionLabel': 'Odjeljak',
|
|
42
|
+
'inspector.nothingSelected': 'Ništa nije odabrano',
|
|
43
|
+
'action.duplicateHint': 'Dupliciraj — ⌘D',
|
|
44
|
+
'action.deleteHint': 'Izbriši — ⌫',
|
|
45
|
+
'inspector.emptyBody':
|
|
46
|
+
'Odaberite redak ili blok na platnu za oblikovanje ovdje. Povucite blokove s kartice <strong style="color: var(--ed-text); font-weight: 600;">Blokovi</strong>; dvaput kliknite tekst za izravno uređivanje.',
|
|
47
|
+
'inspector.shortcuts': 'Prečaci',
|
|
48
|
+
'shortcut.undoRedo': '⌘Z / ⌘⇧Z — poništi, ponovi',
|
|
49
|
+
'shortcut.duplicate': '⌘D — dupliciraj odabir',
|
|
50
|
+
'shortcut.delete': '⌫ — izbriši odabir',
|
|
51
|
+
'shortcut.export': '⌘E — izvezi HTML',
|
|
52
|
+
'shortcut.escape': 'ESC — poništi odabir, zatvori',
|
|
53
|
+
'blocks.dragHint': 'Povucite na platno',
|
|
54
|
+
'blocks.count': '{count} blokova',
|
|
55
|
+
'rows.sectionLayouts': 'Rasporedi odjeljaka',
|
|
56
|
+
'rows.customMarkup': 'Prilagođeni kôd',
|
|
57
|
+
'rows.htmlRowHint': 'Povucite za umetanje ili kliknite za dodavanje — redak preko cijele širine koji ispunjavate izvornim HTML-om',
|
|
58
|
+
'rows.rawHtmlSection': 'Odjeljak s izvornim HTML-om',
|
|
59
|
+
'rows.rawHtmlDesc': 'Odjeljak preko cijele širine, vaš vlastiti kôd, i dalje se može povlačiti',
|
|
60
|
+
'rows.canvasModel': 'Model platna',
|
|
61
|
+
'rows.modeRowBased': 'Temeljeno na recima',
|
|
62
|
+
'rows.modeFreeStack': 'Slobodni stog',
|
|
63
|
+
'rows.hintRows':
|
|
64
|
+
'Temeljeno na odjeljcima: prvo ispustite raspored, zatim blokove u njegove stupce — svaki odjeljak ima vlastitu pozadinu, obrub, flex ili grid postavke.',
|
|
65
|
+
'rows.hintStack': 'Slobodni stog: bez rasporeda — svaki ispušteni blok postaje vlastiti odjeljak preko cijele širine, poslagan redom.',
|
|
66
|
+
'files.libraryCount': 'Knjižnica — {count} datoteka',
|
|
67
|
+
'files.openManager': 'Otvori upravitelja datoteka',
|
|
68
|
+
'files.dragToCanvas': 'Povucite bilo koju datoteku izravno na platno da je postavite kao slikovni blok.',
|
|
69
|
+
'layers.structure': 'Struktura',
|
|
70
|
+
'layers.sectionSingle': 'Odjeljak',
|
|
71
|
+
'layers.sectionMulti': 'Odjeljak · {count} stupaca',
|
|
72
|
+
'layers.blockCount': '{count} bl.',
|
|
73
|
+
'theme.globalStyles': 'Globalni stilovi',
|
|
74
|
+
'vars.title': 'Varijable',
|
|
75
|
+
'vars.fromCode': '{count} iz vašeg koda',
|
|
76
|
+
'vars.declaredNote': 'Deklarirane od strane vaše aplikacije — platno uvijek prikazuje token, nikad vrijednost.',
|
|
77
|
+
'vars.filterPlaceholder': 'Filtriraj varijable…',
|
|
78
|
+
'vars.insertHint': 'Kliknite za umetanje u odabrani tekst, naslov ili gumb',
|
|
79
|
+
'vars.insert': 'umetni',
|
|
80
|
+
'vars.noMatch': 'Nijedna varijabla ne odgovara ovom filtru.',
|
|
81
|
+
'vars.noneDeclared': 'Vaša aplikacija još nije deklarirala nijednu varijablu.',
|
|
82
|
+
'vars.rteHint': 'Tijekom uređivanja teksta varijablu možete odabrati i izravno iz padajućeg izbornika ugrađene alatne trake.',
|
|
83
|
+
'modal.fileManager': 'Upravitelj datoteka',
|
|
84
|
+
'modal.assetsTitle': 'Resursi',
|
|
85
|
+
'modal.replaceImage': 'Zamijeni sliku',
|
|
86
|
+
'library.searchPlaceholder': 'Pretraži datoteke…',
|
|
87
|
+
'action.upload': 'Prenesi',
|
|
88
|
+
'library.clickToPlace': 'Kliknite datoteku za postavljanje · ili povucite datoteku na platno',
|
|
89
|
+
'library.clickToReplace': 'Kliknite datoteku za zamjenu odabrane slike',
|
|
90
|
+
'library.storageLabel': '{count} datoteka · {size}',
|
|
91
|
+
'library.folders': 'Mape',
|
|
92
|
+
'library.dropHint': 'Ispustite slikovne datoteke ovdje za prijenos — ili upotrijebite gumb Prenesi.',
|
|
93
|
+
'library.deleteFileHint': 'Izbriši datoteku',
|
|
94
|
+
'library.del': 'IZBR',
|
|
95
|
+
'toast.assetDeleted': '{name} izbrisano',
|
|
96
|
+
'modal.export': 'Izvezi',
|
|
97
|
+
'modal.exportTitle': 'HTML e-pošte temeljen na tablicama',
|
|
98
|
+
'export.copy': 'Kopiraj',
|
|
99
|
+
'export.copied': 'Kopirano',
|
|
100
|
+
'action.download': 'Preuzmi',
|
|
101
|
+
'export.meta': '{kb} KB · tablice + ugrađeni stilovi · širine sigurne za Outlook',
|
|
102
|
+
'modal.rawHtmlTitle': 'Izvorni HTML, prikaz uživo',
|
|
103
|
+
'code.statusEdited': 'Prikaz koda — uređeno — prikaz uživo, još nije primijenjeno',
|
|
104
|
+
'code.statusSynced': 'Prikaz koda — usklađeno s platnom',
|
|
105
|
+
'action.reload': 'Ponovno učitaj',
|
|
106
|
+
'action.reloadHint': 'Ponovno učitaj izvor s platna',
|
|
107
|
+
'action.applyToCanvas': 'Primijeni na platno',
|
|
108
|
+
'action.applyToCanvasHint': 'Ponovno raščlani izvor u uredive retke',
|
|
109
|
+
'action.closeWithoutApplyingHint': 'Zatvori bez primjene',
|
|
110
|
+
'code.source': 'Izvor',
|
|
111
|
+
'code.livePreview': 'Prikaz uživo',
|
|
112
|
+
'code.liveHtmlPreviewTitle': 'Prikaz HTML-a uživo',
|
|
113
|
+
'code.applyNote':
|
|
114
|
+
'Primjena raščlanjuje svaki redak tablice najviše razine u redak platna koji i dalje možete odabrati, preurediti i izbrisati — ručno napisani kôd preživi postupak nepromijenjen.',
|
|
115
|
+
'code.meta': '{kb} KB · {lines} redaka',
|
|
116
|
+
'toast.sourceReloaded': 'Izvor ponovno učitan s platna',
|
|
117
|
+
'toast.sourceAppliedOne': 'Izvor primijenjen — 1 redak na platnu',
|
|
118
|
+
'toast.sourceAppliedMany': 'Izvor primijenjen — {rows} redaka na platnu',
|
|
119
|
+
'toast.parseError': 'Taj HTML nije bilo moguće raščlaniti',
|
|
120
|
+
'modal.copyAssist': 'Pomoćnik za tekst',
|
|
121
|
+
'modal.draftCopyTitle': 'Napiši tekst za ovu kampanju',
|
|
122
|
+
'ai.goal': 'Cilj',
|
|
123
|
+
'ai.tone': 'Ton',
|
|
124
|
+
'ai.briefLabel': 'O čemu je ova e-pošta?',
|
|
125
|
+
'ai.briefPlaceholder': 'npr. jesenska kolekcija, 15% za pretplatnike, besplatna dostava iznad 150 €',
|
|
126
|
+
'ai.generate': 'Generiraj tekst',
|
|
127
|
+
'ai.writing': 'Pisanje…',
|
|
128
|
+
'ai.kindHeadline': 'Naslov',
|
|
129
|
+
'ai.kindBody': 'Glavni tekst',
|
|
130
|
+
'ai.kindButton': 'Tekst gumba',
|
|
131
|
+
'ai.actionInsertHeading': 'Umetni kao naslov',
|
|
132
|
+
'ai.actionInsertText': 'Umetni kao tekstualni blok',
|
|
133
|
+
'ai.actionInsertButton': 'Umetni kao gumb',
|
|
134
|
+
'toast.headingAdded': 'Naslov dodan',
|
|
135
|
+
'toast.textBlockAdded': 'Tekstualni blok dodan',
|
|
136
|
+
'toast.buttonAdded': 'Gumb dodan',
|
|
137
|
+
'preview.kickerMobile': 'Pregled — mobitel 375px',
|
|
138
|
+
'preview.kickerDark': 'Pregled — tamni sandučić',
|
|
139
|
+
'preview.kickerDesktop': 'Pregled — računalo {width}px',
|
|
140
|
+
'action.close': 'Zatvori',
|
|
141
|
+
'toast.duplicated': 'Duplicirano',
|
|
142
|
+
'toast.fileUploadedOne': 'Prenesena 1 datoteka',
|
|
143
|
+
'toast.fileUploadedMany': 'Preneseno {count} datoteka',
|
|
144
|
+
'toast.imageReplaced': 'Slika zamijenjena',
|
|
145
|
+
'toast.imageAdded': 'Slika dodana na platno',
|
|
146
|
+
'toast.htmlCopied': 'HTML kopiran u međuspremnik',
|
|
147
|
+
'toast.templateLoaded': '{name} učitano',
|
|
148
|
+
'toast.snippetDefaultLabel': 'Isječak',
|
|
149
|
+
'toast.snippetInserted': '{name} umetnuto',
|
|
150
|
+
'toast.snippetCopied': '{name} kopirano — odaberite tekstualni blok za umetanje',
|
|
151
|
+
};
|
|
152
|
+
|