dfsasd
This commit is contained in:
@@ -155,6 +155,35 @@ const refreshPlaceholderComponent = (component) => {
|
|||||||
return `{{${label}}}`;
|
return `{{${label}}}`;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const escapeAttr = (value) => {
|
||||||
|
return String(value || '')
|
||||||
|
.replace(/&/g, '&')
|
||||||
|
.replace(/"/g, '"')
|
||||||
|
.replace(/</g, '<')
|
||||||
|
.replace(/>/g, '>');
|
||||||
|
};
|
||||||
|
|
||||||
|
const buildPlaceholderHTML = (payload) => {
|
||||||
|
const type = payload && payload.type === 'database' ? 'database' : 'custom';
|
||||||
|
const key = payload && payload.key ? payload.key : 'UEBERSCHRIFT';
|
||||||
|
const table = payload && payload.table ? payload.table : 'tabelle';
|
||||||
|
const column = payload && payload.column ? payload.column : 'feld';
|
||||||
|
const label = buildPlaceholderText(payload || {});
|
||||||
|
const attrs = [
|
||||||
|
`data-gjs-type="${PLACEHOLDER_COMPONENT}"`,
|
||||||
|
`data-placeholder-type="${escapeAttr(type)}"`,
|
||||||
|
`contenteditable="false"`,
|
||||||
|
`class="${INLINE_PLACEHOLDER_CLASS}"`
|
||||||
|
];
|
||||||
|
if (type === 'database') {
|
||||||
|
attrs.push(`data-placeholder-table="${escapeAttr(table)}"`);
|
||||||
|
attrs.push(`data-placeholder-column="${escapeAttr(column)}"`);
|
||||||
|
} else {
|
||||||
|
attrs.push(`data-placeholder-key="${escapeAttr(key)}"`);
|
||||||
|
}
|
||||||
|
return `<span ${attrs.join(' ')}>${label}</span>`;
|
||||||
|
};
|
||||||
|
|
||||||
const buildField = (labelText, control) => {
|
const buildField = (labelText, control) => {
|
||||||
const controlId = `bridge-placeholder-field-${Math.random().toString(36).slice(2)}`;
|
const controlId = `bridge-placeholder-field-${Math.random().toString(36).slice(2)}`;
|
||||||
control.id = controlId;
|
control.id = controlId;
|
||||||
|
|||||||
Reference in New Issue
Block a user