You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

chem

Package Overview
Dependencies
Maintainers
2
Versions
38
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

chem - npm Package Compare versions

Comparing version

to
3.1.0

4

doc/api.md

@@ -675,3 +675,5 @@ **Table of Contents** *generated with [DocToc](http://doctoc.herokuapp.com/)*

Plays the sound. If the sound is already playing, it will play another
instance at the same time.
instance at the same time. If the number of instances in the pool is
greater than `maxPoolSize`, it will find the least recently played audio
in the pool and restart it.

@@ -678,0 +680,0 @@ Returns the HTML5 Audio object that is generating the sound, which has these

# History
## 3.1.0
* sound: `play` always returns an audio object. restarts old sounds
if necessary.
* capture mouse up events even if they go outside the canvas.
* key up event handler on window instead of canvas.
## 3.0.0

@@ -4,0 +11,0 @@

@@ -127,8 +127,3 @@ var Vec2d = require('vec2d').Vec2d;

self.mousePos = new Vec2d(0, 0);
addListener(self.canvas, 'mousemove', function(event){
self.mousePos = new Vec2d(
(event.offsetX) != null ? event.offsetX : event.pageX - event.target.offsetLeft,
(event.offsetY) != null ? event.offsetY : event.pageY - event.target.offsetTop);
self.emit('mousemove', self.mousePos, MOUSE_OFFSET + event.which);
});
addListener(self.canvas, 'mousemove', onMouseMove);
addListener(self.canvas, 'mousedown', function(event){

@@ -140,12 +135,25 @@ var buttonId = MOUSE_OFFSET + event.which;

self.canvas.focus();
window.addEventListener('mouseup', onMouseUp, false);
window.addEventListener('mousemove', onMouseMove, false);
return bubbleEvent(self, event);
});
addListener(self.canvas, 'mouseup', function(event){
var buttonId;
buttonId = MOUSE_OFFSET + event.which;
function onMouseUp(event) {
var buttonId = MOUSE_OFFSET + event.which;
self.buttonStates[buttonId] = false;
self.btnJustReleased[buttonId] = true;
self.emit('buttonup', buttonId);
window.removeEventListener('mouseup', onMouseUp, false);
window.removeEventListener('mousemove', onMouseMove, false);
return bubbleEvent(self, event);
});
}
function onMouseMove(event) {
self.mousePos = new Vec2d(
event.pageX - self.canvas.offsetLeft,
event.pageY - self.canvas.offsetTop);
self.emit('mousemove', self.mousePos, MOUSE_OFFSET + event.which);
}
// keyboard input

@@ -159,3 +167,3 @@ addListener(self.canvas, 'keydown', function(event){

});
addListener(self.canvas, 'keyup', function(event){
addListener(window, 'keyup', function(event){
var buttonId = KEY_OFFSET + event.which;

@@ -162,0 +170,0 @@ self.btnJustReleased[buttonId] = self.buttonStates[buttonId];

@@ -24,2 +24,5 @@ var EventEmitter = require('events').EventEmitter;

Sound.prototype.play = function() {
var oldest = null;
var oldestCurrentTime = -1;
// play a ready one
for (var i = 0; i < this.audioPool.length; ++i) {

@@ -30,4 +33,8 @@ var audio = this.audioPool[i];

return audio;
} else if (audio.currentTime > oldestCurrentTime) {
oldestCurrentTime = audio.currentTime;
oldest = audio;
}
}
// add a new one to the pool and play that one
if (this.audioPool.length < this.maxPoolSize) {

@@ -38,3 +45,8 @@ var newAudio = new Audio(this.currentSrc);

this.audioPool.push(newAudio);
return newAudio;
}
// recycle the oldest one
oldest.currentTime = 0;
oldest.play();
return oldest;
};

@@ -41,0 +53,0 @@

@@ -5,3 +5,3 @@ {

"author": "Andrew Kelley <superjoe30@gmail.com>",
"version": "3.0.0",
"version": "3.1.0",
"main": "index.js",

@@ -8,0 +8,0 @@ "license": "MIT",