UNPKG

react-dictate-button

Version:

A button to start dictation using Web Speech API, with an easy to understand event lifecycle.

241 lines (240 loc) 6.42 kB
// ../../node_modules/event-target-properties/dist/event-target-properties.mjs var EventTargetProperties = class { constructor(eventTarget) { this.#eventTarget = eventTarget; } #attributes = {}; #defaultListeners = {}; #eventTarget; getProperty(type) { return this.#attributes[type]; } setProperty(type, eventListener) { let handler = this.#defaultListeners[type]; if (!handler) { handler = (event) => { var _a, _b; return (_b = (_a = this.#attributes)[type]) == null ? void 0 : _b.call(_a, event); }; this.#defaultListeners[type] = handler; } if (eventListener) { this.#eventTarget.addEventListener(type, handler); this.#attributes[type] = eventListener; } else { this.#eventTarget.removeEventListener(type, handler); delete this.#attributes[type]; } } }; // ../mocked-speech-recognition/dist/react-dictate-button-mocked-speech-recognition.mjs var SpeechGrammarList = class extends Array { constructor() { super(); } addFromString() { } addFromURI() { } item(index) { return this[index]; } }; var SpeechRecognition = class extends EventTarget { constructor() { super(); this.#continuous = false; this.#eventTargetProperties = new EventTargetProperties(this); this.#grammars = new SpeechGrammarList(); this.#interimResults = false; this.#lang = ""; this.#maxAlternatives = 1; } #continuous; #eventTargetProperties; #grammars; #interimResults; #lang; #maxAlternatives; get onaudioend() { return this.#eventTargetProperties.getProperty("audioend") || null; } set onaudioend(value) { this.#eventTargetProperties.setProperty("audioend", value || void 0); } get onaudiostart() { return this.#eventTargetProperties.getProperty("audiostart") || null; } set onaudiostart(value) { this.#eventTargetProperties.setProperty("audiostart", value || void 0); } get onend() { return this.#eventTargetProperties.getProperty("end") || null; } set onend(value) { this.#eventTargetProperties.setProperty("end", value || void 0); } get onerror() { return this.#eventTargetProperties.getProperty("error") || null; } set onerror(value) { this.#eventTargetProperties.setProperty("error", value || void 0); } get onnomatch() { return this.#eventTargetProperties.getProperty("nomatch") || null; } set onnomatch(value) { this.#eventTargetProperties.setProperty("nomatch", value || void 0); } get onresult() { return this.#eventTargetProperties.getProperty("result") || null; } set onresult(value) { this.#eventTargetProperties.setProperty("result", value || void 0); } get onsoundend() { return this.#eventTargetProperties.getProperty("soundend") || null; } set onsoundend(value) { this.#eventTargetProperties.setProperty("soundend", value || void 0); } get onsoundstart() { return this.#eventTargetProperties.getProperty("soundstart") || null; } set onsoundstart(value) { this.#eventTargetProperties.setProperty("soundstart", value || void 0); } get onspeechend() { return this.#eventTargetProperties.getProperty("speechend") || null; } set onspeechend(value) { this.#eventTargetProperties.setProperty("speechend", value || void 0); } get onspeechstart() { return this.#eventTargetProperties.getProperty("speechstart") || null; } set onspeechstart(value) { this.#eventTargetProperties.setProperty("speechstart", value || void 0); } get onstart() { return this.#eventTargetProperties.getProperty("start") || null; } set onstart(value) { this.#eventTargetProperties.setProperty("start", value || void 0); } get continuous() { return this.#continuous; } set continuous(value) { this.#continuous = value; } get grammars() { return this.#grammars; } get interimResults() { return this.#interimResults; } set interimResults(value) { this.#interimResults = value; } get lang() { return this.#lang; } set lang(value) { this.#lang = value; } get maxAlternatives() { return this.#maxAlternatives; } set maxAlternatives(value) { this.#maxAlternatives = value; } abort() { } start() { } stop() { } }; var SpeechRecognitionAlternative = class { constructor(confidence, transcript) { this.#confidence = typeof confidence === "undefined" ? 0 : confidence; this.#transcript = typeof transcript === "undefined" ? "" : transcript; } #confidence; #transcript; get confidence() { return this.#confidence; } get transcript() { return this.#transcript; } }; var SpeechRecognitionErrorEvent = class extends Event { constructor(type, eventInitDict) { super(type, eventInitDict); this.#error = eventInitDict.error || ""; this.#message = eventInitDict.message || ""; } #error; #message; get error() { return this.#error; } get message() { return this.#message; } }; var SpeechRecognitionResultList = class extends Array { // eslint-disable-next-line @typescript-eslint/no-explicit-any constructor(...args) { super(...args); } item(index) { return this[index]; } }; var SpeechRecognitionEvent = class extends Event { constructor(type, eventInitDict) { super(type, eventInitDict); this.#resultIndex = eventInitDict.resultIndex ?? 0; this.#results = "results" in eventInitDict && eventInitDict.results ? eventInitDict.results : new SpeechRecognitionResultList(); } #resultIndex; #results; get resultIndex() { return this.#resultIndex; } get results() { return this.#results; } }; var SpeechRecognitionResult = class _SpeechRecognitionResult extends Array { // eslint-disable-next-line @typescript-eslint/no-explicit-any constructor(...args) { super(...args); this.#isFinal = false; } #isFinal = false; item(index) { return this[index]; } get isFinal() { return this.#isFinal; } static fromFinalized(...items) { const result = new _SpeechRecognitionResult(...items); result.#isFinal = true; return result; } }; export { SpeechGrammarList, SpeechRecognition, SpeechRecognitionAlternative, SpeechRecognitionErrorEvent, SpeechRecognitionEvent, SpeechRecognitionResult, SpeechRecognitionResultList }; //# sourceMappingURL=react-dictate-button.internal.mjs.map