gen-jhipster
Version:
VHipster - Spring Boot + Angular/React/Vue in one handy generator
49 lines (48 loc) • 1.82 kB
JavaScript
/**
* Copyright 2013-2026 the original author or authors from the JHipster project.
*
* This file is part of the JHipster project, see https://www.jhipster.tech/
* for more information.
*
* 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
*
* https://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.
*/
import { formatDocAsSingleLine } from "../../base-application/support/doc.js";
const htmlEncode = (text) => {
let htmLifiedText = text;
// escape & to &
htmLifiedText = htmLifiedText.replace(/&/g, '&');
// escape " to "
htmLifiedText = htmLifiedText.replace(/"/g, '"');
// escape ' to '
htmLifiedText = htmLifiedText.replace(/'/g, ''');
// escape < to <
htmLifiedText = htmLifiedText.replace(/</g, '<');
// escape > to >
htmLifiedText = htmLifiedText.replace(/>/g, '>');
return htmLifiedText;
};
/**
* Format As Liquibase Remarks
*
* @param {string} text - text to format
* @param {boolean} addRemarksTag - add remarks tag
* @returns formatted liquibase remarks
*/
const formatAsLiquibaseRemarks = (text, addRemarksTag = false) => {
if (!text) {
return addRemarksTag ? '' : text;
}
const description = htmlEncode(formatDocAsSingleLine(text));
return addRemarksTag ? ` remarks="${description}"` : description;
};
export default formatAsLiquibaseRemarks;