1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- (function() { var __moduleName = "js/common/utils"; var __moduleAddress = "http://projects.delimited.io/webgl-globes/js/common/utils.js";System.register(["d3"], function (_export) {
- "use strict";
- var d3, getTween;
- // adapted from memoize.js by @philogb and @addyosmani
- _export("memoize", memoize);
- _export("debounce", debounce);
- function memoize(fn) {
- return function () {
- var args = Array.prototype.slice.call(arguments);
- var key = "",
- len = args.length,
- cur = null;
- while (len--) {
- cur = args[len];
- key += cur === Object(cur) ? JSON.stringify(cur) : cur;
- fn.memoize || (fn.memoize = {});
- }
- return key in fn.memoize ? fn.memoize[key] : fn.memoize[key] = fn.apply(this, args);
- };
- }
- function debounce(func, wait, immediate) {
- var timeout;
- return function () {
- var context = this,
- args = arguments;
- var later = function later() {
- timeout = null;
- if (!immediate) {
- func.apply(context, args);
- }
- };
- var callNow = immediate && !timeout;
- clearTimeout(timeout);
- timeout = setTimeout(later, wait);
- if (callNow) {
- func.apply(context, args);
- }
- };
- }
- return {
- setters: [function (_d3) {
- d3 = _d3["default"];
- }],
- execute: function () {
- getTween = function getTween(prop, to, time) {
- time = time || 500;
- var node = this;
- var curr = node[prop];
- var interpol = d3.interpolateObject(curr, to);
- return function (t) {
- node[prop].copy(interpol(t / time));
- if (t >= time) {
- return true;
- }
- };
- };
- _export("getTween", getTween);
- }
- };
- });
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImh0dHA6Ly9wcm9qZWN0cy5kZWxpbWl0ZWQuaW8vd2ViZ2wtZ2xvYmVzL2pzL2NvbW1vbi91dGlscy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7VUF3Q1csUUFBUTs7OztxQkFyQ0gsT0FBTzs7c0JBa0JQLFFBQVE7O0FBbEJqQixXQUFTLE9BQU8sQ0FBQyxFQUFFLEVBQUU7QUFDMUIsV0FBTyxZQUFZO0FBQ2pCLFVBQUksSUFBSSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzs7QUFFakQsVUFBSSxHQUFHLEdBQUcsRUFBRTtVQUFFLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTTtVQUFFLEdBQUcsR0FBRyxJQUFJLENBQUM7O0FBRTVDLGFBQU8sR0FBRyxFQUFFLEVBQUU7QUFDWixXQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2hCLFdBQUcsSUFBSSxBQUFDLEdBQUcsS0FBSyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRSxHQUFHLENBQUM7O0FBRXZELFVBQUUsQ0FBQyxPQUFPLEtBQUssRUFBRSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUEsQUFBQyxDQUFDO09BQ2pDOztBQUVELGFBQU8sQUFBQyxHQUFHLElBQUksRUFBRSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUMzQyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0tBQ3hDLENBQUM7R0FDSDs7QUFFTSxXQUFTLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtBQUM5QyxRQUFJLE9BQU8sQ0FBQztBQUNaLFdBQU8sWUFBVztBQUNoQixVQUFJLE9BQU8sR0FBRyxJQUFJO1VBQUUsSUFBSSxHQUFHLFNBQVMsQ0FBQztBQUNyQyxVQUFJLEtBQUssR0FBRyxTQUFSLEtBQUssR0FBYztBQUNyQixlQUFPLEdBQUcsSUFBSSxDQUFDO0FBQ2YsWUFBSSxDQUFDLFNBQVMsRUFBRTtBQUNkLGNBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQzNCO09BQ0YsQ0FBQztBQUNGLFVBQUksT0FBTyxHQUFHLFNBQVMsSUFBSSxDQUFDLE9BQU8sQ0FBQztBQUNwQyxrQkFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3RCLGFBQU8sR0FBRyxVQUFVLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ2xDLFVBQUksT0FBTyxFQUFFO0FBQ1gsWUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7T0FDM0I7S0FDRixDQUFDO0dBQ0g7Ozs7Ozs7QUFFVSxjQUFRLEdBQUcsU0FBWCxRQUFRLENBQWEsSUFBSSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUU7QUFDOUMsWUFBSSxHQUFHLElBQUksSUFBSSxHQUFHLENBQUM7QUFDbkIsWUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO0FBQ2hCLFlBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN0QixZQUFJLFFBQVEsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQzlDLGVBQU8sVUFBVSxDQUFDLEVBQUU7QUFDbEIsY0FBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDcEMsY0FBSSxDQUFDLElBQUksSUFBSSxFQUFFO0FBQ2IsbUJBQU8sSUFBSSxDQUFDO1dBQ2I7U0FDRixDQUFDO09BQ0g7OzBCQVhVLFFBQVEiLCJmaWxlIjoiaHR0cDovL3Byb2plY3RzLmRlbGltaXRlZC5pby93ZWJnbC1nbG9iZXMvanMvY29tbW9uL3V0aWxzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGQzIGZyb20gJ2QzJztcblxuLy8gYWRhcHRlZCBmcm9tIG1lbW9pemUuanMgYnkgQHBoaWxvZ2IgYW5kIEBhZGR5b3NtYW5pXG5leHBvcnQgZnVuY3Rpb24gbWVtb2l6ZShmbikge1xuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIHZhciBhcmdzID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtcblxuICAgIHZhciBrZXkgPSBcIlwiLCBsZW4gPSBhcmdzLmxlbmd0aCwgY3VyID0gbnVsbDtcblxuICAgIHdoaWxlIChsZW4tLSkge1xuICAgICAgY3VyID0gYXJnc1tsZW5dO1xuICAgICAga2V5ICs9IChjdXIgPT09IE9iamVjdChjdXIpKT8gSlNPTi5zdHJpbmdpZnkoY3VyKTogY3VyO1xuXG4gICAgICBmbi5tZW1vaXplIHx8IChmbi5tZW1vaXplID0ge30pO1xuICAgIH1cblxuICAgIHJldHVybiAoa2V5IGluIGZuLm1lbW9pemUpPyBmbi5tZW1vaXplW2tleV06XG4gICAgZm4ubWVtb2l6ZVtrZXldID0gZm4uYXBwbHkodGhpcywgYXJncyk7XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWJvdW5jZShmdW5jLCB3YWl0LCBpbW1lZGlhdGUpIHtcbiAgdmFyIHRpbWVvdXQ7XG4gIHJldHVybiBmdW5jdGlvbigpIHtcbiAgICB2YXIgY29udGV4dCA9IHRoaXMsIGFyZ3MgPSBhcmd1bWVudHM7XG4gICAgdmFyIGxhdGVyID0gZnVuY3Rpb24oKSB7XG4gICAgICB0aW1lb3V0ID0gbnVsbDtcbiAgICAgIGlmICghaW1tZWRpYXRlKSB7XG4gICAgICAgIGZ1bmMuYXBwbHkoY29udGV4dCwgYXJncyk7XG4gICAgICB9XG4gICAgfTtcbiAgICB2YXIgY2FsbE5vdyA9IGltbWVkaWF0ZSAmJiAhdGltZW91dDtcbiAgICBjbGVhclRpbWVvdXQodGltZW91dCk7XG4gICAgdGltZW91dCA9IHNldFRpbWVvdXQobGF0ZXIsIHdhaXQpO1xuICAgIGlmIChjYWxsTm93KSB7XG4gICAgICBmdW5jLmFwcGx5KGNvbnRleHQsIGFyZ3MpO1xuICAgIH1cbiAgfTtcbn1cblxuZXhwb3J0IHZhciBnZXRUd2VlbiA9IGZ1bmN0aW9uIChwcm9wLCB0bywgdGltZSkge1xuICB0aW1lID0gdGltZSB8fCA1MDA7XG4gIHZhciBub2RlID0gdGhpcztcbiAgdmFyIGN1cnIgPSBub2RlW3Byb3BdO1xuICB2YXIgaW50ZXJwb2wgPSBkMy5pbnRlcnBvbGF0ZU9iamVjdChjdXJyLCB0byk7XG4gIHJldHVybiBmdW5jdGlvbiAodCkge1xuICAgIG5vZGVbcHJvcF0uY29weShpbnRlcnBvbCh0IC8gdGltZSkpO1xuICAgIGlmICh0ID49IHRpbWUpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfTtcbn07XG4iXX0=
- }).call(__global);
|