@seliseblocks/mailcraft 0.1.1 → 0.2.1

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.
Files changed (86) hide show
  1. package/DOCS.md +243 -16
  2. package/README.md +15 -6
  3. package/README.md.txt +135 -0
  4. package/dist/mailcraft-editor.bundle.js +87 -47
  5. package/dist/mailcraft-editor.bundle.js.map +3 -3
  6. package/examples/templates/activate-your-account.html +1 -1
  7. package/examples/templates/back-in-stock.html +1 -1
  8. package/examples/templates/cart-left-behind.html +1 -1
  9. package/examples/templates/community-giveaway.html +1 -1
  10. package/examples/templates/frontend-futures-invite.html +1 -1
  11. package/examples/templates/give-25-get-25.html +1 -1
  12. package/examples/templates/invoice-paid.html +1 -1
  13. package/examples/templates/meet-nova-launch.html +1 -1
  14. package/examples/templates/mega-weekend-sale.html +1 -1
  15. package/examples/templates/order-confirmed.html +80 -80
  16. package/examples/templates/rate-your-headphones.html +1 -1
  17. package/examples/templates/reset-your-password.html +1 -1
  18. package/examples/templates/thankyou-promo-code.html +1 -1
  19. package/examples/templates/the-sunday-brief.html +1 -1
  20. package/examples/templates/welcome-to-your-workspace.html +1 -1
  21. package/examples/templates/your-order-shipped.html +1 -1
  22. package/examples/templates/your-password-was-changed.html +1 -1
  23. package/examples/templates/your-signin-code.html +1 -1
  24. package/examples/vanilla.html +261 -47
  25. package/package.json +7 -2
  26. package/src/core/assets.js +10 -15
  27. package/src/core/binder.js +140 -118
  28. package/src/core/blocks.js +14 -1
  29. package/src/core/css-cascade.js +117 -117
  30. package/src/core/editor-core.js +1540 -1492
  31. package/src/core/export.js +158 -55
  32. package/src/core/i18n/ar.js +218 -177
  33. package/src/core/i18n/bg.js +195 -152
  34. package/src/core/i18n/bn.js +217 -176
  35. package/src/core/i18n/ca.js +195 -152
  36. package/src/core/i18n/cs.js +195 -152
  37. package/src/core/i18n/da.js +195 -152
  38. package/src/core/i18n/de-CH.js +195 -152
  39. package/src/core/i18n/de.js +195 -152
  40. package/src/core/i18n/dz.js +220 -179
  41. package/src/core/i18n/el.js +195 -152
  42. package/src/core/i18n/en.js +3 -11
  43. package/src/core/i18n/es.js +195 -152
  44. package/src/core/i18n/et.js +195 -152
  45. package/src/core/i18n/fi.js +195 -152
  46. package/src/core/i18n/fr.js +195 -152
  47. package/src/core/i18n/hr.js +195 -152
  48. package/src/core/i18n/hu.js +195 -152
  49. package/src/core/i18n/index.js +83 -83
  50. package/src/core/i18n/it.js +195 -152
  51. package/src/core/i18n/lt.js +195 -152
  52. package/src/core/i18n/lv.js +195 -152
  53. package/src/core/i18n/nb.js +195 -152
  54. package/src/core/i18n/nl.js +195 -152
  55. package/src/core/i18n/pl.js +195 -152
  56. package/src/core/i18n/pt.js +195 -152
  57. package/src/core/i18n/ro.js +195 -152
  58. package/src/core/i18n/ru.js +195 -152
  59. package/src/core/i18n/sk.js +195 -152
  60. package/src/core/i18n/sl.js +195 -152
  61. package/src/core/i18n/sv.js +195 -152
  62. package/src/core/i18n/tables.js +50 -50
  63. package/src/core/i18n/tr.js +195 -152
  64. package/src/core/i18n/uk.js +195 -152
  65. package/src/core/icons.js +237 -235
  66. package/src/core/ids.js +1 -1
  67. package/src/core/import-html.js +1047 -959
  68. package/src/core/layout-style.js +100 -100
  69. package/src/core/parse.js +10 -10
  70. package/src/core/placeholder.js +15 -15
  71. package/src/core/sanitize.js +141 -141
  72. package/src/core/storage-limits.js +189 -184
  73. package/src/core/storage.js +85 -85
  74. package/src/core/theme.js +15 -1
  75. package/src/core/variables.js +11 -11
  76. package/src/index.js +9 -9
  77. package/src/mailcraft-editor.js +64 -25
  78. package/src/render/block-body.js +49 -6
  79. package/src/render/canvas.js +74 -8
  80. package/src/render/fields.js +619 -588
  81. package/src/render/focus-preserve.js +158 -158
  82. package/src/render/rte.js +241 -212
  83. package/src/render/screenshot.js +138 -132
  84. package/src/render/story.js +415 -415
  85. package/src/render/style.js +44 -8
  86. package/types/index.d.ts +422 -0
@@ -1,152 +1,195 @@
1
- /** Slovenian (Slovenščina) — `sl`. AI-drafted, not reviewed by a native speaker. Correctable one key at a time via `.messages` overrides. */
2
- export const SL = {
3
- 'action.undoHint': 'Razveljavi — ⌘Z',
4
- 'action.redoHint': 'Ponovi — ⌘⇧Z',
5
- 'action.chromeToDark': 'Temno',
6
- 'action.chromeToLight': 'Svetlo',
7
- 'action.chromeHint': 'Tema urejevalnika svetla / temna',
8
- 'action.aiCopy': 'Besedilo',
9
- 'action.aiCopyHint': 'Napiši besedilo z UI',
10
- 'action.code': 'Koda',
11
- 'action.codeHint': 'Uredi surovi HTML z ogledom v živo',
12
- 'action.preview': 'Predogled',
13
- 'action.export': 'Izvozi',
14
- 'device.desktop': 'Namizje',
15
- 'device.desktopHint': 'Širina za namizje',
16
- 'device.mobile': 'Mobilna naprava',
17
- 'device.mobileHint': 'Širina za mobilno napravo',
18
- 'device.dark': 'Temno',
19
- 'device.darkHint': 'Temen način nabiralnika',
20
- 'status.autosaveOn': 'samodejno shranjevanje vklopljeno',
21
- 'status.saved': 'shranjeno {time}',
22
- 'status.saveFailed': 'ni shranjeno — pomnilnik je poln',
23
- 'canvas.meta': '{rows} vrstic · {blocks} blokov · {width}px',
24
- 'tab.design': 'Slog',
25
- 'tab.designHint': 'Oblikuj izbor',
26
- 'tab.blocks': 'Bloki',
27
- 'tab.blocksHint': 'Vsebinski bloki in spremenljivke',
28
- 'tab.rows': 'Odseki',
29
- 'tab.rowsHint': 'Postavitve odsekov in model platna',
30
- 'tab.files': 'Datoteke',
31
- 'tab.filesHint': 'Knjižnica virov',
32
- 'tab.layers': 'Struktura',
33
- 'tab.layersHint': 'Struktura dokumenta',
34
- 'tab.theme': 'Tema',
35
- 'tab.themeHint': 'Globalni slogi',
36
- 'tab.data': 'Spr.',
37
- 'tab.dataHint': 'Spremenljivke, ki jih zagotavlja vaša koda',
38
- 'inspector.blockProperties': 'Lastnosti bloka',
39
- 'inspector.sectionProperties': 'Lastnosti odseka',
40
- 'inspector.title': 'Inšpektor',
41
- 'inspector.sectionLabel': 'Odsek',
42
- 'inspector.nothingSelected': 'Nič ni izbrano',
43
- 'action.duplicateHint': 'Podvoji — ⌘D',
44
- 'action.deleteHint': 'Izbriši ',
45
- 'inspector.emptyBody':
46
- 'Izberite vrstico ali blok na platnu, da ga oblikujete tukaj. Povlecite bloke iz zavihka <strong style="color: var(--ed-text); font-weight: 600;">Bloki</strong>; dvokliknite besedilo za urejanje na mestu.',
47
- 'inspector.shortcuts': 'Bližnjice',
48
- 'shortcut.undoRedo': '⌘Z / ⌘⇧Z razveljavi, ponovi',
49
- 'shortcut.duplicate': '⌘D — podvoji izbor',
50
- 'shortcut.delete': 'izbriši izbor',
51
- 'shortcut.export': '⌘Eizvozi HTML',
52
- 'shortcut.escape': 'ESCprekliči izbor, zapri',
53
- 'blocks.dragHint': 'Povlecite na platno',
54
- 'blocks.count': '{count} blokov',
55
- 'rows.sectionLayouts': 'Postavitve odsekov',
56
- 'rows.customMarkup': 'Lastna koda',
57
- 'rows.htmlRowHint': 'Povlecite za vstavitev ali kliknite za dodajanje — vrstica čez celo širino, ki jo zapolnite s surovim HTML-jem',
58
- 'rows.rawHtmlSection': 'Odsek s surovim HTML-jem',
59
- 'rows.rawHtmlDesc': 'Odsek čez celo širino, vaša lastna koda, še vedno vlečljiv',
60
- 'rows.canvasModel': 'Model platna',
61
- 'rows.modeRowBased': 'Temelji na vrsticah',
62
- 'rows.modeFreeStack': 'Prosti sklad',
63
- 'rows.hintRows':
64
- 'Temelji na odsekih: najprej spustite postavitev, nato bloke v njene stolpce — vsak odsek ima lastno ozadje, rob, nastavitve flex ali mreže.',
65
- 'rows.hintStack': 'Prosti sklad: brez postavitev — vsak spuščen blok postane lasten odsek čez celo širino, zložen po vrsti.',
66
- 'files.libraryCount': 'Knjižnica{count} datotek',
67
- 'files.openManager': 'Odpri upravitelja datotek',
68
- 'files.dragToCanvas': 'Povlecite katero koli datoteko neposredno na platno, da jo postavite kot slikovni blok.',
69
- 'layers.structure': 'Struktura',
70
- 'layers.sectionSingle': 'Odsek',
71
- 'layers.sectionMulti': 'Odsek · {count} stolpcev',
72
- 'layers.blockCount': '{count} bl.',
73
- 'theme.globalStyles': 'Globalni slogi',
74
- 'vars.title': 'Spremenljivke',
75
- 'vars.fromCode': '{count} iz vaše kode',
76
- 'vars.declaredNote': 'Deklarirane s strani vaše aplikacije — platno vedno prikaže žeton, nikoli vrednosti.',
77
- 'vars.filterPlaceholder': 'Filtriraj spremenljivke…',
78
- 'vars.insertHint': 'Kliknite za vstavitev v izbrano besedilo, naslov ali gumb',
79
- 'vars.insert': 'vstavi',
80
- 'vars.noMatch': 'Nobena spremenljivka ne ustreza temu filtru.',
81
- 'vars.noneDeclared': 'Vaša aplikacija še ni deklarirala nobenih spremenljivk.',
82
- 'vars.rteHint': 'Med urejanjem besedila lahko spremenljivko izberete tudi neposredno iz spustnega menija vgrajene orodne vrstice.',
83
- 'modal.fileManager': 'Upravitelj datotek',
84
- 'modal.assetsTitle': 'Viri',
85
- 'modal.replaceImage': 'Zamenjaj sliko',
86
- 'library.searchPlaceholder': 'Iskanje datotek…',
87
- 'action.upload': 'Naloži',
88
- 'library.clickToPlace': 'Kliknite datoteko za postavitev · ali povlecite datoteko na platno',
89
- 'library.clickToReplace': 'Kliknite datoteko za zamenjavo izbrane slike',
90
- 'library.storageLabel': '{count} datotek · {size}',
91
- 'library.folders': 'Mape',
92
- 'library.dropHint': 'Sem spustite slikovne datoteke za nalaganje — ali uporabite gumb Naloži.',
93
- 'library.deleteFileHint': 'Izbriši datoteko',
94
- 'library.del': 'IZBR',
95
- 'toast.assetDeleted': '{name} izbrisano',
96
- 'modal.export': 'Izvozi',
97
- 'modal.exportTitle': 'HTML e-pošte na osnovi tabel',
98
- 'export.copy': 'Kopiraj',
99
- 'export.copied': 'Kopirano',
100
- 'action.download': 'Prenesi',
101
- 'export.meta': '{kb} KB · tabele + vgrajeni slogi · širine, varne za Outlook',
102
- 'modal.rawHtmlTitle': 'Surovi HTML, ogled v živo',
103
- 'code.statusEdited': 'Pogled kode urejeno ogled v živo, še ni uporabljeno',
104
- 'code.statusSynced': 'Pogled kode usklajeno s platnom',
105
- 'action.reload': 'Znova naloži',
106
- 'action.reloadHint': 'Znova naloži vir s platna',
107
- 'action.applyToCanvas': 'Uporabi na platnu',
108
- 'action.applyToCanvasHint': 'Znova razčleni vir v uredljive vrstice',
109
- 'action.closeWithoutApplyingHint': 'Zapri brez uporabe',
110
- 'code.source': 'Vir',
111
- 'code.livePreview': 'Ogled v živo',
112
- 'code.liveHtmlPreviewTitle': 'Ogled HTML v živo',
113
- 'code.applyNote':
114
- 'Uporabi razčleni vsako vrstico tabele najvišje ravni v vrstico platna, ki jo lahko še vedno izberete, prerazporedite in izbrišete — ročno napisana koda postopek preživi nespremenjena.',
115
- 'code.meta': '{kb} KB · {lines} vrstic',
116
- 'toast.sourceReloaded': 'Vir znova naložen s platna',
117
- 'toast.sourceAppliedOne': 'Vir uporabljen — 1 vrstica na platnu',
118
- 'toast.sourceAppliedMany': 'Vir uporabljen — {rows} vrstic na platnu',
119
- 'toast.parseError': 'Tega HTML-ja ni bilo mogoče razčleniti',
120
- 'modal.copyAssist': 'Pomočnik za besedilo',
121
- 'modal.draftCopyTitle': 'Napiši besedilo za to kampanjo',
122
- 'ai.goal': 'Cilj',
123
- 'ai.tone': 'Ton',
124
- 'ai.briefLabel': 'O čem govori ta e-pošta?',
125
- 'ai.briefPlaceholder': 'npr. jesenska kolekcija, 15 % za naročnike, brezplačna dostava nad 150 €',
126
- 'ai.generate': 'Ustvari besedilo',
127
- 'ai.writing': 'Pisanje…',
128
- 'ai.kindHeadline': 'Naslov',
129
- 'ai.kindBody': 'Glavno besedilo',
130
- 'ai.kindButton': 'Besedilo gumba',
131
- 'ai.actionInsertHeading': 'Vstavi kot naslov',
132
- 'ai.actionInsertText': 'Vstavi kot besedilni blok',
133
- 'ai.actionInsertButton': 'Vstavi kot gumb',
134
- 'toast.headingAdded': 'Naslov dodan',
135
- 'toast.textBlockAdded': 'Besedilni blok dodan',
136
- 'toast.buttonAdded': 'Gumb dodan',
137
- 'preview.kickerMobile': 'Predogled mobilna naprava 375px',
138
- 'preview.kickerDark': 'Predogled temen nabiralnik',
139
- 'preview.kickerDesktop': 'Predogled namizje {width}px',
140
- 'action.close': 'Zapri',
141
- 'toast.duplicated': 'Podvojeno',
142
- 'toast.fileUploadedOne': 'Naložena 1 datoteka',
143
- 'toast.fileUploadedMany': 'Naloženih {count} datotek',
144
- 'toast.imageReplaced': 'Slika zamenjana',
145
- 'toast.imageAdded': 'Slika dodana na platno',
146
- 'toast.htmlCopied': 'HTML kopiran v odložišče',
147
- 'toast.templateLoaded': '{name} naloženo',
148
- 'toast.snippetDefaultLabel': 'Odlomek',
149
- 'toast.snippetInserted': '{name} vstavljeno',
150
- 'toast.snippetCopied': '{name} kopirano — izberite besedilni blok za vstavitev',
151
- };
152
-
1
+ /** Slovenian (Slovenščina) — `sl`. AI-drafted, not reviewed by a native speaker. Correctable one key at a time via `.messages` overrides. */
2
+ export const SL = {
3
+ 'action.undoHint': 'Razveljavi — ⌘Z',
4
+ 'action.redoHint': 'Ponovi — ⌘⇧Z',
5
+ 'action.chromeToDark': 'Temno',
6
+ 'action.chromeToLight': 'Svetlo',
7
+ 'action.chromeHint': 'Tema urejevalnika svetla / temna',
8
+ 'action.chromeHintToDark': 'Temni način',
9
+ 'action.chromeHintToLight': 'Svetli način',
10
+ 'action.aiDraft': 'Osnutek',
11
+ 'action.aiDraftHint': 'Napiši vsebino e-pošte z UI',
12
+ 'action.code': 'Koda',
13
+ 'action.codeHint': 'Uredi surovi HTML z ogledom v živo',
14
+ 'action.preview': 'Predogled',
15
+ 'action.previewHint': 'Predogled e-pošte',
16
+ 'action.export': 'Izvozi',
17
+ 'action.exportHint': 'Izvozi svojo e-pošto',
18
+ 'device.desktop': 'Namizje',
19
+ 'device.desktopHint': 'Širina za namizje',
20
+ 'device.mobile': 'Mobilna naprava',
21
+ 'device.mobileHint': 'Širina za mobilno napravo',
22
+ 'status.autosaveOn': 'samodejno shranjevanje vklopljeno',
23
+ 'status.saved': 'shranjeno {time}',
24
+ 'status.saveFailed': 'ni shranjeno — pomnilnik je poln',
25
+ 'canvas.meta': '{rows} vrstic · {blocks} blokov · {width}px',
26
+ 'tab.design': 'Slog',
27
+ 'tab.designHint': 'Oblikuj izbor',
28
+ 'tab.blocks': 'Bloki',
29
+ 'tab.blocksHint': 'Vsebinski bloki in spremenljivke',
30
+ 'tab.rows': 'Odseki',
31
+ 'tab.rowsHint': 'Postavitve odsekov in model platna',
32
+ 'tab.files': 'Datoteke',
33
+ 'tab.filesHint': 'Knjižnica virov',
34
+ 'tab.layers': 'Struktura',
35
+ 'tab.layersHint': 'Struktura dokumenta',
36
+ 'tab.settings': 'Nastavitve',
37
+ 'tab.settingsHint': 'Nastavitve e-pošte',
38
+ 'tab.data': 'Spr.',
39
+ 'tab.dataHint': 'Spremenljivke, ki jih zagotavlja vaša koda',
40
+ 'inspector.blockProperties': 'Lastnosti bloka',
41
+ 'inspector.sectionProperties': 'Lastnosti odseka',
42
+ 'inspector.title': 'Inšpektor',
43
+ 'inspector.sectionLabel': 'Odsek',
44
+ 'inspector.nothingSelected': 'Nič ni izbrano',
45
+ 'action.duplicateHint': 'Podvoji — ⌘D',
46
+ 'action.deleteHint': 'Izbriši ',
47
+ 'inspector.emptyBody':
48
+ 'Izberite vrstico ali blok na platnu, da ga oblikujete tukaj. Povlecite bloke iz zavihka <strong style="color: var(--ed-text); font-weight: 600;">Bloki</strong>; dvokliknite besedilo za urejanje na mestu.',
49
+ 'inspector.shortcuts': 'Bližnjice',
50
+ 'shortcut.undoRedo': '⌘Z / ⌘⇧Z razveljavi, ponovi',
51
+ 'shortcut.duplicate': '⌘Dpodvoji izbor',
52
+ 'shortcut.delete': 'izbriši izbor',
53
+ 'shortcut.export': '⌘E izvozi HTML',
54
+ 'shortcut.escape': 'ESC — prekliči izbor, zapri',
55
+ 'blocks.dragHint': 'Povlecite na platno',
56
+ 'blocks.count': '{count} blokov',
57
+ 'rows.sectionLayouts': 'Postavitve odsekov',
58
+ 'rows.customMarkup': 'Lastna koda',
59
+ 'rows.htmlRowHint': 'Povlecite za vstavitev ali kliknite za dodajanje — vrstica čez celo širino, ki jo zapolnite s surovim HTML-jem',
60
+ 'rows.rawHtmlSection': 'Odsek s surovim HTML-jem',
61
+ 'rows.rawHtmlDesc': 'Odsek čez celo širino, vaša lastna koda, še vedno vlečljiv',
62
+ 'rows.canvasModel': 'Model platna',
63
+ 'rows.modeRowBased': 'Temelji na vrsticah',
64
+ 'rows.modeFreeStack': 'Prosti sklad',
65
+ 'rows.hintRows':
66
+ 'Temelji na odsekih: najprej spustite postavitev, nato bloke v njene stolpce vsak odsek ima lastno ozadje, rob, nastavitve flex ali mreže.',
67
+ 'rows.hintStack': 'Prosti sklad: brez postavitev — vsak spuščen blok postane lasten odsek čez celo širino, zložen po vrsti.',
68
+ 'files.libraryCount': 'Knjižnica {count} datotek',
69
+ 'files.openManager': 'Odpri upravitelja datotek',
70
+ 'files.dragToCanvas': 'Povlecite katero koli datoteko neposredno na platno, da jo postavite kot slikovni blok.',
71
+ 'layers.structure': 'Struktura',
72
+ 'layers.sectionSingle': 'Odsek',
73
+ 'layers.sectionMulti': 'Odsek · {count} stolpcev',
74
+ 'layers.column': 'Stolpec {index}',
75
+ 'layers.blockCount': '{count} bl.',
76
+ 'vars.title': 'Spremenljivke',
77
+ 'vars.fromCode': '{count} iz vaše kode',
78
+ 'vars.declaredNote': 'Deklarirane s strani vaše aplikacije — platno vedno prikaže žeton, nikoli vrednosti.',
79
+ 'vars.filterPlaceholder': 'Filtriraj spremenljivke…',
80
+ 'vars.insertHint': 'Kliknite za vstavitev v izbrano besedilo, naslov ali gumb',
81
+ 'vars.insert': 'vstavi',
82
+ 'vars.noMatch': 'Nobena spremenljivka ne ustreza temu filtru.',
83
+ 'vars.noneDeclared': 'Vaša aplikacija še ni deklarirala nobenih spremenljivk.',
84
+ 'vars.rteHint': 'Med urejanjem besedila lahko spremenljivko izberete tudi neposredno iz spustnega menija vgrajene orodne vrstice.',
85
+ 'modal.fileManager': 'Upravitelj datotek',
86
+ 'modal.assetsTitle': 'Viri',
87
+ 'modal.replaceImage': 'Zamenjaj sliko',
88
+ 'library.searchPlaceholder': 'Iskanje datotek…',
89
+ 'action.upload': 'Naloži',
90
+ 'library.clickToPlace': 'Kliknite datoteko za postavitev · ali povlecite datoteko na platno',
91
+ 'library.clickToReplace': 'Kliknite datoteko za zamenjavo izbrane slike',
92
+ 'library.storageLabel': '{count} datotek · {size}',
93
+ 'library.folders': 'Mape',
94
+ 'library.dropHint': 'Sem spustite slikovne datoteke za nalaganje — ali uporabite gumb Naloži.',
95
+ 'library.deleteFileHint': 'Izbriši datoteko',
96
+ 'library.del': 'IZBR',
97
+ 'toast.assetDeleted': '{name} izbrisano',
98
+ 'library.allFiles': 'Vse datoteke',
99
+ 'library.loadMore': 'Naloži več',
100
+ 'library.empty': 'Tu še ni datotek.',
101
+ 'storage.loading': 'Nalaganje datotek…',
102
+ 'storage.uploading': 'Nalaganje {count}…',
103
+ 'storage.errLoadFailed': 'Knjižnice datotek ni bilo mogoče naložiti {reason}',
104
+ 'storage.errNoLimits': 'Nalaganje je izklopljeno: ta aplikacija ni določila omejitev nalaganja.',
105
+ 'storage.errNoMaxBytes': 'Nalaganje je izklopljeno: največja velikost datoteke ni določena.',
106
+ 'storage.errTooLarge': '{name} je {size} omejitev je {max}.',
107
+ 'storage.errFormat': '{name} je datoteka vrste {type}, ki tu ni dovoljena.',
108
+ 'storage.errSvg': '{name} je SVG, ki ga ta aplikacija ne sprejema.',
109
+ 'storage.errDimensions': '{name} je {w}×{ht}px — omejitev je {maxW}×{maxH}px.',
110
+ 'storage.errTooMany': 'Naenkrat je mogoče naložiti le {max} datotek.',
111
+ 'storage.errUnreadable': '{name} ni berljiva slika.',
112
+ 'storage.errUploadFailed': '{name} ni bilo mogoče naložiti — {reason}',
113
+ 'storage.errDeleteFailed': '{name} ni bilo mogoče izbrisati — {reason}',
114
+ 'modal.export': 'Izvozi',
115
+ 'modal.exportTitle': 'HTML e-pošte na osnovi tabel',
116
+ 'export.copy': 'Kopiraj',
117
+ 'export.copied': 'Kopirano',
118
+ 'action.download': 'Prenesi',
119
+ 'export.meta': '{kb} KB · tabele + vgrajeni slogi · širine, varne za Outlook',
120
+ 'modal.rawHtmlTitle': 'Surovi HTML, ogled v živo',
121
+ 'code.statusEdited': 'Pogled kode urejeno — ogled v živo, še ni uporabljeno',
122
+ 'code.statusSynced': 'Pogled kode — usklajeno s platnom',
123
+ 'action.reload': 'Znova naloži',
124
+ 'action.reloadHint': 'Znova naloži vir s platna',
125
+ 'action.applyToCanvas': 'Uporabi na platnu',
126
+ 'action.applyToCanvasHint': 'Znova razčleni vir v uredljive vrstice',
127
+ 'action.closeWithoutApplyingHint': 'Zapri brez uporabe',
128
+ 'code.source': 'Vir',
129
+ 'code.livePreview': 'Ogled v živo',
130
+ 'code.liveHtmlPreviewTitle': 'Ogled HTML v živo',
131
+ 'code.applyNote':
132
+ 'Uporabi razčleni vsako vrstico tabele najvišje ravni v vrstico platna, ki jo lahko še vedno izberete, prerazporedite in izbrišete — ročno napisana koda postopek preživi nespremenjena.',
133
+ 'code.meta': '{kb} KB · {lines} vrstic',
134
+ 'toast.sourceReloaded': 'Vir znova naložen s platna',
135
+ 'toast.sourceAppliedOne': 'Vir uporabljen — 1 vrstica na platnu',
136
+ 'toast.sourceAppliedMany': 'Vir uporabljen — {rows} vrstic na platnu',
137
+ 'toast.parseError': 'Tega HTML-ja ni bilo mogoče razčleniti',
138
+ 'modal.aiDraft': 'Pomočnik za pisanje z UI',
139
+ 'modal.aiDraftTitle': 'Napišite svojo e-pošto z UI',
140
+ 'ai.disclosure': 'UI ustvari predloge na podlagi vašega povzetka. Pred pošiljanjem rezultat preglejte in uredite.',
141
+ 'ai.goal': 'Cilj',
142
+ 'ai.tone': 'Ton',
143
+ 'ai.briefLabel': 'O čem govori ta e-pošta?',
144
+ 'ai.briefPlaceholder': 'npr. jesenska kolekcija, 15 % za naročnike, brezplačna dostava nad 150 €',
145
+ 'ai.generate': 'Ustvari besedilo',
146
+ 'ai.writing': 'Pisanje…',
147
+ 'ai.kindHeadline': 'Naslov',
148
+ 'ai.kindBody': 'Glavno besedilo',
149
+ 'ai.kindButton': 'Besedilo gumba',
150
+ 'ai.actionInsertHeading': 'Vstavi kot naslov',
151
+ 'ai.actionInsertText': 'Vstavi kot besedilni blok',
152
+ 'ai.actionInsertButton': 'Vstavi kot gumb',
153
+ 'toast.headingAdded': 'Naslov dodan',
154
+ 'toast.textBlockAdded': 'Besedilni blok dodan',
155
+ 'toast.buttonAdded': 'Gumb dodan',
156
+ 'preview.kickerMobile': 'Predogled — mobilna naprava 375px',
157
+ 'preview.kickerDesktop': 'Predogled — namizje {width}px',
158
+ 'action.close': 'Zapri',
159
+ 'toast.duplicated': 'Podvojeno',
160
+ 'toast.fileUploadedOne': 'Naložena 1 datoteka',
161
+ 'toast.fileUploadedMany': 'Naloženih {count} datotek',
162
+ 'toast.imageReplaced': 'Slika zamenjana',
163
+ 'toast.imageAdded': 'Slika dodana na platno',
164
+ 'toast.htmlCopied': 'HTML kopiran v odložišče',
165
+ 'toast.templateLoaded': '{name} naloženo',
166
+ 'toast.snippetDefaultLabel': 'Odlomek',
167
+ 'toast.snippetInserted': '{name} vstavljeno',
168
+ 'toast.snippetCopied': '{name} kopirano — izberite besedilni blok za vstavitev',
169
+ 'rte.textStyle': 'Slog besedila',
170
+ 'rte.mergeTags': 'Spojna polja',
171
+ 'rte.noMergeTags': 'Na voljo ni nobenega spojnega polja',
172
+ 'rte.textColor': 'Barva besedila',
173
+ 'rte.highlightColor': 'Barva poudarka',
174
+ 'rte.removeHighlight': 'Odstrani poudarek',
175
+ 'rte.clearFormatting': 'Počisti oblikovanje',
176
+ 'action.downloadPng': 'Prenesi PNG',
177
+ 'action.screenshot': 'Posnetek zaslona',
178
+ 'action.screenshotHint': 'Poglej celotno predlogo kot sliko in jo prenesi',
179
+ 'toast.pngSaved': 'Posnetek zaslona prenesen',
180
+ 'toast.pngFailed': 'Posnetek zaslona ni uspel — zunanje slike ni bilo mogoče naložiti',
181
+ 'toast.pngCopied': 'Posnetek zaslona kopiran v odložišče',
182
+ 'toast.pngCopyFailed': 'Ta brskalnik ni sprejel slike v odložišče',
183
+ 'story.kicker': 'Posnetek zaslona',
184
+ 'story.rendering': 'Posnetek zaslona se izdeluje',
185
+ 'story.renderingHint': 'Vsak blok se riše v 2× — pri dolgi predlogi to traja trenutek.',
186
+ 'story.failed': 'Posnetek zaslona ni uspel',
187
+ 'story.failedHint': 'Slike v predlogi ni bilo mogoče naložiti za zajem.',
188
+ 'story.retry': 'Poskusi znova',
189
+ 'story.play': 'Predvajaj',
190
+ 'story.pause': 'Premor',
191
+ 'story.replay': 'Predvajaj znova',
192
+ 'story.copy': 'Kopiraj',
193
+ 'story.meta': '{w}×{h} · zaslon {i} od {n}',
194
+ 'footer.poweredBy': 'Poganja SELISE Blocks © 2026',
195
+ };