Initial commit
This commit is contained in:
24
node_modules/d3-transition/src/interrupt.js
generated
vendored
Normal file
24
node_modules/d3-transition/src/interrupt.js
generated
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
import {STARTING, ENDING, ENDED} from "./transition/schedule";
|
||||
|
||||
export default function(node, name) {
|
||||
var schedules = node.__transition,
|
||||
schedule,
|
||||
active,
|
||||
empty = true,
|
||||
i;
|
||||
|
||||
if (!schedules) return;
|
||||
|
||||
name = name == null ? null : name + "";
|
||||
|
||||
for (i in schedules) {
|
||||
if ((schedule = schedules[i]).name !== name) { empty = false; continue; }
|
||||
active = schedule.state > STARTING && schedule.state < ENDING;
|
||||
schedule.state = ENDED;
|
||||
schedule.timer.stop();
|
||||
if (active) schedule.on.call("interrupt", node, node.__data__, schedule.index, schedule.group);
|
||||
delete schedules[i];
|
||||
}
|
||||
|
||||
if (empty) delete node.__transition;
|
||||
}
|
||||
Reference in New Issue
Block a user