{"version":3,"sources":["webpack:///./node_modules/@babel/runtime/helpers/esm/get.js","webpack:///./node_modules/@babel/runtime/helpers/esm/superPropBase.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/ChunkedArrayBufferStream.js","webpack:///./node_modules/htmlparser2/node_modules/domutils/index.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/core-js/internals/native-promise-constructor.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/htmlparser2/lib/Stream.js","webpack:///./node_modules/htmlparser2/lib/CollectingHandler.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Audio/AudioOutputStream.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/Exports.js","webpack:///./node_modules/react-html-parser/lib/elementTypes/TextElementType.js","webpack:///./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack:///./node_modules/core-js/internals/global.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/SynthesisContext.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/HeaderNames.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/CancellationReason.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/CancellationErrorCodes.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SpeechSynthesisEventArgs.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SpeechSynthesisResult.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SpeechSynthesisWordBoundaryEventArgs.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SpeechSynthesisBookmarkEventArgs.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SpeechSynthesisVisemeEventArgs.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/SpeechConnectionMessage.Internal.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/SynthesisAdapterBase.js","webpack:///./node_modules/htmlparser2/node_modules/domhandler/lib/node.js","webpack:///./node_modules/react-html-parser/lib/elementTypes/UnsupportedElementType.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/ConnectionFactoryBase.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/is-array.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/AudioSourceEvents.js","webpack:///./node_modules/htmlparser2/node_modules/dom-serializer/index.js","webpack:///./node_modules/@babel/runtime/helpers/inherits.js","webpack:///./node_modules/core-js/modules/es.string.trim-start.js","webpack:///./node_modules/core-js/internals/new-promise-capability.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.browser/CertChecks.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/htmlparser2/node_modules/domutils/lib/querying.js","webpack:///./node_modules/core-js/internals/function-bind-context.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SpeechSynthesisOutputFormat.js","webpack:///./node_modules/react-html-parser/lib/utils/isValidTagOrAttributeName.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/PropertyId.js","webpack:///./node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/encode.js","webpack:///./node_modules/core-js/modules/es.array.flat.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/RawWebsocketMessage.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/bent/src/browser.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/react-html-parser/lib/dom/attributes/BooleanAttributes.js","webpack:///./node_modules/react-html-parser/lib/elementTypes/TagElementType.js","webpack:///./src/components/Buttons/ToTop/style.js","webpack:///./src/components/Buttons/ToTop/index.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Audio/AudioStreamFormat.js","webpack:///./node_modules/url-parse/index.js","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/export.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/IConnection.js","webpack:///./node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/AgentConfig.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/BackgroundError.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/Events.js","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/react-html-parser/lib/utils/isEmptyTextNode.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.browser/RestConfigBase.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.browser/RestMessageAdapter.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/SynthesisRestAdapter.js","webpack:///./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/QueryParameterNames.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SynthesisResult.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/List.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/Queue.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/requires-port/index.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/species-constructor.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/SynthesizerConfig.js","webpack:///./src/components/Select/styled.js","webpack:///./src/components/Select/index.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/PropertyCollection.js","webpack:///./node_modules/htmlparser2/node_modules/domutils/lib/legacy.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/ConnectionOpenResponse.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.browser/WebsocketMessageAdapter.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.browser/WebsocketConnection.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.browser/ProxyInfo.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/SpeechSynthesisConnectionFactory.js","webpack:///./node_modules/htmlparser2/lib/FeedHandler.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Audio/AudioOutputFormat.js","webpack:///./node_modules/htmlparser2/lib/Parser.js","webpack:///./node_modules/core-js/internals/whitespaces.js","webpack:///./node_modules/core-js/internals/string-trim.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/index.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Audio/AudioInputStream.js","webpack:///./node_modules/core-js/internals/engine-is-node.js","webpack:///./node_modules/htmlparser2/node_modules/domhandler/lib/element.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/node_modules/uuid/dist/esm-browser/rng.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/node_modules/uuid/dist/esm-browser/regex.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/node_modules/uuid/dist/esm-browser/stringify.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/node_modules/uuid/dist/esm-browser/validate.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/node_modules/uuid/dist/esm-browser/v4.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/Guid.js","webpack:///./node_modules/htmlparser2/node_modules/domutils/lib/manipulation.js","webpack:///./node_modules/core-js/internals/array-species-create.js","webpack:///./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Contracts.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack:///./node_modules/@babel/runtime/helpers/esm/construct.js","webpack:///./node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","webpack:///./node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/Error.js","webpack:///./node_modules/react-html-parser/lib/utils/inlineStyleToObject.js","webpack:///./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js","webpack:///./node_modules/htmlparser2/lib/Tokenizer.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/OCSPEvents.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./node_modules/htmlparser2/node_modules/domelementtype/index.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/react-html-parser/lib/dom/attributes/ReactAttributes.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/react-html-parser/lib/index.js","webpack:///./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack:///./node_modules/react-html-parser/lib/convertNodeToElement.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/WebsocketMessageFormatter.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/ResultReason.js","webpack:///./node_modules/htmlparser2/node_modules/domutils/lib/stringify.js","webpack:///./node_modules/htmlparser2/lib/WritableStream.js","webpack:///./node_modules/htmlparser2/lib/index.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/htmlparser2/node_modules/dom-serializer/node_modules/domelementtype/lib/index.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/react-html-parser/lib/elementTypes/index.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/RecognizerConfig.js","webpack:///./node_modules/react-html-parser/lib/elementTypes/StyleElementType.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/SynthesisEvents.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/SynthesisTurn.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/ConnectionMessage.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/decode.js","webpack:///./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack:///./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/CognitiveTokenAuthentication.js","webpack:///./node_modules/htmlparser2/node_modules/entities/lib/decode_codepoint.js","webpack:///./node_modules/querystringify/index.js","webpack:///./node_modules/@babel/runtime/helpers/wrapNativeSuper.js","webpack:///./node_modules/core-js/internals/flatten-into-array.js","webpack:///./node_modules/core-js/modules/es.promise.finally.js","webpack:///./node_modules/htmlparser2/node_modules/domutils/lib/traversal.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/htmlparser2/node_modules/domutils/lib/helpers.js","webpack:///./node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/decode_codepoint.js","webpack:///./node_modules/react-html-parser/lib/processNodes.js","webpack:///./node_modules/react-html-parser/lib/dom/elements/VoidElements.js","webpack:///./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/EventSource.js","webpack:///./node_modules/react-html-parser/lib/HtmlParser.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/Promise.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/ServiceMessages/SynthesisAudioMetadata.js","webpack:///./node_modules/@babel/runtime/helpers/construct.js","webpack:///./node_modules/htmlparser2/node_modules/domhandler/index.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/OutputFormat.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/ProfanityOption.js","webpack:///./src/modules/v1/itemCharacteristics/Description/styles.js","webpack:///./src/components/Disclaimer/index.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SpeechConfig.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Audio/SpeakerAudioDestination.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/RiffPcmEncoder.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.browser/PCMRecorder.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.browser/MicAudioSource.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.browser/FileAudioSource.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Audio/PullAudioInputStreamCallback.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Audio/PushAudioOutputStreamCallback.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Audio/AudioFileWriter.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/Audio/AudioConfig.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/VoiceInfo.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SynthesisVoicesResult.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/sdk/SpeechSynthesizer.js","webpack:///./src/services/text-to-speech.js","webpack:///./src/modules/v1/itemCharacteristics/Description/index.js","webpack:///./src/modules/v1/itemCharacteristics/index.js","webpack:///./src/templates/v1/item-characteristic.js","webpack:///./node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/Stream.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/PlatformEvent.js","webpack:///./node_modules/htmlparser2/lib/ProxyHandler.js","webpack:///./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common/ConnectionEvents.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/react-html-parser/lib/utils/generatePropsFromAttributes.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/IAuthentication.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/@babel/runtime/helpers/isNativeFunction.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/microsoft-cognitiveservices-speech-sdk/distrib/es2015/src/common.speech/CognitiveSubscriptionKeyAuthentication.js","webpack:///./node_modules/core-js/internals/string-trim-forced.js","webpack:///./node_modules/@babel/runtime/helpers/asyncToGenerator.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/bent/src/core.js","webpack:///./node_modules/core-js/internals/promise-resolve.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/react-html-parser/lib/utils/htmlAttributesToReact.js"],"names":["target","property","receiver","Reflect","get","base","object","Object","prototype","hasOwnProperty","call","getPrototypeOf","desc","getOwnPropertyDescriptor","value","_createSuper","Derived","hasNativeReflectConstruct","construct","sham","Proxy","Boolean","valueOf","e","_isNativeReflectConstruct","result","Super","NewTarget","this","constructor","arguments","apply","_Stream","ChunkedArrayBufferStream","_super","targetChunkSize","streamId","_this","privTargetChunkSize","privNextBufferReadyBytes","key","chunk","isEnd","buffer","byteLength","bytesCopiedFromBuffer","undefined","privNextBufferToWrite","ArrayBuffer","privNextBufferStartTime","timeReceived","bytesToCopy","Math","min","targetView","Uint8Array","sourceView","slice","set","isClosed","DomUtils","module","exports","forEach","ext","keys","bind","IndexedObject","requireObjectCoercible","it","NATIVE_SYMBOL","Symbol","iterator","global","Promise","exec","error","path","aFunction","variable","namespace","method","length","nativePropertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","1","f","V","descriptor","enumerable","Stream","Parser","options","Cbs","scope","readable","EVENTS","name","emit","a","Error","b","CollectingHandler","cbs","_cbs","events","push","onreset","restart","i","len","num","__awaiter","thisArg","_arguments","P","generator","resolve","reject","fulfilled","step","next","rejected","done","then","AudioOutputStream","PullAudioOutputStream","create","_AudioOutputStream","PullAudioOutputStreamImpl","_PullAudioOutputStrea","_super2","privId","privStream","privFormat","format","getDefaultOutputFormat","dataBuffer","mark","_callee","intView","totalBytes","tmpBuffer","wrap","_context","prev","Int8Array","privLastChunkView","abrupt","isReadEnded","read","sent","readEnded","stop","throwIfNullOrUndefined","writeStreamChunk","Date","now","close","PushAudioOutputStream","_AudioOutputStream2","_super3","callback","PushAudioOutputStreamImpl","_PushAudioOutputStrea","_super4","_this2","privCallback","write","OutputFormatPropertyName","CancellationErrorCodePropertyName","ServicePropertiesPropertyName","ForceDictationPropertyName","AutoDetectSourceLanguagesOpenRangeOptionName","defineProperty","default","node","data","_classCallCheck","instance","Constructor","TypeError","check","globalThis","window","self","Function","SynthesisContext","speechSynthesizer","privContext","privSpeechSynthesizer","sectionName","privAudioOutputFormat","synthesisSection","buildSynthesisContext","setSection","JSON","stringify","audio","metadataOptions","bookmarkEnabled","bookmarkReached","sentenceBoundaryEnabled","visemeEnabled","visemeReceived","wordBoundaryEnabled","wordBoundary","outputFormat","requestAudioFormatString","language","autoDetection","autoDetectSourceLanguage","HeaderNames","AuthKey","ConnectionId","ContentType","CustomCommandsAppId","Path","RequestId","RequestStreamId","RequestTimestamp","CancellationReason","CancellationErrorCode","SpeechSynthesisEventArgs","privResult","_SynthesisResult","SpeechSynthesisResult","resultId","reason","audioData","errorDetails","properties","privAudioData","SpeechSynthesisWordBoundaryEventArgs","audioOffset","text","wordLength","textOffset","privAudioOffset","privText","privWordLength","privTextOffset","SpeechSynthesisBookmarkEventArgs","SpeechSynthesisVisemeEventArgs","visemeId","animation","privVisemeId","privAnimation","_ConnectionMessage","SpeechConnectionMessage","messageType","requestId","contentType","body","additionalHeaders","id","headers","toISOString","headerName","privPath","privRequestId","privContentType","privStreamId","privAdditionalHeaders","ConnectionMessage","_createForOfIteratorHelper","o","allowArrayLike","Array","isArray","minLen","_arrayLikeToArray","n","toString","from","test","_unsupportedIterableToArray","F","s","_e","err","normalCompletion","didErr","_e2","return","arr","arr2","fromConnectionMessage","message","toLowerCase","SynthesisAdapterBase","authentication","connectionFactory","synthesizerConfig","audioDestination","speakOverride","receiveMessageOverride","connectImplOverride","configConnectionOverride","sendSynthesisContext","connection","synthesisContextJson","synthesisContext","toJSON","send","Text","privSynthesisTurn","sendSpeechServiceConfig","SpeechServiceConfigJson","sendSsmlMessage","ssml","privAuthentication","privConnectionFactory","privSynthesizerConfig","privIsDisposed","privSessionAudioDestination","SynthesisTurn","privConnectionEvents","EventSource","privServiceEvents","privSynthesisContext","privAgentConfig","AgentConfig","connectionEvents","attach","connectionEvent","connectionClosedEvent","statusCode","cancelSynthesisLocal","BadRequestParameters","ConnectionFailure","privActivityTemplate","messagePayload","audioOutputFormat","privConnectionConfigurationPromise","dispose","_callee2","_context2","connectImpl","payload","_callee3","type","_context3","Binary","fetchConnection","isSSML","successCallback","errorCallBack","_callee4","synthesisStartEventArgs","_context4","buildSsml","privSuccessCallback","privErrorCallback","startNewSynthesis","ResultReason","SynthesizingAudioStarted","synthesisStarted","receiveMessage","t0","cancellationReason","errorCode","PropertyCollection","setProperty","Canceled","SynthesisCanceled","cancelEvent","_a","_b","isSynthesizing","onStopSynthesizing","cancelSynthesis","connectionMessage","_callee5","audioWithHeader","ev","metadataList","_iterator","_step","metadata","wordBoundaryEventArgs","bookmarkEventArgs","visemeEventArgs","audioBuffer","_context5","privServiceHasSentMessage","onServiceTurnStartResponse","onServiceResponseMessage","textBody","binaryBody","onAudioChunkReceived","synthesizing","addHeader","SynthesizingAudio","SynthesisAudioMetadata","fromJSON","Metadata","t1","Type","WordBoundary","Bookmark","Viseme","onWordBoundaryEvent","Data","Offset","Length","currentTextOffset","onVisemeMetadataReceived","IsLastAnimation","VisemeId","getAndClearVisemeAnimation","t2","finish","onServiceTurnEndResponse","getAllReceivedAudioWithHeader","SynthesizingAudioCompleted","t3","synthesisCompleted","processTypeSpecificMessages","serviceEvents","onEvent","t4","isUnAuthorized","privConnectionPromise","state","Disconnected","privConnectionId","privAuthFetchEventId","onPreConnectionStart","authPromise","fetchOnExpiry","fetch","_callee6","response","_this3","_context6","onAuthCompleted","event","open","onConnectionEstablishCompleted","concat","parameters","getProperty","PropertyId","SpeechServiceConnection_Endpoint","_callee7","_context7","catch","_callee8","_this4","_context8","configureConnection","_callee9","_context9","SpeechServiceConfig","serialize","hasHeader","updateHeader","tmp","header","telemetryDataEnabled","NodePrototype","children","nodeTypes","element","domLvl1","tagName","childNodes","parentNode","previousSibling","nextSibling","nodeValue","cdata","comment","shorthand","val","ConnectionFactoryBase","config","queryParams","endpoint","setUrlParameter","SpeechServiceConnection_EnableAudioLogging","EnableAudioLogging","SpeechServiceResponse_RequestWordLevelTimestamps","EnableWordLevelTimestamps","SpeechServiceResponse_ProfanityOption","Profanity","SpeechServiceConnection_InitialSilenceTimeoutMs","InitialSilenceTimeoutMs","SpeechServiceConnection_EndSilenceTimeoutMs","EndSilenceTimeoutMs","SpeechServiceResponse_StablePartialResultThreshold","StableIntermediateThreshold","serviceProperties","parse","array","propId","parameterName","search","toLocaleLowerCase","region","startsWith","has","ownKeys","getOwnPropertyDescriptorModule","definePropertyModule","source","classof","arg","AudioSourceEvent","_PlatformEvent","eventName","audioSourceId","eventType","Info","privAudioSourceId","AudioSourceInitializingEvent","_AudioSourceEvent","AudioSourceReadyEvent","_AudioSourceEvent2","AudioSourceOffEvent","_AudioSourceEvent3","AudioSourceErrorEvent","_AudioSourceEvent4","_super5","privError","AudioStreamNodeEvent","_AudioSourceEvent5","_super6","audioNodeId","privAudioNodeId","AudioStreamNodeAttachingEvent","_AudioStreamNodeEvent","_super7","AudioStreamNodeAttachedEvent","_AudioStreamNodeEvent2","_super8","AudioStreamNodeDetachedEvent","_AudioStreamNodeEvent3","_super9","AudioStreamNodeErrorEvent","_AudioStreamNodeEvent4","_super10","ElementType","entities","foreignNames","elementNames","__proto__","attributeNames","unencodedElements","style","script","xmp","iframe","noembed","noframes","plaintext","noscript","singleTag","area","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","track","wbr","render","dom","opts","cheerio","output","elem","isTag","renderTag","Directive","renderDirective","Comment","renderComment","CDATA","renderCdata","renderText","foreignModeIntegrationPoints","xmlMode","parent","indexOf","assign","tag","attribs","attributes","decodeEntities","encodeXML","replace","formatAttrs","setPrototypeOf","subClass","superClass","writable","configurable","__esModule","$","$trimStart","start","FORCED","forcedStringTrimMethod","trimStart","proto","forced","trimLeft","PromiseCapability","C","promise","$$resolve","$$reject","CertCheckAgent","proxyInfo","privProxyInfo","privDiskCache","supportBuffer","location","process","SPEECH_OCSP_CACHE_ROOT","disableStapling","agent","Agent","CreateConnection","HostName","Port","request","socketPromise","enableOCSP","NODE_TLS_REJECT_UNAUTHORIZED","SPEECH_CONDUCT_OCSP_CHECK","secureEndpoint","requestOCSP","forceDisableOCSPStapling","servername","host","baseAgent","GetProxyAgent","socket","OCSPCheck","privMemCache","httpProxyOptions","port","UserName","Buffer","Password","ocspRequest","stapling","resolved","tlsSocket","cork","on","destroy","peer","issuer","sig","cacheEntry","getPeerCertificate","GetIssuer","generate","raw","GetResponseFromCache","VerifyOCSPResponse","uncork","issuerCertificate","fetchIssuer","signature","cachedResponse","diskCacheResponse","cachedOcspResponse","tbsData","cachedStartTime","cachedNextTime","minUpdate","isCached","StoreMemoryCacheEntry","parseResponse","tbsResponseData","responses","thisUpdate","nextUpdate","testTimeOffset","UpdateCache","cacheValue","ocspResponse","certID","GetOCSPResponse","StoreCacheEntry","req","rawResponse","StoreDiskCacheEntry","_this5","getAuthorityInfo","cert","uri","parsedUri","pathname","getResponse","shared","uid","find","elems","recurse","limit","childs","j","filter","isFinite","Infinity","findOneChild","l","findOne","existsOne","findAll","rootElems","stack","shift","unshift","fn","that","c","SpeechSynthesisOutputFormat","nameCache","VALID_TAG_REGEX","__importDefault","mod","escapeUTF8","escape","encodeNonAsciiHTML","encodeHTML","inverseXML","getInverseObj","xmlReplacer","getInverseReplacer","getASCIIEncoder","inverse","re","inverseHTML","htmlReplacer","obj","sort","reduce","single","multiple","_i","k","end","charCodeAt","count","splice","join","RegExp","reNonASCII","singleCharReplacer","getCodePoint","String","codePointAt","str","toUpperCase","reEscapeChars","flattenIntoArray","toObject","toLength","toInteger","arraySpeciesCreate","flat","depthArg","O","sourceLen","A","RawWebsocketMessage","privPayload","privMessageType","DESCRIPTORS","propertyIsEnumerableModule","createPropertyDescriptor","toIndexedObject","toPrimitive","IE8_DOM_DEFINE","nativeGetOwnPropertyDescriptor","_regeneratorRuntime","_defineProperty","_asyncToGenerator","_slicedToArray","_assertThisInitialized","_inherits","_possibleConstructorReturn","_getPrototypeOf","_wrapNativeSuper","enumerableOnly","getOwnPropertySymbols","symbols","sym","_objectSpread","getOwnPropertyDescriptors","defineProperties","core","StatusError","_Error","res","_len","params","_key","captureStackTrace","statusMessage","status","json","arrayBuffer","entries","_step$value","statusCodes","encoding","baseurl","_ref","_url","_headers","parsed","resp","_args","URL","username","Authorization","btoa","password","protocol","isView","Headers","_x","_x2","fails","createElement","index","transform","_isValidTagOrAttributeName2","props","_generatePropsFromAttributes2","_VoidElements2","_processNodes2","_react2","_interopRequireDefault","ButtonFixed","styled","div","disabled","ToTopButton","buttonText","useState","setIsHover","scrollPosition","setScrollPosition","handleScroll","position","pageYOffset","useEffect","addEventListener","passive","removeEventListener","opacity","cursor","onClick","scrollTo","top","behavior","onMouseEnter","onMouseLeave","className","AudioFormatTag","AudioStreamFormat","AudioStreamFormatImpl","getDefaultInputFormat","samplesPerSecond","bitsPerSample","channels","_AudioStreamFormat","samplesPerSec","PCM","setString","view","offset","setUint8","isWavFormat","formatTag","ALaw","MuLaw","avgBytesPerSec","blockAlign","max","privHeader","DataView","setUint32","setUint16","sampleRate","AudioContext","webkitAudioContext","navigator","mediaDevices","getSupportedConstraints","required","qs","slashes","protocolre","left","rules","address","NaN","ignore","hash","query","lolcation","loc","finaldestination","Url","unescape","href","extractProtocol","match","rest","parser","relative","extracted","instruction","instructions","url","charAt","split","last","up","hostname","auth","origin","part","pop","char","ins","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","noTargetGet","integer","internalObjectKeys","hiddenKeys","getOwnPropertyNames","ConnectionState","version","userAgent","versions","v8","iPrivConfig","BackgroundEvent","Events","privInstance","setEventSource","eventSource","getBuiltIn","trim","RestConfigBase","privDefaultRequestOptions","privDefaultParams","privRestErrors","Accept","ignoreCache","timeout","authInvalidSubscriptionKey","authInvalidSubscriptionRegion","invalidArgs","invalidCreateJoinConversationResponse","invalidParticipantRequest","permissionDeniedConnect","permissionDeniedConversation","permissionDeniedParticipant","permissionDeniedSend","permissionDeniedStart","apiVersion","authorization","clientAppId","contentTypeKey","correlationId","languageCode","nickname","profanity","roomId","sessionToken","subscriptionKey","subscriptionRegion","token","RestRequestType","RestMessageAdapter","configParams","privHeaders","privIgnoreCache","responseReceivedDeferral","requestCommand","File","handleRestResponse","d","ok","statusText","blobToArrayBuffer","blob","reader","FileReader","readAsArrayBuffer","onloadend","postData","sendRequest","Delete","Blob","Post","queryString","map","encodeURIComponent","headerKey","headerValue","headerMap","line","parts","SynthesisRestAdapter","SpeechServiceConnection_Region","hostSuffix","getHostSuffix","SpeechServiceConnection_Host","privUri","requestOptions","SpeechServiceConnection_Key","privRestAdapter","connectionId","setHeaders","Get","QueryParameterNames","BotId","CustomSpeechDeploymentId","CustomVoiceDeploymentId","EnableLanguageId","Format","Language","RequestBotStatusMessages","StableTranslation","TestHooks","SynthesisResult","privResultId","privReason","privErrorDetails","privProperties","List","list","privSubscriptionIdCounter","privAddSubscriptions","privRemoveSubscriptions","privDisposedSubscriptions","privDisposeReason","itemIndex","throwIfDisposed","privList","first","add","item","insertAt","triggerSubscriptions","removeFirst","removeAt","removeLast","remove","removedElements","clear","onAdded","addedCallback","subscriptionId","detach","onRemoved","removedCallback","onDisposed","disposedCallback","seperator","toArray","cloneCopy","any","where","all","select","selectList","filteredList","orderBy","compareFn","orderedArray","orderByDesc","clone","concatArray","isDisposed","subscriptions","SubscriberType","Queue","privPromiseStore","privIsDrainInProgress","privIsDisposing","enqueue","throwIfDispose","enqueueFromPromise","dequeue","deferredSubscriber","privSubscribers","deferral","Dequeue","drain","peek","Peek","subs","lists","subscriber","dequeuedItem","privDetachables","pendingItemProcessor","detachable","promiseArray","wrapper","finally","drainAndDispose","anObject","SPECIES","wellKnownSymbol","defaultConstructor","S","IS_NODE","V8_VERSION","SynthesisServiceType","SynthesizerConfig","speechServiceConfig","privSynthesisServiceType","Standard","privSpeechServiceConfig","privParameters","Input","button","success","selectIsFocused","hasOptions","SelectWrapper","OptionsWrapper","display","Option","InputSpan","span","Label","label","SelectContainer","ErrorMessage","InputInnerWrapper","Select","placeholder","onChange","showNoFeeback","textError","showCustomError","showSelection","setShowSelection","showError","setShowError","showSuccess","setShowSuccess","setSelectIsFocused","optionWrapperRef","useRef","handleMouseClick","document","current","contains","marginRight","ref","onFocus","onBlur","color","overflow","textOverflow","whiteSpace","maxWidth","fontSize","option","selectOption","privKeys","privValues","def","keyToUse","clonedMap","destinationCollection","testElement","tag_name","tag_type","tag_contains","Checks","getAttribCheck","attrib","combineFuncs","getElements","funcs","getElementById","getElementsByTagName","getElementsByTagType","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","includes","argument","ConnectionOpenResponse","privStatusCode","WebsocketMessageAdapter","messageFormatter","enableCompression","privConnectionState","privConnectionEstablishDeferral","privCertificateValidatedDeferral","Connecting","WebSocket","forceNpmWebSocket","perMessageDeflate","privEnableCompression","checkAgent","GetAgent","privWebsocketClient","binaryType","privReceivingMessageQueue","privDisconnectDeferral","privSendMessageQueue","processSendQueue","onopen","Connected","onerror","privLastErrorReceived","onclose","code","onClose","onmessage","networkReceivedTime","deferred","rawMessage","privMessageFormatter","toConnectionMessage","_rawMessage","messageSendStatusDeferral","messageSendDeferral","Message","sendStatusDeferral","sendRawMessage","sendItem","isWebsocketOpen","None","closeReason","pendingReceiveItem","pendingSendItem","itemToSend","readyState","OPEN","WebsocketConnection","queryParameters","privConnectionMessageAdapter","paramName","_val","ProxyInfo","proxyHostName","proxyPort","proxyUserName","proxyPassword","privProxyHostName","privProxyPort","privProxyUserName","privProxyPassword","SpeechServiceConnection_ProxyHostName","parseInt","SpeechServiceConnection_ProxyPort","SpeechServiceConnection_ProxyUserName","SpeechServiceConnection_ProxyPassword","fromParameters","SpeechSynthesisConnectionFactory","synthesisUri","authInfo","endpointId","SpeechServiceConnection_EndpointId","hostPrefix","SpeechServiceConnection_Url","WebsocketMessageFormatter","DomHandler","FeedHandler","init","what","getOneElement","getText","addConditionally","prop","isValidFeed","onend","feed","feedRoot","updated","items","entry","description","pubDate","substr","_handleCallback","IS_PURE","store","mode","copyright","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","_AudioOutputFormatImp","AudioOutputFormatImpl","_AudioStreamFormatImp","audioFormatString","priAudioFormatString","priRequestAudioFormatString","priHasHeader","audioLength","speechSynthesisOutputFormat","fromSpeechSynthesisOutputFormatString","SpeechSynthesisOutputFormatToString","speechSynthesisOutputFormatString","Siren","MP3","SILKSkype","OGG_OPUS","WEBM_OPUS","OPUS","FLAC","Raw8Khz8BitMonoMULaw","Riff16Khz16KbpsMonoSiren","Audio16Khz16KbpsMonoSiren","Audio16Khz32KBitRateMonoMp3","Audio16Khz128KBitRateMonoMp3","Audio16Khz64KBitRateMonoMp3","Audio24Khz48KBitRateMonoMp3","Audio24Khz96KBitRateMonoMp3","Audio24Khz160KBitRateMonoMp3","Raw16Khz16BitMonoTrueSilk","Riff16Khz16BitMonoPcm","Riff8Khz16BitMonoPcm","Riff24Khz16BitMonoPcm","Riff8Khz8BitMonoMULaw","Raw16Khz16BitMonoPcm","Raw24Khz16BitMonoPcm","Raw8Khz16BitMonoPcm","Ogg16Khz16BitMonoOpus","Ogg24Khz16BitMonoOpus","Raw48Khz16BitMonoPcm","Riff48Khz16BitMonoPcm","Audio48Khz96KBitRateMonoMp3","Audio48Khz192KBitRateMonoMp3","Ogg48Khz16BitMonoOpus","Webm16Khz16BitMonoOpus","Webm24Khz16BitMonoOpus","Webm24Khz16Bit24KbpsMonoOpus","Raw24Khz16BitMonoTrueSilk","Raw8Khz8BitMonoALaw","Riff8Khz8BitMonoALaw","Audio16Khz16Bit32KbpsMonoOpus","Audio24Khz16Bit48KbpsMonoOpus","Audio24Khz16Bit24KbpsMonoOpus","Tokenizer","formTags","optgroup","datalist","textarea","openImpliesClose","tr","th","td","thead","head","li","p","h1","h2","h3","h4","h5","h6","voidElements","foreignContextElements","math","svg","htmlIntegrationElements","mi","mo","mn","ms","mtext","foreignObject","title","re_nameEnd","_options","_tagname","_attribname","_attribvalue","_attribs","_stack","_foreignContext","startIndex","endIndex","_lowerCaseTagNames","lowerCaseTags","_lowerCaseAttributeNames","lowerCaseAttributeNames","_tokenizer","onparserinit","EventEmitter","_updatePosition","initialOffset","_sectionStart","getAbsoluteIndex","ontext","onopentagname","onclosetag","onopentag","onopentagend","_closeCurrentTag","pos","lastIndexOf","onselfclosingtag","recognizeSelfClosing","onattribname","onattribdata","onattribend","onattribute","_getInstructionName","idx","ondeclaration","onprocessinginstruction","oncomment","oncommentend","oncdata","recognizeCDATA","oncdatastart","oncdataend","reset","parseComplete","pause","resume","parseChunk","whitespace","ltrim","rtrim","TYPE","string","bitmap","decodeXMLStrict","decodeHTML5Strict","decodeHTML4Strict","decodeHTML5","decodeHTML4","decodeHTMLStrict","decodeHTML","decodeXML","encodeHTML5","encodeHTML4","encode","decodeStrict","decode","decode_1","encode_1","level","encode_2","decode_2","AudioInputStream","PushAudioInputStream","PullAudioInputStream","_AudioInputStream","PushAudioInputStreamImpl","_PushAudioInputStream","privEvents","audioNode","bufferData","readCycle","audioStreamChunk","XMLHttpRequest","toBuffer","stream","turnOn","turnOff","bitspersample","channelcount","connectivity","Unknown","manufacturer","model","samplerate","buf","alloc","_AudioInputStream2","PullAudioInputStreamImpl","_PullAudioInputStream","privIsClosed","privBufferSize","transmitBuff","readBuff","pulledBytes","ElementPrototype","getRandomValues","rnds8","rng","crypto","msCrypto","uuid","byteToHex","rnds","random","createNoDashGuid","removeElement","replaceElement","replacement","appendChild","child","sibling","append","currNext","prepend","isObject","originalArray","_typeof","assertThisInitialized","Contracts","throwIfNullOrWhitespace","NATIVE_WEAK_MAP","objectHas","sharedKey","WeakMap","wmget","wmhas","wmset","facade","STATE","enforce","getterFor","Parent","args","Class","_cache","Map","Wrapper","ArgumentNullError","argumentName","_Error2","InvalidOperationError","_Error3","ObjectDisposedError","objectName","_arr","_n","_d","_s","sliceIterator","inlineStyle","styleObject","stylePropertyValue","_stylePropertyValue$s","_stylePropertyValue$s2","_","character","decodeCodePoint","entityMap","legacyMap","xmlMap","TEXT","BEFORE_TAG_NAME","IN_TAG_NAME","IN_SELF_CLOSING_TAG","BEFORE_CLOSING_TAG_NAME","IN_CLOSING_TAG_NAME","AFTER_CLOSING_TAG_NAME","BEFORE_ATTRIBUTE_NAME","IN_ATTRIBUTE_NAME","AFTER_ATTRIBUTE_NAME","BEFORE_ATTRIBUTE_VALUE","IN_ATTRIBUTE_VALUE_DQ","IN_ATTRIBUTE_VALUE_SQ","IN_ATTRIBUTE_VALUE_NQ","BEFORE_DECLARATION","IN_DECLARATION","IN_PROCESSING_INSTRUCTION","BEFORE_COMMENT","IN_COMMENT","AFTER_COMMENT_1","AFTER_COMMENT_2","BEFORE_CDATA_1","BEFORE_CDATA_2","BEFORE_CDATA_3","BEFORE_CDATA_4","BEFORE_CDATA_5","BEFORE_CDATA_6","IN_CDATA","AFTER_CDATA_1","AFTER_CDATA_2","BEFORE_SPECIAL","BEFORE_SPECIAL_END","BEFORE_SCRIPT_1","BEFORE_SCRIPT_2","BEFORE_SCRIPT_3","BEFORE_SCRIPT_4","BEFORE_SCRIPT_5","AFTER_SCRIPT_1","AFTER_SCRIPT_2","AFTER_SCRIPT_3","AFTER_SCRIPT_4","AFTER_SCRIPT_5","BEFORE_STYLE_1","BEFORE_STYLE_2","BEFORE_STYLE_3","BEFORE_STYLE_4","AFTER_STYLE_1","AFTER_STYLE_2","AFTER_STYLE_3","AFTER_STYLE_4","BEFORE_ENTITY","BEFORE_NUMERIC_ENTITY","IN_NAMED_ENTITY","IN_NUMERIC_ENTITY","IN_HEX_ENTITY","SPECIAL_NONE","SPECIAL_SCRIPT","SPECIAL_STYLE","ifElseState","upper","SUCCESS","FAILURE","lower","_state","_index","consumeSpecialNameChar","NEXT_STATE","_buffer","_bufferOffset","_baseState","_special","_running","_ended","_xmlMode","_decodeEntities","_stateText","_getSection","_stateBeforeTagName","_stateInTagName","_emitToken","_stateBeforeCloseingTagName","_stateInCloseingTagName","_stateAfterCloseingTagName","_stateBeforeAttributeName","_stateInSelfClosingTag","_stateInAttributeName","_stateAfterAttributeName","_stateBeforeAttributeValue","_stateInAttributeValueDoubleQuotes","_stateInAttributeValueSingleQuotes","_stateInAttributeValueNoQuotes","_stateBeforeDeclaration","_stateInDeclaration","_stateInProcessingInstruction","_stateBeforeComment","_stateInComment","_stateAfterComment1","_stateAfterComment2","substring","_stateBeforeCdata1","_stateBeforeCdata2","_stateBeforeCdata3","_stateBeforeCdata4","_stateBeforeCdata5","_stateBeforeCdata6","_stateInCdata","_stateAfterCdata1","_stateAfterCdata2","_stateBeforeSpecial","_stateBeforeSpecialEnd","_stateBeforeScript1","_stateBeforeScript2","_stateBeforeScript3","_stateBeforeScript4","_stateBeforeScript5","_stateAfterScript1","_stateAfterScript2","_stateAfterScript3","_stateAfterScript4","_stateAfterScript5","_stateBeforeStyle1","_stateBeforeStyle2","_stateBeforeStyle3","_stateBeforeStyle4","_stateAfterStyle1","_stateAfterStyle2","_stateAfterStyle3","_stateAfterStyle4","_stateBeforeEntity","_stateBeforeNumericEntity","_parseNamedEntityStrict","entity","_emitPartial","_parseLegacyEntity","_stateInNamedEntity","_decodeNumericEntity","sectionStart","_stateInNumericEntity","_stateInHexEntity","_cleanup","_parse","_finish","_handleTrailingData","OCSPEvent","privSignature","OCSPMemoryCacheHitEvent","_OCSPEvent","Debug","OCSPCacheMissEvent","_OCSPEvent2","OCSPDiskCacheHitEvent","_OCSPEvent3","OCSPCacheUpdateNeededEvent","_OCSPEvent4","OCSPMemoryCacheStoreEvent","_OCSPEvent5","OCSPDiskCacheStoreEvent","_OCSPEvent6","OCSPCacheUpdateCompleteEvent","_OCSPEvent7","OCSPStapleReceivedEvent","_OCSPEvent8","OCSPCacheEntryExpiredEvent","_OCSPEvent10","_super11","serialNumber","expireTime","privExpireTime","OCSPCacheEntryNeedsRefreshEvent","_OCSPEvent11","_super12","startTime","privStartTime","OCSPCacheHitEvent","_OCSPEvent12","_super13","privExpireTimeString","toLocaleDateString","privStartTimeString","toLocaleTimeString","OCSPVerificationFailedEvent","_OCSPEvent13","_super14","OCSPCacheFetchErrorEvent","_OCSPEvent14","_super15","_this6","OCSPResponseRetrievedEvent","_OCSPEvent15","_super16","OCSPCacheUpdateErrorEvent","_OCSPEvent16","_super17","_this7","inspectSource","InternalStateModule","getInternalState","enforceInternalState","TEMPLATE","unsafe","simple","Script","Style","Tag","Doctype","accept","accesskey","action","allowfullscreen","allowtransparency","alt","as","async","autocomplete","autoplay","capture","cellpadding","cellspacing","charset","challenge","checked","cite","classid","class","cols","colspan","content","contenteditable","contextmenu","controls","controlsList","coords","crossorigin","datetime","defer","dir","download","draggable","enctype","form","formaction","formenctype","formmethod","formnovalidate","formtarget","frameborder","height","hidden","high","hreflang","for","icon","inputmode","integrity","is","keyparams","keytype","kind","lang","loop","low","manifest","marginheight","marginwidth","maxlength","media","mediagroup","minlength","muted","nonce","novalidate","optimum","pattern","playsinline","poster","preload","profile","radiogroup","readonly","referrerpolicy","rel","reversed","role","rows","rowspan","sandbox","scoped","scrolling","seamless","selected","shape","size","sizes","slot","spellcheck","src","srcdoc","srclang","srcset","summary","tabindex","usemap","width","wmode","about","datatype","inlist","prefix","resource","typeof","vocab","autocapitalize","autocorrect","autosave","itemprop","itemscope","itemtype","itemid","itemref","results","security","unselectable","htmlparser2","convertNodeToElement","processNodes","_processNodes","_convertNodeToElement","_htmlparser","_HtmlParser2","_elementTypes2","_elementTypes","textMessage","textContent","headerBodySplit","parseHeaders","binaryMessage","binaryContent","_body","dataView","headerLength","getInt16","headersString","fromCharCode","getInt8","makeHeaders","headerBuffer","stringToArrayBuffer","headerInt8Array","payloadInt8Array","bodyInt8Array","_payload","headerMatches","separatorIndex","getOuterHTML","getInnerHTML","WritableStream","Writable","StringDecoder","_parser","decoder","_decoder","decodeStrings","once","_write","cb","defineProp","DefaultHandler","parseDOM","handler","parseFeed","createDomStream","elementCb","attribute","cdatastart","cdataend","processinginstruction","commentend","closetag","opentag","opentagname","Root","functionToString","_ElementType$Text$Ele","_TextElementType2","_TagElementType2","_StyleElementType2","_UnsupportedElementType2","RecognitionMode","SpeechResultFormat","context","recognition","Context","os","system","System","build","OS","platform","styles","postfix","SpeechSynthesisEvent","PlatformEvent","_SpeechSynthesisEvent","SynthesisTriggeredEvent","sessionAudioDestinationId","turnAudioDestinationId","privSessionAudioDestinationId","privTurnAudioDestinationId","_SpeechSynthesisEvent2","ConnectingToSynthesisServiceEvent","authFetchEventId","_SpeechSynthesisEvent3","SynthesisStartedEvent","privIsSynthesizing","privIsSynthesisEnded","privBytesReceived","privInTurn","privNextSearchTextIndex","isError","onComplete","responseJson","privTurnDeferral","privAudioOutputStream","privTurnAudioDestination","privReceivedAudio","readAllAudioFromStream","privReceivedAudioWithHeader","getAllReceivedAudio","rawText","privRawText","privIsSSML","privPartialVisemeAnimation","updateTextOffset","AnimationChunk","bytesReceived","feature","detection","normalize","POLYFILL","NATIVE","MessageType","privBody","privSize","nativeDefineProperty","Attributes","entities_json_1","legacy_json_1","xml_json_1","decode_codepoint_1","strictEntityRe","getStrictDecoder","getReplacer","sorter","secondChar","legacy","replacer","ReferenceError","CognitiveTokenAuthentication","fetchCallback","fetchOnExpiryCallback","privFetchCallback","privTokenPrefix","privFetchOnExpiryCallback","decodeMap","codePoint","decodeURIComponent","pairs","isNaN","isNativeFunction","original","depth","mapper","targetIndex","sourceIndex","mapFn","NativePromise","speciesConstructor","promiseResolve","real","onFinally","isFunction","x","getChildren","getParent","getSiblings","getAttributeValue","hasAttrib","getName","ceil","floor","removeSubsets","nodes","ancestor","POSITION","comparePos","compareDocumentPosition","nodeA","nodeB","sharedParent","siblings","aSibling","bSibling","aParents","bParents","uniqueSort","decode_json_1","fromCodePoint","_isEmptyTextNode2","transformed","_convertNodeToElement2","privEventListeners","eventId","onEventCallback","attachListener","listener","privMetadata","html","_ref$decodeEntities","_ref$preprocessNodes","preprocessNodes","_htmlparser2","PromiseState","Deferred","privResolve","privReject","privPromise","marshalPromiseToCallbacks","typedError","MetadataType","privSynthesisAudioMetadata","isNativeReflectConstruct","_construct","re_whitespace","elementCB","defaultOpts","_callback","_elementCB","_done","_tagStack","normalizeWhitespace","withStartIndices","withEndIndices","_createDomElement","withDomLvl1","_addDomElement","lastTag","ignoreWhitespace","OutputFormat","ProfanityOption","Container","showSlider","css","isDescriptionScreen","SlideShowWrapper","GaleryWrapper","LeftGalery","RightGalery","TextDescription","TitleWrapper","TextWrapper","NavButtonWrapper","NavButton","ButtonTextWrapper","WrapperHeaderControls","ButtonSecondary","BackButton","ImageLeft","breakpoints","xs","md","mx","ImageRight","sm","DisclaimerWrapper","isShowing","Disclaimer","disclaimer_text","t","_AudioFormatToMimeTyp","SpeechConfig","speechImpl","SpeechServiceConnection_IntentRegion","throwIfNull","hostName","authorizationToken","_SpeechConfig","SpeechConfigImpl","speechRecognitionLanguage","Simple","SpeechServiceAuthorization_Token","SpeechServiceConnection_RecoLanguage","SpeechServiceConnection_AutoDetectSourceLanguages","channel","currentProperties","ret","SpeechServiceConnection_SynthLanguage","SpeechServiceConnection_SynthVoice","voice","SpeechServiceConnection_SynthOutputFormat","AudioFormatToMimeType","SpeakerAudioDestination","audioDestinationId","privPlaybackStarted","privAppendingToBuffer","privMediaSourceOpened","privIsPaused","privAudioBuffer","updateSourceBuffer","privSourceBuffer","handleSourceBufferUpdateEnd","receivedAudio","audioBlob","privAudio","createObjectURL","notifyPlayback","console","warn","onAudioEnd","mimeType","MediaSource","isTypeSupported","Audio","privMediaSource","load","onsourceopen","duration","addSourceBuffer","onupdate","onupdateend","onupdatestart","volume","currentTime","play","binary","sourceBufferAvailable","appendBuffer","log","canEndStream","endOfStream","onAudioStart","onended","updating","RiffPcmEncoder","actualSampleRate","desiredSampleRate","actualAudioFrame","audioFrame","downSampleAudioFrame","privActualSampleRate","privDesiredSampleRate","floatTo16BitPCM","setInt16","srcFrame","srcRate","dstRate","ratio","dstLength","round","dstFrame","Float32Array","srcOffset","dstOffset","nextSrcOffset","accum","PcmRecorder","stopInputOnRelease","record","mediaStream","outputStream","waveStreamEncoder","micInput","createMediaStreamSource","privSpeechProcessorScript","attachScriptProcessor","scriptNode","bufferSize","createScriptProcessor","audioSampleRate","onaudioprocess","inputFrame","inputBuffer","getChannelData","waveFrame","connect","destination","privMediaResources","scriptProcessorNode","audioWorklet","addModule","workletNode","AudioWorkletNode","releaseMediaResources","disconnect","privStopInputOnRelease","getTracks","MicAudioSource","privRecorder","deviceId","privStreams","privInitializeDeferral","createAudioContext","nav","getUserMedia","webkitGetUserMedia","mozGetUserMedia","msGetUserMedia","constraints","errorCallback","privMediaStream","active","video","errorMsg","listen","privOutputChunkSize","getAudioContext","AUDIOFORMAT","privIsClosing","destroyAudioContext","getMicrophoneLabel","Microphones","setWorkletUrl","privMicrophoneLabel","microphoneDeviceId","getSettings","enumerateDevices","devices","device","hasClose","suspend","FileAudioSource","file","filename","privHeaderEnd","privFilename","upload","privSource","privAudioFormatPromise","readHeader","headerResult","processHeader","getWord","getUint8","formatSize","getInt32","channelCount","getUint16","getUint32","maxHeaderSize","getWaveFormatPCM","onload","h","byteOffset","processFile","buff","fileBuffer","PullAudioInputStreamCallback","PushAudioOutputStreamCallback","AudioFileWriter","privFd","throwIfNotUndefined","privAudioFormat","headerOffset","privWriteStream","fd","autoClose","bytesWritten","SynthesisVoiceGender","SynthesisVoiceType","AudioConfig","pcmRecorder","audioStream","MediaStream","player","fromDefaultSpeakerOutput","_AudioConfig","AudioConfigImpl","deviceInfo","_AudioConfig2","AudioOutputConfigImpl","privDestination","VoiceInfo","privStyleList","privVoicePath","privName","Name","privLocale","Locale","privShortName","ShortName","privLocalName","LocalName","privVoiceType","VoiceType","endsWith","OnlineStandard","OnlineNeural","privGender","Gender","Male","Female","StyleList","SynthesisVoicesResult","VoicesListRetrieved","privVoices","SpeechSynthesizer","speechConfig","audioConfig","speechConfigImpl","privDisposed","privSynthesizing","synthesisRequestQueue","implCommonSynthesizeSetup","_languageToDefaultVoi","languageToDefaultVoice","XMLEncode","speakImpl","locale","getVoices","privAdapter","disposing","osPlatform","osName","osVersion","appVersion","createSynthesizerConfig","CognitiveSubscriptionKeyAuthentication","createSynthesisAdapter","AudioOutputFormat","fromSpeechSynthesisOutputFormat","IsSsml","dataStream","adapterSpeak","getVoicesList","Speak","autoDetectSourceLanguageConfig","mergeTo","SynthesisRequest","voiceTypeTo","FranciscaNeuralBrazil","AntonioNeuralBrazil","ElenaNeuralArgentina","TomasNeuralArgentina","CatalinaNeuralChile","LorenzoNeuralChile","SalomeNeuralColombia","GonzaloNeuralColombia","SynthesizeSpeech","voiceType","sdk","fromSubscription","fromSpeakerOutput","synthesizer","textToSpeech","speed","cleanText","speakSsmlAsync","cancel","ImageShow","isVideo","CloseWrapper","MainGallery","ImageMain","main","ImageMainDouble","MainHalf","PlayVideoGalleryWrapper","right","TextToSpeechWrapper","Description","features","car","envs","clusters","setShowSlider","featurePage","basePath","featuresPerCluster","setFeaturesPerCluster","orderFeatures","setOrderFeatures","FEATURE_CLUSTER","Cluster_Name","setSelectedCluster","currentIndex","setCurrentIndex","lastIndex","setLastIndex","setShowVideo","selectedSlide","setSelectedSlide","changeSlider","setChangeSlider","synthesizeSpeech","setSynthesizeSpeech","started","setStarted","isPlaying","setIsPlaying","voice_type","_basePath","playTextToSpeech","percentage","gtag","event_category","CATEGORY","category_slug","car_name","event_label","Feature_Description","pauseTextToSpeech","tempFeaturesPerCluster","sortByObjectValue","cluster","clusterName","existingArray","featureA","Feature_Name","featureB","findIndex","openVideo","media1","media_1","Image_or_Video_Cover","media2","media_2","media3","media_3","goBackItem","nextIndex","nextFeature","modelYearSlug","slugify","Year_Model","Full_Name","navigateLink","urlParams","URLSearchParams","navigate","goForwardItem","openSlider","slideNumber","prevState","useBreakpoint","GalleryPictures","flexDirection","st","Media_Type","marginBottom","ItemChar","navigate_back_button_text","firstFeature","select_cluster_label","next_feature_button_text","back_feature_button_text","justifyContent","marginTop","margin","text_to_speech_listen_to_text_button","text_to_speech_pause_text_button","text_to_speech_continue_text_button","ReactHtmlParser","marginLeft","Disclaimer_text","SlideShow","activeItemIndex","setActiveItemIndex","useLayoutEffect","Vimeo","Player","completed25","completed50","completed75","completed100","progress","percent","Slider","slides","noSlither","currentMedia","Vimeo_URL","webkitAllowFullScreen","mozAllowFullScreen","allowFullScreen","onLoad","allow","videoUrl","ItemCharacteristic","pageContext","website","website_info","metatag_title","metatag_description","metatag_language","Privacy_policy_url","has_cookie_consent","go_to_top_button_text","privacy_policy_text","privacy_policy_subtext","privacy_policy_accept_button_text","feature_name","React","subtitle","site","SITE","Header","isNotHome","modelPage","feature_page","Footer","privacyPolicyUrl","footer","ToTop","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","privIsWriteEnded","privIsReadEnded","privReaderQueue","streamChunk","throwIfClosed","EventType","privEventId","privEventTime","privEventType","ProxyHandler","_defineProperties","_createClass","protoProps","staticProps","ServiceEvent","jsonstring","privJsonResult","ConnectionEvent","_PlatformEvent2","ConnectionStartEvent","_ConnectionEvent","ConnectionEstablishedEvent","_ConnectionEvent2","ConnectionClosedEvent","_ConnectionEvent3","ConnectionErrorEvent","_ConnectionEvent4","privMessage","privType","ConnectionMessageReceivedEvent","_ConnectionEvent6","networkReceivedTimeISO","privNetworkReceivedTime","ConnectionMessageSentEvent","_ConnectionEvent7","networkSentTimeISO","_this8","privNetworkSentTime","PREFERRED_STRING","_extends","_htmlAttributesToReact2","_inlineStyleToObject2","AuthInfo","privHeaderName","privToken","privAuthInfo","whitespaces","METHOD_NAME","asyncGeneratorStep","gen","_next","_throw","info","names","EXISTS","encodings","Set","mkrequest","msg","newPromiseCapability","promiseCapability","attr","mappedAttributes","lowerCaseAttribute","_ReactAttributes2","_BooleanAttributes2","getParsedAttributeValue"],"mappings":"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","file":"component---src-templates-v-1-item-characteristic-js-358b1073c75925d59341.js","sourcesContent":["import superPropBase from \"./superPropBase.js\";\nexport default function _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get;\n } else {\n _get = function _get(target, property, receiver) {\n var base = superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get(target, property, receiver || target);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nexport default function _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n}","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _get from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/get\";\nimport _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { Stream } from \"./Exports\";\nexport var ChunkedArrayBufferStream = /*#__PURE__*/function (_Stream) {\n _inherits(ChunkedArrayBufferStream, _Stream);\n\n var _super = _createSuper(ChunkedArrayBufferStream);\n\n function ChunkedArrayBufferStream(targetChunkSize, streamId) {\n var _this;\n\n _classCallCheck(this, ChunkedArrayBufferStream);\n\n _this = _super.call(this, streamId);\n _this.privTargetChunkSize = targetChunkSize;\n _this.privNextBufferReadyBytes = 0;\n return _this;\n }\n\n _createClass(ChunkedArrayBufferStream, [{\n key: \"writeStreamChunk\",\n value: function writeStreamChunk(chunk) {\n // No pending write, and the buffer is the right size so write it.\n if (chunk.isEnd || 0 === this.privNextBufferReadyBytes && chunk.buffer.byteLength === this.privTargetChunkSize) {\n _get(_getPrototypeOf(ChunkedArrayBufferStream.prototype), \"writeStreamChunk\", this).call(this, chunk);\n\n return;\n }\n\n var bytesCopiedFromBuffer = 0;\n\n while (bytesCopiedFromBuffer < chunk.buffer.byteLength) {\n // Fill the next buffer.\n if (undefined === this.privNextBufferToWrite) {\n this.privNextBufferToWrite = new ArrayBuffer(this.privTargetChunkSize);\n this.privNextBufferStartTime = chunk.timeReceived;\n } // Find out how many bytes we can copy into the read buffer.\n\n\n var bytesToCopy = Math.min(chunk.buffer.byteLength - bytesCopiedFromBuffer, this.privTargetChunkSize - this.privNextBufferReadyBytes);\n var targetView = new Uint8Array(this.privNextBufferToWrite);\n var sourceView = new Uint8Array(chunk.buffer.slice(bytesCopiedFromBuffer, bytesToCopy + bytesCopiedFromBuffer));\n targetView.set(sourceView, this.privNextBufferReadyBytes);\n this.privNextBufferReadyBytes += bytesToCopy;\n bytesCopiedFromBuffer += bytesToCopy; // Are we ready to write?\n\n if (this.privNextBufferReadyBytes === this.privTargetChunkSize) {\n _get(_getPrototypeOf(ChunkedArrayBufferStream.prototype), \"writeStreamChunk\", this).call(this, {\n buffer: this.privNextBufferToWrite,\n isEnd: false,\n timeReceived: this.privNextBufferStartTime\n });\n\n this.privNextBufferReadyBytes = 0;\n this.privNextBufferToWrite = undefined;\n }\n }\n }\n }, {\n key: \"close\",\n value: function close() {\n // Send whatever is pending, then close the base class.\n if (0 !== this.privNextBufferReadyBytes && !this.isClosed) {\n _get(_getPrototypeOf(ChunkedArrayBufferStream.prototype), \"writeStreamChunk\", this).call(this, {\n buffer: this.privNextBufferToWrite.slice(0, this.privNextBufferReadyBytes),\n isEnd: false,\n timeReceived: this.privNextBufferStartTime\n });\n }\n\n _get(_getPrototypeOf(ChunkedArrayBufferStream.prototype), \"close\", this).call(this);\n }\n }]);\n\n return ChunkedArrayBufferStream;\n}(Stream);","var DomUtils = module.exports;\n[require(\"./lib/stringify\"), require(\"./lib/traversal\"), require(\"./lib/manipulation\"), require(\"./lib/querying\"), require(\"./lib/legacy\"), require(\"./lib/helpers\")].forEach(function (ext) {\n Object.keys(ext).forEach(function (key) {\n DomUtils[key] = ext[key].bind(DomUtils);\n });\n});","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n /* global Symbol -- safe */\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","module.exports = {};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","module.exports = Stream;\n\nvar Parser = require(\"./WritableStream.js\");\n\nfunction Stream(options) {\n Parser.call(this, new Cbs(this), options);\n}\n\nrequire(\"inherits\")(Stream, Parser);\n\nStream.prototype.readable = true;\n\nfunction Cbs(scope) {\n this.scope = scope;\n}\n\nvar EVENTS = require(\"../\").EVENTS;\n\nObject.keys(EVENTS).forEach(function (name) {\n if (EVENTS[name] === 0) {\n Cbs.prototype[\"on\" + name] = function () {\n this.scope.emit(name);\n };\n } else if (EVENTS[name] === 1) {\n Cbs.prototype[\"on\" + name] = function (a) {\n this.scope.emit(name, a);\n };\n } else if (EVENTS[name] === 2) {\n Cbs.prototype[\"on\" + name] = function (a, b) {\n this.scope.emit(name, a, b);\n };\n } else {\n throw Error(\"wrong number of arguments!\");\n }\n});","module.exports = CollectingHandler;\n\nfunction CollectingHandler(cbs) {\n this._cbs = cbs || {};\n this.events = [];\n}\n\nvar EVENTS = require(\"./\").EVENTS;\n\nObject.keys(EVENTS).forEach(function (name) {\n if (EVENTS[name] === 0) {\n name = \"on\" + name;\n\n CollectingHandler.prototype[name] = function () {\n this.events.push([name]);\n if (this._cbs[name]) this._cbs[name]();\n };\n } else if (EVENTS[name] === 1) {\n name = \"on\" + name;\n\n CollectingHandler.prototype[name] = function (a) {\n this.events.push([name, a]);\n if (this._cbs[name]) this._cbs[name](a);\n };\n } else if (EVENTS[name] === 2) {\n name = \"on\" + name;\n\n CollectingHandler.prototype[name] = function (a, b) {\n this.events.push([name, a, b]);\n if (this._cbs[name]) this._cbs[name](a, b);\n };\n } else {\n throw Error(\"wrong number of arguments\");\n }\n});\n\nCollectingHandler.prototype.onreset = function () {\n this.events = [];\n if (this._cbs.onreset) this._cbs.onreset();\n};\n\nCollectingHandler.prototype.restart = function () {\n if (this._cbs.onreset) this._cbs.onreset();\n\n for (var i = 0, len = this.events.length; i < len; i++) {\n if (this._cbs[this.events[i][0]]) {\n var num = this.events[i].length;\n\n if (num === 1) {\n this._cbs[this.events[i][0]]();\n } else if (num === 2) {\n this._cbs[this.events[i][0]](this.events[i][1]);\n } else {\n this._cbs[this.events[i][0]](this.events[i][1], this.events[i][2]);\n }\n }\n }\n};","import _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\nimport _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _regeneratorRuntime from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/regenerator\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}; // tslint:disable:max-classes-per-file\n\n\nimport { createNoDashGuid, Stream } from \"../../common/Exports\";\nimport { Contracts } from \"../Contracts\";\nimport { AudioOutputFormatImpl } from \"./AudioOutputFormat\";\n/**\n * Represents audio output stream used for custom audio output configurations.\n * @class AudioOutputStream\n */\n\nexport var AudioOutputStream = /*#__PURE__*/function () {\n /**\n * Creates and initializes an instance.\n * @constructor\n */\n function AudioOutputStream() {\n _classCallCheck(this, AudioOutputStream);\n }\n /**\n * Creates a memory backed PullAudioOutputStream with the specified audio format.\n * @member AudioOutputStream.createPullStream\n * @function\n * @public\n * @returns {PullAudioOutputStream} The audio output stream being created.\n */\n\n\n _createClass(AudioOutputStream, null, [{\n key: \"createPullStream\",\n value: function createPullStream() {\n return PullAudioOutputStream.create();\n }\n }]);\n\n return AudioOutputStream;\n}();\n/**\n * Represents memory backed push audio output stream used for custom audio output configurations.\n * @class PullAudioOutputStream\n */\n\nexport var PullAudioOutputStream = /*#__PURE__*/function (_AudioOutputStream) {\n _inherits(PullAudioOutputStream, _AudioOutputStream);\n\n var _super = _createSuper(PullAudioOutputStream);\n\n function PullAudioOutputStream() {\n _classCallCheck(this, PullAudioOutputStream);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(PullAudioOutputStream, null, [{\n key: \"create\",\n value:\n /**\n * Creates a memory backed PullAudioOutputStream with the specified audio format.\n * @member PullAudioOutputStream.create\n * @function\n * @public\n * @returns {PullAudioOutputStream} The push audio output stream being created.\n */\n function create() {\n return new PullAudioOutputStreamImpl();\n }\n }]);\n\n return PullAudioOutputStream;\n}(AudioOutputStream);\n/**\n * Represents memory backed push audio output stream used for custom audio output configurations.\n * @private\n * @class PullAudioOutputStreamImpl\n */\n\nexport var PullAudioOutputStreamImpl = /*#__PURE__*/function (_PullAudioOutputStrea) {\n _inherits(PullAudioOutputStreamImpl, _PullAudioOutputStrea);\n\n var _super2 = _createSuper(PullAudioOutputStreamImpl);\n\n /**\n * Creates and initializes an instance with the given values.\n * @constructor\n */\n function PullAudioOutputStreamImpl() {\n var _this;\n\n _classCallCheck(this, PullAudioOutputStreamImpl);\n\n _this = _super2.call(this);\n _this.privId = createNoDashGuid();\n _this.privStream = new Stream();\n return _this;\n }\n /**\n * Sets the format information to the stream. For internal use only.\n * @param {AudioStreamFormat} format - the format to be set.\n */\n\n\n _createClass(PullAudioOutputStreamImpl, [{\n key: \"format\",\n get:\n /**\n * Format information for the audio\n */\n function get() {\n return this.privFormat;\n }\n /**\n * Checks if the stream is closed\n * @member PullAudioOutputStreamImpl.prototype.isClosed\n * @property\n * @public\n */\n ,\n set: function set(format) {\n if (format === undefined || format === null) {\n this.privFormat = AudioOutputFormatImpl.getDefaultOutputFormat();\n }\n\n this.privFormat = format;\n }\n }, {\n key: \"isClosed\",\n get: function get() {\n return this.privStream.isClosed;\n }\n /**\n * Gets the id of the stream\n * @member PullAudioOutputStreamImpl.prototype.id\n * @property\n * @public\n */\n\n }, {\n key: \"id\",\n value: function id() {\n return this.privId;\n }\n /**\n * Reads audio data from the internal buffer.\n * @member PullAudioOutputStreamImpl.prototype.read\n * @function\n * @public\n * @param {ArrayBuffer} dataBuffer - An ArrayBuffer to store the read data.\n * @returns {Promise} - Audio buffer length has been read.\n */\n\n }, {\n key: \"read\",\n value: function read(dataBuffer) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var intView, totalBytes, chunk, tmpBuffer;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n intView = new Int8Array(dataBuffer);\n totalBytes = 0;\n\n if (!(this.privLastChunkView !== undefined)) {\n _context.next = 10;\n break;\n }\n\n if (!(this.privLastChunkView.length > dataBuffer.byteLength)) {\n _context.next = 7;\n break;\n }\n\n intView.set(this.privLastChunkView.slice(0, dataBuffer.byteLength));\n this.privLastChunkView = this.privLastChunkView.slice(dataBuffer.byteLength);\n return _context.abrupt(\"return\", Promise.resolve(dataBuffer.byteLength));\n\n case 7:\n intView.set(this.privLastChunkView);\n totalBytes = this.privLastChunkView.length;\n this.privLastChunkView = undefined;\n\n case 10:\n if (!(totalBytes < dataBuffer.byteLength && !this.privStream.isReadEnded)) {\n _context.next = 25;\n break;\n }\n\n _context.next = 13;\n return this.privStream.read();\n\n case 13:\n chunk = _context.sent;\n\n if (!(chunk !== undefined && !chunk.isEnd)) {\n _context.next = 21;\n break;\n }\n\n tmpBuffer = void 0;\n\n if (chunk.buffer.byteLength > dataBuffer.byteLength - totalBytes) {\n tmpBuffer = chunk.buffer.slice(0, dataBuffer.byteLength - totalBytes);\n this.privLastChunkView = new Int8Array(chunk.buffer.slice(dataBuffer.byteLength - totalBytes));\n } else {\n tmpBuffer = chunk.buffer;\n }\n\n intView.set(new Int8Array(tmpBuffer), totalBytes);\n totalBytes += tmpBuffer.byteLength;\n _context.next = 23;\n break;\n\n case 21:\n _context.next = 23;\n return this.privStream.readEnded();\n\n case 23:\n _context.next = 10;\n break;\n\n case 25:\n return _context.abrupt(\"return\", totalBytes);\n\n case 26:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n }\n /**\n * Writes the audio data specified by making an internal copy of the data.\n * @member PullAudioOutputStreamImpl.prototype.write\n * @function\n * @public\n * @param {ArrayBuffer} dataBuffer - The audio buffer of which this function will make a copy.\n */\n\n }, {\n key: \"write\",\n value: function write(dataBuffer) {\n Contracts.throwIfNullOrUndefined(this.privStream, \"must set format before writing\");\n this.privStream.writeStreamChunk({\n buffer: dataBuffer,\n isEnd: false,\n timeReceived: Date.now()\n });\n }\n /**\n * Closes the stream.\n * @member PullAudioOutputStreamImpl.prototype.close\n * @function\n * @public\n */\n\n }, {\n key: \"close\",\n value: function close() {\n this.privStream.close();\n }\n }]);\n\n return PullAudioOutputStreamImpl;\n}(PullAudioOutputStream);\n/*\n * Represents audio output stream used for custom audio output configurations.\n * @class PushAudioOutputStream\n */\n\nexport var PushAudioOutputStream = /*#__PURE__*/function (_AudioOutputStream2) {\n _inherits(PushAudioOutputStream, _AudioOutputStream2);\n\n var _super3 = _createSuper(PushAudioOutputStream);\n\n /**\n * Creates and initializes and instance.\n * @constructor\n */\n function PushAudioOutputStream() {\n _classCallCheck(this, PushAudioOutputStream);\n\n return _super3.call(this);\n }\n /**\n * Creates a PushAudioOutputStream that delegates to the specified callback interface for\n * write() and close() methods.\n * @member PushAudioOutputStream.create\n * @function\n * @public\n * @param {PushAudioOutputStreamCallback} callback - The custom audio output object,\n * derived from PushAudioOutputStreamCallback\n * @returns {PushAudioOutputStream} The push audio output stream being created.\n */\n\n\n _createClass(PushAudioOutputStream, null, [{\n key: \"create\",\n value: function create(callback) {\n return new PushAudioOutputStreamImpl(callback);\n }\n }]);\n\n return PushAudioOutputStream;\n}(AudioOutputStream);\n/**\n * Represents audio output stream used for custom audio output configurations.\n * @private\n * @class PushAudioOutputStreamImpl\n */\n\nexport var PushAudioOutputStreamImpl = /*#__PURE__*/function (_PushAudioOutputStrea) {\n _inherits(PushAudioOutputStreamImpl, _PushAudioOutputStrea);\n\n var _super4 = _createSuper(PushAudioOutputStreamImpl);\n\n /**\n * Creates a PushAudioOutputStream that delegates to the specified callback interface for\n * read() and close() methods.\n * @constructor\n * @param {PushAudioOutputStreamCallback} callback - The custom audio output object,\n * derived from PushAudioOutputStreamCallback\n */\n function PushAudioOutputStreamImpl(callback) {\n var _this2;\n\n _classCallCheck(this, PushAudioOutputStreamImpl);\n\n _this2 = _super4.call(this);\n _this2.privId = createNoDashGuid();\n _this2.privCallback = callback;\n return _this2;\n } // tslint:disable-next-line:no-empty\n\n\n _createClass(PushAudioOutputStreamImpl, [{\n key: \"format\",\n set: function set(format) {}\n }, {\n key: \"write\",\n value: function write(buffer) {\n if (!!this.privCallback.write) {\n this.privCallback.write(buffer);\n }\n }\n }, {\n key: \"close\",\n value: function close() {\n if (!!this.privCallback.close) {\n this.privCallback.close();\n }\n }\n }, {\n key: \"id\",\n value: function id() {\n return this.privId;\n }\n }]);\n\n return PushAudioOutputStreamImpl;\n}(PushAudioOutputStream);","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n// Make sure not to export internal modules.\n//\nexport * from \"./CognitiveSubscriptionKeyAuthentication\";\nexport * from \"./CognitiveTokenAuthentication\";\nexport * from \"./IAuthentication\";\nexport * from \"./IConnectionFactory\";\nexport * from \"./ISynthesisConnectionFactory\";\nexport * from \"./IntentConnectionFactory\";\nexport * from \"./RecognitionEvents\";\nexport * from \"./ServiceRecognizerBase\";\nexport * from \"./RecognizerConfig\";\nexport * from \"./SpeechServiceInterfaces\";\nexport * from \"./WebsocketMessageFormatter\";\nexport * from \"./SpeechConnectionFactory\";\nexport * from \"./TranscriberConnectionFactory\";\nexport * from \"./TranslationConnectionFactory\";\nexport * from \"./SpeechSynthesisConnectionFactory\";\nexport * from \"./EnumTranslation\";\nexport * from \"./ServiceMessages/Enums\";\nexport * from \"./ServiceMessages/TranslationSynthesisEnd\";\nexport * from \"./ServiceMessages/TranslationHypothesis\";\nexport * from \"./ServiceMessages/TranslationPhrase\";\nexport * from \"./TranslationServiceRecognizer\";\nexport * from \"./ServiceMessages/SpeechDetected\";\nexport * from \"./ServiceMessages/SpeechHypothesis\";\nexport * from \"./ServiceMessages/SpeechKeyword\";\nexport * from \"./SpeechServiceRecognizer\";\nexport * from \"./TranscriptionServiceRecognizer\";\nexport * from \"./ServiceMessages/DetailedSpeechPhrase\";\nexport * from \"./ServiceMessages/SimpleSpeechPhrase\";\nexport * from \"./AddedLmIntent\";\nexport * from \"./IntentServiceRecognizer\";\nexport * from \"./ServiceMessages/IntentResponse\";\nexport * from \"./RequestSession\";\nexport * from \"./SpeechContext\";\nexport * from \"./DynamicGrammarBuilder\";\nexport * from \"./DynamicGrammarInterfaces\";\nexport * from \"./DialogServiceAdapter\";\nexport * from \"./AgentConfig\";\nexport * from \"./Transcription/Exports\";\nexport * from \"./ServiceMessages/SynthesisAudioMetadata\";\nexport * from \"./SynthesisTurn\";\nexport * from \"./SynthesisAdapterBase\";\nexport * from \"./SynthesisRestAdapter\";\nexport * from \"./SynthesizerConfig\";\nexport * from \"./SynthesisContext\";\nexport * from \"./SpeakerRecognitionConfig\";\nexport * from \"./SpeakerIdMessageAdapter\";\nexport var OutputFormatPropertyName = \"OutputFormat\";\nexport var CancellationErrorCodePropertyName = \"CancellationErrorCode\";\nexport var ServicePropertiesPropertyName = \"ServiceProperties\";\nexport var ForceDictationPropertyName = \"ForceDictation\";\nexport var AutoDetectSourceLanguagesOpenRangeOptionName = \"OpenRange\";","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = TextElementType;\n/**\n * Converts a text node to a React text element\n *\n * @param {Object} node The text node\n * @returns {String} The text\n */\n\nfunction TextElementType(node) {\n // React will accept plain text for rendering so just return the node data\n return node.data;\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n /* global globalThis -- safe */\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Represents the JSON used in the synthesis.context message sent to the speech service.\n * The dynamic grammar is always refreshed from the encapsulated dynamic grammar object.\n */\nexport var SynthesisContext = /*#__PURE__*/function () {\n function SynthesisContext(speechSynthesizer) {\n _classCallCheck(this, SynthesisContext);\n\n this.privContext = {};\n this.privSpeechSynthesizer = speechSynthesizer;\n }\n /**\n * Adds a section to the synthesis.context object.\n * @param sectionName Name of the section to add.\n * @param value JSON serializable object that represents the value.\n */\n\n\n _createClass(SynthesisContext, [{\n key: \"setSection\",\n value: function setSection(sectionName, value) {\n this.privContext[sectionName] = value;\n }\n /**\n * Sets the audio output format for synthesis context generation.\n * @param format {AudioOutputFormatImpl} the output format\n */\n\n }, {\n key: \"audioOutputFormat\",\n set: function set(format) {\n this.privAudioOutputFormat = format;\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n var synthesisSection = this.buildSynthesisContext();\n this.setSection(\"synthesis\", synthesisSection);\n return JSON.stringify(this.privContext);\n }\n }, {\n key: \"buildSynthesisContext\",\n value: function buildSynthesisContext() {\n return {\n audio: {\n metadataOptions: {\n bookmarkEnabled: !!this.privSpeechSynthesizer.bookmarkReached,\n sentenceBoundaryEnabled: false,\n visemeEnabled: !!this.privSpeechSynthesizer.visemeReceived,\n wordBoundaryEnabled: !!this.privSpeechSynthesizer.wordBoundary\n },\n outputFormat: this.privAudioOutputFormat.requestAudioFormatString\n },\n language: {\n autoDetection: this.privSpeechSynthesizer.autoDetectSourceLanguage\n }\n };\n }\n }]);\n\n return SynthesisContext;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nexport var HeaderNames = function HeaderNames() {\n _classCallCheck(this, HeaderNames);\n};\nHeaderNames.AuthKey = \"Ocp-Apim-Subscription-Key\";\nHeaderNames.ConnectionId = \"X-ConnectionId\";\nHeaderNames.ContentType = \"Content-Type\";\nHeaderNames.CustomCommandsAppId = \"X-CommandsAppId\";\nHeaderNames.Path = \"Path\";\nHeaderNames.RequestId = \"X-RequestId\";\nHeaderNames.RequestStreamId = \"X-StreamId\";\nHeaderNames.RequestTimestamp = \"X-Timestamp\";","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Defines the possible reasons a recognition result might be canceled.\n * @class CancellationReason\n */\nexport var CancellationReason;\n\n(function (CancellationReason) {\n /**\n * Indicates that an error occurred during speech recognition.\n * @member CancellationReason.Error\n */\n CancellationReason[CancellationReason[\"Error\"] = 0] = \"Error\";\n /**\n * Indicates that the end of the audio stream was reached.\n * @member CancellationReason.EndOfStream\n */\n\n CancellationReason[CancellationReason[\"EndOfStream\"] = 1] = \"EndOfStream\";\n})(CancellationReason || (CancellationReason = {}));","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Defines error code in case that CancellationReason is Error.\n * Added in version 1.1.0.\n */\nexport var CancellationErrorCode;\n\n(function (CancellationErrorCode) {\n /**\n * Indicates that no error occurred during speech recognition.\n */\n CancellationErrorCode[CancellationErrorCode[\"NoError\"] = 0] = \"NoError\";\n /**\n * Indicates an authentication error.\n */\n\n CancellationErrorCode[CancellationErrorCode[\"AuthenticationFailure\"] = 1] = \"AuthenticationFailure\";\n /**\n * Indicates that one or more recognition parameters are invalid.\n */\n\n CancellationErrorCode[CancellationErrorCode[\"BadRequestParameters\"] = 2] = \"BadRequestParameters\";\n /**\n * Indicates that the number of parallel requests exceeded the number of allowed\n * concurrent transcriptions for the subscription.\n */\n\n CancellationErrorCode[CancellationErrorCode[\"TooManyRequests\"] = 3] = \"TooManyRequests\";\n /**\n * Indicates a connection error.\n */\n\n CancellationErrorCode[CancellationErrorCode[\"ConnectionFailure\"] = 4] = \"ConnectionFailure\";\n /**\n * Indicates a time-out error when waiting for response from service.\n */\n\n CancellationErrorCode[CancellationErrorCode[\"ServiceTimeout\"] = 5] = \"ServiceTimeout\";\n /**\n * Indicates that an error is returned by the service.\n */\n\n CancellationErrorCode[CancellationErrorCode[\"ServiceError\"] = 6] = \"ServiceError\";\n /**\n * Indicates an unexpected runtime error.\n */\n\n CancellationErrorCode[CancellationErrorCode[\"RuntimeError\"] = 7] = \"RuntimeError\";\n /**\n * Indicates an quota overrun on existing key.\n */\n\n CancellationErrorCode[CancellationErrorCode[\"Forbidden\"] = 8] = \"Forbidden\";\n})(CancellationErrorCode || (CancellationErrorCode = {}));","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Defines contents of speech synthesis events.\n * @class SpeechSynthesisEventArgs\n * Added in version 1.11.0\n */\nexport var SpeechSynthesisEventArgs = /*#__PURE__*/function () {\n /**\n * Creates and initializes an instance of this class.\n * @constructor\n * @param {SpeechSynthesisResult} result - The speech synthesis result.\n */\n function SpeechSynthesisEventArgs(result) {\n _classCallCheck(this, SpeechSynthesisEventArgs);\n\n this.privResult = result;\n }\n /**\n * Specifies the synthesis result.\n * @member SpeechSynthesisEventArgs.prototype.result\n * @function\n * @public\n * @returns {SpeechSynthesisResult} the synthesis result.\n */\n\n\n _createClass(SpeechSynthesisEventArgs, [{\n key: \"result\",\n get: function get() {\n return this.privResult;\n }\n }]);\n\n return SpeechSynthesisEventArgs;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { SynthesisResult } from \"./Exports\";\n/**\n * Defines result of speech synthesis.\n * @class SpeechSynthesisResult\n * Added in version 1.11.0\n */\n\nexport var SpeechSynthesisResult = /*#__PURE__*/function (_SynthesisResult) {\n _inherits(SpeechSynthesisResult, _SynthesisResult);\n\n var _super = _createSuper(SpeechSynthesisResult);\n\n /**\n * Creates and initializes an instance of this class.\n * @constructor\n * @param {string} resultId - The result id.\n * @param {ResultReason} reason - The reason.\n * @param {number} audioData - The offset into the stream.\n * @param {string} errorDetails - Error details, if provided.\n * @param {PropertyCollection} properties - Additional properties, if provided.\n */\n function SpeechSynthesisResult(resultId, reason, audioData, errorDetails, properties) {\n var _this;\n\n _classCallCheck(this, SpeechSynthesisResult);\n\n _this = _super.call(this, resultId, reason, errorDetails, properties);\n _this.privAudioData = audioData;\n return _this;\n }\n /**\n * The synthesized audio data\n * @member SpeechSynthesisResult.prototype.audioData\n * @function\n * @public\n * @returns {ArrayBuffer} The synthesized audio data.\n */\n\n\n _createClass(SpeechSynthesisResult, [{\n key: \"audioData\",\n get: function get() {\n return this.privAudioData;\n }\n }]);\n\n return SpeechSynthesisResult;\n}(SynthesisResult);","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Defines contents of speech synthesis word boundary event.\n * @class SpeechSynthesisWordBoundaryEventArgs\n * Added in version 1.11.0\n */\nexport var SpeechSynthesisWordBoundaryEventArgs = /*#__PURE__*/function () {\n /**\n * Creates and initializes an instance of this class.\n * @constructor\n * @param {number} audioOffset - The audio offset.\n * @param {string} text - The text.\n * @param {number} wordLength - The length of the word.\n * @param {number} textOffset - The text offset.\n */\n function SpeechSynthesisWordBoundaryEventArgs(audioOffset, text, wordLength, textOffset) {\n _classCallCheck(this, SpeechSynthesisWordBoundaryEventArgs);\n\n this.privAudioOffset = audioOffset;\n this.privText = text;\n this.privWordLength = wordLength;\n this.privTextOffset = textOffset;\n }\n /**\n * Specifies the audio offset.\n * @member SpeechSynthesisWordBoundaryEventArgs.prototype.audioOffset\n * @function\n * @public\n * @returns {number} the audio offset.\n */\n\n\n _createClass(SpeechSynthesisWordBoundaryEventArgs, [{\n key: \"audioOffset\",\n get: function get() {\n return this.privAudioOffset;\n }\n /**\n * Specifies the text of the word boundary event.\n * @member SpeechSynthesisWordBoundaryEventArgs.prototype.text\n * @function\n * @public\n * @returns {string} the text.\n */\n\n }, {\n key: \"text\",\n get: function get() {\n return this.privText;\n }\n /**\n * Specifies the word length\n * @member SpeechSynthesisWordBoundaryEventArgs.prototype.wordLength\n * @function\n * @public\n * @returns {number} the word length\n */\n\n }, {\n key: \"wordLength\",\n get: function get() {\n return this.privWordLength;\n }\n /**\n * Specifies the text offset.\n * @member SpeechSynthesisWordBoundaryEventArgs.prototype.textOffset\n * @function\n * @public\n * @returns {number} the text offset.\n */\n\n }, {\n key: \"textOffset\",\n get: function get() {\n return this.privTextOffset;\n }\n }]);\n\n return SpeechSynthesisWordBoundaryEventArgs;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Defines contents of speech synthesis bookmark event.\n * @class SpeechSynthesisBookmarkEventArgs\n * Added in version 1.16.0\n */\nexport var SpeechSynthesisBookmarkEventArgs = /*#__PURE__*/function () {\n /**\n * Creates and initializes an instance of this class.\n * @constructor\n * @param {number} audioOffset - The audio offset.\n * @param {string} text - The bookmark text.\n */\n function SpeechSynthesisBookmarkEventArgs(audioOffset, text) {\n _classCallCheck(this, SpeechSynthesisBookmarkEventArgs);\n\n this.privAudioOffset = audioOffset;\n this.privText = text;\n }\n /**\n * Specifies the audio offset.\n * @member SpeechSynthesisBookmarkEventArgs.prototype.audioOffset\n * @function\n * @public\n * @returns {number} the audio offset.\n */\n\n\n _createClass(SpeechSynthesisBookmarkEventArgs, [{\n key: \"audioOffset\",\n get: function get() {\n return this.privAudioOffset;\n }\n /**\n * Specifies the bookmark.\n * @member SpeechSynthesisBookmarkEventArgs.prototype.text\n * @function\n * @public\n * @returns {string} the bookmark text.\n */\n\n }, {\n key: \"text\",\n get: function get() {\n return this.privText;\n }\n }]);\n\n return SpeechSynthesisBookmarkEventArgs;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Defines contents of speech synthesis viseme event.\n * @class SpeechSynthesisVisemeEventArgs\n * Added in version 1.16.0\n */\nexport var SpeechSynthesisVisemeEventArgs = /*#__PURE__*/function () {\n /**\n * Creates and initializes an instance of this class.\n * @constructor\n * @param {number} audioOffset - The audio offset.\n * @param {number} visemeId - The viseme ID.\n * @param {string} animation - The animation, could be in svg or other format.\n */\n function SpeechSynthesisVisemeEventArgs(audioOffset, visemeId, animation) {\n _classCallCheck(this, SpeechSynthesisVisemeEventArgs);\n\n this.privAudioOffset = audioOffset;\n this.privVisemeId = visemeId;\n this.privAnimation = animation;\n }\n /**\n * Specifies the audio offset.\n * @member SpeechSynthesisVisemeEventArgs.prototype.audioOffset\n * @function\n * @public\n * @returns {number} the audio offset.\n */\n\n\n _createClass(SpeechSynthesisVisemeEventArgs, [{\n key: \"audioOffset\",\n get: function get() {\n return this.privAudioOffset;\n }\n /**\n * Specifies the viseme ID.\n * @member SpeechSynthesisVisemeEventArgs.prototype.visemeId\n * @function\n * @public\n * @returns {number} the viseme ID.\n */\n\n }, {\n key: \"visemeId\",\n get: function get() {\n return this.privVisemeId;\n }\n /**\n * Specifies the animation.\n * @member SpeechSynthesisVisemeEventArgs.prototype.animation\n * @function\n * @public\n * @returns {string} the animation, could be in svg or other format.\n */\n\n }, {\n key: \"animation\",\n get: function get() {\n return this.privAnimation;\n }\n }]);\n\n return SpeechSynthesisVisemeEventArgs;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { ArgumentNullError, ConnectionMessage } from \"../common/Exports\";\nimport { HeaderNames } from \"./HeaderNames\";\nexport var SpeechConnectionMessage = /*#__PURE__*/function (_ConnectionMessage) {\n _inherits(SpeechConnectionMessage, _ConnectionMessage);\n\n var _super = _createSuper(SpeechConnectionMessage);\n\n function SpeechConnectionMessage(messageType, path, requestId, contentType, body, streamId, additionalHeaders, id) {\n var _this;\n\n _classCallCheck(this, SpeechConnectionMessage);\n\n if (!path) {\n throw new ArgumentNullError(\"path\");\n }\n\n if (!requestId) {\n throw new ArgumentNullError(\"requestId\");\n }\n\n var headers = {};\n headers[HeaderNames.Path] = path;\n headers[HeaderNames.RequestId] = requestId;\n headers[HeaderNames.RequestTimestamp] = new Date().toISOString();\n\n if (contentType) {\n headers[HeaderNames.ContentType] = contentType;\n }\n\n if (streamId) {\n headers[HeaderNames.RequestStreamId] = streamId;\n }\n\n if (additionalHeaders) {\n for (var headerName in additionalHeaders) {\n if (headerName) {\n headers[headerName] = additionalHeaders[headerName];\n }\n }\n }\n\n if (id) {\n _this = _super.call(this, messageType, body, headers, id);\n } else {\n _this = _super.call(this, messageType, body, headers);\n }\n\n _this.privPath = path;\n _this.privRequestId = requestId;\n _this.privContentType = contentType;\n _this.privStreamId = streamId;\n _this.privAdditionalHeaders = additionalHeaders;\n return _possibleConstructorReturn(_this);\n }\n\n _createClass(SpeechConnectionMessage, [{\n key: \"path\",\n get: function get() {\n return this.privPath;\n }\n }, {\n key: \"requestId\",\n get: function get() {\n return this.privRequestId;\n }\n }, {\n key: \"contentType\",\n get: function get() {\n return this.privContentType;\n }\n }, {\n key: \"streamId\",\n get: function get() {\n return this.privStreamId;\n }\n }, {\n key: \"additionalHeaders\",\n get: function get() {\n return this.privAdditionalHeaders;\n }\n }]);\n\n return SpeechConnectionMessage;\n}(ConnectionMessage);\n\nSpeechConnectionMessage.fromConnectionMessage = function (message) {\n var path = null;\n var requestId = null;\n var contentType = null;\n var requestTimestamp = null;\n var streamId = null;\n var additionalHeaders = {};\n\n if (message.headers) {\n for (var headerName in message.headers) {\n if (headerName) {\n if (headerName.toLowerCase() === HeaderNames.Path.toLowerCase()) {\n path = message.headers[headerName];\n } else if (headerName.toLowerCase() === HeaderNames.RequestId.toLowerCase()) {\n requestId = message.headers[headerName];\n } else if (headerName.toLowerCase() === HeaderNames.RequestTimestamp.toLowerCase()) {\n requestTimestamp = message.headers[headerName];\n } else if (headerName.toLowerCase() === HeaderNames.ContentType.toLowerCase()) {\n contentType = message.headers[headerName];\n } else if (headerName.toLowerCase() === HeaderNames.RequestStreamId.toLowerCase()) {\n streamId = message.headers[headerName];\n } else {\n additionalHeaders[headerName] = message.headers[headerName];\n }\n }\n }\n }\n\n return new SpeechConnectionMessage(message.messageType, path, requestId, contentType, message.body, streamId, additionalHeaders, message.id);\n};","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nimport _regeneratorRuntime from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/regenerator\";\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\n\nimport { ArgumentNullError, ConnectionState, createNoDashGuid, EventSource, MessageType, ServiceEvent } from \"../common/Exports\";\nimport { CancellationErrorCode, CancellationReason, PropertyCollection, PropertyId, ResultReason, SpeechSynthesisBookmarkEventArgs, SpeechSynthesisEventArgs, SpeechSynthesisResult, SpeechSynthesisVisemeEventArgs, SpeechSynthesisWordBoundaryEventArgs } from \"../sdk/Exports\";\nimport { AgentConfig, CancellationErrorCodePropertyName, MetadataType, SynthesisAudioMetadata, SynthesisContext, SynthesisTurn } from \"./Exports\";\nimport { SpeechConnectionMessage } from \"./SpeechConnectionMessage.Internal\";\nexport var SynthesisAdapterBase = /*#__PURE__*/function () {\n function SynthesisAdapterBase(authentication, connectionFactory, synthesizerConfig, speechSynthesizer, audioDestination) {\n var _this = this;\n\n _classCallCheck(this, SynthesisAdapterBase);\n\n this.speakOverride = undefined;\n this.receiveMessageOverride = undefined;\n this.connectImplOverride = undefined;\n this.configConnectionOverride = undefined;\n\n this.sendSynthesisContext = function (connection) {\n var synthesisContextJson = _this.synthesisContext.toJSON();\n\n if (synthesisContextJson) {\n return connection.send(new SpeechConnectionMessage(MessageType.Text, \"synthesis.context\", _this.privSynthesisTurn.requestId, \"application/json\", synthesisContextJson));\n }\n\n return;\n };\n\n this.sendSpeechServiceConfig = function (connection, SpeechServiceConfigJson) {\n if (SpeechServiceConfigJson) {\n return connection.send(new SpeechConnectionMessage(MessageType.Text, \"speech.config\", _this.privSynthesisTurn.requestId, \"application/json\", SpeechServiceConfigJson));\n }\n };\n\n this.sendSsmlMessage = function (connection, ssml, requestId) {\n return connection.send(new SpeechConnectionMessage(MessageType.Text, \"ssml\", requestId, \"application/ssml+xml\", ssml));\n };\n\n if (!authentication) {\n throw new ArgumentNullError(\"authentication\");\n }\n\n if (!connectionFactory) {\n throw new ArgumentNullError(\"connectionFactory\");\n }\n\n if (!synthesizerConfig) {\n throw new ArgumentNullError(\"synthesizerConfig\");\n }\n\n this.privAuthentication = authentication;\n this.privConnectionFactory = connectionFactory;\n this.privSynthesizerConfig = synthesizerConfig;\n this.privIsDisposed = false;\n this.privSpeechSynthesizer = speechSynthesizer;\n this.privSessionAudioDestination = audioDestination;\n this.privSynthesisTurn = new SynthesisTurn();\n this.privConnectionEvents = new EventSource();\n this.privServiceEvents = new EventSource();\n this.privSynthesisContext = new SynthesisContext(this.privSpeechSynthesizer);\n this.privAgentConfig = new AgentConfig();\n this.connectionEvents.attach(function (connectionEvent) {\n if (connectionEvent.name === \"ConnectionClosedEvent\") {\n var connectionClosedEvent = connectionEvent;\n\n if (connectionClosedEvent.statusCode !== 1000) {\n _this.cancelSynthesisLocal(CancellationReason.Error, connectionClosedEvent.statusCode === 1007 ? CancellationErrorCode.BadRequestParameters : CancellationErrorCode.ConnectionFailure, connectionClosedEvent.reason + \" websocket error code: \" + connectionClosedEvent.statusCode);\n }\n }\n });\n }\n\n _createClass(SynthesisAdapterBase, [{\n key: \"synthesisContext\",\n get: function get() {\n return this.privSynthesisContext;\n }\n }, {\n key: \"agentConfig\",\n get: function get() {\n return this.privAgentConfig;\n }\n }, {\n key: \"connectionEvents\",\n get: function get() {\n return this.privConnectionEvents;\n }\n }, {\n key: \"serviceEvents\",\n get: function get() {\n return this.privServiceEvents;\n }\n }, {\n key: \"activityTemplate\",\n get: function get() {\n return this.privActivityTemplate;\n },\n set: function set(messagePayload) {\n this.privActivityTemplate = messagePayload;\n }\n }, {\n key: \"audioOutputFormat\",\n set: function set(format) {\n this.privAudioOutputFormat = format;\n this.privSynthesisTurn.audioOutputFormat = format;\n\n if (this.privSessionAudioDestination !== undefined) {\n this.privSessionAudioDestination.format = format;\n }\n\n if (this.synthesisContext !== undefined) {\n this.synthesisContext.audioOutputFormat = format;\n }\n }\n }, {\n key: \"isDisposed\",\n value: function isDisposed() {\n return this.privIsDisposed;\n }\n }, {\n key: \"dispose\",\n value: function dispose(reason) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var connection;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n this.privIsDisposed = true;\n\n if (this.privSessionAudioDestination !== undefined) {\n this.privSessionAudioDestination.close();\n }\n\n if (!this.privConnectionConfigurationPromise) {\n _context.next = 8;\n break;\n }\n\n _context.next = 5;\n return this.privConnectionConfigurationPromise;\n\n case 5:\n connection = _context.sent;\n _context.next = 8;\n return connection.dispose(reason);\n\n case 8:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n }\n }, {\n key: \"connect\",\n value: function connect() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return this.connectImpl();\n\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n }\n }, {\n key: \"sendNetworkMessage\",\n value: function sendNetworkMessage(path, payload) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {\n var type, contentType, connection;\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n type = typeof payload === \"string\" ? MessageType.Text : MessageType.Binary;\n contentType = typeof payload === \"string\" ? \"application/json\" : \"\";\n _context3.next = 4;\n return this.fetchConnection();\n\n case 4:\n connection = _context3.sent;\n return _context3.abrupt(\"return\", connection.send(new SpeechConnectionMessage(type, path, this.privSynthesisTurn.requestId, contentType, payload)));\n\n case 6:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n }\n }, {\n key: \"Speak\",\n value: function Speak(text, isSSML, requestId, successCallback, errorCallBack, audioDestination) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee4() {\n var ssml, connection, synthesisStartEventArgs, messageRetrievalPromise;\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n if (isSSML) {\n ssml = text;\n } else {\n ssml = this.privSpeechSynthesizer.buildSsml(text);\n }\n\n if (!(this.speakOverride !== undefined)) {\n _context4.next = 3;\n break;\n }\n\n return _context4.abrupt(\"return\", this.speakOverride(ssml, requestId, successCallback, errorCallBack));\n\n case 3:\n this.privSuccessCallback = successCallback;\n this.privErrorCallback = errorCallBack;\n this.privSynthesisTurn.startNewSynthesis(requestId, text, isSSML, audioDestination);\n _context4.prev = 6;\n _context4.next = 9;\n return this.connectImpl();\n\n case 9:\n _context4.next = 11;\n return this.fetchConnection();\n\n case 11:\n connection = _context4.sent;\n _context4.next = 14;\n return this.sendSynthesisContext(connection);\n\n case 14:\n _context4.next = 16;\n return this.sendSsmlMessage(connection, ssml, requestId);\n\n case 16:\n synthesisStartEventArgs = new SpeechSynthesisEventArgs(new SpeechSynthesisResult(requestId, ResultReason.SynthesizingAudioStarted));\n\n if (!!this.privSpeechSynthesizer.synthesisStarted) {\n this.privSpeechSynthesizer.synthesisStarted(this.privSpeechSynthesizer, synthesisStartEventArgs);\n }\n\n messageRetrievalPromise = this.receiveMessage();\n _context4.next = 25;\n break;\n\n case 21:\n _context4.prev = 21;\n _context4.t0 = _context4[\"catch\"](6);\n this.cancelSynthesisLocal(CancellationReason.Error, CancellationErrorCode.ConnectionFailure, _context4.t0);\n return _context4.abrupt(\"return\", Promise.reject(_context4.t0));\n\n case 25:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, this, [[6, 21]]);\n }));\n } // Cancels synthesis.\n\n }, {\n key: \"cancelSynthesis\",\n value: function cancelSynthesis(requestId, cancellationReason, errorCode, error) {\n var properties = new PropertyCollection();\n properties.setProperty(CancellationErrorCodePropertyName, CancellationErrorCode[errorCode]);\n var result = new SpeechSynthesisResult(requestId, ResultReason.Canceled, undefined, error, properties);\n\n if (!!this.privSpeechSynthesizer.SynthesisCanceled) {\n var cancelEvent = new SpeechSynthesisEventArgs(result);\n\n try {\n this.privSpeechSynthesizer.SynthesisCanceled(this.privSpeechSynthesizer, cancelEvent);\n /* tslint:disable:no-empty */\n } catch (_a) {}\n }\n\n if (!!this.privSuccessCallback) {\n try {\n this.privSuccessCallback(result);\n /* tslint:disable:no-empty */\n } catch (_b) {}\n }\n } // Cancels synthesis.\n\n }, {\n key: \"cancelSynthesisLocal\",\n value: function cancelSynthesisLocal(cancellationReason, errorCode, error) {\n if (!!this.privSynthesisTurn.isSynthesizing) {\n this.privSynthesisTurn.onStopSynthesizing();\n this.cancelSynthesis(this.privSynthesisTurn.requestId, cancellationReason, errorCode, error);\n }\n }\n }, {\n key: \"processTypeSpecificMessages\",\n value: function processTypeSpecificMessages(connectionMessage, successCallback, errorCallBack) {\n return true;\n }\n }, {\n key: \"receiveMessage\",\n value: function receiveMessage() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee5() {\n var connection, message, connectionMessage, audioWithHeader, ev, metadataList, _iterator, _step, metadata, wordBoundaryEventArgs, bookmarkEventArgs, visemeEventArgs, result, audioBuffer;\n\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _context5.prev = 0;\n _context5.next = 3;\n return this.fetchConnection();\n\n case 3:\n connection = _context5.sent;\n _context5.next = 6;\n return connection.read();\n\n case 6:\n message = _context5.sent;\n\n if (!(this.receiveMessageOverride !== undefined)) {\n _context5.next = 9;\n break;\n }\n\n return _context5.abrupt(\"return\", this.receiveMessageOverride());\n\n case 9:\n if (!this.privIsDisposed) {\n _context5.next = 11;\n break;\n }\n\n return _context5.abrupt(\"return\");\n\n case 11:\n if (message) {\n _context5.next = 17;\n break;\n }\n\n if (this.privSynthesisTurn.isSynthesizing) {\n _context5.next = 16;\n break;\n }\n\n return _context5.abrupt(\"return\");\n\n case 16:\n return _context5.abrupt(\"return\", this.receiveMessage());\n\n case 17:\n this.privServiceHasSentMessage = true;\n connectionMessage = SpeechConnectionMessage.fromConnectionMessage(message);\n\n if (!(connectionMessage.requestId.toLowerCase() === this.privSynthesisTurn.requestId.toLowerCase())) {\n _context5.next = 74;\n break;\n }\n\n _context5.t0 = connectionMessage.path.toLowerCase();\n _context5.next = _context5.t0 === \"turn.start\" ? 23 : _context5.t0 === \"response\" ? 25 : _context5.t0 === \"audio\" ? 27 : _context5.t0 === \"audio.metadata\" ? 29 : _context5.t0 === \"turn.end\" ? 59 : 73;\n break;\n\n case 23:\n this.privSynthesisTurn.onServiceTurnStartResponse();\n return _context5.abrupt(\"break\", 74);\n\n case 25:\n this.privSynthesisTurn.onServiceResponseMessage(connectionMessage.textBody);\n return _context5.abrupt(\"break\", 74);\n\n case 27:\n if (this.privSynthesisTurn.streamId.toLowerCase() === connectionMessage.streamId.toLowerCase() && !!connectionMessage.binaryBody) {\n this.privSynthesisTurn.onAudioChunkReceived(connectionMessage.binaryBody);\n\n if (!!this.privSpeechSynthesizer.synthesizing) {\n try {\n audioWithHeader = SynthesisAdapterBase.addHeader(connectionMessage.binaryBody, this.privSynthesisTurn.audioOutputFormat);\n ev = new SpeechSynthesisEventArgs(new SpeechSynthesisResult(this.privSynthesisTurn.requestId, ResultReason.SynthesizingAudio, audioWithHeader));\n this.privSpeechSynthesizer.synthesizing(this.privSpeechSynthesizer, ev);\n } catch (error) {// Not going to let errors in the event handler\n // trip things up.\n }\n }\n\n if (this.privSessionAudioDestination !== undefined) {\n this.privSessionAudioDestination.write(connectionMessage.binaryBody);\n }\n }\n\n return _context5.abrupt(\"break\", 74);\n\n case 29:\n metadataList = SynthesisAudioMetadata.fromJSON(connectionMessage.textBody).Metadata;\n _iterator = _createForOfIteratorHelper(metadataList);\n _context5.prev = 31;\n\n _iterator.s();\n\n case 33:\n if ((_step = _iterator.n()).done) {\n _context5.next = 50;\n break;\n }\n\n metadata = _step.value;\n _context5.t1 = metadata.Type;\n _context5.next = _context5.t1 === MetadataType.WordBoundary ? 38 : _context5.t1 === MetadataType.Bookmark ? 42 : _context5.t1 === MetadataType.Viseme ? 45 : 48;\n break;\n\n case 38:\n this.privSynthesisTurn.onWordBoundaryEvent(metadata.Data.text.Text);\n wordBoundaryEventArgs = new SpeechSynthesisWordBoundaryEventArgs(metadata.Data.Offset, metadata.Data.text.Text, metadata.Data.text.Length, this.privSynthesisTurn.currentTextOffset);\n\n if (!!this.privSpeechSynthesizer.wordBoundary) {\n try {\n this.privSpeechSynthesizer.wordBoundary(this.privSpeechSynthesizer, wordBoundaryEventArgs);\n } catch (error) {// Not going to let errors in the event handler\n // trip things up.\n }\n }\n\n return _context5.abrupt(\"break\", 48);\n\n case 42:\n bookmarkEventArgs = new SpeechSynthesisBookmarkEventArgs(metadata.Data.Offset, metadata.Data.Bookmark);\n\n if (!!this.privSpeechSynthesizer.bookmarkReached) {\n try {\n this.privSpeechSynthesizer.bookmarkReached(this.privSpeechSynthesizer, bookmarkEventArgs);\n } catch (error) {// Not going to let errors in the event handler\n // trip things up.\n }\n }\n\n return _context5.abrupt(\"break\", 48);\n\n case 45:\n this.privSynthesisTurn.onVisemeMetadataReceived(metadata);\n\n if (metadata.Data.IsLastAnimation) {\n visemeEventArgs = new SpeechSynthesisVisemeEventArgs(metadata.Data.Offset, metadata.Data.VisemeId, this.privSynthesisTurn.getAndClearVisemeAnimation());\n\n if (!!this.privSpeechSynthesizer.visemeReceived) {\n try {\n this.privSpeechSynthesizer.visemeReceived(this.privSpeechSynthesizer, visemeEventArgs);\n } catch (error) {// Not going to let errors in the event handler\n // trip things up.\n }\n }\n }\n\n return _context5.abrupt(\"break\", 48);\n\n case 48:\n _context5.next = 33;\n break;\n\n case 50:\n _context5.next = 55;\n break;\n\n case 52:\n _context5.prev = 52;\n _context5.t2 = _context5[\"catch\"](31);\n\n _iterator.e(_context5.t2);\n\n case 55:\n _context5.prev = 55;\n\n _iterator.f();\n\n return _context5.finish(55);\n\n case 58:\n return _context5.abrupt(\"break\", 74);\n\n case 59:\n this.privSynthesisTurn.onServiceTurnEndResponse();\n _context5.prev = 60;\n _context5.next = 63;\n return this.privSynthesisTurn.getAllReceivedAudioWithHeader();\n\n case 63:\n audioBuffer = _context5.sent;\n result = new SpeechSynthesisResult(this.privSynthesisTurn.requestId, ResultReason.SynthesizingAudioCompleted, audioBuffer);\n\n if (!!this.privSuccessCallback) {\n this.privSuccessCallback(result);\n }\n\n _context5.next = 71;\n break;\n\n case 68:\n _context5.prev = 68;\n _context5.t3 = _context5[\"catch\"](60);\n\n if (!!this.privErrorCallback) {\n this.privErrorCallback(_context5.t3);\n }\n\n case 71:\n if (this.privSpeechSynthesizer.synthesisCompleted) {\n try {\n this.privSpeechSynthesizer.synthesisCompleted(this.privSpeechSynthesizer, new SpeechSynthesisEventArgs(result));\n } catch (e) {// Not going to let errors in the event handler\n // trip things up.\n }\n }\n\n return _context5.abrupt(\"break\", 74);\n\n case 73:\n if (!this.processTypeSpecificMessages(connectionMessage)) {\n // here are some messages that the derived class has not processed, dispatch them to connect class\n if (!!this.privServiceEvents) {\n this.serviceEvents.onEvent(new ServiceEvent(connectionMessage.path.toLowerCase(), connectionMessage.textBody));\n }\n }\n\n case 74:\n return _context5.abrupt(\"return\", this.receiveMessage());\n\n case 77:\n _context5.prev = 77;\n _context5.t4 = _context5[\"catch\"](0);\n\n case 79:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this, [[0, 77], [31, 52, 55, 58], [60, 68]]);\n }));\n }\n }, {\n key: \"connectImpl\",\n value: function connectImpl() {\n var _this2 = this;\n\n var isUnAuthorized = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n if (this.privConnectionPromise) {\n return this.privConnectionPromise.then(function (connection) {\n if (connection.state() === ConnectionState.Disconnected) {\n _this2.privConnectionId = null;\n _this2.privConnectionPromise = null;\n _this2.privServiceHasSentMessage = false;\n return _this2.connectImpl();\n }\n\n return _this2.privConnectionPromise;\n }, function (error) {\n _this2.privConnectionId = null;\n _this2.privConnectionPromise = null;\n _this2.privServiceHasSentMessage = false;\n return _this2.connectImpl();\n });\n }\n\n this.privAuthFetchEventId = createNoDashGuid();\n this.privConnectionId = createNoDashGuid();\n this.privSynthesisTurn.onPreConnectionStart(this.privAuthFetchEventId, this.privConnectionId);\n var authPromise = isUnAuthorized ? this.privAuthentication.fetchOnExpiry(this.privAuthFetchEventId) : this.privAuthentication.fetch(this.privAuthFetchEventId);\n this.privConnectionPromise = authPromise.then(function (result) {\n return __awaiter(_this2, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee6() {\n var _this3 = this;\n\n var connection, response;\n return _regeneratorRuntime.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n _context6.next = 2;\n return this.privSynthesisTurn.onAuthCompleted(false);\n\n case 2:\n connection = this.privConnectionFactory.create(this.privSynthesizerConfig, result, this.privConnectionId); // Attach to the underlying event. No need to hold onto the detach pointers as in the event the connection goes away,\n // it'll stop sending events.\n\n connection.events.attach(function (event) {\n _this3.connectionEvents.onEvent(event);\n });\n _context6.next = 6;\n return connection.open();\n\n case 6:\n response = _context6.sent;\n\n if (!(response.statusCode === 200)) {\n _context6.next = 13;\n break;\n }\n\n _context6.next = 10;\n return this.privSynthesisTurn.onConnectionEstablishCompleted(response.statusCode);\n\n case 10:\n return _context6.abrupt(\"return\", Promise.resolve(connection));\n\n case 13:\n if (!(response.statusCode === 403 && !isUnAuthorized)) {\n _context6.next = 17;\n break;\n }\n\n return _context6.abrupt(\"return\", this.connectImpl(true));\n\n case 17:\n _context6.next = 19;\n return this.privSynthesisTurn.onConnectionEstablishCompleted(response.statusCode, response.reason);\n\n case 19:\n return _context6.abrupt(\"return\", Promise.reject(\"Unable to contact server. StatusCode: \".concat(response.statusCode, \", \").concat(this.privSynthesizerConfig.parameters.getProperty(PropertyId.SpeechServiceConnection_Endpoint), \" Reason: \").concat(response.reason)));\n\n case 20:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6, this);\n }));\n }, function (error) {\n return __awaiter(_this2, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee7() {\n return _regeneratorRuntime.wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n _context7.next = 2;\n return this.privSynthesisTurn.onAuthCompleted(true, error);\n\n case 2:\n throw new Error(error);\n\n case 3:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7, this);\n }));\n }); // Attach an empty handler to allow the promise to run in the background while\n // other startup events happen. It'll eventually be awaited on.\n\n this.privConnectionPromise.catch(function () {});\n return this.privConnectionPromise;\n }\n }, {\n key: \"fetchConnection\",\n value: function fetchConnection() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee8() {\n var _this4 = this;\n\n return _regeneratorRuntime.wrap(function _callee8$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n if (!this.privConnectionConfigurationPromise) {\n _context8.next = 2;\n break;\n }\n\n return _context8.abrupt(\"return\", this.privConnectionConfigurationPromise.then(function (connection) {\n if (connection.state() === ConnectionState.Disconnected) {\n _this4.privConnectionId = null;\n _this4.privConnectionConfigurationPromise = null;\n _this4.privServiceHasSentMessage = false;\n return _this4.fetchConnection();\n }\n\n return _this4.privConnectionConfigurationPromise;\n }, function (error) {\n _this4.privConnectionId = null;\n _this4.privConnectionConfigurationPromise = null;\n _this4.privServiceHasSentMessage = false;\n return _this4.fetchConnection();\n }));\n\n case 2:\n this.privConnectionConfigurationPromise = this.configureConnection();\n _context8.next = 5;\n return this.privConnectionConfigurationPromise;\n\n case 5:\n return _context8.abrupt(\"return\", _context8.sent);\n\n case 6:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _callee8, this);\n }));\n } // Takes an established websocket connection to the endpoint and sends speech configuration information.\n\n }, {\n key: \"configureConnection\",\n value: function configureConnection() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee9() {\n var connection;\n return _regeneratorRuntime.wrap(function _callee9$(_context9) {\n while (1) {\n switch (_context9.prev = _context9.next) {\n case 0:\n _context9.next = 2;\n return this.connectImpl();\n\n case 2:\n connection = _context9.sent;\n\n if (!(this.configConnectionOverride !== undefined)) {\n _context9.next = 5;\n break;\n }\n\n return _context9.abrupt(\"return\", this.configConnectionOverride(connection));\n\n case 5:\n _context9.next = 7;\n return this.sendSpeechServiceConfig(connection, this.privSynthesizerConfig.SpeechServiceConfig.serialize());\n\n case 7:\n return _context9.abrupt(\"return\", connection);\n\n case 8:\n case \"end\":\n return _context9.stop();\n }\n }\n }, _callee9, this);\n }));\n }\n }], [{\n key: \"addHeader\",\n value: function addHeader(audio, format) {\n if (!format.hasHeader) {\n return audio;\n }\n\n format.updateHeader(audio.byteLength);\n var tmp = new Uint8Array(audio.byteLength + format.header.byteLength);\n tmp.set(new Uint8Array(format.header), 0);\n tmp.set(new Uint8Array(audio), format.header.byteLength);\n return tmp.buffer;\n }\n }]);\n\n return SynthesisAdapterBase;\n}();\nSynthesisAdapterBase.telemetryDataEnabled = true;","// This object will be used as the prototype for Nodes when creating a\n// DOM-Level-1-compliant structure.\nvar NodePrototype = module.exports = {\n get firstChild() {\n var children = this.children;\n return children && children[0] || null;\n },\n\n get lastChild() {\n var children = this.children;\n return children && children[children.length - 1] || null;\n },\n\n get nodeType() {\n return nodeTypes[this.type] || nodeTypes.element;\n }\n\n};\nvar domLvl1 = {\n tagName: \"name\",\n childNodes: \"children\",\n parentNode: \"parent\",\n previousSibling: \"prev\",\n nextSibling: \"next\",\n nodeValue: \"data\"\n};\nvar nodeTypes = {\n element: 1,\n text: 3,\n cdata: 4,\n comment: 8\n};\nObject.keys(domLvl1).forEach(function (key) {\n var shorthand = domLvl1[key];\n Object.defineProperty(NodePrototype, key, {\n get: function get() {\n return this[shorthand] || null;\n },\n set: function set(val) {\n this[shorthand] = val;\n return val;\n }\n });\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = UnsupportedElementType;\n/**\n * Handles an unsupported element type by returning null so nothing is rendered\n * @returns {null}\n */\n\nfunction UnsupportedElementType() {\n // do nothing because the element type is unsupported\n // comment, directive, script, cdata, doctype are all currently unsupported\n return null;\n}","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { ServicePropertiesPropertyName } from \"../common.speech/Exports\";\nimport { PropertyId } from \"../sdk/Exports\";\nimport { QueryParameterNames } from \"./QueryParameterNames\";\nexport var ConnectionFactoryBase = /*#__PURE__*/function () {\n function ConnectionFactoryBase() {\n _classCallCheck(this, ConnectionFactoryBase);\n }\n\n _createClass(ConnectionFactoryBase, [{\n key: \"setCommonUrlParams\",\n value: function setCommonUrlParams(config, queryParams, endpoint) {\n this.setUrlParameter(PropertyId.SpeechServiceConnection_EnableAudioLogging, QueryParameterNames.EnableAudioLogging, config, queryParams, endpoint);\n this.setUrlParameter(PropertyId.SpeechServiceResponse_RequestWordLevelTimestamps, QueryParameterNames.EnableWordLevelTimestamps, config, queryParams, endpoint);\n this.setUrlParameter(PropertyId.SpeechServiceResponse_ProfanityOption, QueryParameterNames.Profanity, config, queryParams, endpoint);\n this.setUrlParameter(PropertyId.SpeechServiceConnection_InitialSilenceTimeoutMs, QueryParameterNames.InitialSilenceTimeoutMs, config, queryParams, endpoint);\n this.setUrlParameter(PropertyId.SpeechServiceConnection_EndSilenceTimeoutMs, QueryParameterNames.EndSilenceTimeoutMs, config, queryParams, endpoint);\n this.setUrlParameter(PropertyId.SpeechServiceResponse_StablePartialResultThreshold, QueryParameterNames.StableIntermediateThreshold, config, queryParams, endpoint);\n var serviceProperties = JSON.parse(config.parameters.getProperty(ServicePropertiesPropertyName, \"{}\"));\n Object.keys(serviceProperties).forEach(function (value, num, array) {\n queryParams[value] = serviceProperties[value];\n });\n }\n }, {\n key: \"setUrlParameter\",\n value: function setUrlParameter(propId, parameterName, config, queryParams, endpoint) {\n var value = config.parameters.getProperty(propId, undefined);\n\n if (value && (!endpoint || endpoint.search(parameterName) === -1)) {\n queryParams[parameterName] = value.toLocaleLowerCase();\n }\n }\n }], [{\n key: \"getHostSuffix\",\n value: function getHostSuffix(region) {\n if (!!region) {\n if (region.toLowerCase().startsWith(\"china\")) {\n return \".azure.cn\";\n }\n\n if (region.toLowerCase().startsWith(\"usgov\")) {\n return \".azure.us\";\n }\n }\n\n return \".microsoft.com\";\n }\n }]);\n\n return ConnectionFactoryBase;\n}();","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n// tslint:disable:max-classes-per-file\nimport { EventType, PlatformEvent } from \"./PlatformEvent\";\nexport var AudioSourceEvent = /*#__PURE__*/function (_PlatformEvent) {\n _inherits(AudioSourceEvent, _PlatformEvent);\n\n var _super = _createSuper(AudioSourceEvent);\n\n function AudioSourceEvent(eventName, audioSourceId) {\n var _this;\n\n var eventType = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : EventType.Info;\n\n _classCallCheck(this, AudioSourceEvent);\n\n _this = _super.call(this, eventName, eventType);\n _this.privAudioSourceId = audioSourceId;\n return _this;\n }\n\n _createClass(AudioSourceEvent, [{\n key: \"audioSourceId\",\n get: function get() {\n return this.privAudioSourceId;\n }\n }]);\n\n return AudioSourceEvent;\n}(PlatformEvent);\nexport var AudioSourceInitializingEvent = /*#__PURE__*/function (_AudioSourceEvent) {\n _inherits(AudioSourceInitializingEvent, _AudioSourceEvent);\n\n var _super2 = _createSuper(AudioSourceInitializingEvent);\n\n function AudioSourceInitializingEvent(audioSourceId) {\n _classCallCheck(this, AudioSourceInitializingEvent);\n\n return _super2.call(this, \"AudioSourceInitializingEvent\", audioSourceId);\n }\n\n return AudioSourceInitializingEvent;\n}(AudioSourceEvent);\nexport var AudioSourceReadyEvent = /*#__PURE__*/function (_AudioSourceEvent2) {\n _inherits(AudioSourceReadyEvent, _AudioSourceEvent2);\n\n var _super3 = _createSuper(AudioSourceReadyEvent);\n\n function AudioSourceReadyEvent(audioSourceId) {\n _classCallCheck(this, AudioSourceReadyEvent);\n\n return _super3.call(this, \"AudioSourceReadyEvent\", audioSourceId);\n }\n\n return AudioSourceReadyEvent;\n}(AudioSourceEvent);\nexport var AudioSourceOffEvent = /*#__PURE__*/function (_AudioSourceEvent3) {\n _inherits(AudioSourceOffEvent, _AudioSourceEvent3);\n\n var _super4 = _createSuper(AudioSourceOffEvent);\n\n function AudioSourceOffEvent(audioSourceId) {\n _classCallCheck(this, AudioSourceOffEvent);\n\n return _super4.call(this, \"AudioSourceOffEvent\", audioSourceId);\n }\n\n return AudioSourceOffEvent;\n}(AudioSourceEvent);\nexport var AudioSourceErrorEvent = /*#__PURE__*/function (_AudioSourceEvent4) {\n _inherits(AudioSourceErrorEvent, _AudioSourceEvent4);\n\n var _super5 = _createSuper(AudioSourceErrorEvent);\n\n function AudioSourceErrorEvent(audioSourceId, error) {\n var _this2;\n\n _classCallCheck(this, AudioSourceErrorEvent);\n\n _this2 = _super5.call(this, \"AudioSourceErrorEvent\", audioSourceId, EventType.Error);\n _this2.privError = error;\n return _this2;\n }\n\n _createClass(AudioSourceErrorEvent, [{\n key: \"error\",\n get: function get() {\n return this.privError;\n }\n }]);\n\n return AudioSourceErrorEvent;\n}(AudioSourceEvent);\nexport var AudioStreamNodeEvent = /*#__PURE__*/function (_AudioSourceEvent5) {\n _inherits(AudioStreamNodeEvent, _AudioSourceEvent5);\n\n var _super6 = _createSuper(AudioStreamNodeEvent);\n\n function AudioStreamNodeEvent(eventName, audioSourceId, audioNodeId) {\n var _this3;\n\n _classCallCheck(this, AudioStreamNodeEvent);\n\n _this3 = _super6.call(this, eventName, audioSourceId);\n _this3.privAudioNodeId = audioNodeId;\n return _this3;\n }\n\n _createClass(AudioStreamNodeEvent, [{\n key: \"audioNodeId\",\n get: function get() {\n return this.privAudioNodeId;\n }\n }]);\n\n return AudioStreamNodeEvent;\n}(AudioSourceEvent);\nexport var AudioStreamNodeAttachingEvent = /*#__PURE__*/function (_AudioStreamNodeEvent) {\n _inherits(AudioStreamNodeAttachingEvent, _AudioStreamNodeEvent);\n\n var _super7 = _createSuper(AudioStreamNodeAttachingEvent);\n\n function AudioStreamNodeAttachingEvent(audioSourceId, audioNodeId) {\n _classCallCheck(this, AudioStreamNodeAttachingEvent);\n\n return _super7.call(this, \"AudioStreamNodeAttachingEvent\", audioSourceId, audioNodeId);\n }\n\n return AudioStreamNodeAttachingEvent;\n}(AudioStreamNodeEvent);\nexport var AudioStreamNodeAttachedEvent = /*#__PURE__*/function (_AudioStreamNodeEvent2) {\n _inherits(AudioStreamNodeAttachedEvent, _AudioStreamNodeEvent2);\n\n var _super8 = _createSuper(AudioStreamNodeAttachedEvent);\n\n function AudioStreamNodeAttachedEvent(audioSourceId, audioNodeId) {\n _classCallCheck(this, AudioStreamNodeAttachedEvent);\n\n return _super8.call(this, \"AudioStreamNodeAttachedEvent\", audioSourceId, audioNodeId);\n }\n\n return AudioStreamNodeAttachedEvent;\n}(AudioStreamNodeEvent);\nexport var AudioStreamNodeDetachedEvent = /*#__PURE__*/function (_AudioStreamNodeEvent3) {\n _inherits(AudioStreamNodeDetachedEvent, _AudioStreamNodeEvent3);\n\n var _super9 = _createSuper(AudioStreamNodeDetachedEvent);\n\n function AudioStreamNodeDetachedEvent(audioSourceId, audioNodeId) {\n _classCallCheck(this, AudioStreamNodeDetachedEvent);\n\n return _super9.call(this, \"AudioStreamNodeDetachedEvent\", audioSourceId, audioNodeId);\n }\n\n return AudioStreamNodeDetachedEvent;\n}(AudioStreamNodeEvent);\nexport var AudioStreamNodeErrorEvent = /*#__PURE__*/function (_AudioStreamNodeEvent4) {\n _inherits(AudioStreamNodeErrorEvent, _AudioStreamNodeEvent4);\n\n var _super10 = _createSuper(AudioStreamNodeErrorEvent);\n\n function AudioStreamNodeErrorEvent(audioSourceId, audioNodeId, error) {\n var _this4;\n\n _classCallCheck(this, AudioStreamNodeErrorEvent);\n\n _this4 = _super10.call(this, \"AudioStreamNodeErrorEvent\", audioSourceId, audioNodeId);\n _this4.privError = error;\n return _this4;\n }\n\n _createClass(AudioStreamNodeErrorEvent, [{\n key: \"error\",\n get: function get() {\n return this.privError;\n }\n }]);\n\n return AudioStreamNodeErrorEvent;\n}(AudioStreamNodeEvent);","/*\n Module dependencies\n*/\nvar ElementType = require('domelementtype');\n\nvar entities = require('entities');\n/* mixed-case SVG and MathML tags & attributes\n recognized by the HTML parser, see\n https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inforeign\n*/\n\n\nvar foreignNames = require('./foreignNames.json');\n\nforeignNames.elementNames.__proto__ = null;\n/* use as a simple dictionary */\n\nforeignNames.attributeNames.__proto__ = null;\nvar unencodedElements = {\n __proto__: null,\n style: true,\n script: true,\n xmp: true,\n iframe: true,\n noembed: true,\n noframes: true,\n plaintext: true,\n noscript: true\n};\n/*\n Format attributes\n*/\n\nfunction formatAttrs(attributes, opts) {\n if (!attributes) return;\n var output = '';\n var value; // Loop through the attributes\n\n for (var key in attributes) {\n value = attributes[key];\n\n if (output) {\n output += ' ';\n }\n\n if (opts.xmlMode === 'foreign') {\n /* fix up mixed-case attribute names */\n key = foreignNames.attributeNames[key] || key;\n }\n\n output += key;\n\n if (value !== null && value !== '' || opts.xmlMode) {\n output += '=\"' + (opts.decodeEntities ? entities.encodeXML(value) : value.replace(/\\\"/g, '"')) + '\"';\n }\n }\n\n return output;\n}\n/*\n Self-enclosing tags (stolen from node-htmlparser)\n*/\n\n\nvar singleTag = {\n __proto__: null,\n area: true,\n base: true,\n basefont: true,\n br: true,\n col: true,\n command: true,\n embed: true,\n frame: true,\n hr: true,\n img: true,\n input: true,\n isindex: true,\n keygen: true,\n link: true,\n meta: true,\n param: true,\n source: true,\n track: true,\n wbr: true\n};\n\nvar render = module.exports = function (dom, opts) {\n if (!Array.isArray(dom) && !dom.cheerio) dom = [dom];\n opts = opts || {};\n var output = '';\n\n for (var i = 0; i < dom.length; i++) {\n var elem = dom[i];\n if (elem.type === 'root') output += render(elem.children, opts);else if (ElementType.isTag(elem)) output += renderTag(elem, opts);else if (elem.type === ElementType.Directive) output += renderDirective(elem);else if (elem.type === ElementType.Comment) output += renderComment(elem);else if (elem.type === ElementType.CDATA) output += renderCdata(elem);else output += renderText(elem, opts);\n }\n\n return output;\n};\n\nvar foreignModeIntegrationPoints = ['mi', 'mo', 'mn', 'ms', 'mtext', 'annotation-xml', 'foreignObject', 'desc', 'title'];\n\nfunction renderTag(elem, opts) {\n // Handle SVG / MathML in HTML\n if (opts.xmlMode === 'foreign') {\n /* fix up mixed-case element names */\n elem.name = foreignNames.elementNames[elem.name] || elem.name;\n /* exit foreign mode at integration points */\n\n if (elem.parent && foreignModeIntegrationPoints.indexOf(elem.parent.name) >= 0) opts = Object.assign({}, opts, {\n xmlMode: false\n });\n }\n\n if (!opts.xmlMode && ['svg', 'math'].indexOf(elem.name) >= 0) {\n opts = Object.assign({}, opts, {\n xmlMode: 'foreign'\n });\n }\n\n var tag = '<' + elem.name;\n var attribs = formatAttrs(elem.attribs, opts);\n\n if (attribs) {\n tag += ' ' + attribs;\n }\n\n if (opts.xmlMode && (!elem.children || elem.children.length === 0)) {\n tag += '/>';\n } else {\n tag += '>';\n\n if (elem.children) {\n tag += render(elem.children, opts);\n }\n\n if (!singleTag[elem.name] || opts.xmlMode) {\n tag += '';\n }\n }\n\n return tag;\n}\n\nfunction renderDirective(elem) {\n return '<' + elem.data + '>';\n}\n\nfunction renderText(elem, opts) {\n var data = elem.data || ''; // if entities weren't decoded, no need to encode them back\n\n if (opts.decodeEntities && !(elem.parent && elem.parent.name in unencodedElements)) {\n data = entities.encodeXML(data);\n }\n\n return data;\n}\n\nfunction renderCdata(elem) {\n return '';\n}\n\nfunction renderComment(elem) {\n return '';\n}","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","'use strict';\nvar $ = require('../internals/export');\nvar $trimStart = require('../internals/string-trim').start;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\nvar FORCED = forcedStringTrimMethod('trimStart');\n\nvar trimStart = FORCED ? function trimStart() {\n return $trimStart(this);\n} : ''.trimStart;\n\n// `String.prototype.{ trimStart, trimLeft }` methods\n// https://tc39.es/ecma262/#sec-string.prototype.trimstart\n// https://tc39.es/ecma262/#String.prototype.trimleft\n$({ target: 'String', proto: true, forced: FORCED }, {\n trimStart: trimStart,\n trimLeft: trimStart\n});\n","'use strict';\nvar aFunction = require('../internals/a-function');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _regeneratorRuntime from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/regenerator\";\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\n\nimport * as tls from \"tls\";\nimport * as parse from \"url-parse\";\nimport * as ocsp from \"../../external/ocsp/ocsp\";\nimport { Events, OCSPCacheEntryExpiredEvent, OCSPCacheEntryNeedsRefreshEvent, OCSPCacheFetchErrorEvent, OCSPCacheHitEvent, OCSPCacheMissEvent, OCSPCacheUpdateCompleteEvent, OCSPCacheUpdateNeededEvent, OCSPDiskCacheHitEvent, OCSPDiskCacheStoreEvent, OCSPMemoryCacheHitEvent, OCSPMemoryCacheStoreEvent, OCSPResponseRetrievedEvent, OCSPStapleReceivedEvent, OCSPVerificationFailedEvent } from \"../common/Exports\";\nimport Agent from \"agent-base\"; // @ts-ignore\n\nimport Cache from \"async-disk-cache\";\nimport HttpsProxyAgent from \"https-proxy-agent\";\nimport * as net from \"net\";\nimport { OCSPCacheUpdateErrorEvent } from \"../common/OCSPEvents\";\nexport var CertCheckAgent = /*#__PURE__*/function () {\n function CertCheckAgent(proxyInfo) {\n _classCallCheck(this, CertCheckAgent);\n\n if (!!proxyInfo) {\n this.privProxyInfo = proxyInfo;\n } // Initialize this here to allow tests to set the env variable before the cache is constructed.\n\n\n if (!CertCheckAgent.privDiskCache) {\n CertCheckAgent.privDiskCache = new Cache(\"microsoft-cognitiveservices-speech-sdk-cache\", {\n supportBuffer: true,\n location: typeof process !== \"undefined\" && !!process.env.SPEECH_OCSP_CACHE_ROOT ? process.env.SPEECH_OCSP_CACHE_ROOT : undefined\n });\n }\n } // Test hook to force the disk cache to be recreated.\n\n\n _createClass(CertCheckAgent, [{\n key: \"GetAgent\",\n value: function GetAgent(disableStapling) {\n var agent = new Agent.Agent(this.CreateConnection);\n\n if (this.privProxyInfo !== undefined && this.privProxyInfo.HostName !== undefined && this.privProxyInfo.Port > 0) {\n var proxyName = \"privProxyInfo\";\n agent[proxyName] = this.privProxyInfo;\n }\n\n return agent;\n }\n }, {\n key: \"CreateConnection\",\n value: function CreateConnection(request, options) {\n var enableOCSP = typeof process !== \"undefined\" && process.env.NODE_TLS_REJECT_UNAUTHORIZED !== \"0\" && process.env.SPEECH_CONDUCT_OCSP_CHECK !== \"0\" && options.secureEndpoint;\n var socketPromise;\n options = Object.assign(Object.assign({}, options), {\n requestOCSP: !CertCheckAgent.forceDisableOCSPStapling,\n servername: options.host\n });\n\n if (!!this.privProxyInfo) {\n var httpProxyAgent = CertCheckAgent.GetProxyAgent(this.privProxyInfo);\n var baseAgent = httpProxyAgent;\n socketPromise = new Promise(function (resolve, reject) {\n baseAgent.callback(request, options, function (error, socket) {\n if (!!error) {\n reject(error);\n } else {\n resolve(socket);\n }\n });\n });\n } else {\n if (!!options.secureEndpoint) {\n socketPromise = Promise.resolve(tls.connect(options));\n } else {\n socketPromise = Promise.resolve(net.connect(options));\n }\n }\n\n if (!!enableOCSP) {\n return CertCheckAgent.OCSPCheck(socketPromise, this.privProxyInfo);\n } else {\n return socketPromise;\n }\n }\n }], [{\n key: \"forceReinitDiskCache\",\n value: function forceReinitDiskCache() {\n CertCheckAgent.privDiskCache = undefined;\n CertCheckAgent.privMemCache = {};\n }\n }, {\n key: \"GetProxyAgent\",\n value: function GetProxyAgent(proxyInfo) {\n var httpProxyOptions = {\n host: proxyInfo.HostName,\n port: proxyInfo.Port\n };\n\n if (!!proxyInfo.UserName) {\n httpProxyOptions.headers = {\n \"Proxy-Authentication\": \"Basic \" + new Buffer(proxyInfo.UserName + \":\" + (proxyInfo.Password === undefined) ? \"\" : proxyInfo.Password).toString(\"base64\")\n };\n } else {\n httpProxyOptions.headers = {};\n }\n\n httpProxyOptions.headers.requestOCSP = \"true\";\n var httpProxyAgent = new HttpsProxyAgent(httpProxyOptions);\n return httpProxyAgent;\n }\n }, {\n key: \"OCSPCheck\",\n value: function OCSPCheck(socketPromise, proxyInfo) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {\n var _this = this;\n\n var ocspRequest, stapling, resolved, socket, tlsSocket;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n resolved = false;\n _context2.next = 3;\n return socketPromise;\n\n case 3:\n socket = _context2.sent;\n socket.cork();\n tlsSocket = socket;\n return _context2.abrupt(\"return\", new Promise(function (resolve, reject) {\n socket.on(\"OCSPResponse\", function (data) {\n if (!!data) {\n _this.onEvent(new OCSPStapleReceivedEvent());\n\n stapling = data;\n }\n });\n socket.on(\"error\", function (error) {\n if (!resolved) {\n resolved = true;\n socket.destroy();\n reject(error);\n }\n });\n tlsSocket.on(\"secure\", function () {\n return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var peer, issuer, sig, cacheEntry;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n peer = tlsSocket.getPeerCertificate(true);\n _context.prev = 1;\n _context.next = 4;\n return this.GetIssuer(peer);\n\n case 4:\n issuer = _context.sent;\n // We always need a request to verify the response.\n ocspRequest = ocsp.request.generate(peer.raw, issuer.raw); // Do we have a result for this certificate in our memory cache?\n\n sig = ocspRequest.id.toString(\"hex\"); // Stapled response trumps cached response.\n\n if (stapling) {\n _context.next = 12;\n break;\n }\n\n _context.next = 10;\n return CertCheckAgent.GetResponseFromCache(sig, ocspRequest, proxyInfo);\n\n case 10:\n cacheEntry = _context.sent;\n stapling = cacheEntry;\n\n case 12:\n _context.next = 14;\n return this.VerifyOCSPResponse(stapling, ocspRequest, proxyInfo);\n\n case 14:\n socket.uncork();\n resolved = true;\n resolve(socket);\n _context.next = 24;\n break;\n\n case 19:\n _context.prev = 19;\n _context.t0 = _context[\"catch\"](1);\n socket.destroy();\n resolved = true;\n reject(_context.t0);\n\n case 24:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[1, 19]]);\n }));\n });\n }));\n\n case 7:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n }\n }, {\n key: \"GetIssuer\",\n value: function GetIssuer(peer) {\n if (peer.issuerCertificate) {\n return Promise.resolve(peer.issuerCertificate);\n }\n\n return new Promise(function (resolve, reject) {\n var ocspAgent = new ocsp.Agent({});\n ocspAgent.fetchIssuer(peer, null, function (error, value) {\n if (!!error) {\n reject(error);\n return;\n }\n\n resolve(value);\n });\n });\n }\n }, {\n key: \"GetResponseFromCache\",\n value: function GetResponseFromCache(signature, ocspRequest, proxyInfo) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {\n var _this2 = this;\n\n var cachedResponse, diskCacheResponse, cachedOcspResponse, tbsData, cachedStartTime, cachedNextTime, minUpdate;\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n cachedResponse = CertCheckAgent.privMemCache[signature];\n\n if (!!cachedResponse) {\n this.onEvent(new OCSPMemoryCacheHitEvent(signature));\n } // Do we have a result for this certificate on disk in %TMP%?\n\n\n if (cachedResponse) {\n _context3.next = 13;\n break;\n }\n\n _context3.prev = 3;\n _context3.next = 6;\n return CertCheckAgent.privDiskCache.get(signature);\n\n case 6:\n diskCacheResponse = _context3.sent;\n\n if (!!diskCacheResponse.isCached) {\n CertCheckAgent.onEvent(new OCSPDiskCacheHitEvent(signature));\n CertCheckAgent.StoreMemoryCacheEntry(signature, diskCacheResponse.value);\n cachedResponse = diskCacheResponse.value;\n }\n\n _context3.next = 13;\n break;\n\n case 10:\n _context3.prev = 10;\n _context3.t0 = _context3[\"catch\"](3);\n cachedResponse = null;\n\n case 13:\n if (cachedResponse) {\n _context3.next = 15;\n break;\n }\n\n return _context3.abrupt(\"return\", cachedResponse);\n\n case 15:\n _context3.prev = 15;\n cachedOcspResponse = ocsp.utils.parseResponse(cachedResponse);\n tbsData = cachedOcspResponse.value.tbsResponseData;\n\n if (!(tbsData.responses.length < 1)) {\n _context3.next = 21;\n break;\n }\n\n this.onEvent(new OCSPCacheFetchErrorEvent(signature, \"Not enough data in cached response\"));\n return _context3.abrupt(\"return\");\n\n case 21:\n cachedStartTime = tbsData.responses[0].thisUpdate;\n cachedNextTime = tbsData.responses[0].nextUpdate;\n\n if (cachedNextTime < Date.now() + this.testTimeOffset - 60000) {\n // Cached entry has expired.\n this.onEvent(new OCSPCacheEntryExpiredEvent(signature, cachedNextTime));\n cachedResponse = null;\n } else {\n // If we're within one day of the next update, or 50% of the way through the validity period,\n // background an update to the cache.\n minUpdate = Math.min(24 * 60 * 60 * 1000, (cachedNextTime - cachedStartTime) / 2);\n\n if (cachedNextTime - (Date.now() + this.testTimeOffset) < minUpdate) {\n this.onEvent(new OCSPCacheEntryNeedsRefreshEvent(signature, cachedStartTime, cachedNextTime));\n this.UpdateCache(ocspRequest, proxyInfo).catch(function (error) {\n // Well, not much we can do here.\n _this2.onEvent(new OCSPCacheUpdateErrorEvent(signature, error.toString()));\n });\n } else {\n this.onEvent(new OCSPCacheHitEvent(signature, cachedStartTime, cachedNextTime));\n }\n }\n\n _context3.next = 30;\n break;\n\n case 26:\n _context3.prev = 26;\n _context3.t1 = _context3[\"catch\"](15);\n this.onEvent(new OCSPCacheFetchErrorEvent(signature, _context3.t1));\n cachedResponse = null;\n\n case 30:\n if (!cachedResponse) {\n this.onEvent(new OCSPCacheMissEvent(signature));\n }\n\n return _context3.abrupt(\"return\", cachedResponse);\n\n case 32:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this, [[3, 10], [15, 26]]);\n }));\n }\n }, {\n key: \"VerifyOCSPResponse\",\n value: function VerifyOCSPResponse(cacheValue, ocspRequest, proxyInfo) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee4() {\n var _this3 = this;\n\n var ocspResponse, sig;\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n ocspResponse = cacheValue;\n sig = ocspRequest.certID.toString(\"hex\"); // Do we have a valid response?\n\n if (ocspResponse) {\n _context4.next = 6;\n break;\n }\n\n _context4.next = 5;\n return CertCheckAgent.GetOCSPResponse(ocspRequest, proxyInfo);\n\n case 5:\n ocspResponse = _context4.sent;\n\n case 6:\n return _context4.abrupt(\"return\", new Promise(function (resolve, reject) {\n ocsp.verify({\n request: ocspRequest,\n response: ocspResponse\n }, function (error, result) {\n if (!!error) {\n CertCheckAgent.onEvent(new OCSPVerificationFailedEvent(ocspRequest.id.toString(\"hex\"), error)); // Bad Cached Value? One more try without the cache.\n\n if (!!cacheValue) {\n _this3.VerifyOCSPResponse(null, ocspRequest, proxyInfo).then(function () {\n resolve();\n }, function (error) {\n reject(error);\n });\n } else {\n reject(error);\n }\n } else {\n if (!cacheValue) {\n CertCheckAgent.StoreCacheEntry(ocspRequest.id.toString(\"hex\"), ocspResponse);\n }\n\n resolve();\n }\n });\n }));\n\n case 7:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n }\n }, {\n key: \"UpdateCache\",\n value: function UpdateCache(req, proxyInfo) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee5() {\n var signature, rawResponse;\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n signature = req.id.toString(\"hex\");\n this.onEvent(new OCSPCacheUpdateNeededEvent(signature));\n _context5.next = 4;\n return this.GetOCSPResponse(req, proxyInfo);\n\n case 4:\n rawResponse = _context5.sent;\n this.StoreCacheEntry(signature, rawResponse);\n this.onEvent(new OCSPCacheUpdateCompleteEvent(req.id.toString(\"hex\")));\n\n case 7:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this);\n }));\n }\n }, {\n key: \"StoreCacheEntry\",\n value: function StoreCacheEntry(sig, rawResponse) {\n this.StoreMemoryCacheEntry(sig, rawResponse);\n this.StoreDiskCacheEntry(sig, rawResponse);\n }\n }, {\n key: \"StoreMemoryCacheEntry\",\n value: function StoreMemoryCacheEntry(sig, rawResponse) {\n this.privMemCache[sig] = rawResponse;\n this.onEvent(new OCSPMemoryCacheStoreEvent(sig));\n }\n }, {\n key: \"StoreDiskCacheEntry\",\n value: function StoreDiskCacheEntry(sig, rawResponse) {\n var _this4 = this;\n\n this.privDiskCache.set(sig, rawResponse).then(function () {\n _this4.onEvent(new OCSPDiskCacheStoreEvent(sig));\n });\n }\n }, {\n key: \"GetOCSPResponse\",\n value: function GetOCSPResponse(req, proxyInfo) {\n var _this5 = this;\n\n var ocspMethod = \"1.3.6.1.5.5.7.48.1\";\n var options = {};\n\n if (!!proxyInfo) {\n var agent = CertCheckAgent.GetProxyAgent(proxyInfo);\n options.agent = agent;\n }\n\n return new Promise(function (resolve, reject) {\n ocsp.utils.getAuthorityInfo(req.cert, ocspMethod, function (error, uri) {\n if (error) {\n reject(error);\n return;\n }\n\n var parsedUri = parse.default(uri);\n parsedUri.path = parsedUri.pathname;\n options = Object.assign(Object.assign({}, options), parsedUri);\n ocsp.utils.getResponse(options, req.data, function (error, raw) {\n if (error) {\n reject(error);\n return;\n }\n\n _this5.onEvent(new OCSPResponseRetrievedEvent(req.certID.toString(\"hex\")));\n\n resolve(raw);\n });\n });\n });\n }\n }]);\n\n return CertCheckAgent;\n}(); // Test hook to enable forcing expiration / refresh to happen.\n\nCertCheckAgent.testTimeOffset = 0; // Test hook to disable stapling for cache testing.\n\nCertCheckAgent.forceDisableOCSPStapling = false; // An in memory cache for recived responses.\n\nCertCheckAgent.privMemCache = {};\n\nCertCheckAgent.onEvent = function (event) {\n Events.instance.onEvent(event);\n};","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","var isTag = require(\"domelementtype\").isTag;\n\nmodule.exports = {\n filter: filter,\n find: find,\n findOneChild: findOneChild,\n findOne: findOne,\n existsOne: existsOne,\n findAll: findAll\n};\n\nfunction filter(test, element, recurse, limit) {\n if (!Array.isArray(element)) element = [element];\n\n if (typeof limit !== \"number\" || !isFinite(limit)) {\n limit = Infinity;\n }\n\n return find(test, element, recurse !== false, limit);\n}\n\nfunction find(test, elems, recurse, limit) {\n var result = [],\n childs;\n\n for (var i = 0, j = elems.length; i < j; i++) {\n if (test(elems[i])) {\n result.push(elems[i]);\n if (--limit <= 0) break;\n }\n\n childs = elems[i].children;\n\n if (recurse && childs && childs.length > 0) {\n childs = find(test, childs, recurse, limit);\n result = result.concat(childs);\n limit -= childs.length;\n if (limit <= 0) break;\n }\n }\n\n return result;\n}\n\nfunction findOneChild(test, elems) {\n for (var i = 0, l = elems.length; i < l; i++) {\n if (test(elems[i])) return elems[i];\n }\n\n return null;\n}\n\nfunction findOne(test, elems) {\n var elem = null;\n\n for (var i = 0, l = elems.length; i < l && !elem; i++) {\n if (!isTag(elems[i])) {\n continue;\n } else if (test(elems[i])) {\n elem = elems[i];\n } else if (elems[i].children.length > 0) {\n elem = findOne(test, elems[i].children);\n }\n }\n\n return elem;\n}\n\nfunction existsOne(test, elems) {\n for (var i = 0, l = elems.length; i < l; i++) {\n if (isTag(elems[i]) && (test(elems[i]) || elems[i].children.length > 0 && existsOne(test, elems[i].children))) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction findAll(test, rootElems) {\n var result = [];\n var stack = rootElems.slice();\n\n while (stack.length) {\n var elem = stack.shift();\n if (!isTag(elem)) continue;\n\n if (elem.children && elem.children.length > 0) {\n stack.unshift.apply(stack, elem.children);\n }\n\n if (test(elem)) result.push(elem);\n }\n\n return result;\n}","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Define speech synthesis audio output formats.\n * @enum SpeechSynthesisOutputFormat\n * Updated in version 1.17.0\n */\nexport var SpeechSynthesisOutputFormat;\n\n(function (SpeechSynthesisOutputFormat) {\n /**\n * raw-8khz-8bit-mono-mulaw\n * @member SpeechSynthesisOutputFormat.Raw8Khz8BitMonoMULaw,\n */\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Raw8Khz8BitMonoMULaw\"] = 0] = \"Raw8Khz8BitMonoMULaw\";\n /**\n * riff-16khz-16kbps-mono-siren\n * @note Unsupported by the service. Do not use this value.\n * @member SpeechSynthesisOutputFormat.Riff16Khz16KbpsMonoSiren\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Riff16Khz16KbpsMonoSiren\"] = 1] = \"Riff16Khz16KbpsMonoSiren\";\n /**\n * audio-16khz-16kbps-mono-siren\n * @note Unsupported by the service. Do not use this value.\n * @member SpeechSynthesisOutputFormat.Audio16Khz16KbpsMonoSiren\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio16Khz16KbpsMonoSiren\"] = 2] = \"Audio16Khz16KbpsMonoSiren\";\n /**\n * audio-16khz-32kbitrate-mono-mp3\n * @member SpeechSynthesisOutputFormat.Audio16Khz32KBitRateMonoMp3\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio16Khz32KBitRateMonoMp3\"] = 3] = \"Audio16Khz32KBitRateMonoMp3\";\n /**\n * audio-16khz-128kbitrate-mono-mp3\n * @member SpeechSynthesisOutputFormat.Audio16Khz128KBitRateMonoMp3\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio16Khz128KBitRateMonoMp3\"] = 4] = \"Audio16Khz128KBitRateMonoMp3\";\n /**\n * audio-16khz-64kbitrate-mono-mp3\n * @member SpeechSynthesisOutputFormat.Audio16Khz64KBitRateMonoMp3\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio16Khz64KBitRateMonoMp3\"] = 5] = \"Audio16Khz64KBitRateMonoMp3\";\n /**\n * audio-24khz-48kbitrate-mono-mp3\n * @member SpeechSynthesisOutputFormat.Audio24Khz48KBitRateMonoMp3\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio24Khz48KBitRateMonoMp3\"] = 6] = \"Audio24Khz48KBitRateMonoMp3\";\n /**\n * audio-24khz-96kbitrate-mono-mp3\n * @member SpeechSynthesisOutputFormat.Audio24Khz96KBitRateMonoMp3\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio24Khz96KBitRateMonoMp3\"] = 7] = \"Audio24Khz96KBitRateMonoMp3\";\n /**\n * audio-24khz-160kbitrate-mono-mp3\n * @member SpeechSynthesisOutputFormat.Audio24Khz160KBitRateMonoMp3\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio24Khz160KBitRateMonoMp3\"] = 8] = \"Audio24Khz160KBitRateMonoMp3\";\n /**\n * raw-16khz-16bit-mono-truesilk\n * @member SpeechSynthesisOutputFormat.Raw16Khz16BitMonoTrueSilk\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Raw16Khz16BitMonoTrueSilk\"] = 9] = \"Raw16Khz16BitMonoTrueSilk\";\n /**\n * riff-16khz-16bit-mono-pcm\n * @member SpeechSynthesisOutputFormat.Riff16Khz16BitMonoPcm\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Riff16Khz16BitMonoPcm\"] = 10] = \"Riff16Khz16BitMonoPcm\";\n /**\n * riff-8khz-16bit-mono-pcm\n * @member SpeechSynthesisOutputFormat.Riff8Khz16BitMonoPcm\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Riff8Khz16BitMonoPcm\"] = 11] = \"Riff8Khz16BitMonoPcm\";\n /**\n * riff-24khz-16bit-mono-pcm\n * @member SpeechSynthesisOutputFormat.Riff24Khz16BitMonoPcm\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Riff24Khz16BitMonoPcm\"] = 12] = \"Riff24Khz16BitMonoPcm\";\n /**\n * riff-8khz-8bit-mono-mulaw\n * @member SpeechSynthesisOutputFormat.Riff8Khz8BitMonoMULaw\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Riff8Khz8BitMonoMULaw\"] = 13] = \"Riff8Khz8BitMonoMULaw\";\n /**\n * raw-16khz-16bit-mono-pcm\n * @member SpeechSynthesisOutputFormat.Raw16Khz16BitMonoPcm\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Raw16Khz16BitMonoPcm\"] = 14] = \"Raw16Khz16BitMonoPcm\";\n /**\n * raw-24khz-16bit-mono-pcm\n * @member SpeechSynthesisOutputFormat.Raw24Khz16BitMonoPcm\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Raw24Khz16BitMonoPcm\"] = 15] = \"Raw24Khz16BitMonoPcm\";\n /**\n * raw-8khz-16bit-mono-pcm\n * @member SpeechSynthesisOutputFormat.Raw8Khz16BitMonoPcm\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Raw8Khz16BitMonoPcm\"] = 16] = \"Raw8Khz16BitMonoPcm\";\n /**\n * ogg-16khz-16bit-mono-opus\n * @member SpeechSynthesisOutputFormat.Ogg16Khz16BitMonoOpus\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Ogg16Khz16BitMonoOpus\"] = 17] = \"Ogg16Khz16BitMonoOpus\";\n /**\n * ogg-24khz-16bit-mono-opus\n * @member SpeechSynthesisOutputFormat.Ogg24Khz16BitMonoOpus\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Ogg24Khz16BitMonoOpus\"] = 18] = \"Ogg24Khz16BitMonoOpus\";\n /**\n * raw-48khz-16bit-mono-pcm\n * @member SpeechSynthesisOutputFormat.Raw48Khz16BitMonoPcm\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Raw48Khz16BitMonoPcm\"] = 19] = \"Raw48Khz16BitMonoPcm\";\n /**\n * riff-48khz-16bit-mono-pcm\n * @member SpeechSynthesisOutputFormat.Riff48Khz16BitMonoPcm\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Riff48Khz16BitMonoPcm\"] = 20] = \"Riff48Khz16BitMonoPcm\";\n /**\n * audio-48khz-96kbitrate-mono-mp3\n * @member SpeechSynthesisOutputFormat.Audio48Khz96KBitRateMonoMp3\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio48Khz96KBitRateMonoMp3\"] = 21] = \"Audio48Khz96KBitRateMonoMp3\";\n /**\n * audio-48khz-192kbitrate-mono-mp3\n * @member SpeechSynthesisOutputFormat.Audio48Khz192KBitRateMonoMp3\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio48Khz192KBitRateMonoMp3\"] = 22] = \"Audio48Khz192KBitRateMonoMp3\";\n /**\n * ogg-48khz-16bit-mono-opus\n * Added in version 1.16.0\n * @member SpeechSynthesisOutputFormat.Ogg48Khz16BitMonoOpus\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Ogg48Khz16BitMonoOpus\"] = 23] = \"Ogg48Khz16BitMonoOpus\";\n /**\n * webm-16khz-16bit-mono-opus\n * Added in version 1.16.0\n * @member SpeechSynthesisOutputFormat.Webm16Khz16BitMonoOpus\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Webm16Khz16BitMonoOpus\"] = 24] = \"Webm16Khz16BitMonoOpus\";\n /**\n * webm-24khz-16bit-mono-opus\n * Added in version 1.16.0\n * @member SpeechSynthesisOutputFormat.Webm24Khz16BitMonoOpus\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Webm24Khz16BitMonoOpus\"] = 25] = \"Webm24Khz16BitMonoOpus\";\n /**\n * raw-24khz-16bit-mono-truesilk\n * Added in version 1.17.0\n * @member SpeechSynthesisOutputFormat.Raw24Khz16BitMonoTrueSilk\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Raw24Khz16BitMonoTrueSilk\"] = 26] = \"Raw24Khz16BitMonoTrueSilk\";\n /**\n * raw-8khz-8bit-mono-alaw\n * Added in version 1.17.0\n * @member SpeechSynthesisOutputFormat.Raw8Khz8BitMonoALaw\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Raw8Khz8BitMonoALaw\"] = 27] = \"Raw8Khz8BitMonoALaw\";\n /**\n * riff-8khz-8bit-mono-alaw\n * Added in version 1.17.0\n * @member SpeechSynthesisOutputFormat.Riff8Khz8BitMonoALaw\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Riff8Khz8BitMonoALaw\"] = 28] = \"Riff8Khz8BitMonoALaw\";\n /**\n * webm-24khz-16bit-24kbps-mono-opus\n * Audio compressed by OPUS codec in a webm container, with bitrate of 24kbps, optimized for IoT scenario.\n * Added in version 1.19.0\n * @member SpeechSynthesisOutputFormat.Webm24Khz16Bit24KbpsMonoOpus\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Webm24Khz16Bit24KbpsMonoOpus\"] = 29] = \"Webm24Khz16Bit24KbpsMonoOpus\";\n /**\n * audio-16khz-16bit-32kbps-mono-opus\n * Audio compressed by OPUS codec without container, with bitrate of 32kbps.\n * Added in version 1.20.0\n * @member SpeechSynthesisOutputFormat.Audio16Khz16Bit32KbpsMonoOpus\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio16Khz16Bit32KbpsMonoOpus\"] = 30] = \"Audio16Khz16Bit32KbpsMonoOpus\";\n /**\n * audio-24khz-16bit-48kbps-mono-opus\n * Audio compressed by OPUS codec without container, with bitrate of 48kbps.\n * Added in version 1.20.0\n * @member SpeechSynthesisOutputFormat.Audio24Khz16Bit48KbpsMonoOpus\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio24Khz16Bit48KbpsMonoOpus\"] = 31] = \"Audio24Khz16Bit48KbpsMonoOpus\";\n /**\n * audio-24khz-16bit-24kbps-mono-opus\n * Audio compressed by OPUS codec without container, with bitrate of 24kbps.\n * Added in version 1.20.0\n * @member SpeechSynthesisOutputFormat.Audio24Khz16Bit24KbpsMonoOpus\n */\n\n SpeechSynthesisOutputFormat[SpeechSynthesisOutputFormat[\"Audio24Khz16Bit24KbpsMonoOpus\"] = 32] = \"Audio24Khz16Bit24KbpsMonoOpus\";\n})(SpeechSynthesisOutputFormat || (SpeechSynthesisOutputFormat = {}));","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = isValidTagOrAttributeName;\nvar VALID_TAG_REGEX = /^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/;\nvar nameCache = {};\n\nfunction isValidTagOrAttributeName(tagName) {\n if (!nameCache.hasOwnProperty(tagName)) {\n nameCache[tagName] = VALID_TAG_REGEX.test(tagName);\n }\n\n return nameCache[tagName];\n}","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Defines speech property ids.\n * @class PropertyId\n */\nexport var PropertyId;\n\n(function (PropertyId) {\n /**\n * The Cognitive Services Speech Service subscription Key. If you are using an intent recognizer, you need to specify\n * to specify the LUIS endpoint key for your particular LUIS app. Under normal circumstances, you shouldn't\n * have to use this property directly.\n * Instead, use [[SpeechConfig.fromSubscription]].\n * @member PropertyId.SpeechServiceConnection_Key\n */\n PropertyId[PropertyId[\"SpeechServiceConnection_Key\"] = 0] = \"SpeechServiceConnection_Key\";\n /**\n * The Cognitive Services Speech Service endpoint (url). Under normal circumstances, you shouldn't\n * have to use this property directly.\n * Instead, use [[SpeechConfig.fromEndpoint]].\n * NOTE: This endpoint is not the same as the endpoint used to obtain an access token.\n * @member PropertyId.SpeechServiceConnection_Endpoint\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_Endpoint\"] = 1] = \"SpeechServiceConnection_Endpoint\";\n /**\n * The Cognitive Services Speech Service region. Under normal circumstances, you shouldn't have to\n * use this property directly.\n * Instead, use [[SpeechConfig.fromSubscription]], [[SpeechConfig.fromEndpoint]], [[SpeechConfig.fromAuthorizationToken]].\n * @member PropertyId.SpeechServiceConnection_Region\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_Region\"] = 2] = \"SpeechServiceConnection_Region\";\n /**\n * The Cognitive Services Speech Service authorization token (aka access token). Under normal circumstances,\n * you shouldn't have to use this property directly.\n * Instead, use [[SpeechConfig.fromAuthorizationToken]], [[SpeechRecognizer.authorizationToken]],\n * [[IntentRecognizer.authorizationToken]], [[TranslationRecognizer.authorizationToken]], [[SpeakerRecognizer.authorizationToken]].\n * @member PropertyId.SpeechServiceAuthorization_Token\n */\n\n PropertyId[PropertyId[\"SpeechServiceAuthorization_Token\"] = 3] = \"SpeechServiceAuthorization_Token\";\n /**\n * The Cognitive Services Speech Service authorization type. Currently unused.\n * @member PropertyId.SpeechServiceAuthorization_Type\n */\n\n PropertyId[PropertyId[\"SpeechServiceAuthorization_Type\"] = 4] = \"SpeechServiceAuthorization_Type\";\n /**\n * The Cognitive Services Speech Service endpoint id. Under normal circumstances, you shouldn't\n * have to use this property directly.\n * Instead, use [[SpeechConfig.endpointId]].\n * NOTE: The endpoint id is available in the Speech Portal, listed under Endpoint Details.\n * @member PropertyId.SpeechServiceConnection_EndpointId\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_EndpointId\"] = 5] = \"SpeechServiceConnection_EndpointId\";\n /**\n * The list of comma separated languages (BCP-47 format) used as target translation languages. Under normal circumstances,\n * you shouldn't have to use this property directly.\n * Instead use [[SpeechTranslationConfig.addTargetLanguage]],\n * [[SpeechTranslationConfig.targetLanguages]], [[TranslationRecognizer.targetLanguages]].\n * @member PropertyId.SpeechServiceConnection_TranslationToLanguages\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_TranslationToLanguages\"] = 6] = \"SpeechServiceConnection_TranslationToLanguages\";\n /**\n * The name of the Cognitive Service Text to Speech Service Voice. Under normal circumstances, you shouldn't have to use this\n * property directly.\n * Instead, use [[SpeechTranslationConfig.voiceName]].\n * NOTE: Valid voice names can be found here.\n * @member PropertyId.SpeechServiceConnection_TranslationVoice\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_TranslationVoice\"] = 7] = \"SpeechServiceConnection_TranslationVoice\";\n /**\n * Translation features.\n * @member PropertyId.SpeechServiceConnection_TranslationFeatures\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_TranslationFeatures\"] = 8] = \"SpeechServiceConnection_TranslationFeatures\";\n /**\n * The Language Understanding Service Region. Under normal circumstances, you shouldn't have to use this property directly.\n * Instead, use [[LanguageUnderstandingModel]].\n * @member PropertyId.SpeechServiceConnection_IntentRegion\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_IntentRegion\"] = 9] = \"SpeechServiceConnection_IntentRegion\";\n /**\n * The host name of the proxy server used to connect to the Cognitive Services Speech Service. Only relevant in Node.js environments.\n * You shouldn't have to use this property directly.\n * Instead use .\n * Added in version 1.4.0.\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_ProxyHostName\"] = 10] = \"SpeechServiceConnection_ProxyHostName\";\n /**\n * The port of the proxy server used to connect to the Cognitive Services Speech Service. Only relevant in Node.js environments.\n * You shouldn't have to use this property directly.\n * Instead use .\n * Added in version 1.4.0.\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_ProxyPort\"] = 11] = \"SpeechServiceConnection_ProxyPort\";\n /**\n * The user name of the proxy server used to connect to the Cognitive Services Speech Service. Only relevant in Node.js environments.\n * You shouldn't have to use this property directly.\n * Instead use .\n * Added in version 1.4.0.\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_ProxyUserName\"] = 12] = \"SpeechServiceConnection_ProxyUserName\";\n /**\n * The password of the proxy server used to connect to the Cognitive Services Speech Service. Only relevant in Node.js environments.\n * You shouldn't have to use this property directly.\n * Instead use .\n * Added in version 1.4.0.\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_ProxyPassword\"] = 13] = \"SpeechServiceConnection_ProxyPassword\";\n /**\n * The Cognitive Services Speech Service recognition Mode. Can be \"INTERACTIVE\", \"CONVERSATION\", \"DICTATION\".\n * This property is intended to be read-only. The SDK is using it internally.\n * @member PropertyId.SpeechServiceConnection_RecoMode\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_RecoMode\"] = 14] = \"SpeechServiceConnection_RecoMode\";\n /**\n * The spoken language to be recognized (in BCP-47 format). Under normal circumstances, you shouldn't have to use this property\n * directly.\n * Instead, use [[SpeechConfig.speechRecognitionLanguage]].\n * @member PropertyId.SpeechServiceConnection_RecoLanguage\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_RecoLanguage\"] = 15] = \"SpeechServiceConnection_RecoLanguage\";\n /**\n * The session id. This id is a universally unique identifier (aka UUID) representing a specific binding of an audio input stream\n * and the underlying speech recognition instance to which it is bound. Under normal circumstances, you shouldn't have to use this\n * property directly.\n * Instead use [[SessionEventArgs.sessionId]].\n * @member PropertyId.Speech_SessionId\n */\n\n PropertyId[PropertyId[\"Speech_SessionId\"] = 16] = \"Speech_SessionId\";\n /**\n * The spoken language to be synthesized (e.g. en-US)\n * @member PropertyId.SpeechServiceConnection_SynthLanguage\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_SynthLanguage\"] = 17] = \"SpeechServiceConnection_SynthLanguage\";\n /**\n * The name of the TTS voice to be used for speech synthesis\n * @member PropertyId.SpeechServiceConnection_SynthVoice\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_SynthVoice\"] = 18] = \"SpeechServiceConnection_SynthVoice\";\n /**\n * The string to specify TTS output audio format\n * @member PropertyId.SpeechServiceConnection_SynthOutputFormat\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_SynthOutputFormat\"] = 19] = \"SpeechServiceConnection_SynthOutputFormat\";\n /**\n * The list of comma separated languages used as possible source languages\n * Added in version 1.13.0\n * @member PropertyId.SpeechServiceConnection_AutoDetectSourceLanguages\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_AutoDetectSourceLanguages\"] = 20] = \"SpeechServiceConnection_AutoDetectSourceLanguages\";\n /**\n * The requested Cognitive Services Speech Service response output format (simple or detailed). Under normal circumstances, you shouldn't have\n * to use this property directly.\n * Instead use [[SpeechConfig.outputFormat]].\n * @member PropertyId.SpeechServiceResponse_RequestDetailedResultTrueFalse\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_RequestDetailedResultTrueFalse\"] = 21] = \"SpeechServiceResponse_RequestDetailedResultTrueFalse\";\n /**\n * The requested Cognitive Services Speech Service response output profanity level. Currently unused.\n * @member PropertyId.SpeechServiceResponse_RequestProfanityFilterTrueFalse\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_RequestProfanityFilterTrueFalse\"] = 22] = \"SpeechServiceResponse_RequestProfanityFilterTrueFalse\";\n /**\n * The Cognitive Services Speech Service response output (in JSON format). This property is available on recognition result objects only.\n * @member PropertyId.SpeechServiceResponse_JsonResult\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_JsonResult\"] = 23] = \"SpeechServiceResponse_JsonResult\";\n /**\n * The Cognitive Services Speech Service error details (in JSON format). Under normal circumstances, you shouldn't have to\n * use this property directly. Instead use [[CancellationDetails.errorDetails]].\n * @member PropertyId.SpeechServiceResponse_JsonErrorDetails\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_JsonErrorDetails\"] = 24] = \"SpeechServiceResponse_JsonErrorDetails\";\n /**\n * The cancellation reason. Currently unused.\n * @member PropertyId.CancellationDetails_Reason\n */\n\n PropertyId[PropertyId[\"CancellationDetails_Reason\"] = 25] = \"CancellationDetails_Reason\";\n /**\n * The cancellation text. Currently unused.\n * @member PropertyId.CancellationDetails_ReasonText\n */\n\n PropertyId[PropertyId[\"CancellationDetails_ReasonText\"] = 26] = \"CancellationDetails_ReasonText\";\n /**\n * The Cancellation detailed text. Currently unused.\n * @member PropertyId.CancellationDetails_ReasonDetailedText\n */\n\n PropertyId[PropertyId[\"CancellationDetails_ReasonDetailedText\"] = 27] = \"CancellationDetails_ReasonDetailedText\";\n /**\n * The Language Understanding Service response output (in JSON format). Available via [[IntentRecognitionResult]]\n * @member PropertyId.LanguageUnderstandingServiceResponse_JsonResult\n */\n\n PropertyId[PropertyId[\"LanguageUnderstandingServiceResponse_JsonResult\"] = 28] = \"LanguageUnderstandingServiceResponse_JsonResult\";\n /**\n * The URL string built from speech configuration.\n * This property is intended to be read-only. The SDK is using it internally.\n * NOTE: Added in version 1.7.0.\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_Url\"] = 29] = \"SpeechServiceConnection_Url\";\n /**\n * The initial silence timeout value (in milliseconds) used by the service.\n * Added in version 1.7.0\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_InitialSilenceTimeoutMs\"] = 30] = \"SpeechServiceConnection_InitialSilenceTimeoutMs\";\n /**\n * The end silence timeout value (in milliseconds) used by the service.\n * Added in version 1.7.0\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_EndSilenceTimeoutMs\"] = 31] = \"SpeechServiceConnection_EndSilenceTimeoutMs\";\n /**\n * A boolean value specifying whether audio logging is enabled in the service or not.\n * Added in version 1.7.0\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_EnableAudioLogging\"] = 32] = \"SpeechServiceConnection_EnableAudioLogging\";\n /**\n * The requested Cognitive Services Speech Service response output profanity setting.\n * Allowed values are \"masked\", \"removed\", and \"raw\".\n * Added in version 1.7.0.\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_ProfanityOption\"] = 33] = \"SpeechServiceResponse_ProfanityOption\";\n /**\n * A string value specifying which post processing option should be used by service.\n * Allowed values are \"TrueText\".\n * Added in version 1.7.0\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_PostProcessingOption\"] = 34] = \"SpeechServiceResponse_PostProcessingOption\";\n /**\n * A boolean value specifying whether to include word-level timestamps in the response result.\n * Added in version 1.7.0\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_RequestWordLevelTimestamps\"] = 35] = \"SpeechServiceResponse_RequestWordLevelTimestamps\";\n /**\n * The number of times a word has to be in partial results to be returned.\n * Added in version 1.7.0\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_StablePartialResultThreshold\"] = 36] = \"SpeechServiceResponse_StablePartialResultThreshold\";\n /**\n * A string value specifying the output format option in the response result. Internal use only.\n * Added in version 1.7.0.\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_OutputFormatOption\"] = 37] = \"SpeechServiceResponse_OutputFormatOption\";\n /**\n * A boolean value to request for stabilizing translation partial results by omitting words in the end.\n * Added in version 1.7.0.\n */\n\n PropertyId[PropertyId[\"SpeechServiceResponse_TranslationRequestStablePartialResult\"] = 38] = \"SpeechServiceResponse_TranslationRequestStablePartialResult\";\n /**\n * Identifier used to connect to the backend service.\n * @member PropertyId.Conversation_ApplicationId\n */\n\n PropertyId[PropertyId[\"Conversation_ApplicationId\"] = 39] = \"Conversation_ApplicationId\";\n /**\n * Type of dialog backend to connect to.\n * @member PropertyId.Conversation_DialogType\n */\n\n PropertyId[PropertyId[\"Conversation_DialogType\"] = 40] = \"Conversation_DialogType\";\n /**\n * Silence timeout for listening\n * @member PropertyId.Conversation_Initial_Silence_Timeout\n */\n\n PropertyId[PropertyId[\"Conversation_Initial_Silence_Timeout\"] = 41] = \"Conversation_Initial_Silence_Timeout\";\n /**\n * From Id to add to speech recognition activities.\n * @member PropertyId.Conversation_From_Id\n */\n\n PropertyId[PropertyId[\"Conversation_From_Id\"] = 42] = \"Conversation_From_Id\";\n /**\n * ConversationId for the session.\n * @member PropertyId.Conversation_Conversation_Id\n */\n\n PropertyId[PropertyId[\"Conversation_Conversation_Id\"] = 43] = \"Conversation_Conversation_Id\";\n /**\n * Comma separated list of custom voice deployment ids.\n * @member PropertyId.Conversation_Custom_Voice_Deployment_Ids\n */\n\n PropertyId[PropertyId[\"Conversation_Custom_Voice_Deployment_Ids\"] = 44] = \"Conversation_Custom_Voice_Deployment_Ids\";\n /**\n * Speech activity template, stamp properties from the template on the activity generated by the service for speech.\n * @member PropertyId.Conversation_Speech_Activity_Template\n * Added in version 1.10.0.\n */\n\n PropertyId[PropertyId[\"Conversation_Speech_Activity_Template\"] = 45] = \"Conversation_Speech_Activity_Template\";\n /**\n * Enables or disables the receipt of turn status messages as obtained on the turnStatusReceived event.\n * @member PropertyId.Conversation_Request_Bot_Status_Messages\n * Added in version 1.15.0.\n */\n\n PropertyId[PropertyId[\"Conversation_Request_Bot_Status_Messages\"] = 46] = \"Conversation_Request_Bot_Status_Messages\";\n /**\n * Specifies the connection ID to be provided in the Agent configuration message, e.g. a Direct Line token for\n * channel authentication.\n * Added in version 1.15.1.\n */\n\n PropertyId[PropertyId[\"Conversation_Agent_Connection_Id\"] = 47] = \"Conversation_Agent_Connection_Id\";\n /**\n * The Cognitive Services Speech Service host (url). Under normal circumstances, you shouldn't have to use this property directly.\n * Instead, use [[SpeechConfig.fromHost]].\n */\n\n PropertyId[PropertyId[\"SpeechServiceConnection_Host\"] = 48] = \"SpeechServiceConnection_Host\";\n /**\n * Set the host for service calls to the Conversation Translator REST management and websocket calls.\n */\n\n PropertyId[PropertyId[\"ConversationTranslator_Host\"] = 49] = \"ConversationTranslator_Host\";\n /**\n * Optionally set the the host's display name.\n * Used when joining a conversation.\n */\n\n PropertyId[PropertyId[\"ConversationTranslator_Name\"] = 50] = \"ConversationTranslator_Name\";\n /**\n * Optionally set a value for the X-CorrelationId request header.\n * Used for troubleshooting errors in the server logs. It should be a valid guid.\n */\n\n PropertyId[PropertyId[\"ConversationTranslator_CorrelationId\"] = 51] = \"ConversationTranslator_CorrelationId\";\n /**\n * Set the conversation token to be sent to the speech service. This enables the\n * service to service call from the speech service to the Conversation Translator service for relaying\n * recognitions. For internal use.\n */\n\n PropertyId[PropertyId[\"ConversationTranslator_Token\"] = 52] = \"ConversationTranslator_Token\";\n /**\n * The reference text of the audio for pronunciation evaluation.\n * For this and the following pronunciation assessment parameters, see\n * https://docs.microsoft.com/azure/cognitive-services/speech-service/rest-speech-to-text#pronunciation-assessment-parameters for details.\n * Under normal circumstances, you shouldn't have to use this property directly.\n * Added in version 1.15.0\n */\n\n PropertyId[PropertyId[\"PronunciationAssessment_ReferenceText\"] = 53] = \"PronunciationAssessment_ReferenceText\";\n /**\n * The point system for pronunciation score calibration (FivePoint or HundredMark).\n * Under normal circumstances, you shouldn't have to use this property directly.\n * Added in version 1.15.0\n */\n\n PropertyId[PropertyId[\"PronunciationAssessment_GradingSystem\"] = 54] = \"PronunciationAssessment_GradingSystem\";\n /**\n * The pronunciation evaluation granularity (Phoneme, Word, or FullText).\n * Under normal circumstances, you shouldn't have to use this property directly.\n * Added in version 1.15.0\n */\n\n PropertyId[PropertyId[\"PronunciationAssessment_Granularity\"] = 55] = \"PronunciationAssessment_Granularity\";\n /**\n * Defines if enable miscue calculation.\n * With this enabled, the pronounced words will be compared to the reference text,\n * and will be marked with omission/insertion based on the comparison. The default setting is False.\n * Under normal circumstances, you shouldn't have to use this property directly.\n * Added in version 1.15.0\n */\n\n PropertyId[PropertyId[\"PronunciationAssessment_EnableMiscue\"] = 56] = \"PronunciationAssessment_EnableMiscue\";\n /**\n * The json string of pronunciation assessment parameters\n * Under normal circumstances, you shouldn't have to use this property directly.\n * Added in version 1.15.0\n */\n\n PropertyId[PropertyId[\"PronunciationAssessment_Json\"] = 57] = \"PronunciationAssessment_Json\";\n /**\n * Pronunciation assessment parameters.\n * This property is intended to be read-only. The SDK is using it internally.\n * Added in version 1.15.0\n */\n\n PropertyId[PropertyId[\"PronunciationAssessment_Params\"] = 58] = \"PronunciationAssessment_Params\";\n /**\n * Version of Speaker Recognition API to use.\n * Added in version 1.18.0\n */\n\n PropertyId[PropertyId[\"SpeakerRecognition_Api_Version\"] = 59] = \"SpeakerRecognition_Api_Version\";\n})(PropertyId || (PropertyId = {}));","\"use strict\";\n\nvar __importDefault = this && this.__importDefault || function (mod) {\n return mod && mod.__esModule ? mod : {\n \"default\": mod\n };\n};\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.escapeUTF8 = exports.escape = exports.encodeNonAsciiHTML = exports.encodeHTML = exports.encodeXML = void 0;\n\nvar xml_json_1 = __importDefault(require(\"./maps/xml.json\"));\n\nvar inverseXML = getInverseObj(xml_json_1.default);\nvar xmlReplacer = getInverseReplacer(inverseXML);\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in XML\n * documents using XML entities.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\n\nexports.encodeXML = getASCIIEncoder(inverseXML);\n\nvar entities_json_1 = __importDefault(require(\"./maps/entities.json\"));\n\nvar inverseHTML = getInverseObj(entities_json_1.default);\nvar htmlReplacer = getInverseReplacer(inverseHTML);\n/**\n * Encodes all entities and non-ASCII characters in the input.\n *\n * This includes characters that are valid ASCII characters in HTML documents.\n * For example `#` will be encoded as `#`. To get a more compact output,\n * consider using the `encodeNonAsciiHTML` function.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\n\nexports.encodeHTML = getInverse(inverseHTML, htmlReplacer);\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in HTML\n * documents using HTML entities.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\n\nexports.encodeNonAsciiHTML = getASCIIEncoder(inverseHTML);\n\nfunction getInverseObj(obj) {\n return Object.keys(obj).sort().reduce(function (inverse, name) {\n inverse[obj[name]] = \"&\" + name + \";\";\n return inverse;\n }, {});\n}\n\nfunction getInverseReplacer(inverse) {\n var single = [];\n var multiple = [];\n\n for (var _i = 0, _a = Object.keys(inverse); _i < _a.length; _i++) {\n var k = _a[_i];\n\n if (k.length === 1) {\n // Add value to single array\n single.push(\"\\\\\" + k);\n } else {\n // Add value to multiple array\n multiple.push(k);\n }\n } // Add ranges to single characters.\n\n\n single.sort();\n\n for (var start = 0; start < single.length - 1; start++) {\n // Find the end of a run of characters\n var end = start;\n\n while (end < single.length - 1 && single[end].charCodeAt(1) + 1 === single[end + 1].charCodeAt(1)) {\n end += 1;\n }\n\n var count = 1 + end - start; // We want to replace at least three characters\n\n if (count < 3) continue;\n single.splice(start, count, single[start] + \"-\" + single[end]);\n }\n\n multiple.unshift(\"[\" + single.join(\"\") + \"]\");\n return new RegExp(multiple.join(\"|\"), \"g\");\n} // /[^\\0-\\x7F]/gu\n\n\nvar reNonASCII = /(?:[\\x80-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])/g;\nvar getCodePoint = // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\nString.prototype.codePointAt != null ? // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\nfunction (str) {\n return str.codePointAt(0);\n} : // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\nfunction (c) {\n return (c.charCodeAt(0) - 0xd800) * 0x400 + c.charCodeAt(1) - 0xdc00 + 0x10000;\n};\n\nfunction singleCharReplacer(c) {\n return \"&#x\" + (c.length > 1 ? getCodePoint(c) : c.charCodeAt(0)).toString(16).toUpperCase() + \";\";\n}\n\nfunction getInverse(inverse, re) {\n return function (data) {\n return data.replace(re, function (name) {\n return inverse[name];\n }).replace(reNonASCII, singleCharReplacer);\n };\n}\n\nvar reEscapeChars = new RegExp(xmlReplacer.source + \"|\" + reNonASCII.source, \"g\");\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in XML\n * documents using numeric hexadecimal reference (eg. `ü`).\n *\n * Have a look at `escapeUTF8` if you want a more concise output at the expense\n * of reduced transportability.\n *\n * @param data String to escape.\n */\n\nfunction escape(data) {\n return data.replace(reEscapeChars, singleCharReplacer);\n}\n\nexports.escape = escape;\n/**\n * Encodes all characters not valid in XML documents using numeric hexadecimal\n * reference (eg. `ü`).\n *\n * Note that the output will be character-set dependent.\n *\n * @param data String to escape.\n */\n\nfunction escapeUTF8(data) {\n return data.replace(xmlReplacer, singleCharReplacer);\n}\n\nexports.escapeUTF8 = escapeUTF8;\n\nfunction getASCIIEncoder(obj) {\n return function (data) {\n return data.replace(reEscapeChars, function (c) {\n return obj[c] || singleCharReplacer(c);\n });\n };\n}","'use strict';\nvar $ = require('../internals/export');\nvar flattenIntoArray = require('../internals/flatten-into-array');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\n// `Array.prototype.flat` method\n// https://tc39.es/ecma262/#sec-array.prototype.flat\n$({ target: 'Array', proto: true }, {\n flat: function flat(/* depthArg = 1 */) {\n var depthArg = arguments.length ? arguments[0] : undefined;\n var O = toObject(this);\n var sourceLen = toLength(O.length);\n var A = arraySpeciesCreate(O, 0);\n A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg));\n return A;\n }\n});\n","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { MessageType } from \"./ConnectionMessage\";\nimport { ArgumentNullError, InvalidOperationError } from \"./Error\";\nimport { createNoDashGuid } from \"./Guid\";\nexport var RawWebsocketMessage = /*#__PURE__*/function () {\n function RawWebsocketMessage(messageType, payload, id) {\n _classCallCheck(this, RawWebsocketMessage);\n\n this.privPayload = null;\n\n if (!payload) {\n throw new ArgumentNullError(\"payload\");\n }\n\n if (messageType === MessageType.Binary && payload.__proto__.constructor.name !== \"ArrayBuffer\") {\n throw new InvalidOperationError(\"Payload must be ArrayBuffer\");\n }\n\n if (messageType === MessageType.Text && !(typeof payload === \"string\")) {\n throw new InvalidOperationError(\"Payload must be a string\");\n }\n\n this.privMessageType = messageType;\n this.privPayload = payload;\n this.privId = id ? id : createNoDashGuid();\n }\n\n _createClass(RawWebsocketMessage, [{\n key: \"messageType\",\n get: function get() {\n return this.privMessageType;\n }\n }, {\n key: \"payload\",\n get: function get() {\n return this.privPayload;\n }\n }, {\n key: \"textContent\",\n get: function get() {\n if (this.privMessageType === MessageType.Binary) {\n throw new InvalidOperationError(\"Not supported for binary message\");\n }\n\n return this.privPayload;\n }\n }, {\n key: \"binaryContent\",\n get: function get() {\n if (this.privMessageType === MessageType.Text) {\n throw new InvalidOperationError(\"Not supported for text message\");\n }\n\n return this.privPayload;\n }\n }, {\n key: \"id\",\n get: function get() {\n return this.privId;\n }\n }]);\n\n return RawWebsocketMessage;\n}();","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","'use strict';\n/* global fetch, btoa, Headers */\n\nvar _regeneratorRuntime = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/regenerator\");\n\nvar _defineProperty = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/defineProperty\");\n\nvar _asyncToGenerator = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/asyncToGenerator\");\n\nvar _slicedToArray = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/slicedToArray\");\n\nvar _classCallCheck = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/classCallCheck\");\n\nvar _assertThisInitialized = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/assertThisInitialized\");\n\nvar _inherits = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/inherits\");\n\nvar _possibleConstructorReturn = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/possibleConstructorReturn\");\n\nvar _getPrototypeOf = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/getPrototypeOf\");\n\nvar _wrapNativeSuper = require(\"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/wrapNativeSuper\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nvar core = require('./core');\n\nvar StatusError = /*#__PURE__*/function (_Error) {\n _inherits(StatusError, _Error);\n\n var _super = _createSuper(StatusError);\n\n function StatusError(res) {\n var _this;\n\n _classCallCheck(this, StatusError);\n\n for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n params[_key - 1] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(params));\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_assertThisInitialized(_this), StatusError);\n }\n\n _this.name = 'StatusError';\n _this.message = res.statusMessage;\n _this.statusCode = res.status;\n _this.res = res;\n _this.json = res.json.bind(res);\n _this.text = res.text.bind(res);\n _this.arrayBuffer = res.arrayBuffer.bind(res);\n var buffer;\n\n var get = function get() {\n if (!buffer) buffer = _this.arrayBuffer();\n return buffer;\n };\n\n Object.defineProperty(_assertThisInitialized(_this), 'responseBody', {\n get: get\n }); // match Node.js headers object\n\n _this.headers = {};\n\n var _iterator = _createForOfIteratorHelper(res.headers.entries()),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _step$value = _slicedToArray(_step.value, 2),\n key = _step$value[0],\n value = _step$value[1];\n\n _this.headers[key.toLowerCase()] = value;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return _this;\n }\n\n return StatusError;\n}( /*#__PURE__*/_wrapNativeSuper(Error));\n\nvar mkrequest = function mkrequest(statusCodes, method, encoding, headers, baseurl) {\n return /*#__PURE__*/function () {\n var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_url, body) {\n var _headers,\n parsed,\n resp,\n _args = arguments;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _headers = _args.length > 2 && _args[2] !== undefined ? _args[2] : {};\n _url = baseurl + (_url || '');\n parsed = new URL(_url);\n if (!headers) headers = {};\n\n if (parsed.username) {\n headers.Authorization = 'Basic ' + btoa(parsed.username + ':' + parsed.password);\n parsed = new URL(parsed.protocol + '//' + parsed.host + parsed.pathname + parsed.search);\n }\n\n if (!(parsed.protocol !== 'https:' && parsed.protocol !== 'http:')) {\n _context.next = 7;\n break;\n }\n\n throw new Error(\"Unknown protocol, \".concat(parsed.protocol));\n\n case 7:\n if (!body) {\n _context.next = 17;\n break;\n }\n\n if (!(body instanceof ArrayBuffer || ArrayBuffer.isView(body) || typeof body === 'string')) {\n _context.next = 11;\n break;\n }\n\n _context.next = 17;\n break;\n\n case 11:\n if (!(typeof body === 'object')) {\n _context.next = 16;\n break;\n }\n\n body = JSON.stringify(body);\n headers['Content-Type'] = 'application/json';\n _context.next = 17;\n break;\n\n case 16:\n throw new Error('Unknown body type.');\n\n case 17:\n _headers = new Headers(_objectSpread(_objectSpread({}, headers || {}), _headers));\n _context.next = 20;\n return fetch(parsed, {\n method: method,\n headers: _headers,\n body: body\n });\n\n case 20:\n resp = _context.sent;\n resp.statusCode = resp.status;\n\n if (statusCodes.has(resp.status)) {\n _context.next = 24;\n break;\n }\n\n throw new StatusError(resp);\n\n case 24:\n if (!(encoding === 'json')) {\n _context.next = 28;\n break;\n }\n\n return _context.abrupt(\"return\", resp.json());\n\n case 28:\n if (!(encoding === 'buffer')) {\n _context.next = 32;\n break;\n }\n\n return _context.abrupt(\"return\", resp.arrayBuffer());\n\n case 32:\n if (!(encoding === 'string')) {\n _context.next = 36;\n break;\n }\n\n return _context.abrupt(\"return\", resp.text());\n\n case 36:\n return _context.abrupt(\"return\", resp);\n\n case 37:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x, _x2) {\n return _ref.apply(this, arguments);\n };\n }();\n};\n\nmodule.exports = core(mkrequest);","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/**\n * List of boolean attributes\n * These attributes should have their React attribute value set to be the same as their name\n * E.g. = \n * = \n * = \n * @type {Array}\n */\n\nexports.default = ['allowfullScreen', 'async', 'autoplay', 'capture', 'checked', 'controls', 'default', 'defer', 'disabled', 'formnovalidate', 'hidden', 'loop', 'multiple', 'muted', 'novalidate', 'open', 'playsinline', 'readonly', 'required', 'reversed', 'scoped', 'seamless', 'selected', 'itemscope'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = TagElementType;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _processNodes = require('../processNodes');\n\nvar _processNodes2 = _interopRequireDefault(_processNodes);\n\nvar _generatePropsFromAttributes = require('../utils/generatePropsFromAttributes');\n\nvar _generatePropsFromAttributes2 = _interopRequireDefault(_generatePropsFromAttributes);\n\nvar _VoidElements = require('../dom/elements/VoidElements');\n\nvar _VoidElements2 = _interopRequireDefault(_VoidElements);\n\nvar _isValidTagOrAttributeName = require('../utils/isValidTagOrAttributeName');\n\nvar _isValidTagOrAttributeName2 = _interopRequireDefault(_isValidTagOrAttributeName);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n/**\n * Converts any element (excluding style - see StyleElementType - and script) to a react element.\n *\n * @param {Object} node The tag node\n * @param {String} index The index of the React element relative to it's parent\n * @param {Function} transform The transform function to apply to all children\n * @returns {React.Element} The React tag element\n */\n\n\nfunction TagElementType(node, index, transform) {\n var tagName = node.name; // validate tag name\n\n if (!(0, _isValidTagOrAttributeName2.default)(tagName)) {\n return null;\n } // generate props\n\n\n var props = (0, _generatePropsFromAttributes2.default)(node.attribs, index); // If the node is not a void element and has children then process them\n\n var children = null;\n\n if (_VoidElements2.default.indexOf(tagName) === -1) {\n children = (0, _processNodes2.default)(node.children, transform);\n } // create and return the element\n\n\n return _react2.default.createElement(tagName, props, children);\n}","import styled from 'styled-components'\n\nexport const ButtonFixed = styled.div`\n position: fixed;\n bottom: 20px;\n right: 20px;\n\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n\n transition: all 0.3s ease-in-out;\n\n a {\n display: inline-block;\n box-shadow: 0 20px 20px 0 rgba(0, 0, 0, 0.1), 0 10px 10px 0 rgba(0, 0, 0, 0.1);\n vertical-align: middle;\n text-decoration: none;\n position: relative;\n -webkit-tap-highlight-color: transparent;\n font-family: FordAntennaCondRegular;\n font-size: 1.125rem;\n line-height: 1.5rem;\n letter-spacing: 1px;\n text-transform: none;\n text-align: center;\n padding: 0.5rem 0.75rem 0.5rem;\n width: auto;\n margin-bottom: 0;\n border-radius: 100%;\n border: 2px solid transparent;\n cursor: ${props => (props.disabled ? 'default' : 'pointer')};\n color: #fff !important;\n background-color: ${props => (props.disabled ? '#6e6e6e' : '#00095b')};\n border-color: ${props => (props.disabled ? '#6e6e6e' : '#00095b')};\n\n transition: box-shadow 0.3s ease-in-out, transform 0.3s ease-in-out, background-color 0.3s ease-in-out,\n border-color 0.3s ease-in-out;\n\n & > span.isContent {\n /* display: none; */\n /* transition: all 0.3s ease-in-out; */\n }\n\n & span.isContent {\n overflow: hidden;\n transition: ease-in-out 0.2s;\n letter-spacing: -1em;\n opacity: 0;\n }\n\n .to-top {\n margin-right: 0px;\n }\n\n &:not(:hover) {\n .isContent {\n /* overflow:hidden; */\n }\n border-radius: 40px;\n }\n\n &:hover {\n background-color: ${props => (props.disabled ? '#6e6e6e' : '#1700f4')};\n border-color: ${props => (props.disabled ? '#6e6e6e' : '#1700f4')};\n color: #fff;\n transform: ${props => (props.disabled ? 'scale(1)' : 'scale(1.07)')};\n border-radius: 2rem;\n padding: 0.5rem 1.2rem 0.5rem;\n\n .to-top {\n margin-right: 12px;\n }\n\n & span.isContent {\n letter-spacing: 0;\n /* transition-delay: 0.2s; */\n opacity: 1;\n }\n\n & > span.isContent {\n /* display: inline; */\n }\n }\n\n @media (max-width: 768px) {\n span.isContent {\n overflow: hidden;\n transition: ease-in-out 0.2s;\n letter-spacing: -1em;\n opacity: 0;\n }\n\n &:hover {\n display: inline-block;\n box-shadow: 0 20px 20px 0 rgba(0, 0, 0, 0.1), 0 10px 10px 0 rgba(0, 0, 0, 0.1);\n vertical-align: middle;\n text-decoration: none;\n position: relative;\n -webkit-tap-highlight-color: transparent;\n font-family: FordAntennaCondRegular;\n font-size: 1.125rem;\n line-height: 1.5rem;\n letter-spacing: 1px;\n text-transform: none;\n text-align: center;\n padding: 0.5rem 0.75rem 0.5rem;\n width: auto;\n margin-bottom: 0;\n border-radius: 100%;\n border: 2px solid transparent;\n cursor: ${props => (props.disabled ? 'default' : 'pointer')};\n color: #fff !important;\n background-color: ${props => (props.disabled ? '#6e6e6e' : '#00095b')};\n border-color: ${props => (props.disabled ? '#6e6e6e' : '#00095b')};\n\n .to-top {\n margin-right: 0px;\n }\n span.isContent {\n overflow: hidden;\n transition: ease-in-out 0.2s;\n letter-spacing: -1em;\n opacity: 0;\n }\n }\n }\n }\n`\n","import React, { useEffect, useState } from 'react'\nimport { ButtonFixed } from './style'\n\nexport const ToTopButton = ({ buttonText }) => {\n const [isHover, setIsHover] = useState(false)\n\n const [scrollPosition, setScrollPosition] = useState(0)\n const handleScroll = () => {\n const position = window.pageYOffset\n setScrollPosition(position)\n }\n\n useEffect(() => {\n window.addEventListener('scroll', handleScroll, { passive: true })\n\n return () => {\n window.removeEventListener('scroll', handleScroll)\n }\n }, [])\n\n function scrollToTop() {\n setIsHover(false)\n window.scrollTo({\n top: 0,\n behavior: 'smooth'\n })\n }\n\n return (\n 200 ? 1 : 0 }}>\n 200 ? 'pointer' : 'grab' }}\n onClick={scrollToTop}\n onMouseEnter={() => setIsHover(true)}\n onMouseLeave={() => setIsHover(false)}\n >\n \n \n \n \n {buttonText}\n \n \n \n )\n}\n","import _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\nimport _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nexport var AudioFormatTag;\n\n(function (AudioFormatTag) {\n AudioFormatTag[AudioFormatTag[\"PCM\"] = 1] = \"PCM\";\n AudioFormatTag[AudioFormatTag[\"MuLaw\"] = 2] = \"MuLaw\";\n AudioFormatTag[AudioFormatTag[\"Siren\"] = 3] = \"Siren\";\n AudioFormatTag[AudioFormatTag[\"MP3\"] = 4] = \"MP3\";\n AudioFormatTag[AudioFormatTag[\"SILKSkype\"] = 5] = \"SILKSkype\";\n AudioFormatTag[AudioFormatTag[\"OGG_OPUS\"] = 6] = \"OGG_OPUS\";\n AudioFormatTag[AudioFormatTag[\"WEBM_OPUS\"] = 7] = \"WEBM_OPUS\";\n AudioFormatTag[AudioFormatTag[\"ALaw\"] = 8] = \"ALaw\";\n AudioFormatTag[AudioFormatTag[\"FLAC\"] = 9] = \"FLAC\";\n AudioFormatTag[AudioFormatTag[\"OPUS\"] = 10] = \"OPUS\";\n})(AudioFormatTag || (AudioFormatTag = {}));\n/**\n * Represents audio stream format used for custom audio input configurations.\n * @class AudioStreamFormat\n */\n\n\nexport var AudioStreamFormat = /*#__PURE__*/function () {\n function AudioStreamFormat() {\n _classCallCheck(this, AudioStreamFormat);\n }\n\n _createClass(AudioStreamFormat, null, [{\n key: \"getDefaultInputFormat\",\n value:\n /**\n * Creates an audio stream format object representing the default audio stream\n * format (16KHz 16bit mono PCM).\n * @member AudioStreamFormat.getDefaultInputFormat\n * @function\n * @public\n * @returns {AudioStreamFormat} The audio stream format being created.\n */\n function getDefaultInputFormat() {\n return AudioStreamFormatImpl.getDefaultInputFormat();\n }\n /**\n * Creates an audio stream format object with the specified format characteristics.\n * @member AudioStreamFormat.getWaveFormat\n * @function\n * @public\n * @param {number} samplesPerSecond - Sample rate, in samples per second (Hertz).\n * @param {number} bitsPerSample - Bits per sample, typically 16.\n * @param {number} channels - Number of channels in the waveform-audio data. Monaural data\n * uses one channel and stereo data uses two channels.\n * @param {AudioFormatTag} format - Audio format (PCM, alaw or mulaw).\n * @returns {AudioStreamFormat} The audio stream format being created.\n */\n\n }, {\n key: \"getWaveFormat\",\n value: function getWaveFormat(samplesPerSecond, bitsPerSample, channels, format) {\n return new AudioStreamFormatImpl(samplesPerSecond, bitsPerSample, channels, format);\n }\n /**\n * Creates an audio stream format object with the specified pcm waveformat characteristics.\n * @member AudioStreamFormat.getWaveFormatPCM\n * @function\n * @public\n * @param {number} samplesPerSecond - Sample rate, in samples per second (Hertz).\n * @param {number} bitsPerSample - Bits per sample, typically 16.\n * @param {number} channels - Number of channels in the waveform-audio data. Monaural data\n * uses one channel and stereo data uses two channels.\n * @returns {AudioStreamFormat} The audio stream format being created.\n */\n\n }, {\n key: \"getWaveFormatPCM\",\n value: function getWaveFormatPCM(samplesPerSecond, bitsPerSample, channels) {\n return new AudioStreamFormatImpl(samplesPerSecond, bitsPerSample, channels);\n }\n }]);\n\n return AudioStreamFormat;\n}();\n/**\n * @private\n * @class AudioStreamFormatImpl\n */\n// tslint:disable-next-line:max-classes-per-file\n\nexport var AudioStreamFormatImpl = /*#__PURE__*/function (_AudioStreamFormat) {\n _inherits(AudioStreamFormatImpl, _AudioStreamFormat);\n\n var _super = _createSuper(AudioStreamFormatImpl);\n\n /**\n * Creates an instance with the given values.\n * @constructor\n * @param {number} samplesPerSec - Samples per second.\n * @param {number} bitsPerSample - Bits per sample.\n * @param {number} channels - Number of channels.\n * @param {AudioFormatTag} format - Audio format (PCM, alaw or mulaw).\n */\n function AudioStreamFormatImpl() {\n var _this;\n\n var samplesPerSec = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 16000;\n var bitsPerSample = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 16;\n var channels = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n var format = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : AudioFormatTag.PCM;\n\n _classCallCheck(this, AudioStreamFormatImpl);\n\n _this = _super.call(this);\n\n _this.setString = function (view, offset, str) {\n for (var i = 0; i < str.length; i++) {\n view.setUint8(offset + i, str.charCodeAt(i));\n }\n };\n\n var isWavFormat = true;\n /* 1 for PCM; 6 for alaw; 7 for mulaw */\n\n switch (format) {\n case AudioFormatTag.PCM:\n _this.formatTag = 1;\n break;\n\n case AudioFormatTag.ALaw:\n _this.formatTag = 6;\n break;\n\n case AudioFormatTag.MuLaw:\n _this.formatTag = 7;\n break;\n\n default:\n isWavFormat = false;\n }\n\n _this.bitsPerSample = bitsPerSample;\n _this.samplesPerSec = samplesPerSec;\n _this.channels = channels;\n _this.avgBytesPerSec = _this.samplesPerSec * _this.channels * (_this.bitsPerSample / 8);\n _this.blockAlign = _this.channels * Math.max(_this.bitsPerSample, 8);\n\n if (isWavFormat) {\n _this.privHeader = new ArrayBuffer(44); // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DataView\n\n var view = new DataView(_this.privHeader);\n /* RIFF identifier */\n\n _this.setString(view, 0, \"RIFF\");\n /* file length */\n\n\n view.setUint32(4, 0, true);\n /* RIFF type & Format */\n\n _this.setString(view, 8, \"WAVEfmt \");\n /* format chunk length */\n\n\n view.setUint32(16, 16, true);\n /* audio format */\n\n view.setUint16(20, _this.formatTag, true);\n /* channel count */\n\n view.setUint16(22, _this.channels, true);\n /* sample rate */\n\n view.setUint32(24, _this.samplesPerSec, true);\n /* byte rate (sample rate * block align) */\n\n view.setUint32(28, _this.avgBytesPerSec, true);\n /* block align (channel count * bytes per sample) */\n\n view.setUint16(32, _this.channels * (_this.bitsPerSample / 8), true);\n /* bits per sample */\n\n view.setUint16(34, _this.bitsPerSample, true);\n /* data chunk identifier */\n\n _this.setString(view, 36, \"data\");\n /* data chunk length */\n\n\n view.setUint32(40, 0, true);\n }\n\n return _this;\n }\n /**\n * Retrieves the default input format.\n * @member AudioStreamFormatImpl.getDefaultInputFormat\n * @function\n * @public\n * @returns {AudioStreamFormatImpl} The default input format.\n */\n\n\n _createClass(AudioStreamFormatImpl, [{\n key: \"close\",\n value:\n /**\n * Closes the configuration object.\n * @member AudioStreamFormatImpl.prototype.close\n * @function\n * @public\n */\n function close() {\n return;\n }\n }, {\n key: \"header\",\n get: function get() {\n return this.privHeader;\n }\n }], [{\n key: \"getDefaultInputFormat\",\n value: function getDefaultInputFormat() {\n return new AudioStreamFormatImpl();\n }\n /**\n * Creates an audio context appropriate to current browser\n * @member AudioStreamFormatImpl.getAudioContext\n * @function\n * @public\n * @returns {AudioContext} An audio context instance\n */\n\n }, {\n key: \"getAudioContext\",\n value: function getAudioContext(sampleRate) {\n // Workaround for Speech SDK bug in Safari.\n var AudioContext = window.AudioContext // our preferred impl\n || window.webkitAudioContext // fallback, mostly when on Safari\n || false; // could not find.\n // https://developer.mozilla.org/en-US/docs/Web/API/AudioContext\n\n if (!!AudioContext) {\n if (sampleRate !== undefined && navigator.mediaDevices.getSupportedConstraints().sampleRate) {\n return new AudioContext({\n sampleRate: sampleRate\n });\n } else {\n return new AudioContext();\n }\n } else {\n throw new Error(\"Browser does not support Web Audio API (AudioContext is not available).\");\n }\n }\n }]);\n\n return AudioStreamFormatImpl;\n}(AudioStreamFormat);","'use strict';\n\nrequire(\"core-js/modules/es.string.trim-start.js\");\n\nvar required = require('requires-port'),\n qs = require('querystringify'),\n slashes = /^[A-Za-z][A-Za-z0-9+-.]*:[\\\\/]+/,\n protocolre = /^([a-z][a-z0-9.+-]*:)?([\\\\/]{1,})?([\\S\\s]*)/i,\n whitespace = \"[\\\\x09\\\\x0A\\\\x0B\\\\x0C\\\\x0D\\\\x20\\\\xA0\\\\u1680\\\\u180E\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200A\\\\u202F\\\\u205F\\\\u3000\\\\u2028\\\\u2029\\\\uFEFF]\",\n left = new RegExp('^' + whitespace + '+');\n/**\n * Trim a given string.\n *\n * @param {String} str String to trim.\n * @public\n */\n\n\nfunction trimLeft(str) {\n return (str ? str : '').toString().replace(left, '');\n}\n/**\n * These are the parse rules for the URL parser, it informs the parser\n * about:\n *\n * 0. The char it Needs to parse, if it's a string it should be done using\n * indexOf, RegExp using exec and NaN means set as current value.\n * 1. The property we should set when parsing this value.\n * 2. Indication if it's backwards or forward parsing, when set as number it's\n * the value of extra chars that should be split off.\n * 3. Inherit from location if non existing in the parser.\n * 4. `toLowerCase` the resulting value.\n */\n\n\nvar rules = [['#', 'hash'], // Extract from the back.\n['?', 'query'], // Extract from the back.\nfunction sanitize(address) {\n // Sanitize what is left of the address\n return address.replace('\\\\', '/');\n}, ['/', 'pathname'], // Extract from the back.\n['@', 'auth', 1], // Extract from the front.\n[NaN, 'host', undefined, 1, 1], // Set left over value.\n[/:(\\d+)$/, 'port', undefined, 1], // RegExp the back.\n[NaN, 'hostname', undefined, 1, 1] // Set left over.\n];\n/**\n * These properties should not be copied or inherited from. This is only needed\n * for all non blob URL's as a blob URL does not include a hash, only the\n * origin.\n *\n * @type {Object}\n * @private\n */\n\nvar ignore = {\n hash: 1,\n query: 1\n};\n/**\n * The location object differs when your code is loaded through a normal page,\n * Worker or through a worker using a blob. And with the blobble begins the\n * trouble as the location object will contain the URL of the blob, not the\n * location of the page where our code is loaded in. The actual origin is\n * encoded in the `pathname` so we can thankfully generate a good \"default\"\n * location from it so we can generate proper relative URL's again.\n *\n * @param {Object|String} loc Optional default location object.\n * @returns {Object} lolcation object.\n * @public\n */\n\nfunction lolcation(loc) {\n var globalVar;\n if (typeof window !== 'undefined') globalVar = window;else if (typeof global !== 'undefined') globalVar = global;else if (typeof self !== 'undefined') globalVar = self;else globalVar = {};\n var location = globalVar.location || {};\n loc = loc || location;\n var finaldestination = {},\n type = typeof loc,\n key;\n\n if ('blob:' === loc.protocol) {\n finaldestination = new Url(unescape(loc.pathname), {});\n } else if ('string' === type) {\n finaldestination = new Url(loc, {});\n\n for (key in ignore) {\n delete finaldestination[key];\n }\n } else if ('object' === type) {\n for (key in loc) {\n if (key in ignore) continue;\n finaldestination[key] = loc[key];\n }\n\n if (finaldestination.slashes === undefined) {\n finaldestination.slashes = slashes.test(loc.href);\n }\n }\n\n return finaldestination;\n}\n/**\n * @typedef ProtocolExtract\n * @type Object\n * @property {String} protocol Protocol matched in the URL, in lowercase.\n * @property {Boolean} slashes `true` if protocol is followed by \"//\", else `false`.\n * @property {String} rest Rest of the URL that is not part of the protocol.\n */\n\n/**\n * Extract protocol information from a URL with/without double slash (\"//\").\n *\n * @param {String} address URL we want to extract from.\n * @return {ProtocolExtract} Extracted information.\n * @private\n */\n\n\nfunction extractProtocol(address) {\n address = trimLeft(address);\n var match = protocolre.exec(address),\n protocol = match[1] ? match[1].toLowerCase() : '',\n slashes = !!(match[2] && match[2].length >= 2),\n rest = match[2] && match[2].length === 1 ? '/' + match[3] : match[3];\n return {\n protocol: protocol,\n slashes: slashes,\n rest: rest\n };\n}\n/**\n * Resolve a relative URL pathname against a base URL pathname.\n *\n * @param {String} relative Pathname of the relative URL.\n * @param {String} base Pathname of the base URL.\n * @return {String} Resolved pathname.\n * @private\n */\n\n\nfunction resolve(relative, base) {\n if (relative === '') return base;\n var path = (base || '/').split('/').slice(0, -1).concat(relative.split('/')),\n i = path.length,\n last = path[i - 1],\n unshift = false,\n up = 0;\n\n while (i--) {\n if (path[i] === '.') {\n path.splice(i, 1);\n } else if (path[i] === '..') {\n path.splice(i, 1);\n up++;\n } else if (up) {\n if (i === 0) unshift = true;\n path.splice(i, 1);\n up--;\n }\n }\n\n if (unshift) path.unshift('');\n if (last === '.' || last === '..') path.push('');\n return path.join('/');\n}\n/**\n * The actual URL instance. Instead of returning an object we've opted-in to\n * create an actual constructor as it's much more memory efficient and\n * faster and it pleases my OCD.\n *\n * It is worth noting that we should not use `URL` as class name to prevent\n * clashes with the global URL instance that got introduced in browsers.\n *\n * @constructor\n * @param {String} address URL we want to parse.\n * @param {Object|String} [location] Location defaults for relative paths.\n * @param {Boolean|Function} [parser] Parser for the query string.\n * @private\n */\n\n\nfunction Url(address, location, parser) {\n address = trimLeft(address);\n\n if (!(this instanceof Url)) {\n return new Url(address, location, parser);\n }\n\n var relative,\n extracted,\n parse,\n instruction,\n index,\n key,\n instructions = rules.slice(),\n type = typeof location,\n url = this,\n i = 0; //\n // The following if statements allows this module two have compatibility with\n // 2 different API:\n //\n // 1. Node.js's `url.parse` api which accepts a URL, boolean as arguments\n // where the boolean indicates that the query string should also be parsed.\n //\n // 2. The `URL` interface of the browser which accepts a URL, object as\n // arguments. The supplied object will be used as default values / fall-back\n // for relative paths.\n //\n\n if ('object' !== type && 'string' !== type) {\n parser = location;\n location = null;\n }\n\n if (parser && 'function' !== typeof parser) parser = qs.parse;\n location = lolcation(location); //\n // Extract protocol information before running the instructions.\n //\n\n extracted = extractProtocol(address || '');\n relative = !extracted.protocol && !extracted.slashes;\n url.slashes = extracted.slashes || relative && location.slashes;\n url.protocol = extracted.protocol || location.protocol || '';\n address = extracted.rest; //\n // When the authority component is absent the URL starts with a path\n // component.\n //\n\n if (!extracted.slashes) instructions[3] = [/(.*)/, 'pathname'];\n\n for (; i < instructions.length; i++) {\n instruction = instructions[i];\n\n if (typeof instruction === 'function') {\n address = instruction(address);\n continue;\n }\n\n parse = instruction[0];\n key = instruction[1];\n\n if (parse !== parse) {\n url[key] = address;\n } else if ('string' === typeof parse) {\n if (~(index = address.indexOf(parse))) {\n if ('number' === typeof instruction[2]) {\n url[key] = address.slice(0, index);\n address = address.slice(index + instruction[2]);\n } else {\n url[key] = address.slice(index);\n address = address.slice(0, index);\n }\n }\n } else if (index = parse.exec(address)) {\n url[key] = index[1];\n address = address.slice(0, index.index);\n }\n\n url[key] = url[key] || (relative && instruction[3] ? location[key] || '' : ''); //\n // Hostname, host and protocol should be lowercased so they can be used to\n // create a proper `origin`.\n //\n\n if (instruction[4]) url[key] = url[key].toLowerCase();\n } //\n // Also parse the supplied query string in to an object. If we're supplied\n // with a custom parser as function use that instead of the default build-in\n // parser.\n //\n\n\n if (parser) url.query = parser(url.query); //\n // If the URL is relative, resolve the pathname against the base URL.\n //\n\n if (relative && location.slashes && url.pathname.charAt(0) !== '/' && (url.pathname !== '' || location.pathname !== '')) {\n url.pathname = resolve(url.pathname, location.pathname);\n } //\n // Default to a / for pathname if none exists. This normalizes the URL\n // to always have a /\n //\n\n\n if (url.pathname.charAt(0) !== '/' && url.hostname) {\n url.pathname = '/' + url.pathname;\n } //\n // We should not add port numbers if they are already the default port number\n // for a given protocol. As the host also contains the port number we're going\n // override it with the hostname which contains no port number.\n //\n\n\n if (!required(url.port, url.protocol)) {\n url.host = url.hostname;\n url.port = '';\n } //\n // Parse down the `auth` for the username and password.\n //\n\n\n url.username = url.password = '';\n\n if (url.auth) {\n instruction = url.auth.split(':');\n url.username = instruction[0] || '';\n url.password = instruction[1] || '';\n }\n\n url.origin = url.protocol && url.host && url.protocol !== 'file:' ? url.protocol + '//' + url.host : 'null'; //\n // The href is just the compiled result.\n //\n\n url.href = url.toString();\n}\n/**\n * This is convenience method for changing properties in the URL instance to\n * insure that they all propagate correctly.\n *\n * @param {String} part Property we need to adjust.\n * @param {Mixed} value The newly assigned value.\n * @param {Boolean|Function} fn When setting the query, it will be the function\n * used to parse the query.\n * When setting the protocol, double slash will be\n * removed from the final url if it is true.\n * @returns {URL} URL instance for chaining.\n * @public\n */\n\n\nfunction set(part, value, fn) {\n var url = this;\n\n switch (part) {\n case 'query':\n if ('string' === typeof value && value.length) {\n value = (fn || qs.parse)(value);\n }\n\n url[part] = value;\n break;\n\n case 'port':\n url[part] = value;\n\n if (!required(value, url.protocol)) {\n url.host = url.hostname;\n url[part] = '';\n } else if (value) {\n url.host = url.hostname + ':' + value;\n }\n\n break;\n\n case 'hostname':\n url[part] = value;\n if (url.port) value += ':' + url.port;\n url.host = value;\n break;\n\n case 'host':\n url[part] = value;\n\n if (/:\\d+$/.test(value)) {\n value = value.split(':');\n url.port = value.pop();\n url.hostname = value.join(':');\n } else {\n url.hostname = value;\n url.port = '';\n }\n\n break;\n\n case 'protocol':\n url.protocol = value.toLowerCase();\n url.slashes = !fn;\n break;\n\n case 'pathname':\n case 'hash':\n if (value) {\n var char = part === 'pathname' ? '/' : '#';\n url[part] = value.charAt(0) !== char ? char + value : value;\n } else {\n url[part] = value;\n }\n\n break;\n\n default:\n url[part] = value;\n }\n\n for (var i = 0; i < rules.length; i++) {\n var ins = rules[i];\n if (ins[4]) url[ins[1]] = url[ins[1]].toLowerCase();\n }\n\n url.origin = url.protocol && url.host && url.protocol !== 'file:' ? url.protocol + '//' + url.host : 'null';\n url.href = url.toString();\n return url;\n}\n/**\n * Transform the properties back in to a valid and full URL string.\n *\n * @param {Function} stringify Optional query stringify function.\n * @returns {String} Compiled version of the URL.\n * @public\n */\n\n\nfunction toString(stringify) {\n if (!stringify || 'function' !== typeof stringify) stringify = qs.stringify;\n var query,\n url = this,\n protocol = url.protocol;\n if (protocol && protocol.charAt(protocol.length - 1) !== ':') protocol += ':';\n var result = protocol + (url.slashes ? '//' : '');\n\n if (url.username) {\n result += url.username;\n if (url.password) result += ':' + url.password;\n result += '@';\n }\n\n result += url.host + url.pathname;\n query = 'object' === typeof url.query ? stringify(url.query) : url.query;\n if (query) result += '?' !== query.charAt(0) ? '?' + query : query;\n if (url.hash) result += url.hash;\n return result;\n}\n\nUrl.prototype = {\n set: set,\n toString: toString\n}; //\n// Expose the URL parser and some additional properties that might be useful for\n// others or testing.\n//\n\nUrl.extractProtocol = extractProtocol;\nUrl.location = lolcation;\nUrl.trimLeft = trimLeft;\nUrl.qs = qs;\nmodule.exports = Url;","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nexport var ConnectionState;\n\n(function (ConnectionState) {\n ConnectionState[ConnectionState[\"None\"] = 0] = \"None\";\n ConnectionState[ConnectionState[\"Connected\"] = 1] = \"Connected\";\n ConnectionState[ConnectionState[\"Connecting\"] = 2] = \"Connecting\";\n ConnectionState[ConnectionState[\"Disconnected\"] = 3] = \"Disconnected\";\n})(ConnectionState || (ConnectionState = {}));","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Represents the JSON used in the agent.config message sent to the speech service.\n */\nexport var AgentConfig = /*#__PURE__*/function () {\n function AgentConfig() {\n _classCallCheck(this, AgentConfig);\n }\n\n _createClass(AgentConfig, [{\n key: \"toJsonString\",\n value: function toJsonString() {\n return JSON.stringify(this.iPrivConfig);\n }\n }, {\n key: \"get\",\n value: function get() {\n return this.iPrivConfig;\n }\n /**\n * Setter for the agent.config object.\n * @param value a JSON serializable object.\n */\n\n }, {\n key: \"set\",\n value: function set(value) {\n this.iPrivConfig = value;\n }\n }]);\n\n return AgentConfig;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { EventType, PlatformEvent } from \"./Exports\";\nexport var BackgroundEvent = /*#__PURE__*/function (_PlatformEvent) {\n _inherits(BackgroundEvent, _PlatformEvent);\n\n var _super = _createSuper(BackgroundEvent);\n\n function BackgroundEvent(error) {\n var _this;\n\n _classCallCheck(this, BackgroundEvent);\n\n _this = _super.call(this, \"BackgroundEvent\", EventType.Error);\n _this.privError = error;\n return _this;\n }\n\n _createClass(BackgroundEvent, [{\n key: \"error\",\n get: function get() {\n return this.privError;\n }\n }]);\n\n return BackgroundEvent;\n}(PlatformEvent);","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { ArgumentNullError } from \"./Error\";\nimport { EventSource } from \"./EventSource\";\nexport var Events = /*#__PURE__*/function () {\n function Events() {\n _classCallCheck(this, Events);\n }\n\n _createClass(Events, null, [{\n key: \"instance\",\n get: function get() {\n return Events.privInstance;\n }\n }]);\n\n return Events;\n}();\nEvents.privInstance = new EventSource();\n\nEvents.setEventSource = function (eventSource) {\n if (!eventSource) {\n throw new ArgumentNullError(\"eventSource\");\n }\n\n Events.privInstance = eventSource;\n};","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = isEmptyTextNode;\n/**\n * Tests a htmlparser2 node and returns whether is it a text node at the start and end of the line containing only\n * white space. This allows these node types to be excluded from the rendering because they are unnecessary.\n *\n * @param {Object} node The element object as created by htmlparser2\n * @returns {boolean} Whether the node is an empty text node\n */\n\nfunction isEmptyTextNode(node) {\n return node.type === 'text' && /\\r?\\n/.test(node.data) && node.data.trim() === '';\n}","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nexport var RestConfigBase = /*#__PURE__*/function () {\n function RestConfigBase() {\n _classCallCheck(this, RestConfigBase);\n }\n\n _createClass(RestConfigBase, null, [{\n key: \"requestOptions\",\n get: function get() {\n return RestConfigBase.privDefaultRequestOptions;\n }\n }, {\n key: \"configParams\",\n get: function get() {\n return RestConfigBase.privDefaultParams;\n }\n }, {\n key: \"restErrors\",\n get: function get() {\n return RestConfigBase.privRestErrors;\n }\n }]);\n\n return RestConfigBase;\n}();\nRestConfigBase.privDefaultRequestOptions = {\n headers: {\n Accept: \"application/json\"\n },\n ignoreCache: false,\n timeout: 10000\n};\nRestConfigBase.privRestErrors = {\n authInvalidSubscriptionKey: \"You must specify either an authentication token to use, or a Cognitive Speech subscription key.\",\n authInvalidSubscriptionRegion: \"You must specify the Cognitive Speech region to use.\",\n invalidArgs: \"Required input not found: {arg}.\",\n invalidCreateJoinConversationResponse: \"Creating/Joining conversation failed with HTTP {status}.\",\n invalidParticipantRequest: \"The requested participant was not found.\",\n permissionDeniedConnect: \"Required credentials not found.\",\n permissionDeniedConversation: \"Invalid operation: only the host can {command} the conversation.\",\n permissionDeniedParticipant: \"Invalid operation: only the host can {command} a participant.\",\n permissionDeniedSend: \"Invalid operation: the conversation is not in a connected state.\",\n permissionDeniedStart: \"Invalid operation: there is already an active conversation.\"\n};\nRestConfigBase.privDefaultParams = {\n apiVersion: \"api-version\",\n authorization: \"Authorization\",\n clientAppId: \"X-ClientAppId\",\n contentTypeKey: \"Content-Type\",\n correlationId: \"X-CorrelationId\",\n languageCode: \"language\",\n nickname: \"nickname\",\n profanity: \"profanity\",\n requestId: \"X-RequestId\",\n roomId: \"roomid\",\n sessionToken: \"token\",\n subscriptionKey: \"Ocp-Apim-Subscription-Key\",\n subscriptionRegion: \"Ocp-Apim-Subscription-Region\",\n token: \"X-CapitoToken\"\n};","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _regeneratorRuntime from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/regenerator\";\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\n\nimport { ArgumentNullError, Deferred } from \"../common/Exports\";\nimport bent from \"bent\";\nexport var RestRequestType;\n\n(function (RestRequestType) {\n RestRequestType[\"Get\"] = \"GET\";\n RestRequestType[\"Post\"] = \"POST\";\n RestRequestType[\"Delete\"] = \"DELETE\";\n RestRequestType[\"File\"] = \"file\";\n})(RestRequestType || (RestRequestType = {})); // accept rest operations via request method and return abstracted objects from server response\n\n\nexport var RestMessageAdapter = /*#__PURE__*/function () {\n function RestMessageAdapter(configParams) {\n _classCallCheck(this, RestMessageAdapter);\n\n if (!configParams) {\n throw new ArgumentNullError(\"configParams\");\n }\n\n this.privHeaders = configParams.headers;\n this.privIgnoreCache = configParams.ignoreCache;\n }\n\n _createClass(RestMessageAdapter, [{\n key: \"options\",\n set: function set(configParams) {\n this.privHeaders = configParams.headers;\n this.privIgnoreCache = configParams.ignoreCache;\n }\n }, {\n key: \"setHeaders\",\n value: function setHeaders(key, value) {\n this.privHeaders[key] = value;\n }\n }, {\n key: \"request\",\n value: function request(method, uri) {\n var _this = this;\n\n var queryParams = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var body = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n var binaryBody = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;\n var responseReceivedDeferral = new Deferred();\n var requestCommand = method === RestRequestType.File ? \"POST\" : method;\n\n var handleRestResponse = function handleRestResponse(data) {\n var j = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var d = data;\n return {\n data: JSON.stringify(j),\n headers: JSON.stringify(data.headers),\n json: j,\n ok: data.statusCode >= 200 && data.statusCode < 300,\n status: data.statusCode,\n statusText: j.error ? j.error.message : d.statusText ? d.statusText : d.statusMessage\n };\n };\n\n var blobToArrayBuffer = function blobToArrayBuffer(blob) {\n var reader = new FileReader();\n reader.readAsArrayBuffer(blob);\n return new Promise(function (resolve) {\n reader.onloadend = function () {\n resolve(reader.result);\n };\n });\n };\n\n var send = function send(postData) {\n var sendRequest = bent(uri, requestCommand, _this.privHeaders, 200, 201, 202, 204, 400, 401, 402, 403, 404);\n var params = _this.queryParams(queryParams) === \"\" ? \"\" : \"?\" + _this.queryParams(queryParams);\n sendRequest(params, postData).then(function (data) {\n return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var j;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!(method === RestRequestType.Delete || data.statusCode === 204)) {\n _context.next = 4;\n break;\n }\n\n // No JSON from Delete and reset (204) operations\n responseReceivedDeferral.resolve(handleRestResponse(data));\n _context.next = 14;\n break;\n\n case 4:\n _context.prev = 4;\n _context.next = 7;\n return data.json();\n\n case 7:\n j = _context.sent;\n responseReceivedDeferral.resolve(handleRestResponse(data, j));\n _context.next = 14;\n break;\n\n case 11:\n _context.prev = 11;\n _context.t0 = _context[\"catch\"](4);\n responseReceivedDeferral.resolve(handleRestResponse(data));\n\n case 14:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[4, 11]]);\n }));\n }).catch(function (error) {\n responseReceivedDeferral.reject(error);\n });\n };\n\n if (this.privIgnoreCache) {\n this.privHeaders[\"Cache-Control\"] = \"no-cache\";\n }\n\n if (method === RestRequestType.File && binaryBody) {\n var contentType = \"multipart/form-data\";\n this.privHeaders[\"content-type\"] = contentType;\n this.privHeaders[\"Content-Type\"] = contentType;\n\n if (typeof Blob !== \"undefined\" && binaryBody instanceof Blob) {\n blobToArrayBuffer(binaryBody).then(function (res) {\n send(res);\n }).catch(function (error) {\n responseReceivedDeferral.reject(error);\n });\n } else {\n send(binaryBody);\n }\n } else {\n if (method === RestRequestType.Post && body) {\n this.privHeaders[\"content-type\"] = \"application/json\";\n this.privHeaders[\"Content-Type\"] = \"application/json\";\n }\n\n send(body);\n }\n\n return responseReceivedDeferral.promise;\n }\n }, {\n key: \"withQuery\",\n value: function withQuery(url) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var queryString = this.queryParams(params);\n return queryString ? url + (url.indexOf(\"?\") === -1 ? \"?\" : \"&\") + queryString : url;\n }\n }, {\n key: \"queryParams\",\n value: function queryParams() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return Object.keys(params).map(function (k) {\n return encodeURIComponent(k) + \"=\" + encodeURIComponent(params[k]);\n }).join(\"&\");\n }\n }], [{\n key: \"extractHeaderValue\",\n value: function extractHeaderValue(headerKey, headers) {\n var headerValue = \"\";\n\n try {\n var arr = headers.trim().split(/[\\r\\n]+/);\n var headerMap = {};\n arr.forEach(function (line) {\n var parts = line.split(\": \");\n var header = parts.shift().toLowerCase();\n var value = parts.join(\": \");\n headerMap[header] = value;\n });\n headerValue = headerMap[headerKey.toLowerCase()];\n } catch (e) {// ignore the error\n }\n\n return headerValue;\n }\n }]);\n\n return RestMessageAdapter;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport { RestConfigBase, RestMessageAdapter, RestRequestType } from \"../common.browser/Exports\";\nimport { PropertyId } from \"../sdk/Exports\";\nimport { ConnectionFactoryBase } from \"./ConnectionFactoryBase\";\nimport { HeaderNames } from \"./HeaderNames\";\n/**\n * Implements methods for speaker recognition classes, sending requests to endpoint\n * and parsing response into expected format\n * @class SynthesisRestAdapter\n */\n\nexport var SynthesisRestAdapter = /*#__PURE__*/function () {\n function SynthesisRestAdapter(config) {\n _classCallCheck(this, SynthesisRestAdapter);\n\n var endpoint = config.parameters.getProperty(PropertyId.SpeechServiceConnection_Endpoint, undefined);\n\n if (!endpoint) {\n var region = config.parameters.getProperty(PropertyId.SpeechServiceConnection_Region, \"westus\");\n var hostSuffix = ConnectionFactoryBase.getHostSuffix(region);\n endpoint = config.parameters.getProperty(PropertyId.SpeechServiceConnection_Host, \"https://\".concat(region, \".tts.speech\").concat(hostSuffix));\n }\n\n this.privUri = \"\".concat(endpoint, \"/cognitiveservices/voices/list\");\n var options = RestConfigBase.requestOptions;\n options.headers[RestConfigBase.configParams.subscriptionKey] = config.parameters.getProperty(PropertyId.SpeechServiceConnection_Key, undefined);\n this.privRestAdapter = new RestMessageAdapter(options);\n }\n /**\n * Sends list voices request to endpoint.\n * @function\n * @public\n * @param connectionId - guid for connectionId\n * @returns {Promise} rest response to status request\n */\n\n\n _createClass(SynthesisRestAdapter, [{\n key: \"getVoicesList\",\n value: function getVoicesList(connectionId) {\n this.privRestAdapter.setHeaders(HeaderNames.ConnectionId, connectionId);\n return this.privRestAdapter.request(RestRequestType.Get, this.privUri);\n }\n }]);\n\n return SynthesisRestAdapter;\n}();","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nexport var QueryParameterNames = function QueryParameterNames() {\n _classCallCheck(this, QueryParameterNames);\n};\nQueryParameterNames.BotId = \"botid\";\nQueryParameterNames.CustomSpeechDeploymentId = \"cid\";\nQueryParameterNames.CustomVoiceDeploymentId = \"deploymentId\";\nQueryParameterNames.EnableAudioLogging = \"storeAudio\";\nQueryParameterNames.EnableLanguageId = \"lidEnabled\";\nQueryParameterNames.EnableWordLevelTimestamps = \"wordLevelTimestamps\";\nQueryParameterNames.EndSilenceTimeoutMs = \"endSilenceTimeoutMs\";\nQueryParameterNames.Format = \"format\";\nQueryParameterNames.InitialSilenceTimeoutMs = \"initialSilenceTimeoutMs\";\nQueryParameterNames.Language = \"language\";\nQueryParameterNames.Profanity = \"profanity\";\nQueryParameterNames.RequestBotStatusMessages = \"enableBotMessageStatus\";\nQueryParameterNames.StableIntermediateThreshold = \"stableIntermediateThreshold\";\nQueryParameterNames.StableTranslation = \"stableTranslation\";\nQueryParameterNames.TestHooks = \"testhooks\";","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * Base class for synthesis results\n * @class SynthesisResult\n * Added in version 1.20.0\n */\nexport var SynthesisResult = /*#__PURE__*/function () {\n /**\n * Creates and initializes an instance of this class.\n * @constructor\n * @param {string} resultId - The result id.\n * @param {ResultReason} reason - The reason.\n * @param {string} errorDetails - Error details, if provided.\n * @param {PropertyCollection} properties - Additional properties, if provided.\n */\n function SynthesisResult(resultId, reason, errorDetails, properties) {\n _classCallCheck(this, SynthesisResult);\n\n this.privResultId = resultId;\n this.privReason = reason;\n this.privErrorDetails = errorDetails;\n this.privProperties = properties;\n }\n /**\n * Specifies the result identifier.\n * @member SynthesisResult.prototype.resultId\n * @function\n * @public\n * @returns {string} Specifies the result identifier.\n */\n\n\n _createClass(SynthesisResult, [{\n key: \"resultId\",\n get: function get() {\n return this.privResultId;\n }\n /**\n * Specifies status of the result.\n * @member SynthesisResult.prototype.reason\n * @function\n * @public\n * @returns {ResultReason} Specifies status of the result.\n */\n\n }, {\n key: \"reason\",\n get: function get() {\n return this.privReason;\n }\n /**\n * In case of an unsuccessful synthesis, provides details of the occurred error.\n * @member SynthesisResult.prototype.errorDetails\n * @function\n * @public\n * @returns {string} a brief description of an error.\n */\n\n }, {\n key: \"errorDetails\",\n get: function get() {\n return this.privErrorDetails;\n }\n /**\n * The set of properties exposed in the result.\n * @member SynthesisResult.prototype.properties\n * @function\n * @public\n * @returns {PropertyCollection} The set of properties exposed in the result.\n */\n\n }, {\n key: \"properties\",\n get: function get() {\n return this.privProperties;\n }\n }]);\n\n return SynthesisResult;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { ObjectDisposedError } from \"./Error\";\nexport var List = function List(list) {\n var _this = this;\n\n _classCallCheck(this, List);\n\n this.privSubscriptionIdCounter = 0;\n this.privAddSubscriptions = {};\n this.privRemoveSubscriptions = {};\n this.privDisposedSubscriptions = {};\n this.privDisposeReason = null;\n\n this.get = function (itemIndex) {\n _this.throwIfDisposed();\n\n return _this.privList[itemIndex];\n };\n\n this.first = function () {\n return _this.get(0);\n };\n\n this.last = function () {\n return _this.get(_this.length() - 1);\n };\n\n this.add = function (item) {\n _this.throwIfDisposed();\n\n _this.insertAt(_this.privList.length, item);\n };\n\n this.insertAt = function (index, item) {\n _this.throwIfDisposed();\n\n if (index === 0) {\n _this.privList.unshift(item);\n } else if (index === _this.privList.length) {\n _this.privList.push(item);\n } else {\n _this.privList.splice(index, 0, item);\n }\n\n _this.triggerSubscriptions(_this.privAddSubscriptions);\n };\n\n this.removeFirst = function () {\n _this.throwIfDisposed();\n\n return _this.removeAt(0);\n };\n\n this.removeLast = function () {\n _this.throwIfDisposed();\n\n return _this.removeAt(_this.length() - 1);\n };\n\n this.removeAt = function (index) {\n _this.throwIfDisposed();\n\n return _this.remove(index, 1)[0];\n };\n\n this.remove = function (index, count) {\n _this.throwIfDisposed();\n\n var removedElements = _this.privList.splice(index, count);\n\n _this.triggerSubscriptions(_this.privRemoveSubscriptions);\n\n return removedElements;\n };\n\n this.clear = function () {\n _this.throwIfDisposed();\n\n _this.remove(0, _this.length());\n };\n\n this.length = function () {\n _this.throwIfDisposed();\n\n return _this.privList.length;\n };\n\n this.onAdded = function (addedCallback) {\n _this.throwIfDisposed();\n\n var subscriptionId = _this.privSubscriptionIdCounter++;\n _this.privAddSubscriptions[subscriptionId] = addedCallback;\n return {\n detach: function detach() {\n delete _this.privAddSubscriptions[subscriptionId];\n return Promise.resolve();\n }\n };\n };\n\n this.onRemoved = function (removedCallback) {\n _this.throwIfDisposed();\n\n var subscriptionId = _this.privSubscriptionIdCounter++;\n _this.privRemoveSubscriptions[subscriptionId] = removedCallback;\n return {\n detach: function detach() {\n delete _this.privRemoveSubscriptions[subscriptionId];\n return Promise.resolve();\n }\n };\n };\n\n this.onDisposed = function (disposedCallback) {\n _this.throwIfDisposed();\n\n var subscriptionId = _this.privSubscriptionIdCounter++;\n _this.privDisposedSubscriptions[subscriptionId] = disposedCallback;\n return {\n detach: function detach() {\n delete _this.privDisposedSubscriptions[subscriptionId];\n return Promise.resolve();\n }\n };\n };\n\n this.join = function (seperator) {\n _this.throwIfDisposed();\n\n return _this.privList.join(seperator);\n };\n\n this.toArray = function () {\n var cloneCopy = Array();\n\n _this.privList.forEach(function (val) {\n cloneCopy.push(val);\n });\n\n return cloneCopy;\n };\n\n this.any = function (callback) {\n _this.throwIfDisposed();\n\n if (callback) {\n return _this.where(callback).length() > 0;\n } else {\n return _this.length() > 0;\n }\n };\n\n this.all = function (callback) {\n _this.throwIfDisposed();\n\n return _this.where(callback).length() === _this.length();\n };\n\n this.forEach = function (callback) {\n _this.throwIfDisposed();\n\n for (var i = 0; i < _this.length(); i++) {\n callback(_this.privList[i], i);\n }\n };\n\n this.select = function (callback) {\n _this.throwIfDisposed();\n\n var selectList = [];\n\n for (var i = 0; i < _this.privList.length; i++) {\n selectList.push(callback(_this.privList[i], i));\n }\n\n return new List(selectList);\n };\n\n this.where = function (callback) {\n _this.throwIfDisposed();\n\n var filteredList = new List();\n\n for (var i = 0; i < _this.privList.length; i++) {\n if (callback(_this.privList[i], i)) {\n filteredList.add(_this.privList[i]);\n }\n }\n\n return filteredList;\n };\n\n this.orderBy = function (compareFn) {\n _this.throwIfDisposed();\n\n var clonedArray = _this.toArray();\n\n var orderedArray = clonedArray.sort(compareFn);\n return new List(orderedArray);\n };\n\n this.orderByDesc = function (compareFn) {\n _this.throwIfDisposed();\n\n return _this.orderBy(function (a, b) {\n return compareFn(b, a);\n });\n };\n\n this.clone = function () {\n _this.throwIfDisposed();\n\n return new List(_this.toArray());\n };\n\n this.concat = function (list) {\n _this.throwIfDisposed();\n\n return new List(_this.privList.concat(list.toArray()));\n };\n\n this.concatArray = function (array) {\n _this.throwIfDisposed();\n\n return new List(_this.privList.concat(array));\n };\n\n this.isDisposed = function () {\n return _this.privList == null;\n };\n\n this.dispose = function (reason) {\n if (!_this.isDisposed()) {\n _this.privDisposeReason = reason;\n _this.privList = null;\n _this.privAddSubscriptions = null;\n _this.privRemoveSubscriptions = null;\n\n _this.triggerSubscriptions(_this.privDisposedSubscriptions);\n }\n };\n\n this.throwIfDisposed = function () {\n if (_this.isDisposed()) {\n throw new ObjectDisposedError(\"List\", _this.privDisposeReason);\n }\n };\n\n this.triggerSubscriptions = function (subscriptions) {\n if (subscriptions) {\n for (var subscriptionId in subscriptions) {\n if (subscriptionId) {\n subscriptions[subscriptionId]();\n }\n }\n }\n };\n\n this.privList = []; // copy the list rather than taking as is.\n\n if (list) {\n var _iterator = _createForOfIteratorHelper(list),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var item = _step.value;\n this.privList.push(item);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n};","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _regeneratorRuntime from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/regenerator\";\nimport \"core-js/modules/es.promise.finally.js\";\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\n\nimport { InvalidOperationError, ObjectDisposedError } from \"./Error\";\nimport { List } from \"./List\";\nimport { Deferred } from \"./Promise\";\nvar SubscriberType;\n\n(function (SubscriberType) {\n SubscriberType[SubscriberType[\"Dequeue\"] = 0] = \"Dequeue\";\n SubscriberType[SubscriberType[\"Peek\"] = 1] = \"Peek\";\n})(SubscriberType || (SubscriberType = {}));\n\nexport var Queue = /*#__PURE__*/function () {\n function Queue(list) {\n var _this = this;\n\n _classCallCheck(this, Queue);\n\n this.privPromiseStore = new List();\n this.privIsDrainInProgress = false;\n this.privIsDisposing = false;\n this.privDisposeReason = null;\n\n this.enqueue = function (item) {\n _this.throwIfDispose();\n\n _this.enqueueFromPromise(new Promise(function (resolve, reject) {\n resolve(item);\n }));\n };\n\n this.enqueueFromPromise = function (promise) {\n _this.throwIfDispose();\n\n promise.then(function (val) {\n _this.privList.add(val);\n /* tslint:disable:no-empty */\n\n }, function (error) {});\n };\n\n this.dequeue = function () {\n _this.throwIfDispose();\n\n var deferredSubscriber = new Deferred();\n\n if (_this.privSubscribers) {\n _this.privSubscribers.add({\n deferral: deferredSubscriber,\n type: SubscriberType.Dequeue\n });\n\n _this.drain();\n }\n\n return deferredSubscriber.promise;\n };\n\n this.peek = function () {\n _this.throwIfDispose();\n\n var deferredSubscriber = new Deferred();\n var subs = _this.privSubscribers;\n\n if (subs) {\n _this.privSubscribers.add({\n deferral: deferredSubscriber,\n type: SubscriberType.Peek\n });\n\n _this.drain();\n }\n\n return deferredSubscriber.promise;\n };\n\n this.length = function () {\n _this.throwIfDispose();\n\n return _this.privList.length();\n };\n\n this.isDisposed = function () {\n return _this.privSubscribers == null;\n };\n\n this.drain = function () {\n if (!_this.privIsDrainInProgress && !_this.privIsDisposing) {\n _this.privIsDrainInProgress = true;\n var subs = _this.privSubscribers;\n var lists = _this.privList;\n\n if (subs && lists) {\n while (lists.length() > 0 && subs.length() > 0 && !_this.privIsDisposing) {\n var subscriber = subs.removeFirst();\n\n if (subscriber.type === SubscriberType.Peek) {\n subscriber.deferral.resolve(lists.first());\n } else {\n var dequeuedItem = lists.removeFirst();\n subscriber.deferral.resolve(dequeuedItem);\n }\n } // note: this block assumes cooperative multitasking, i.e.,\n // between the if-statement and the assignment there are no\n // thread switches.\n // Reason is that between the initial const = this.; and this\n // point there is the derral.resolve() operation that might have\n // caused recursive calls to the Queue, especially, calling\n // Dispose() on the queue alredy (which would reset the var\n // here to null!).\n // That should generally hold true for javascript...\n\n\n if (_this.privSubscribers === subs) {\n _this.privSubscribers = subs;\n } // note: this block assumes cooperative multitasking, i.e.,\n // between the if-statement and the assignment there are no\n // thread switches.\n // Reason is that between the initial const = this.; and this\n // point there is the derral.resolve() operation that might have\n // caused recursive calls to the Queue, especially, calling\n // Dispose() on the queue alredy (which would reset the var\n // here to null!).\n // That should generally hold true for javascript...\n\n\n if (_this.privList === lists) {\n _this.privList = lists;\n }\n }\n\n _this.privIsDrainInProgress = false;\n }\n };\n\n this.throwIfDispose = function () {\n if (_this.isDisposed()) {\n if (_this.privDisposeReason) {\n throw new InvalidOperationError(_this.privDisposeReason);\n }\n\n throw new ObjectDisposedError(\"Queue\");\n } else if (_this.privIsDisposing) {\n throw new InvalidOperationError(\"Queue disposing\");\n }\n };\n\n this.privList = list ? list : new List();\n this.privDetachables = [];\n this.privSubscribers = new List();\n this.privDetachables.push(this.privList.onAdded(this.drain));\n }\n\n _createClass(Queue, [{\n key: \"drainAndDispose\",\n value: function drainAndDispose(pendingItemProcessor, reason) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var _this2 = this;\n\n var subs, subscriber, _iterator, _step, detachable, promiseArray;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!(!this.isDisposed() && !this.privIsDisposing)) {\n _context.next = 30;\n break;\n }\n\n this.privDisposeReason = reason;\n this.privIsDisposing = true;\n subs = this.privSubscribers;\n\n if (subs) {\n while (subs.length() > 0) {\n subscriber = subs.removeFirst(); // TODO: this needs work (Resolve(null) instead?).\n\n subscriber.deferral.resolve(undefined); // subscriber.deferral.reject(\"Disposed\");\n } // note: this block assumes cooperative multitasking, i.e.,\n // between the if-statement and the assignment there are no\n // thread switches.\n // Reason is that between the initial const = this.; and this\n // point there is the derral.resolve() operation that might have\n // caused recursive calls to the Queue, especially, calling\n // Dispose() on the queue alredy (which would reset the var\n // here to null!).\n // That should generally hold true for javascript...\n\n\n if (this.privSubscribers === subs) {\n this.privSubscribers = subs;\n }\n }\n\n _iterator = _createForOfIteratorHelper(this.privDetachables);\n _context.prev = 6;\n\n _iterator.s();\n\n case 8:\n if ((_step = _iterator.n()).done) {\n _context.next = 14;\n break;\n }\n\n detachable = _step.value;\n _context.next = 12;\n return detachable.detach();\n\n case 12:\n _context.next = 8;\n break;\n\n case 14:\n _context.next = 19;\n break;\n\n case 16:\n _context.prev = 16;\n _context.t0 = _context[\"catch\"](6);\n\n _iterator.e(_context.t0);\n\n case 19:\n _context.prev = 19;\n\n _iterator.f();\n\n return _context.finish(19);\n\n case 22:\n if (!(this.privPromiseStore.length() > 0 && pendingItemProcessor)) {\n _context.next = 28;\n break;\n }\n\n promiseArray = [];\n this.privPromiseStore.toArray().forEach(function (wrapper) {\n promiseArray.push(wrapper);\n });\n return _context.abrupt(\"return\", Promise.all(promiseArray).finally(function () {\n _this2.privSubscribers = null;\n\n _this2.privList.forEach(function (item, index) {\n pendingItemProcessor(item);\n });\n\n _this2.privList = null;\n return;\n }).then());\n\n case 28:\n this.privSubscribers = null;\n this.privList = null;\n\n case 30:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[6, 16, 19, 22]]);\n }));\n }\n }, {\n key: \"dispose\",\n value: function dispose(reason) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return this.drainAndDispose(null, reason);\n\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n }\n }]);\n\n return Queue;\n}();","var global = require('../internals/global');\n\nmodule.exports = global;\n","'use strict';\n/**\n * Check if we're required to add a port number.\n *\n * @see https://url.spec.whatwg.org/#default-port\n * @param {Number|String} port Port number we need to check\n * @param {String} protocol Protocol we need to check against.\n * @returns {Boolean} Is it a default port for the given protocol\n * @api private\n */\n\nmodule.exports = function required(port, protocol) {\n protocol = protocol.split(':')[0];\n port = +port;\n if (!port) return false;\n\n switch (protocol) {\n case 'http':\n case 'ws':\n return port !== 80;\n\n case 'https':\n case 'wss':\n return port !== 443;\n\n case 'ftp':\n return port !== 21;\n\n case 'gopher':\n return port !== 70;\n\n case 'file':\n return false;\n }\n\n return port !== 0;\n};","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","var IS_NODE = require('../internals/engine-is-node');\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n /* global Symbol -- required for testing */\n return !Symbol.sham &&\n // Chrome 38 Symbol has incorrect toString conversion\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n (IS_NODE ? V8_VERSION === 38 : V8_VERSION > 37 && V8_VERSION < 41);\n});\n","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { Context, SpeechServiceConfig } from \"./Exports\";\nexport var SynthesisServiceType;\n\n(function (SynthesisServiceType) {\n SynthesisServiceType[SynthesisServiceType[\"Standard\"] = 0] = \"Standard\";\n SynthesisServiceType[SynthesisServiceType[\"Custom\"] = 1] = \"Custom\";\n})(SynthesisServiceType || (SynthesisServiceType = {}));\n\nexport var SynthesizerConfig = /*#__PURE__*/function () {\n function SynthesizerConfig(speechServiceConfig, parameters) {\n _classCallCheck(this, SynthesizerConfig);\n\n this.privSynthesisServiceType = SynthesisServiceType.Standard;\n this.privSpeechServiceConfig = speechServiceConfig ? speechServiceConfig : new SpeechServiceConfig(new Context(null));\n this.privParameters = parameters;\n }\n\n _createClass(SynthesizerConfig, [{\n key: \"parameters\",\n get: function get() {\n return this.privParameters;\n }\n }, {\n key: \"synthesisServiceType\",\n get: function get() {\n return this.privSynthesisServiceType;\n },\n set: function set(value) {\n this.privSynthesisServiceType = value;\n }\n }, {\n key: \"SpeechServiceConfig\",\n get: function get() {\n return this.privSpeechServiceConfig;\n }\n }]);\n\n return SynthesizerConfig;\n}();","import styled, { css } from 'styled-components'\n\nexport const Input = styled.button`\n background: white !important;\n width: 100%;\n height: 40px;\n padding: 0.2rem 0 !important;\n text-align: left;\n border: 1px solid ${({ error, success }) => (success ? '#008200' : error ? '#d62d14' : '#6e6e6e')} !important;\n display: flex;\n align-items: center;\n justify-content: space-between;\n z-index: ${({ selectIsFocused }) => (selectIsFocused ? '100' : 'inherit')};\n border-radius: 0.2rem;\n border-bottom-left-radius: ${({ selectIsFocused }) => (selectIsFocused ? '0px' : '0.2rem')};\n border-bottom-right-radius: ${({ selectIsFocused }) => (selectIsFocused ? '0px' : '0.2rem')};\n box-shadow: ${({ selectIsFocused }) =>\n selectIsFocused\n ? '0 1rem 1rem 0 rgb(0 0 0 / 10%), 0 2rem 2rem 0 rgb(0 0 0 / 10%), 0 3rem 3rem 0 rgb(0 0 0 / 15%);'\n : 'none'};\n font-family: 'FordAntenna';\n transition: box-shadow 0.3s ease-in-out;\n cursor: ${({ hasOptions }) => (hasOptions ? 'pointer' : 'not-allowed !important')};\n`\nexport const SelectWrapper = styled.div`\n position: relative;\n`\nexport const OptionsWrapper = styled.div`\n position: absolute;\n top: 48px;\n background-color: white;\n width: 100%;\n z-index: 99;\n border: solid 1px #6e6e6e;\n border-top: none;\n max-height: calc(5 * 5rem);\n padding: 0;\n outline: none;\n box-shadow: 0 1rem 1rem 0 rgb(0 0 0 / 10%), 0 2rem 2rem 0 rgb(0 0 0 / 10%), 0 3rem 3rem 0 rgb(0 0 0 / 15%);\n transition: box-shadow 0.3s ease-in-out;\n display: ${({ display }) => (display ? 'block' : 'none')};\n border-bottom-left-radius: 0.3rem;\n border-bottom-right-radius: 0.3rem;\n overflow-y: auto;\n`\n\nexport const Option = styled.div`\n cursor: pointer;\n padding: 10px;\n color: #00095b;\n font-size: 0.9rem;\n line-height: 3rem;\n padding: 0 1rem;\n &:hover {\n background-color: #6e6e6e;\n color: white;\n }\n`\n\nexport const InputSpan = styled.span`\n color: #00095b;\n padding: 10px;\n font-size: 0.9rem;\n width: auto;\n padding-right: 20px;\n line-height: 1.6rem;\n letter-spacing: 1px;\n font-weight: 400 !important;\n`\n\nexport const Label = styled.label`\n font-size: 11px;\n line-height: 16px;\n letter-spacing: 1px;\n margin-bottom: 10px;\n display: inline-block;\n font-family: FordAntennaRegular, Arial, Helvetica, sans-serif;\n color: #4d4d4d;\n`\n\nexport const SelectContainer = styled.div`\n min-height: 80px;\n margin-bottom: 5px;\n`\n\nexport const ErrorMessage = styled.span`\n position: absolute;\n top: 37px;\n padding-top: 0.7rem;\n color: #d62d14;\n font-size: 0.6rem;\n line-height: 1.8rem;\n letter-spacing: 0.1rem;\n`\n\nexport const InputInnerWrapper = styled.div`\n padding-left: 0.4rem !important;\n`\n","import React, { useState, useRef, useEffect } from 'react'\n\nimport {\n Input,\n SelectWrapper,\n OptionsWrapper,\n Option,\n InputSpan,\n Label,\n SelectContainer,\n ErrorMessage,\n InputInnerWrapper\n} from './styled'\n\nconst Select = ({\n placeholder,\n options,\n label,\n onChange,\n value,\n showNoFeeback,\n textError,\n onClick,\n showCustomError = false\n}) => {\n const [showSelection, setShowSelection] = useState(false)\n const [showError, setShowError] = useState(false)\n const [showSuccess, setShowSuccess] = useState(false)\n const [selectIsFocused, setSelectIsFocused] = useState(false)\n const optionWrapperRef = useRef()\n\n const showOptions = () => {\n setShowSelection(state => !state)\n\n if (!value || !value.value) {\n setShowError(true)\n }\n }\n\n useEffect(() => {\n if (!value) {\n setShowSuccess()\n } else {\n setShowSuccess(true)\n }\n }, [value])\n\n const selectOption = value => {\n setShowSelection(false)\n setShowError(false)\n setShowSuccess(true)\n onChange({ label: value, value: value })\n }\n\n useEffect(() => {\n const handleMouseClick = document.addEventListener('click', event => {\n if (!(optionWrapperRef && optionWrapperRef.current && optionWrapperRef.current.contains(event.target))) {\n setShowSelection(false)\n }\n })\n\n return () => document.removeEventListener('click', handleMouseClick)\n }, [optionWrapperRef])\n\n return (\n \n \n \n (options.length ? showOptions() : {})}\n error={showError && !showNoFeeback}\n success={showSuccess && !showNoFeeback}\n onFocus={() => setSelectIsFocused(true)}\n onBlur={() => setSelectIsFocused(false)}\n selectIsFocused={selectIsFocused && showSelection}\n >\n \n \n {value && value.value ? value.value : placeholder}\n {' '}\n \n \n \n \n {options.map(option => {\n return \n })}\n \n {showError && !showNoFeeback && (\n {textError ? `${textError}` : `Por favor, selecione um ${label}`}\n )}\n {showCustomError && {textError}}\n \n \n )\n}\n\nexport default Select\n","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { PropertyId } from \"./Exports\";\n/**\n * Represents collection of properties and their values.\n * @class PropertyCollection\n */\n\nexport var PropertyCollection = /*#__PURE__*/function () {\n function PropertyCollection() {\n _classCallCheck(this, PropertyCollection);\n\n this.privKeys = [];\n this.privValues = [];\n }\n /**\n * Returns the property value in type String. The parameter must have the same type as String.\n * Currently only String, int and bool are allowed.\n * If the name is not available, the specified defaultValue is returned.\n * @member PropertyCollection.prototype.getProperty\n * @function\n * @public\n * @param {string} key - The parameter name.\n * @param {string} def - The default value which is returned if the parameter\n * is not available in the collection.\n * @returns {string} value of the parameter.\n */\n\n\n _createClass(PropertyCollection, [{\n key: \"getProperty\",\n value: function getProperty(key, def) {\n var keyToUse;\n\n if (typeof key === \"string\") {\n keyToUse = key;\n } else {\n keyToUse = PropertyId[key];\n }\n\n for (var n = 0; n < this.privKeys.length; n++) {\n if (this.privKeys[n] === keyToUse) {\n return this.privValues[n];\n }\n }\n\n return def;\n }\n /**\n * Sets the String value of the parameter specified by name.\n * @member PropertyCollection.prototype.setProperty\n * @function\n * @public\n * @param {string} key - The parameter name.\n * @param {string} value - The value of the parameter.\n */\n\n }, {\n key: \"setProperty\",\n value: function setProperty(key, value) {\n var keyToUse;\n\n if (typeof key === \"string\") {\n keyToUse = key;\n } else {\n keyToUse = PropertyId[key];\n }\n\n for (var n = 0; n < this.privKeys.length; n++) {\n if (this.privKeys[n] === keyToUse) {\n this.privValues[n] = value;\n return;\n }\n }\n\n this.privKeys.push(keyToUse);\n this.privValues.push(value);\n }\n /**\n * Clones the collection.\n * @member PropertyCollection.prototype.clone\n * @function\n * @public\n * @returns {PropertyCollection} A copy of the collection.\n */\n\n }, {\n key: \"clone\",\n value: function clone() {\n var clonedMap = new PropertyCollection();\n\n for (var n = 0; n < this.privKeys.length; n++) {\n clonedMap.privKeys.push(this.privKeys[n]);\n clonedMap.privValues.push(this.privValues[n]);\n }\n\n return clonedMap;\n }\n /**\n * Merges this set of properties into another, no overwrites.\n * @member PropertyCollection.prototype.mergeTo\n * @function\n * @public\n * @param {PropertyCollection} The collection to merge into.\n */\n\n }, {\n key: \"mergeTo\",\n value: function mergeTo(destinationCollection) {\n var _this = this;\n\n this.privKeys.forEach(function (key) {\n if (destinationCollection.getProperty(key, undefined) === undefined) {\n var value = _this.getProperty(key);\n\n destinationCollection.setProperty(key, value);\n }\n });\n }\n /**\n * Get the keys in Property Collection.\n * @member PropertyCollection.prototype.keys\n * @function\n * @public\n * @returns {string []} Keys in the collection.\n */\n\n }, {\n key: \"keys\",\n get: function get() {\n return this.privKeys;\n }\n }]);\n\n return PropertyCollection;\n}();","var ElementType = require(\"domelementtype\");\n\nvar isTag = exports.isTag = ElementType.isTag;\n\nexports.testElement = function (options, element) {\n for (var key in options) {\n if (!options.hasOwnProperty(key)) ;else if (key === \"tag_name\") {\n if (!isTag(element) || !options.tag_name(element.name)) {\n return false;\n }\n } else if (key === \"tag_type\") {\n if (!options.tag_type(element.type)) return false;\n } else if (key === \"tag_contains\") {\n if (isTag(element) || !options.tag_contains(element.data)) {\n return false;\n }\n } else if (!element.attribs || !options[key](element.attribs[key])) {\n return false;\n }\n }\n\n return true;\n};\n\nvar Checks = {\n tag_name: function tag_name(name) {\n if (typeof name === \"function\") {\n return function (elem) {\n return isTag(elem) && name(elem.name);\n };\n } else if (name === \"*\") {\n return isTag;\n } else {\n return function (elem) {\n return isTag(elem) && elem.name === name;\n };\n }\n },\n tag_type: function tag_type(type) {\n if (typeof type === \"function\") {\n return function (elem) {\n return type(elem.type);\n };\n } else {\n return function (elem) {\n return elem.type === type;\n };\n }\n },\n tag_contains: function tag_contains(data) {\n if (typeof data === \"function\") {\n return function (elem) {\n return !isTag(elem) && data(elem.data);\n };\n } else {\n return function (elem) {\n return !isTag(elem) && elem.data === data;\n };\n }\n }\n};\n\nfunction getAttribCheck(attrib, value) {\n if (typeof value === \"function\") {\n return function (elem) {\n return elem.attribs && value(elem.attribs[attrib]);\n };\n } else {\n return function (elem) {\n return elem.attribs && elem.attribs[attrib] === value;\n };\n }\n}\n\nfunction combineFuncs(a, b) {\n return function (elem) {\n return a(elem) || b(elem);\n };\n}\n\nexports.getElements = function (options, element, recurse, limit) {\n var funcs = Object.keys(options).map(function (key) {\n var value = options[key];\n return key in Checks ? Checks[key](value) : getAttribCheck(key, value);\n });\n return funcs.length === 0 ? [] : this.filter(funcs.reduce(combineFuncs), element, recurse, limit);\n};\n\nexports.getElementById = function (id, element, recurse) {\n if (!Array.isArray(element)) element = [element];\n return this.findOne(getAttribCheck(\"id\", id), element, recurse !== false);\n};\n\nexports.getElementsByTagName = function (name, element, recurse, limit) {\n return this.filter(Checks.tag_name(name), element, recurse, limit);\n};\n\nexports.getElementsByTagType = function (type, element, recurse, limit) {\n return this.filter(Checks.tag_type(type), element, recurse, limit);\n};","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nexport var ConnectionOpenResponse = /*#__PURE__*/function () {\n function ConnectionOpenResponse(statusCode, reason) {\n _classCallCheck(this, ConnectionOpenResponse);\n\n this.privStatusCode = statusCode;\n this.privReason = reason;\n }\n\n _createClass(ConnectionOpenResponse, [{\n key: \"statusCode\",\n get: function get() {\n return this.privStatusCode;\n }\n }, {\n key: \"reason\",\n get: function get() {\n return this.privReason;\n }\n }]);\n\n return ConnectionOpenResponse;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _regeneratorRuntime from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/regenerator\";\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\n\nimport { HeaderNames } from \"../common.speech/HeaderNames\";\nimport { ArgumentNullError, BackgroundEvent, ConnectionClosedEvent, ConnectionErrorEvent, ConnectionEstablishedEvent, ConnectionMessageReceivedEvent, ConnectionMessageSentEvent, ConnectionOpenResponse, ConnectionStartEvent, ConnectionState, Deferred, Events, EventSource, MessageType, Queue, RawWebsocketMessage } from \"../common/Exports\"; // Node.JS specific web socket / browser support.\n\nimport ws from \"ws\";\nimport { CertCheckAgent } from \"./CertChecks\";\nexport var WebsocketMessageAdapter = /*#__PURE__*/function () {\n function WebsocketMessageAdapter(uri, connectionId, messageFormatter, proxyInfo, headers, enableCompression) {\n var _this = this;\n\n _classCallCheck(this, WebsocketMessageAdapter);\n\n this.open = function () {\n if (_this.privConnectionState === ConnectionState.Disconnected) {\n return Promise.reject(\"Cannot open a connection that is in \".concat(_this.privConnectionState, \" state\"));\n }\n\n if (_this.privConnectionEstablishDeferral) {\n return _this.privConnectionEstablishDeferral.promise;\n }\n\n _this.privConnectionEstablishDeferral = new Deferred();\n _this.privCertificateValidatedDeferral = new Deferred();\n _this.privConnectionState = ConnectionState.Connecting;\n\n try {\n if (typeof WebSocket !== \"undefined\" && !WebsocketMessageAdapter.forceNpmWebSocket) {\n // Browser handles cert checks.\n _this.privCertificateValidatedDeferral.resolve();\n\n _this.privWebsocketClient = new WebSocket(_this.privUri);\n } else {\n var options = {\n headers: _this.privHeaders,\n perMessageDeflate: _this.privEnableCompression\n }; // The ocsp library will handle validation for us and fail the connection if needed.\n\n _this.privCertificateValidatedDeferral.resolve();\n\n var checkAgent = new CertCheckAgent(_this.proxyInfo);\n options.agent = checkAgent.GetAgent(); // Workaround for https://github.com/microsoft/cognitive-services-speech-sdk-js/issues/465\n // Which is root caused by https://github.com/TooTallNate/node-agent-base/issues/61\n\n var _uri = new URL(_this.privUri);\n\n var protocol = _uri.protocol;\n\n if ((protocol === null || protocol === void 0 ? void 0 : protocol.toLocaleLowerCase()) === \"wss:\") {\n protocol = \"https:\";\n } else if ((protocol === null || protocol === void 0 ? void 0 : protocol.toLocaleLowerCase()) === \"ws:\") {\n protocol = \"http:\";\n }\n\n options.agent.protocol = protocol;\n _this.privWebsocketClient = new ws(_this.privUri, options);\n }\n\n _this.privWebsocketClient.binaryType = \"arraybuffer\";\n _this.privReceivingMessageQueue = new Queue();\n _this.privDisconnectDeferral = new Deferred();\n _this.privSendMessageQueue = new Queue();\n\n _this.processSendQueue().catch(function (reason) {\n Events.instance.onEvent(new BackgroundEvent(reason));\n });\n } catch (error) {\n _this.privConnectionEstablishDeferral.resolve(new ConnectionOpenResponse(500, error));\n\n return _this.privConnectionEstablishDeferral.promise;\n }\n\n _this.onEvent(new ConnectionStartEvent(_this.privConnectionId, _this.privUri));\n\n _this.privWebsocketClient.onopen = function (e) {\n _this.privCertificateValidatedDeferral.promise.then(function () {\n _this.privConnectionState = ConnectionState.Connected;\n\n _this.onEvent(new ConnectionEstablishedEvent(_this.privConnectionId));\n\n _this.privConnectionEstablishDeferral.resolve(new ConnectionOpenResponse(200, \"\"));\n }, function (error) {\n _this.privConnectionEstablishDeferral.reject(error);\n });\n };\n\n _this.privWebsocketClient.onerror = function (e) {\n _this.onEvent(new ConnectionErrorEvent(_this.privConnectionId, e.message, e.type));\n\n _this.privLastErrorReceived = e.message;\n };\n\n _this.privWebsocketClient.onclose = function (e) {\n if (_this.privConnectionState === ConnectionState.Connecting) {\n _this.privConnectionState = ConnectionState.Disconnected; // this.onEvent(new ConnectionEstablishErrorEvent(this.connectionId, e.code, e.reason));\n\n _this.privConnectionEstablishDeferral.resolve(new ConnectionOpenResponse(e.code, e.reason + \" \" + _this.privLastErrorReceived));\n } else {\n _this.privConnectionState = ConnectionState.Disconnected;\n _this.privWebsocketClient = null;\n\n _this.onEvent(new ConnectionClosedEvent(_this.privConnectionId, e.code, e.reason));\n }\n\n _this.onClose(e.code, e.reason).catch(function (reason) {\n Events.instance.onEvent(new BackgroundEvent(reason));\n });\n };\n\n _this.privWebsocketClient.onmessage = function (e) {\n var networkReceivedTime = new Date().toISOString();\n\n if (_this.privConnectionState === ConnectionState.Connected) {\n var deferred = new Deferred(); // let id = ++this.idCounter;\n\n _this.privReceivingMessageQueue.enqueueFromPromise(deferred.promise);\n\n if (e.data instanceof ArrayBuffer) {\n var rawMessage = new RawWebsocketMessage(MessageType.Binary, e.data);\n\n _this.privMessageFormatter.toConnectionMessage(rawMessage).then(function (connectionMessage) {\n _this.onEvent(new ConnectionMessageReceivedEvent(_this.privConnectionId, networkReceivedTime, connectionMessage));\n\n deferred.resolve(connectionMessage);\n }, function (error) {\n // TODO: Events for these ?\n deferred.reject(\"Invalid binary message format. Error: \".concat(error));\n });\n } else {\n var _rawMessage = new RawWebsocketMessage(MessageType.Text, e.data);\n\n _this.privMessageFormatter.toConnectionMessage(_rawMessage).then(function (connectionMessage) {\n _this.onEvent(new ConnectionMessageReceivedEvent(_this.privConnectionId, networkReceivedTime, connectionMessage));\n\n deferred.resolve(connectionMessage);\n }, function (error) {\n // TODO: Events for these ?\n deferred.reject(\"Invalid text message format. Error: \".concat(error));\n });\n }\n }\n };\n\n return _this.privConnectionEstablishDeferral.promise;\n };\n\n this.send = function (message) {\n if (_this.privConnectionState !== ConnectionState.Connected) {\n return Promise.reject(\"Cannot send on connection that is in \".concat(ConnectionState[_this.privConnectionState], \" state\"));\n }\n\n var messageSendStatusDeferral = new Deferred();\n var messageSendDeferral = new Deferred();\n\n _this.privSendMessageQueue.enqueueFromPromise(messageSendDeferral.promise);\n\n _this.privMessageFormatter.fromConnectionMessage(message).then(function (rawMessage) {\n messageSendDeferral.resolve({\n Message: message,\n RawWebsocketMessage: rawMessage,\n sendStatusDeferral: messageSendStatusDeferral\n });\n }, function (error) {\n messageSendDeferral.reject(\"Error formatting the message. \".concat(error));\n });\n\n return messageSendStatusDeferral.promise;\n };\n\n this.read = function () {\n if (_this.privConnectionState !== ConnectionState.Connected) {\n return Promise.reject(\"Cannot read on connection that is in \".concat(_this.privConnectionState, \" state\"));\n }\n\n return _this.privReceivingMessageQueue.dequeue();\n };\n\n this.close = function (reason) {\n if (_this.privWebsocketClient) {\n if (_this.privConnectionState !== ConnectionState.Disconnected) {\n _this.privWebsocketClient.close(1000, reason ? reason : \"Normal closure by client\");\n }\n } else {\n return Promise.resolve();\n }\n\n return _this.privDisconnectDeferral.promise;\n };\n\n this.sendRawMessage = function (sendItem) {\n try {\n // indicates we are draining the queue and it came with no message;\n if (!sendItem) {\n return Promise.resolve();\n }\n\n _this.onEvent(new ConnectionMessageSentEvent(_this.privConnectionId, new Date().toISOString(), sendItem.Message)); // add a check for the ws readystate in order to stop the red console error 'WebSocket is already in CLOSING or CLOSED state' appearing\n\n\n if (_this.isWebsocketOpen) {\n _this.privWebsocketClient.send(sendItem.RawWebsocketMessage.payload);\n } else {\n return Promise.reject(\"websocket send error: Websocket not ready \" + _this.privConnectionId + \" \" + sendItem.Message.id + \" \" + new Error().stack);\n }\n\n return Promise.resolve();\n } catch (e) {\n return Promise.reject(\"websocket send error: \".concat(e));\n }\n };\n\n this.onEvent = function (event) {\n _this.privConnectionEvents.onEvent(event);\n\n Events.instance.onEvent(event);\n };\n\n if (!uri) {\n throw new ArgumentNullError(\"uri\");\n }\n\n if (!messageFormatter) {\n throw new ArgumentNullError(\"messageFormatter\");\n }\n\n this.proxyInfo = proxyInfo;\n this.privConnectionEvents = new EventSource();\n this.privConnectionId = connectionId;\n this.privMessageFormatter = messageFormatter;\n this.privConnectionState = ConnectionState.None;\n this.privUri = uri;\n this.privHeaders = headers;\n this.privEnableCompression = enableCompression; // Add the connection ID to the headers\n\n this.privHeaders[HeaderNames.ConnectionId] = this.privConnectionId;\n this.privLastErrorReceived = \"\";\n }\n\n _createClass(WebsocketMessageAdapter, [{\n key: \"state\",\n get: function get() {\n return this.privConnectionState;\n }\n }, {\n key: \"events\",\n get: function get() {\n return this.privConnectionEvents;\n }\n }, {\n key: \"onClose\",\n value: function onClose(code, reason) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var closeReason;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n closeReason = \"Connection closed. \".concat(code, \": \").concat(reason);\n this.privConnectionState = ConnectionState.Disconnected;\n this.privDisconnectDeferral.resolve();\n _context.next = 5;\n return this.privReceivingMessageQueue.drainAndDispose(function (pendingReceiveItem) {// TODO: Events for these ?\n // Logger.instance.onEvent(new LoggingEvent(LogType.Warning, null, `Failed to process received message. Reason: ${closeReason}, Message: ${JSON.stringify(pendingReceiveItem)}`));\n }, closeReason);\n\n case 5:\n _context.next = 7;\n return this.privSendMessageQueue.drainAndDispose(function (pendingSendItem) {\n pendingSendItem.sendStatusDeferral.reject(closeReason);\n }, closeReason);\n\n case 7:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n }\n }, {\n key: \"processSendQueue\",\n value: function processSendQueue() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {\n var itemToSend, sendItem;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!true) {\n _context2.next = 18;\n break;\n }\n\n itemToSend = this.privSendMessageQueue.dequeue();\n _context2.next = 4;\n return itemToSend;\n\n case 4:\n sendItem = _context2.sent;\n\n if (sendItem) {\n _context2.next = 7;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 7:\n _context2.prev = 7;\n _context2.next = 10;\n return this.sendRawMessage(sendItem);\n\n case 10:\n sendItem.sendStatusDeferral.resolve();\n _context2.next = 16;\n break;\n\n case 13:\n _context2.prev = 13;\n _context2.t0 = _context2[\"catch\"](7);\n sendItem.sendStatusDeferral.reject(_context2.t0);\n\n case 16:\n _context2.next = 0;\n break;\n\n case 18:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this, [[7, 13]]);\n }));\n }\n }, {\n key: \"isWebsocketOpen\",\n get: function get() {\n return this.privWebsocketClient && this.privWebsocketClient.readyState === this.privWebsocketClient.OPEN;\n }\n }]);\n\n return WebsocketMessageAdapter;\n}();\nWebsocketMessageAdapter.forceNpmWebSocket = false;","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _regeneratorRuntime from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/regenerator\";\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\n\nimport { ArgumentNullError, createNoDashGuid } from \"../common/Exports\";\nimport { WebsocketMessageAdapter } from \"./WebsocketMessageAdapter\";\nexport var WebsocketConnection = /*#__PURE__*/function () {\n function WebsocketConnection(uri, queryParameters, headers, messageFormatter, proxyInfo) {\n var _this = this;\n\n var enableCompression = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;\n var connectionId = arguments.length > 6 ? arguments[6] : undefined;\n\n _classCallCheck(this, WebsocketConnection);\n\n this.privIsDisposed = false;\n\n this.isDisposed = function () {\n return _this.privIsDisposed;\n };\n\n this.state = function () {\n return _this.privConnectionMessageAdapter.state;\n };\n\n this.open = function () {\n return _this.privConnectionMessageAdapter.open();\n };\n\n this.send = function (message) {\n return _this.privConnectionMessageAdapter.send(message);\n };\n\n this.read = function () {\n return _this.privConnectionMessageAdapter.read();\n };\n\n if (!uri) {\n throw new ArgumentNullError(\"uri\");\n }\n\n if (!messageFormatter) {\n throw new ArgumentNullError(\"messageFormatter\");\n }\n\n this.privMessageFormatter = messageFormatter;\n var queryParams = \"\";\n var i = 0;\n\n if (queryParameters) {\n for (var paramName in queryParameters) {\n if (paramName) {\n queryParams += i === 0 && uri.indexOf(\"?\") === -1 ? \"?\" : \"&\";\n var val = encodeURIComponent(queryParameters[paramName]);\n queryParams += \"\".concat(paramName, \"=\").concat(val);\n i++;\n }\n }\n }\n\n if (headers) {\n for (var headerName in headers) {\n if (headerName) {\n queryParams += i === 0 && uri.indexOf(\"?\") === -1 ? \"?\" : \"&\";\n\n var _val = encodeURIComponent(headers[headerName]);\n\n queryParams += \"\".concat(headerName, \"=\").concat(_val);\n i++;\n }\n }\n }\n\n this.privUri = uri + queryParams;\n this.privId = connectionId ? connectionId : createNoDashGuid();\n this.privConnectionMessageAdapter = new WebsocketMessageAdapter(this.privUri, this.id, this.privMessageFormatter, proxyInfo, headers, enableCompression);\n }\n\n _createClass(WebsocketConnection, [{\n key: \"dispose\",\n value: function dispose() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n this.privIsDisposed = true;\n\n if (!this.privConnectionMessageAdapter) {\n _context.next = 4;\n break;\n }\n\n _context.next = 4;\n return this.privConnectionMessageAdapter.close();\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n }\n }, {\n key: \"id\",\n get: function get() {\n return this.privId;\n }\n }, {\n key: \"events\",\n get: function get() {\n return this.privConnectionMessageAdapter.events;\n }\n }]);\n\n return WebsocketConnection;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { PropertyId } from \"../sdk/Exports\";\nexport var ProxyInfo = /*#__PURE__*/function () {\n function ProxyInfo(proxyHostName, proxyPort, proxyUserName, proxyPassword) {\n _classCallCheck(this, ProxyInfo);\n\n this.privProxyHostName = proxyHostName;\n this.privProxyPort = proxyPort;\n this.privProxyUserName = proxyUserName;\n this.privProxyPassword = proxyPassword;\n }\n\n _createClass(ProxyInfo, [{\n key: \"HostName\",\n get: function get() {\n return this.privProxyHostName;\n }\n }, {\n key: \"Port\",\n get: function get() {\n return this.privProxyPort;\n }\n }, {\n key: \"UserName\",\n get: function get() {\n return this.privProxyUserName;\n }\n }, {\n key: \"Password\",\n get: function get() {\n return this.privProxyPassword;\n }\n }], [{\n key: \"fromParameters\",\n value: function fromParameters(parameters) {\n return new ProxyInfo(parameters.getProperty(PropertyId.SpeechServiceConnection_ProxyHostName), parseInt(parameters.getProperty(PropertyId.SpeechServiceConnection_ProxyPort), 10), parameters.getProperty(PropertyId.SpeechServiceConnection_ProxyUserName), parameters.getProperty(PropertyId.SpeechServiceConnection_ProxyPassword));\n }\n }, {\n key: \"fromRecognizerConfig\",\n value: function fromRecognizerConfig(config) {\n return this.fromParameters(config.parameters);\n }\n }]);\n\n return ProxyInfo;\n}();","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { ProxyInfo, WebsocketConnection } from \"../common.browser/Exports\";\nimport { PropertyId } from \"../sdk/Exports\";\nimport { ConnectionFactoryBase } from \"./ConnectionFactoryBase\";\nimport { WebsocketMessageFormatter } from \"./Exports\";\nimport { HeaderNames } from \"./HeaderNames\";\nimport { QueryParameterNames } from \"./QueryParameterNames\";\nexport var SpeechSynthesisConnectionFactory = function SpeechSynthesisConnectionFactory() {\n var _this = this;\n\n _classCallCheck(this, SpeechSynthesisConnectionFactory);\n\n this.synthesisUri = \"/cognitiveservices/websocket/v1\";\n\n this.create = function (config, authInfo, connectionId) {\n var endpoint = config.parameters.getProperty(PropertyId.SpeechServiceConnection_Endpoint, undefined);\n var region = config.parameters.getProperty(PropertyId.SpeechServiceConnection_Region, undefined);\n var hostSuffix = ConnectionFactoryBase.getHostSuffix(region);\n var endpointId = config.parameters.getProperty(PropertyId.SpeechServiceConnection_EndpointId, undefined);\n var hostPrefix = endpointId === undefined ? \"tts\" : \"voice\";\n var host = config.parameters.getProperty(PropertyId.SpeechServiceConnection_Host, \"wss://\" + region + \".\" + hostPrefix + \".speech\" + hostSuffix);\n var queryParams = {};\n\n if (!endpoint) {\n endpoint = host + _this.synthesisUri;\n }\n\n var headers = {};\n\n if (authInfo.token !== undefined && authInfo.token !== \"\") {\n headers[authInfo.headerName] = authInfo.token;\n }\n\n headers[HeaderNames.ConnectionId] = connectionId;\n\n if (endpointId !== undefined) {\n headers[QueryParameterNames.CustomVoiceDeploymentId] = endpointId;\n }\n\n config.parameters.setProperty(PropertyId.SpeechServiceConnection_Url, endpoint);\n var enableCompression = config.parameters.getProperty(\"SPEECH-EnableWebsocketCompression\", \"false\") === \"true\";\n return new WebsocketConnection(endpoint, queryParams, headers, new WebsocketMessageFormatter(), ProxyInfo.fromParameters(config.parameters), enableCompression, connectionId);\n };\n};","var DomHandler = require(\"domhandler\");\n\nvar DomUtils = require(\"domutils\"); //TODO: make this a streamable handler\n\n\nfunction FeedHandler(callback, options) {\n this.init(callback, options);\n}\n\nrequire(\"inherits\")(FeedHandler, DomHandler);\n\nFeedHandler.prototype.init = DomHandler;\n\nfunction getElements(what, where) {\n return DomUtils.getElementsByTagName(what, where, true);\n}\n\nfunction getOneElement(what, where) {\n return DomUtils.getElementsByTagName(what, where, true, 1)[0];\n}\n\nfunction fetch(what, where, recurse) {\n return DomUtils.getText(DomUtils.getElementsByTagName(what, where, recurse, 1)).trim();\n}\n\nfunction addConditionally(obj, prop, what, where, recurse) {\n var tmp = fetch(what, where, recurse);\n if (tmp) obj[prop] = tmp;\n}\n\nvar isValidFeed = function isValidFeed(value) {\n return value === \"rss\" || value === \"feed\" || value === \"rdf:RDF\";\n};\n\nFeedHandler.prototype.onend = function () {\n var feed = {},\n feedRoot = getOneElement(isValidFeed, this.dom),\n tmp,\n childs;\n\n if (feedRoot) {\n if (feedRoot.name === \"feed\") {\n childs = feedRoot.children;\n feed.type = \"atom\";\n addConditionally(feed, \"id\", \"id\", childs);\n addConditionally(feed, \"title\", \"title\", childs);\n if ((tmp = getOneElement(\"link\", childs)) && (tmp = tmp.attribs) && (tmp = tmp.href)) feed.link = tmp;\n addConditionally(feed, \"description\", \"subtitle\", childs);\n if (tmp = fetch(\"updated\", childs)) feed.updated = new Date(tmp);\n addConditionally(feed, \"author\", \"email\", childs, true);\n feed.items = getElements(\"entry\", childs).map(function (item) {\n var entry = {},\n tmp;\n item = item.children;\n addConditionally(entry, \"id\", \"id\", item);\n addConditionally(entry, \"title\", \"title\", item);\n if ((tmp = getOneElement(\"link\", item)) && (tmp = tmp.attribs) && (tmp = tmp.href)) entry.link = tmp;\n if (tmp = fetch(\"summary\", item) || fetch(\"content\", item)) entry.description = tmp;\n if (tmp = fetch(\"updated\", item)) entry.pubDate = new Date(tmp);\n return entry;\n });\n } else {\n childs = getOneElement(\"channel\", feedRoot.children).children;\n feed.type = feedRoot.name.substr(0, 3);\n feed.id = \"\";\n addConditionally(feed, \"title\", \"title\", childs);\n addConditionally(feed, \"link\", \"link\", childs);\n addConditionally(feed, \"description\", \"description\", childs);\n if (tmp = fetch(\"lastBuildDate\", childs)) feed.updated = new Date(tmp);\n addConditionally(feed, \"author\", \"managingEditor\", childs, true);\n feed.items = getElements(\"item\", feedRoot.children).map(function (item) {\n var entry = {},\n tmp;\n item = item.children;\n addConditionally(entry, \"id\", \"guid\", item);\n addConditionally(entry, \"title\", \"title\", item);\n addConditionally(entry, \"link\", \"link\", item);\n addConditionally(entry, \"description\", \"description\", item);\n if (tmp = fetch(\"pubDate\", item)) entry.pubDate = new Date(tmp);\n return entry;\n });\n }\n }\n\n this.dom = feed;\n\n DomHandler.prototype._handleCallback.call(this, feedRoot ? null : Error(\"couldn't find root of feed\"));\n};\n\nmodule.exports = FeedHandler;","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.9.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2021 Denis Pushkarev (zloirock.ru)'\n});\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","import _defineProperty from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\n\nvar _AudioOutputFormatImp;\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { SpeechSynthesisOutputFormat } from \"../SpeechSynthesisOutputFormat\";\nimport { AudioFormatTag, AudioStreamFormatImpl } from \"./AudioStreamFormat\";\n/**\n * @private\n * @class AudioOutputFormatImpl\n * Updated in version 1.17.0\n */\n// tslint:disable-next-line:max-classes-per-file\n\nexport var AudioOutputFormatImpl = /*#__PURE__*/function (_AudioStreamFormatImp) {\n _inherits(AudioOutputFormatImpl, _AudioStreamFormatImp);\n\n var _super = _createSuper(AudioOutputFormatImpl);\n\n /**\n * Creates an instance with the given values.\n * @constructor\n * @param formatTag\n * @param {number} channels - Number of channels.\n * @param {number} samplesPerSec - Samples per second.\n * @param {number} avgBytesPerSec - Average bytes per second.\n * @param {number} blockAlign - Block alignment.\n * @param {number} bitsPerSample - Bits per sample.\n * @param {string} audioFormatString - Audio format string\n * @param {string} requestAudioFormatString - Audio format string sent to service.\n * @param {boolean} hasHeader - If the format has header or not.\n */\n function AudioOutputFormatImpl(formatTag, channels, samplesPerSec, avgBytesPerSec, blockAlign, bitsPerSample, audioFormatString, requestAudioFormatString, hasHeader) {\n var _this;\n\n _classCallCheck(this, AudioOutputFormatImpl);\n\n _this = _super.call(this, samplesPerSec, bitsPerSample, channels, formatTag);\n _this.formatTag = formatTag;\n _this.avgBytesPerSec = avgBytesPerSec;\n _this.blockAlign = blockAlign;\n _this.priAudioFormatString = audioFormatString;\n _this.priRequestAudioFormatString = requestAudioFormatString;\n _this.priHasHeader = hasHeader;\n return _this;\n }\n\n _createClass(AudioOutputFormatImpl, [{\n key: \"hasHeader\",\n get:\n /**\n * Specifies if this audio output format has a header\n * @boolean AudioOutputFormatImpl.prototype.hasHeader\n * @function\n * @public\n */\n function get() {\n return this.priHasHeader;\n }\n /**\n * Specifies the header of this format\n * @ArrayBuffer AudioOutputFormatImpl.prototype.header\n * @function\n * @public\n */\n\n }, {\n key: \"header\",\n get: function get() {\n if (this.hasHeader) {\n return this.privHeader;\n }\n\n return undefined;\n }\n /**\n * Updates the header based on the audio length\n * @member AudioOutputFormatImpl.updateHeader\n * @function\n * @public\n * @param {number} audioLength - the audio length\n */\n\n }, {\n key: \"updateHeader\",\n value: function updateHeader(audioLength) {\n if (this.priHasHeader) {\n var view = new DataView(this.privHeader);\n view.setUint32(40, audioLength, true);\n }\n }\n /**\n * Specifies the audio format string to be sent to the service\n * @string AudioOutputFormatImpl.prototype.requestAudioFormatString\n * @function\n * @public\n */\n\n }, {\n key: \"requestAudioFormatString\",\n get: function get() {\n return this.priRequestAudioFormatString;\n }\n }], [{\n key: \"fromSpeechSynthesisOutputFormat\",\n value: function fromSpeechSynthesisOutputFormat(speechSynthesisOutputFormat) {\n if (speechSynthesisOutputFormat === undefined) {\n return AudioOutputFormatImpl.getDefaultOutputFormat();\n }\n\n return AudioOutputFormatImpl.fromSpeechSynthesisOutputFormatString(AudioOutputFormatImpl.SpeechSynthesisOutputFormatToString[speechSynthesisOutputFormat]);\n }\n }, {\n key: \"fromSpeechSynthesisOutputFormatString\",\n value: function fromSpeechSynthesisOutputFormatString(speechSynthesisOutputFormatString) {\n switch (speechSynthesisOutputFormatString) {\n case \"raw-8khz-8bit-mono-mulaw\":\n return new AudioOutputFormatImpl(AudioFormatTag.MuLaw, 1, 8000, 8000, 1, 8, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"riff-16khz-16kbps-mono-siren\":\n return new AudioOutputFormatImpl(AudioFormatTag.Siren, 1, 16000, 2000, 40, 0, speechSynthesisOutputFormatString, \"audio-16khz-16kbps-mono-siren\", true);\n\n case \"audio-16khz-16kbps-mono-siren\":\n return new AudioOutputFormatImpl(AudioFormatTag.Siren, 1, 16000, 2000, 40, 0, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-16khz-32kbitrate-mono-mp3\":\n return new AudioOutputFormatImpl(AudioFormatTag.MP3, 1, 16000, 32 << 7, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-16khz-128kbitrate-mono-mp3\":\n return new AudioOutputFormatImpl(AudioFormatTag.MP3, 1, 16000, 128 << 7, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-16khz-64kbitrate-mono-mp3\":\n return new AudioOutputFormatImpl(AudioFormatTag.MP3, 1, 16000, 64 << 7, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-24khz-48kbitrate-mono-mp3\":\n return new AudioOutputFormatImpl(AudioFormatTag.MP3, 1, 24000, 48 << 7, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-24khz-96kbitrate-mono-mp3\":\n return new AudioOutputFormatImpl(AudioFormatTag.MP3, 1, 24000, 96 << 7, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-24khz-160kbitrate-mono-mp3\":\n return new AudioOutputFormatImpl(AudioFormatTag.MP3, 1, 24000, 160 << 7, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"raw-16khz-16bit-mono-truesilk\":\n return new AudioOutputFormatImpl(AudioFormatTag.SILKSkype, 1, 16000, 32000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"riff-8khz-16bit-mono-pcm\":\n return new AudioOutputFormatImpl(AudioFormatTag.PCM, 1, 8000, 16000, 2, 16, speechSynthesisOutputFormatString, \"raw-8khz-16bit-mono-pcm\", true);\n\n case \"riff-24khz-16bit-mono-pcm\":\n return new AudioOutputFormatImpl(AudioFormatTag.PCM, 1, 24000, 48000, 2, 16, speechSynthesisOutputFormatString, \"raw-24khz-16bit-mono-pcm\", true);\n\n case \"riff-8khz-8bit-mono-mulaw\":\n return new AudioOutputFormatImpl(AudioFormatTag.MuLaw, 1, 8000, 8000, 1, 8, speechSynthesisOutputFormatString, \"raw-8khz-8bit-mono-mulaw\", true);\n\n case \"raw-16khz-16bit-mono-pcm\":\n return new AudioOutputFormatImpl(AudioFormatTag.PCM, 1, 16000, 32000, 2, 16, speechSynthesisOutputFormatString, \"raw-16khz-16bit-mono-pcm\", false);\n\n case \"raw-24khz-16bit-mono-pcm\":\n return new AudioOutputFormatImpl(AudioFormatTag.PCM, 1, 24000, 48000, 2, 16, speechSynthesisOutputFormatString, \"raw-24khz-16bit-mono-pcm\", false);\n\n case \"raw-8khz-16bit-mono-pcm\":\n return new AudioOutputFormatImpl(AudioFormatTag.PCM, 1, 8000, 16000, 2, 16, speechSynthesisOutputFormatString, \"raw-8khz-16bit-mono-pcm\", false);\n\n case \"ogg-16khz-16bit-mono-opus\":\n return new AudioOutputFormatImpl(AudioFormatTag.OGG_OPUS, 1, 16000, 8192, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"ogg-24khz-16bit-mono-opus\":\n return new AudioOutputFormatImpl(AudioFormatTag.OGG_OPUS, 1, 24000, 8192, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"raw-48khz-16bit-mono-pcm\":\n return new AudioOutputFormatImpl(AudioFormatTag.PCM, 1, 48000, 96000, 2, 16, speechSynthesisOutputFormatString, \"raw-48khz-16bit-mono-pcm\", false);\n\n case \"riff-48khz-16bit-mono-pcm\":\n return new AudioOutputFormatImpl(AudioFormatTag.PCM, 1, 48000, 96000, 2, 16, speechSynthesisOutputFormatString, \"raw-48khz-16bit-mono-pcm\", true);\n\n case \"audio-48khz-96kbitrate-mono-mp3\":\n return new AudioOutputFormatImpl(AudioFormatTag.MP3, 1, 48000, 96 << 7, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-48khz-192kbitrate-mono-mp3\":\n return new AudioOutputFormatImpl(AudioFormatTag.MP3, 1, 48000, 192 << 7, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"ogg-48khz-16bit-mono-opus\":\n return new AudioOutputFormatImpl(AudioFormatTag.OGG_OPUS, 1, 48000, 12000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"webm-16khz-16bit-mono-opus\":\n return new AudioOutputFormatImpl(AudioFormatTag.WEBM_OPUS, 1, 16000, 4000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"webm-24khz-16bit-mono-opus\":\n return new AudioOutputFormatImpl(AudioFormatTag.WEBM_OPUS, 1, 24000, 6000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"webm-24khz-16bit-24kbps-mono-opus\":\n return new AudioOutputFormatImpl(AudioFormatTag.WEBM_OPUS, 1, 24000, 3000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-16khz-16bit-32kbps-mono-opus\":\n return new AudioOutputFormatImpl(AudioFormatTag.OPUS, 1, 16000, 4000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-24khz-16bit-48kbps-mono-opus\":\n return new AudioOutputFormatImpl(AudioFormatTag.OPUS, 1, 24000, 6000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-24khz-16bit-24kbps-mono-opus\":\n return new AudioOutputFormatImpl(AudioFormatTag.OPUS, 1, 24000, 3000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-24khz-16bit-mono-flac\":\n return new AudioOutputFormatImpl(AudioFormatTag.FLAC, 1, 24000, 24000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"audio-48khz-16bit-mono-flac\":\n return new AudioOutputFormatImpl(AudioFormatTag.FLAC, 1, 48000, 30000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"raw-24khz-16bit-mono-truesilk\":\n return new AudioOutputFormatImpl(AudioFormatTag.SILKSkype, 1, 24000, 48000, 2, 16, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"raw-8khz-8bit-mono-alaw\":\n return new AudioOutputFormatImpl(AudioFormatTag.ALaw, 1, 8000, 8000, 1, 8, speechSynthesisOutputFormatString, speechSynthesisOutputFormatString, false);\n\n case \"riff-8khz-8bit-mono-alaw\":\n return new AudioOutputFormatImpl(AudioFormatTag.ALaw, 1, 8000, 8000, 1, 8, speechSynthesisOutputFormatString, \"raw-8khz-8bit-mono-alaw\", true);\n\n case \"riff-16khz-16bit-mono-pcm\":\n default:\n return new AudioOutputFormatImpl(AudioFormatTag.PCM, 1, 16000, 32000, 2, 16, \"riff-16khz-16bit-mono-pcm\", \"raw-16khz-16bit-mono-pcm\", true);\n }\n }\n }, {\n key: \"getDefaultOutputFormat\",\n value: function getDefaultOutputFormat() {\n return AudioOutputFormatImpl.fromSpeechSynthesisOutputFormatString(typeof window !== \"undefined\" ? \"audio-24khz-48kbitrate-mono-mp3\" : \"riff-16khz-16bit-mono-pcm\");\n }\n }]);\n\n return AudioOutputFormatImpl;\n}(AudioStreamFormatImpl);\nAudioOutputFormatImpl.SpeechSynthesisOutputFormatToString = (_AudioOutputFormatImp = {}, _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Raw8Khz8BitMonoMULaw, \"raw-8khz-8bit-mono-mulaw\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Riff16Khz16KbpsMonoSiren, \"riff-16khz-16kbps-mono-siren\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio16Khz16KbpsMonoSiren, \"audio-16khz-16kbps-mono-siren\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio16Khz32KBitRateMonoMp3, \"audio-16khz-32kbitrate-mono-mp3\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio16Khz128KBitRateMonoMp3, \"audio-16khz-128kbitrate-mono-mp3\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio16Khz64KBitRateMonoMp3, \"audio-16khz-64kbitrate-mono-mp3\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio24Khz48KBitRateMonoMp3, \"audio-24khz-48kbitrate-mono-mp3\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio24Khz96KBitRateMonoMp3, \"audio-24khz-96kbitrate-mono-mp3\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio24Khz160KBitRateMonoMp3, \"audio-24khz-160kbitrate-mono-mp3\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Raw16Khz16BitMonoTrueSilk, \"raw-16khz-16bit-mono-truesilk\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Riff16Khz16BitMonoPcm, \"riff-16khz-16bit-mono-pcm\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Riff8Khz16BitMonoPcm, \"riff-8khz-16bit-mono-pcm\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Riff24Khz16BitMonoPcm, \"riff-24khz-16bit-mono-pcm\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Riff8Khz8BitMonoMULaw, \"riff-8khz-8bit-mono-mulaw\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Raw16Khz16BitMonoPcm, \"raw-16khz-16bit-mono-pcm\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Raw24Khz16BitMonoPcm, \"raw-24khz-16bit-mono-pcm\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Raw8Khz16BitMonoPcm, \"raw-8khz-16bit-mono-pcm\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Ogg16Khz16BitMonoOpus, \"ogg-16khz-16bit-mono-opus\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Ogg24Khz16BitMonoOpus, \"ogg-24khz-16bit-mono-opus\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Raw48Khz16BitMonoPcm, \"raw-48khz-16bit-mono-pcm\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Riff48Khz16BitMonoPcm, \"riff-48khz-16bit-mono-pcm\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio48Khz96KBitRateMonoMp3, \"audio-48khz-96kbitrate-mono-mp3\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio48Khz192KBitRateMonoMp3, \"audio-48khz-192kbitrate-mono-mp3\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Ogg48Khz16BitMonoOpus, \"ogg-48khz-16bit-mono-opus\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Webm16Khz16BitMonoOpus, \"webm-16khz-16bit-mono-opus\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Webm24Khz16BitMonoOpus, \"webm-24khz-16bit-mono-opus\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Webm24Khz16Bit24KbpsMonoOpus, \"webm-24khz-16bit-24kbps-mono-opus\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Raw24Khz16BitMonoTrueSilk, \"raw-24khz-16bit-mono-truesilk\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Raw8Khz8BitMonoALaw, \"raw-8khz-8bit-mono-alaw\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Riff8Khz8BitMonoALaw, \"riff-8khz-8bit-mono-alaw\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio16Khz16Bit32KbpsMonoOpus, \"audio-16khz-16bit-32kbps-mono-opus\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio24Khz16Bit48KbpsMonoOpus, \"audio-24khz-16bit-48kbps-mono-opus\"), _defineProperty(_AudioOutputFormatImp, SpeechSynthesisOutputFormat.Audio24Khz16Bit24KbpsMonoOpus, \"audio-24khz-16bit-24kbps-mono-opus\"), _AudioOutputFormatImp);","var Tokenizer = require(\"./Tokenizer.js\");\n/*\n\tOptions:\n\n\txmlMode: Disables the special behavior for script/style tags (false by default)\n\tlowerCaseAttributeNames: call .toLowerCase for each attribute name (true if xmlMode is `false`)\n\tlowerCaseTags: call .toLowerCase for each tag name (true if xmlMode is `false`)\n*/\n\n/*\n\tCallbacks:\n\n\toncdataend,\n\toncdatastart,\n\tonclosetag,\n\toncomment,\n\toncommentend,\n\tonerror,\n\tonopentag,\n\tonprocessinginstruction,\n\tonreset,\n\tontext\n*/\n\n\nvar formTags = {\n input: true,\n option: true,\n optgroup: true,\n select: true,\n button: true,\n datalist: true,\n textarea: true\n};\nvar openImpliesClose = {\n tr: {\n tr: true,\n th: true,\n td: true\n },\n th: {\n th: true\n },\n td: {\n thead: true,\n th: true,\n td: true\n },\n body: {\n head: true,\n link: true,\n script: true\n },\n li: {\n li: true\n },\n p: {\n p: true\n },\n h1: {\n p: true\n },\n h2: {\n p: true\n },\n h3: {\n p: true\n },\n h4: {\n p: true\n },\n h5: {\n p: true\n },\n h6: {\n p: true\n },\n select: formTags,\n input: formTags,\n output: formTags,\n button: formTags,\n datalist: formTags,\n textarea: formTags,\n option: {\n option: true\n },\n optgroup: {\n optgroup: true\n }\n};\nvar voidElements = {\n __proto__: null,\n area: true,\n base: true,\n basefont: true,\n br: true,\n col: true,\n command: true,\n embed: true,\n frame: true,\n hr: true,\n img: true,\n input: true,\n isindex: true,\n keygen: true,\n link: true,\n meta: true,\n param: true,\n source: true,\n track: true,\n wbr: true\n};\nvar foreignContextElements = {\n __proto__: null,\n math: true,\n svg: true\n};\nvar htmlIntegrationElements = {\n __proto__: null,\n mi: true,\n mo: true,\n mn: true,\n ms: true,\n mtext: true,\n \"annotation-xml\": true,\n foreignObject: true,\n desc: true,\n title: true\n};\nvar re_nameEnd = /\\s|\\//;\n\nfunction Parser(cbs, options) {\n this._options = options || {};\n this._cbs = cbs || {};\n this._tagname = \"\";\n this._attribname = \"\";\n this._attribvalue = \"\";\n this._attribs = null;\n this._stack = [];\n this._foreignContext = [];\n this.startIndex = 0;\n this.endIndex = null;\n this._lowerCaseTagNames = \"lowerCaseTags\" in this._options ? !!this._options.lowerCaseTags : !this._options.xmlMode;\n this._lowerCaseAttributeNames = \"lowerCaseAttributeNames\" in this._options ? !!this._options.lowerCaseAttributeNames : !this._options.xmlMode;\n\n if (this._options.Tokenizer) {\n Tokenizer = this._options.Tokenizer;\n }\n\n this._tokenizer = new Tokenizer(this._options, this);\n if (this._cbs.onparserinit) this._cbs.onparserinit(this);\n}\n\nrequire(\"inherits\")(Parser, require(\"events\").EventEmitter);\n\nParser.prototype._updatePosition = function (initialOffset) {\n if (this.endIndex === null) {\n if (this._tokenizer._sectionStart <= initialOffset) {\n this.startIndex = 0;\n } else {\n this.startIndex = this._tokenizer._sectionStart - initialOffset;\n }\n } else this.startIndex = this.endIndex + 1;\n\n this.endIndex = this._tokenizer.getAbsoluteIndex();\n}; //Tokenizer event handlers\n\n\nParser.prototype.ontext = function (data) {\n this._updatePosition(1);\n\n this.endIndex--;\n if (this._cbs.ontext) this._cbs.ontext(data);\n};\n\nParser.prototype.onopentagname = function (name) {\n if (this._lowerCaseTagNames) {\n name = name.toLowerCase();\n }\n\n this._tagname = name;\n\n if (!this._options.xmlMode && name in openImpliesClose) {\n for (var el; ((el = this._stack[this._stack.length - 1]) in openImpliesClose[name]); this.onclosetag(el)) {\n ;\n }\n }\n\n if (this._options.xmlMode || !(name in voidElements)) {\n this._stack.push(name);\n\n if (name in foreignContextElements) this._foreignContext.push(true);else if (name in htmlIntegrationElements) this._foreignContext.push(false);\n }\n\n if (this._cbs.onopentagname) this._cbs.onopentagname(name);\n if (this._cbs.onopentag) this._attribs = {};\n};\n\nParser.prototype.onopentagend = function () {\n this._updatePosition(1);\n\n if (this._attribs) {\n if (this._cbs.onopentag) this._cbs.onopentag(this._tagname, this._attribs);\n this._attribs = null;\n }\n\n if (!this._options.xmlMode && this._cbs.onclosetag && this._tagname in voidElements) {\n this._cbs.onclosetag(this._tagname);\n }\n\n this._tagname = \"\";\n};\n\nParser.prototype.onclosetag = function (name) {\n this._updatePosition(1);\n\n if (this._lowerCaseTagNames) {\n name = name.toLowerCase();\n }\n\n if (name in foreignContextElements || name in htmlIntegrationElements) {\n this._foreignContext.pop();\n }\n\n if (this._stack.length && (!(name in voidElements) || this._options.xmlMode)) {\n var pos = this._stack.lastIndexOf(name);\n\n if (pos !== -1) {\n if (this._cbs.onclosetag) {\n pos = this._stack.length - pos;\n\n while (pos--) {\n this._cbs.onclosetag(this._stack.pop());\n }\n } else this._stack.length = pos;\n } else if (name === \"p\" && !this._options.xmlMode) {\n this.onopentagname(name);\n\n this._closeCurrentTag();\n }\n } else if (!this._options.xmlMode && (name === \"br\" || name === \"p\")) {\n this.onopentagname(name);\n\n this._closeCurrentTag();\n }\n};\n\nParser.prototype.onselfclosingtag = function () {\n if (this._options.xmlMode || this._options.recognizeSelfClosing || this._foreignContext[this._foreignContext.length - 1]) {\n this._closeCurrentTag();\n } else {\n this.onopentagend();\n }\n};\n\nParser.prototype._closeCurrentTag = function () {\n var name = this._tagname;\n this.onopentagend(); //self-closing tags will be on the top of the stack\n //(cheaper check than in onclosetag)\n\n if (this._stack[this._stack.length - 1] === name) {\n if (this._cbs.onclosetag) {\n this._cbs.onclosetag(name);\n }\n\n this._stack.pop();\n }\n};\n\nParser.prototype.onattribname = function (name) {\n if (this._lowerCaseAttributeNames) {\n name = name.toLowerCase();\n }\n\n this._attribname = name;\n};\n\nParser.prototype.onattribdata = function (value) {\n this._attribvalue += value;\n};\n\nParser.prototype.onattribend = function () {\n if (this._cbs.onattribute) this._cbs.onattribute(this._attribname, this._attribvalue);\n\n if (this._attribs && !Object.prototype.hasOwnProperty.call(this._attribs, this._attribname)) {\n this._attribs[this._attribname] = this._attribvalue;\n }\n\n this._attribname = \"\";\n this._attribvalue = \"\";\n};\n\nParser.prototype._getInstructionName = function (value) {\n var idx = value.search(re_nameEnd),\n name = idx < 0 ? value : value.substr(0, idx);\n\n if (this._lowerCaseTagNames) {\n name = name.toLowerCase();\n }\n\n return name;\n};\n\nParser.prototype.ondeclaration = function (value) {\n if (this._cbs.onprocessinginstruction) {\n var name = this._getInstructionName(value);\n\n this._cbs.onprocessinginstruction(\"!\" + name, \"!\" + value);\n }\n};\n\nParser.prototype.onprocessinginstruction = function (value) {\n if (this._cbs.onprocessinginstruction) {\n var name = this._getInstructionName(value);\n\n this._cbs.onprocessinginstruction(\"?\" + name, \"?\" + value);\n }\n};\n\nParser.prototype.oncomment = function (value) {\n this._updatePosition(4);\n\n if (this._cbs.oncomment) this._cbs.oncomment(value);\n if (this._cbs.oncommentend) this._cbs.oncommentend();\n};\n\nParser.prototype.oncdata = function (value) {\n this._updatePosition(1);\n\n if (this._options.xmlMode || this._options.recognizeCDATA) {\n if (this._cbs.oncdatastart) this._cbs.oncdatastart();\n if (this._cbs.ontext) this._cbs.ontext(value);\n if (this._cbs.oncdataend) this._cbs.oncdataend();\n } else {\n this.oncomment(\"[CDATA[\" + value + \"]]\");\n }\n};\n\nParser.prototype.onerror = function (err) {\n if (this._cbs.onerror) this._cbs.onerror(err);\n};\n\nParser.prototype.onend = function () {\n if (this._cbs.onclosetag) {\n for (var i = this._stack.length; i > 0; this._cbs.onclosetag(this._stack[--i])) {\n ;\n }\n }\n\n if (this._cbs.onend) this._cbs.onend();\n}; //Resets the parser to a blank state, ready to parse a new HTML document\n\n\nParser.prototype.reset = function () {\n if (this._cbs.onreset) this._cbs.onreset();\n\n this._tokenizer.reset();\n\n this._tagname = \"\";\n this._attribname = \"\";\n this._attribs = null;\n this._stack = [];\n if (this._cbs.onparserinit) this._cbs.onparserinit(this);\n}; //Parses a complete HTML document and pushes it to the handler\n\n\nParser.prototype.parseComplete = function (data) {\n this.reset();\n this.end(data);\n};\n\nParser.prototype.write = function (chunk) {\n this._tokenizer.write(chunk);\n};\n\nParser.prototype.end = function (chunk) {\n this._tokenizer.end(chunk);\n};\n\nParser.prototype.pause = function () {\n this._tokenizer.pause();\n};\n\nParser.prototype.resume = function () {\n this._tokenizer.resume();\n}; //alias for backwards compat\n\n\nParser.prototype.parseChunk = Parser.prototype.write;\nParser.prototype.done = Parser.prototype.end;\nmodule.exports = Parser;","// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.decodeXMLStrict = exports.decodeHTML5Strict = exports.decodeHTML4Strict = exports.decodeHTML5 = exports.decodeHTML4 = exports.decodeHTMLStrict = exports.decodeHTML = exports.decodeXML = exports.encodeHTML5 = exports.encodeHTML4 = exports.escapeUTF8 = exports.escape = exports.encodeNonAsciiHTML = exports.encodeHTML = exports.encodeXML = exports.encode = exports.decodeStrict = exports.decode = void 0;\n\nvar decode_1 = require(\"./decode\");\n\nvar encode_1 = require(\"./encode\");\n/**\n * Decodes a string with entities.\n *\n * @param data String to decode.\n * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.\n * @deprecated Use `decodeXML` or `decodeHTML` directly.\n */\n\n\nfunction decode(data, level) {\n return (!level || level <= 0 ? decode_1.decodeXML : decode_1.decodeHTML)(data);\n}\n\nexports.decode = decode;\n/**\n * Decodes a string with entities. Does not allow missing trailing semicolons for entities.\n *\n * @param data String to decode.\n * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.\n * @deprecated Use `decodeHTMLStrict` or `decodeXML` directly.\n */\n\nfunction decodeStrict(data, level) {\n return (!level || level <= 0 ? decode_1.decodeXML : decode_1.decodeHTMLStrict)(data);\n}\n\nexports.decodeStrict = decodeStrict;\n/**\n * Encodes a string with entities.\n *\n * @param data String to encode.\n * @param level Optional level to encode at. 0 = XML, 1 = HTML. Default is 0.\n * @deprecated Use `encodeHTML`, `encodeXML` or `encodeNonAsciiHTML` directly.\n */\n\nfunction encode(data, level) {\n return (!level || level <= 0 ? encode_1.encodeXML : encode_1.encodeHTML)(data);\n}\n\nexports.encode = encode;\n\nvar encode_2 = require(\"./encode\");\n\nObject.defineProperty(exports, \"encodeXML\", {\n enumerable: true,\n get: function get() {\n return encode_2.encodeXML;\n }\n});\nObject.defineProperty(exports, \"encodeHTML\", {\n enumerable: true,\n get: function get() {\n return encode_2.encodeHTML;\n }\n});\nObject.defineProperty(exports, \"encodeNonAsciiHTML\", {\n enumerable: true,\n get: function get() {\n return encode_2.encodeNonAsciiHTML;\n }\n});\nObject.defineProperty(exports, \"escape\", {\n enumerable: true,\n get: function get() {\n return encode_2.escape;\n }\n});\nObject.defineProperty(exports, \"escapeUTF8\", {\n enumerable: true,\n get: function get() {\n return encode_2.escapeUTF8;\n }\n}); // Legacy aliases (deprecated)\n\nObject.defineProperty(exports, \"encodeHTML4\", {\n enumerable: true,\n get: function get() {\n return encode_2.encodeHTML;\n }\n});\nObject.defineProperty(exports, \"encodeHTML5\", {\n enumerable: true,\n get: function get() {\n return encode_2.encodeHTML;\n }\n});\n\nvar decode_2 = require(\"./decode\");\n\nObject.defineProperty(exports, \"decodeXML\", {\n enumerable: true,\n get: function get() {\n return decode_2.decodeXML;\n }\n});\nObject.defineProperty(exports, \"decodeHTML\", {\n enumerable: true,\n get: function get() {\n return decode_2.decodeHTML;\n }\n});\nObject.defineProperty(exports, \"decodeHTMLStrict\", {\n enumerable: true,\n get: function get() {\n return decode_2.decodeHTMLStrict;\n }\n}); // Legacy aliases (deprecated)\n\nObject.defineProperty(exports, \"decodeHTML4\", {\n enumerable: true,\n get: function get() {\n return decode_2.decodeHTML;\n }\n});\nObject.defineProperty(exports, \"decodeHTML5\", {\n enumerable: true,\n get: function get() {\n return decode_2.decodeHTML;\n }\n});\nObject.defineProperty(exports, \"decodeHTML4Strict\", {\n enumerable: true,\n get: function get() {\n return decode_2.decodeHTMLStrict;\n }\n});\nObject.defineProperty(exports, \"decodeHTML5Strict\", {\n enumerable: true,\n get: function get() {\n return decode_2.decodeHTMLStrict;\n }\n});\nObject.defineProperty(exports, \"decodeXMLStrict\", {\n enumerable: true,\n get: function get() {\n return decode_2.decodeXML;\n }\n});","import _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\nimport _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _regeneratorRuntime from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/regenerator\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}; // tslint:disable:max-classes-per-file\n\n\nimport { connectivity, type } from \"../../common.speech/Exports\";\nimport { AudioSourceInitializingEvent, AudioSourceReadyEvent, AudioStreamNodeAttachedEvent, AudioStreamNodeAttachingEvent, AudioStreamNodeDetachedEvent, ChunkedArrayBufferStream, Events, EventSource } from \"../../common/Exports\";\nimport { createNoDashGuid } from \"../../common/Guid\";\nimport { AudioStreamFormat } from \"../Exports\";\nimport { AudioStreamFormatImpl } from \"./AudioStreamFormat\";\n/**\n * Represents audio input stream used for custom audio input configurations.\n * @class AudioInputStream\n */\n\nexport var AudioInputStream = /*#__PURE__*/function () {\n /**\n * Creates and initializes an instance.\n * @constructor\n */\n function AudioInputStream() {\n _classCallCheck(this, AudioInputStream);\n }\n /**\n * Creates a memory backed PushAudioInputStream with the specified audio format.\n * @member AudioInputStream.createPushStream\n * @function\n * @public\n * @param {AudioStreamFormat} format - The audio data format in which audio will be\n * written to the push audio stream's write() method (Required if format is not 16 kHz 16bit mono PCM).\n * @returns {PushAudioInputStream} The audio input stream being created.\n */\n\n\n _createClass(AudioInputStream, null, [{\n key: \"createPushStream\",\n value: function createPushStream(format) {\n return PushAudioInputStream.create(format);\n }\n /**\n * Creates a PullAudioInputStream that delegates to the specified callback interface for read()\n * and close() methods.\n * @member AudioInputStream.createPullStream\n * @function\n * @public\n * @param {PullAudioInputStreamCallback} callback - The custom audio input object, derived from\n * PullAudioInputStreamCallback\n * @param {AudioStreamFormat} format - The audio data format in which audio will be returned from\n * the callback's read() method (Required if format is not 16 kHz 16bit mono PCM).\n * @returns {PullAudioInputStream} The audio input stream being created.\n */\n\n }, {\n key: \"createPullStream\",\n value: function createPullStream(callback, format) {\n return PullAudioInputStream.create(callback, format); // throw new Error(\"Oops\");\n }\n }]);\n\n return AudioInputStream;\n}();\n/**\n * Represents memory backed push audio input stream used for custom audio input configurations.\n * @class PushAudioInputStream\n */\n\nexport var PushAudioInputStream = /*#__PURE__*/function (_AudioInputStream) {\n _inherits(PushAudioInputStream, _AudioInputStream);\n\n var _super = _createSuper(PushAudioInputStream);\n\n function PushAudioInputStream() {\n _classCallCheck(this, PushAudioInputStream);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(PushAudioInputStream, null, [{\n key: \"create\",\n value:\n /**\n * Creates a memory backed PushAudioInputStream with the specified audio format.\n * @member PushAudioInputStream.create\n * @function\n * @public\n * @param {AudioStreamFormat} format - The audio data format in which audio will be written to the\n * push audio stream's write() method (Required if format is not 16 kHz 16bit mono PCM).\n * @returns {PushAudioInputStream} The push audio input stream being created.\n */\n function create(format) {\n return new PushAudioInputStreamImpl(format);\n }\n }]);\n\n return PushAudioInputStream;\n}(AudioInputStream);\n/**\n * Represents memory backed push audio input stream used for custom audio input configurations.\n * @private\n * @class PushAudioInputStreamImpl\n */\n\nexport var PushAudioInputStreamImpl = /*#__PURE__*/function (_PushAudioInputStream) {\n _inherits(PushAudioInputStreamImpl, _PushAudioInputStream);\n\n var _super2 = _createSuper(PushAudioInputStreamImpl);\n\n /**\n * Creates and initalizes an instance with the given values.\n * @constructor\n * @param {AudioStreamFormat} format - The audio stream format.\n */\n function PushAudioInputStreamImpl(format) {\n var _this;\n\n _classCallCheck(this, PushAudioInputStreamImpl);\n\n _this = _super2.call(this);\n\n _this.onEvent = function (event) {\n _this.privEvents.onEvent(event);\n\n Events.instance.onEvent(event);\n };\n\n if (format === undefined) {\n _this.privFormat = AudioStreamFormatImpl.getDefaultInputFormat();\n } else {\n _this.privFormat = format;\n }\n\n _this.privEvents = new EventSource();\n _this.privId = createNoDashGuid();\n _this.privStream = new ChunkedArrayBufferStream(_this.privFormat.avgBytesPerSec / 10);\n return _this;\n }\n /**\n * Format information for the audio\n */\n\n\n _createClass(PushAudioInputStreamImpl, [{\n key: \"format\",\n get: function get() {\n return Promise.resolve(this.privFormat);\n }\n /**\n * Writes the audio data specified by making an internal copy of the data.\n * @member PushAudioInputStreamImpl.prototype.write\n * @function\n * @public\n * @param {ArrayBuffer} dataBuffer - The audio buffer of which this function will make a copy.\n */\n\n }, {\n key: \"write\",\n value: function write(dataBuffer) {\n this.privStream.writeStreamChunk({\n buffer: dataBuffer,\n isEnd: false,\n timeReceived: Date.now()\n });\n }\n /**\n * Closes the stream.\n * @member PushAudioInputStreamImpl.prototype.close\n * @function\n * @public\n */\n\n }, {\n key: \"close\",\n value: function close() {\n this.privStream.close();\n }\n }, {\n key: \"id\",\n value: function id() {\n return this.privId;\n }\n }, {\n key: \"blob\",\n get: function get() {\n var _this2 = this;\n\n return this.attach(\"id\").then(function (audioNode) {\n var data = [];\n var bufferData = Buffer.from(\"\");\n\n var readCycle = function readCycle() {\n return audioNode.read().then(function (audioStreamChunk) {\n if (!audioStreamChunk || audioStreamChunk.isEnd) {\n if (typeof XMLHttpRequest !== \"undefined\" && typeof Blob !== \"undefined\") {\n return Promise.resolve(new Blob(data));\n } else {\n return Promise.resolve(Buffer.from(bufferData));\n }\n } else {\n if (typeof Blob !== \"undefined\") {\n data.push(audioStreamChunk.buffer);\n } else {\n bufferData = Buffer.concat([bufferData, _this2.toBuffer(audioStreamChunk.buffer)]);\n }\n\n return readCycle();\n }\n });\n };\n\n return readCycle();\n });\n }\n }, {\n key: \"turnOn\",\n value: function turnOn() {\n this.onEvent(new AudioSourceInitializingEvent(this.privId)); // no stream id\n\n this.onEvent(new AudioSourceReadyEvent(this.privId));\n return;\n }\n }, {\n key: \"attach\",\n value: function attach(audioNodeId) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {\n var _this3 = this;\n\n var stream;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n this.onEvent(new AudioStreamNodeAttachingEvent(this.privId, audioNodeId));\n _context2.next = 3;\n return this.turnOn();\n\n case 3:\n stream = this.privStream;\n this.onEvent(new AudioStreamNodeAttachedEvent(this.privId, audioNodeId));\n return _context2.abrupt(\"return\", {\n detach: function detach() {\n return __awaiter(_this3, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n this.onEvent(new AudioStreamNodeDetachedEvent(this.privId, audioNodeId));\n return _context.abrupt(\"return\", this.turnOff());\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n },\n id: function id() {\n return audioNodeId;\n },\n read: function read() {\n return stream.read();\n }\n });\n\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n }\n }, {\n key: \"detach\",\n value: function detach(audioNodeId) {\n this.onEvent(new AudioStreamNodeDetachedEvent(this.privId, audioNodeId));\n }\n }, {\n key: \"turnOff\",\n value: function turnOff() {\n return;\n }\n }, {\n key: \"events\",\n get: function get() {\n return this.privEvents;\n }\n }, {\n key: \"deviceInfo\",\n get: function get() {\n return Promise.resolve({\n bitspersample: this.privFormat.bitsPerSample,\n channelcount: this.privFormat.channels,\n connectivity: connectivity.Unknown,\n manufacturer: \"Speech SDK\",\n model: \"PushStream\",\n samplerate: this.privFormat.samplesPerSec,\n type: type.Stream\n });\n }\n }, {\n key: \"toBuffer\",\n value: function toBuffer(arrayBuffer) {\n var buf = Buffer.alloc(arrayBuffer.byteLength);\n var view = new Uint8Array(arrayBuffer);\n\n for (var i = 0; i < buf.length; ++i) {\n buf[i] = view[i];\n }\n\n return buf;\n }\n }]);\n\n return PushAudioInputStreamImpl;\n}(PushAudioInputStream);\n/*\n * Represents audio input stream used for custom audio input configurations.\n * @class PullAudioInputStream\n */\n\nexport var PullAudioInputStream = /*#__PURE__*/function (_AudioInputStream2) {\n _inherits(PullAudioInputStream, _AudioInputStream2);\n\n var _super3 = _createSuper(PullAudioInputStream);\n\n /**\n * Creates and initializes and instance.\n * @constructor\n */\n function PullAudioInputStream() {\n _classCallCheck(this, PullAudioInputStream);\n\n return _super3.call(this);\n }\n /**\n * Creates a PullAudioInputStream that delegates to the specified callback interface for\n * read() and close() methods, using the default format (16 kHz 16bit mono PCM).\n * @member PullAudioInputStream.create\n * @function\n * @public\n * @param {PullAudioInputStreamCallback} callback - The custom audio input object,\n * derived from PullAudioInputStreamCustomCallback\n * @param {AudioStreamFormat} format - The audio data format in which audio will be\n * returned from the callback's read() method (Required if format is not 16 kHz 16bit mono PCM).\n * @returns {PullAudioInputStream} The push audio input stream being created.\n */\n\n\n _createClass(PullAudioInputStream, null, [{\n key: \"create\",\n value: function create(callback, format) {\n return new PullAudioInputStreamImpl(callback, format);\n }\n }]);\n\n return PullAudioInputStream;\n}(AudioInputStream);\n/**\n * Represents audio input stream used for custom audio input configurations.\n * @private\n * @class PullAudioInputStreamImpl\n */\n\nexport var PullAudioInputStreamImpl = /*#__PURE__*/function (_PullAudioInputStream) {\n _inherits(PullAudioInputStreamImpl, _PullAudioInputStream);\n\n var _super4 = _createSuper(PullAudioInputStreamImpl);\n\n /**\n * Creates a PullAudioInputStream that delegates to the specified callback interface for\n * read() and close() methods, using the default format (16 kHz 16bit mono PCM).\n * @constructor\n * @param {PullAudioInputStreamCallback} callback - The custom audio input object,\n * derived from PullAudioInputStreamCustomCallback\n * @param {AudioStreamFormat} format - The audio data format in which audio will be\n * returned from the callback's read() method (Required if format is not 16 kHz 16bit mono PCM).\n */\n function PullAudioInputStreamImpl(callback, format) {\n var _this4;\n\n _classCallCheck(this, PullAudioInputStreamImpl);\n\n _this4 = _super4.call(this);\n\n _this4.onEvent = function (event) {\n _this4.privEvents.onEvent(event);\n\n Events.instance.onEvent(event);\n };\n\n if (undefined === format) {\n _this4.privFormat = AudioStreamFormat.getDefaultInputFormat();\n } else {\n _this4.privFormat = format;\n }\n\n _this4.privEvents = new EventSource();\n _this4.privId = createNoDashGuid();\n _this4.privCallback = callback;\n _this4.privIsClosed = false;\n _this4.privBufferSize = _this4.privFormat.avgBytesPerSec / 10;\n return _this4;\n }\n /**\n * Format information for the audio\n */\n\n\n _createClass(PullAudioInputStreamImpl, [{\n key: \"format\",\n get: function get() {\n return Promise.resolve(this.privFormat);\n }\n /**\n * Closes the stream.\n * @member PullAudioInputStreamImpl.prototype.close\n * @function\n * @public\n */\n\n }, {\n key: \"close\",\n value: function close() {\n this.privIsClosed = true;\n this.privCallback.close();\n }\n }, {\n key: \"id\",\n value: function id() {\n return this.privId;\n }\n }, {\n key: \"blob\",\n get: function get() {\n return Promise.reject(\"Not implemented\");\n }\n }, {\n key: \"turnOn\",\n value: function turnOn() {\n this.onEvent(new AudioSourceInitializingEvent(this.privId)); // no stream id\n\n this.onEvent(new AudioSourceReadyEvent(this.privId));\n return;\n }\n }, {\n key: \"attach\",\n value: function attach(audioNodeId) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {\n var _this5 = this;\n\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n this.onEvent(new AudioStreamNodeAttachingEvent(this.privId, audioNodeId));\n _context3.next = 3;\n return this.turnOn();\n\n case 3:\n this.onEvent(new AudioStreamNodeAttachedEvent(this.privId, audioNodeId));\n return _context3.abrupt(\"return\", {\n detach: function detach() {\n _this5.privCallback.close();\n\n _this5.onEvent(new AudioStreamNodeDetachedEvent(_this5.privId, audioNodeId));\n\n return _this5.turnOff();\n },\n id: function id() {\n return audioNodeId;\n },\n read: function read() {\n var totalBytes = 0;\n var transmitBuff; // Until we have the minimum number of bytes to send in a transmission, keep asking for more.\n\n while (totalBytes < _this5.privBufferSize) {\n // Sizing the read buffer to the delta between the perfect size and what's left means we won't ever get too much\n // data back.\n var readBuff = new ArrayBuffer(_this5.privBufferSize - totalBytes);\n\n var pulledBytes = _this5.privCallback.read(readBuff); // If there is no return buffer yet defined, set the return buffer to the that was just populated.\n // This was, if we have enough data there's no copy penalty, but if we don't we have a buffer that's the\n // preferred size allocated.\n\n\n if (undefined === transmitBuff) {\n transmitBuff = readBuff;\n } else {\n // Not the first bite at the apple, so fill the return buffer with the data we got back.\n var intView = new Int8Array(transmitBuff);\n intView.set(new Int8Array(readBuff), totalBytes);\n } // If there are no bytes to read, just break out and be done.\n\n\n if (0 === pulledBytes) {\n break;\n }\n\n totalBytes += pulledBytes;\n }\n\n return Promise.resolve({\n buffer: transmitBuff.slice(0, totalBytes),\n isEnd: _this5.privIsClosed || totalBytes === 0,\n timeReceived: Date.now()\n });\n }\n });\n\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n }\n }, {\n key: \"detach\",\n value: function detach(audioNodeId) {\n this.onEvent(new AudioStreamNodeDetachedEvent(this.privId, audioNodeId));\n }\n }, {\n key: \"turnOff\",\n value: function turnOff() {\n return;\n }\n }, {\n key: \"events\",\n get: function get() {\n return this.privEvents;\n }\n }, {\n key: \"deviceInfo\",\n get: function get() {\n return Promise.resolve({\n bitspersample: this.privFormat.bitsPerSample,\n channelcount: this.privFormat.channels,\n connectivity: connectivity.Unknown,\n manufacturer: \"Speech SDK\",\n model: \"PullStream\",\n samplerate: this.privFormat.samplesPerSec,\n type: type.Stream\n });\n }\n }]);\n\n return PullAudioInputStreamImpl;\n}(PullAudioInputStream);","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","// DOM-Level-1-compliant structure\nvar NodePrototype = require('./node');\n\nvar ElementPrototype = module.exports = Object.create(NodePrototype);\nvar domLvl1 = {\n tagName: \"name\"\n};\nObject.keys(domLvl1).forEach(function (key) {\n var shorthand = domLvl1[key];\n Object.defineProperty(ElementPrototype, key, {\n get: function get() {\n return this[shorthand] || null;\n },\n set: function set(val) {\n this[shorthand] = val;\n return val;\n }\n });\n});","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n // find the complete implementation of crypto (msCrypto) on IE11.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n\n var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (var i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nimport { v4 as uuid } from \"uuid\";\n\nvar createGuid = function createGuid() {\n return uuid();\n};\n\nvar createNoDashGuid = function createNoDashGuid() {\n return createGuid().replace(new RegExp(\"-\", \"g\"), \"\").toUpperCase();\n};\n\nexport { createGuid, createNoDashGuid };","exports.removeElement = function (elem) {\n if (elem.prev) elem.prev.next = elem.next;\n if (elem.next) elem.next.prev = elem.prev;\n\n if (elem.parent) {\n var childs = elem.parent.children;\n childs.splice(childs.lastIndexOf(elem), 1);\n }\n};\n\nexports.replaceElement = function (elem, replacement) {\n var prev = replacement.prev = elem.prev;\n\n if (prev) {\n prev.next = replacement;\n }\n\n var next = replacement.next = elem.next;\n\n if (next) {\n next.prev = replacement;\n }\n\n var parent = replacement.parent = elem.parent;\n\n if (parent) {\n var childs = parent.children;\n childs[childs.lastIndexOf(elem)] = replacement;\n }\n};\n\nexports.appendChild = function (elem, child) {\n child.parent = elem;\n\n if (elem.children.push(child) !== 1) {\n var sibling = elem.children[elem.children.length - 2];\n sibling.next = child;\n child.prev = sibling;\n child.next = null;\n }\n};\n\nexports.append = function (elem, next) {\n var parent = elem.parent,\n currNext = elem.next;\n next.next = currNext;\n next.prev = elem;\n elem.next = next;\n next.parent = parent;\n\n if (currNext) {\n currNext.prev = next;\n\n if (parent) {\n var childs = parent.children;\n childs.splice(childs.lastIndexOf(currNext), 0, next);\n }\n } else if (parent) {\n parent.children.push(next);\n }\n};\n\nexports.prepend = function (elem, prev) {\n var parent = elem.parent;\n\n if (parent) {\n var childs = parent.children;\n childs.splice(childs.lastIndexOf(elem), 0, prev);\n }\n\n if (elem.prev) {\n elem.prev.next = prev;\n }\n\n prev.parent = parent;\n prev.prev = elem.prev;\n prev.next = elem;\n elem.prev = prev;\n};","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var _typeof = require(\"@babel/runtime/helpers/typeof\")[\"default\"];\n\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/createClass\";\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\n/**\n * @class Contracts\n * @private\n */\nexport var Contracts = /*#__PURE__*/function () {\n function Contracts() {\n _classCallCheck(this, Contracts);\n }\n\n _createClass(Contracts, null, [{\n key: \"throwIfNullOrUndefined\",\n value: function throwIfNullOrUndefined(param, name) {\n if (param === undefined || param === null) {\n throw new Error(\"throwIfNullOrUndefined:\" + name);\n }\n }\n }, {\n key: \"throwIfNull\",\n value: function throwIfNull(param, name) {\n if (param === null) {\n throw new Error(\"throwIfNull:\" + name);\n }\n }\n }, {\n key: \"throwIfNullOrWhitespace\",\n value: function throwIfNullOrWhitespace(param, name) {\n Contracts.throwIfNullOrUndefined(param, name);\n\n if ((\"\" + param).trim().length < 1) {\n throw new Error(\"throwIfNullOrWhitespace:\" + name);\n }\n }\n }, {\n key: \"throwIfDisposed\",\n value: function throwIfDisposed(isDisposed) {\n if (isDisposed) {\n throw new Error(\"the object is already disposed\");\n }\n }\n }, {\n key: \"throwIfArrayEmptyOrWhitespace\",\n value: function throwIfArrayEmptyOrWhitespace(array, name) {\n Contracts.throwIfNullOrUndefined(array, name);\n\n if (array.length === 0) {\n throw new Error(\"throwIfArrayEmptyOrWhitespace:\" + name);\n }\n\n var _iterator = _createForOfIteratorHelper(array),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var item = _step.value;\n Contracts.throwIfNullOrWhitespace(item, name);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n }, {\n key: \"throwIfFileDoesNotExist\",\n value: function throwIfFileDoesNotExist(param, name) {\n Contracts.throwIfNullOrWhitespace(param, name); // TODO check for file existence.\n }\n }, {\n key: \"throwIfNotUndefined\",\n value: function throwIfNotUndefined(param, name) {\n if (param !== undefined) {\n throw new Error(\"throwIfNotUndefined:\" + name);\n }\n }\n }]);\n\n return Contracts;\n}();","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n metadata.facade = it;\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nexport default function _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n _construct = Reflect.construct;\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nexport default function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n}","export default function _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\nimport _wrapNativeSuper from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n// tslint:disable:max-classes-per-file\n\n/**\n * The error that is thrown when an argument passed in is null.\n *\n * @export\n * @class ArgumentNullError\n * @extends {Error}\n */\nexport var ArgumentNullError = /*#__PURE__*/function (_Error) {\n _inherits(ArgumentNullError, _Error);\n\n var _super = _createSuper(ArgumentNullError);\n\n /**\n * Creates an instance of ArgumentNullError.\n *\n * @param {string} argumentName - Name of the argument that is null\n *\n * @memberOf ArgumentNullError\n */\n function ArgumentNullError(argumentName) {\n var _this;\n\n _classCallCheck(this, ArgumentNullError);\n\n _this = _super.call(this, argumentName);\n _this.name = \"ArgumentNull\";\n _this.message = argumentName;\n return _this;\n }\n\n return ArgumentNullError;\n}( /*#__PURE__*/_wrapNativeSuper(Error));\n/**\n * The error that is thrown when an invalid operation is performed in the code.\n *\n * @export\n * @class InvalidOperationError\n * @extends {Error}\n */\n\nexport var InvalidOperationError = /*#__PURE__*/function (_Error2) {\n _inherits(InvalidOperationError, _Error2);\n\n var _super2 = _createSuper(InvalidOperationError);\n\n /**\n * Creates an instance of InvalidOperationError.\n *\n * @param {string} error - The error\n *\n * @memberOf InvalidOperationError\n */\n function InvalidOperationError(error) {\n var _this2;\n\n _classCallCheck(this, InvalidOperationError);\n\n _this2 = _super2.call(this, error);\n _this2.name = \"InvalidOperation\";\n _this2.message = error;\n return _this2;\n }\n\n return InvalidOperationError;\n}( /*#__PURE__*/_wrapNativeSuper(Error));\n/**\n * The error that is thrown when an object is disposed.\n *\n * @export\n * @class ObjectDisposedError\n * @extends {Error}\n */\n// tslint:disable-next-line:max-classes-per-file\n\nexport var ObjectDisposedError = /*#__PURE__*/function (_Error3) {\n _inherits(ObjectDisposedError, _Error3);\n\n var _super3 = _createSuper(ObjectDisposedError);\n\n /**\n * Creates an instance of ObjectDisposedError.\n *\n * @param {string} objectName - The object that is disposed\n * @param {string} error - The error\n *\n * @memberOf ObjectDisposedError\n */\n function ObjectDisposedError(objectName, error) {\n var _this3;\n\n _classCallCheck(this, ObjectDisposedError);\n\n _this3 = _super3.call(this, error);\n _this3.name = objectName + \"ObjectDisposed\";\n _this3.message = error;\n return _this3;\n }\n\n return ObjectDisposedError;\n}( /*#__PURE__*/_wrapNativeSuper(Error));","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _slicedToArray = function () {\n function sliceIterator(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"]) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n }\n\n return function (arr, i) {\n if (Array.isArray(arr)) {\n return arr;\n } else if (Symbol.iterator in Object(arr)) {\n return sliceIterator(arr, i);\n } else {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n }\n };\n}();\n\nexports.default = InlineStyleToObject;\n/**\n * Converts an inline style string into an object of React style properties\n *\n * @param {String} inlineStyle='' The inline style to convert\n * @returns {Object} The converted style\n */\n\nfunction InlineStyleToObject() {\n var inlineStyle = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; // just return empty object if the inlineStyle is empty\n\n if (inlineStyle === '') {\n return {};\n }\n\n return inlineStyle.split(';').reduce(function (styleObject, stylePropertyValue) {\n // extract the style property name and value\n var _stylePropertyValue$s = stylePropertyValue.split(/^([^:]+):/).filter(function (val, i) {\n return i > 0;\n }).map(function (item) {\n return item.trim().toLowerCase();\n }),\n _stylePropertyValue$s2 = _slicedToArray(_stylePropertyValue$s, 2),\n property = _stylePropertyValue$s2[0],\n value = _stylePropertyValue$s2[1]; // if there is no value (i.e. no : in the style) then ignore it\n\n\n if (value === undefined) {\n return styleObject;\n } // convert the property name into the correct React format\n // remove all hyphens and convert the letter immediately after each hyphen to upper case\n // additionally don't uppercase any -ms- prefix\n // e.g. -ms-style-property = msStyleProperty\n // -webkit-style-property = WebkitStyleProperty\n\n\n property = property.replace(/^-ms-/, 'ms-').replace(/-(.)/g, function (_, character) {\n return character.toUpperCase();\n }); // add the new style property and value to the style object\n\n styleObject[property] = value;\n return styleObject;\n }, {});\n}","function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nmodule.exports = _isNativeReflectConstruct;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","module.exports = Tokenizer;\n\nvar decodeCodePoint = require(\"entities/lib/decode_codepoint.js\");\n\nvar entityMap = require(\"entities/maps/entities.json\");\n\nvar legacyMap = require(\"entities/maps/legacy.json\");\n\nvar xmlMap = require(\"entities/maps/xml.json\");\n\nvar i = 0;\nvar TEXT = i++;\nvar BEFORE_TAG_NAME = i++; //after <\n\nvar IN_TAG_NAME = i++;\nvar IN_SELF_CLOSING_TAG = i++;\nvar BEFORE_CLOSING_TAG_NAME = i++;\nvar IN_CLOSING_TAG_NAME = i++;\nvar AFTER_CLOSING_TAG_NAME = i++; //attributes\n\nvar BEFORE_ATTRIBUTE_NAME = i++;\nvar IN_ATTRIBUTE_NAME = i++;\nvar AFTER_ATTRIBUTE_NAME = i++;\nvar BEFORE_ATTRIBUTE_VALUE = i++;\nvar IN_ATTRIBUTE_VALUE_DQ = i++; // \"\n\nvar IN_ATTRIBUTE_VALUE_SQ = i++; // '\n\nvar IN_ATTRIBUTE_VALUE_NQ = i++; //declarations\n\nvar BEFORE_DECLARATION = i++; // !\n\nvar IN_DECLARATION = i++; //processing instructions\n\nvar IN_PROCESSING_INSTRUCTION = i++; // ?\n//comments\n\nvar BEFORE_COMMENT = i++;\nvar IN_COMMENT = i++;\nvar AFTER_COMMENT_1 = i++;\nvar AFTER_COMMENT_2 = i++; //cdata\n\nvar BEFORE_CDATA_1 = i++; // [\n\nvar BEFORE_CDATA_2 = i++; // C\n\nvar BEFORE_CDATA_3 = i++; // D\n\nvar BEFORE_CDATA_4 = i++; // A\n\nvar BEFORE_CDATA_5 = i++; // T\n\nvar BEFORE_CDATA_6 = i++; // A\n\nvar IN_CDATA = i++; // [\n\nvar AFTER_CDATA_1 = i++; // ]\n\nvar AFTER_CDATA_2 = i++; // ]\n//special tags\n\nvar BEFORE_SPECIAL = i++; //S\n\nvar BEFORE_SPECIAL_END = i++; //S\n\nvar BEFORE_SCRIPT_1 = i++; //C\n\nvar BEFORE_SCRIPT_2 = i++; //R\n\nvar BEFORE_SCRIPT_3 = i++; //I\n\nvar BEFORE_SCRIPT_4 = i++; //P\n\nvar BEFORE_SCRIPT_5 = i++; //T\n\nvar AFTER_SCRIPT_1 = i++; //C\n\nvar AFTER_SCRIPT_2 = i++; //R\n\nvar AFTER_SCRIPT_3 = i++; //I\n\nvar AFTER_SCRIPT_4 = i++; //P\n\nvar AFTER_SCRIPT_5 = i++; //T\n\nvar BEFORE_STYLE_1 = i++; //T\n\nvar BEFORE_STYLE_2 = i++; //Y\n\nvar BEFORE_STYLE_3 = i++; //L\n\nvar BEFORE_STYLE_4 = i++; //E\n\nvar AFTER_STYLE_1 = i++; //T\n\nvar AFTER_STYLE_2 = i++; //Y\n\nvar AFTER_STYLE_3 = i++; //L\n\nvar AFTER_STYLE_4 = i++; //E\n\nvar BEFORE_ENTITY = i++; //&\n\nvar BEFORE_NUMERIC_ENTITY = i++; //#\n\nvar IN_NAMED_ENTITY = i++;\nvar IN_NUMERIC_ENTITY = i++;\nvar IN_HEX_ENTITY = i++; //X\n\nvar j = 0;\nvar SPECIAL_NONE = j++;\nvar SPECIAL_SCRIPT = j++;\nvar SPECIAL_STYLE = j++;\n\nfunction whitespace(c) {\n return c === \" \" || c === \"\\n\" || c === \"\\t\" || c === \"\\f\" || c === \"\\r\";\n}\n\nfunction ifElseState(upper, SUCCESS, FAILURE) {\n var lower = upper.toLowerCase();\n\n if (upper === lower) {\n return function (c) {\n if (c === lower) {\n this._state = SUCCESS;\n } else {\n this._state = FAILURE;\n this._index--;\n }\n };\n } else {\n return function (c) {\n if (c === lower || c === upper) {\n this._state = SUCCESS;\n } else {\n this._state = FAILURE;\n this._index--;\n }\n };\n }\n}\n\nfunction consumeSpecialNameChar(upper, NEXT_STATE) {\n var lower = upper.toLowerCase();\n return function (c) {\n if (c === lower || c === upper) {\n this._state = NEXT_STATE;\n } else {\n this._state = IN_TAG_NAME;\n this._index--; //consume the token again\n }\n };\n}\n\nfunction Tokenizer(options, cbs) {\n this._state = TEXT;\n this._buffer = \"\";\n this._sectionStart = 0;\n this._index = 0;\n this._bufferOffset = 0; //chars removed from _buffer\n\n this._baseState = TEXT;\n this._special = SPECIAL_NONE;\n this._cbs = cbs;\n this._running = true;\n this._ended = false;\n this._xmlMode = !!(options && options.xmlMode);\n this._decodeEntities = !!(options && options.decodeEntities);\n}\n\nTokenizer.prototype._stateText = function (c) {\n if (c === \"<\") {\n if (this._index > this._sectionStart) {\n this._cbs.ontext(this._getSection());\n }\n\n this._state = BEFORE_TAG_NAME;\n this._sectionStart = this._index;\n } else if (this._decodeEntities && this._special === SPECIAL_NONE && c === \"&\") {\n if (this._index > this._sectionStart) {\n this._cbs.ontext(this._getSection());\n }\n\n this._baseState = TEXT;\n this._state = BEFORE_ENTITY;\n this._sectionStart = this._index;\n }\n};\n\nTokenizer.prototype._stateBeforeTagName = function (c) {\n if (c === \"/\") {\n this._state = BEFORE_CLOSING_TAG_NAME;\n } else if (c === \"<\") {\n this._cbs.ontext(this._getSection());\n\n this._sectionStart = this._index;\n } else if (c === \">\" || this._special !== SPECIAL_NONE || whitespace(c)) {\n this._state = TEXT;\n } else if (c === \"!\") {\n this._state = BEFORE_DECLARATION;\n this._sectionStart = this._index + 1;\n } else if (c === \"?\") {\n this._state = IN_PROCESSING_INSTRUCTION;\n this._sectionStart = this._index + 1;\n } else {\n this._state = !this._xmlMode && (c === \"s\" || c === \"S\") ? BEFORE_SPECIAL : IN_TAG_NAME;\n this._sectionStart = this._index;\n }\n};\n\nTokenizer.prototype._stateInTagName = function (c) {\n if (c === \"/\" || c === \">\" || whitespace(c)) {\n this._emitToken(\"onopentagname\");\n\n this._state = BEFORE_ATTRIBUTE_NAME;\n this._index--;\n }\n};\n\nTokenizer.prototype._stateBeforeCloseingTagName = function (c) {\n if (whitespace(c)) ;else if (c === \">\") {\n this._state = TEXT;\n } else if (this._special !== SPECIAL_NONE) {\n if (c === \"s\" || c === \"S\") {\n this._state = BEFORE_SPECIAL_END;\n } else {\n this._state = TEXT;\n this._index--;\n }\n } else {\n this._state = IN_CLOSING_TAG_NAME;\n this._sectionStart = this._index;\n }\n};\n\nTokenizer.prototype._stateInCloseingTagName = function (c) {\n if (c === \">\" || whitespace(c)) {\n this._emitToken(\"onclosetag\");\n\n this._state = AFTER_CLOSING_TAG_NAME;\n this._index--;\n }\n};\n\nTokenizer.prototype._stateAfterCloseingTagName = function (c) {\n //skip everything until \">\"\n if (c === \">\") {\n this._state = TEXT;\n this._sectionStart = this._index + 1;\n }\n};\n\nTokenizer.prototype._stateBeforeAttributeName = function (c) {\n if (c === \">\") {\n this._cbs.onopentagend();\n\n this._state = TEXT;\n this._sectionStart = this._index + 1;\n } else if (c === \"/\") {\n this._state = IN_SELF_CLOSING_TAG;\n } else if (!whitespace(c)) {\n this._state = IN_ATTRIBUTE_NAME;\n this._sectionStart = this._index;\n }\n};\n\nTokenizer.prototype._stateInSelfClosingTag = function (c) {\n if (c === \">\") {\n this._cbs.onselfclosingtag();\n\n this._state = TEXT;\n this._sectionStart = this._index + 1;\n } else if (!whitespace(c)) {\n this._state = BEFORE_ATTRIBUTE_NAME;\n this._index--;\n }\n};\n\nTokenizer.prototype._stateInAttributeName = function (c) {\n if (c === \"=\" || c === \"/\" || c === \">\" || whitespace(c)) {\n this._cbs.onattribname(this._getSection());\n\n this._sectionStart = -1;\n this._state = AFTER_ATTRIBUTE_NAME;\n this._index--;\n }\n};\n\nTokenizer.prototype._stateAfterAttributeName = function (c) {\n if (c === \"=\") {\n this._state = BEFORE_ATTRIBUTE_VALUE;\n } else if (c === \"/\" || c === \">\") {\n this._cbs.onattribend();\n\n this._state = BEFORE_ATTRIBUTE_NAME;\n this._index--;\n } else if (!whitespace(c)) {\n this._cbs.onattribend();\n\n this._state = IN_ATTRIBUTE_NAME;\n this._sectionStart = this._index;\n }\n};\n\nTokenizer.prototype._stateBeforeAttributeValue = function (c) {\n if (c === '\"') {\n this._state = IN_ATTRIBUTE_VALUE_DQ;\n this._sectionStart = this._index + 1;\n } else if (c === \"'\") {\n this._state = IN_ATTRIBUTE_VALUE_SQ;\n this._sectionStart = this._index + 1;\n } else if (!whitespace(c)) {\n this._state = IN_ATTRIBUTE_VALUE_NQ;\n this._sectionStart = this._index;\n this._index--; //reconsume token\n }\n};\n\nTokenizer.prototype._stateInAttributeValueDoubleQuotes = function (c) {\n if (c === '\"') {\n this._emitToken(\"onattribdata\");\n\n this._cbs.onattribend();\n\n this._state = BEFORE_ATTRIBUTE_NAME;\n } else if (this._decodeEntities && c === \"&\") {\n this._emitToken(\"onattribdata\");\n\n this._baseState = this._state;\n this._state = BEFORE_ENTITY;\n this._sectionStart = this._index;\n }\n};\n\nTokenizer.prototype._stateInAttributeValueSingleQuotes = function (c) {\n if (c === \"'\") {\n this._emitToken(\"onattribdata\");\n\n this._cbs.onattribend();\n\n this._state = BEFORE_ATTRIBUTE_NAME;\n } else if (this._decodeEntities && c === \"&\") {\n this._emitToken(\"onattribdata\");\n\n this._baseState = this._state;\n this._state = BEFORE_ENTITY;\n this._sectionStart = this._index;\n }\n};\n\nTokenizer.prototype._stateInAttributeValueNoQuotes = function (c) {\n if (whitespace(c) || c === \">\") {\n this._emitToken(\"onattribdata\");\n\n this._cbs.onattribend();\n\n this._state = BEFORE_ATTRIBUTE_NAME;\n this._index--;\n } else if (this._decodeEntities && c === \"&\") {\n this._emitToken(\"onattribdata\");\n\n this._baseState = this._state;\n this._state = BEFORE_ENTITY;\n this._sectionStart = this._index;\n }\n};\n\nTokenizer.prototype._stateBeforeDeclaration = function (c) {\n this._state = c === \"[\" ? BEFORE_CDATA_1 : c === \"-\" ? BEFORE_COMMENT : IN_DECLARATION;\n};\n\nTokenizer.prototype._stateInDeclaration = function (c) {\n if (c === \">\") {\n this._cbs.ondeclaration(this._getSection());\n\n this._state = TEXT;\n this._sectionStart = this._index + 1;\n }\n};\n\nTokenizer.prototype._stateInProcessingInstruction = function (c) {\n if (c === \">\") {\n this._cbs.onprocessinginstruction(this._getSection());\n\n this._state = TEXT;\n this._sectionStart = this._index + 1;\n }\n};\n\nTokenizer.prototype._stateBeforeComment = function (c) {\n if (c === \"-\") {\n this._state = IN_COMMENT;\n this._sectionStart = this._index + 1;\n } else {\n this._state = IN_DECLARATION;\n }\n};\n\nTokenizer.prototype._stateInComment = function (c) {\n if (c === \"-\") this._state = AFTER_COMMENT_1;\n};\n\nTokenizer.prototype._stateAfterComment1 = function (c) {\n if (c === \"-\") {\n this._state = AFTER_COMMENT_2;\n } else {\n this._state = IN_COMMENT;\n }\n};\n\nTokenizer.prototype._stateAfterComment2 = function (c) {\n if (c === \">\") {\n //remove 2 trailing chars\n this._cbs.oncomment(this._buffer.substring(this._sectionStart, this._index - 2));\n\n this._state = TEXT;\n this._sectionStart = this._index + 1;\n } else if (c !== \"-\") {\n this._state = IN_COMMENT;\n } // else: stay in AFTER_COMMENT_2 (`--->`)\n\n};\n\nTokenizer.prototype._stateBeforeCdata1 = ifElseState(\"C\", BEFORE_CDATA_2, IN_DECLARATION);\nTokenizer.prototype._stateBeforeCdata2 = ifElseState(\"D\", BEFORE_CDATA_3, IN_DECLARATION);\nTokenizer.prototype._stateBeforeCdata3 = ifElseState(\"A\", BEFORE_CDATA_4, IN_DECLARATION);\nTokenizer.prototype._stateBeforeCdata4 = ifElseState(\"T\", BEFORE_CDATA_5, IN_DECLARATION);\nTokenizer.prototype._stateBeforeCdata5 = ifElseState(\"A\", BEFORE_CDATA_6, IN_DECLARATION);\n\nTokenizer.prototype._stateBeforeCdata6 = function (c) {\n if (c === \"[\") {\n this._state = IN_CDATA;\n this._sectionStart = this._index + 1;\n } else {\n this._state = IN_DECLARATION;\n this._index--;\n }\n};\n\nTokenizer.prototype._stateInCdata = function (c) {\n if (c === \"]\") this._state = AFTER_CDATA_1;\n};\n\nTokenizer.prototype._stateAfterCdata1 = function (c) {\n if (c === \"]\") this._state = AFTER_CDATA_2;else this._state = IN_CDATA;\n};\n\nTokenizer.prototype._stateAfterCdata2 = function (c) {\n if (c === \">\") {\n //remove 2 trailing chars\n this._cbs.oncdata(this._buffer.substring(this._sectionStart, this._index - 2));\n\n this._state = TEXT;\n this._sectionStart = this._index + 1;\n } else if (c !== \"]\") {\n this._state = IN_CDATA;\n } //else: stay in AFTER_CDATA_2 (`]]]>`)\n\n};\n\nTokenizer.prototype._stateBeforeSpecial = function (c) {\n if (c === \"c\" || c === \"C\") {\n this._state = BEFORE_SCRIPT_1;\n } else if (c === \"t\" || c === \"T\") {\n this._state = BEFORE_STYLE_1;\n } else {\n this._state = IN_TAG_NAME;\n this._index--; //consume the token again\n }\n};\n\nTokenizer.prototype._stateBeforeSpecialEnd = function (c) {\n if (this._special === SPECIAL_SCRIPT && (c === \"c\" || c === \"C\")) {\n this._state = AFTER_SCRIPT_1;\n } else if (this._special === SPECIAL_STYLE && (c === \"t\" || c === \"T\")) {\n this._state = AFTER_STYLE_1;\n } else this._state = TEXT;\n};\n\nTokenizer.prototype._stateBeforeScript1 = consumeSpecialNameChar(\"R\", BEFORE_SCRIPT_2);\nTokenizer.prototype._stateBeforeScript2 = consumeSpecialNameChar(\"I\", BEFORE_SCRIPT_3);\nTokenizer.prototype._stateBeforeScript3 = consumeSpecialNameChar(\"P\", BEFORE_SCRIPT_4);\nTokenizer.prototype._stateBeforeScript4 = consumeSpecialNameChar(\"T\", BEFORE_SCRIPT_5);\n\nTokenizer.prototype._stateBeforeScript5 = function (c) {\n if (c === \"/\" || c === \">\" || whitespace(c)) {\n this._special = SPECIAL_SCRIPT;\n }\n\n this._state = IN_TAG_NAME;\n this._index--; //consume the token again\n};\n\nTokenizer.prototype._stateAfterScript1 = ifElseState(\"R\", AFTER_SCRIPT_2, TEXT);\nTokenizer.prototype._stateAfterScript2 = ifElseState(\"I\", AFTER_SCRIPT_3, TEXT);\nTokenizer.prototype._stateAfterScript3 = ifElseState(\"P\", AFTER_SCRIPT_4, TEXT);\nTokenizer.prototype._stateAfterScript4 = ifElseState(\"T\", AFTER_SCRIPT_5, TEXT);\n\nTokenizer.prototype._stateAfterScript5 = function (c) {\n if (c === \">\" || whitespace(c)) {\n this._special = SPECIAL_NONE;\n this._state = IN_CLOSING_TAG_NAME;\n this._sectionStart = this._index - 6;\n this._index--; //reconsume the token\n } else this._state = TEXT;\n};\n\nTokenizer.prototype._stateBeforeStyle1 = consumeSpecialNameChar(\"Y\", BEFORE_STYLE_2);\nTokenizer.prototype._stateBeforeStyle2 = consumeSpecialNameChar(\"L\", BEFORE_STYLE_3);\nTokenizer.prototype._stateBeforeStyle3 = consumeSpecialNameChar(\"E\", BEFORE_STYLE_4);\n\nTokenizer.prototype._stateBeforeStyle4 = function (c) {\n if (c === \"/\" || c === \">\" || whitespace(c)) {\n this._special = SPECIAL_STYLE;\n }\n\n this._state = IN_TAG_NAME;\n this._index--; //consume the token again\n};\n\nTokenizer.prototype._stateAfterStyle1 = ifElseState(\"Y\", AFTER_STYLE_2, TEXT);\nTokenizer.prototype._stateAfterStyle2 = ifElseState(\"L\", AFTER_STYLE_3, TEXT);\nTokenizer.prototype._stateAfterStyle3 = ifElseState(\"E\", AFTER_STYLE_4, TEXT);\n\nTokenizer.prototype._stateAfterStyle4 = function (c) {\n if (c === \">\" || whitespace(c)) {\n this._special = SPECIAL_NONE;\n this._state = IN_CLOSING_TAG_NAME;\n this._sectionStart = this._index - 5;\n this._index--; //reconsume the token\n } else this._state = TEXT;\n};\n\nTokenizer.prototype._stateBeforeEntity = ifElseState(\"#\", BEFORE_NUMERIC_ENTITY, IN_NAMED_ENTITY);\nTokenizer.prototype._stateBeforeNumericEntity = ifElseState(\"X\", IN_HEX_ENTITY, IN_NUMERIC_ENTITY); //for entities terminated with a semicolon\n\nTokenizer.prototype._parseNamedEntityStrict = function () {\n //offset = 1\n if (this._sectionStart + 1 < this._index) {\n var entity = this._buffer.substring(this._sectionStart + 1, this._index),\n map = this._xmlMode ? xmlMap : entityMap;\n\n if (map.hasOwnProperty(entity)) {\n this._emitPartial(map[entity]);\n\n this._sectionStart = this._index + 1;\n }\n }\n}; //parses legacy entities (without trailing semicolon)\n\n\nTokenizer.prototype._parseLegacyEntity = function () {\n var start = this._sectionStart + 1,\n limit = this._index - start;\n if (limit > 6) limit = 6; //the max length of legacy entities is 6\n\n while (limit >= 2) {\n //the min length of legacy entities is 2\n var entity = this._buffer.substr(start, limit);\n\n if (legacyMap.hasOwnProperty(entity)) {\n this._emitPartial(legacyMap[entity]);\n\n this._sectionStart += limit + 1;\n return;\n } else {\n limit--;\n }\n }\n};\n\nTokenizer.prototype._stateInNamedEntity = function (c) {\n if (c === \";\") {\n this._parseNamedEntityStrict();\n\n if (this._sectionStart + 1 < this._index && !this._xmlMode) {\n this._parseLegacyEntity();\n }\n\n this._state = this._baseState;\n } else if ((c < \"a\" || c > \"z\") && (c < \"A\" || c > \"Z\") && (c < \"0\" || c > \"9\")) {\n if (this._xmlMode) ;else if (this._sectionStart + 1 === this._index) ;else if (this._baseState !== TEXT) {\n if (c !== \"=\") {\n this._parseNamedEntityStrict();\n }\n } else {\n this._parseLegacyEntity();\n }\n this._state = this._baseState;\n this._index--;\n }\n};\n\nTokenizer.prototype._decodeNumericEntity = function (offset, base) {\n var sectionStart = this._sectionStart + offset;\n\n if (sectionStart !== this._index) {\n //parse entity\n var entity = this._buffer.substring(sectionStart, this._index);\n\n var parsed = parseInt(entity, base);\n\n this._emitPartial(decodeCodePoint(parsed));\n\n this._sectionStart = this._index;\n } else {\n this._sectionStart--;\n }\n\n this._state = this._baseState;\n};\n\nTokenizer.prototype._stateInNumericEntity = function (c) {\n if (c === \";\") {\n this._decodeNumericEntity(2, 10);\n\n this._sectionStart++;\n } else if (c < \"0\" || c > \"9\") {\n if (!this._xmlMode) {\n this._decodeNumericEntity(2, 10);\n } else {\n this._state = this._baseState;\n }\n\n this._index--;\n }\n};\n\nTokenizer.prototype._stateInHexEntity = function (c) {\n if (c === \";\") {\n this._decodeNumericEntity(3, 16);\n\n this._sectionStart++;\n } else if ((c < \"a\" || c > \"f\") && (c < \"A\" || c > \"F\") && (c < \"0\" || c > \"9\")) {\n if (!this._xmlMode) {\n this._decodeNumericEntity(3, 16);\n } else {\n this._state = this._baseState;\n }\n\n this._index--;\n }\n};\n\nTokenizer.prototype._cleanup = function () {\n if (this._sectionStart < 0) {\n this._buffer = \"\";\n this._bufferOffset += this._index;\n this._index = 0;\n } else if (this._running) {\n if (this._state === TEXT) {\n if (this._sectionStart !== this._index) {\n this._cbs.ontext(this._buffer.substr(this._sectionStart));\n }\n\n this._buffer = \"\";\n this._bufferOffset += this._index;\n this._index = 0;\n } else if (this._sectionStart === this._index) {\n //the section just started\n this._buffer = \"\";\n this._bufferOffset += this._index;\n this._index = 0;\n } else {\n //remove everything unnecessary\n this._buffer = this._buffer.substr(this._sectionStart);\n this._index -= this._sectionStart;\n this._bufferOffset += this._sectionStart;\n }\n\n this._sectionStart = 0;\n }\n}; //TODO make events conditional\n\n\nTokenizer.prototype.write = function (chunk) {\n if (this._ended) this._cbs.onerror(Error(\".write() after done!\"));\n this._buffer += chunk;\n\n this._parse();\n};\n\nTokenizer.prototype._parse = function () {\n while (this._index < this._buffer.length && this._running) {\n var c = this._buffer.charAt(this._index);\n\n if (this._state === TEXT) {\n this._stateText(c);\n } else if (this._state === BEFORE_TAG_NAME) {\n this._stateBeforeTagName(c);\n } else if (this._state === IN_TAG_NAME) {\n this._stateInTagName(c);\n } else if (this._state === BEFORE_CLOSING_TAG_NAME) {\n this._stateBeforeCloseingTagName(c);\n } else if (this._state === IN_CLOSING_TAG_NAME) {\n this._stateInCloseingTagName(c);\n } else if (this._state === AFTER_CLOSING_TAG_NAME) {\n this._stateAfterCloseingTagName(c);\n } else if (this._state === IN_SELF_CLOSING_TAG) {\n this._stateInSelfClosingTag(c);\n } else if (this._state === BEFORE_ATTRIBUTE_NAME) {\n /*\n *\tattributes\n */\n this._stateBeforeAttributeName(c);\n } else if (this._state === IN_ATTRIBUTE_NAME) {\n this._stateInAttributeName(c);\n } else if (this._state === AFTER_ATTRIBUTE_NAME) {\n this._stateAfterAttributeName(c);\n } else if (this._state === BEFORE_ATTRIBUTE_VALUE) {\n this._stateBeforeAttributeValue(c);\n } else if (this._state === IN_ATTRIBUTE_VALUE_DQ) {\n this._stateInAttributeValueDoubleQuotes(c);\n } else if (this._state === IN_ATTRIBUTE_VALUE_SQ) {\n this._stateInAttributeValueSingleQuotes(c);\n } else if (this._state === IN_ATTRIBUTE_VALUE_NQ) {\n this._stateInAttributeValueNoQuotes(c);\n } else if (this._state === BEFORE_DECLARATION) {\n /*\n *\tdeclarations\n */\n this._stateBeforeDeclaration(c);\n } else if (this._state === IN_DECLARATION) {\n this._stateInDeclaration(c);\n } else if (this._state === IN_PROCESSING_INSTRUCTION) {\n /*\n *\tprocessing instructions\n */\n this._stateInProcessingInstruction(c);\n } else if (this._state === BEFORE_COMMENT) {\n /*\n *\tcomments\n */\n this._stateBeforeComment(c);\n } else if (this._state === IN_COMMENT) {\n this._stateInComment(c);\n } else if (this._state === AFTER_COMMENT_1) {\n this._stateAfterComment1(c);\n } else if (this._state === AFTER_COMMENT_2) {\n this._stateAfterComment2(c);\n } else if (this._state === BEFORE_CDATA_1) {\n /*\n *\tcdata\n */\n this._stateBeforeCdata1(c);\n } else if (this._state === BEFORE_CDATA_2) {\n this._stateBeforeCdata2(c);\n } else if (this._state === BEFORE_CDATA_3) {\n this._stateBeforeCdata3(c);\n } else if (this._state === BEFORE_CDATA_4) {\n this._stateBeforeCdata4(c);\n } else if (this._state === BEFORE_CDATA_5) {\n this._stateBeforeCdata5(c);\n } else if (this._state === BEFORE_CDATA_6) {\n this._stateBeforeCdata6(c);\n } else if (this._state === IN_CDATA) {\n this._stateInCdata(c);\n } else if (this._state === AFTER_CDATA_1) {\n this._stateAfterCdata1(c);\n } else if (this._state === AFTER_CDATA_2) {\n this._stateAfterCdata2(c);\n } else if (this._state === BEFORE_SPECIAL) {\n /*\n * special tags\n */\n this._stateBeforeSpecial(c);\n } else if (this._state === BEFORE_SPECIAL_END) {\n this._stateBeforeSpecialEnd(c);\n } else if (this._state === BEFORE_SCRIPT_1) {\n /*\n * script\n */\n this._stateBeforeScript1(c);\n } else if (this._state === BEFORE_SCRIPT_2) {\n this._stateBeforeScript2(c);\n } else if (this._state === BEFORE_SCRIPT_3) {\n this._stateBeforeScript3(c);\n } else if (this._state === BEFORE_SCRIPT_4) {\n this._stateBeforeScript4(c);\n } else if (this._state === BEFORE_SCRIPT_5) {\n this._stateBeforeScript5(c);\n } else if (this._state === AFTER_SCRIPT_1) {\n this._stateAfterScript1(c);\n } else if (this._state === AFTER_SCRIPT_2) {\n this._stateAfterScript2(c);\n } else if (this._state === AFTER_SCRIPT_3) {\n this._stateAfterScript3(c);\n } else if (this._state === AFTER_SCRIPT_4) {\n this._stateAfterScript4(c);\n } else if (this._state === AFTER_SCRIPT_5) {\n this._stateAfterScript5(c);\n } else if (this._state === BEFORE_STYLE_1) {\n /*\n * style\n */\n this._stateBeforeStyle1(c);\n } else if (this._state === BEFORE_STYLE_2) {\n this._stateBeforeStyle2(c);\n } else if (this._state === BEFORE_STYLE_3) {\n this._stateBeforeStyle3(c);\n } else if (this._state === BEFORE_STYLE_4) {\n this._stateBeforeStyle4(c);\n } else if (this._state === AFTER_STYLE_1) {\n this._stateAfterStyle1(c);\n } else if (this._state === AFTER_STYLE_2) {\n this._stateAfterStyle2(c);\n } else if (this._state === AFTER_STYLE_3) {\n this._stateAfterStyle3(c);\n } else if (this._state === AFTER_STYLE_4) {\n this._stateAfterStyle4(c);\n } else if (this._state === BEFORE_ENTITY) {\n /*\n * entities\n */\n this._stateBeforeEntity(c);\n } else if (this._state === BEFORE_NUMERIC_ENTITY) {\n this._stateBeforeNumericEntity(c);\n } else if (this._state === IN_NAMED_ENTITY) {\n this._stateInNamedEntity(c);\n } else if (this._state === IN_NUMERIC_ENTITY) {\n this._stateInNumericEntity(c);\n } else if (this._state === IN_HEX_ENTITY) {\n this._stateInHexEntity(c);\n } else {\n this._cbs.onerror(Error(\"unknown _state\"), this._state);\n }\n\n this._index++;\n }\n\n this._cleanup();\n};\n\nTokenizer.prototype.pause = function () {\n this._running = false;\n};\n\nTokenizer.prototype.resume = function () {\n this._running = true;\n\n if (this._index < this._buffer.length) {\n this._parse();\n }\n\n if (this._ended) {\n this._finish();\n }\n};\n\nTokenizer.prototype.end = function (chunk) {\n if (this._ended) this._cbs.onerror(Error(\".end() after done!\"));\n if (chunk) this.write(chunk);\n this._ended = true;\n if (this._running) this._finish();\n};\n\nTokenizer.prototype._finish = function () {\n //if there is remaining data, emit it in a reasonable way\n if (this._sectionStart < this._index) {\n this._handleTrailingData();\n }\n\n this._cbs.onend();\n};\n\nTokenizer.prototype._handleTrailingData = function () {\n var data = this._buffer.substr(this._sectionStart);\n\n if (this._state === IN_CDATA || this._state === AFTER_CDATA_1 || this._state === AFTER_CDATA_2) {\n this._cbs.oncdata(data);\n } else if (this._state === IN_COMMENT || this._state === AFTER_COMMENT_1 || this._state === AFTER_COMMENT_2) {\n this._cbs.oncomment(data);\n } else if (this._state === IN_NAMED_ENTITY && !this._xmlMode) {\n this._parseLegacyEntity();\n\n if (this._sectionStart < this._index) {\n this._state = this._baseState;\n\n this._handleTrailingData();\n }\n } else if (this._state === IN_NUMERIC_ENTITY && !this._xmlMode) {\n this._decodeNumericEntity(2, 10);\n\n if (this._sectionStart < this._index) {\n this._state = this._baseState;\n\n this._handleTrailingData();\n }\n } else if (this._state === IN_HEX_ENTITY && !this._xmlMode) {\n this._decodeNumericEntity(3, 16);\n\n if (this._sectionStart < this._index) {\n this._state = this._baseState;\n\n this._handleTrailingData();\n }\n } else if (this._state !== IN_TAG_NAME && this._state !== BEFORE_ATTRIBUTE_NAME && this._state !== BEFORE_ATTRIBUTE_VALUE && this._state !== AFTER_ATTRIBUTE_NAME && this._state !== IN_ATTRIBUTE_NAME && this._state !== IN_ATTRIBUTE_VALUE_SQ && this._state !== IN_ATTRIBUTE_VALUE_DQ && this._state !== IN_ATTRIBUTE_VALUE_NQ && this._state !== IN_CLOSING_TAG_NAME) {\n this._cbs.ontext(data);\n } //else, ignore remaining data\n //TODO add a way to remove current tag\n\n};\n\nTokenizer.prototype.reset = function () {\n Tokenizer.call(this, {\n xmlMode: this._xmlMode,\n decodeEntities: this._decodeEntities\n }, this._cbs);\n};\n\nTokenizer.prototype.getAbsoluteIndex = function () {\n return this._bufferOffset + this._index;\n};\n\nTokenizer.prototype._getSection = function () {\n return this._buffer.substring(this._sectionStart, this._index);\n};\n\nTokenizer.prototype._emitToken = function (name) {\n this._cbs[name](this._getSection());\n\n this._sectionStart = -1;\n};\n\nTokenizer.prototype._emitPartial = function (value) {\n if (this._baseState !== TEXT) {\n this._cbs.onattribdata(value); //TODO implement the new event\n\n } else {\n this._cbs.ontext(value);\n }\n};","import _classCallCheck from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _inherits from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/broford/website/ford-gatsby/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n// tslint:disable:max-classes-per-file\nimport { EventType, PlatformEvent } from \"./PlatformEvent\";\nexport var OCSPEvent = /*#__PURE__*/function (_PlatformEvent) {\n _inherits(OCSPEvent, _PlatformEvent);\n\n var _super = _createSuper(OCSPEvent);\n\n function OCSPEvent(eventName, eventType, signature) {\n var _this;\n\n _classCallCheck(this, OCSPEvent);\n\n _this = _super.call(this, eventName, eventType);\n _this.privSignature = signature;\n return _this;\n }\n\n return OCSPEvent;\n}(PlatformEvent);\nexport var OCSPMemoryCacheHitEvent = /*#__PURE__*/function (_OCSPEvent) {\n _inherits(OCSPMemoryCacheHitEvent, _OCSPEvent);\n\n var _super2 = _createSuper(OCSPMemoryCacheHitEvent);\n\n function OCSPMemoryCacheHitEvent(signature) {\n _classCallCheck(this, OCSPMemoryCacheHitEvent);\n\n return _super2.call(this, \"OCSPMemoryCacheHitEvent\", EventType.Debug, signature);\n }\n\n return OCSPMemoryCacheHitEvent;\n}(OCSPEvent);\nexport var OCSPCacheMissEvent = /*#__PURE__*/function (_OCSPEvent2) {\n _inherits(OCSPCacheMissEvent, _OCSPEvent2);\n\n var _super3 = _createSuper(OCSPCacheMissEvent);\n\n function OCSPCacheMissEvent(signature) {\n _classCallCheck(this, OCSPCacheMissEvent);\n\n return _super3.call(this, \"OCSPCacheMissEvent\", EventType.Debug, signature);\n }\n\n return OCSPCacheMissEvent;\n}(OCSPEvent);\nexport var OCSPDiskCacheHitEvent = /*#__PURE__*/function (_OCSPEvent3) {\n _inherits(OCSPDiskCacheHitEvent, _OCSPEvent3);\n\n var _super4 = _createSuper(OCSPDiskCacheHitEvent);\n\n function OCSPDiskCacheHitEvent(signature) {\n _classCallCheck(this, OCSPDiskCacheHitEvent);\n\n return _super4.call(this, \"OCSPDiskCacheHitEvent\", EventType.Debug, signature);\n }\n\n return OCSPDiskCacheHitEvent;\n}(OCSPEvent);\nexport var OCSPCacheUpdateNeededEvent = /*#__PURE__*/function (_OCSPEvent4) {\n _inherits(OCSPCacheUpdateNeededEvent, _OCSPEvent4);\n\n var _super5 = _createSuper(OCSPCacheUpdateNeededEvent);\n\n function OCSPCacheUpdateNeededEvent(signature) {\n _classCallCheck(this, OCSPCacheUpdateNeededEvent);\n\n return _super5.call(this, \"OCSPCacheUpdateNeededEvent\", EventType.Debug, signature);\n }\n\n return OCSPCacheUpdateNeededEvent;\n}(OCSPEvent);\nexport var OCSPMemoryCacheStoreEvent = /*#__PURE__*/function (_OCSPEvent5) {\n _inherits(OCSPMemoryCacheStoreEvent, _OCSPEvent5);\n\n var _super6 = _createSuper(OCSPMemoryCacheStoreEvent);\n\n function OCSPMemoryCacheStoreEvent(signature) {\n _classCallCheck(this, OCSPMemoryCacheStoreEvent);\n\n return _super6.call(this, \"OCSPMemoryCacheStoreEvent\", EventType.Debug, signature);\n }\n\n return OCSPMemoryCacheStoreEvent;\n}(OCSPEvent);\nexport var OCSPDiskCacheStoreEvent = /*#__PURE__*/function (_OCSPEvent6) {\n _inherits(OCSPDiskCacheStoreEvent, _OCSPEvent6);\n\n var _super7 = _createSuper(OCSPDiskCacheStoreEvent);\n\n function OCSPDiskCacheStoreEvent(signature) {\n _classCallCheck(this, OCSPDiskCacheStoreEvent);\n\n return _super7.call(this, \"OCSPDiskCacheStoreEvent\", EventType.Debug, signature);\n }\n\n return OCSPDiskCacheStoreEvent;\n}(OCSPEvent);\nexport var OCSPCacheUpdateCompleteEvent = /*#__PURE__*/function (_OCSPEvent7) {\n _inherits(OCSPCacheUpdateCompleteEvent, _OCSPEvent7);\n\n var _super8 = _createSuper(OCSPCacheUpdateCompleteEvent);\n\n function OCSPCacheUpdateCompleteEvent(signature) {\n _classCallCheck(this, OCSPCacheUpdateCompleteEvent);\n\n return _super8.call(this, \"OCSPCacheUpdateCompleteEvent\", EventType.Debug, signature);\n }\n\n return OCSPCacheUpdateCompleteEvent;\n}(OCSPEvent);\nexport var OCSPStapleReceivedEvent = /*#__PURE__*/function (_OCSPEvent8) {\n _inherits(OCSPStapleReceivedEvent, _OCSPEvent8);\n\n var _super9 = _createSuper(OCSPStapleReceivedEvent);\n\n function OCSPStapleReceivedEvent() {\n _classCallCheck(this, OCSPStapleReceivedEvent);\n\n return _super9.call(this, \"OCSPStapleReceivedEvent\", EventType.Debug, \"\");\n }\n\n return OCSPStapleReceivedEvent;\n}(OCSPEvent);\nexport var OCSPWSUpgradeStartedEvent = /*#__PURE__*/function (_OCSPEvent9) {\n _inherits(OCSPWSUpgradeStartedEvent, _OCSPEvent9);\n\n var _super10 = _createSuper(OCSPWSUpgradeStartedEvent);\n\n function OCSPWSUpgradeStartedEvent(serialNumber) {\n _classCallCheck(this, OCSPWSUpgradeStartedEvent);\n\n return _super10.call(this, \"OCSPWSUpgradeStartedEvent\", EventType.Debug, serialNumber);\n }\n\n return OCSPWSUpgradeStartedEvent;\n}(OCSPEvent);\nexport var OCSPCacheEntryExpiredEvent = /*#__PURE__*/function (_OCSPEvent10) {\n _inherits(OCSPCacheEntryExpiredEvent, _OCSPEvent10);\n\n var _super11 = _createSuper(OCSPCacheEntryExpiredEvent);\n\n function OCSPCacheEntryExpiredEvent(serialNumber, expireTime) {\n var _this2;\n\n _classCallCheck(this, OCSPCacheEntryExpiredEvent);\n\n _this2 = _super11.call(this, \"OCSPCacheEntryExpiredEvent\", EventType.Debug, serialNumber);\n _this2.privExpireTime = expireTime;\n return _this2;\n }\n\n return OCSPCacheEntryExpiredEvent;\n}(OCSPEvent);\nexport var OCSPCacheEntryNeedsRefreshEvent = /*#__PURE__*/function (_OCSPEvent11) {\n _inherits(OCSPCacheEntryNeedsRefreshEvent, _OCSPEvent11);\n\n var _super12 = _createSuper(OCSPCacheEntryNeedsRefreshEvent);\n\n function OCSPCacheEntryNeedsRefreshEvent(serialNumber, startTime, expireTime) {\n var _this3;\n\n _classCallCheck(this, OCSPCacheEntryNeedsRefreshEvent);\n\n _this3 = _super12.call(this, \"OCSPCacheEntryNeedsRefreshEvent\", EventType.Debug, serialNumber);\n _this3.privExpireTime = expireTime;\n _this3.privStartTime = startTime;\n return _this3;\n }\n\n return OCSPCacheEntryNeedsRefreshEvent;\n}(OCSPEvent);\nexport var OCSPCacheHitEvent = /*#__PURE__*/function (_OCSPEvent12) {\n _inherits(OCSPCacheHitEvent, _OCSPEvent12);\n\n var _super13 = _createSuper(OCSPCacheHitEvent);\n\n function OCSPCacheHitEvent(serialNumber, startTime, expireTime) {\n var _this4;\n\n _classCallCheck(this, OCSPCacheHitEvent);\n\n _this4 = _super13.call(this, \"OCSPCacheHitEvent\", EventType.Debug, serialNumber);\n _this4.privExpireTime = expireTime;\n _this4.privExpireTimeString = new Date(expireTime).toLocaleDateString();\n _this4.privStartTime = startTime;\n _this4.privStartTimeString = new Date(startTime).toLocaleTimeString();\n return _this4;\n }\n\n return OCSPCacheHitEvent;\n}(OCSPEvent);\nexport var OCSPVerificationFailedEvent = /*#__PURE__*/function (_OCSPEvent13) {\n _inherits(OCSPVerificationFailedEvent, _OCSPEvent13);\n\n var _super14 = _createSuper(OCSPVerificationFailedEvent);\n\n function OCSPVerificationFailedEvent(serialNumber, error) {\n var _this5;\n\n _classCallCheck(this, OCSPVerificationFailedEvent);\n\n _this5 = _super14.call(this, \"OCSPVerificationFailedEvent\", EventType.Debug, serialNumber);\n _this5.privError = error;\n return _this5;\n }\n\n return OCSPVerificationFailedEvent;\n}(OCSPEvent);\nexport var OCSPCacheFetchErrorEvent = /*#__PURE__*/function (_OCSPEvent14) {\n _inherits(OCSPCacheFetchErrorEvent, _OCSPEvent14);\n\n var _super15 = _createSuper(OCSPCacheFetchErrorEvent);\n\n function OCSPCacheFetchErrorEvent(serialNumber, error) {\n var _this6;\n\n _classCallCheck(this, OCSPCacheFetchErrorEvent);\n\n _this6 = _super15.call(this, \"OCSPCacheFetchErrorEvent\", EventType.Debug, serialNumber);\n _this6.privError = error;\n return _this6;\n }\n\n return OCSPCacheFetchErrorEvent;\n}(OCSPEvent);\nexport var OCSPResponseRetrievedEvent = /*#__PURE__*/function (_OCSPEvent15) {\n _inherits(OCSPResponseRetrievedEvent, _OCSPEvent15);\n\n var _super16 = _createSuper(OCSPResponseRetrievedEvent);\n\n function OCSPResponseRetrievedEvent(serialNumber) {\n _classCallCheck(this, OCSPResponseRetrievedEvent);\n\n return _super16.call(this, \"OCSPResponseRetrievedEvent\", EventType.Debug, serialNumber);\n }\n\n return OCSPResponseRetrievedEvent;\n}(OCSPEvent);\nexport var OCSPCacheUpdateErrorEvent = /*#__PURE__*/function (_OCSPEvent16) {\n _inherits(OCSPCacheUpdateErrorEvent, _OCSPEvent16);\n\n var _super17 = _createSuper(OCSPCacheUpdateErrorEvent);\n\n function OCSPCacheUpdateErrorEvent(serialNumber, error) {\n var _this7;\n\n _classCallCheck(this, OCSPCacheUpdateErrorEvent);\n\n _this7 = _super17.call(this, \"OCSPCacheUpdateErrorEvent\", EventType.Debug, serialNumber);\n _this7.privError = error;\n return _this7;\n }\n\n return OCSPCacheUpdateErrorEvent;\n}(OCSPEvent);","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n var state;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) {\n createNonEnumerableProperty(value, 'name', key);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","//Types of elements found in the DOM\nmodule.exports = {\n Text: \"text\",\n //Text\n Directive: \"directive\",\n //\n Comment: \"comment\",\n //\n Script: \"script\",\n //\n \n ) : (\n openVideo(current)}\n >\n ))\n )\n })}\n \n \n )\n }\n\n return (\n \n {showSlider ? : }\n \n )\n}\n\nexport default Description\n","import React, { useEffect, useState } from 'react'\nimport { Template } from '../../../components/template'\n\nimport Header from '../../../components/Header'\nimport Footer from '../../../components/Footer'\n\nimport Description from './Description'\nimport { ToTopButton } from '../../../components/Buttons/ToTop'\n\nconst ItemCharacteristic = ({ pageContext, location }) => {\n const {\n metatag_title,\n metatag_description,\n metatag_language,\n Privacy_policy_url,\n has_cookie_consent,\n go_to_top_button_text,\n privacy_policy_text,\n privacy_policy_subtext,\n privacy_policy_accept_button_text\n } = pageContext.website.website_info\n const feature_name = pageContext.feature.Feature_Name\n const basePath = pageContext.basePath\n\n const [showSlider, setShowSlider] = React.useState(false)\n\n return (\n \n {!showSlider && (\n \n )}\n {!showSlider &&
}\n \n\n {!showSlider && (\n