UNPKG

@ng-web-apis/midi

Version:

An Observable based library for the use of Web MIDI API with Angular

30 lines 3.46 kB
import { WA_MIDI_ACCESS } from '../tokens/midi-access'; import { WA_MIDI_INPUT } from '../tokens/midi-input'; import { WA_MIDI_INPUT_QUERY } from '../tokens/midi-input-query'; /** * Provide MIDIInput by name * * @param name */ export function inputByName(name) { return [ { provide: WA_MIDI_INPUT_QUERY, useValue: name, }, { provide: WA_MIDI_INPUT, deps: [WA_MIDI_ACCESS, WA_MIDI_INPUT_QUERY], useFactory: async (midiAccess, name) => midiAccess.then((access) => { let result; access.inputs.forEach((input) => { if (input.name === name) { result = input; } }); return result; }), }, ]; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtYnktbmFtZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvbWlkaS9zcmMvdXRpbHMvaW5wdXQtYnktbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRS9EOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLElBQVk7SUFDcEMsT0FBTztRQUNIO1lBQ0ksT0FBTyxFQUFFLG1CQUFtQjtZQUM1QixRQUFRLEVBQUUsSUFBSTtTQUNqQjtRQUNEO1lBQ0ksT0FBTyxFQUFFLGFBQWE7WUFDdEIsSUFBSSxFQUFFLENBQUMsY0FBYyxFQUFFLG1CQUFtQixDQUFDO1lBQzNDLFVBQVUsRUFBRSxLQUFLLEVBQ2IsVUFBK0IsRUFDL0IsSUFBWSxFQUNrQixFQUFFLENBQ2hDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFrQixFQUFFLEVBQUU7Z0JBQ25DLElBQUksTUFBNkIsQ0FBQztnQkFFbEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtvQkFDNUIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRTt3QkFDckIsTUFBTSxHQUFHLEtBQUssQ0FBQztxQkFDbEI7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7Z0JBRUgsT0FBTyxNQUFNLENBQUM7WUFDbEIsQ0FBQyxDQUFDO1NBQ1Q7S0FDSixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtQcm92aWRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7V0FfTUlESV9BQ0NFU1N9IGZyb20gJy4uL3Rva2Vucy9taWRpLWFjY2Vzcyc7XG5pbXBvcnQge1dBX01JRElfSU5QVVR9IGZyb20gJy4uL3Rva2Vucy9taWRpLWlucHV0JztcbmltcG9ydCB7V0FfTUlESV9JTlBVVF9RVUVSWX0gZnJvbSAnLi4vdG9rZW5zL21pZGktaW5wdXQtcXVlcnknO1xuXG4vKipcbiAqIFByb3ZpZGUgTUlESUlucHV0IGJ5IG5hbWVcbiAqXG4gKiBAcGFyYW0gbmFtZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5wdXRCeU5hbWUobmFtZTogc3RyaW5nKTogUHJvdmlkZXJbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogV0FfTUlESV9JTlBVVF9RVUVSWSxcbiAgICAgICAgICAgIHVzZVZhbHVlOiBuYW1lLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBXQV9NSURJX0lOUFVULFxuICAgICAgICAgICAgZGVwczogW1dBX01JRElfQUNDRVNTLCBXQV9NSURJX0lOUFVUX1FVRVJZXSxcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IGFzeW5jIChcbiAgICAgICAgICAgICAgICBtaWRpQWNjZXNzOiBQcm9taXNlPE1JRElBY2Nlc3M+LFxuICAgICAgICAgICAgICAgIG5hbWU6IHN0cmluZyxcbiAgICAgICAgICAgICk6IFByb21pc2U8TUlESUlucHV0IHwgdW5kZWZpbmVkPiA9PlxuICAgICAgICAgICAgICAgIG1pZGlBY2Nlc3MudGhlbigoYWNjZXNzOiBNSURJQWNjZXNzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCByZXN1bHQ6IE1JRElJbnB1dCB8IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgICAgICAgICBhY2Nlc3MuaW5wdXRzLmZvckVhY2goKGlucHV0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5wdXQubmFtZSA9PT0gbmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGlucHV0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICB9LFxuICAgIF07XG59XG4iXX0=