UNPKG

marko

Version:

UI Components + streaming, async, high performance, HTML templating for Node.js and the browser.

37 lines (32 loc) 879 B
"use strict"; var escapeQuoteHelpers = require("./escape-quotes"); var escapeSingleQuotes = escapeQuoteHelpers.bv_; var escapeDoubleQuotes = escapeQuoteHelpers.n_; var FLAG_WILL_RERENDER_IN_BROWSER = 1; // var FLAG_HAS_RENDER_BODY = 2; module.exports = function dataMarko(out, componentDef, props, key) { var result = ""; var willNotRerender = out.b_.v_ || componentDef.t_ && (componentDef.u_ & FLAG_WILL_RERENDER_IN_BROWSER) === 0; if (willNotRerender) { if (props) { // eslint-disable-next-line no-unused-vars for (var _ in props) { result += " data-marko='" + escapeSingleQuotes(JSON.stringify(props)) + "'"; break; } } if (key) { result += ' data-marko-key="' + escapeDoubleQuotes( componentDef.aL_(key) + " " + componentDef.id ) + '"'; } } return result; };