UNPKG

@ng-web-apis/midi

Version:

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

30 lines 3.4 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 id * * @param id */ export function inputById(id) { return [ { provide: WA_MIDI_INPUT_QUERY, useValue: id, }, { provide: WA_MIDI_INPUT, deps: [WA_MIDI_ACCESS, WA_MIDI_INPUT_QUERY], useFactory: async (midiAccess, id) => midiAccess.then((access) => { let result; access.inputs.forEach((input) => { if (input.id === id) { result = input; } }); return result; }), }, ]; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtYnktaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL21pZGkvc3JjL3V0aWxzL2lucHV0LWJ5LWlkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFL0Q7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQUMsRUFBVTtJQUNoQyxPQUFPO1FBQ0g7WUFDSSxPQUFPLEVBQUUsbUJBQW1CO1lBQzVCLFFBQVEsRUFBRSxFQUFFO1NBQ2Y7UUFDRDtZQUNJLE9BQU8sRUFBRSxhQUFhO1lBQ3RCLElBQUksRUFBRSxDQUFDLGNBQWMsRUFBRSxtQkFBbUIsQ0FBQztZQUMzQyxVQUFVLEVBQUUsS0FBSyxFQUNiLFVBQStCLEVBQy9CLEVBQVUsRUFDb0IsRUFBRSxDQUNoQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQ3ZCLElBQUksTUFBNkIsQ0FBQztnQkFFbEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtvQkFDNUIsSUFBSSxLQUFLLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRTt3QkFDakIsTUFBTSxHQUFHLEtBQUssQ0FBQztxQkFDbEI7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7Z0JBRUgsT0FBTyxNQUFNLENBQUM7WUFDbEIsQ0FBQyxDQUFDO1NBQ1Q7S0FDSixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtQcm92aWRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7V0FfTUlESV9BQ0NFU1N9IGZyb20gJy4uL3Rva2Vucy9taWRpLWFjY2Vzcyc7XG5pbXBvcnQge1dBX01JRElfSU5QVVR9IGZyb20gJy4uL3Rva2Vucy9taWRpLWlucHV0JztcbmltcG9ydCB7V0FfTUlESV9JTlBVVF9RVUVSWX0gZnJvbSAnLi4vdG9rZW5zL21pZGktaW5wdXQtcXVlcnknO1xuXG4vKipcbiAqIFByb3ZpZGUgTUlESUlucHV0IGJ5IGlkXG4gKlxuICogQHBhcmFtIGlkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnB1dEJ5SWQoaWQ6IHN0cmluZyk6IFByb3ZpZGVyW10ge1xuICAgIHJldHVybiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFdBX01JRElfSU5QVVRfUVVFUlksXG4gICAgICAgICAgICB1c2VWYWx1ZTogaWQsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFdBX01JRElfSU5QVVQsXG4gICAgICAgICAgICBkZXBzOiBbV0FfTUlESV9BQ0NFU1MsIFdBX01JRElfSU5QVVRfUVVFUlldLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogYXN5bmMgKFxuICAgICAgICAgICAgICAgIG1pZGlBY2Nlc3M6IFByb21pc2U8TUlESUFjY2Vzcz4sXG4gICAgICAgICAgICAgICAgaWQ6IHN0cmluZyxcbiAgICAgICAgICAgICk6IFByb21pc2U8TUlESUlucHV0IHwgdW5kZWZpbmVkPiA9PlxuICAgICAgICAgICAgICAgIG1pZGlBY2Nlc3MudGhlbigoYWNjZXNzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGxldCByZXN1bHQ6IE1JRElJbnB1dCB8IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgICAgICAgICBhY2Nlc3MuaW5wdXRzLmZvckVhY2goKGlucHV0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5wdXQuaWQgPT09IGlkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gaW5wdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgIH0sXG4gICAgXTtcbn1cbiJdfQ==