deno.land / x / deno@v1.28.2 / cli / bench / testdata / npm / hono / dist / utils / html.js
123456789101112131415161718192021222324252627282930313233343536373839"use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.escapeToBuffer = void 0;// The `escapeToBuffer` implementation is based on code from the MIT licensed `react-dom` package.// https://github.com/facebook/react/blob/main/packages/react-dom/src/server/escapeTextForBrowser.jsconst escapeRe = /[&<>"]/;const escapeToBuffer = (str, buffer) => { const match = str.search(escapeRe); if (match === -1) { buffer[0] += str; return; } let escape; let index; let lastIndex = 0; for (index = match; index < str.length; index++) { switch (str.charCodeAt(index)) { case 34: // " escape = '"'; break; case 38: // & escape = '&'; break; case 60: // < escape = '<'; break; case 62: // > escape = '>'; break; default: continue; } buffer[0] += str.substring(lastIndex, index) + escape; lastIndex = index + 1; } buffer[0] += str.substring(lastIndex, index);};exports.escapeToBuffer = escapeToBuffer;
Version Info