How to use the snabbdom/modules/class.default function in snabbdom

To help you get started, we’ve selected a few snabbdom examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github marktext / marktext / src / editor / parser / StateRender.js View on Github external
import virtualize from 'snabbdom-virtualize/strings'
import { CLASS_OR_ID, IMAGE_EXT_REG } from '../config'
import { conflict, isLengthEven, union, isEven, getUniqueId, loadImage, getImageSrc } from '../utils'
import { insertAfter, operateClassName } from '../utils/domManipulate'
import { tokenizer } from './parse'
import { validEmoji } from '../emojis'

const snabbdom = require('snabbdom')
const patch = snabbdom.init([ // Init patch function with chosen modules
  require('snabbdom/modules/class').default, // makes it easy to toggle classes
  require('snabbdom/modules/attributes').default,
  require('snabbdom/modules/props').default, // for setting properties on DOM elements
  require('snabbdom/modules/dataset').default
])
const h = require('snabbdom/h').default // helper function for creating vnodes
const toHTML = require('snabbdom-to-html')
const toVNode = require('snabbdom/tovnode').default

const PRE_BLOCK_HASH = {
  'code': `.${CLASS_OR_ID['AG_CODE_BLOCK']}`,
  'html': `.${CLASS_OR_ID['AG_HTML_BLOCK']}`,
  'frontmatter': `.${CLASS_OR_ID['AG_FRONT_MATTER']}`
}

class StateRender {
  constructor (eventCenter) {
github marktext / marktext / src / muya / lib / parser / render / snabbdom.js View on Github external
// import virtualize from 'snabbdom-virtualize/strings'
const snabbdom = require('snabbdom')

export const patch = snabbdom.init([ // Init patch function with chosen modules
  require('snabbdom/modules/class').default, // makes it easy to toggle classes
  require('snabbdom/modules/attributes').default,
  require('snabbdom/modules/style').default, // handles styling on elements with support for animations
  require('snabbdom/modules/props').default, // for setting properties on DOM elements
  require('snabbdom/modules/dataset').default,
  require('snabbdom/modules/eventlisteners').default // attaches event listeners
])
export const h = require('snabbdom/h').default // helper function for creating vnodes
export const toHTML = require('snabbdom-to-html') // helper function for convert vnode to HTML string
export const toVNode = require('snabbdom/tovnode').default // helper function for convert DOM to vnode
export const htmlToVNode = html => { // helper function for convert html to vnode
  const wrapper = document.createElement('div')
  wrapper.innerHTML = html
  return toVNode(wrapper).children
}
github mreinstein / snabby / index.js View on Github external
// Inits with common modules out of the box
// Also easier to use across multiple files
module.exports = require('./create')([
  require('snabbdom/modules/attributes').default,
  require('snabbdom/modules/eventlisteners').default,
  require('snabbdom/modules/class').default,
  require('snabbdom/modules/props').default,
  require('snabbdom/modules/style').default
])
github skatejs / skatejs / packages / element-snabbdom / src / __tests__ / index.ts View on Github external
import { wait } from '@skatejs/bore';
import define from '@skatejs/define';
import Element, { h } from '..';

const Test = define(
  class extends Element {
    static modules = [
      require('snabbdom/modules/attributes').default,
      require('snabbdom/modules/eventlisteners').default,
      require('snabbdom/modules/class').default,
      require('snabbdom/modules/props').default,
      require('snabbdom/modules/style').default,
      require('snabbdom/modules/dataset').default
    ];
    static props = { name: String };
    name: string = 'World';
    render() {
      return h('span', `Hello, ${this.name}!`);
    }
  }
);

function testContent(text) {
  return `<span>Hello, ${text}!</span>`;
}
github mbasso / asm-dom / benchmarks / src / index.js View on Github external
import '../../src/cpp/';
import Perf from './Perf';

console.log('Preparing...');

const snabbdom = {
  h: require('snabbdom/h').default,
  patch: require('snabbdom').init([
    require('snabbdom/modules/class').default,
    require('snabbdom/modules/dataset').default,
    require('snabbdom/modules/props').default,
    require('snabbdom/modules/style').default,
    require('snabbdom/modules/eventlisteners').default,
    require('snabbdom/modules/attributes').default,
  ]),
};
window.snabbdom = snabbdom;

const config = {};

import('../compiled/wasm/app.wasm')
.then((wasm) => {
  config.wasmBinary = new Uint8Array(wasm);
  return import('../compiled/wasm/app.js').then(factory => {
    const asmDom = factory(config);
github bullno1 / lip / src / dbg-ui / src / krueger.js View on Github external
import flyd from 'flyd';
import flip from 'ramda/src/flip';
import over from 'ramda/src/over';
import curry from 'ramda/src/curry';
import forwardTo from 'flyd/module/forwardto';
const snabbdom = require('snabbdom');
const patch = snabbdom.init([
	require('snabbdom/modules/class').default,
	require('snabbdom/modules/props').default,
	require('snabbdom/modules/style').default,
	require('snabbdom/modules/eventlisteners').default
]);

export const mount = (module, root) => {
	const { init, update, render, subscribe } = module;

	const model = init();
	const actions$ = flyd.stream();

	if(subscribe) {
		const subscription$ = subscribe(model);
		flyd.on(actions$, subscription$);
	}
github prism-rb / prism / build / prism.js View on Github external
},{}],13:[function(require,module,exports){
var snabbdom = require('snabbdom');
var patch = snabbdom.init([
  require('snabbdom/modules/class').default,
  require('snabbdom/modules/attributes').default,
  require('snabbdom/modules/props').default,
  require('snabbdom/modules/style').default,
  require('snabbdom/modules/eventlisteners').default,
  require('snabbdom/modules/dataset').default
]);
snabbdom_h = require('snabbdom/h').default;

function stringifyEvent(e) {
  const obj = {};
  for (let k in e) {
    obj[k] = e[k];
  }
  return JSON.stringify(obj, (k, v) => {
    if (v instanceof Node) return 'Node';
    if (v instanceof Window) return 'Window';
github jayrbolton / snabbdom-statechart-components / index.js View on Github external
var mitt = require('mitt')
var harel = require('harel')
var snabbdom = require('snabbdom')
var patch = snabbdom.init([
  require('snabbdom/modules/props').default,
  require('snabbdom/modules/style').default,
  require('snabbdom/modules/class').default,
  require('snabbdom/modules/eventlisteners').default,
  require('snabbdom/modules/dataset').default,
  require('snabbdom/modules/attributes').default
])

module.exports = Component

var id = 0
function Component (options) {
  var component = {
    id: id++,
    handlers: {},
    tracing: options.trace,
    view: options.view,
    emitter: mitt(),
    on: function () {
github batiste / blop-language / src / runtime.js View on Github external
}
  });
  return snabbdomh.default(
    name,
    {
      on, style, attrs, hook, class: sclass, key,
    },
    children,
  );
}

const patch = snabbdom.init([
  attributes.default,
  style.default,
  eventlisteners.default,
  sclass.default,
]);

let renderPipeline = [];

function scheduleRender(node) {
  renderPipeline.push(node);
  const rendering = [...renderPipeline];
  renderPipeline = [];
  window.requestAnimationFrame(() => {
    rendering.forEach(node => node.partialRender());
  });
}

function destroyUnreferencedComponents() {
  const keysCache = Object.keys(cache);
  const keysNextCache = Object.keys(nextCache);
github prism-rb / prism / dist / prism.js View on Github external
},{}],13:[function(require,module,exports){
var snabbdom = require('snabbdom');
var patch = snabbdom.init([
  require('snabbdom/modules/class').default,
  require('snabbdom/modules/attributes').default,
  require('snabbdom/modules/props').default,
  require('snabbdom/modules/style').default,
  require('snabbdom/modules/eventlisteners').default,
  require('snabbdom/modules/dataset').default
]);
snabbdom_h = require('snabbdom/h').default;

function stringifyEvent(e) {
  const obj = {};
  for (let k in e) {
    obj[k] = e[k];
  }
  return JSON.stringify(obj, (k, v) => {
    if (v instanceof Node) return 'Node';
    if (v instanceof Window) return 'Window';