1123 lines
108 KiB
HTML
1123 lines
108 KiB
HTML
|
|
|
||
|
|
|
||
|
|
<html>
|
||
|
|
<head>
|
||
|
|
<meta charset="UTF-8"/>
|
||
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||
|
|
<style>.joplin-editable {
|
||
|
|
position: relative;
|
||
|
|
}
|
||
|
|
|
||
|
|
.copy-code-blocks-button {
|
||
|
|
position: absolute;
|
||
|
|
top: 0;
|
||
|
|
right: 0;
|
||
|
|
cursor: pointer;
|
||
|
|
display: none;
|
||
|
|
background-color: transparent;
|
||
|
|
border: 0;
|
||
|
|
padding: 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
.copy-code-blocks-button.copy-code-blocks-info-mermaid {
|
||
|
|
top: unset;
|
||
|
|
bottom: 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
.copied-code-blocks .copy-code-blocks-button-icon {
|
||
|
|
stroke: #6aba7b;
|
||
|
|
}
|
||
|
|
|
||
|
|
.copy-code-blocks-button-icon {
|
||
|
|
display: block;
|
||
|
|
width: 24px;
|
||
|
|
height: 24px;
|
||
|
|
stroke: #133975;
|
||
|
|
fill: none;
|
||
|
|
stroke-width: 2;
|
||
|
|
stroke-linecap: square;
|
||
|
|
stroke-linejoin: miter;
|
||
|
|
}
|
||
|
|
|
||
|
|
.copy-code-blocks-button-icon:hover {
|
||
|
|
stroke: #2765ca;
|
||
|
|
}
|
||
|
|
|
||
|
|
.copied-code-blocks .copy-code-blocks-button-icon:hover {
|
||
|
|
stroke: #a6da4d;
|
||
|
|
}
|
||
|
|
|
||
|
|
.joplin-editable:hover .copy-code-blocks-button {
|
||
|
|
display: block !important;
|
||
|
|
}</style><script>window.copyCodeBlocksPostMessage = function (ele, pluginId) {
|
||
|
|
const text = ele.closest('.joplin-editable').querySelector('.joplin-source').textContent;
|
||
|
|
try {
|
||
|
|
webviewApi.postMessage(pluginId, text).then(response => {
|
||
|
|
console.info('Got response in content script: ' + response);
|
||
|
|
});
|
||
|
|
} catch (err) {
|
||
|
|
console.error(err);
|
||
|
|
navigator.clipboard.writeText(text);
|
||
|
|
}
|
||
|
|
|
||
|
|
ele.title = 'Copied';
|
||
|
|
ele.classList.add('copied-code-blocks');
|
||
|
|
|
||
|
|
return false;
|
||
|
|
};
|
||
|
|
</script></script><style>.jsdraw--editButton {
|
||
|
|
display: inline-block;
|
||
|
|
opacity: 0;
|
||
|
|
overflow: hidden;
|
||
|
|
z-index: 1;
|
||
|
|
position: relative;
|
||
|
|
align-self: flex-end;
|
||
|
|
justify-self: right;
|
||
|
|
transition: opacity 0.2s ease;
|
||
|
|
}
|
||
|
|
|
||
|
|
.jsdraw--editButton.-show,
|
||
|
|
.jsdraw--editButton:hover {
|
||
|
|
opacity: 0.9;
|
||
|
|
overflow: visible;
|
||
|
|
}
|
||
|
|
|
||
|
|
.jsdraw--editButton > button {
|
||
|
|
width: min-content;
|
||
|
|
max-height: 50px;
|
||
|
|
position: absolute;
|
||
|
|
}</style><script>(() => {
|
||
|
|
// src/localization.ts
|
||
|
|
var defaultStrings = {
|
||
|
|
insertDrawing: "Insert Drawing",
|
||
|
|
insertDrawingInNewWindow: "Insert drawing in new window",
|
||
|
|
restoreFromAutosave: "Restore from autosaved drawing",
|
||
|
|
deleteAutosave: "Delete all autosaved drawings",
|
||
|
|
noSuchAutosaveExists: "No autosave exists",
|
||
|
|
discardChanges: "Discard changes",
|
||
|
|
defaultImageTitle: "Freehand Drawing",
|
||
|
|
edit: "Edit",
|
||
|
|
close: "Close",
|
||
|
|
saveAndClose: "Save and close",
|
||
|
|
overwriteExisting: "Overwrite existing",
|
||
|
|
saveAsNewDrawing: "Save as a new drawing",
|
||
|
|
clickBelowToContinue: "Done! Click below to continue.",
|
||
|
|
discardUnsavedChanges: "Discard unsaved changes?",
|
||
|
|
resumeEditing: "Resume editing",
|
||
|
|
saveAndResumeEditing: "Save and resume editing",
|
||
|
|
saveChanges: "Save changes",
|
||
|
|
exitInstructions: "All changes saved! Click below to exit.",
|
||
|
|
settingsPaneDescription: "Settings for the Freehand Drawing image editor.",
|
||
|
|
setting__disableFullScreen: "Dialog mode",
|
||
|
|
setting__disableFullScreenDescription: "Enabling this setting causes the editor to only partially fill the Joplin window.",
|
||
|
|
setting__autosaveIntervalSettingLabel: "Autosave interval (minutes)",
|
||
|
|
setting__autosaveIntervalSettingDescription: 'Adjusts how often a backup copy of the current drawing is created. The most recent autosave can be restored by searching for ":restore autosave" in the command palette (ctrl+shift+p or cmd+shift+p on MacOS) and clicking "Restore from autosaved drawing". If this setting is set to zero, autosaves are created every two minutes.',
|
||
|
|
setting__themeLabel: "Theme",
|
||
|
|
setting__toolbarTypeLabel: "Toolbar type",
|
||
|
|
setting__toolbarTypeDescription: "This setting switches between possible toolbar user interfaces for the image editor.",
|
||
|
|
setting__keyboardShortcuts: "Keyboard shortcuts",
|
||
|
|
toolbarTypeDefault: "Default",
|
||
|
|
toolbarTypeSidebar: "Sidebar",
|
||
|
|
toolbarTypeDropdown: "Dropdown",
|
||
|
|
styleMatchJoplin: "Match Joplin",
|
||
|
|
styleJsDrawLight: "Light",
|
||
|
|
styleJsDrawDark: "Dark",
|
||
|
|
images: "Images",
|
||
|
|
pdfs: "PDFs",
|
||
|
|
allFiles: "All Files",
|
||
|
|
loadLargePdf: (pageCount) => `A selected file is a large PDF (${pageCount} pages). Loading it may take some time and increase the size of the current drawing. Continue?`,
|
||
|
|
notAnEditableImage: (resourceId, resourceType) => `Resource ${resourceId} is not an editable image. Unable to edit resource of type ${resourceType}.`
|
||
|
|
};
|
||
|
|
var localizations = {
|
||
|
|
de: {
|
||
|
|
insertDrawing: "Zeichnung einf\xFCgen",
|
||
|
|
insertDrawingInNewWindow: "Zeichnung in neuem Fenster einf\xFCgen",
|
||
|
|
restoreFromAutosave: "Automatische Sicherung wiederherstellen",
|
||
|
|
deleteAutosave: "Alle automatischen Sicherungen l\xF6schen",
|
||
|
|
noSuchAutosaveExists: "Keine automatischen Sicherungen vorhanden",
|
||
|
|
discardChanges: "\xC4nderungen verwerfen",
|
||
|
|
defaultImageTitle: "Freihand-Zeichnen",
|
||
|
|
edit: "Bearbeiten",
|
||
|
|
close: "Schlie\xDFen",
|
||
|
|
saveAndClose: "Speichern und Schlie\xDFen",
|
||
|
|
overwriteExisting: "Existierende Zeichnung \xFCberschreiben",
|
||
|
|
saveAsNewDrawing: "Als neue Zeichnung speichern",
|
||
|
|
clickBelowToContinue: "Fertig! Unten klicken, um fortzufahen.",
|
||
|
|
discardUnsavedChanges: "Ungespeicherte \xC4nderungen verwerfen?",
|
||
|
|
resumeEditing: "Weiter bearbeiten",
|
||
|
|
saveAndResumeEditing: "Speichern und weiter bearbeiten",
|
||
|
|
saveChanges: "\xC4nderungen speichern",
|
||
|
|
exitInstructions: "Alle \xC4nderungen gespeichert! Unten klicken, um das Fenster zu schlie\xDFen.",
|
||
|
|
settingsPaneDescription: "Einstellungen f\xFCr Freihand-Zeichnen.",
|
||
|
|
setting__disableFullScreen: "Dialogmodus",
|
||
|
|
setting__disableFullScreenDescription: "Wenn diese Einstellung aktiviert ist, f\xFCllt der Editor das Joplin-Fenster nur teilweise aus.",
|
||
|
|
setting__autosaveIntervalSettingLabel: "Intervall f\xFCr die automatische Speicherung (Minuten)",
|
||
|
|
setting__autosaveIntervalSettingDescription: "Legt fest, wie oft eine Sicherungskopie der aktuellen Zeichnung erstellt wird. Die letzte automatische Speicherung kann wiederhergestellt werden, indem du in der Befehlspalette (Strg+Umschalt+P oder Cmd+Umschalt+P unter MacOS) nach \u201E:restore autosave\u201C suchst und auf \u201EAutomatische Sicherung wiederherstellen\u201C klickst. Wenn diese Einstellung auf Null gesetzt ist, werden alle zwei Minuten automatische Speichervorg\xE4nge durchgef\xFChrt.",
|
||
|
|
setting__themeLabel: "Design",
|
||
|
|
setting__toolbarTypeLabel: "Toolbar-Typ",
|
||
|
|
setting__toolbarTypeDescription: "Diese Einstellung wechselt zwischen den m\xF6glichen Benutzeroberfl\xE4chen der Symbolleiste f\xFCr den Bildeditor.",
|
||
|
|
setting__keyboardShortcuts: "Tastaturk\xFCrzel",
|
||
|
|
toolbarTypeDefault: "Standard",
|
||
|
|
toolbarTypeSidebar: "Sidebar",
|
||
|
|
toolbarTypeDropdown: "Dropdown-Men\xFC",
|
||
|
|
styleMatchJoplin: "wie Joplin",
|
||
|
|
styleJsDrawLight: "Hell",
|
||
|
|
styleJsDrawDark: "Dunkel",
|
||
|
|
images: "Bilder",
|
||
|
|
pdfs: "PDFs",
|
||
|
|
allFiles: "Alle Dateien",
|
||
|
|
loadLargePdf: (pageCount) => `Die ausgew\xE4hlte Datei ist eine gro\xDFe PDF-Datei (mit ${pageCount} Seiten). Das Laden kann einige Zeit dauern und die Gr\xF6\xDFe der aktuellen Zeichnung erh\xF6hen. Fortfahren?`,
|
||
|
|
notAnEditableImage: (resourceId, resourceType) => `Die Ressource ${resourceId} ist kein bearbeitbares Bild. Ressource vom Typ ${resourceType} kann nicht bearbeitet werden.`
|
||
|
|
},
|
||
|
|
en: defaultStrings,
|
||
|
|
es: {
|
||
|
|
insertDrawing: "A\xF1ada dibujo",
|
||
|
|
restoreFromAutosave: "Resturar al autoguardado",
|
||
|
|
deleteAutosave: "Borrar el autoguardado",
|
||
|
|
noSuchAutosaveExists: "No autoguardado existe",
|
||
|
|
discardChanges: "Descartar cambios",
|
||
|
|
defaultImageTitle: "Dibujo",
|
||
|
|
edit: "Editar",
|
||
|
|
close: "Cerrar",
|
||
|
|
saveAndClose: "Guardar y cerrar",
|
||
|
|
overwriteExisting: "Sobrescribir existente",
|
||
|
|
saveAsNewDrawing: "Guardar como dibujo nuevo",
|
||
|
|
clickBelowToContinue: "Guardado. Ponga \xABok\xBB para continuar.",
|
||
|
|
discardUnsavedChanges: "\xBFDescartar cambios no guardados?",
|
||
|
|
resumeEditing: "Continuar editando",
|
||
|
|
saveAndResumeEditing: "Guardar y continuar editando"
|
||
|
|
},
|
||
|
|
hr: {
|
||
|
|
insertDrawing: "Umetni crte\u017E",
|
||
|
|
insertDrawingInNewWindow: "Umetni crte\u017E u novom prozoru",
|
||
|
|
restoreFromAutosave: "Obnovi iz automatski spremljenog crte\u017Ea",
|
||
|
|
deleteAutosave: "Izbri\u0161i sve automatski spremljene crte\u017Ee",
|
||
|
|
noSuchAutosaveExists: "Ne postoji automatski spremljeni crte\u017E",
|
||
|
|
discardChanges: "Odbaci promjene",
|
||
|
|
defaultImageTitle: "Prostoru\u010Dni crte\u017E",
|
||
|
|
edit: "Uredi",
|
||
|
|
close: "Zatvori",
|
||
|
|
saveAndClose: "Spremi i zatvori",
|
||
|
|
overwriteExisting: "Prepi\u0161i postoje\u0107e",
|
||
|
|
saveAsNewDrawing: "Spremi kao novi crte\u017E",
|
||
|
|
clickBelowToContinue: "Gotovo! Klikni dolje za nastavak.",
|
||
|
|
discardUnsavedChanges: "Odbaciti nespremljene promjene?",
|
||
|
|
resumeEditing: "Nastavi ure\u0111ivati",
|
||
|
|
saveAndResumeEditing: "Spremi i nastavi ure\u0111ivati",
|
||
|
|
saveChanges: "Spremi promjene",
|
||
|
|
exitInstructions: "Sve promjene su spremljene! Klikni dolje za izlaz.",
|
||
|
|
settingsPaneDescription: "Postavke ure\u0111iva\u010Da crte\u017Ea.",
|
||
|
|
setting__disableFullScreen: "Modus dijaloga",
|
||
|
|
setting__disableFullScreenDescription: "Uklju\u010Divanjem ove postavke \u0107e ure\u0111iva\u010D ispuniti samo dio Joplinovog prozora.",
|
||
|
|
setting__autosaveIntervalSettingLabel: "Interval automatskog spremanja (minute)",
|
||
|
|
setting__autosaveIntervalSettingDescription: "Prilago\u0111ava u\u010Destalost stvaranja sigurnosnih kopija trenuta\u010Dnog crte\u017Ea. Najnoviji automatski spremljeni crte\u017E se mo\u017Ee obnoviti pretra\u017Eivanjem \u201E:restore autosave\u201D u paleti naredbi (ctrl+shift+p ili cmd+shift+p na MacOS-u) i klikom na \u201EObnovi iz automatski spremljenog crte\u017Ea\u201D. Ako je ova postavka postavljena na nulu, automatska spremanja se izvode svake dvije minute.",
|
||
|
|
setting__themeLabel: "Tema",
|
||
|
|
setting__toolbarTypeLabel: "Vrsta alatne trake",
|
||
|
|
setting__toolbarTypeDescription: "Ova postavka omogu\u0107uje prebacivanje izme\u0111u mogu\u0107ih korisni\u010Dkih su\u010Delja alatnih traka za ure\u0111iva\u010D slika.",
|
||
|
|
setting__keyboardShortcuts: "Tipkovni pre\u010Daci",
|
||
|
|
toolbarTypeDefault: "Zadano",
|
||
|
|
toolbarTypeSidebar: "Bo\u010Dna traka",
|
||
|
|
toolbarTypeDropdown: "Padaju\u0107i izbornik",
|
||
|
|
styleMatchJoplin: "Uskladi s Joplinom",
|
||
|
|
styleJsDrawLight: "Svijetla",
|
||
|
|
styleJsDrawDark: "Tamna",
|
||
|
|
images: "Slike",
|
||
|
|
pdfs: "PDF-ovi",
|
||
|
|
allFiles: "Sve datoteke",
|
||
|
|
loadLargePdf: (pageCount) => `Jedna odabrana datoteka je veliki PDF (${pageCount} stranica). U\u010Ditavanje mo\u017Ee potrajati i pove\u0107ati veli\u010Dinu trenuta\u010Dnog crte\u017Ea. \u017Deli\u0161 li nastaviti?`,
|
||
|
|
notAnEditableImage: (resourceId, resourceType) => `Resurs ${resourceId} nije slika koja se mo\u017Ee ure\u0111ivati. Nije mogu\u0107e urediti resurs vrste ${resourceType}.`
|
||
|
|
},
|
||
|
|
ro: {
|
||
|
|
insertDrawing: "Insereaz\u0103 un desen",
|
||
|
|
insertDrawingInNewWindow: "Insereaz\u0103 un desen \xEEntr-o fereastr\u0103 nou\u0103",
|
||
|
|
restoreFromAutosave: "Restaureaz\u0103 dintr-un desen salvat automat",
|
||
|
|
deleteAutosave: "\u0218terge toate desenele salvate automat",
|
||
|
|
noSuchAutosaveExists: "Nicio salvare automat\u0103 nu exist\u0103",
|
||
|
|
discardChanges: "Anuleaz\u0103 modific\u0103rile",
|
||
|
|
defaultImageTitle: "Desen liber",
|
||
|
|
edit: "Editeaz\u0103",
|
||
|
|
close: "\xCEnchide",
|
||
|
|
saveAndClose: "Salveaz\u0103 \u0219i \xEEnchide",
|
||
|
|
overwriteExisting: "Suprascrie existent",
|
||
|
|
saveAsNewDrawing: "Salveaz\u0103 ca desen nou",
|
||
|
|
clickBelowToContinue: "Gata! F\u0103 clic mai jos pentru a continua.",
|
||
|
|
discardUnsavedChanges: "Anulezi modific\u0103rile nesalvate?",
|
||
|
|
resumeEditing: "Continu\u0103 editarea",
|
||
|
|
saveAndResumeEditing: "Salveaz\u0103 \u0219i continu\u0103 editarea",
|
||
|
|
saveChanges: "Salveaz\u0103 modific\u0103rile",
|
||
|
|
exitInstructions: "Toate modific\u0103rile au fost salvate! F\u0103 clic mai jos pentru a ie\u0219i.",
|
||
|
|
settingsPaneDescription: "Set\u0103ri pentru editorul de imagine liber.",
|
||
|
|
setting__disableFullScreen: "Mod dialog",
|
||
|
|
setting__disableFullScreenDescription: "Activarea acestei op\u021Biuni face ca editorul s\u0103 acopere doar par\u021Bial fereastra Joplin.",
|
||
|
|
setting__autosaveIntervalSettingLabel: "Interval salvare automat\u0103 (minute)",
|
||
|
|
setting__autosaveIntervalSettingDescription: 'Ajusteaz\u0103 c\xE2t de des se face o copie de siguran\u021B\u0103 a desenului curent. Cea mai recent\u0103 versiune salvat\u0103 automat poate fi restaurat\u0103 c\u0103ut\xE2nd dup\u0103 ":restore autosave" \xEEn paleta de comenzi (Ctrl+Shift+P sau Cmd+Shift+P pe MacOS) \u0219i f\u0103c\xE2nd clic pe \u201ERestaureaz\u0103 dintr-un desen salvat automat\u201D. Dac\u0103 acest\u0103 setare este 0, salv\u0103rile automate sunt create la fiecare 2 minute.',
|
||
|
|
setting__themeLabel: "Tem\u0103",
|
||
|
|
setting__toolbarTypeLabel: "Tip bar\u0103 de instrumente",
|
||
|
|
setting__toolbarTypeDescription: "Aceast\u0103 setare comut\u0103 \xEEntre posibilele interfe\u021Be pentru editorul de imagine.",
|
||
|
|
setting__keyboardShortcuts: "Scurt\u0103turi de la tastatur\u0103",
|
||
|
|
toolbarTypeDefault: "Implicit",
|
||
|
|
toolbarTypeSidebar: "Bar\u0103 lateral\u0103",
|
||
|
|
toolbarTypeDropdown: "Casete derulante",
|
||
|
|
styleMatchJoplin: "La fel ca Joplin",
|
||
|
|
styleJsDrawLight: "Luminoas\u0103",
|
||
|
|
styleJsDrawDark: "\xCEntunecat\u0103",
|
||
|
|
images: "Imagini",
|
||
|
|
pdfs: "PDF-uri",
|
||
|
|
allFiles: "Toate fi\u0219ierele",
|
||
|
|
loadLargePdf: (pageCount) => `Un fi\u0219ier PDF selectat este un fi\u0219ier mare (${pageCount} de pagini). \xCEnc\u0103rcarea lui ar putea dura ceva timp \u0219i s\u0103 creasc\u0103 dimensiunea desenului curent. Continui?`,
|
||
|
|
notAnEditableImage: (resourceId, resourceType) => `Resursa ${resourceId} nu este o imagine editabil\u0103. Nu se poate edita resursa de tipul ${resourceType}.`
|
||
|
|
},
|
||
|
|
sk: {
|
||
|
|
insertDrawing: "Vlo\u017Ei\u0165 kresbu",
|
||
|
|
insertDrawingInNewWindow: "Vlo\u017Ei\u0165 kresbu do nov\xE9ho okna",
|
||
|
|
restoreFromAutosave: "Obnovi\u0165 z automaticky ulo\u017Eenej kresby",
|
||
|
|
deleteAutosave: "Vymaza\u0165 v\u0161etky automaticky ulo\u017Een\xE9 kresby",
|
||
|
|
noSuchAutosaveExists: "Neexistuj\xFA \u017Eiadne automaticky ulo\u017Een\xE9",
|
||
|
|
discardChanges: "Zru\u0161i\u0165 zmeny",
|
||
|
|
defaultImageTitle: "Kresba vo\u013Enou rukou",
|
||
|
|
edit: "Upravi\u0165",
|
||
|
|
close: "Zavrie\u0165",
|
||
|
|
saveAndClose: "Ulo\u017Ei\u0165 a zavrie\u0165",
|
||
|
|
overwriteExisting: "Prep\xEDsa\u0165 existuj\xFAcu",
|
||
|
|
saveAsNewDrawing: "Ulo\u017Ei\u0165 ako nov\xFA kresbu",
|
||
|
|
clickBelowToContinue: "Hotovo! Kliknite ni\u017E\u0161ie pre pokra\u010Dovanie.",
|
||
|
|
discardUnsavedChanges: "Zru\u0161i\u0165 neulo\u017Een\xE9 zmeny?",
|
||
|
|
resumeEditing: "Pokra\u010Dova\u0165 v \xFAprave",
|
||
|
|
saveAndResumeEditing: "Ulo\u017Ei\u0165 a pokra\u010Dova\u0165 v \xFAprav\xE1ch",
|
||
|
|
saveChanges: "Ulo\u017Ei\u0165 zmeny",
|
||
|
|
exitInstructions: "V\u0161etky zmeny boli ulo\u017Een\xE9! Kliknite ni\u017E\u0161ie pre ukon\u010Denie.",
|
||
|
|
settingsPaneDescription: "Nastavenia pre grafick\xFD editor Kresba vo\u013Enou rukou.",
|
||
|
|
setting__disableFullScreen: "Dial\xF3gov\xFD re\u017Eim",
|
||
|
|
setting__disableFullScreenDescription: "Aktiv\xE1cia tohto nastavenia sp\xF4sob\xED, \u017Ee editor vypln\xED okno Joplin len \u010Diasto\u010Dne.",
|
||
|
|
setting__autosaveIntervalSettingLabel: "Interval automatick\xE9ho ukladania (v min\xFAtach)",
|
||
|
|
setting__autosaveIntervalSettingDescription: "Nastav\xED, ako \u010Dasto sa vytv\xE1ra z\xE1lo\u017En\xE1 k\xF3pia aktu\xE1lnej kresby. Posledn\xE9 automatick\xE9 ulo\u017Eenie je mo\u017En\xE9 obnovi\u0165 vyh\u013Eadan\xEDm \u201E:restore autosave\u201C v palete pr\xEDkazov (ctrl+shift+p alebo cmd+shift+p v syst\xE9me MacOS) a kliknut\xEDm na \u201EObnovi\u0165 z automaticky ulo\u017Eenej kresby\u201C. Ak je toto nastavenie nastaven\xE9 na nulu, automatick\xE9 ulo\u017Eenia sa vytv\xE1raj\xFA ka\u017Ed\xE9 dve min\xFAty.",
|
||
|
|
setting__themeLabel: "T\xE9ma",
|
||
|
|
setting__toolbarTypeLabel: "Typ panela n\xE1strojov",
|
||
|
|
setting__toolbarTypeDescription: "Toto nastavenie prep\xEDna medzi mo\u017En\xFDmi pou\u017E\xEDvate\u013Esk\xFDmi rozhraniami panela n\xE1strojov pre grafick\xFD editor.",
|
||
|
|
setting__keyboardShortcuts: "Kl\xE1vesov\xE9 skratky",
|
||
|
|
toolbarTypeDefault: "Predvolen\xE9",
|
||
|
|
toolbarTypeSidebar: "Bo\u010Dn\xFD panel",
|
||
|
|
toolbarTypeDropdown: "Rozba\u013Eovacie menu",
|
||
|
|
styleMatchJoplin: "Rovnak\xE1 ako Joplin",
|
||
|
|
styleJsDrawLight: "Svetl\xE1",
|
||
|
|
styleJsDrawDark: "Tmav\xE1",
|
||
|
|
images: "Obr\xE1zky",
|
||
|
|
pdfs: "PDF s\xFAbory",
|
||
|
|
allFiles: "V\u0161etky s\xFAbory",
|
||
|
|
loadLargePdf: (pageCount) => `Vybran\xFD s\xFAbor je ve\u013Ek\xFD PDF s\xFAbor (${pageCount} str\xE1n). Jeho na\u010D\xEDtanie m\xF4\u017Ee trva\u0165 nejak\xFD \u010Das a zv\xFD\u0161i\u0165 ve\u013Ekos\u0165 aktu\xE1lnej kresby. Pokra\u010Dova\u0165?`,
|
||
|
|
notAnEditableImage: (resourceId, resourceType) => `Zdroj ${resourceId} nie je upravite\u013En\xFD obr\xE1zok. Nie je mo\u017En\xE9 upravi\u0165 zdroj typu ${resourceType}.`
|
||
|
|
}
|
||
|
|
};
|
||
|
|
var localization;
|
||
|
|
var supportedLanguages = [];
|
||
|
|
var setLocaleInternal = (supportedLocales) => {
|
||
|
|
const languages = [...supportedLocales];
|
||
|
|
for (let language of supportedLocales) {
|
||
|
|
language = language.replace("_", "-");
|
||
|
|
const localeSep = language.indexOf("-");
|
||
|
|
if (localeSep !== -1) {
|
||
|
|
languages.push(language.substring(0, localeSep));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
for (const locale of languages) {
|
||
|
|
if (locale in localizations) {
|
||
|
|
localization = localizations[locale];
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
supportedLanguages = languages;
|
||
|
|
};
|
||
|
|
var localizationSet = false;
|
||
|
|
var setLocale = (supportedLocales) => {
|
||
|
|
if (typeof supportedLocales === "string") {
|
||
|
|
supportedLocales = [supportedLocales];
|
||
|
|
}
|
||
|
|
setLocaleInternal(supportedLocales);
|
||
|
|
localizationSet = true;
|
||
|
|
};
|
||
|
|
setLocale(navigator.languages);
|
||
|
|
var localization_default = new Proxy(defaultStrings, {
|
||
|
|
get(_target, prop) {
|
||
|
|
if (!localizationSet) {
|
||
|
|
console.warn(
|
||
|
|
"Accessing language data without a localization set. The default Electron locale will be used."
|
||
|
|
);
|
||
|
|
}
|
||
|
|
const propAsKey = prop;
|
||
|
|
return localization?.[propAsKey] ?? defaultStrings[propAsKey];
|
||
|
|
}
|
||
|
|
});
|
||
|
|
|
||
|
|
// src/constants.ts
|
||
|
|
var markdownItContentScriptId = "jsdraw__markdownIt_editDrawingButton";
|
||
|
|
|
||
|
|
// src/contentScripts/utils/makeImageEditable.ts
|
||
|
|
var hasFocus = (element) => {
|
||
|
|
return element.contains(document.activeElement);
|
||
|
|
};
|
||
|
|
var onEdit = (image) => {
|
||
|
|
if (!(image instanceof HTMLElement)) {
|
||
|
|
image = image.currentTarget;
|
||
|
|
}
|
||
|
|
const message = `edit:${image.getAttribute("src")}`;
|
||
|
|
webviewApi.postMessage(markdownItContentScriptId, message).catch((err) => {
|
||
|
|
console.error("Error posting message!", err, "\nMessage: ", message);
|
||
|
|
});
|
||
|
|
};
|
||
|
|
var makeImageEditable = (image, editLabel) => {
|
||
|
|
if (image.classList.contains("js-draw--skip")) return;
|
||
|
|
if (image.ondblclick === onEdit) return;
|
||
|
|
image.ondblclick = onEdit;
|
||
|
|
const addEditButton = () => {
|
||
|
|
const editButtonContainer = document.createElement("span");
|
||
|
|
const editButton = document.createElement("button");
|
||
|
|
const updateLabel = (label) => {
|
||
|
|
editButton.textContent = `${label} \u{1F58A}\uFE0F`;
|
||
|
|
};
|
||
|
|
editButton.ariaDescribedByElements = [image];
|
||
|
|
editButtonContainer.classList.add("jsdraw--editButton");
|
||
|
|
editButtonContainer.appendChild(editButton);
|
||
|
|
updateLabel("Edit");
|
||
|
|
void (async () => {
|
||
|
|
updateLabel(await editLabel);
|
||
|
|
})();
|
||
|
|
image.insertAdjacentElement("afterend", editButtonContainer);
|
||
|
|
const pointerSet = /* @__PURE__ */ new Set();
|
||
|
|
const updateVisibleState = () => {
|
||
|
|
const show = pointerSet.size > 0 || editButton.querySelector(":hover, :focus") || hasFocus(editButton) || hasFocus(image);
|
||
|
|
if (show) {
|
||
|
|
editButtonContainer.classList.add("-show");
|
||
|
|
} else {
|
||
|
|
editButtonContainer.classList.remove("-show");
|
||
|
|
}
|
||
|
|
};
|
||
|
|
const updatePositioning = () => {
|
||
|
|
const containerBox = editButtonContainer.getBoundingClientRect();
|
||
|
|
const imageBox = image.getBoundingClientRect();
|
||
|
|
editButton.style.right = `${imageBox.right - containerBox.right}px`;
|
||
|
|
editButton.style.top = `${imageBox.top - containerBox.top}px`;
|
||
|
|
};
|
||
|
|
image.addEventListener("pointerenter", (event) => {
|
||
|
|
pointerSet.add(event.pointerId);
|
||
|
|
updateVisibleState();
|
||
|
|
updatePositioning();
|
||
|
|
});
|
||
|
|
image.addEventListener("pointerleave", (event) => {
|
||
|
|
pointerSet.delete(event.pointerId);
|
||
|
|
updateVisibleState();
|
||
|
|
});
|
||
|
|
for (const item of [image, editButton]) {
|
||
|
|
item.addEventListener("focus", () => {
|
||
|
|
updateVisibleState();
|
||
|
|
updatePositioning();
|
||
|
|
});
|
||
|
|
item.addEventListener("blur", () => {
|
||
|
|
requestAnimationFrame(() => {
|
||
|
|
updateVisibleState();
|
||
|
|
});
|
||
|
|
});
|
||
|
|
}
|
||
|
|
editButton.onclick = () => {
|
||
|
|
onEdit(image);
|
||
|
|
};
|
||
|
|
};
|
||
|
|
const isRichTextEditor = document.body.classList.contains("mce-content-body") || document.body.id === "tinymce";
|
||
|
|
const hasWebViewApi = typeof webviewApi !== "undefined";
|
||
|
|
const isHtmlNote = !document.body.querySelector("#rendered-md");
|
||
|
|
if (isRichTextEditor || isHtmlNote) {
|
||
|
|
image.style.cursor = "pointer";
|
||
|
|
} else if (hasWebViewApi) {
|
||
|
|
addEditButton();
|
||
|
|
}
|
||
|
|
};
|
||
|
|
var makeImageEditable_default = makeImageEditable;
|
||
|
|
|
||
|
|
// src/contentScripts/markdownIt-content.ts
|
||
|
|
var initLocalePromise = null;
|
||
|
|
var initLocale = async () => {
|
||
|
|
if (initLocalePromise) {
|
||
|
|
return initLocalePromise;
|
||
|
|
}
|
||
|
|
const promise = (async () => {
|
||
|
|
const languages = await webviewApi.postMessage(markdownItContentScriptId, "get-locale:");
|
||
|
|
if (!Array.isArray(languages)) {
|
||
|
|
throw new Error(
|
||
|
|
`Invalid locale request response. Not an array: ${JSON.stringify(languages)}`
|
||
|
|
);
|
||
|
|
}
|
||
|
|
setLocale(languages);
|
||
|
|
})();
|
||
|
|
initLocalePromise = promise;
|
||
|
|
return promise;
|
||
|
|
};
|
||
|
|
var processImages = () => {
|
||
|
|
const images = document.querySelectorAll('img[src*=".svg"]');
|
||
|
|
for (const image of images) {
|
||
|
|
if (image.src.match(/^https?:/) || !image.src.match(/[a-z0-9]{32}[.]svg([?]t=\d+)?$/)) {
|
||
|
|
continue;
|
||
|
|
}
|
||
|
|
makeImageEditable_default(
|
||
|
|
image,
|
||
|
|
(async () => {
|
||
|
|
await initLocale();
|
||
|
|
return localization_default.edit;
|
||
|
|
})()
|
||
|
|
);
|
||
|
|
}
|
||
|
|
};
|
||
|
|
document.addEventListener("joplin-noteDidUpdate", () => {
|
||
|
|
processImages();
|
||
|
|
});
|
||
|
|
processImages();
|
||
|
|
})();
|
||
|
|
</script></script><style>pre code.hljs {
|
||
|
|
display: block;
|
||
|
|
overflow-x: auto;
|
||
|
|
padding: 1em;
|
||
|
|
}
|
||
|
|
|
||
|
|
code.hljs {
|
||
|
|
padding: 3px 5px;
|
||
|
|
}
|
||
|
|
|
||
|
|
/*
|
||
|
|
|
||
|
|
Atom One Light by Daniel Gamage
|
||
|
|
Original One Light Syntax theme from https://github.com/atom/one-light-syntax
|
||
|
|
|
||
|
|
base: #fafafa
|
||
|
|
mono-1: #383a42
|
||
|
|
mono-2: #686b77
|
||
|
|
mono-3: #a0a1a7
|
||
|
|
hue-1: #0184bb
|
||
|
|
hue-2: #4078f2
|
||
|
|
hue-3: #a626a4
|
||
|
|
hue-4: #50a14f
|
||
|
|
hue-5: #e45649
|
||
|
|
hue-5-2: #c91243
|
||
|
|
hue-6: #986801
|
||
|
|
hue-6-2: #c18401
|
||
|
|
|
||
|
|
*/
|
||
|
|
|
||
|
|
.hljs {
|
||
|
|
color: #383a42;
|
||
|
|
background: #fafafa;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-comment,
|
||
|
|
.hljs-quote {
|
||
|
|
color: #a0a1a7;
|
||
|
|
font-style: italic;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-doctag,
|
||
|
|
.hljs-keyword,
|
||
|
|
.hljs-formula {
|
||
|
|
color: #a626a4;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-section,
|
||
|
|
.hljs-name,
|
||
|
|
.hljs-selector-tag,
|
||
|
|
.hljs-deletion,
|
||
|
|
.hljs-subst {
|
||
|
|
color: #e45649;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-literal {
|
||
|
|
color: #0184bb;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-string,
|
||
|
|
.hljs-regexp,
|
||
|
|
.hljs-addition,
|
||
|
|
.hljs-attribute,
|
||
|
|
.hljs-meta .hljs-string {
|
||
|
|
color: #50a14f;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-attr,
|
||
|
|
.hljs-variable,
|
||
|
|
.hljs-template-variable,
|
||
|
|
.hljs-type,
|
||
|
|
.hljs-selector-class,
|
||
|
|
.hljs-selector-attr,
|
||
|
|
.hljs-selector-pseudo,
|
||
|
|
.hljs-number {
|
||
|
|
color: #986801;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-symbol,
|
||
|
|
.hljs-bullet,
|
||
|
|
.hljs-link,
|
||
|
|
.hljs-meta,
|
||
|
|
.hljs-selector-id,
|
||
|
|
.hljs-title {
|
||
|
|
color: #4078f2;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-built_in,
|
||
|
|
.hljs-title.class_,
|
||
|
|
.hljs-class .hljs-title {
|
||
|
|
color: #c18401;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-emphasis {
|
||
|
|
font-style: italic;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-strong {
|
||
|
|
font-weight: bold;
|
||
|
|
}
|
||
|
|
|
||
|
|
.hljs-link {
|
||
|
|
text-decoration: underline;
|
||
|
|
}</style>
|
||
|
|
<title>JSONDataFileGSSN_Save</title>
|
||
|
|
</head>
|
||
|
|
<body>
|
||
|
|
<div class="exported-note"><div class="exported-note-title">JSONDataFileGSSN_Save</div>
|
||
|
|
|
||
|
|
<style>
|
||
|
|
/* https://necolas.github.io/normalize.css/ */
|
||
|
|
html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}
|
||
|
|
article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}
|
||
|
|
pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}
|
||
|
|
b,strong{font-weight:bolder}small{font-size:80%}img{border-style:none}
|
||
|
|
|
||
|
|
body {
|
||
|
|
font-size: 15px;
|
||
|
|
color: #32373F;
|
||
|
|
word-wrap: break-word;
|
||
|
|
line-height: 1.6em;
|
||
|
|
background-color: #ffffff;
|
||
|
|
font-family: 'Avenir Next', 'Avenir', 'Arial', sans-serif;
|
||
|
|
padding-bottom: 0px;
|
||
|
|
padding-top: 0px;
|
||
|
|
}
|
||
|
|
kbd {
|
||
|
|
border: 1px solid rgb(220, 220, 220);
|
||
|
|
box-shadow: inset 0 -1px 0 rgb(220, 220, 220);
|
||
|
|
padding: 2px 4px;
|
||
|
|
border-radius: 3px;
|
||
|
|
background-color: rgb(243, 243, 243);
|
||
|
|
}
|
||
|
|
|
||
|
|
:root {
|
||
|
|
--scrollbar-size: 7px;
|
||
|
|
}
|
||
|
|
|
||
|
|
::-webkit-scrollbar {
|
||
|
|
width: var(--scrollbar-size);
|
||
|
|
height: var(--scrollbar-size);
|
||
|
|
}
|
||
|
|
::-webkit-scrollbar-thumb {
|
||
|
|
border-radius: calc(var(--scrollbar-size) / 2);
|
||
|
|
}
|
||
|
|
::-webkit-scrollbar-corner {
|
||
|
|
background: none;
|
||
|
|
}
|
||
|
|
::-webkit-scrollbar-track {
|
||
|
|
border: none;
|
||
|
|
}
|
||
|
|
::-webkit-scrollbar-thumb {
|
||
|
|
background: rgba(50, 55, 63, 0.54);
|
||
|
|
}
|
||
|
|
::-webkit-scrollbar-track:hover {
|
||
|
|
background: rgba(0, 0, 0, 0.1);
|
||
|
|
}
|
||
|
|
::-webkit-scrollbar-thumb:hover {
|
||
|
|
background: rgba(50, 55, 63, 0.63);
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
/* Remove top padding and margin from first child so that top of rendered text is aligned to top of text editor text */
|
||
|
|
|
||
|
|
#rendered-md > h1:first-child,
|
||
|
|
#rendered-md > h2:first-child,
|
||
|
|
#rendered-md > h3:first-child,
|
||
|
|
#rendered-md > h4:first-child,
|
||
|
|
#rendered-md > ul:first-child,
|
||
|
|
#rendered-md > ol:first-child,
|
||
|
|
#rendered-md > table:first-child,
|
||
|
|
#rendered-md > blockquote:first-child,
|
||
|
|
#rendered-md > img:first-child,
|
||
|
|
#rendered-md > p:first-child {
|
||
|
|
margin-top: 0;
|
||
|
|
padding-top: 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
p, h1, h2, h3, h4, h5, h6, ul, table {
|
||
|
|
margin-top: .6em;
|
||
|
|
margin-bottom: 1.35em;
|
||
|
|
|
||
|
|
/*
|
||
|
|
Adds support for RTL text in the note body. It automatically detects the direction using the content.
|
||
|
|
Issue: https://github.com/laurent22/joplin/issues/3991
|
||
|
|
*/
|
||
|
|
unicode-bidi: plaintext;
|
||
|
|
}
|
||
|
|
|
||
|
|
h1, h2, h3, h4, h5, h6, ul, table {
|
||
|
|
margin-bottom: 0.65em;
|
||
|
|
}
|
||
|
|
|
||
|
|
h1, h2, h3, h4, h5, h6 {
|
||
|
|
line-height: 1.5em;
|
||
|
|
}
|
||
|
|
h1 {
|
||
|
|
font-size: 1.5em;
|
||
|
|
font-weight: bold;
|
||
|
|
border-bottom: 1px solid #dddddd;
|
||
|
|
padding-bottom: .3em;
|
||
|
|
}
|
||
|
|
h2 {
|
||
|
|
font-size: 1.3em;
|
||
|
|
font-weight: bold;
|
||
|
|
padding-bottom: .1em; */
|
||
|
|
}
|
||
|
|
h3 {
|
||
|
|
font-size: 1.1em;
|
||
|
|
font-weight: bold;
|
||
|
|
}
|
||
|
|
h4, h5, h6 {
|
||
|
|
font-size: 1em;
|
||
|
|
font-weight: bold;
|
||
|
|
}
|
||
|
|
|
||
|
|
.exported-note-title {
|
||
|
|
font-size: 2em;
|
||
|
|
font-weight: bold;
|
||
|
|
margin-bottom: 0.8em;
|
||
|
|
line-height: 1.5em;
|
||
|
|
padding-bottom: .35em;
|
||
|
|
border-bottom: 1px solid #dddddd;
|
||
|
|
}
|
||
|
|
|
||
|
|
a {
|
||
|
|
color: #155BDA;
|
||
|
|
}
|
||
|
|
ul, ol {
|
||
|
|
padding-left: 0;
|
||
|
|
margin-left: 1.7em;
|
||
|
|
}
|
||
|
|
li {
|
||
|
|
margin-bottom: .4em;
|
||
|
|
}
|
||
|
|
li p {
|
||
|
|
margin-top: 0.2em;
|
||
|
|
margin-bottom: 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
dt {
|
||
|
|
font-weight: bold;
|
||
|
|
margin-bottom: 0.25em;
|
||
|
|
}
|
||
|
|
|
||
|
|
dd {
|
||
|
|
margin-inline-start: 2.5em;
|
||
|
|
margin-bottom: 0.5em;
|
||
|
|
}
|
||
|
|
|
||
|
|
.resource-icon {
|
||
|
|
display: inline-block;
|
||
|
|
position: relative;
|
||
|
|
top: 0.3em;
|
||
|
|
text-decoration: none;
|
||
|
|
width: 1.2em;
|
||
|
|
height: 1.4em;
|
||
|
|
margin-right: 0.4em;
|
||
|
|
background-color: #155BDA;
|
||
|
|
}
|
||
|
|
/* These icons are obtained from the wonderful ForkAwesome project by copying the src svgs
|
||
|
|
* into the css classes below.
|
||
|
|
* svgs are obtained from https://github.com/ForkAwesome/Fork-Awesome/tree/master/src/icons/svg
|
||
|
|
* instead of the svg width, height property you must use a viewbox here, 0 0 1536 1792 is typically the actual size of the icon
|
||
|
|
* each line begins with the pre-amble -webkit-mask: url("data:image/svg+xml;utf8,
|
||
|
|
* and of course finishes with ");
|
||
|
|
* to prevent artifacts it is also necessary to include -webkit-mask-repeat: no-repeat;
|
||
|
|
* on the following line
|
||
|
|
* */
|
||
|
|
.fa-joplin {
|
||
|
|
/* Awesome Font file */
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M373.834 128C168.227 128 0 296.223 0 501.834v788.336C0 1495.778 168.227 1664 373.834 1664h788.336c205.608 0 373.83-168.222 373.83-373.83V501.834C1536 296.224 1367.778 128 1162.17 128zm397.222 205.431h417.424a7.132 7.132 0 0 1 7.132 7.133v132.552c0 4.461-3.619 8.073-8.077 8.073h-57.23c-24.168 0-43.768 19.338-44.284 43.374v2.377h-.017v136.191h-.053l-.466 509.375c-5.02 77.667-39.222 149.056-96.324 201.046-60.28 54.834-141.948 85.017-229.962 85.017-12.45 0-25.208-.61-37.907-1.785-92.157-8.682-181.494-48.601-251.662-112.438-71.99-65.517-117.147-150.03-127.164-238-11.226-98.763 23.42-192.783 95.045-257.937 81.99-74.637 198.185-101.768 316.613-75.704 5.574 1.227 9.55 6.282 9.55 11.997v199.52c-.199 2.625-1.481 6.599-8.183 2.896-.663-.365-1.194-.511-1.653-.531-21.987-10.587-45.159-17.57-68.559-19.916-.38-.04-.757-.124-1.138-.163-.537-.048-1.034-.033-1.556-.075-4.13-.354-8.183-.517-12.203-.58-.87-.011-1.771-.127-2.641-.127-.486 0-.951.05-1.437.057-1.464.011-2.886.115-4.33.163-2.76.102-5.497.211-8.182.448-.273.024-.547.07-.835.097-25.509 2.4-47.864 11.104-65.012 25.47-.954.802-1.974 1.53-2.9 2.36a1.34 1.34 0 0 1-.168.146c-23.96 21.8-34.881 53.872-30.726 90.316 4.62 40.737 26.94 81.156 62.841 113.823 35.908 32.67 80.335 52.977 125.113 57.186 35.118 3.36 66.547-3.919 89.899-20.461a97.255 97.255 0 0 0 9.365-7.501c2.925-2.661 5.569-5.5 8.086-8.416.3-.348.672-.673.975-1.024 8.253-9.864 14.222-21.067 17.996-33.148.639-2.034 1.051-4.148 1.564-6.227.381-1.563.81-3.106 1.112-4.693.555-2.784.923-5.632 1.253-8.49.086-.709.183-1.414.237-2.128.492-4.893.693-9.858.55-14.91h.013V521.623c-2.01-22.626-20.78-40.434-43.928-40.434h-57.23a8.071 8.071 0 0 1-8.077-8.073V340.564a7.132 7.132 0 0 1 7.136-7.133z'/></svg>");
|
||
|
|
}
|
||
|
|
.fa-file-image {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280zm-128-448v320H256v-192l192-192 128 128 384-384zm-832-192c-106 0-192-86-192-192s86-192 192-192 192 86 192 192-86 192-192 192z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file-pdf {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280zm-514-593c25 20 53 38 84 56 42-5 81-7 117-7 67 0 152 8 177 49 7 10 13 28 2 52-1 1-2 3-3 4v1c-3 18-18 38-71 38-64 0-161-29-245-73-139 15-285 46-392 83-103 176-182 262-242 262-10 0-19-2-28-7l-24-12c-3-1-4-3-6-5-5-5-9-16-6-36 10-46 64-123 188-188 8-5 18-2 23 6 1 1 2 3 2 4 31-51 67-116 107-197 45-90 80-178 104-262-32-109-42-221-24-287 7-25 22-40 42-40h22c15 0 27 5 35 15 12 14 15 36 9 68-1 3-2 6-4 8 1 3 1 5 1 8v30c-1 63-2 123-14 192 35 105 87 190 146 238zm-576 411c30-14 73-57 137-158-75 58-122 124-137 158zm398-920c-10 28-10 76-2 132 3-16 5-31 7-44 2-17 5-31 7-43 1-3 2-5 4-8-1-1-1-3-2-5-1-18-7-29-13-36 0 2-1 3-1 4zm-124 661c88-35 186-63 284-81-10-8-20-15-29-23-49-43-93-103-127-176-19 61-47 126-83 197-15 28-30 56-45 83zm646-16c-5-5-31-24-140-24 49 18 94 28 124 28 9 0 14 0 18-1 0-1-1-2-2-3z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file-word {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280zM233 768v107h70l164 661h159l128-485c5-15 8-30 10-46 1-8 2-16 2-24h4l3 24c3 14 4 30 9 46l128 485h159l164-661h70V768h-300v107h90l-99 438c-4 16-6 33-7 46l-2 21h-4c0-6-2-14-3-21-3-13-5-30-9-46L825 768H711l-144 545c-4 16-5 33-8 46l-4 21h-4l-2-21c-1-13-3-30-7-46l-99-438h90V768H233z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file-powerpoint {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280zm-992-234v106h327v-106h-93v-167h137c43 0 82-2 118-15 90-31 146-124 146-233s-54-193-137-228c-38-15-84-19-130-19H416v107h92v555h-92zm353-280H650V882h120c35 0 62 6 83 18 36 21 56 62 56 115 0 56-20 99-62 120-21 10-47 15-78 15z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file-excel {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280zm-979-234v106h281v-106h-75l103-161c12-19 18-34 21-34h2c1 4 3 7 5 10 4 8 10 14 17 24l107 161h-76v106h291v-106h-68l-192-273 195-282h67V768H828v107h74l-103 159c-12 19-21 34-21 33h-2c-1-4-3-7-5-10-4-7-9-14-17-23L648 875h76V768H434v107h68l189 272-194 283h-68z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file-audio {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280zM620 850c12 5 20 17 20 30v544c0 13-8 25-20 30-4 1-8 2-12 2-8 0-16-3-23-9l-166-167H288c-18 0-32-14-32-32v-192c0-18 14-32 32-32h131l166-167c10-9 23-12 35-7zm417 689c19 0 37-8 50-24 83-102 129-231 129-363s-46-261-129-363c-22-28-63-32-90-10-28 23-32 63-9 91 65 80 100 178 100 282s-35 202-100 282c-23 28-19 68 9 90 12 10 26 15 40 15zm-211-148c17 0 34-7 47-20 56-60 87-137 87-219s-31-159-87-219c-24-26-65-27-91-3-25 24-27 65-2 91 33 36 52 82 52 131s-19 95-52 131c-25 26-23 67 2 91 13 11 29 17 44 17z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file-video {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280zM768 768c70 0 128 58 128 128v384c0 70-58 128-128 128H384c-70 0-128-58-128-128V896c0-70 58-128 128-128h384zm492 2c12 5 20 17 20 30v576c0 13-8 25-20 30-4 1-8 2-12 2-8 0-17-3-23-9l-265-266v-90l265-266c6-6 15-9 23-9 4 0 8 1 12 2z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file-archive {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M640 384V256H512v128h128zm128 128V384H640v128h128zM640 640V512H512v128h128zm128 128V640H640v128h128zm700-388c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H768v128H640V128H128v1536h1280zM781 943c85 287 107 349 107 349 5 17 8 34 8 52 0 111-108 192-256 192s-256-81-256-192c0-18 3-35 8-52 0 0 21-62 120-396V768h128v128h79c29 0 54 19 62 47zm-141 465c71 0 128-29 128-64s-57-64-128-64-128 29-128 64 57 64 128 64z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file-code {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280zM480 768c11-14 31-17 45-6l51 38c14 11 17 31 6 45l-182 243 182 243c11 14 8 34-6 45l-51 38c-14 11-34 8-45-6l-226-301c-8-11-8-27 0-38zm802 301c8 11 8 27 0 38l-226 301c-11 14-31 17-45 6l-51-38c-14-11-17-31-6-45l182-243-182-243c-11-14-8-34 6-45l51-38c14-11 34-8 45 6zm-620 461c-18-3-29-20-26-37l138-831c3-18 20-29 37-26l63 10c18 3 29 20 26 37l-138 831c-3 18-20 29-37 26z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file-alt, .fa-file-csv {
|
||
|
|
/* fork-awesome doesn't have csv so we use the text icon */
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280zM384 800c0-18 14-32 32-32h704c18 0 32 14 32 32v64c0 18-14 32-32 32H416c-18 0-32-14-32-32v-64zm736 224c18 0 32 14 32 32v64c0 18-14 32-32 32H416c-18 0-32-14-32-32v-64c0-18 14-32 32-32h704zm0 256c18 0 32 14 32 32v64c0 18-14 32-32 32H416c-18 0-32-14-32-32v-64c0-18 14-32 32-32h704z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
.fa-file {
|
||
|
|
-webkit-mask: url("data:image/svg+xml;utf8,<svg viewBox='0 0 1536 1792' xmlns='http://www.w3.org/2000/svg'><path d='M1468 380c37 37 68 111 68 164v1152c0 53-43 96-96 96H96c-53 0-96-43-96-96V96C0 43 43 0 96 0h896c53 0 127 31 164 68zm-444-244v376h376c-6-17-15-34-22-41l-313-313c-7-7-24-16-41-22zm384 1528V640H992c-53 0-96-43-96-96V128H128v1536h1280z'/></svg>");
|
||
|
|
-webkit-mask-repeat: no-repeat;
|
||
|
|
}
|
||
|
|
blockquote {
|
||
|
|
border-left: 4px solid rgb(220, 220, 220);
|
||
|
|
padding-left: 1.2em;
|
||
|
|
margin-left: 0;
|
||
|
|
opacity: 0.7;
|
||
|
|
}
|
||
|
|
|
||
|
|
.jop-tinymce table,
|
||
|
|
table {
|
||
|
|
text-align: left;
|
||
|
|
border-collapse: collapse;
|
||
|
|
border: 1px solid rgb(220, 220, 220);
|
||
|
|
background-color: #ffffff;
|
||
|
|
}
|
||
|
|
|
||
|
|
.jop-tinymce table td, .jop-tinymce table th,
|
||
|
|
table td, th {
|
||
|
|
text-align: left;
|
||
|
|
padding: .5em 1em .5em 1em;
|
||
|
|
font-size: 15;
|
||
|
|
color: #32373F;
|
||
|
|
font-family: 'Avenir Next', 'Avenir', 'Arial', sans-serif;
|
||
|
|
}
|
||
|
|
|
||
|
|
.jop-tinymce table td,
|
||
|
|
table td {
|
||
|
|
border: 1px solid rgb(220, 220, 220);
|
||
|
|
}
|
||
|
|
|
||
|
|
.jop-tinymce table th,
|
||
|
|
table th {
|
||
|
|
border: 1px solid rgb(220, 220, 220);
|
||
|
|
border-bottom: 2px solid rgb(220, 220, 220);
|
||
|
|
background-color: rgb(247, 247, 247);
|
||
|
|
}
|
||
|
|
|
||
|
|
.jop-tinymce table tr:nth-child(even),
|
||
|
|
table:has(thead) tr:nth-child(even) {
|
||
|
|
background-color: rgb(247, 247, 247);
|
||
|
|
}
|
||
|
|
|
||
|
|
.jop-tinymce table tr:hover,
|
||
|
|
table tr:hover {
|
||
|
|
background-color: #e5e5e5;
|
||
|
|
}
|
||
|
|
|
||
|
|
hr {
|
||
|
|
border: none;
|
||
|
|
border-bottom: 2px solid #dddddd;
|
||
|
|
}
|
||
|
|
img {
|
||
|
|
max-width: 100%;
|
||
|
|
height: auto;
|
||
|
|
}
|
||
|
|
|
||
|
|
.inline-code,
|
||
|
|
.mce-content-body code {
|
||
|
|
border: 1px solid rgb(220, 220, 220);
|
||
|
|
background-color: rgb(243, 243, 243);
|
||
|
|
padding-right: .2em;
|
||
|
|
padding-left: .2em;
|
||
|
|
border-radius: .25em;
|
||
|
|
color: rgb(0,0,0);
|
||
|
|
font-size: .9em;
|
||
|
|
}
|
||
|
|
|
||
|
|
.highlighted-keyword {
|
||
|
|
background-color: #F3B717;
|
||
|
|
color: black;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
.not-loaded-resource img {
|
||
|
|
width: 1.15em;
|
||
|
|
height: 1.15em;
|
||
|
|
background: white;
|
||
|
|
padding: 2px !important;
|
||
|
|
border-radius: 2px;
|
||
|
|
box-shadow: 0 1px 3px #000000aa;
|
||
|
|
}
|
||
|
|
|
||
|
|
a.not-loaded-resource img {
|
||
|
|
margin-right: .2em;
|
||
|
|
}
|
||
|
|
|
||
|
|
a.not-loaded-resource {
|
||
|
|
display: flex;
|
||
|
|
flex-direction: row;
|
||
|
|
align-items: center;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
.md-checkbox input[type=checkbox]:checked {
|
||
|
|
opacity: 0.7;
|
||
|
|
}
|
||
|
|
|
||
|
|
.jop-tinymce ul.joplin-checklist .checked,
|
||
|
|
.md-checkbox .checkbox-label-checked {
|
||
|
|
opacity: 0.5;
|
||
|
|
}
|
||
|
|
|
||
|
|
.exported-note {
|
||
|
|
padding: 1em;
|
||
|
|
}
|
||
|
|
|
||
|
|
.joplin-editable .joplin-source {
|
||
|
|
display: none;
|
||
|
|
}
|
||
|
|
|
||
|
|
mark {
|
||
|
|
background: #F7D26E;
|
||
|
|
color: black;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* =============================================== */
|
||
|
|
/* For TinyMCE */
|
||
|
|
/* =============================================== */
|
||
|
|
|
||
|
|
.mce-content-body {
|
||
|
|
/* Note: we give a bit more padding at the bottom, to allow scrolling past the end of the document */
|
||
|
|
padding: 5px 10px 10em 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
/*
|
||
|
|
.mce-content-body code {
|
||
|
|
background-color: transparent;
|
||
|
|
}
|
||
|
|
*/
|
||
|
|
|
||
|
|
.mce-content-body [data-mce-selected=inline-boundary] {
|
||
|
|
background-color: transparent;
|
||
|
|
}
|
||
|
|
|
||
|
|
.mce-content-body .joplin-editable {
|
||
|
|
cursor: pointer !important;
|
||
|
|
}
|
||
|
|
|
||
|
|
.mce-content-body.mce-content-readonly {
|
||
|
|
opacity: 0.5;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* We need that to make sure click events have the A has a target */
|
||
|
|
.katex a span {
|
||
|
|
pointer-events: none;
|
||
|
|
}
|
||
|
|
|
||
|
|
.media-player {
|
||
|
|
width: 100%;
|
||
|
|
margin-top: 10px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.media-player.media-pdf {
|
||
|
|
min-height: 35rem;
|
||
|
|
width: 100%;
|
||
|
|
max-width: 1000px;
|
||
|
|
margin: 0;
|
||
|
|
border: 0;
|
||
|
|
display: block;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* Clear the CODE style if the element is within a joplin-editable block */
|
||
|
|
.mce-content-body .joplin-editable code {
|
||
|
|
border: none;
|
||
|
|
background: none;
|
||
|
|
padding: 0;
|
||
|
|
color: inherit;
|
||
|
|
font-size: inherit;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* To make code blocks horizontally scrollable */
|
||
|
|
/* https://github.com/laurent22/joplin/issues/5740 */
|
||
|
|
pre.hljs {
|
||
|
|
overflow-x: auto;
|
||
|
|
}
|
||
|
|
|
||
|
|
.joplin-table-wrapper{
|
||
|
|
overflow-x: auto;
|
||
|
|
overflow-y: hidden;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* =============================================== */
|
||
|
|
/* For TinyMCE */
|
||
|
|
/* =============================================== */
|
||
|
|
|
||
|
|
@media print {
|
||
|
|
body {
|
||
|
|
height: auto !important;
|
||
|
|
}
|
||
|
|
|
||
|
|
pre {
|
||
|
|
white-space: pre-wrap;
|
||
|
|
}
|
||
|
|
|
||
|
|
.code, .inline-code {
|
||
|
|
border: 1px solid #CBCBCB;
|
||
|
|
}
|
||
|
|
|
||
|
|
#joplin-container-content {
|
||
|
|
/* The height of the content is set dynamically by JavaScript (in updateBodyHeight) to go
|
||
|
|
around various issues related to scrolling. However when printing we don't want this
|
||
|
|
fixed size as that would crop the content. So we set it to auto here. "important" is
|
||
|
|
needed to override the style set by JavaScript at the element-level. */
|
||
|
|
height: auto !important;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/*
|
||
|
|
FOR THE MARKDOWN EDITOR
|
||
|
|
*/
|
||
|
|
|
||
|
|
/* Remove the indentation from the checkboxes at the root of the document
|
||
|
|
(otherwise they are too far right), but keep it for their children to allow
|
||
|
|
nested lists. Make sure this value matches the UL margin. */
|
||
|
|
|
||
|
|
li.md-checkbox {
|
||
|
|
list-style-type: none;
|
||
|
|
}
|
||
|
|
|
||
|
|
li.md-checkbox input[type=checkbox] {
|
||
|
|
margin-left: -1.71em;
|
||
|
|
margin-right: 0.7em;
|
||
|
|
position: relative;
|
||
|
|
top: 1px;
|
||
|
|
}
|
||
|
|
|
||
|
|
ul.joplin-checklist {
|
||
|
|
list-style:none;
|
||
|
|
}
|
||
|
|
|
||
|
|
/*
|
||
|
|
FOR THE RICH TEXT EDITOR
|
||
|
|
*/
|
||
|
|
|
||
|
|
ul.joplin-checklist li::before {
|
||
|
|
content:"\f14a";
|
||
|
|
font-family:"Font Awesome 5 Free";
|
||
|
|
background-size: 16px 16px;
|
||
|
|
pointer-events: all;
|
||
|
|
cursor: pointer;
|
||
|
|
width: 1em;
|
||
|
|
height: 1em;
|
||
|
|
margin-left: -1.3em;
|
||
|
|
position: absolute;
|
||
|
|
color: #32373F;
|
||
|
|
}
|
||
|
|
|
||
|
|
.joplin-checklist li:not(.checked)::before {
|
||
|
|
content:"\f0c8";
|
||
|
|
}
|
||
|
|
|
||
|
|
.abc-notation-block svg {
|
||
|
|
background-color: white;
|
||
|
|
}
|
||
|
|
|
||
|
|
.mermaid { width: 640px; }
|
||
|
|
pre.mermaid[data-processed=true] { white-space: unset; }
|
||
|
|
.mermaid-export-graph {
|
||
|
|
opacity: 0;
|
||
|
|
height: 0;
|
||
|
|
z-index: 1;
|
||
|
|
position: relative;
|
||
|
|
}
|
||
|
|
.joplin-editable:hover .mermaid-export-graph,
|
||
|
|
.joplin-editable .mermaid-export-graph:has(:focus-visible) {
|
||
|
|
opacity: 1;
|
||
|
|
}
|
||
|
|
.mermaid-export-graph > button:hover {
|
||
|
|
background-color: #CBDAF1 !important;
|
||
|
|
}</style><div id="rendered-md"><p><strong>VIs List :-</strong></p>
|
||
|
|
<ul>
|
||
|
|
<li>JSONDataFileGSSN_Save.vi</li>
|
||
|
|
<li>JSONDataFileGSSN_Save Editor.vi</li>
|
||
|
|
<li>JSONDataFileGSSNSave.vi</li>
|
||
|
|
<li>hierarchical json make.vi</li>
|
||
|
|
<li>json name-value pairs array make.vi</li>
|
||
|
|
<li>json name-value pairs section.vi</li>
|
||
|
|
<li>run test results uploader process.vi</li>
|
||
|
|
<li>time stamp global.vi</li>
|
||
|
|
<li>SC13_CustomVIs.lvlibp</li>
|
||
|
|
</ul>
|
||
|
|
<p><strong>Additional file:</strong></p>
|
||
|
|
<ul>
|
||
|
|
<li>stationName - file placed into 'C:\Sonos'</li>
|
||
|
|
</ul>
|
||
|
|
<p><img src="data:image/png;base64,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
|
||
|
|
<ul>
|
||
|
|
<li>Example of File Content
|
||
|
|
<ul>
|
||
|
|
<li>Format : <em><strong>Product Name = StationName</strong></em></li>
|
||
|
|
</ul>
|
||
|
|
</li>
|
||
|
|
</ul>
|
||
|
|
<p><img src="data:image/png;base64,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
|
||
|
|
<p><strong>VI Interface :</strong><br/>
|
||
|
|
<img src="data:image/png;base64,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
|
||
|
|
<ul>
|
||
|
|
<li>Leave StationName black to allow VIs to access stationName file info</li>
|
||
|
|
<li>TMS Data Enable will automatic store json into 'SONOS_TMS_LOGS' folder that at the same drive with 'Folder to save JSON data files'</li>
|
||
|
|
</ul>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
<p> </p>
|
||
|
|
</div></div>
|
||
|
|
</body>
|
||
|
|
</html>
|
||
|
|
|