diff options
author | danielhanrahan <daniel.hanrahan@est.tech> | 2022-02-15 18:02:23 +0000 |
---|---|---|
committer | danielhanrahan <daniel.hanrahan@est.tech> | 2022-02-16 15:26:38 +0000 |
commit | 770049ea162573d5afa1aaefed6131fe5e0a77f7 (patch) | |
tree | f702a09afd7b18879a562674c760c682c78895c0 /gui-editors/gui-editor-apex/src/main/webapp/js/ApexUtils.js | |
parent | 29df248caa234bc0dff3c20875bdaecfeba127e0 (diff) |
Refactor apex-editor frontend build
Moved frontend from src/main/resources/webapp to src/main/webapp
Moved static resources such as jquery-ui to webapp/dist folder
Configured jest to exclude webapp/dist from coverage report
Removed unused ZIP file assembly
Cleaned up POM
Issue-ID: POLICY-3896
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: Ia006eb94a39586219029866eef94aef38912ad65
Diffstat (limited to 'gui-editors/gui-editor-apex/src/main/webapp/js/ApexUtils.js')
-rw-r--r-- | gui-editors/gui-editor-apex/src/main/webapp/js/ApexUtils.js | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/gui-editors/gui-editor-apex/src/main/webapp/js/ApexUtils.js b/gui-editors/gui-editor-apex/src/main/webapp/js/ApexUtils.js new file mode 100644 index 0000000..2b18559 --- /dev/null +++ b/gui-editors/gui-editor-apex/src/main/webapp/js/ApexUtils.js @@ -0,0 +1,140 @@ +/* + * ============LICENSE_START======================================================= + * Copyright (C) 2016-2018 Ericsson. All rights reserved. + * Modifications Copyright (C) 2020-2022 Nordix Foundation. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +function apexUtils_areYouSure(message) { + return confirm(message); +} + +function apexUtils_emptyElement(elementname) { + var element = document.getElementById(elementname); + if (element != null) { + while (element.firstChild) { + element.removeChild(element.firstChild); + } + } +} + +function apexUtils_removeElement(elementname) { + var element = document.getElementById(elementname); + if (element != null) { + element.parentNode.removeChild(element); + } +} + +var _entityMap = { + '&' : '&', + '<' : '<', + '>' : '>', + '"' : '"', + "'" : ''', + '/' : '/', + '`' : '`', + '=' : '=', + '\n' : '<br>', + '\t' : ' ', + ' ' : ' ', +}; + +function apexUtils_escapeHtml(string) { + return String(string).replace(/[&<>"'\/\t\n ]/g, function(s) { + return _entityMap[s]; + }); +} + +function apexUtils_deleteTableRow(tablename, tablerowindex) { + document.getElementById(tablename).deleteRow(tablerowindex) +} + +function createAddFormButton(_text) { + var text = _text ? _text : "Add"; + var element = document.createElement("div"); + element.setAttribute("class", "add-field") + var addIcon = document.createElement("i"); + addIcon.setAttribute("class", "form-add-icon ebIcon ebIcon_add"); + var addText = document.createElement("span"); + addText.setAttribute("class", "form-add-text"); + addText.innerHTML = text; + element.appendChild(addIcon); + element.appendChild(addText); + return element; +} + +function createEditArea(id, options, callback) { + options = options ? options : {}; + var syntax = options.syntax ? options.syntax : "java"; + var start_highlight = options.start_highlight ? options.start_highlight : true; + var min_height = options.min_height ? options.min_height : 400; + var font_size = options.font_size ? options.font_size : 12 + var is_editable = options.hasOwnProperty("is_editable") ? options.is_editable : true; + var toolbar = options.toolbar ? options.toolbar : "select_font, |, highlight, reset_highlight"; + + setTimeout(function() { + editAreaLoader.init({ + id : id, + is_editable : is_editable, + syntax : syntax, + start_highlight : start_highlight, + min_height : min_height, + font_size : font_size, + toolbar : toolbar, + change_callback : "onEditAreaChange" + }); + }, 100); + +} + +function onEditAreaChange(id) { + $("#" + id).val(editAreaLoader.getValue(id)); +} + +function isFirefox() { + return (navigator.userAgent.indexOf("Firefox") != -1); +} + +function scrollToTop(element) { + element = element ? element : "html, body"; + $(element).animate({ + scrollTop : 0 + }, 'fast'); +} + +function getHomepageURL() { + var homepageURL = location.protocol + + "//" + + window.location.hostname + + (location.port ? ':' + location.port : '') + + (location.pathname.endsWith("/editor/") ? location.pathname.substring(0, location.pathname + .indexOf("editor/")) : location.pathname); + location.href = homepageURL; +} + +export { + apexUtils_removeElement, + apexUtils_emptyElement, + scrollToTop, + apexUtils_areYouSure, + createAddFormButton, + apexUtils_escapeHtml, + apexUtils_deleteTableRow, + createEditArea, + isFirefox, + getHomepageURL +} |