Skip to content

Commit 618cd53

Browse files
committed
golf: shave 7 bytes~
1 parent b4561f9 commit 618cd53

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

src/index.js

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ export default function Navaid(base, on404) {
99
return rgx ? rgx.test(uri) && (uri.replace(rgx, '') || '/') : uri;
1010
}
1111

12-
if ((base=fmt(base)) === '/') base = '';
12+
base = fmt(base);
13+
if (base === '/') base = '';
1314
if (base) rgx = new RegExp('^/?' + base.substring(1) + '(?=/|$)', 'i');
1415

1516
$.route = function (uri, replace) {
@@ -18,17 +19,17 @@ export default function Navaid(base, on404) {
1819

1920
$.on = function (pat, fn) {
2021
handlers[pat] = fn;
21-
var o = convert(pat);
22-
o.route = pat;
23-
routes.push(o);
22+
fn = convert(pat);
23+
fn.route = pat;
24+
routes.push(fn);
2425
return $;
2526
}
2627

2728
$.run = function (uri) {
2829
var i=0, params={}, arr, obj;
29-
uri = fmt(uri || location.pathname);
30-
for (; i < routes.length; i++) {
31-
if (arr = (obj = routes[i]).pattern.exec(uri)) {
30+
for (; i < routes.length;) {
31+
obj = routes[i++];
32+
if (arr = obj.pattern.exec(fmt(uri || location.pathname))) {
3233
for (i=0; i < obj.keys.length;) params[obj.keys[i]]=arr[++i] || null;
3334
handlers[obj.route](params); // todo loop?
3435
return $;
@@ -67,17 +68,17 @@ export default function Navaid(base, on404) {
6768
off('replacestate', run);
6869
off('pushstate', run);
6970
off('click', click);
70-
};
71+
}
7172

7273
return $.run();
7374
}
7475

7576
return $;
7677
}
7778

78-
function wrap(type) {
79+
function wrap(type, fn) {
7980
type += 'State';
80-
var fn = history[type];
81+
fn = history[type];
8182
history[type] = function (uri) {
8283
var ev = new Event(type.toLowerCase());
8384
ev.uri = uri;

0 commit comments

Comments
 (0)