@ng-web-apis/audio
Version:
This is a library for declarative use of Web Audio API with Angular
21 lines • 2.26 kB
JavaScript
import { inject, InjectionToken } from '@angular/core';
import { WA_AUDIO_CONTEXT } from './audio-context';
/**
* This is mostly for internal use only
*/
export const WA_CONSTRUCTOR_SUPPORT = new InjectionToken('[WA_CONSTRUCTOR_SUPPORT]', {
providedIn: 'root',
factory: () => {
try {
return !!new GainNode(inject(WA_AUDIO_CONTEXT));
}
catch {
return false;
}
},
});
/**
* @deprecated: drop in v5.0, use {@link WA_CONSTRUCTOR_SUPPORT}
*/
export const CONSTRUCTOR_SUPPORT = WA_CONSTRUCTOR_SUPPORT;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0b3Itc3VwcG9ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvYXVkaW8vc3JjL3Rva2Vucy9jb25zdHJ1Y3Rvci1zdXBwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRWpEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxjQUFjLENBQ3BELDBCQUEwQixFQUMxQjtJQUNJLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUU7UUFDVixJQUFJO1lBQ0EsT0FBTyxDQUFDLENBQUMsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztTQUNuRDtRQUFDLE1BQU07WUFDSixPQUFPLEtBQUssQ0FBQztTQUNoQjtJQUNMLENBQUM7Q0FDSixDQUNKLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpbmplY3QsIEluamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtXQV9BVURJT19DT05URVhUfSBmcm9tICcuL2F1ZGlvLWNvbnRleHQnO1xuXG4vKipcbiAqIFRoaXMgaXMgbW9zdGx5IGZvciBpbnRlcm5hbCB1c2Ugb25seVxuICovXG5leHBvcnQgY29uc3QgV0FfQ09OU1RSVUNUT1JfU1VQUE9SVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxib29sZWFuPihcbiAgICAnW1dBX0NPTlNUUlVDVE9SX1NVUFBPUlRdJyxcbiAgICB7XG4gICAgICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICAgICAgZmFjdG9yeTogKCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gISFuZXcgR2Fpbk5vZGUoaW5qZWN0KFdBX0FVRElPX0NPTlRFWFQpKTtcbiAgICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICB9LFxuKTtcblxuLyoqXG4gKiBAZGVwcmVjYXRlZDogZHJvcCBpbiB2NS4wLCB1c2Uge0BsaW5rIFdBX0NPTlNUUlVDVE9SX1NVUFBPUlR9XG4gKi9cbmV4cG9ydCBjb25zdCBDT05TVFJVQ1RPUl9TVVBQT1JUID0gV0FfQ09OU1RSVUNUT1JfU1VQUE9SVDtcbiJdfQ==