class Preact::Options

Public Class Methods

debounce_rendering(&block) click to toggle source
# File lib/preact/options.rb, line 4
def debounce_rendering(&block)
  %x{
    const old_hook = Opal.global.Preact.options.debounceRendering;
    Opal.global.Preact.options.debounceRendering = function(callback) {
      #{block.call};
      if (old_hook) {
        old_hook(callback);
      }
    }
  }
  nil
end
diffed(&block) click to toggle source
# File lib/preact/options.rb, line 17
def diffed(&block)
  # TODO wrap vnode
  %x{
    const old_hook = Opal.global.Preact.options.diffed;
    Opal.global.Preact.options.diffed = function(vnode) {
      #{block.call(`vnode`)};
      if (old_hook) {
        old_hook(vnode);
      }
    }
  }
  nil
end
event(&block) click to toggle source
# File lib/preact/options.rb, line 31
def event(&block)
  %x{
    const old_hook = Opal.global.Preact.options.event;
    Opal.global.Preact.options.event = function(event) {
      ruby_event = #{Browser::Event.new(`event`)}
      ruby_event = #{block.call(`ruby_event`)};
      return ruby_event.native;
    }
  }
  nil
end
request_animation_frame(&block) click to toggle source
# File lib/preact/options.rb, line 43
def request_animation_frame(&block)
  %x{
    const old_hook = Opal.global.Preact.options.requestAnimationFrame;
    Opal.global.Preact.options.requestAnimationFrame = function(callback) {
      #{block.call};
      if (old_hook) {
        old_hook(callback);
      }
    }
  }
  nil
end
unmount(&block) click to toggle source
# File lib/preact/options.rb, line 56
def unmount(&block)
  # TODO wrap vnode
  %x{
    const old_hook = Opal.global.Preact.options.unmount;
    Opal.global.Preact.options.unmount = function(vnode) {
      #{block.call(`vnode`)};
      if (old_hook) {
        old_hook(vnode);
      }
    }
  }
  nil
end
use_debug_value(&block) click to toggle source
# File lib/preact/options.rb, line 70
def use_debug_value(&block)
  %x{
    const old_hook = Opal.global.Preact.options.useDebugValue;
    Opal.global.Preact.options.useDebugValue = function(value) {
      #{block.call(`value`)};
      if (old_hook) {
        old_hook(value);
      }
    }
  }
  nil
end
vnode(&block) click to toggle source
# File lib/preact/options.rb, line 83
def vnode(&block)
  %x{
    const old_hook = Opal.global.Preact.options.unmount;
    Opal.global.Preact.options.unmount = function(vnode) {
      #{block.call(`vnode`)};
      if (old_hook) {
        old_hook(vnode);
      }
    }
  }
  nil
end