silverstripe-framework/javascript/dist/router.js
David Craig aa1aebd007 Implement client-side routing with Page.js
- Removes thirdparty dependency History.js
- Adds thirdparty dependency Page.js to manage client-side routing
- Adds a wrapper around Page.js for SilverStripe specific behaviour
- Increased minimum browser requirement to IE10. Native HTML History API routing requires IE10 or newer (necessitated by removal of History.js)
- PJAX pannel loading via now uses promises rather than callbacks
- Adds getClientConfig method to LeftAndMain which can be used to pass config from to the front-end client
2016-04-01 13:45:14 +13:00

40 lines
1.0 KiB
JavaScript

(function (global, factory) {
if (typeof define === "function" && define.amd) {
define('ss.router', ['exports', 'page.js'], factory);
} else if (typeof exports !== "undefined") {
factory(exports, require('page.js'));
} else {
var mod = {
exports: {}
};
factory(mod.exports, global.page);
global.ssRouter = mod.exports;
}
})(this, function (exports, _page) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _page2 = _interopRequireDefault(_page);
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
function show(pageShow) {
return function (path, state, dispatch, push) {
var el = document.createElement('a');
el.href = path;
return pageShow(el.pathname, state, dispatch, push);
};
}
_page2.default.show = show(_page2.default.show);
exports.default = _page2.default;
});