prop and withAttr work in progress

This commit is contained in:
Leo Horie 2016-05-21 01:48:11 -04:00
parent e1473dcce8
commit 477e73f300
4 changed files with 32 additions and 8 deletions

View file

@ -1,14 +1,16 @@
"use strict"
var m = require("./render/hyperscript")
var rendererService = require("./render/render")(window)
var renderService = require("./render/render")(window)
var redrawService = require("./api/pubsub")()
m.request = require("./request/request")(window, Promise).ajax
m.route = require("./api/router")(window, rendererService, redrawService)
m.mount = require("./api/mount")(rendererService, redrawService)
m.route = require("./api/router")(window, renderService, redrawService)
m.mount = require("./api/mount")(renderService, redrawService)
m.trust = require("./render/trust")
m.render = rendererService.render
m.prop = require("./util/prop")
m.withAttr = require("./util/withAttr")
m.render = renderService.render
m.redraw = redrawService.publish
module.exports = m

View file

@ -84,7 +84,7 @@ function changeNS(ns, vnode) {
}
}
var m = hyperscript
var rendererService = function($window) {
var renderService = function($window) {
var $doc = $window.document
var onevent
function setEventCallback(callback) {return onevent = callback}
@ -889,7 +889,7 @@ m.route = function($window, renderer, pubsub) {
route.prefix = router.setPrefix
return route
}(window, rendererService, redrawService)
}(window, renderService, redrawService)
m.mount = function(renderer, pubsub) {
return function(root, component) {
var run = autoredraw(root, renderer, pubsub, function() {
@ -898,10 +898,19 @@ m.mount = function(renderer, pubsub) {
run()
}
}(rendererService, redrawService)
}(renderService, redrawService)
m.trust = function(html) {
return Node("<", undefined, undefined, html, undefined, undefined)
}
m.render = rendererService.render
m.prop = function(store) {
return function() {
if (arguments.length > 0) store = arguments[0]
return store
}
}
m.withAttr = function(attrName, callback, context) {
return callback.call(context || this, attrName in e.currentTarget ? e.currentTarget[attrName] : e.currentTarget.getAttribute(attrName))
}
m.render = renderService.render
m.redraw = redrawService.publish
module.exports = m

8
util/prop.js Normal file
View file

@ -0,0 +1,8 @@
"use strict"
module.exports = function(store) {
return function() {
if (arguments.length > 0) store = arguments[0]
return store
}
}

5
util/withAttr.js Normal file
View file

@ -0,0 +1,5 @@
"use strict"
module.exports = function(attrName, callback, context) {
return callback.call(context || this, attrName in e.currentTarget ? e.currentTarget[attrName] : e.currentTarget.getAttribute(attrName))
}