ngx-soundmanager2
Version:
SoundManager2 Music Player for Angular2+
117 lines • 2.73 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
var MusicPlayerUtils = /** @class */ (function () {
function MusicPlayerUtils() {
}
/**
*
* @param track
*/
/**
*
* @param {?} track
* @return {?}
*/
MusicPlayerUtils.IsTrackValid = /**
*
* @param {?} track
* @return {?}
*/
function (track) {
if (typeof track === 'undefined') {
console.warn('invalid track data');
return false;
}
if (track.url.indexOf('soundcloud') > -1) {
// if soundcloud url
if (typeof track.url === 'undefined') {
console.warn('invalid soundcloud track url');
return false;
}
}
else {
if (soundManager.canPlayURL(track.url) !== true) {
console.warn('invalid song url');
return false;
}
}
return true;
};
/**
* getIndexByValue used by this service
*/
/**
* getIndexByValue used by this service
* @param {?} array
* @param {?} value
* @return {?}
*/
MusicPlayerUtils.GetIndexByValue = /**
* getIndexByValue used by this service
* @param {?} array
* @param {?} value
* @return {?}
*/
function (array, value) {
for (var /** @type {?} */ i = 0; i < array.length; i++) {
if (array[i] === value) {
return i;
}
}
return -1;
};
/**
* To check if value is in array
*/
/**
* To check if value is in array
* @param {?} array
* @param {?} value
* @return {?}
*/
MusicPlayerUtils.IsInArray = /**
* To check if value is in array
* @param {?} array
* @param {?} value
* @return {?}
*/
function (array, value) {
for (var /** @type {?} */ i = 0; i < array.length; i++) {
if (array[i].id === value) {
return i;
}
}
return -1;
};
/**
* asyncLoop
* @param o
*/
/**
* asyncLoop
* @param {?} o
* @return {?}
*/
MusicPlayerUtils.AsyncLoop = /**
* asyncLoop
* @param {?} o
* @return {?}
*/
function (o) {
var /** @type {?} */ i = -1;
var /** @type {?} */ loop = function () {
i++;
if (i === o.length) {
o.callback();
return;
}
o.functionToLoop(loop, i);
};
loop(); // init
};
return MusicPlayerUtils;
}());
export { MusicPlayerUtils };
//# sourceMappingURL=music-player.utils.js.map