ソースを参照

10.7.3 release

Gaudenz Alder 6 年 前
コミット
1fb4e24494
66 ファイル変更2870 行追加2424 行削除
  1. 9 0
      ChangeLog
  2. 1 1
      VERSION
  3. 2 6
      etc/build/build.xml
  4. 1 1
      src/main/webapp/cache.manifest
  5. 370 33
      src/main/webapp/electron.js
  6. 62 3
      src/main/webapp/export3.html
  7. 1088 1086
      src/main/webapp/js/app.min.js
  8. 33 0
      src/main/webapp/js/diagramly/App.js
  9. 0 16
      src/main/webapp/js/diagramly/Editor.js
  10. 23 2
      src/main/webapp/js/diagramly/EditorUi.js
  11. 2 0
      src/main/webapp/js/diagramly/ElectronApp.js
  12. 2 0
      src/main/webapp/js/diagramly/Pages.js
  13. 1171 1170
      src/main/webapp/js/viewer.min.js
  14. 2 2
      src/main/webapp/resources/dia.txt
  15. 2 2
      src/main/webapp/resources/dia_am.txt
  16. 2 2
      src/main/webapp/resources/dia_ar.txt
  17. 2 2
      src/main/webapp/resources/dia_bg.txt
  18. 2 2
      src/main/webapp/resources/dia_bn.txt
  19. 2 2
      src/main/webapp/resources/dia_bs.txt
  20. 2 2
      src/main/webapp/resources/dia_ca.txt
  21. 2 2
      src/main/webapp/resources/dia_cs.txt
  22. 2 2
      src/main/webapp/resources/dia_da.txt
  23. 2 2
      src/main/webapp/resources/dia_de.txt
  24. 2 2
      src/main/webapp/resources/dia_el.txt
  25. 2 2
      src/main/webapp/resources/dia_eo.txt
  26. 2 2
      src/main/webapp/resources/dia_es.txt
  27. 2 2
      src/main/webapp/resources/dia_et.txt
  28. 2 2
      src/main/webapp/resources/dia_fa.txt
  29. 2 2
      src/main/webapp/resources/dia_fi.txt
  30. 2 2
      src/main/webapp/resources/dia_fil.txt
  31. 2 2
      src/main/webapp/resources/dia_fr.txt
  32. 2 2
      src/main/webapp/resources/dia_gu.txt
  33. 2 2
      src/main/webapp/resources/dia_he.txt
  34. 2 2
      src/main/webapp/resources/dia_hi.txt
  35. 2 2
      src/main/webapp/resources/dia_hr.txt
  36. 2 2
      src/main/webapp/resources/dia_hu.txt
  37. 2 2
      src/main/webapp/resources/dia_id.txt
  38. 2 2
      src/main/webapp/resources/dia_it.txt
  39. 2 2
      src/main/webapp/resources/dia_ja.txt
  40. 2 2
      src/main/webapp/resources/dia_kn.txt
  41. 2 2
      src/main/webapp/resources/dia_ko.txt
  42. 2 2
      src/main/webapp/resources/dia_lt.txt
  43. 2 2
      src/main/webapp/resources/dia_lv.txt
  44. 2 2
      src/main/webapp/resources/dia_ml.txt
  45. 2 2
      src/main/webapp/resources/dia_mr.txt
  46. 2 2
      src/main/webapp/resources/dia_ms.txt
  47. 2 2
      src/main/webapp/resources/dia_nl.txt
  48. 2 2
      src/main/webapp/resources/dia_no.txt
  49. 2 2
      src/main/webapp/resources/dia_pl.txt
  50. 2 2
      src/main/webapp/resources/dia_pt-br.txt
  51. 2 2
      src/main/webapp/resources/dia_pt.txt
  52. 2 2
      src/main/webapp/resources/dia_ro.txt
  53. 2 2
      src/main/webapp/resources/dia_ru.txt
  54. 2 2
      src/main/webapp/resources/dia_sk.txt
  55. 2 2
      src/main/webapp/resources/dia_sl.txt
  56. 2 2
      src/main/webapp/resources/dia_sr.txt
  57. 2 2
      src/main/webapp/resources/dia_sv.txt
  58. 2 2
      src/main/webapp/resources/dia_sw.txt
  59. 2 2
      src/main/webapp/resources/dia_ta.txt
  60. 2 2
      src/main/webapp/resources/dia_te.txt
  61. 2 2
      src/main/webapp/resources/dia_th.txt
  62. 2 2
      src/main/webapp/resources/dia_tr.txt
  63. 2 2
      src/main/webapp/resources/dia_uk.txt
  64. 2 2
      src/main/webapp/resources/dia_vi.txt
  65. 2 2
      src/main/webapp/resources/dia_zh-tw.txt
  66. 2 2
      src/main/webapp/resources/dia_zh.txt

+ 9 - 0
ChangeLog

@@ -1,3 +1,12 @@
+31-MAY-2019: 10.7.3
+
+- Enabling saving diagrams when the associated custom content is deleted or not found
+
+31-MAY-2019: 10.7.2
+
+- Fixes loading custom plugins in embed mode with configure URL parameter
+- Fixes math rendering with no scrollbars
+
 29-MAY-2019: 10.7.1
 
 - Adds JSON string for layouts in CSV import

+ 1 - 1
VERSION

@@ -1 +1 @@
-10.7.1
+10.7.3

+ 2 - 6
etc/build/build.xml

@@ -408,12 +408,8 @@
 	</target>
 
 	<target name="clean" description="Cleans build directories">
-		<delete failonerror="false">
-			<fileset dir="${javac.dir}">
-			</fileset>
-			<fileset dir="${build.dir}">
-			</fileset>
-		</delete>
+		<delete dir="${javac.dir}"/>
+		<delete dir="${build.dir}"/>
 		<delete file="${basedir}/base.min.js"/>
 		<delete file="${basedir}/base-viewer.min.js"/>
 	</target>

+ 1 - 1
src/main/webapp/cache.manifest

@@ -1,7 +1,7 @@
 CACHE MANIFEST
 
 # THIS FILE WAS GENERATED. DO NOT MODIFY!
-# 05/29/2019 03:12 PM
+# 05/31/2019 05:06 PM
 
 app.html
 index.html?offline=1

+ 370 - 33
src/main/webapp/electron.js

@@ -42,7 +42,10 @@ function createWindow (opt = {})
 	let mainWindow = new BrowserWindow(options)
 	windowsRegistry.push(mainWindow)
 
-	console.log('createWindow', opt)
+	if (__DEV__) 
+	{
+		console.log('createWindow', opt)
+	}
 
 	let ourl = url.format(
 	{
@@ -79,7 +82,12 @@ function createWindow (opt = {})
 	{
 		const win = event.sender
 		const index = windowsRegistry.indexOf(win)
-		console.log('Window on close', index)
+		
+		if (__DEV__) 
+		{
+			console.log('Window on close', index)
+		}
+		
 		const contents = win.webContents
 
 		if (contents != null)
@@ -87,7 +95,11 @@ function createWindow (opt = {})
 			contents.executeJavaScript('if(typeof global.__emt_isModified === \'function\'){global.__emt_isModified()}', true,
 				isModified =>
 				{
-					console.log('__emt_isModified', isModified)
+					if (__DEV__) 
+					{
+						console.log('__emt_isModified', isModified)
+					}
+					
 					if (isModified)
 					{
 						var choice = dialog.showMessageBox(
@@ -122,7 +134,12 @@ function createWindow (opt = {})
 	mainWindow.on('closed', (event/*:WindowEvent*/) =>
 	{
 		const index = windowsRegistry.indexOf(event.sender)
-		console.log('Window closed idx:%d', index)
+		
+		if (__DEV__) 
+		{
+			console.log('Window closed idx:%d', index)
+		}
+		
 		windowsRegistry.splice(index, 1)
 	})
 	
@@ -143,7 +160,10 @@ app.on('ready', e =>
 	//synchronous
 	ipcMain.on('winman', (event, arg) =>
 	{
-		console.log('ipcMain.on winman', arg)
+		if (__DEV__) 
+		{
+			console.log('ipcMain.on winman', arg)
+		}
 		
 		if (arg.action === 'newfile')
 		{
@@ -162,12 +182,289 @@ app.on('ready', e =>
         argv.unshift(null)
     }
 
-    program
+	var validFormatRegExp = /^(pdf|svg|png|jpeg|jpg)$/;
+	
+	function argsRange(val) 
+	{
+	  return val.split('..').map(Number);
+	}
+
+	program
         .version(app.getVersion())
-        .usage('[options] [file]')
+        .usage('[options] [input file/folder]')
         .option('-c, --create', 'creates a new empty file if no file is passed')
+        .option('-x, --export', 'export the input file/folder based on the given options')
+        .option('-r, --recursive', 'for a folder input, recursively convert all files in sub-folders also')
+        .option('-o, --output <output file/folder>', 'specify the output file/folder. If omitted, the input file name is used for output with the specified format as extension')
+        .option('-f, --format <format>',
+		    'if output file name extension is specified, this option is ignored (file type is determined from output extension)',
+		    validFormatRegExp, 'pdf')
+		.option('-q, --quality <quality>',
+			'output image quality for JPEG (default: 90)', parseInt)
+		.option('-t, --transparent',
+			'set transparent background for PNG')
+		.option('-e, --embed-diagram',
+			'includes a copy of the diagram (for PNG format only)')
+		.option('-b, --border <border>',
+			'sets the border width around the diagram (default: 0)', parseInt)
+		.option('-s, --scale <scale>',
+			'scales the diagram size', parseFloat)
+		.option('-w, --width <width>',
+			'fits the generated image/pdf into the specified width, preserves aspect ratio.', parseInt)
+		.option('-h, --height <height>',
+			'fits the generated image/pdf into the specified height, preserves aspect ratio.', parseInt)
+		.option('--crop',
+			'crops PDF to diagram size')
+		.option('-a, --all-pages',
+			'export all pages (for PDF format only)')
+		.option('-p, --page-index <pageIndex>',
+			'selects a specific page, if not specified and the format is an image, the first page is selected', parseInt)
+		.option('-g, --page-rage <from>..<to>',
+			'selects a page range (for PDF format only)', argsRange)
         .parse(argv)
-        
+
+    //Start export mode?
+    if (program.export)
+	{
+    	var dummyWin = new BrowserWindow({
+			show : false
+		});
+    	
+    	windowsRegistry.push(dummyWin);
+    	
+    	try
+    	{
+	    	//Prepare arguments and confirm it's valid
+	    	var format = null;
+	    	var outType = null;
+	    	
+	    	//Format & Output
+	    	if (program.output)
+			{
+	    		try
+	    		{
+	    			var outStat = fs.statSync(program.output);
+	    			
+	    			if (outStat.isDirectory())
+					{
+	    				outType = {isDir: true};
+					}
+	    			else //If we can get file stat, then it exists
+					{
+	    				throw 'Error: Output file already exists';
+					}
+	    		}
+	    		catch(e) //on error, file doesn't exist and it is not a dir
+	    		{
+	    			outType = {isFile: true};
+	    			
+	    			format = path.extname(program.output).substr(1);
+					
+					if (!validFormatRegExp.test(format))
+					{
+						format = null;
+					}
+	    		}
+			}
+	    	
+	    	if (format == null)
+			{
+	    		format = program.format;
+			}
+	    	
+	    	var from = null, to = null;
+	    	
+	    	if (program.pageIndex != null && program.pageIndex >= 0)
+			{
+	    		from = program.pageIndex;
+			}
+	    	else if (program.pageRage && program.pageRage.length == 2)
+			{
+	    		from = program.pageRage[0] >= 0 ? program.pageRage[0] : null;
+	    		to = program.pageRage[1] >= 0 ? program.pageRage[1] : null;
+			}
+	    	
+			var expArgs = {
+				format: format,
+				w: program.width > 0 ? program.width : null,
+				h: program.height > 0 ? program.height : null,
+				border: program.border > 0 ? program.border : 0,
+				bg: program.transparent ? 'none' : '#ffffff',
+				from: from,
+				to: to,
+				allPages: format == 'pdf' && program.allPages,
+				scale: (program.crop && program.scale == null) ? 1.00001: (program.scale || 1), //any value other than 1 crops the pdf
+				embedXml: program.embedDiagram? '1' : '0',
+				jpegQuality: program.quality
+			};
+
+			var paths = program.args;
+			
+			// If a file is passed 
+			if (paths !== undefined && paths[0] != null)
+			{
+				var inStat = null;
+				
+				try
+				{
+					inStat = fs.statSync(paths[0]);
+				}
+				catch(e)
+				{
+					throw 'Error: input file/directory not found';	
+				}
+				
+				var files = [];
+				
+				function addDirectoryFiles(dir, isRecursive)
+				{
+					fs.readdirSync(dir).forEach(function(file) 
+					{
+						var filePath = path.join(dir, file);
+						stat = fs.statSync(filePath);
+					    
+						if (stat.isFile())
+						{
+							files.push(filePath);
+						}
+						if (stat.isDirectory() && isRecursive)
+					    {
+							addDirectoryFiles(filePath, isRecursive)
+					    }
+					});
+				}
+				
+				if (inStat.isFile())
+				{
+					files.push(paths[0]);
+				}
+				else if (inStat.isDirectory())
+				{
+					addDirectoryFiles(paths[0], program.recursive);
+				}
+
+				if (files.length > 0)
+				{
+					var fileIndex = 0;
+					
+					function processOneFile()
+					{
+						var curFile = files[fileIndex];
+						
+						try
+						{
+							expArgs.xml = fs.readFileSync(curFile, 'utf-8');
+							
+							var mockEvent = {
+								reply: function(msg, data)
+								{
+									try
+									{
+										if (data == null || data.length == 0)
+										{
+											console.error('Error: Export failed: ' + curFile);
+										}
+										else if (msg == 'export-success')
+										{
+											var outFileName = null;
+											
+											if (outType != null)
+											{
+												if (outType.isDir)
+												{
+													outFileName = path.join(program.output, path.basename(curFile, path.extname(curFile))) + '.' + format;
+												}
+												else
+												{
+													outFileName = program.output;
+												}
+											}
+											else if (inStat.isFile())
+											{
+												outFileName = path.join(path.dirname(paths[0]), path.basename(paths[0], path.extname(paths[0]))) + '.' + format;
+											}
+											else //dir
+											{
+												outFileName = path.join(path.dirname(curFile), path.basename(curFile, path.extname(curFile))) + '.' + format;
+											}
+											
+											try
+											{
+												fs.writeFileSync(outFileName, data, { flag: 'wx' });
+												console.log(curFile + ' -> ' + outFileName);
+											}
+											catch(e)
+											{
+												console.error('Error writing to file: ' + outFileName);
+											}
+										}
+										else
+										{
+											console.error('Error: ' + data + ': ' + curFile);
+										}
+										
+										fileIndex++;
+										
+										if (fileIndex < files.length)
+										{
+											processOneFile();
+										}
+										else
+										{
+											cmdQPressed = true;
+											dummyWin.destroy();
+										}
+									}
+									finally
+									{
+										mockEvent.finalize();
+									}
+						    	}
+							};
+					    	
+							exportDiagram(mockEvent, expArgs, true);
+						}
+						catch(e)
+						{
+							console.error('Error reading file: ' + curFile);
+							
+							fileIndex++;
+							
+							if (fileIndex < files.length)
+							{	
+								processOneFile();
+							}
+							else
+							{
+								cmdQPressed = true;
+								dummyWin.destroy();
+							}
+						}
+					}
+					
+					processOneFile();
+				}
+				else
+				{
+					throw 'Error: input file/directory not found or directory is empty';
+				}
+			}
+			else
+			{
+				throw 'Error: An input file must be specified';
+			}
+    	}
+    	catch(e)
+    	{
+    		console.error(e);
+    		
+    		cmdQPressed = true;
+			dummyWin.destroy();
+    	}
+    	
+    	return;
+	}
+    
     let win = createWindow()
     
     win.webContents.on('did-finish-load', function()
@@ -293,7 +590,11 @@ if (process.platform === 'darwin')
 // Quit when all windows are closed.
 app.on('window-all-closed', function ()
 {
-	console.log('window-all-closed', windowsRegistry.length)
+	if (__DEV__) 
+	{
+		console.log('window-all-closed', windowsRegistry.length)
+	}
+	
 	// On OS X it is common for applications and their menu bar
 	// to stay active until the user quits explicitly with Cmd + Q
 	if (cmdQPressed || process.platform !== 'darwin')
@@ -304,7 +605,11 @@ app.on('window-all-closed', function ()
 
 app.on('activate', function ()
 {
-	console.log('app on activate', windowsRegistry.length)
+	if (__DEV__) 
+	{
+		console.log('app on activate', windowsRegistry.length)
+	}
+	
 	// On OS X it's common to re-create a window in the app when the
 	// dock icon is clicked and there are no other windows open.
 	if (windowsRegistry.length === 0)
@@ -559,7 +864,8 @@ function writePngWithText(origBuff, key, text, compressed, base64encoded)
 	}
 }
 
-ipcMain.on('export', (event, args) =>
+//TODO Use canvas to export images if math is not used to speedup export (no capturePage). Requires change to export3.html also
+function exportDiagram(event, args, directFinalize)
 {
 	var browser = null;
 	
@@ -580,7 +886,7 @@ ipcMain.on('export', (event, args) =>
 		browser.loadURL(`file://${__dirname}/export3.html`);
 
 		const contents = browser.webContents;
-		
+
 		contents.on('did-finish-load', function()
 	    {
 			contents.send('render', {
@@ -601,8 +907,14 @@ ipcMain.on('export', (event, args) =>
 			ipcMain.once('render-finished', (evt, bounds) =>
 			{
 				var pdfOptions = {pageSize: 'A4'};
-
-				if (bounds != null)
+				var hasError = false;
+				
+				if (bounds == null || bounds.width < 5 || bounds.height < 5) //very small page size never return from printToPDF
+				{
+					//A workaround to detect errors in the input file or being empty file
+					hasError = true;
+				}
+				else
 				{
 					//Chrome generates Pdf files larger than requested pixels size and requires scaling
 					var fixingScale = 0.959;
@@ -612,12 +924,12 @@ ipcMain.on('export', (event, args) =>
 					// +0.1 fixes cases where adding 1px below is not enough
 					// Increase this if more cropped PDFs have extra empty pages
 					var h = Math.ceil(bounds.height * fixingScale + 0.1);
-	
+					
 					pdfOptions = {
 						printBackground: true,
 						pageSize : {
 							width: w * MICRON_TO_PIXEL,
-							height: (h + 1) * MICRON_TO_PIXEL //the extra pixel to prevent adding an extra empty page						
+							height: (h + 2) * MICRON_TO_PIXEL //the extra 2 pixels to prevent adding an extra empty page						
 						},
 						marginsType: 1 // no margin
 					}
@@ -625,9 +937,30 @@ ipcMain.on('export', (event, args) =>
 				
 				var base64encoded = args.base64 == '1';
 				
-				if (args.format == 'png' || args.format == 'jpg' || args.format == 'jpeg')
+				//Set finalize here since it is call in the reply below
+				function finalize()
+				{
+					browser.destroy();
+				};
+				
+				if (directFinalize === true)
+				{
+					event.finalize = finalize;
+				}
+				else
+				{
+					//Destroy the window after response being received by caller
+					ipcMain.once('export-finalize', finalize);
+				}
+				
+				if (hasError)
+				{
+					event.reply('export-error');
+				}
+				else if (args.format == 'png' || args.format == 'jpg' || args.format == 'jpeg')
 				{
-					browser.setBounds({width: Math.ceil(bounds.width + bounds.x), height: Math.ceil(bounds.height + bounds.y)});
+					var newBounds = {width: Math.ceil(bounds.width + bounds.x), height: Math.ceil(bounds.height + bounds.y)};
+					browser.setBounds(newBounds);
 					
 					//TODO The browser takes sometime to show the graph (also after resize it takes some time to render)
 					//	 	1 sec is most probably enough (for small images, 5 for large ones) BUT not a stable solution
@@ -636,9 +969,9 @@ ipcMain.on('export', (event, args) =>
 						browser.capturePage().then(function(img)
 						{
 							//Image is double the given bounds, so resize is needed!
-							img = img.resize({width: args.w || Math.ceil(bounds.width + bounds.x), height: args.h || Math.ceil(bounds.height + bounds.y)});
+							img = img.resize(newBounds);
 
-							var data = args.format == 'png'? img.toPNG() : img.toJPEG(90);
+							var data = args.format == 'png'? img.toPNG() : img.toJPEG(args.jpegQuality || 90);
 							
 							if (args.embedXml == "1" && args.format == 'png')
 							{
@@ -651,11 +984,6 @@ ipcMain.on('export', (event, args) =>
 								{
 									data = data.toString('base64');
 								}
-
-								if (data.length == 0)
-								{
-									throw new Error("Invalid image");
-								}
 							}
 							
 							event.reply('export-success', data);
@@ -674,15 +1002,22 @@ ipcMain.on('export', (event, args) =>
 						{
 							event.reply('export-success', data);
 						}
-					})
+					});
 				}
-				
-				//Destroy the window after 30 sec which is more than enough (test with 1 sec works)
-				setTimeout(function()
+				else if (args.format == 'svg')
 				{
-					browser.destroy();
-				}, 30000);
-			})
+					contents.send('get-svg-data');
+					
+					ipcMain.once('svg-data', (evt, data) =>
+					{
+						event.reply('export-success', data);
+					});
+				}
+				else
+				{
+					event.reply('export-error', 'Error: Unsupported format');
+				}
+			});
 	    });
 	}
 	catch (e)
@@ -695,4 +1030,6 @@ ipcMain.on('export', (event, args) =>
 		event.reply('export-error', e);
 		console.log('export-error', e);
 	}
-})
+};
+
+ipcMain.on('export', exportDiagram);

+ 62 - 3
src/main/webapp/export3.html

@@ -288,7 +288,7 @@
 				graph.pdfPageVisible = false;
 				
 				// Handles PDF output where the output should match the page format if the page is visible
-				if (data.format == 'pdf' && xmlDoc.documentElement.getAttribute('page') == '1' && data.w == 0 && data.h == 0)
+				if (data.format == 'pdf' && xmlDoc.documentElement.getAttribute('page') == '1' && data.w == 0 && data.h == 0 && data.scale == 1)
 				{
 					var pw = xmlDoc.documentElement.getAttribute('pageWidth');
 					var ph = xmlDoc.documentElement.getAttribute('pageHeight');
@@ -356,9 +356,23 @@
 					var b = graph.getGraphBounds();
 					
 					// Floor is needed to keep rendering crisp
-					if (data.w > 0 && data.h > 0)
+					if (data.w > 0 || data.h > 0)
 					{
-						var s = Math.min(data.w / b.width, data.h / b.height);
+						var s = 1;
+						
+						if (data.w > 0 && data.h > 0)
+						{
+							s = Math.min(data.w / b.width, data.h / b.height);
+						}
+						else if (data.w > 0)
+						{
+							s = data.w / b.width;
+						}
+						else
+						{
+							s = data.h / b.height;
+						}
+						
 						graph.view.scaleAndTranslate(s,
 							Math.floor(data.border / s - Math.floor(b.x)),
 							Math.floor(data.border / s - Math.floor(b.y)));
@@ -554,6 +568,46 @@
 			decrementWaitCounter();
 		};
 		
+		//Code taken from https://github.com/languitar/drawio-batch
+		//Must be called after rendering is finished
+		function getSvgData()
+		{
+			// extracts the inline SVG element used for rendering the diagram and puts it into a file with appropriate SVG headers
+
+		    // get the rendered page content as valid SVG
+	        const xmlns = 'http://www.w3.org/2000/xmlns/'
+	        const xlinkns = 'http://www.w3.org/1999/xlink'
+	        const svgns = 'http://www.w3.org/2000/svg'
+
+	        svg = document.getElementsByTagName('svg')[0]
+	        svg.setAttribute('version', '1.1')
+
+	        var defsEl = document.createElement('defs')
+	        svg.insertBefore(defsEl, svg.firstChild)
+
+	        var styleEl = document.createElement('style')
+	        defsEl.appendChild(styleEl)
+	        styleEl.setAttribute('type', 'text/css')
+
+	        // removing attributes so they aren't doubled up
+	        svg.removeAttribute('xmlns')
+	        svg.removeAttribute('xlink')
+
+	        // These are needed for the svg
+	        if (!svg.hasAttributeNS(xmlns, 'xmlns')) {
+	          svg.setAttributeNS(xmlns, 'xmlns', svgns)
+	        }
+
+	        if (!svg.hasAttributeNS(xmlns, 'xmlns:xlink')) {
+	          svg.setAttributeNS(xmlns, 'xmlns:xlink', xlinkns)
+	        }
+
+	        //This page(code) is designed for Chrome (Puppeteer or Electron) which supports this 
+	        var source = (new XMLSerializer()).serializeToString(svg);
+	        
+	        return '<?xml version="1.0" standalone="no"?>\r\n' + source;
+		}
+		
 		//Electron pdf export
 		if (mxIsElectron)
 		{
@@ -565,6 +619,11 @@
 				{
 					render(arg);
 				});
+				
+				ipcRenderer.on('get-svg-data', (event, arg) => 
+				{
+					ipcRenderer.send('svg-data', getSvgData());
+				});
 			}
 			catch(e)
 			{

ファイルの差分が大きいため隠しています
+ 1088 - 1086
src/main/webapp/js/app.min.js


+ 33 - 0
src/main/webapp/js/diagramly/App.js

@@ -40,6 +40,19 @@ App = function(editor, container, lightbox)
 		});
 	}
 	
+	// Logs changes to autosave
+	this.editor.addListener('autosaveChanged', mxUtils.bind(this, function()
+	{
+		var file = this.getCurrentFile();
+		
+		if (file != null)
+		{
+			EditorUi.logEvent({category: ((this.editor.autosave) ? 'ON' : 'OFF') +
+				'-AUTOSAVE-FILE-' + file.getHash(), action: 'changed',
+				label: ((this.editor.autosave) ? 'autosave-on' : 'autosave-off')});
+		}
+	}));
+	
 	// Pre-fetches images
 	if (mxClient.IS_SVG)
 	{
@@ -525,6 +538,26 @@ App.main = function(callback, createUi)
 			// mxSettings is not yet initialized in configure mode, redirect parameter
 			// to p URL parameter in caller for plugins in embed mode
 			var plugins = (mxSettings.settings != null) ? mxSettings.getPlugins() : null;
+			
+			// Configured plugins in embed mode with configure=1 URL should be loaded so we
+			// look ahead here and parse the config to fetch the list of custom plugins
+			if (mxSettings.settings == null && isLocalStorage && typeof(JSON) !== 'undefined')
+			{
+				try
+				{
+					var temp = JSON.parse(localStorage.getItem(mxSettings.key));
+					
+					if (temp != null)
+					{
+						plugins = temp.plugins;
+					}
+				}
+				catch (e)
+				{
+					// ignore
+				}
+			}
+						
 			var temp = urlParams['p'];
 			App.initPluginCallback();
 

+ 0 - 16
src/main/webapp/js/diagramly/Editor.js

@@ -901,22 +901,6 @@
 			Editor.mathJaxQueue = [];
 		};
 		
-		// Updates typeset after changes
-		var editorInit = Editor.prototype.init;
-		
-		Editor.prototype.init = function()
-		{
-			editorInit.apply(this, arguments);
-			
-			this.graph.addListener(mxEvent.SIZE, mxUtils.bind(this, function(sender, evt)
-			{
-				if (this.graph.container != null && this.graph.mathEnabled)
-				{
-					Editor.MathJaxRender(this.graph.container);
-				}
-			}));
-		};
-		
 		var tags = document.getElementsByTagName('script');
 		
 		if (tags != null && tags.length > 0)

+ 23 - 2
src/main/webapp/js/diagramly/EditorUi.js

@@ -2305,8 +2305,9 @@
 
 				if (!this.isOffline() && file.getMode() != null)
 				{
-					EditorUi.logEvent({category: 'File', action: 'open', label:
-						file.getMode() + '.' + file.getSize()})
+					EditorUi.logEvent({category: file.getMode().toUpperCase() + '-OPEN-FILE-' + file.getHash(),
+						action: 'size-' + file.getSize(),
+						label: ((this.editor.autosave) ? 'autosave-on' : 'autosave-off')});
 				}
 				
 				if (this.editor.editable && this.mode == file.getMode() &&
@@ -8942,6 +8943,26 @@
 		this.installSettings();
 	};
 	
+	// Updates typeset after changes
+	var editorUiInitCanvas = EditorUi.prototype.initCanvas;
+	EditorUi.prototype.initCanvas = function()
+	{
+		editorUiInitCanvas.apply(this, arguments);
+		
+		// Rendering math regardless of scrollbars (no scrollbars blocks firing size event in initCanvas)
+		var graphSizeDidChange = this.editor.graph.sizeDidChange;
+		
+		this.editor.graph.sizeDidChange = function()
+		{
+			graphSizeDidChange.apply(this, arguments);
+
+			if (this.container != null && this.mathEnabled && !this.blockMathRender)
+			{
+				Editor.MathJaxRender(this.container);
+			}
+		};
+	};
+
 	/**
 	 * 
 	 */

+ 2 - 0
src/main/webapp/js/diagramly/ElectronApp.js

@@ -1033,12 +1033,14 @@ FeedbackDialog.feedbackUrl = 'https://log.draw.io/email';
 		{
 			this.response = data;
 			callback();
+			ipcRenderer.send(this.reqType + '-finalize');
 		})
 
 		ipcRenderer.once(this.reqType + '-error', (event, err) => 
 		{
 			this.hasError = true;
 			error(err);
+			ipcRenderer.send(this.reqType + '-finalize');
 		})
 	};
 	

+ 2 - 0
src/main/webapp/js/diagramly/Pages.js

@@ -201,7 +201,9 @@ SelectPage.prototype.execute = function()
 		// Updates the display
 		editor.updateGraphComponents();
 		graph.view.validate();
+		graph.blockMathRender = true;
 		graph.sizeDidChange();
+		graph.blockMathRender = false;
 		
 //		mxUtils.setPrefixedStyle(graph.view.canvas.style, 'transition', 'transform 0.2s');
 //		mxUtils.setPrefixedStyle(graph.view.canvas.style, 'transform', 'translate(0,0)');

ファイルの差分が大きいため隠しています
+ 1171 - 1170
src/main/webapp/js/viewer.min.js


+ 2 - 2
src/main/webapp/resources/dia.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_am.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_ar.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_bg.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_bn.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_bs.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_ca.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_cs.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_da.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_de.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_el.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_eo.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_es.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_et.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_fa.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_fi.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_fil.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_fr.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_gu.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_he.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_hi.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_hr.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_hu.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_id.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_it.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_ja.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_kn.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_ko.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_lt.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_lv.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_ml.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_mr.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_ms.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_nl.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_no.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_pl.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_pt-br.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_pt.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_ro.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_ru.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_sk.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_sl.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_sr.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_sv.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_sw.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_ta.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_te.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_th.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_tr.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_uk.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_vi.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_zh-tw.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)

+ 2 - 2
src/main/webapp/resources/dia_zh.txt

@@ -859,7 +859,7 @@ startImport=Start Import
 drawConfig=draw.io Configuration
 customLib=Custom Libraries
 customTemp=Custom Templates
-pageIdsExp=Pages IDs Export
+pageIdsExp=Page IDs Export
 drawReindex=draw.io re-indexing (Beta)
 working=Working
 drawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.
@@ -926,4 +926,4 @@ confAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.
 uploading=Uploading
 confALibExist=This library already exists
 confAUploadSucc=Uploaded successfully
-confAUploadFailErr=Upload Faile (Unexpected Error)
+confAUploadFailErr=Upload Failed (Unexpected Error)