JSPM

element-wrapper

1.0.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1
  • Score
    100M100P100Q27034F
  • License MIT

A simple and safe way to set innerHTML for yo-yo or bel component.

Package Exports

  • element-wrapper

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (element-wrapper) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

element-wrapper

NPM version build status Downloads js-standard-style

A simple and safe way to set innerHTML for yo-yo or bel component.

Intall

$ npm i element-wrapper

Code

var yo = require('yo-yo')
var sanitizeHtml = require('sanitize-html')

module.exports = function elementWrapper (source, opts) {
  opts = opts || {}

  // create an empty container
  var container = document.createElement('span')
  // use innerHTML to set the content
  container.innerHTML = sanitizeHtml(source, opts)

  return yo`${container}`
}

API

var element = elementWrapper(htmlString, opts)

Please check sanitize-html for available options.

Usage

var yo = require('yo-yo')
var elementWrapper = require('../index.js')

var htmlString = '<div class="danger">xx dangerously set html</div>'
var app = yo`${elementWrapper(htmlString, {
  allowedAttributes: {
    '*': ['class']
  }
})}`

document.body.appendChild(app)

License

MIT