Skip to content

Commit

Permalink
remove dependency of refect
Browse files Browse the repository at this point in the history
  • Loading branch information
Siubaak committed Jan 23, 2019
1 parent bbfb5d8 commit fdf4732
Show file tree
Hide file tree
Showing 19 changed files with 231 additions and 2,232 deletions.
22 changes: 13 additions & 9 deletions dist/index.js
Expand Up @@ -29,15 +29,15 @@
}
}
}
function rICB(callback) {
function requestIdleCallbackPolyfill(callback) {
var start = Date.now();
return requestAnimationFrame(function () {
callback({
timeRemaining: function () { return Math.max(0, 50 - (Date.now() - start)); }
});
});
}
var nextTick = window.requestIdleCallback || rICB;
var nextTick = window.requestIdleCallback || requestIdleCallbackPolyfill;

var DATA_ID = 'data-kgid';
var RESERVED_PROPS = { key: true, ref: true };
Expand Down Expand Up @@ -822,7 +822,10 @@

function observe(data, specificWatcher) {
if (specificWatcher === void 0) { specificWatcher = null; }
if (!is.object(data) && !is.array(data)) {
if (is.function(data)) {
throw new Error('function can\'t be observed');
}
else if (!is.object(data) && !is.array(data)) {
data = { value: data };
}
for (var key in data) {
Expand All @@ -834,24 +837,25 @@
}
var dep = new Dependency(specificWatcher);
return new Proxy(data, {
get: function (target, property, receiver) {
get: function (target, property) {
if (hasOwn(target, property)) {
dep.collect();
}
return Reflect.get(target, property, receiver);
return target[property];
},
set: function (target, property, value, receiver) {
set: function (target, property, value) {
if ((hasOwn(target, property) || is.undefined(target[property])) &&
value !== target[property]) {
dep.notify();
}
return Reflect.set(target, property, value, receiver);
target[property] = value;
return true;
},
deleteProperty: function (target, property) {
if (hasOwn(target, property)) {
dep.notify();
}
return Reflect.deleteProperty(target, property);
return delete target[property];
}
});
}
Expand Down Expand Up @@ -943,7 +947,7 @@
}
}

var version = "1.1.0";
var version = "1.1.1";

var Kurge = {
version: version,
Expand Down
2 changes: 1 addition & 1 deletion dist/kurge.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/examples/get_started/1.state.html
Expand Up @@ -9,7 +9,7 @@
<body>
<div id="app"></div>
<script src="../../proxy.polyfill.js"></script>
<script src="kurge_1.1.0.js"></script>
<script src="kurge_1.1.1.js"></script>
<script>
const { render, useState, createElement: h } = Kurge

Expand Down
2 changes: 1 addition & 1 deletion docs/examples/get_started/2.effect.html
Expand Up @@ -9,7 +9,7 @@
<body>
<div id="app"></div>
<script src="../../proxy.polyfill.js"></script>
<script src="kurge_1.1.0.js"></script>
<script src="kurge_1.1.1.js"></script>
<script>
const { render, useState, createElement: h, useEffect } = Kurge

Expand Down
2 changes: 1 addition & 1 deletion docs/examples/get_started/3.context.html
Expand Up @@ -9,7 +9,7 @@
<body>
<div id="app"></div>
<script src="../../proxy.polyfill.js"></script>
<script src="kurge_1.1.0.js"></script>
<script src="kurge_1.1.1.js"></script>
<script>
const { render, createContext, createElement: h } = Kurge

Expand Down
2 changes: 1 addition & 1 deletion docs/examples/get_started/4.refs.html
Expand Up @@ -9,7 +9,7 @@
<body>
<div id="app"></div>
<script src="../../proxy.polyfill.js"></script>
<script src="kurge_1.1.0.js"></script>
<script src="kurge_1.1.1.js"></script>
<script>
const { render, useRefs, createElement: h, useEffect } = Kurge

Expand Down
2 changes: 1 addition & 1 deletion docs/examples/get_started/5.custom-hook.html
Expand Up @@ -9,7 +9,7 @@
<body>
<div id="app"></div>
<script src="../../proxy.polyfill.js"></script>
<script src="kurge_1.1.0.js"></script>
<script src="kurge_1.1.1.js"></script>
<script>
const { render, useState, createElement: h, useEffect } = Kurge

Expand Down
Expand Up @@ -29,15 +29,15 @@
}
}
}
function rICB(callback) {
function requestIdleCallbackPolyfill(callback) {
var start = Date.now();
return requestAnimationFrame(function () {
callback({
timeRemaining: function () { return Math.max(0, 50 - (Date.now() - start)); }
});
});
}
var nextTick = window.requestIdleCallback || rICB;
var nextTick = window.requestIdleCallback || requestIdleCallbackPolyfill;

var DATA_ID = 'data-kgid';
var RESERVED_PROPS = { key: true, ref: true };
Expand Down Expand Up @@ -822,7 +822,10 @@

function observe(data, specificWatcher) {
if (specificWatcher === void 0) { specificWatcher = null; }
if (!is.object(data) && !is.array(data)) {
if (is.function(data)) {
throw new Error('function can\'t be observed');
}
else if (!is.object(data) && !is.array(data)) {
data = { value: data };
}
for (var key in data) {
Expand All @@ -834,24 +837,25 @@
}
var dep = new Dependency(specificWatcher);
return new Proxy(data, {
get: function (target, property, receiver) {
get: function (target, property) {
if (hasOwn(target, property)) {
dep.collect();
}
return Reflect.get(target, property, receiver);
return target[property];
},
set: function (target, property, value, receiver) {
set: function (target, property, value) {
if ((hasOwn(target, property) || is.undefined(target[property])) &&
value !== target[property]) {
dep.notify();
}
return Reflect.set(target, property, value, receiver);
target[property] = value;
return true;
},
deleteProperty: function (target, property) {
if (hasOwn(target, property)) {
dep.notify();
}
return Reflect.deleteProperty(target, property);
return delete target[property];
}
});
}
Expand Down Expand Up @@ -943,7 +947,7 @@
}
}

var version = "1.1.0";
var version = "1.1.1";

var Kurge = {
version: version,
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/stack_vs_fiber/fiber.html
Expand Up @@ -9,7 +9,7 @@
<h1>Kurge Fiber Example</h1>
<div id="app"></div>
<script src="../../proxy.polyfill.js"></script>
<script src="kurge_1.1.0.js"></script>
<script src="kurge_1.1.1.js"></script>
<script>
const { render, useState, createElement: h, useEffect } = Kurge

Expand Down
Expand Up @@ -29,15 +29,15 @@
}
}
}
function rICB(callback) {
function requestIdleCallbackPolyfill(callback) {
var start = Date.now();
return requestAnimationFrame(function () {
callback({
timeRemaining: function () { return Math.max(0, 50 - (Date.now() - start)); }
});
});
}
var nextTick = window.requestIdleCallback || rICB;
var nextTick = window.requestIdleCallback || requestIdleCallbackPolyfill;

var DATA_ID = 'data-kgid';
var RESERVED_PROPS = { key: true, ref: true };
Expand Down Expand Up @@ -822,7 +822,10 @@

function observe(data, specificWatcher) {
if (specificWatcher === void 0) { specificWatcher = null; }
if (!is.object(data) && !is.array(data)) {
if (is.function(data)) {
throw new Error('function can\'t be observed');
}
else if (!is.object(data) && !is.array(data)) {
data = { value: data };
}
for (var key in data) {
Expand All @@ -834,24 +837,25 @@
}
var dep = new Dependency(specificWatcher);
return new Proxy(data, {
get: function (target, property, receiver) {
get: function (target, property) {
if (hasOwn(target, property)) {
dep.collect();
}
return Reflect.get(target, property, receiver);
return target[property];
},
set: function (target, property, value, receiver) {
set: function (target, property, value) {
if ((hasOwn(target, property) || is.undefined(target[property])) &&
value !== target[property]) {
dep.notify();
}
return Reflect.set(target, property, value, receiver);
target[property] = value;
return true;
},
deleteProperty: function (target, property) {
if (hasOwn(target, property)) {
dep.notify();
}
return Reflect.deleteProperty(target, property);
return delete target[property];
}
});
}
Expand Down Expand Up @@ -943,7 +947,7 @@
}
}

var version = "1.1.0";
var version = "1.1.1";

var Kurge = {
version: version,
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/stack_vs_fiber/stack.html
Expand Up @@ -9,7 +9,7 @@
<h1>Kurge Stack Example</h1>
<div id="app"></div>
<script src="../../proxy.polyfill.js"></script>
<script src="kurge_1.0.5.js"></script>
<script src="kurge_1.1.1.js"></script>
<script>
const { render, useState, createElement: h, useEffect } = Kurge

Expand Down

0 comments on commit fdf4732

Please sign in to comment.