aboutsummaryrefslogtreecommitdiff
path: root/js/mediators
diff options
context:
space:
mode:
authorJonathan Duran2012-02-29 11:21:22 -0800
committerJonathan Duran2012-02-29 11:21:22 -0800
commit31dc61a626ee9f2b08cb098a51ca0fed5bf30e77 (patch)
tree64e871bab274077f061168d1dca50055c0878881 /js/mediators
parent63740007b2fb4d8e71180bc3c7c8441929857b40 (diff)
downloadninja-31dc61a626ee9f2b08cb098a51ca0fed5bf30e77.tar.gz
Squashed commit of the following:
commit 3dbe798285f95dc63ae33739df5daadb8c432f24 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 16:20:25 2012 -0800 putting the color panel on top when opening ninja Signed-off-by: Valerio Virgillito <valerio@motorola.com> commit b5ae7f0babb185051242df47634e24ad7a68f60e Merge: 20d4f1d 2bc8343 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 16:15:44 2012 -0800 Merge branch 'nested-selection' of https://github.com/mencio/ninja-internal into integration-candidate Conflicts: js/ninja.reel/ninja.html Signed-off-by: Valerio Virgillito <valerio@motorola.com> commit 2bc834334a3197ab7cffacc7332eafd1b52443d1 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 16:11:42 2012 -0800 revert changes to the timeline Signed-off-by: Valerio Virgillito <valerio@motorola.com> commit ae96ea66acc4be873fb7fb73fb3f4484b6db3eb8 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 16:03:32 2012 -0800 adding some margin to the bread crumb buttons Signed-off-by: Valerio Virgillito <valerio@motorola.com> commit 20d4f1d703c004dd7f869576b6c471b3fb5b5d3e Merge: ee52f19 557c4d3 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 16:02:37 2012 -0800 Merge pull request #81 from ananyasen/integration-candidate persist selections while switching documents commit 557c4d3100ccde51b925b71f0650b2c783a4a042 Author: Ananya Sen <Ananya.Sen@motorola.com> Date: Tue Feb 28 16:02:15 2012 -0800 minor fix for handling selections on switch document Signed-off-by: Ananya Sen <Ananya.Sen@motorola.com> commit a230f0cd065613a1bc933e3d6d3f7e77f52bec04 Author: Ananya Sen <Ananya.Sen@motorola.com> Date: Tue Feb 28 15:48:55 2012 -0800 selection controller sets _isDocument = true if number of selections are 0, on switch document Signed-off-by: Ananya Sen <Ananya.Sen@motorola.com> commit ee52f197d1eb53a5ff30b54b8df1d2b53014eb0e Merge: 8e370cc da83f44 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 15:16:12 2012 -0800 Merge pull request #80 from joseeight/FileIO-Build-Candidate Adding CSS <link> attributes support to I/O commit 5ab7efb9949e486395659c383064a08821febdae Author: Ananya Sen <Ananya.Sen@motorola.com> Date: Tue Feb 28 15:15:27 2012 -0800 persist selections while switching documents Signed-off-by: Ananya Sen <Ananya.Sen@motorola.com> commit da83f44b0ecf379b0950a88d1c378fbedb80e386 Merge: b799b7c 676b4e2 Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Tue Feb 28 15:15:12 2012 -0800 Merge branch 'refs/heads/integration-candidate' into FileIO-Build-Candidate commit 8e370cc72aa85de594a5d55ae89947a70af414ca Merge: 8de4002 676b4e2 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 15:08:48 2012 -0800 Merge branch 'integration-candidate' of github.com:Motorola-Mobility/ninja-internal into integration-candidate commit 8de40029442333114d81ac30a8886a995a3dc56b Merge: b0b4d64 eb27ed3 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 15:08:18 2012 -0800 Merge branch 'ToolFixes' of https://github.com/mqg734/ninja-internal into integration-candidate commit eb27ed35bf282262843de13b00af89a2bceac53f Merge: ea59626 7c9291a Author: Nivesh Rajbhandari <mqg734@motorola.com> Date: Tue Feb 28 15:04:33 2012 -0800 Merge branch 'refs/heads/ninja-internal' into ToolFixes commit b799b7cf3a422f407045c52a4c6a61756d1ea096 Merge: f7c08fe 2ce9f65 Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Tue Feb 28 15:03:38 2012 -0800 Merge branch 'refs/heads/FileIO' into FileIO-Build-Candidate commit 2ce9f65c3a34937928f08690606962af3085c74f Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Tue Feb 28 15:03:23 2012 -0800 CSS attributes Setting up logic to include attributes in <link> for the <style> duplicates and add attributes created in Ninja back to <link> tag on save. commit ea5962641519b9d32499c4440112e7fa821e3a79 Author: Nivesh Rajbhandari <mqg734@motorola.com> Date: Tue Feb 28 15:02:57 2012 -0800 Fix for "jumping" issue when using the selection tool repeatedly. Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com> commit 676b4e2d7091ac63ce06f51be686b902b940bfff Merge: b0b4d64 f2ab699 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 14:55:17 2012 -0800 Merge pull request #79 from pushkarjoshi/pentool Pentool commit f2ab6999a9fdaa18056fb5a148ef1bcaefb7d854 Author: Pushkar Joshi <pushkar@motorola.com> Date: Tue Feb 28 14:53:33 2012 -0800 reverting manifest name commit 63307c9abf120985d979a40a53a0598d3f0d5c5a Merge: e1a65d0 7c9291a Author: Pushkar Joshi <pushkar@motorola.com> Date: Tue Feb 28 14:01:05 2012 -0800 Merge branch 'master' into pentool Conflicts: manifest.json commit e1a65d0c2a13e12ee53be98c731616e35aa07a41 Author: Pushkar Joshi <pushkar@motorola.com> Date: Tue Feb 28 13:58:34 2012 -0800 new anchor control guide rendering (smaller handles) and clamp min. width and height to 1 while resizing subpaths commit b0b4d6492d6ddd3b7ab39c2f4d1c01b8e9bacfb6 Merge: 7cafa04 538db48 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 13:41:12 2012 -0800 Merge pull request #78 from imix23ways/Timeline Timeline bug fixes commit 933ed4c880128eed80bdc6372eb1dfdb23af4c37 Merge: 6af71de 7c9291a Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Tue Feb 28 13:33:45 2012 -0800 Merge branch 'refs/heads/NinjaInternal' into FileIO commit f7c08fe5a8424d8c7837a4e3a975e63bcddc3b14 Merge: 811d509 7c9291a Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Tue Feb 28 13:33:17 2012 -0800 Merge branch 'refs/heads/NinjaInternal' into FileIO-Build-Candidate commit 7cafa0464ee0c1621ffea04c2192f19008c9fc49 Merge: 2ab07cb 811d509 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 13:20:44 2012 -0800 Merge branch 'FileIO-Build-Candidate' of https://github.com/joseeight/ninja-internal into integration-candidate commit 2ab07cb8ac76a06606ce455bb2e6b4889e3ddc65 Merge: e5b1102 347fc28 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 13:19:52 2012 -0800 Merge branch 'integration' of https://github.com/ericmueller/ninja-internal into integration-candidate commit e5b1102f0cff7f5ba7074840ccf29dc1c02ced8e Merge: 7c9291a a70c628 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 13:17:55 2012 -0800 Merge branch 'ToolFixes' of https://github.com/mqg734/ninja-internal into integration-candidate commit 347fc28227d822e9fea3fa823fae79cf14ea041c Merge: ed16298 7c9291a Author: hwc487 <hwc487@motorola.com> Date: Tue Feb 28 12:58:09 2012 -0800 Merge branch 'master' of github.com:Motorola-Mobility/ninja-internal into integration commit 7cbd26d475eaad817042692f9116f9a24ae60997 Author: Pushkar Joshi <pushkar@motorola.com> Date: Tue Feb 28 10:24:06 2012 -0800 Bug fixes: 1152: allow deleting of multiple paths from inside pen tool 1128: keyboard hotkey shortcut 'P' for pen tool 941: changing width or height of the path scales the path commit ed16298e4323b733f6dc957c307dc07036fa3569 Merge: b194efa 6054d13 Author: hwc487 <hwc487@motorola.com> Date: Tue Feb 28 09:55:07 2012 -0800 Merge branch 'master' of github.com:Motorola-Mobility/ninja-internal into integration commit 19e94dc51a279501352a08d511b18144f83500e5 Author: Valerio Virgillito <valerio@motorola.com> Date: Tue Feb 28 00:47:46 2012 -0800 cleanup and fixing selecting each bread crumb Signed-off-by: Valerio Virgillito <valerio@motorola.com> commit 6af71de5b80fd531901e82b12372446b569902d8 Merge: f872077 6054d13 Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Mon Feb 27 21:44:45 2012 -0800 Merge branch 'refs/heads/NinjaInternal' into FileIO commit db5db0a92c1fb67eac262c33d4fbf776ceabbb3c Author: Valerio Virgillito <valerio@motorola.com> Date: Mon Feb 27 21:17:29 2012 -0800 breadcrumb cleanup and moving the resized on top of the timeline panel Signed-off-by: Valerio Virgillito <valerio@motorola.com> commit a70c62891d0c7dd032d9382c50d1555ab81c4e33 Author: Nivesh Rajbhandari <mqg734@motorola.com> Date: Mon Feb 27 16:24:13 2012 -0800 Fixing tooltips and keyboard shortcuts for 3d tools. IKNinja-1014 and IKNinja-1015. Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com> commit ef38731ae2769dcb2247db599cdfe62d38e34b28 Author: Nivesh Rajbhandari <mqg734@motorola.com> Date: Mon Feb 27 15:39:16 2012 -0800 Reset translation values as well when double-clicking to reset the rotation values. Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com> commit 811d5092345bf520f6a683eec89cf7d8ed7aa490 Merge: ceba159 f872077 Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Mon Feb 27 14:39:10 2012 -0800 Merge branch 'refs/heads/FileIO' into FileIO-Build-Candidate commit f872077e947916496235f4e871511ce890953d04 Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Mon Feb 27 14:38:59 2012 -0800 Updating legal copy commit ceba159acedcaada47f990392b3bbebc2025e40a Merge: a564d96 3e2889b Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Mon Feb 27 14:29:53 2012 -0800 Merge branch 'refs/heads/FileIO' into FileIO-Build-Candidate commit 3e2889b94d5e6af93ec0eaca114802e30c8c38ef Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Mon Feb 27 14:29:17 2012 -0800 Updating credits commit affdf784f3dae1febe279a214857e6fe3ba56db1 Merge: 7e63b5d 15d00c4 Author: Jose Antonio Marquez Russo <jose@eightyearproject.com> Date: Mon Feb 27 14:28:59 2012 -0800 Merge pull request #21 from ananyasen/FileIO FileIO branch pull request commit 15d00c49b522aa471d1ccfbbd33f5c0e721eb89e Merge: 604ace9 7e63b5d Author: Ananya Sen <Ananya.Sen@motorola.com> Date: Mon Feb 27 14:24:49 2012 -0800 Merge branch 'refs/heads/FileIO-jose' into FileIO commit a564d969ffcb7bc0dd701a1ef653f666ae857f77 Merge: c65eb4b 7e63b5d Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Mon Feb 27 14:11:09 2012 -0800 Merge branch 'refs/heads/FileIO' into FileIO-Build-Candidate commit 7e63b5d0b6990b6c0ec0385d35534b91982ac672 Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Mon Feb 27 14:10:53 2012 -0800 Cleaning up pretty functions in IO commit b194efa0556806593b29eb197250df462e89fcc4 Author: hwc487 <hwc487@motorola.com> Date: Mon Feb 27 14:03:11 2012 -0800 Enable shift key constraint for Pan Tool. commit 124ad4709780013615d2ff1da05ace9887ee7709 Merge: a8bd158 8125c8c Author: hwc487 <hwc487@motorola.com> Date: Mon Feb 27 13:41:31 2012 -0800 Merge branch 'master' of github.com:Motorola-Mobility/ninja-internal into integration commit a8bd1585ae83d4d304b9f9f41823bb3dcbff9e01 Author: hwc487 <hwc487@motorola.com> Date: Mon Feb 27 12:14:29 2012 -0800 Color fix for line shapes. commit 604ace9cfc9fae6b6c121259523a9060c5306161 Author: Ananya Sen <Ananya.Sen@motorola.com> Date: Mon Feb 27 11:59:58 2012 -0800 - save show3DGrid flag per document while switching documents - fix zoom tool keyboard control to listen to Z when ctrl and shift keys are not pressed with it Signed-off-by: Ananya Sen <Ananya.Sen@motorola.com> commit bfa895634324a78652f2a7eecf725d9c6030023f Author: hwc487 <hwc487@motorola.com> Date: Mon Feb 27 11:58:44 2012 -0800 Changed the hardcoded publish setting for a PI fix. commit 8578322c60adaaf65f37ba96f2a0f7ed9de8e1dc Author: hwc487 <hwc487@motorola.com> Date: Mon Feb 27 10:28:03 2012 -0800 Fixed various rendering bugs. commit 544dec04fd379b10eff254bbdd105bfaf828f8a5 Author: Jose Antonio Marquez <kgq387@motorola.com> Date: Sun Feb 26 12:12:22 2012 -0800 Cleaning up and adding TODOs commit 053fc63a2950c7a5ee4ebf98033b64d474a3c46e Merge: a5ba66e 23a2219 Author: Pushkar Joshi <pushkar@motorola.com> Date: Fri Feb 24 12:03:51 2012 -0800 Merge branch 'master' into pentool commit a5ba66ecefa9c9c17e0f5e1725e2141f7a3540a2 Author: Pushkar Joshi <pushkar@motorola.com> Date: Fri Feb 24 12:01:03 2012 -0800 adding unpacked to the manifest file (to differentiate from the ninjateam (main) chrome app) commit d0661d6c587aced68a68e36a5ec4e81f8a2096e8 Author: hwc487 <hwc487@motorola.com> Date: Thu Feb 23 16:57:55 2012 -0800 bug fixes for canvas 2d shape drawing. Signed-off-by: Jonathan Duran <jduran@motorola.com>
Diffstat (limited to 'js/mediators')
-rw-r--r--js/mediators/io-mediator.js88
-rwxr-xr-xjs/mediators/keyboard-mediator.js16
2 files changed, 73 insertions, 31 deletions
diff --git a/js/mediators/io-mediator.js b/js/mediators/io-mediator.js
index 30180155..6b26668b 100644
--- a/js/mediators/io-mediator.js
+++ b/js/mediators/io-mediator.js
@@ -146,22 +146,27 @@ exports.IoMediator = Montage.create(Component, {
146 //Copy webGL library if needed 146 //Copy webGL library if needed
147 if (file.webgl.length > 0) { 147 if (file.webgl.length > 0) {
148 for (var i in this.application.ninja.coreIoApi.ninjaLibrary.libs) { 148 for (var i in this.application.ninja.coreIoApi.ninjaLibrary.libs) {
149 //if (this.application.ninja.coreIoApi.ninjaLibrary.libs[i].name === 'Assets' || this.application.ninja.coreIoApi.ninjaLibrary.libs[i].name === 'RDGE') { 149 //Checking for RDGE library to be available
150 if (this.application.ninja.coreIoApi.ninjaLibrary.libs[i].name === 'RDGE') { 150 if (this.application.ninja.coreIoApi.ninjaLibrary.libs[i].name === 'RDGE') {
151 this.application.ninja.coreIoApi.ninjaLibrary.copyLibToCloud(file.document.root, (this.application.ninja.coreIoApi.ninjaLibrary.libs[i].name+this.application.ninja.coreIoApi.ninjaLibrary.libs[i].version).toLowerCase()); 151 this.application.ninja.coreIoApi.ninjaLibrary.copyLibToCloud(file.document.root, (this.application.ninja.coreIoApi.ninjaLibrary.libs[i].name+this.application.ninja.coreIoApi.ninjaLibrary.libs[i].version).toLowerCase());
152 } else {
153 //TODO: Error handle no available library to copy
152 } 154 }
153 } 155 }
154 } 156 }
155 // 157
158 //TODO: Add check for Monatage library to copy
159
160 //Getting content from function to properly handle saving assets (as in external if flagged)
156 contents = this.parseNinjaTemplateToHtml(file); 161 contents = this.parseNinjaTemplateToHtml(file);
157 break; 162 break;
158 default: 163 default:
159 contents = file.content; 164 contents = file.content;
160 break; 165 break;
161 } 166 }
162 // 167 //Making call to save file
163 save = this.fio.saveFile({uri: file.document.uri, contents: contents}); 168 save = this.fio.saveFile({uri: file.document.uri, contents: contents});
164 // 169 //Checking for callback
165 if (callback) callback(save); 170 if (callback) callback(save);
166 } 171 }
167 }, 172 },
@@ -170,7 +175,7 @@ exports.IoMediator = Montage.create(Component, {
170 fileSaveAs: { 175 fileSaveAs: {
171 enumerable: false, 176 enumerable: false,
172 value: function (copyTo, copyFrom, callback) { 177 value: function (copyTo, copyFrom, callback) {
173 // 178 //TODO: Implement Save As functionality
174 } 179 }
175 }, 180 },
176 //////////////////////////////////////////////////////////////////// 181 ////////////////////////////////////////////////////////////////////
@@ -178,7 +183,7 @@ exports.IoMediator = Montage.create(Component, {
178 fileDelete: { 183 fileDelete: {
179 enumerable: false, 184 enumerable: false,
180 value: function (file, callback) { 185 value: function (file, callback) {
181 // 186 //TODO: Implement Delete functionality
182 } 187 }
183 }, 188 },
184 //////////////////////////////////////////////////////////////////// 189 ////////////////////////////////////////////////////////////////////
@@ -205,7 +210,7 @@ exports.IoMediator = Montage.create(Component, {
205 //Getting all CSS (style or link) tags 210 //Getting all CSS (style or link) tags
206 var styletags = template.document.content.document.getElementsByTagName('style'), 211 var styletags = template.document.content.document.getElementsByTagName('style'),
207 linktags = template.document.content.document.getElementsByTagName('link'), 212 linktags = template.document.content.document.getElementsByTagName('link'),
208 url = new RegExp(chrome.extension.getURL('js/document/templates/montage-html/'), 'gi'); 213 url = new RegExp(chrome.extension.getURL('js/document/templates/montage-html/'), 'gi'); //TODO: Make public into var
209 //Looping through link tags and removing file recreated elements 214 //Looping through link tags and removing file recreated elements
210 for (var j in styletags) { 215 for (var j in styletags) {
211 if (styletags[j].getAttribute) { 216 if (styletags[j].getAttribute) {
@@ -255,6 +260,17 @@ exports.IoMediator = Montage.create(Component, {
255 var styleCounter = 0, 260 var styleCounter = 0,
256 docStyles = template.document.content.document.getElementsByTagName('style'), 261 docStyles = template.document.content.document.getElementsByTagName('style'),
257 docLinks = template.document.content.document.getElementsByTagName('link'); 262 docLinks = template.document.content.document.getElementsByTagName('link');
263 //Removing Ninja Data Attributes
264 for (var n in docLinks) {
265 if (docLinks[n].attributes) {
266 for (var m in docLinks[n].attributes) {
267 if (docLinks[n].attributes[m].name && docLinks[n].attributes[m].name.indexOf('data-ninja')!=-1) {
268 docLinks[n].removeAttribute(docLinks[n].attributes[m].name);
269 }
270 }
271 }
272 }
273 //
258 for(var i in template.css) { 274 for(var i in template.css) {
259 if (template.css[i].ownerNode) { 275 if (template.css[i].ownerNode) {
260 if (template.css[i].ownerNode.getAttribute) { 276 if (template.css[i].ownerNode.getAttribute) {
@@ -263,6 +279,22 @@ exports.IoMediator = Montage.create(Component, {
263 docStyles[styleCounter].innerHTML = this.getCssFromRules(template.css[i].cssRules); 279 docStyles[styleCounter].innerHTML = this.getCssFromRules(template.css[i].cssRules);
264 styleCounter++; 280 styleCounter++;
265 } else { 281 } else {
282 //Checking for attributes to be added to tag upon saving
283 for (var k in docLinks) {
284 if (docLinks[k].getAttribute) {
285 if (docLinks[k].getAttribute('href') && ('/'+docLinks[k].getAttribute('href')) === template.css[i].ownerNode.getAttribute('data-ninja-file-url')) {
286 for (var l in template.css[i].ownerNode.attributes) {
287 if (template.css[i].ownerNode.attributes[l].value) {
288 if (template.css[i].ownerNode.attributes[l].name.indexOf('data-ninja')!=-1) {
289 //Ninja attribute...
290 } else {
291 docLinks[k].setAttribute(template.css[i].ownerNode.attributes[l].name, template.css[i].ownerNode.attributes[l].value);
292 }
293 }
294 }
295 }
296 }
297 }
266 //Saving data from rules array converted to string into <link> file 298 //Saving data from rules array converted to string into <link> file
267 var save = this.fio.saveFile({uri: template.css[i].ownerNode.getAttribute('data-ninja-uri'), contents: this.getCssFromRules(template.css[i].cssRules)}); 299 var save = this.fio.saveFile({uri: template.css[i].ownerNode.getAttribute('data-ninja-uri'), contents: this.getCssFromRules(template.css[i].cssRules)});
268 } 300 }
@@ -313,7 +345,7 @@ exports.IoMediator = Montage.create(Component, {
313 webgltag.innerHTML = json; 345 webgltag.innerHTML = json;
314 } 346 }
315 // 347 //
316 return this.getPretyHtml(template.document.content.document.documentElement.outerHTML.replace(url, '')); 348 return this.getPrettyHtml(template.document.content.document.documentElement.outerHTML.replace(url, ''));
317 } 349 }
318 }, 350 },
319 //////////////////////////////////////////////////////////////////// 351 ////////////////////////////////////////////////////////////////////
@@ -333,14 +365,19 @@ exports.IoMediator = Montage.create(Component, {
333 //TODO: Add better logic for creating this string 365 //TODO: Add better logic for creating this string
334 url = new RegExp(chrome.extension.getURL('js/document/templates/montage-html/'), 'gi'); 366 url = new RegExp(chrome.extension.getURL('js/document/templates/montage-html/'), 'gi');
335 //Returning the CSS string 367 //Returning the CSS string
336 return this.getPretyCss(css.replace(url, '')); 368 return this.getPrettyCss(css.replace(url, ''));
337 } 369 }
338 }, 370 },
339 //////////////////////////////////////////////////////////////////// 371 ////////////////////////////////////////////////////////////////////
340 //Using prettification code from http://jsbeautifier.org 372 ////////////////////////////////////////////////////////////////////
373 //Pretty methods (minified)
341 /* 374 /*
342 Copyright (c) 2009 - 2011, Einar Lielmanis 375 is-beautify javascript code courtesy of Einar Lielmanis:
343 376 Code from https://github.com/einars/js-beautify
377 License https://github.com/einars/js-beautify/blob/master/license.txt
378 Used with author's permission, as stated below
379
380 Copyright (c) 2009 - 2011, Einar Lielmanis
344 Permission is hereby granted, free of charge, to any person 381 Permission is hereby granted, free of charge, to any person
345 obtaining a copy of this software and associated documentation 382 obtaining a copy of this software and associated documentation
346 files (the "Software"), to deal in the Software without 383 files (the "Software"), to d