From 811d72964a4ab186472eaa67a574edc967500e4a Mon Sep 17 00:00:00 2001
From: Kushagra Gour Add Library
+ JavaScript
+
+
+ CSS
+
+
+ Web Maker v1.7.1
@@ -781,6 +820,7 @@
+
diff --git a/src/script.js b/src/script.js index 0766d76..8934332 100644 --- a/src/script.js +++ b/src/script.js @@ -5,8 +5,6 @@ var editur = window.editur || {}; var version = '1.7.1'; - window.DEBUG = 1; - var HtmlModes = { HTML: 'html', MARKDOWN: 'markdown', @@ -74,6 +72,11 @@ , cssModelLabel = $('#js-css-mode-label') , jsModelLabel = $('#js-js-mode-label') , titleInput = $('#js-title-input') + , addLibrarySelect = $('#js-add-library-select') + , addLibraryBtn = $('#js-add-library-btn') + , addLibraryModal = $('#js-add-library-modal') + , externalJsTextarea = $('#js-external-js') + , externalCssTextarea = $('#js-external-css') ; editur.cm = {}; @@ -144,6 +147,25 @@ trackEvent('ui', 'toggleLayout', mode); } + function onExternalLibChange() { + utils.log('onExternalLibChange'); + updateExternalLibUi(); + editur.setPreviewContent(); + } + + function updateExternalLibUi() { + // Calculate no. of external libs + var noOfExternalLibs = 0; + noOfExternalLibs += externalJsTextarea.value.split('\n').filter(lib => !!lib).length; + noOfExternalLibs += externalCssTextarea.value.split('\n').filter(lib => !!lib).length; + if (noOfExternalLibs) { + $('#js-external-lib-count').textContent = noOfExternalLibs; + $('#js-external-lib-count').style.visibility = 'visible'; + } else { + $('#js-external-lib-count').style.visibility = 'hidden'; + } + } + function saveSetting(setting, value, cb) { var obj = {}; obj[setting] = value; @@ -179,6 +201,7 @@ currentItem.jsMode = jsMode; currentItem.updatedOn = Date.now(); currentItem.layoutMode = currentLayoutMode; + currentItem.externalLibs = { js: externalJsTextarea.value, css: externalCssTextarea.value }; // debugger; var dimensionProperty = currentLayoutMode === 2 ? 'width' : 'height'; @@ -262,6 +285,7 @@ html: '', css: '', js: '', + externalLibs: { js: '', css: '' }, layoutMode: currentLayoutMode }; alertsService.add('New item created'); @@ -298,10 +322,13 @@ function refreshEditor() { titleInput.value = currentItem.title || 'Untitled'; + externalJsTextarea.value = currentItem.externalLibs && (currentItem.externalLibs.js || ''); + externalCssTextarea.value = currentItem.externalLibs && (currentItem.externalLibs.css || ''); + externalJsTextarea.dispatchEvent(new Event('change')); + editur.cm.html.setValue(currentItem.html); editur.cm.css.setValue(currentItem.css); editur.cm.js.setValue(currentItem.js); - editur.cm.html.refresh(); editur.cm.css.refresh(); editur.cm.js.refresh(); @@ -481,12 +508,25 @@ }); }); } - function createPreviewFile(html, css, js) { + + function getCompleteHtml(html, css, js) { + var externalJs = externalJsTextarea.value.split('\n').reduce(function (html, url) { + return html + (url ? '\n' : ''); + }, ''); + var externalCss = externalCssTextarea.value.split('\n').reduce(function (html, url) { + return html + (url ? '\n' : ''); + }, ''); var contents = '\n
\n' + + externalCss + '\n' + '\n' + '\n' - + '
\n