diff --git a/speech-recognition/.eslintignore b/speech-recognition/.eslintignore new file mode 100644 index 00000000..9d0b71a3 --- /dev/null +++ b/speech-recognition/.eslintignore @@ -0,0 +1,2 @@ +build +dist diff --git a/speech-recognition/.npmrc b/speech-recognition/.npmrc new file mode 100644 index 00000000..cffe8cde --- /dev/null +++ b/speech-recognition/.npmrc @@ -0,0 +1 @@ +save-exact=true diff --git a/speech-recognition/.prettierignore b/speech-recognition/.prettierignore new file mode 100644 index 00000000..9d0b71a3 --- /dev/null +++ b/speech-recognition/.prettierignore @@ -0,0 +1,2 @@ +build +dist diff --git a/speech-recognition/CHANGELOG.md b/speech-recognition/CHANGELOG.md new file mode 100644 index 00000000..8ea8b84b --- /dev/null +++ b/speech-recognition/CHANGELOG.md @@ -0,0 +1,42 @@ +# Changelog + +All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. + +### [6.0.1](https://github.com/capacitor-community/speech-recognition/compare/v6.0.0...v6.0.1) (2024-06-28) + + +### Bug Fixes + +* **ios:** proper isListening return ([#103](https://github.com/capacitor-community/speech-recognition/issues/103)) ([daf40a7](https://github.com/capacitor-community/speech-recognition/commit/daf40a73fda9b1caa5e84df41bf15ff687617742)) + +## [6.0.0](https://github.com/capacitor-community/speech-recognition/compare/v5.1.0...v6.0.0) (2024-06-07) + + +### ⚠ BREAKING CHANGES + +* Remove deprecated permission methods (#94) +* Update to Capacitor 6 (#86) +* use correct name on rollup (#93) + +### Features + +* Remove deprecated permission methods ([#94](https://github.com/capacitor-community/speech-recognition/issues/94)) ([77d89b8](https://github.com/capacitor-community/speech-recognition/commit/77d89b86117a9e1adc88abfafc8c9327ea5fef8d)) +* Update to Capacitor 6 ([#86](https://github.com/capacitor-community/speech-recognition/issues/86)) ([8e2f62b](https://github.com/capacitor-community/speech-recognition/commit/8e2f62b5ed37fdb8acf33c31b4e7157d03a47739)) + + +### Bug Fixes + +* correct since for isListening and listeningState ([#92](https://github.com/capacitor-community/speech-recognition/issues/92)) ([8b9445c](https://github.com/capacitor-community/speech-recognition/commit/8b9445caf09093422d761c6b3f91ed330d273047)) +* **ios:** add missing listeningState stopped cases ([#95](https://github.com/capacitor-community/speech-recognition/issues/95)) ([19f98d1](https://github.com/capacitor-community/speech-recognition/commit/19f98d13b6a9454373a7d1af57e83f49fa823174)) +* use correct name on rollup ([#93](https://github.com/capacitor-community/speech-recognition/issues/93)) ([d8fefbc](https://github.com/capacitor-community/speech-recognition/commit/d8fefbc13594c7949e3bc687355c7308d9f90d8d)) + +## [5.1.0](https://github.com/capacitor-community/speech-recognition/compare/v5.0.0...v5.1.0) (2024-03-27) + + +### Features + +* add `isListening` method and `listeningState` listener ([#83](https://github.com/capacitor-community/speech-recognition/issues/83)) ([5a9b532](https://github.com/capacitor-community/speech-recognition/commit/5a9b532f316df7585b94e65bff77b642df5eb32e)) + +# Changelog + +All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. diff --git a/speech-recognition/CONTRIBUTING.md b/speech-recognition/CONTRIBUTING.md new file mode 100644 index 00000000..999f36e2 --- /dev/null +++ b/speech-recognition/CONTRIBUTING.md @@ -0,0 +1,66 @@ +# Contributing + +This guide provides instructions for contributing to this Capacitor plugin. + +## Developing + +### Local Setup + +1. Fork and clone the repo. +2. Install the dependencies. + + ```shell + npm install + ``` + +3. Install SwiftLint if you're on macOS. + + ```shell + brew install swiftlint + ``` + +### Scripts + +#### `npm run build` + +Build the plugin web assets and generate plugin API documentation using [`@capacitor/docgen`](https://github.com/ionic-team/capacitor-docgen). + +It will compile the TypeScript code from `src/` into ESM JavaScript in `dist/esm/`. These files are used in apps with bundlers when your plugin is imported. + +Then, Rollup will bundle the code into a single file at `dist/plugin.js`. This file is used in apps without bundlers by including it as a script in `index.html`. + +#### `npm run verify` + +Build and validate the web and native projects. + +This is useful to run in CI to verify that the plugin builds for all platforms. + +#### `npm run lint` / `npm run fmt` + +Check formatting and code quality, autoformat/autofix if possible. + +This template is integrated with ESLint, Prettier, and SwiftLint. Using these tools is completely optional, but the [Capacitor Community](https://github.com/capacitor-community/) strives to have consistent code style and structure for easier cooperation. + +## Versioning + +Don't change the plugin version manually, the version change is automated with `standard-version` package. + +## Publishing + +First run: + +```shell +npm run release +``` + +That will update the plugin version and update the `CHANGELOG.md` file with latest changes. Then it will ask you to run: + +```shell +git push --follow-tags origin master && npm publish +``` + +That creates a tag on gitbhub and publishes the package on npm. + +Go to the [github tags section](https://github.com/capacitor-community/speech-recognition/tags), pick the latest tag and create a release for it. + +> **Note**: The [`files`](https://docs.npmjs.com/cli/v7/configuring-npm/package-json#files) array in `package.json` specifies which files get published. If you rename files/directories or add files elsewhere, you may need to update it. diff --git a/speech-recognition/CapacitorCommunitySpeechRecognition.podspec b/speech-recognition/CapacitorCommunitySpeechRecognition.podspec new file mode 100644 index 00000000..273dde35 --- /dev/null +++ b/speech-recognition/CapacitorCommunitySpeechRecognition.podspec @@ -0,0 +1,17 @@ +require 'json' + +package = JSON.parse(File.read(File.join(__dir__, 'package.json'))) + +Pod::Spec.new do |s| + s.name = 'CapacitorCommunitySpeechRecognition' + s.version = package['version'] + s.summary = package['description'] + s.license = package['license'] + s.homepage = package['repository']['url'] + s.author = package['author'] + s.source = { :git => package['repository']['url'], :tag => s.version.to_s } + s.source_files = 'ios/Plugin/**/*.{swift,h,m,c,cc,mm,cpp}' + s.ios.deployment_target = '13.0' + s.dependency 'Capacitor' + s.swift_version = '5.1' +end diff --git a/speech-recognition/LICENSE b/speech-recognition/LICENSE new file mode 100644 index 00000000..00dbd906 --- /dev/null +++ b/speech-recognition/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) COPYRIGHT_YEAR COPYRIGHT_HOLDER + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/speech-recognition/README.md b/speech-recognition/README.md new file mode 100644 index 00000000..1cbb84d1 --- /dev/null +++ b/speech-recognition/README.md @@ -0,0 +1,370 @@ +# Capacitor Speech Recognition Plugin + +Capacitor community plugin for speech recognition. + +## Maintainers + +| Maintainer | GitHub | Social | +| --------------- | ------------------------------------------- | ------------------------------------------------ | +| Priyank Patel | [priyankpat](https://github.com/priyankpat) | [@priyankpat\_](https://twitter.com/priyankpat_) | +| Matteo Padovano | [mrbatista](https://github.com/mrbatista) | [@mrba7ista](https://twitter.com/mrba7ista) | + +Maintenance Status: Actively Maintained + +## Installation + +To use npm + +```bash +npm install @capacitor-community/speech-recognition +``` + +To use yarn + +```bash +yarn add @capacitor-community/speech-recognition +``` + +Sync native files + +```bash +npx cap sync +``` + +## iOS + +iOS requires the following usage descriptions be added and filled out for your app in `Info.plist`: + +- `NSSpeechRecognitionUsageDescription` (`Privacy - Speech Recognition Usage Description`) +- `NSMicrophoneUsageDescription` (`Privacy - Microphone Usage Description`) + +## Android + +No further action required. + +## Supported methods + + + +* [`available()`](#available) +* [`record(...)`](#record) +* [`startMicrophoneStream()`](#startmicrophonestream) +* [`stopMicrophoneStream()`](#stopmicrophonestream) +* [`stopRecording()`](#stoprecording) +* [`start(...)`](#start) +* [`stop()`](#stop) +* [`getSupportedLanguages()`](#getsupportedlanguages) +* [`isListening()`](#islistening) +* [`checkPermissions()`](#checkpermissions) +* [`requestPermissions()`](#requestpermissions) +* [`addListener('partialResults', ...)`](#addlistenerpartialresults-) +* [`addListener('listeningState', ...)`](#addlistenerlisteningstate-) +* [`removeAllListeners()`](#removealllisteners) +* [Interfaces](#interfaces) +* [Type Aliases](#type-aliases) + + + +## Example + +```typescript +import { SpeechRecognition } from "@capacitor-community/speech-recognition"; + +SpeechRecognition.available(); + +SpeechRecognition.start({ + language: "en-US", + maxResults: 2, + prompt: "Say something", + partialResults: true, + popup: true, +}); +// listen to partial results +SpeechRecognition.addListener("partialResults", (data: any) => { + console.log("partialResults was fired", data.matches); +}); + +// stop listening partial results +SpeechRecognition.removeAllListeners(); + +SpeechRecognition.stop(); + +SpeechRecognition.getSupportedLanguages(); + +SpeechRecognition.checkPermissions(); + +SpeechRecognition.requestPermissions(); + +SpeechRecognition.hasPermission(); + +SpeechRecognition.requestPermission(); +``` + + + + +### available() + +```typescript +available() => Promise<{ available: boolean; }> +``` + +This method will check if speech recognition feature is available on the device. + +**Returns:** Promise<{ available: boolean; }> + +-------------------- + + +### record(...) + +```typescript +record(options?: RecordOptions | undefined) => Promise +``` + +Start recording audio to a file + +| Param | Type | +| ------------- | ------------------------------------------------------- | +| **`options`** | RecordOptions | + +**Returns:** Promise<RecordingResult> + +-------------------- + + +### startMicrophoneStream() + +```typescript +startMicrophoneStream() => Promise +``` + +Start streaming microphone data for visualization + +**Returns:** Promise<RecordingResult> + +-------------------- + + +### stopMicrophoneStream() + +```typescript +stopMicrophoneStream() => Promise +``` + +Stop streaming microphone data + +**Returns:** Promise<RecordingResult> + +-------------------- + + +### stopRecording() + +```typescript +stopRecording() => Promise +``` + +-------------------- + + +### start(...) + +```typescript +start(options?: UtteranceOptions | undefined) => Promise<{ matches?: string[]; }> +``` + +This method will start to listen for utterance. + +if `partialResults` is `true`, the function respond directly without result and +event `partialResults` will be emit for each partial result, until stopped. + +| Param | Type | +| ------------- | ------------------------------------------------------------- | +| **`options`** | UtteranceOptions | + +**Returns:** Promise<{ matches?: string[]; }> + +-------------------- + + +### stop() + +```typescript +stop() => Promise +``` + +This method will stop listening for utterance + +-------------------- + + +### getSupportedLanguages() + +```typescript +getSupportedLanguages() => Promise<{ languages: any[]; }> +``` + +This method will return list of languages supported by the speech recognizer. + +It's not available on Android 13 and newer. + +**Returns:** Promise<{ languages: any[]; }> + +-------------------- + + +### isListening() + +```typescript +isListening() => Promise<{ listening: boolean; }> +``` + +This method will check if speech recognition is listening. + +**Returns:** Promise<{ listening: boolean; }> + +**Since:** 5.1.0 + +-------------------- + + +### checkPermissions() + +```typescript +checkPermissions() => Promise +``` + +Check the speech recognition permission. + +**Returns:** Promise<PermissionStatus> + +**Since:** 5.0.0 + +-------------------- + + +### requestPermissions() + +```typescript +requestPermissions() => Promise +``` + +Request the speech recognition permission. + +**Returns:** Promise<PermissionStatus> + +**Since:** 5.0.0 + +-------------------- + + +### addListener('partialResults', ...) + +```typescript +addListener(eventName: 'partialResults', listenerFunc: (data: { matches: string[]; }) => void) => Promise +``` + +Called when partialResults set to true and result received. + +On Android it doesn't work if popup is true. + +Provides partial result. + +| Param | Type | +| ------------------ | ------------------------------------------------------ | +| **`eventName`** | 'partialResults' | +| **`listenerFunc`** | (data: { matches: string[]; }) => void | + +**Returns:** Promise<PluginListenerHandle> + +**Since:** 2.0.2 + +-------------------- + + +### addListener('listeningState', ...) + +```typescript +addListener(eventName: 'listeningState', listenerFunc: (data: { status: 'started' | 'stopped'; }) => void) => Promise +``` + +Called when listening state changed. + +| Param | Type | +| ------------------ | ------------------------------------------------------------------- | +| **`eventName`** | 'listeningState' | +| **`listenerFunc`** | (data: { status: 'started' \| 'stopped'; }) => void | + +**Returns:** Promise<PluginListenerHandle> + +**Since:** 5.1.0 + +-------------------- + + +### removeAllListeners() + +```typescript +removeAllListeners() => Promise +``` + +Remove all the listeners that are attached to this plugin. + +**Since:** 4.0.0 + +-------------------- + + +### Interfaces + + +#### RecordingResult + +| Prop | Type | Description | +| ------------ | ----------------------------------- | ------------------------------- | +| **`path`** | string | Path to the recorded audio file | +| **`status`** | 'started' \| 'stopped' | | + + +#### RecordOptions + +| Prop | Type | +| ---------------- | ------------------- | +| **`fileName`** | string | +| **`outputPath`** | string | + + +#### UtteranceOptions + +| Prop | Type | Description | +| -------------------- | -------------------- | ---------------------------------------------------------------- | +| **`language`** | string | key returned from `getSupportedLanguages()` | +| **`maxResults`** | number | maximum number of results to return (5 is max) | +| **`prompt`** | string | prompt message to display on popup (Android only) | +| **`popup`** | boolean | display popup window when listening for utterance (Android only) | +| **`partialResults`** | boolean | return partial results if found | + + +#### PermissionStatus + +| Prop | Type | Description | Since | +| ----------------------- | ----------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | +| **`speechRecognition`** | PermissionState | Permission state for speechRecognition alias. On Android it requests/checks RECORD_AUDIO permission On iOS it requests/checks the speech recognition and microphone permissions. | 5.0.0 | + + +#### PluginListenerHandle + +| Prop | Type | +| ------------ | ----------------------------------------- | +| **`remove`** | () => Promise<void> | + + +### Type Aliases + + +#### PermissionState + +'prompt' | 'prompt-with-rationale' | 'granted' | 'denied' + + diff --git a/speech-recognition/android/.npmignore b/speech-recognition/android/.npmignore new file mode 100644 index 00000000..796b96d1 --- /dev/null +++ b/speech-recognition/android/.npmignore @@ -0,0 +1 @@ +/build diff --git a/speech-recognition/android/build.gradle b/speech-recognition/android/build.gradle new file mode 100644 index 00000000..3abaea0e --- /dev/null +++ b/speech-recognition/android/build.gradle @@ -0,0 +1,57 @@ +ext { + junitVersion = project.hasProperty('junitVersion') ? rootProject.ext.junitVersion : '4.13.2' + androidxAppCompatVersion = project.hasProperty('androidxAppCompatVersion') ? rootProject.ext.androidxAppCompatVersion : '1.6.1' + androidxJunitVersion = project.hasProperty('androidxJunitVersion') ? rootProject.ext.androidxJunitVersion : '1.1.5' + androidxEspressoCoreVersion = project.hasProperty('androidxEspressoCoreVersion') ? rootProject.ext.androidxEspressoCoreVersion : '3.5.1' +} + +buildscript { + repositories { + google() + mavenCentral() + } + dependencies { + classpath 'com.android.tools.build:gradle:8.2.1' + } +} + +apply plugin: 'com.android.library' + +android { + namespace "com.getcapacitor.community.speechrecognition.speechrecognition" + compileSdk project.hasProperty('compileSdkVersion') ? rootProject.ext.compileSdkVersion : 34 + defaultConfig { + minSdkVersion project.hasProperty('minSdkVersion') ? rootProject.ext.minSdkVersion : 22 + targetSdkVersion project.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion : 34 + versionCode 1 + versionName '1.0' + testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' + } + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } + lintOptions { + abortOnError false + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 + } +} + +repositories { + google() + mavenCentral() +} + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar']) + implementation project(':capacitor-android') + implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion" + testImplementation "junit:junit:$junitVersion" + androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion" + androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion" +} diff --git a/speech-recognition/android/gradle.properties b/speech-recognition/android/gradle.properties new file mode 100644 index 00000000..ec594217 --- /dev/null +++ b/speech-recognition/android/gradle.properties @@ -0,0 +1,20 @@ +# Project-wide Gradle settings. + +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. + +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html + +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx1536m + +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true + +# Supports AndroidX +android.useAndroidX=true diff --git a/speech-recognition/android/gradle/wrapper/gradle-wrapper.jar b/speech-recognition/android/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 00000000..033e24c4 Binary files /dev/null and b/speech-recognition/android/gradle/wrapper/gradle-wrapper.jar differ diff --git a/speech-recognition/android/gradle/wrapper/gradle-wrapper.properties b/speech-recognition/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 00000000..c747538f --- /dev/null +++ b/speech-recognition/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.2.1-all.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/speech-recognition/android/gradlew b/speech-recognition/android/gradlew new file mode 100755 index 00000000..fcb6fca1 --- /dev/null +++ b/speech-recognition/android/gradlew @@ -0,0 +1,248 @@ +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/speech-recognition/android/gradlew.bat b/speech-recognition/android/gradlew.bat new file mode 100644 index 00000000..6689b85b --- /dev/null +++ b/speech-recognition/android/gradlew.bat @@ -0,0 +1,92 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/speech-recognition/android/proguard-rules.pro b/speech-recognition/android/proguard-rules.pro new file mode 100644 index 00000000..f1b42451 --- /dev/null +++ b/speech-recognition/android/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile diff --git a/speech-recognition/android/settings.gradle b/speech-recognition/android/settings.gradle new file mode 100644 index 00000000..1e5b8431 --- /dev/null +++ b/speech-recognition/android/settings.gradle @@ -0,0 +1,2 @@ +include ':capacitor-android' +project(':capacitor-android').projectDir = new File('../node_modules/@capacitor/android/capacitor') \ No newline at end of file diff --git a/speech-recognition/android/src/androidTest/java/com/getcapacitor/android/ExampleInstrumentedTest.java b/speech-recognition/android/src/androidTest/java/com/getcapacitor/android/ExampleInstrumentedTest.java new file mode 100644 index 00000000..58020e16 --- /dev/null +++ b/speech-recognition/android/src/androidTest/java/com/getcapacitor/android/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.getcapacitor.android; + +import static org.junit.Assert.*; + +import android.content.Context; +import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.platform.app.InstrumentationRegistry; +import org.junit.Test; +import org.junit.runner.RunWith; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + + @Test + public void useAppContext() throws Exception { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + + assertEquals("com.getcapacitor.android", appContext.getPackageName()); + } +} diff --git a/speech-recognition/android/src/main/AndroidManifest.xml b/speech-recognition/android/src/main/AndroidManifest.xml new file mode 100644 index 00000000..5201e68c --- /dev/null +++ b/speech-recognition/android/src/main/AndroidManifest.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/Constants.java b/speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/Constants.java new file mode 100644 index 00000000..1c3645dd --- /dev/null +++ b/speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/Constants.java @@ -0,0 +1,19 @@ +package com.getcapacitor.community.speechrecognition; + +import android.Manifest; + +public interface Constants { + int REQUEST_CODE_PERMISSION = 2001; + int REQUEST_CODE_SPEECH = 2002; + String IS_RECOGNITION_AVAILABLE = "isRecognitionAvailable"; + String START_LISTENING = "startListening"; + String STOP_LISTENING = "stopListening"; + String GET_SUPPORTED_LANGUAGES = "getSupportedLanguages"; + String HAS_PERMISSION = "hasPermission"; + String REQUEST_PERMISSION = "requestPermission"; + int MAX_RESULTS = 5; + String NOT_AVAILABLE = "Speech recognition service is not available."; + String MISSING_PERMISSION = "Missing permission"; + String RECORD_AUDIO_PERMISSION = Manifest.permission.RECORD_AUDIO; + String ERROR = "Could not get list of languages"; +} diff --git a/speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/Receiver.java b/speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/Receiver.java new file mode 100644 index 00000000..63011772 --- /dev/null +++ b/speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/Receiver.java @@ -0,0 +1,52 @@ +package com.getcapacitor.community.speechrecognition; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.os.Bundle; +import android.speech.RecognizerIntent; +import com.getcapacitor.JSArray; +import com.getcapacitor.JSObject; +import com.getcapacitor.PluginCall; +import java.util.List; + +public class Receiver extends BroadcastReceiver implements Constants { + + public static final String TAG = "Receiver"; + + private List supportedLanguagesList; + private String languagePref; + private PluginCall call; + + public Receiver(PluginCall call) { + super(); + this.call = call; + } + + @Override + public void onReceive(Context context, Intent intent) { + Bundle extras = getResultExtras(true); + + if (extras.containsKey(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE)) { + languagePref = extras.getString(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE); + } + + if (extras.containsKey(RecognizerIntent.EXTRA_SUPPORTED_LANGUAGES)) { + supportedLanguagesList = extras.getStringArrayList(RecognizerIntent.EXTRA_SUPPORTED_LANGUAGES); + + JSArray languagesList = new JSArray(supportedLanguagesList); + call.resolve(new JSObject().put("languages", languagesList)); + return; + } + + call.reject(ERROR); + } + + public List getSupportedLanguages() { + return supportedLanguagesList; + } + + public String getLanguagePreference() { + return languagePref; + } +} diff --git a/speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/SpeechRecognition.java b/speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/SpeechRecognition.java new file mode 100644 index 00000000..0f3fcabd --- /dev/null +++ b/speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/SpeechRecognition.java @@ -0,0 +1,375 @@ +package com.getcapacitor.community.speechrecognition; + +import android.Manifest; +import android.app.Activity; +import android.content.Intent; +import android.os.Build; +import android.os.Bundle; +import android.speech.RecognitionListener; +import android.speech.RecognizerIntent; +import android.speech.SpeechRecognizer; +import androidx.activity.result.ActivityResult; +import com.getcapacitor.JSArray; +import com.getcapacitor.JSObject; +import com.getcapacitor.Logger; +import com.getcapacitor.PermissionState; +import com.getcapacitor.Plugin; +import com.getcapacitor.PluginCall; +import com.getcapacitor.PluginMethod; +import com.getcapacitor.annotation.ActivityCallback; +import com.getcapacitor.annotation.CapacitorPlugin; +import com.getcapacitor.annotation.Permission; +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; +import java.util.concurrent.locks.ReentrantLock; +import org.json.JSONArray; + +@CapacitorPlugin( + permissions = { @Permission(strings = { Manifest.permission.RECORD_AUDIO }, alias = SpeechRecognition.SPEECH_RECOGNITION) } +) +public class SpeechRecognition extends Plugin implements Constants { + + public static final String TAG = "SpeechRecognition"; + private static final String LISTENING_EVENT = "listeningState"; + static final String SPEECH_RECOGNITION = "speechRecognition"; + + private Receiver languageReceiver; + private SpeechRecognizer speechRecognizer; + + private final ReentrantLock lock = new ReentrantLock(); + private boolean listening = false; + + private JSONArray previousPartialResults = new JSONArray(); + + @Override + public void load() { + super.load(); + bridge + .getWebView() + .post( + () -> { + speechRecognizer = SpeechRecognizer.createSpeechRecognizer(bridge.getActivity()); + SpeechRecognitionListener listener = new SpeechRecognitionListener(); + speechRecognizer.setRecognitionListener(listener); + Logger.info(getLogTag(), "Instantiated SpeechRecognizer in load()"); + } + ); + } + + @PluginMethod + public void available(PluginCall call) { + Logger.info(getLogTag(), "Called for available(): " + isSpeechRecognitionAvailable()); + boolean val = isSpeechRecognitionAvailable(); + JSObject result = new JSObject(); + result.put("available", val); + call.resolve(result); + } + + @PluginMethod + public void start(PluginCall call) { + if (!isSpeechRecognitionAvailable()) { + call.unavailable(NOT_AVAILABLE); + return; + } + + if (getPermissionState(SPEECH_RECOGNITION) != PermissionState.GRANTED) { + call.reject(MISSING_PERMISSION); + return; + } + + String language = call.getString("language", Locale.getDefault().toString()); + int maxResults = call.getInt("maxResults", MAX_RESULTS); + String prompt = call.getString("prompt", null); + boolean partialResults = call.getBoolean("partialResults", false); + boolean popup = call.getBoolean("popup", false); + beginListening(language, maxResults, prompt, partialResults, popup, call); + } + + @PluginMethod + public void stop(final PluginCall call) { + try { + stopListening(); + } catch (Exception ex) { + call.reject(ex.getLocalizedMessage()); + } + } + + @PluginMethod + public void getSupportedLanguages(PluginCall call) { + if (languageReceiver == null) { + languageReceiver = new Receiver(call); + } + + List supportedLanguages = languageReceiver.getSupportedLanguages(); + if (supportedLanguages != null) { + JSONArray languages = new JSONArray(supportedLanguages); + call.resolve(new JSObject().put("languages", languages)); + return; + } + + Intent detailsIntent = new Intent(RecognizerIntent.ACTION_GET_LANGUAGE_DETAILS); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { + detailsIntent.setPackage("com.google.android.googlequicksearchbox"); + } + bridge.getActivity().sendOrderedBroadcast(detailsIntent, null, languageReceiver, null, Activity.RESULT_OK, null, null); + } + + @PluginMethod + public void isListening(PluginCall call) { + call.resolve(new JSObject().put("listening", SpeechRecognition.this.listening)); + } + + @ActivityCallback + private void listeningResult(PluginCall call, ActivityResult result) { + if (call == null) { + return; + } + + int resultCode = result.getResultCode(); + if (resultCode == Activity.RESULT_OK) { + try { + ArrayList matchesList = result.getData().getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); + JSObject resultObj = new JSObject(); + resultObj.put("matches", new JSArray(matchesList)); + call.resolve(resultObj); + } catch (Exception ex) { + call.reject(ex.getMessage()); + } + } else { + call.reject(Integer.toString(resultCode)); + } + + SpeechRecognition.this.lock.lock(); + SpeechRecognition.this.listening(false); + SpeechRecognition.this.lock.unlock(); + } + + private boolean isSpeechRecognitionAvailable() { + return SpeechRecognizer.isRecognitionAvailable(bridge.getContext()); + } + + private void listening(boolean value) { + this.listening = value; + } + + private void beginListening( + String language, + int maxResults, + String prompt, + final boolean partialResults, + boolean showPopup, + PluginCall call + ) { + Logger.info(getLogTag(), "Beginning to listen for audible speech"); + + final Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH); + intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM); + intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, language); + intent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS, maxResults); + intent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, bridge.getActivity().getPackageName()); + intent.putExtra(RecognizerIntent.EXTRA_PARTIAL_RESULTS, partialResults); + intent.putExtra("android.speech.extra.DICTATION_MODE", partialResults); + + if (prompt != null) { + intent.putExtra(RecognizerIntent.EXTRA_PROMPT, prompt); + } + + if (showPopup) { + startActivityForResult(call, intent, "listeningResult"); + } else { + bridge + .getWebView() + .post( + () -> { + try { + SpeechRecognition.this.lock.lock(); + + if (speechRecognizer != null) { + speechRecognizer.cancel(); + speechRecognizer.destroy(); + speechRecognizer = null; + } + + speechRecognizer = SpeechRecognizer.createSpeechRecognizer(bridge.getActivity()); + SpeechRecognitionListener listener = new SpeechRecognitionListener(); + listener.setCall(call); + listener.setPartialResults(partialResults); + speechRecognizer.setRecognitionListener(listener); + speechRecognizer.startListening(intent); + SpeechRecognition.this.listening(true); + if (partialResults) { + call.resolve(); + } + } catch (Exception ex) { + call.reject(ex.getMessage()); + } finally { + SpeechRecognition.this.lock.unlock(); + } + } + ); + } + } + + private void stopListening() { + bridge + .getWebView() + .post( + () -> { + try { + SpeechRecognition.this.lock.lock(); + if (SpeechRecognition.this.listening) { + speechRecognizer.stopListening(); + SpeechRecognition.this.listening(false); + } + } catch (Exception ex) { + throw ex; + } finally { + SpeechRecognition.this.lock.unlock(); + } + } + ); + } + + private class SpeechRecognitionListener implements RecognitionListener { + + private PluginCall call; + private boolean partialResults; + + public void setCall(PluginCall call) { + this.call = call; + } + + public void setPartialResults(boolean partialResults) { + this.partialResults = partialResults; + } + + @Override + public void onReadyForSpeech(Bundle params) {} + + @Override + public void onBeginningOfSpeech() { + try { + SpeechRecognition.this.lock.lock(); + // Notify listeners that recording has started + JSObject ret = new JSObject(); + ret.put("status", "started"); + SpeechRecognition.this.notifyListeners(LISTENING_EVENT, ret); + } finally { + SpeechRecognition.this.lock.unlock(); + } + } + + @Override + public void onRmsChanged(float rmsdB) {} + + @Override + public void onBufferReceived(byte[] buffer) {} + + @Override + public void onEndOfSpeech() { + bridge + .getWebView() + .post( + () -> { + try { + SpeechRecognition.this.lock.lock(); + SpeechRecognition.this.listening(false); + + JSObject ret = new JSObject(); + ret.put("status", "stopped"); + SpeechRecognition.this.notifyListeners(LISTENING_EVENT, ret); + } finally { + SpeechRecognition.this.lock.unlock(); + } + } + ); + } + + @Override + public void onError(int error) { + SpeechRecognition.this.stopListening(); + String errorMssg = getErrorText(error); + + if (this.call != null) { + call.reject(errorMssg); + } + } + + @Override + public void onResults(Bundle results) { + ArrayList matches = results.getStringArrayList(SpeechRecognizer.RESULTS_RECOGNITION); + + try { + JSArray jsArray = new JSArray(matches); + + if (this.call != null) { + if (!this.partialResults) { + this.call.resolve(new JSObject().put("status", "success").put("matches", jsArray)); + } else { + JSObject ret = new JSObject(); + ret.put("matches", jsArray); + notifyListeners("partialResults", ret); + } + } + } catch (Exception ex) { + this.call.resolve(new JSObject().put("status", "error").put("message", ex.getMessage())); + } + } + + @Override + public void onPartialResults(Bundle partialResults) { + ArrayList matches = partialResults.getStringArrayList(SpeechRecognizer.RESULTS_RECOGNITION); + JSArray matchesJSON = new JSArray(matches); + + try { + if (matches != null && matches.size() > 0 && !previousPartialResults.equals(matchesJSON)) { + previousPartialResults = matchesJSON; + JSObject ret = new JSObject(); + ret.put("matches", previousPartialResults); + notifyListeners("partialResults", ret); + } + } catch (Exception ex) {} + } + + @Override + public void onEvent(int eventType, Bundle params) {} + } + + private String getErrorText(int errorCode) { + String message; + switch (errorCode) { + case SpeechRecognizer.ERROR_AUDIO: + message = "Audio recording error"; + break; + case SpeechRecognizer.ERROR_CLIENT: + message = "Client side error"; + break; + case SpeechRecognizer.ERROR_INSUFFICIENT_PERMISSIONS: + message = "Insufficient permissions"; + break; + case SpeechRecognizer.ERROR_NETWORK: + message = "Network error"; + break; + case SpeechRecognizer.ERROR_NETWORK_TIMEOUT: + message = "Network timeout"; + break; + case SpeechRecognizer.ERROR_NO_MATCH: + message = "No match"; + break; + case SpeechRecognizer.ERROR_RECOGNIZER_BUSY: + message = "RecognitionService busy"; + break; + case SpeechRecognizer.ERROR_SERVER: + message = "error from server"; + break; + case SpeechRecognizer.ERROR_SPEECH_TIMEOUT: + message = "No speech input"; + break; + default: + message = "Didn't understand, please try again."; + break; + } + return message; + } +} diff --git a/speech-recognition/android/src/main/res/layout/bridge_layout_main.xml b/speech-recognition/android/src/main/res/layout/bridge_layout_main.xml new file mode 100644 index 00000000..56fec154 --- /dev/null +++ b/speech-recognition/android/src/main/res/layout/bridge_layout_main.xml @@ -0,0 +1,15 @@ + + + + + + diff --git a/speech-recognition/android/src/main/res/values/colors.xml b/speech-recognition/android/src/main/res/values/colors.xml new file mode 100644 index 00000000..045e125f --- /dev/null +++ b/speech-recognition/android/src/main/res/values/colors.xml @@ -0,0 +1,3 @@ + + + diff --git a/speech-recognition/android/src/main/res/values/strings.xml b/speech-recognition/android/src/main/res/values/strings.xml new file mode 100644 index 00000000..6789e139 --- /dev/null +++ b/speech-recognition/android/src/main/res/values/strings.xml @@ -0,0 +1,3 @@ + + Just a simple string + diff --git a/speech-recognition/android/src/main/res/values/styles.xml b/speech-recognition/android/src/main/res/values/styles.xml new file mode 100644 index 00000000..f11f7450 --- /dev/null +++ b/speech-recognition/android/src/main/res/values/styles.xml @@ -0,0 +1,3 @@ + + + diff --git a/speech-recognition/android/src/test/java/com/getcapacitor/ExampleUnitTest.java b/speech-recognition/android/src/test/java/com/getcapacitor/ExampleUnitTest.java new file mode 100644 index 00000000..a0fed0cf --- /dev/null +++ b/speech-recognition/android/src/test/java/com/getcapacitor/ExampleUnitTest.java @@ -0,0 +1,18 @@ +package com.getcapacitor; + +import static org.junit.Assert.*; + +import org.junit.Test; + +/** + * Example local unit test, which will execute on the development machine (host). + * + * @see Testing documentation + */ +public class ExampleUnitTest { + + @Test + public void addition_isCorrect() throws Exception { + assertEquals(4, 2 + 2); + } +} diff --git a/speech-recognition/dist/docs.json b/speech-recognition/dist/docs.json new file mode 100644 index 00000000..072832e0 --- /dev/null +++ b/speech-recognition/dist/docs.json @@ -0,0 +1,439 @@ +{ + "api": { + "name": "SpeechRecognitionPlugin", + "slug": "speechrecognitionplugin", + "docs": "", + "tags": [], + "methods": [ + { + "name": "available", + "signature": "() => Promise<{ available: boolean; }>", + "parameters": [], + "returns": "Promise<{ available: boolean; }>", + "tags": [ + { + "name": "param", + "text": "none" + }, + { + "name": "returns", + "text": "available - boolean true/false for availability" + } + ], + "docs": "This method will check if speech recognition feature is available on the device.", + "complexTypes": [], + "slug": "available" + }, + { + "name": "record", + "signature": "(options?: RecordOptions | undefined) => Promise", + "parameters": [ + { + "name": "options", + "docs": "", + "type": "RecordOptions | undefined" + } + ], + "returns": "Promise", + "tags": [ + { + "name": "returns", + "text": "Promise with the path to the recorded file" + } + ], + "docs": "Start recording audio to a file", + "complexTypes": [ + "RecordingResult", + "RecordOptions" + ], + "slug": "record" + }, + { + "name": "startMicrophoneStream", + "signature": "() => Promise", + "parameters": [], + "returns": "Promise", + "tags": [], + "docs": "Start streaming microphone data for visualization", + "complexTypes": [ + "RecordingResult" + ], + "slug": "startmicrophonestream" + }, + { + "name": "stopMicrophoneStream", + "signature": "() => Promise", + "parameters": [], + "returns": "Promise", + "tags": [], + "docs": "Stop streaming microphone data", + "complexTypes": [ + "RecordingResult" + ], + "slug": "stopmicrophonestream" + }, + { + "name": "stopRecording", + "signature": "() => Promise", + "parameters": [], + "returns": "Promise", + "tags": [], + "docs": "", + "complexTypes": [], + "slug": "stoprecording" + }, + { + "name": "start", + "signature": "(options?: UtteranceOptions | undefined) => Promise<{ matches?: string[]; }>", + "parameters": [ + { + "name": "options", + "docs": "", + "type": "UtteranceOptions | undefined" + } + ], + "returns": "Promise<{ matches?: string[] | undefined; }>", + "tags": [ + { + "name": "param", + "text": "options" + }, + { + "name": "returns", + "text": "void or array of string results" + } + ], + "docs": "This method will start to listen for utterance.\n\nif `partialResults` is `true`, the function respond directly without result and\nevent `partialResults` will be emit for each partial result, until stopped.", + "complexTypes": [ + "UtteranceOptions" + ], + "slug": "start" + }, + { + "name": "stop", + "signature": "() => Promise", + "parameters": [], + "returns": "Promise", + "tags": [ + { + "name": "param", + "text": "none" + }, + { + "name": "returns", + "text": "void" + } + ], + "docs": "This method will stop listening for utterance", + "complexTypes": [], + "slug": "stop" + }, + { + "name": "getSupportedLanguages", + "signature": "() => Promise<{ languages: any[]; }>", + "parameters": [], + "returns": "Promise<{ languages: any[]; }>", + "tags": [ + { + "name": "param", + "text": "none" + }, + { + "name": "returns", + "text": "languages - array string of languages" + } + ], + "docs": "This method will return list of languages supported by the speech recognizer.\n\nIt's not available on Android 13 and newer.", + "complexTypes": [], + "slug": "getsupportedlanguages" + }, + { + "name": "isListening", + "signature": "() => Promise<{ listening: boolean; }>", + "parameters": [], + "returns": "Promise<{ listening: boolean; }>", + "tags": [ + { + "name": "param", + "text": "none" + }, + { + "name": "returns", + "text": "boolean true/false if speech recognition is currently listening" + }, + { + "name": "since", + "text": "5.1.0" + } + ], + "docs": "This method will check if speech recognition is listening.", + "complexTypes": [], + "slug": "islistening" + }, + { + "name": "checkPermissions", + "signature": "() => Promise", + "parameters": [], + "returns": "Promise", + "tags": [ + { + "name": "since", + "text": "5.0.0" + } + ], + "docs": "Check the speech recognition permission.", + "complexTypes": [ + "PermissionStatus" + ], + "slug": "checkpermissions" + }, + { + "name": "requestPermissions", + "signature": "() => Promise", + "parameters": [], + "returns": "Promise", + "tags": [ + { + "name": "since", + "text": "5.0.0" + } + ], + "docs": "Request the speech recognition permission.", + "complexTypes": [ + "PermissionStatus" + ], + "slug": "requestpermissions" + }, + { + "name": "addListener", + "signature": "(eventName: 'partialResults', listenerFunc: (data: { matches: string[]; }) => void) => Promise", + "parameters": [ + { + "name": "eventName", + "docs": "", + "type": "'partialResults'" + }, + { + "name": "listenerFunc", + "docs": "", + "type": "(data: { matches: string[]; }) => void" + } + ], + "returns": "Promise", + "tags": [ + { + "name": "since", + "text": "2.0.2" + } + ], + "docs": "Called when partialResults set to true and result received.\n\nOn Android it doesn't work if popup is true.\n\nProvides partial result.", + "complexTypes": [ + "PluginListenerHandle" + ], + "slug": "addlistenerpartialresults-" + }, + { + "name": "addListener", + "signature": "(eventName: 'listeningState', listenerFunc: (data: { status: 'started' | 'stopped'; }) => void) => Promise", + "parameters": [ + { + "name": "eventName", + "docs": "", + "type": "'listeningState'" + }, + { + "name": "listenerFunc", + "docs": "", + "type": "(data: { status: 'started' | 'stopped'; }) => void" + } + ], + "returns": "Promise", + "tags": [ + { + "name": "since", + "text": "5.1.0" + } + ], + "docs": "Called when listening state changed.", + "complexTypes": [ + "PluginListenerHandle" + ], + "slug": "addlistenerlisteningstate-" + }, + { + "name": "removeAllListeners", + "signature": "() => Promise", + "parameters": [], + "returns": "Promise", + "tags": [ + { + "name": "since", + "text": "4.0.0" + } + ], + "docs": "Remove all the listeners that are attached to this plugin.", + "complexTypes": [], + "slug": "removealllisteners" + } + ], + "properties": [] + }, + "interfaces": [ + { + "name": "RecordingResult", + "slug": "recordingresult", + "docs": "", + "tags": [], + "methods": [], + "properties": [ + { + "name": "path", + "tags": [], + "docs": "Path to the recorded audio file", + "complexTypes": [], + "type": "string" + }, + { + "name": "status", + "tags": [], + "docs": "", + "complexTypes": [], + "type": "'started' | 'stopped' | undefined" + } + ] + }, + { + "name": "RecordOptions", + "slug": "recordoptions", + "docs": "", + "tags": [], + "methods": [], + "properties": [ + { + "name": "fileName", + "tags": [], + "docs": "", + "complexTypes": [], + "type": "string | undefined" + }, + { + "name": "outputPath", + "tags": [], + "docs": "", + "complexTypes": [], + "type": "string | undefined" + } + ] + }, + { + "name": "UtteranceOptions", + "slug": "utteranceoptions", + "docs": "", + "tags": [], + "methods": [], + "properties": [ + { + "name": "language", + "tags": [], + "docs": "key returned from `getSupportedLanguages()`", + "complexTypes": [], + "type": "string | undefined" + }, + { + "name": "maxResults", + "tags": [], + "docs": "maximum number of results to return (5 is max)", + "complexTypes": [], + "type": "number | undefined" + }, + { + "name": "prompt", + "tags": [], + "docs": "prompt message to display on popup (Android only)", + "complexTypes": [], + "type": "string | undefined" + }, + { + "name": "popup", + "tags": [], + "docs": "display popup window when listening for utterance (Android only)", + "complexTypes": [], + "type": "boolean | undefined" + }, + { + "name": "partialResults", + "tags": [], + "docs": "return partial results if found", + "complexTypes": [], + "type": "boolean | undefined" + } + ] + }, + { + "name": "PermissionStatus", + "slug": "permissionstatus", + "docs": "", + "tags": [], + "methods": [], + "properties": [ + { + "name": "speechRecognition", + "tags": [ + { + "text": "5.0.0", + "name": "since" + } + ], + "docs": "Permission state for speechRecognition alias.\n\nOn Android it requests/checks RECORD_AUDIO permission\n\nOn iOS it requests/checks the speech recognition and microphone permissions.", + "complexTypes": [ + "PermissionState" + ], + "type": "PermissionState" + } + ] + }, + { + "name": "PluginListenerHandle", + "slug": "pluginlistenerhandle", + "docs": "", + "tags": [], + "methods": [], + "properties": [ + { + "name": "remove", + "tags": [], + "docs": "", + "complexTypes": [], + "type": "() => Promise" + } + ] + } + ], + "enums": [], + "typeAliases": [ + { + "name": "PermissionState", + "slug": "permissionstate", + "docs": "", + "types": [ + { + "text": "'prompt'", + "complexTypes": [] + }, + { + "text": "'prompt-with-rationale'", + "complexTypes": [] + }, + { + "text": "'granted'", + "complexTypes": [] + }, + { + "text": "'denied'", + "complexTypes": [] + } + ] + } + ], + "pluginConfigs": [] +} \ No newline at end of file diff --git a/speech-recognition/dist/esm/definitions.d.ts b/speech-recognition/dist/esm/definitions.d.ts new file mode 100644 index 00000000..3ab80277 --- /dev/null +++ b/speech-recognition/dist/esm/definitions.d.ts @@ -0,0 +1,153 @@ +import type { PermissionState, PluginListenerHandle } from '@capacitor/core'; +export interface PermissionStatus { + /** + * Permission state for speechRecognition alias. + * + * On Android it requests/checks RECORD_AUDIO permission + * + * On iOS it requests/checks the speech recognition and microphone permissions. + * + * @since 5.0.0 + */ + speechRecognition: PermissionState; +} +export interface RecordOptions { + fileName?: string; + outputPath?: string; +} +export interface RecordingResult { + /** + * Path to the recorded audio file + */ + path: string; + status?: 'started' | 'stopped'; +} +export interface AudioData { + buffer: number[]; +} +export interface SpeechRecognitionPlugin { + /** + * This method will check if speech recognition feature is available on the device. + * @param none + * @returns available - boolean true/false for availability + */ + available(): Promise<{ + available: boolean; + }>; + /** + * Start recording audio to a file + * @returns Promise with the path to the recorded file + */ + record(options?: RecordOptions): Promise; + /** + * Start streaming microphone data for visualization + */ + startMicrophoneStream(): Promise; + /** + * Stop streaming microphone data + */ + stopMicrophoneStream(): Promise; /** + * Stop the current recording + * @returns Promise that resolves when recording is stopped + */ + stopRecording(): Promise; + /** + * This method will start to listen for utterance. + * + * if `partialResults` is `true`, the function respond directly without result and + * event `partialResults` will be emit for each partial result, until stopped. + * + * @param options + * @returns void or array of string results + */ + start(options?: UtteranceOptions): Promise<{ + matches?: string[]; + }>; + /** + * This method will stop listening for utterance + * @param none + * @returns void + */ + stop(): Promise; + /** + * This method will return list of languages supported by the speech recognizer. + * + * It's not available on Android 13 and newer. + * + * @param none + * @returns languages - array string of languages + */ + getSupportedLanguages(): Promise<{ + languages: any[]; + }>; + /** + * This method will check if speech recognition is listening. + * @param none + * @returns boolean true/false if speech recognition is currently listening + * + * @since 5.1.0 + */ + isListening(): Promise<{ + listening: boolean; + }>; + /** + * Check the speech recognition permission. + * + * @since 5.0.0 + */ + checkPermissions(): Promise; + /** + * Request the speech recognition permission. + * + * @since 5.0.0 + */ + requestPermissions(): Promise; + /** + * Called when partialResults set to true and result received. + * + * On Android it doesn't work if popup is true. + * + * Provides partial result. + * + * @since 2.0.2 + */ + addListener(eventName: 'partialResults', listenerFunc: (data: { + matches: string[]; + }) => void): Promise; + /** + * Called when listening state changed. + * + * @since 5.1.0 + */ + addListener(eventName: 'listeningState', listenerFunc: (data: { + status: 'started' | 'stopped'; + }) => void): Promise; + /** + * Remove all the listeners that are attached to this plugin. + * + * @since 4.0.0 + */ + removeAllListeners(): Promise; +} +export interface UtteranceOptions { + /** + * key returned from `getSupportedLanguages()` + */ + language?: string; + /** + * maximum number of results to return (5 is max) + */ + maxResults?: number; + /** + * prompt message to display on popup (Android only) + */ + prompt?: string; + /** + * display popup window when listening for utterance (Android only) + */ + popup?: boolean; + /** + * return partial results if found + */ + partialResults?: boolean; +} diff --git a/speech-recognition/dist/esm/definitions.js b/speech-recognition/dist/esm/definitions.js new file mode 100644 index 00000000..497acb52 --- /dev/null +++ b/speech-recognition/dist/esm/definitions.js @@ -0,0 +1,2 @@ +export {}; +//# sourceMappingURL=definitions.js.map \ No newline at end of file diff --git a/speech-recognition/dist/esm/definitions.js.map b/speech-recognition/dist/esm/definitions.js.map new file mode 100644 index 00000000..6cd49d91 --- /dev/null +++ b/speech-recognition/dist/esm/definitions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"","sourcesContent":["import type { PermissionState, PluginListenerHandle } from '@capacitor/core';\n\nexport interface PermissionStatus {\n /**\n * Permission state for speechRecognition alias.\n *\n * On Android it requests/checks RECORD_AUDIO permission\n *\n * On iOS it requests/checks the speech recognition and microphone permissions.\n *\n * @since 5.0.0\n */\n speechRecognition: PermissionState;\n}\n\nexport interface RecordOptions {\n fileName?: string;\n outputPath?: string;\n}\n\nexport interface RecordingResult {\n /**\n * Path to the recorded audio file\n */\n path: string;\n status?: 'started' | 'stopped';\n}\n\nexport interface AudioData {\n buffer: number[];\n}\n\n\nexport interface SpeechRecognitionPlugin {\n /**\n * This method will check if speech recognition feature is available on the device.\n * @param none\n * @returns available - boolean true/false for availability\n */\n available(): Promise<{ available: boolean }>;\n /**\n * Start recording audio to a file\n * @returns Promise with the path to the recorded file\n */\n record(options?: RecordOptions): Promise;\n\n/**\n * Start streaming microphone data for visualization\n */\n startMicrophoneStream(): Promise;\n\n /**\n * Stop streaming microphone data\n */\n stopMicrophoneStream(): Promise; /**\n * Stop the current recording\n * @returns Promise that resolves when recording is stopped\n */\n stopRecording(): Promise;\n /**\n * This method will start to listen for utterance.\n *\n * if `partialResults` is `true`, the function respond directly without result and\n * event `partialResults` will be emit for each partial result, until stopped.\n *\n * @param options\n * @returns void or array of string results\n */\n start(options?: UtteranceOptions): Promise<{ matches?: string[] }>;\n /**\n * This method will stop listening for utterance\n * @param none\n * @returns void\n */\n stop(): Promise;\n /**\n * This method will return list of languages supported by the speech recognizer.\n *\n * It's not available on Android 13 and newer.\n *\n * @param none\n * @returns languages - array string of languages\n */\n getSupportedLanguages(): Promise<{ languages: any[] }>;\n /**\n * This method will check if speech recognition is listening.\n * @param none\n * @returns boolean true/false if speech recognition is currently listening\n *\n * @since 5.1.0\n */\n isListening(): Promise<{ listening: boolean }>;\n /**\n * Check the speech recognition permission.\n *\n * @since 5.0.0\n */\n checkPermissions(): Promise;\n /**\n * Request the speech recognition permission.\n *\n * @since 5.0.0\n */\n requestPermissions(): Promise;\n /**\n * Called when partialResults set to true and result received.\n *\n * On Android it doesn't work if popup is true.\n *\n * Provides partial result.\n *\n * @since 2.0.2\n */\n addListener(\n eventName: 'partialResults',\n listenerFunc: (data: { matches: string[] }) => void,\n ): Promise;\n\n /**\n * Called when listening state changed.\n *\n * @since 5.1.0\n */\n addListener(\n eventName: 'listeningState',\n listenerFunc: (data: { status: 'started' | 'stopped' }) => void,\n ): Promise;\n /**\n * Remove all the listeners that are attached to this plugin.\n *\n * @since 4.0.0\n */\n removeAllListeners(): Promise;\n}\n\nexport interface UtteranceOptions {\n /**\n * key returned from `getSupportedLanguages()`\n */\n language?: string;\n /**\n * maximum number of results to return (5 is max)\n */\n maxResults?: number;\n /**\n * prompt message to display on popup (Android only)\n */\n prompt?: string;\n /**\n * display popup window when listening for utterance (Android only)\n */\n popup?: boolean;\n /**\n * return partial results if found\n */\n partialResults?: boolean;\n}\n"]} \ No newline at end of file diff --git a/speech-recognition/dist/esm/index.d.ts b/speech-recognition/dist/esm/index.d.ts new file mode 100644 index 00000000..6482fc3e --- /dev/null +++ b/speech-recognition/dist/esm/index.d.ts @@ -0,0 +1,4 @@ +import type { SpeechRecognitionPlugin } from './definitions'; +declare const SpeechRecognition: SpeechRecognitionPlugin; +export * from './definitions'; +export { SpeechRecognition }; diff --git a/speech-recognition/dist/esm/index.js b/speech-recognition/dist/esm/index.js new file mode 100644 index 00000000..a8237554 --- /dev/null +++ b/speech-recognition/dist/esm/index.js @@ -0,0 +1,7 @@ +import { registerPlugin } from '@capacitor/core'; +const SpeechRecognition = registerPlugin('SpeechRecognition', { + web: () => import('./web').then(m => new m.SpeechRecognitionWeb()), +}); +export * from './definitions'; +export { SpeechRecognition }; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/speech-recognition/dist/esm/index.js.map b/speech-recognition/dist/esm/index.js.map new file mode 100644 index 00000000..ca7faeb0 --- /dev/null +++ b/speech-recognition/dist/esm/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIjD,MAAM,iBAAiB,GAAG,cAAc,CACtC,mBAAmB,EACnB;IACE,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,oBAAoB,EAAE,CAAC;CACnE,CACF,CAAC;AAEF,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,CAAC","sourcesContent":["import { registerPlugin } from '@capacitor/core';\n\nimport type { SpeechRecognitionPlugin } from './definitions';\n\nconst SpeechRecognition = registerPlugin(\n 'SpeechRecognition',\n {\n web: () => import('./web').then(m => new m.SpeechRecognitionWeb()),\n },\n);\n\nexport * from './definitions';\nexport { SpeechRecognition };\n"]} \ No newline at end of file diff --git a/speech-recognition/dist/esm/web.d.ts b/speech-recognition/dist/esm/web.d.ts new file mode 100644 index 00000000..285ee73e --- /dev/null +++ b/speech-recognition/dist/esm/web.d.ts @@ -0,0 +1,29 @@ +import { WebPlugin } from '@capacitor/core'; +import type { PermissionStatus, SpeechRecognitionPlugin, UtteranceOptions, RecordingResult, RecordOptions } from './definitions'; +export declare class SpeechRecognitionWeb extends WebPlugin implements SpeechRecognitionPlugin { + available(): Promise<{ + available: boolean; + }>; + startMicrophoneStream(): Promise; + stopMicrophoneStream(): Promise; + record(_options?: RecordOptions): Promise; + stopRecording(): Promise; + start(_options?: UtteranceOptions): Promise<{ + matches?: string[]; + }>; + stop(): Promise; + getSupportedLanguages(): Promise<{ + languages: any[]; + }>; + hasPermission(): Promise<{ + permission: boolean; + }>; + isListening(): Promise<{ + listening: boolean; + }>; + requestPermission(): Promise; + checkPermissions(): Promise; + requestPermissions(): Promise; +} +declare const SpeechRecognition: SpeechRecognitionWeb; +export { SpeechRecognition }; diff --git a/speech-recognition/dist/esm/web.js b/speech-recognition/dist/esm/web.js new file mode 100644 index 00000000..e629e916 --- /dev/null +++ b/speech-recognition/dist/esm/web.js @@ -0,0 +1,45 @@ +import { WebPlugin } from '@capacitor/core'; +export class SpeechRecognitionWeb extends WebPlugin { + available() { + throw this.unimplemented('Method not implemented on web.'); + } + async startMicrophoneStream() { + throw this.unimplemented('Not implemented on web.'); + } + async stopMicrophoneStream() { + throw this.unimplemented('Not implemented on web.'); + } + async record(_options) { + throw this.unimplemented('Not implemented on web.'); + } + async stopRecording() { + throw this.unimplemented('Not implemented on web.'); + } + start(_options) { + throw this.unimplemented('Method not implemented on web.'); + } + stop() { + throw this.unimplemented('Method not implemented on web.'); + } + getSupportedLanguages() { + throw this.unimplemented('Method not implemented on web.'); + } + hasPermission() { + throw this.unimplemented('Method not implemented on web.'); + } + isListening() { + throw this.unimplemented('Method not implemented on web.'); + } + requestPermission() { + throw this.unimplemented('Method not implemented on web.'); + } + checkPermissions() { + throw this.unimplemented('Method not implemented on web.'); + } + requestPermissions() { + throw this.unimplemented('Method not implemented on web.'); + } +} +const SpeechRecognition = new SpeechRecognitionWeb(); +export { SpeechRecognition }; +//# sourceMappingURL=web.js.map \ No newline at end of file diff --git a/speech-recognition/dist/esm/web.js.map b/speech-recognition/dist/esm/web.js.map new file mode 100644 index 00000000..7a18762d --- /dev/null +++ b/speech-recognition/dist/esm/web.js.map @@ -0,0 +1 @@ +{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAU5C,MAAM,OAAO,oBACX,SAAQ,SAAS;IAGjB,SAAS;QACP,MAAM,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC7D,CAAC;IACD,KAAK,CAAC,qBAAqB;QACzB,MAAM,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;IACtD,CAAC;IACD,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;IACtD,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,QAAwB;QACnC,MAAM,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;IACtD,CAAC;IACD,KAAK,CAAC,QAA2B;QAC/B,MAAM,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI;QACF,MAAM,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC7D,CAAC;IACD,qBAAqB;QACnB,MAAM,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC7D,CAAC;IACD,aAAa;QACX,MAAM,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC7D,CAAC;IACD,WAAW;QACT,MAAM,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC7D,CAAC;IACD,iBAAiB;QACf,MAAM,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC7D,CAAC;IACD,gBAAgB;QACd,MAAM,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC7D,CAAC;IACD,kBAAkB;QAChB,MAAM,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC7D,CAAC;CACF;AAED,MAAM,iBAAiB,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAE,CAAC","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type {\n PermissionStatus,\n SpeechRecognitionPlugin,\n UtteranceOptions,\n RecordingResult,\n RecordOptions\n} from './definitions';\n\nexport class SpeechRecognitionWeb\n extends WebPlugin\n implements SpeechRecognitionPlugin\n{\n available(): Promise<{ available: boolean }> {\n throw this.unimplemented('Method not implemented on web.');\n }\n async startMicrophoneStream(): Promise {\n throw this.unimplemented('Not implemented on web.');\n }\n async stopMicrophoneStream(): Promise {\n throw this.unimplemented('Not implemented on web.');\n }\n async record(_options?: RecordOptions): Promise {\n throw this.unimplemented('Not implemented on web.');\n }\n\n async stopRecording(): Promise {\n throw this.unimplemented('Not implemented on web.');\n }\n start(_options?: UtteranceOptions): Promise<{ matches?: string[] }> {\n throw this.unimplemented('Method not implemented on web.');\n }\n stop(): Promise {\n throw this.unimplemented('Method not implemented on web.');\n }\n getSupportedLanguages(): Promise<{ languages: any[] }> {\n throw this.unimplemented('Method not implemented on web.');\n }\n hasPermission(): Promise<{ permission: boolean }> {\n throw this.unimplemented('Method not implemented on web.');\n }\n isListening(): Promise<{ listening: boolean }> {\n throw this.unimplemented('Method not implemented on web.');\n }\n requestPermission(): Promise {\n throw this.unimplemented('Method not implemented on web.');\n }\n checkPermissions(): Promise {\n throw this.unimplemented('Method not implemented on web.');\n }\n requestPermissions(): Promise {\n throw this.unimplemented('Method not implemented on web.');\n }\n}\n\nconst SpeechRecognition = new SpeechRecognitionWeb();\n\nexport { SpeechRecognition };\n"]} \ No newline at end of file diff --git a/speech-recognition/ios/Plugin.xcodeproj/project.pbxproj b/speech-recognition/ios/Plugin.xcodeproj/project.pbxproj new file mode 100644 index 00000000..cf1aad8a --- /dev/null +++ b/speech-recognition/ios/Plugin.xcodeproj/project.pbxproj @@ -0,0 +1,556 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 48; + objects = { + +/* Begin PBXBuildFile section */ + 03FC29A292ACC40490383A1F /* Pods_Plugin.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3B2A61DA5A1F2DD4F959604D /* Pods_Plugin.framework */; }; + 20C0B05DCFC8E3958A738AF2 /* Pods_PluginTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F6753A823D3815DB436415E3 /* Pods_PluginTests.framework */; }; + 50ADFF92201F53D600D50D53 /* Plugin.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50ADFF88201F53D600D50D53 /* Plugin.framework */; }; + 50ADFF97201F53D600D50D53 /* PluginTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50ADFF96201F53D600D50D53 /* PluginTests.swift */; }; + 50ADFF99201F53D600D50D53 /* Plugin.h in Headers */ = {isa = PBXBuildFile; fileRef = 50ADFF8B201F53D600D50D53 /* Plugin.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 50ADFFA42020D75100D50D53 /* Capacitor.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50ADFFA52020D75100D50D53 /* Capacitor.framework */; }; + 50ADFFA82020EE4F00D50D53 /* Plugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 50ADFFA72020EE4F00D50D53 /* Plugin.m */; }; + 50E1A94820377CB70090CE1A /* Plugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50E1A94720377CB70090CE1A /* Plugin.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 50ADFF93201F53D600D50D53 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 50ADFF7F201F53D600D50D53 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 50ADFF87201F53D600D50D53; + remoteInfo = Plugin; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 3B2A61DA5A1F2DD4F959604D /* Pods_Plugin.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Plugin.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 50ADFF88201F53D600D50D53 /* Plugin.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Plugin.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 50ADFF8B201F53D600D50D53 /* Plugin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Plugin.h; sourceTree = ""; }; + 50ADFF8C201F53D600D50D53 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 50ADFF91201F53D600D50D53 /* PluginTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PluginTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 50ADFF96201F53D600D50D53 /* PluginTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PluginTests.swift; sourceTree = ""; }; + 50ADFF98201F53D600D50D53 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 50ADFFA52020D75100D50D53 /* Capacitor.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Capacitor.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 50ADFFA72020EE4F00D50D53 /* Plugin.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Plugin.m; sourceTree = ""; }; + 50E1A94720377CB70090CE1A /* Plugin.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Plugin.swift; sourceTree = ""; }; + 5E23F77F099397094342571A /* Pods-Plugin.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Plugin.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Plugin/Pods-Plugin.debug.xcconfig"; sourceTree = ""; }; + 91781294A431A2A7CC6EB714 /* Pods-Plugin.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Plugin.release.xcconfig"; path = "Pods/Target Support Files/Pods-Plugin/Pods-Plugin.release.xcconfig"; sourceTree = ""; }; + 96ED1B6440D6672E406C8D19 /* Pods-PluginTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PluginTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.debug.xcconfig"; sourceTree = ""; }; + F65BB2953ECE002E1EF3E424 /* Pods-PluginTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PluginTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.release.xcconfig"; sourceTree = ""; }; + F6753A823D3815DB436415E3 /* Pods_PluginTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_PluginTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 50ADFF84201F53D600D50D53 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 50ADFFA42020D75100D50D53 /* Capacitor.framework in Frameworks */, + 03FC29A292ACC40490383A1F /* Pods_Plugin.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 50ADFF8E201F53D600D50D53 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 50ADFF92201F53D600D50D53 /* Plugin.framework in Frameworks */, + 20C0B05DCFC8E3958A738AF2 /* Pods_PluginTests.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 50ADFF7E201F53D600D50D53 = { + isa = PBXGroup; + children = ( + 50ADFF8A201F53D600D50D53 /* Plugin */, + 50ADFF95201F53D600D50D53 /* PluginTests */, + 50ADFF89201F53D600D50D53 /* Products */, + 8C8E7744173064A9F6D438E3 /* Pods */, + A797B9EFA3DCEFEA1FBB66A9 /* Frameworks */, + ); + sourceTree = ""; + }; + 50ADFF89201F53D600D50D53 /* Products */ = { + isa = PBXGroup; + children = ( + 50ADFF88201F53D600D50D53 /* Plugin.framework */, + 50ADFF91201F53D600D50D53 /* PluginTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 50ADFF8A201F53D600D50D53 /* Plugin */ = { + isa = PBXGroup; + children = ( + 50E1A94720377CB70090CE1A /* Plugin.swift */, + 50ADFF8B201F53D600D50D53 /* Plugin.h */, + 50ADFFA72020EE4F00D50D53 /* Plugin.m */, + 50ADFF8C201F53D600D50D53 /* Info.plist */, + ); + path = Plugin; + sourceTree = ""; + }; + 50ADFF95201F53D600D50D53 /* PluginTests */ = { + isa = PBXGroup; + children = ( + 50ADFF96201F53D600D50D53 /* PluginTests.swift */, + 50ADFF98201F53D600D50D53 /* Info.plist */, + ); + path = PluginTests; + sourceTree = ""; + }; + 8C8E7744173064A9F6D438E3 /* Pods */ = { + isa = PBXGroup; + children = ( + 5E23F77F099397094342571A /* Pods-Plugin.debug.xcconfig */, + 91781294A431A2A7CC6EB714 /* Pods-Plugin.release.xcconfig */, + 96ED1B6440D6672E406C8D19 /* Pods-PluginTests.debug.xcconfig */, + F65BB2953ECE002E1EF3E424 /* Pods-PluginTests.release.xcconfig */, + ); + name = Pods; + sourceTree = ""; + }; + A797B9EFA3DCEFEA1FBB66A9 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 50ADFFA52020D75100D50D53 /* Capacitor.framework */, + 3B2A61DA5A1F2DD4F959604D /* Pods_Plugin.framework */, + F6753A823D3815DB436415E3 /* Pods_PluginTests.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 50ADFF85201F53D600D50D53 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 50ADFF99201F53D600D50D53 /* Plugin.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 50ADFF87201F53D600D50D53 /* Plugin */ = { + isa = PBXNativeTarget; + buildConfigurationList = 50ADFF9C201F53D600D50D53 /* Build configuration list for PBXNativeTarget "Plugin" */; + buildPhases = ( + AB5B3E54B4E897F32C2279DA /* [CP] Check Pods Manifest.lock */, + 50ADFF83201F53D600D50D53 /* Sources */, + 50ADFF84201F53D600D50D53 /* Frameworks */, + 50ADFF85201F53D600D50D53 /* Headers */, + 50ADFF86201F53D600D50D53 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Plugin; + productName = Plugin; + productReference = 50ADFF88201F53D600D50D53 /* Plugin.framework */; + productType = "com.apple.product-type.framework"; + }; + 50ADFF90201F53D600D50D53 /* PluginTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 50ADFF9F201F53D600D50D53 /* Build configuration list for PBXNativeTarget "PluginTests" */; + buildPhases = ( + 0596884F929ED6F1DE134961 /* [CP] Check Pods Manifest.lock */, + 50ADFF8D201F53D600D50D53 /* Sources */, + 50ADFF8E201F53D600D50D53 /* Frameworks */, + 50ADFF8F201F53D600D50D53 /* Resources */, + CCA81D3B7E26D0D727D24C84 /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 50ADFF94201F53D600D50D53 /* PBXTargetDependency */, + ); + name = PluginTests; + productName = PluginTests; + productReference = 50ADFF91201F53D600D50D53 /* PluginTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 50ADFF7F201F53D600D50D53 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 0920; + LastUpgradeCheck = 0920; + ORGANIZATIONNAME = "Max Lynch"; + TargetAttributes = { + 50ADFF87201F53D600D50D53 = { + CreatedOnToolsVersion = 9.2; + LastSwiftMigration = 1100; + ProvisioningStyle = Automatic; + }; + 50ADFF90201F53D600D50D53 = { + CreatedOnToolsVersion = 9.2; + LastSwiftMigration = 1100; + ProvisioningStyle = Automatic; + }; + }; + }; + buildConfigurationList = 50ADFF82201F53D600D50D53 /* Build configuration list for PBXProject "Plugin" */; + compatibilityVersion = "Xcode 8.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 50ADFF7E201F53D600D50D53; + productRefGroup = 50ADFF89201F53D600D50D53 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 50ADFF87201F53D600D50D53 /* Plugin */, + 50ADFF90201F53D600D50D53 /* PluginTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 50ADFF86201F53D600D50D53 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 50ADFF8F201F53D600D50D53 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 0596884F929ED6F1DE134961 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-PluginTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + AB5B3E54B4E897F32C2279DA /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Plugin-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + CCA81D3B7E26D0D727D24C84 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-PluginTests/Pods-PluginTests-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/Capacitor/Capacitor.framework", + "${BUILT_PRODUCTS_DIR}/CapacitorCordova/Cordova.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Capacitor.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Cordova.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-PluginTests/Pods-PluginTests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 50ADFF83201F53D600D50D53 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 50E1A94820377CB70090CE1A /* Plugin.swift in Sources */, + 50ADFFA82020EE4F00D50D53 /* Plugin.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 50ADFF8D201F53D600D50D53 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 50ADFF97201F53D600D50D53 /* PluginTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 50ADFF94201F53D600D50D53 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 50ADFF87201F53D600D50D53 /* Plugin */; + targetProxy = 50ADFF93201F53D600D50D53 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 50ADFF9A201F53D600D50D53 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 50ADFF9B201F53D600D50D53 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 50ADFF9D201F53D600D50D53 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5E23F77F099397094342571A /* Pods-Plugin.debug.xcconfig */; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_IDENTITY = ""; + CODE_SIGN_STYLE = Automatic; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Plugin/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks $(FRAMEWORK_SEARCH_PATHS)\n$(FRAMEWORK_SEARCH_PATHS)\n$(FRAMEWORK_SEARCH_PATHS)"; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_BUNDLE_IDENTIFIER = com.getcapacitor.Plugin; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SUPPORTS_MACCATALYST = NO; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 50ADFF9E201F53D600D50D53 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 91781294A431A2A7CC6EB714 /* Pods-Plugin.release.xcconfig */; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_IDENTITY = ""; + CODE_SIGN_STYLE = Automatic; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Plugin/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks $(FRAMEWORK_SEARCH_PATHS)"; + ONLY_ACTIVE_ARCH = NO; + PRODUCT_BUNDLE_IDENTIFIER = com.getcapacitor.Plugin; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SUPPORTS_MACCATALYST = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + 50ADFFA0201F53D600D50D53 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 96ED1B6440D6672E406C8D19 /* Pods-PluginTests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = PluginTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.getcapacitor.PluginTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 50ADFFA1201F53D600D50D53 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = F65BB2953ECE002E1EF3E424 /* Pods-PluginTests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = PluginTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.getcapacitor.PluginTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 50ADFF82201F53D600D50D53 /* Build configuration list for PBXProject "Plugin" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 50ADFF9A201F53D600D50D53 /* Debug */, + 50ADFF9B201F53D600D50D53 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 50ADFF9C201F53D600D50D53 /* Build configuration list for PBXNativeTarget "Plugin" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 50ADFF9D201F53D600D50D53 /* Debug */, + 50ADFF9E201F53D600D50D53 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 50ADFF9F201F53D600D50D53 /* Build configuration list for PBXNativeTarget "PluginTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 50ADFFA0201F53D600D50D53 /* Debug */, + 50ADFFA1201F53D600D50D53 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 50ADFF7F201F53D600D50D53 /* Project object */; +} diff --git a/speech-recognition/ios/Plugin.xcworkspace/contents.xcworkspacedata b/speech-recognition/ios/Plugin.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..afad624e --- /dev/null +++ b/speech-recognition/ios/Plugin.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/speech-recognition/ios/Plugin.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/speech-recognition/ios/Plugin.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/speech-recognition/ios/Plugin.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/speech-recognition/ios/Plugin/Info.plist b/speech-recognition/ios/Plugin/Info.plist new file mode 100644 index 00000000..4bbbee6a --- /dev/null +++ b/speech-recognition/ios/Plugin/Info.plist @@ -0,0 +1,42 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + FMWK + NSMicrophoneUsageDescription + Privacy - Speech Recording for Transcription and audio visualization + LSApplicationCategoryType + + NSSpeechRecognitionUsageDescription + Privacy - Microphone Usage Description + CFBundleShortVersionString + 1.0 + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + NSPrincipalClass + + NSPrivacyAccessedAPITypes + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryFileTimestamp + NSPrivacyAccessedAPITypeReasons + + C617.1 + + + + + diff --git a/speech-recognition/ios/Plugin/Plugin.h b/speech-recognition/ios/Plugin/Plugin.h new file mode 100644 index 00000000..f2bd9e0b --- /dev/null +++ b/speech-recognition/ios/Plugin/Plugin.h @@ -0,0 +1,10 @@ +#import + +//! Project version number for Plugin. +FOUNDATION_EXPORT double PluginVersionNumber; + +//! Project version string for Plugin. +FOUNDATION_EXPORT const unsigned char PluginVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + diff --git a/speech-recognition/ios/Plugin/Plugin.m b/speech-recognition/ios/Plugin/Plugin.m new file mode 100644 index 00000000..5e2e0c18 --- /dev/null +++ b/speech-recognition/ios/Plugin/Plugin.m @@ -0,0 +1,21 @@ +#import +#import + +// Define the plugin using the CAP_PLUGIN Macro, and +// each method the plugin supports using the CAP_PLUGIN_METHOD macro. +CAP_PLUGIN(SpeechRecognition, "SpeechRecognition", + CAP_PLUGIN_METHOD(available, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(record, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(stopRecording, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(startMicrophoneStream, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(stopMicrophoneStream, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(start, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(stop, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(getSupportedLanguages, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(hasPermission, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(isListening, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(requestPermission, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(checkPermissions, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(requestPermissions, CAPPluginReturnPromise); + CAP_PLUGIN_METHOD(removeAllListeners, CAPPluginReturnPromise); +) diff --git a/speech-recognition/ios/Plugin/Plugin.swift b/speech-recognition/ios/Plugin/Plugin.swift new file mode 100644 index 00000000..eb12659d --- /dev/null +++ b/speech-recognition/ios/Plugin/Plugin.swift @@ -0,0 +1,324 @@ +import Capacitor +import Foundation +import Speech + +extension AVAudioPCMBuffer { + func toArray() -> [Float] { + let ptr = self.floatChannelData?[0] + let buf = UnsafeBufferPointer(start: ptr, count: Int(self.frameLength)) + return Array(buf) + } +} + +@objc(SpeechRecognition) +public class SpeechRecognition: CAPPlugin { + + let defaultMatches = 5 + let messageMissingPermission = "Missing permission" + let messageAccessDenied = "User denied access to speech recognition" + let messageRestricted = "Speech recognition restricted on this device" + let messageNotDetermined = "Speech recognition not determined on this device" + let messageAccessDeniedMicrophone = "User denied access to microphone" + let messageOngoing = "Ongoing speech recognition" + let messageUnknown = "Unknown error occured" + + private var speechRecognizer: SFSpeechRecognizer? + private var audioEngine: AVAudioEngine? + private var recognitionRequest: SFSpeechAudioBufferRecognitionRequest? + private var recognitionTask: SFSpeechRecognitionTask? + private var audioRecorder: AVAudioRecorder? + + private var microphoneNode: AVAudioInputNode? + + @objc func startMicrophoneStream(_ call: CAPPluginCall) { + let audioSession = AVAudioSession.sharedInstance() + + do { + try audioSession.setCategory(.playAndRecord, options: .defaultToSpeaker) + try audioSession.setActive(true) + + if audioEngine == nil { + audioEngine = AVAudioEngine() + } + + guard let audioEngine = audioEngine else { + call.reject("Failed to create audio engine") + return + } + + microphoneNode = audioEngine.inputNode + let format = microphoneNode?.outputFormat(forBus: 0) + + // Install tap on microphone node to get real-time audio data + microphoneNode?.installTap(onBus: 0, bufferSize: 1024, format: format) { + (buffer, time) in + // Send audio buffer data to JavaScript + let data = ["buffer": buffer.toArray()] + self.notifyListeners("audioData", data: data) + } + + try audioEngine.start() + call.resolve() + + } catch { + call.reject("Failed to start microphone: \(error.localizedDescription)") + } + } + + @objc func stopMicrophoneStream(_ call: CAPPluginCall) { + if let node = microphoneNode { + node.removeTap(onBus: 0) + } + + audioEngine?.stop() + microphoneNode = nil + + call.resolve() + } + + @objc func record(_ call: CAPPluginCall) { + let audioSession = AVAudioSession.sharedInstance() + + do { + try audioSession.setCategory(.playAndRecord, options: .defaultToSpeaker) + try audioSession.setActive(true) + + // Use Documents directory + let documentsPath = FileManager.default.urls( + for: .documentDirectory, in: .userDomainMask)[0] + let fileName = call.getString("fileName") ?? "recording.wav" + let audioFilename = documentsPath.appendingPathComponent(fileName) + + // Create parent directory if it doesn't exist + try FileManager.default.createDirectory( + at: documentsPath, withIntermediateDirectories: true) + + let settings: [String: Any] = [ + AVFormatIDKey: Int(kAudioFormatLinearPCM), + AVSampleRateKey: 44100.0, + AVNumberOfChannelsKey: 1, + AVLinearPCMBitDepthKey: 16, + AVLinearPCMIsFloatKey: false, + AVLinearPCMIsBigEndianKey: false, + AVEncoderAudioQualityKey: AVAudioQuality.high.rawValue, + ] + + // Log the file path for debugging + print("Recording to path: \(audioFilename.path)") + + // Create and start the audio recorder + audioRecorder = try AVAudioRecorder(url: audioFilename, settings: settings) + audioRecorder?.record() + + // Return the file path to the caller + call.resolve([ + "path": audioFilename.path + ]) + + } catch { + call.reject("Failed to start recording: \(error.localizedDescription)") + } + } + + @objc func stopRecording(_ call: CAPPluginCall) { + guard let recorder = audioRecorder, recorder.isRecording else { + call.reject("No active recording") + return + } + + recorder.stop() + audioRecorder = nil + call.resolve() + } + + @objc func available(_ call: CAPPluginCall) { + guard let recognizer = SFSpeechRecognizer() else { + call.resolve([ + "available": false + ]) + return + } + call.resolve([ + "available": recognizer.isAvailable + ]) + } + + @objc func start(_ call: CAPPluginCall) { + if self.audioEngine != nil { + if self.audioEngine!.isRunning { + call.reject(self.messageOngoing) + return + } + } + + let status: SFSpeechRecognizerAuthorizationStatus = SFSpeechRecognizer.authorizationStatus() + if status != SFSpeechRecognizerAuthorizationStatus.authorized { + call.reject(self.messageMissingPermission) + return + } + + AVAudioSession.sharedInstance().requestRecordPermission { (granted) in + if !granted { + call.reject(self.messageAccessDeniedMicrophone) + return + } + + let language: String = call.getString("language") ?? "en-US" + let maxResults: Int = call.getInt("maxResults") ?? self.defaultMatches + let partialResults: Bool = call.getBool("partialResults") ?? false + + if self.recognitionTask != nil { + self.recognitionTask?.cancel() + self.recognitionTask = nil + } + + self.audioEngine = AVAudioEngine.init() + self.speechRecognizer = SFSpeechRecognizer.init(locale: Locale(identifier: language)) + + let audioSession: AVAudioSession = AVAudioSession.sharedInstance() + do { + try audioSession.setCategory( + AVAudioSession.Category.playAndRecord, + options: AVAudioSession.CategoryOptions.defaultToSpeaker) + try audioSession.setMode(AVAudioSession.Mode.default) + try audioSession.setActive( + true, options: AVAudioSession.SetActiveOptions.notifyOthersOnDeactivation) + } catch { + + } + + self.recognitionRequest = SFSpeechAudioBufferRecognitionRequest() + self.recognitionRequest?.shouldReportPartialResults = partialResults + + let inputNode: AVAudioInputNode = self.audioEngine!.inputNode + let format: AVAudioFormat = inputNode.outputFormat(forBus: 0) + + self.recognitionTask = self.speechRecognizer?.recognitionTask( + with: self.recognitionRequest!, + resultHandler: { (result, error) in + if result != nil { + let resultArray: NSMutableArray = NSMutableArray() + var counter: Int = 0 + + for transcription: SFTranscription in result!.transcriptions { + if maxResults > 0 && counter < maxResults { + resultArray.add(transcription.formattedString) + } + counter += 1 + } + + if partialResults { + self.notifyListeners("partialResults", data: ["matches": resultArray]) + } else { + call.resolve([ + "matches": resultArray + ]) + } + + if result!.isFinal { + self.audioEngine!.stop() + self.audioEngine?.inputNode.removeTap(onBus: 0) + self.notifyListeners("listeningState", data: ["status": "stopped"]) + self.recognitionTask = nil + self.recognitionRequest = nil + } + } + + if error != nil { + self.audioEngine!.stop() + self.audioEngine?.inputNode.removeTap(onBus: 0) + self.recognitionRequest = nil + self.recognitionTask = nil + self.notifyListeners("listeningState", data: ["status": "stopped"]) + call.reject(error!.localizedDescription) + } + }) + + inputNode.installTap(onBus: 0, bufferSize: 1024, format: format) { + (buffer: AVAudioPCMBuffer, _: AVAudioTime) in + self.recognitionRequest?.append(buffer) + } + + self.audioEngine?.prepare() + do { + try self.audioEngine?.start() + self.notifyListeners("listeningState", data: ["status": "started"]) + if partialResults { + call.resolve() + } + } catch { + call.reject(self.messageUnknown) + } + } + } + + @objc func stop(_ call: CAPPluginCall) { + DispatchQueue.global(qos: DispatchQoS.QoSClass.default).async { + if let engine = self.audioEngine, engine.isRunning { + engine.stop() + self.recognitionRequest?.endAudio() + self.notifyListeners("listeningState", data: ["status": "stopped"]) + } + call.resolve() + } + } + + @objc func isListening(_ call: CAPPluginCall) { + let isListening = self.audioEngine?.isRunning ?? false + call.resolve([ + "listening": isListening + ]) + } + + @objc func getSupportedLanguages(_ call: CAPPluginCall) { + let supportedLanguages: Set! = SFSpeechRecognizer.supportedLocales() as Set + let languagesArr: NSMutableArray = NSMutableArray() + + for lang: Locale in supportedLanguages { + languagesArr.add(lang.identifier) + } + + call.resolve([ + "languages": languagesArr + ]) + } + + @objc override public func checkPermissions(_ call: CAPPluginCall) { + let status: SFSpeechRecognizerAuthorizationStatus = SFSpeechRecognizer.authorizationStatus() + let permission: String + switch status { + case .authorized: + permission = "granted" + case .denied, .restricted: + permission = "denied" + case .notDetermined: + permission = "prompt" + @unknown default: + permission = "prompt" + } + call.resolve(["speechRecognition": permission]) + } + + @objc override public func requestPermissions(_ call: CAPPluginCall) { + SFSpeechRecognizer.requestAuthorization { (status: SFSpeechRecognizerAuthorizationStatus) in + DispatchQueue.main.async { + switch status { + case .authorized: + AVAudioSession.sharedInstance().requestRecordPermission { (granted: Bool) in + if granted { + call.resolve(["speechRecognition": "granted"]) + } else { + call.resolve(["speechRecognition": "denied"]) + } + } + break + case .denied, .restricted, .notDetermined: + self.checkPermissions(call) + break + @unknown default: + self.checkPermissions(call) + } + } + } + } +} diff --git a/speech-recognition/ios/PluginTests/Info.plist b/speech-recognition/ios/PluginTests/Info.plist new file mode 100644 index 00000000..6c40a6cd --- /dev/null +++ b/speech-recognition/ios/PluginTests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/speech-recognition/ios/PluginTests/PluginTests.swift b/speech-recognition/ios/PluginTests/PluginTests.swift new file mode 100644 index 00000000..1956afce --- /dev/null +++ b/speech-recognition/ios/PluginTests/PluginTests.swift @@ -0,0 +1,25 @@ +import XCTest +import Capacitor +@testable import Plugin + +class PluginTests: XCTestCase { + + func testEcho() { + // This is an example of a functional test case for a plugin. + // Use XCTAssert and related functions to verify your tests produce the correct results. + + let value = "Hello, World!" + let plugin = MyPlugin() + + let call = CAPPluginCall(callbackId: "test", options: [ + "value": value + ], resolve: { (result, _) in + let resultValue = result!.data["value"] as? String + XCTAssertEqual(value, resultValue) + }, reject: { (_) in + XCTFail("Error shouldn't have been called") + }) + + plugin.echo(call!) + } +} diff --git a/speech-recognition/ios/Podfile b/speech-recognition/ios/Podfile new file mode 100644 index 00000000..a4814c11 --- /dev/null +++ b/speech-recognition/ios/Podfile @@ -0,0 +1,16 @@ +platform :ios, '13.0' + +def capacitor_pods + # Comment the next line if you're not using Swift and don't want to use dynamic frameworks + use_frameworks! + pod 'Capacitor', :path => '../node_modules/@capacitor/ios' + pod 'CapacitorCordova', :path => '../node_modules/@capacitor/ios' +end + +target 'Plugin' do + capacitor_pods +end + +target 'PluginTests' do + capacitor_pods +end \ No newline at end of file diff --git a/speech-recognition/ios/Podfile.lock b/speech-recognition/ios/Podfile.lock new file mode 100644 index 00000000..f6bd72d3 --- /dev/null +++ b/speech-recognition/ios/Podfile.lock @@ -0,0 +1,22 @@ +PODS: + - Capacitor (6.0.0): + - CapacitorCordova + - CapacitorCordova (6.0.0) + +DEPENDENCIES: + - "Capacitor (from `../node_modules/@capacitor/ios`)" + - "CapacitorCordova (from `../node_modules/@capacitor/ios`)" + +EXTERNAL SOURCES: + Capacitor: + :path: "../node_modules/@capacitor/ios" + CapacitorCordova: + :path: "../node_modules/@capacitor/ios" + +SPEC CHECKSUMS: + Capacitor: 559d073c4ca6c27f8e7002c807eea94c3ba435a9 + CapacitorCordova: 8c4bfdf69368512e85b1d8b724dd7546abeb30af + +PODFILE CHECKSUM: 1033dea949db4aa66cc0404a8baadac4a30dd025 + +COCOAPODS: 1.16.2 diff --git a/speech-recognition/ios/Pods/Local Podspecs/Capacitor.podspec.json b/speech-recognition/ios/Pods/Local Podspecs/Capacitor.podspec.json new file mode 100644 index 00000000..56f68229 --- /dev/null +++ b/speech-recognition/ios/Pods/Local Podspecs/Capacitor.podspec.json @@ -0,0 +1,31 @@ +{ + "name": "Capacitor", + "version": "6.0.0", + "summary": "Capacitor for iOS", + "social_media_url": "https://twitter.com/capacitorjs", + "license": "MIT", + "homepage": "https://capacitorjs.com/", + "platforms": { + "ios": "13.0" + }, + "authors": { + "Ionic Team": "hi@ionicframework.com" + }, + "source": { + "git": "https://github.com/ionic-team/capacitor.git", + "tag": "6.0.0" + }, + "source_files": "Capacitor/Capacitor/**/*.{swift,h,m}", + "module_map": "Capacitor/Capacitor/Capacitor.modulemap", + "resources": [ + "Capacitor/Capacitor/assets/native-bridge.js", + "Capacitor/Capacitor/PrivacyInfo.xcprivacy" + ], + "dependencies": { + "CapacitorCordova": [ + + ] + }, + "swift_versions": "5.1", + "swift_version": "5.1" +} diff --git a/speech-recognition/ios/Pods/Local Podspecs/CapacitorCordova.podspec.json b/speech-recognition/ios/Pods/Local Podspecs/CapacitorCordova.podspec.json new file mode 100644 index 00000000..2790d91f --- /dev/null +++ b/speech-recognition/ios/Pods/Local Podspecs/CapacitorCordova.podspec.json @@ -0,0 +1,29 @@ +{ + "name": "CapacitorCordova", + "module_name": "Cordova", + "version": "6.0.0", + "summary": "Capacitor Cordova Compatibility Layer", + "homepage": "https://capacitorjs.com", + "license": "MIT", + "authors": { + "Ionic Team": "hi@ionicframework.com" + }, + "source": { + "git": "https://github.com/ionic-team/capacitor", + "tag": "6.0.0" + }, + "platforms": { + "ios": "13.0" + }, + "source_files": "CapacitorCordova/CapacitorCordova/**/*.{h,m}", + "public_header_files": [ + "CapacitorCordova/CapacitorCordova/Classes/Public/*.h", + "CapacitorCordova/CapacitorCordova/CapacitorCordova.h" + ], + "module_map": "CapacitorCordova/CapacitorCordova/CapacitorCordova.modulemap", + "resources": [ + "CapacitorCordova/CapacitorCordova/PrivacyInfo.xcprivacy" + ], + "requires_arc": true, + "frameworks": "WebKit" +} diff --git a/speech-recognition/ios/Pods/Manifest.lock b/speech-recognition/ios/Pods/Manifest.lock new file mode 100644 index 00000000..f6bd72d3 --- /dev/null +++ b/speech-recognition/ios/Pods/Manifest.lock @@ -0,0 +1,22 @@ +PODS: + - Capacitor (6.0.0): + - CapacitorCordova + - CapacitorCordova (6.0.0) + +DEPENDENCIES: + - "Capacitor (from `../node_modules/@capacitor/ios`)" + - "CapacitorCordova (from `../node_modules/@capacitor/ios`)" + +EXTERNAL SOURCES: + Capacitor: + :path: "../node_modules/@capacitor/ios" + CapacitorCordova: + :path: "../node_modules/@capacitor/ios" + +SPEC CHECKSUMS: + Capacitor: 559d073c4ca6c27f8e7002c807eea94c3ba435a9 + CapacitorCordova: 8c4bfdf69368512e85b1d8b724dd7546abeb30af + +PODFILE CHECKSUM: 1033dea949db4aa66cc0404a8baadac4a30dd025 + +COCOAPODS: 1.16.2 diff --git a/speech-recognition/ios/Pods/Pods.xcodeproj/project.pbxproj b/speech-recognition/ios/Pods/Pods.xcodeproj/project.pbxproj new file mode 100644 index 00000000..70c3680d --- /dev/null +++ b/speech-recognition/ios/Pods/Pods.xcodeproj/project.pbxproj @@ -0,0 +1,1438 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 48; + objects = { + +/* Begin PBXBuildFile section */ + 00DD49AAA7B7FBACB25F3DCA70FF2185 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 95648C56D4E4ABD41EE8AF4CB2326B5B /* PrivacyInfo.xcprivacy */; }; + 00E3AC2042D078DEA544CAA6CD4180A8 /* WKWebView+Capacitor.m in Sources */ = {isa = PBXBuildFile; fileRef = 5E899B1AC03689EDAC12449B726FB334 /* WKWebView+Capacitor.m */; }; + 027FC9F6CE661B44DE8435A77C6FDA4B /* CDVPlugin+Resources.m in Sources */ = {isa = PBXBuildFile; fileRef = 59D5E4DFE1C5C24A08DE24200E2D13A5 /* CDVPlugin+Resources.m */; }; + 0499127BAC8542710DA405AF0FFE94A3 /* Pods-Plugin-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B5A2BC9A9C63563BFD519AB3CE4D5D9D /* Pods-Plugin-dummy.m */; }; + 0C58F0348A989679220D52A7968B65AD /* CapacitorHttp.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC328445EC3EA24D0B0319746270406C /* CapacitorHttp.swift */; }; + 0CAF5AA5DFABA1AFBAFC9006FA117868 /* CAPBridgeProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4482B770B243ABA1FB534B9EF3183997 /* CAPBridgeProtocol.swift */; }; + 0CDC3D7F98C3CAD813E6B7CD9A86904A /* CAPNotifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E0E0F34AC2147857612A52C22DC6AD2 /* CAPNotifications.swift */; }; + 1045EACE8E8B629DC92734306767FFB4 /* CAPPluginCall.m in Sources */ = {isa = PBXBuildFile; fileRef = BA5F5DAE2C5394EEE17B9029808226AC /* CAPPluginCall.m */; }; + 148484B94011D20A3216BC1BA9BD0BC1 /* CAPPluginCall.h in Headers */ = {isa = PBXBuildFile; fileRef = 05FEE9BE906E5FD3A2023A19D663CC35 /* CAPPluginCall.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 176129582238765CAF813BB1E7AB7205 /* CDVScreenOrientationDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = BA7554A812B86229C8EA5F6F81B321BC /* CDVScreenOrientationDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1B15596AD72235D0A9E68C338FED5894 /* CDVAvailability.h in Headers */ = {isa = PBXBuildFile; fileRef = 563A77979ACFFB84A79E21335EB145D7 /* CDVAvailability.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1E4541F5947B0911BB3D0A3E2B4FCFD1 /* Pods-PluginTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E74390F09A29D254E98C5610DDD5A28 /* Pods-PluginTests-dummy.m */; }; + 21538F9E86EC068189BF4A052B2BC138 /* CAPInstanceDescriptor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 548629F623A47EB37EE3410159EA22AF /* CAPInstanceDescriptor.swift */; }; + 2745795601B95C8ADCD9CD944EA64816 /* PluginCallResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = D16D9D7D1D75407542D70F279BE858C5 /* PluginCallResult.swift */; }; + 29AD4AFDB1051F7091DFB08B64CD7EFB /* NSDictionary+CordovaPreferences.m in Sources */ = {isa = PBXBuildFile; fileRef = B31007A810171D345EEC4FA0BCB21CEA /* NSDictionary+CordovaPreferences.m */; }; + 2D6D1E1EFD2949E677434B3B469C88E8 /* CDVPluginResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 17715AB9228EA6E1D4F012B0CCEB33F5 /* CDVPluginResult.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 2E593F392039A254C0CDD3989DEE41D7 /* CDVURLProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = 817499F6B220524F650005F03DD71B4A /* CDVURLProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 2EE90CB8CD51A9D111E674C30CA6713F /* JSValueEncoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = E07B414D8F1B660835190464D21ABC10 /* JSValueEncoder.swift */; }; + 2EF78801E23385A00A7FED52738C450F /* TmpViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 058355C86F3D67F2B6321DC4E1FC10A1 /* TmpViewController.swift */; }; + 2F5A978C43E03ACC771F8BA4A4EFC8C3 /* CapacitorExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = D500B14AFB8C0E709A9582A05B81F7EA /* CapacitorExtension.swift */; }; + 300BB1816FB64B3DFE3505C61DABC8A0 /* CDVPluginManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 77A1EAF35490B5AFF5FAAD95EB018E41 /* CDVPluginManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 34DF23D0F78E37B2C73491A0A882750C /* CAPInstancePlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 649B5A19BF47F4CDA5DCCFF2C64B57EA /* CAPInstancePlugin.swift */; }; + 397E4837F8D249FCF827C9B45804EF45 /* CAPPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = F1C958D69C29CFBBDC15C97C583F4B43 /* CAPPlugin.m */; }; + 3AD12CA3257D333D693EF402B0D37050 /* CAPBridgedJSTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 034E099A6F68B36A4512A9AEB01F41C6 /* CAPBridgedJSTypes.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3B90DE2EBCB83B06B8DD720EC3162314 /* CAPBridgedPlugin+getMethod.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECE23228C63C46F0C4EEBEB40A001646 /* CAPBridgedPlugin+getMethod.swift */; }; + 3FAA1B6C5055BD2E04059B17765662FE /* CAPApplicationDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83BE6CA12E14393F4ABE5A03E7C4021A /* CAPApplicationDelegateProxy.swift */; }; + 455CD8F7855CC7A4FF370977AF09419F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6CA66746F86BE55810CFE7AD03678EED /* Foundation.framework */; }; + 45D2423AA78EB59FAB2F0BDD0B1E75C5 /* DefaultPlugins.m in Sources */ = {isa = PBXBuildFile; fileRef = D7539895D20B52CA8D5ADC3349621C52 /* DefaultPlugins.m */; }; + 461E7273DE46D278F1194EA42888CCC7 /* CAPPluginMethod.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A5E6150D9FC87A26CC0986391626019 /* CAPPluginMethod.m */; }; + 4AC0806A2014559389ED0D5F5864898F /* CAPBridgeViewController+CDVScreenOrientationDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 11E4D3210F27C4592CE89FEB3DBAE96A /* CAPBridgeViewController+CDVScreenOrientationDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4C6B5F2E9DA93A4D34CD6D193EAFAECB /* CapacitorCookieManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4983F575EC8224716E5A6D6B3C5C2085 /* CapacitorCookieManager.swift */; }; + 4CA1078205A5A8CD35CFFD2F3E3726DB /* PluginConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6DA0364646B8DAC5AC1996CA4DB6D82 /* PluginConfig.swift */; }; + 4CC2C15BF2EACE8730ACEEC3166E4E6E /* Data+Capacitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5985DDA358070FD5E8E0924F7B21993B /* Data+Capacitor.swift */; }; + 4D6F8880738509BA1E553595FEB47F95 /* CDVCommandDelegateImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = 869C4EBBF812C9DF1DEC1E1C9A0414B6 /* CDVCommandDelegateImpl.m */; }; + 4DCBD5692A9842C29E2237EBF131565C /* CAPBridgeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA4B6D6707D7C90A6A5A0F9BEBC93AAE /* CAPBridgeViewController.swift */; }; + 5271648081A40D55671BA56FBC8D43CE /* AppDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 6ECB88325A202355935E8868FC704161 /* AppDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 52D57F9B1D5180EF81CB354EFDE39C0B /* Pods-PluginTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = FBD93D36D06B546B5015A4716941DCBB /* Pods-PluginTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 55EFE2AD906557A4B67F8121371C3A73 /* CAPInstanceDescriptor.h in Headers */ = {isa = PBXBuildFile; fileRef = A43E09C2D3593E85EC9C672DACDC6B8E /* CAPInstanceDescriptor.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 57CED43B0677CB39026183C4DE28D266 /* KeyValueStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = B67934A6336DB96153F69F2885F7FE6A /* KeyValueStore.swift */; }; + 57F75BCC4364106AEDA3D57862A0A027 /* Array+Capacitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BEB3F4052AFC1F272E8E569F38D99A8 /* Array+Capacitor.swift */; }; + 5ADB39382AF2A449748E390C77797E83 /* NotificationHandlerProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F11C8BC6D3CB7B817842AA9AFAC48F4 /* NotificationHandlerProtocol.swift */; }; + 5B2897352536D64DA610740A510672E9 /* KeyPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B9E8896A248D0A3B628BE972B7A4486 /* KeyPath.swift */; }; + 5D25C6861DDE1676A36EAE28ADEFEB7E /* CDVViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A1612702E201BE0983D534A6F9D071A /* CDVViewController.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5D7E32867181BC87F7B54D0022B143C2 /* CapacitorCookies.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24EF261844A690BDF4EC68C25C7A5589 /* CapacitorCookies.swift */; }; + 6436FD5818142CE6C011F59096CB5126 /* CAPFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 100A2F7039C5EC78463F4B6D919C0027 /* CAPFile.swift */; }; + 66C1BEA5070DA09154CACF1C82386C24 /* WebViewAssetHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 467FCC173510CF0FC276F6532D770907 /* WebViewAssetHandler.swift */; }; + 69F1FB75650D41026C8AB7D4DC6B5EF5 /* CDVInvokedUrlCommand.h in Headers */ = {isa = PBXBuildFile; fileRef = DBDA16FB77D8D59DEB32CCFE8105EE7B /* CDVInvokedUrlCommand.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6DA5EDEC3ED099DD0674F0887286C372 /* CapacitorBridge.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80EC617BCD4EA95F9AAC9AB3CAA3B8E1 /* CapacitorBridge.swift */; }; + 72F1392053F0629A4CDABC370C13BC6E /* CAPInstanceConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD894B091F39A97912ACF4CFBC836D87 /* CAPInstanceConfiguration.swift */; }; + 75C6F32607D77EDEE605063D70641A82 /* JSTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 529064D5D9025BE6A79DE45A25CF473C /* JSTypes.swift */; }; + 75FED7AF2279400A5BF6C3862FB9355F /* CapacitorCordova.h in Headers */ = {isa = PBXBuildFile; fileRef = 703752F658D442F244EA452FB74965B3 /* CapacitorCordova.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 76CB6E36ED7444EF01E0CF68D963977B /* CDVPluginManager.m in Sources */ = {isa = PBXBuildFile; fileRef = ECF24F4C1B1CD901AEC6C31DA750B980 /* CDVPluginManager.m */; }; + 7AA91E8502C6B20AA53707E2C588976E /* CAPPluginMethod.h in Headers */ = {isa = PBXBuildFile; fileRef = BCF32033DAF5F1B50DB8C41C642EC0CB /* CAPPluginMethod.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7CE9D62121171BA6C313FBAAC145250C /* CDVWebViewProcessPoolFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = CE0E983F534D35114FB10F2860CF307A /* CDVWebViewProcessPoolFactory.m */; }; + 83C85B8084B10C07A2915FC96D7464E7 /* NSDictionary+CordovaPreferences.h in Headers */ = {isa = PBXBuildFile; fileRef = FAB754CF702177D045E75886784DDA40 /* NSDictionary+CordovaPreferences.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 85F009269489F186F56C821D384F083F /* CDVInvokedUrlCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = 818851AD6AAAFD56B6C49CBB95831BD2 /* CDVInvokedUrlCommand.m */; }; + 877AAFE43D8767C5A9277971E95289D4 /* CDVCommandDelegateImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = F58C13F718DDDF912C8D8F957ADC563C /* CDVCommandDelegateImpl.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8ADBB5DB517A52E496244D7F3C61993A /* UIColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = E997E61FDD01E884BBF5AC59944653AB /* UIColor.swift */; }; + 8C9938F35EF9682762937A36EBCF0D8C /* Console.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF1B07523853D822DC5BF0764E9EED19 /* Console.swift */; }; + 8CCB724976529DED0CCB88A368B98DBB /* WebViewDelegationHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 512101D8B0690EC4264E4026595E6C09 /* WebViewDelegationHandler.swift */; }; + 8D649A3F9FFE8B6B7D6DB866677CFE97 /* CDVConfigParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 7660E6814B15B929A0F9F717B3D7AC68 /* CDVConfigParser.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8F1B2EB11C7A2369929B4E71D0ED1EAD /* DocLinks.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED48CB5BF6D421A9CDA0C959348D407C /* DocLinks.swift */; }; + 8FB38FB7DAEF8175DC26FBF29EF794B3 /* Router.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5B59AC595CB35EA245E9B30141E6924 /* Router.swift */; }; + 8FE65960A50DAB49D78947D1DD829A55 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EDB8C9ACBBD85B912C1048908BCC00F8 /* WebKit.framework */; }; + 926BF4474C23361F1CBB6972C18294C7 /* Capacitor.h in Headers */ = {isa = PBXBuildFile; fileRef = A0D985C80C63BDFDA02B09FBDE5F6F5A /* Capacitor.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 97AED5E6D515157B9A0DAEC0DD412BED /* CAPInstanceConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = EFC7B9E1A25EB4AE22B2BFD76CE82545 /* CAPInstanceConfiguration.m */; }; + 98DF94563B6A5901AA43E27520CD78F0 /* CAPPlugin+LoadInstance.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4197ED0A91C1D7947BA5FBB380806250 /* CAPPlugin+LoadInstance.swift */; }; + 9ADD62FB5D9238F2908105EB91BB3959 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6CA66746F86BE55810CFE7AD03678EED /* Foundation.framework */; }; + 9AF55497FBDEDD5F7A73314595DCE8CA /* Capacitor-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C9870CDDCF99B18DB64FE413BD355A33 /* Capacitor-dummy.m */; }; + 9C1F9C1B8E5BA5A84502172BCFE12B5E /* native-bridge.js in Resources */ = {isa = PBXBuildFile; fileRef = 3CFD655E5956A08005DD5AA421862B8B /* native-bridge.js */; }; + A7F57A930C06BAB6B840BDEAA9781B09 /* HttpRequestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 878E6794B11C0E8DC0D0272E0075D3DA /* HttpRequestHandler.swift */; }; + AE3F0F5552793D35078BC7ED891FAD7A /* CDVViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3732370A43B40B615A6E2E0FA72E51C3 /* CDVViewController.m */; }; + AE866E6014CB92EEFB702EAA6B26DA69 /* NotificationRouter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BC36ADDFA38A3661389DDA825FE5083 /* NotificationRouter.swift */; }; + AF417F0017CAB8D4750C6DA49603D1F9 /* AppUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 605CC094F300E6D3154759CD45B6FE93 /* AppUUID.swift */; }; + AFB76EBA404290D774F5D2B7500F8D26 /* CAPBridgeViewController+CDVScreenOrientationDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C006AC3D0821275FCF555E6E934B840 /* CAPBridgeViewController+CDVScreenOrientationDelegate.m */; }; + B2E9029E480D0080EC6E60289094AB72 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 9D81585547EDB4B034BE2EA0D9D56208 /* PrivacyInfo.xcprivacy */; }; + B3212C5BA6214ADED01CB29F9800D649 /* JSExport.swift in Sources */ = {isa = PBXBuildFile; fileRef = D81BE104344112B7A5C9F3A53EDE99A7 /* JSExport.swift */; }; + B3AA855A84675E936255A71AD4DB9B23 /* CDVCommandDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 493CF8B368FE667CC972900CC186E9C5 /* CDVCommandDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B792996B7760D781528A1C763063A368 /* CapacitorUrlRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DF6B2974AF73F4D12D28B80AC5F36F5 /* CapacitorUrlRequest.swift */; }; + BB87CDD8BC95A41CC36A5F310531447D /* CAPPlugin.h in Headers */ = {isa = PBXBuildFile; fileRef = F57C5B609F6096ECA1A3472EB9598349 /* CAPPlugin.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BF6B68F1184491A2448C7FBB4B5133C6 /* CAPBridgedJSTypes.m in Sources */ = {isa = PBXBuildFile; fileRef = 9B30FA46B72726BE8575E32C6D723774 /* CAPBridgedJSTypes.m */; }; + C70B7BAFB1CC9CB3BDE81CD032F7E8C0 /* CAPBridgeDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 361CCAC6BE339CADD7B79EFF50187FBE /* CAPBridgeDelegate.swift */; }; + C76B932E7394525172D7D6151E1E8C85 /* JSValueDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3913FC61666E5D3FD73A8767928B4A8 /* JSValueDecoder.swift */; }; + C9181D44A46C8BCF730EAA4B90494821 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6CA66746F86BE55810CFE7AD03678EED /* Foundation.framework */; }; + CFAEC4AE503B12B7769D5B6558D46D9B /* JS.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F944F7FF0C26D29173A8EF79812831C /* JS.swift */; }; + CFD73DDF6ECC44D5319C1C3220DDE419 /* CAPInstanceConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = C28B91C116136C7A64464B856666B322 /* CAPInstanceConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D6269E73CDF8361E771B00BA95B326A3 /* Pods-Plugin-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7EFD241FB11A4273E5C38133FF35CF7D /* Pods-Plugin-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D6CD38508B1A1BA95FE5DDD0D475C48F /* CAPBridgedPlugin.h in Headers */ = {isa = PBXBuildFile; fileRef = 1B26A9DFA84BEC3CE4BCC5439C97FEB5 /* CAPBridgedPlugin.h */; settings = {ATTRIBUTES = (Public, ); }; }; + DAEA37C2E0F7D2B3AE9398A8FEC46341 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 0105DDBA94BC8BCB737759E84AAE7208 /* AppDelegate.m */; }; + DC1825A1FB35A20419A2A0CD5FBA84C9 /* CDVConfigParser.m in Sources */ = {isa = PBXBuildFile; fileRef = FE5DE9C8F410DA397F9857E73F8B90AF /* CDVConfigParser.m */; }; + E272C2D1FC899E2FA18FA93A496E09FE /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6CA66746F86BE55810CFE7AD03678EED /* Foundation.framework */; }; + E30ECF193303AD72B7F96836A36BEB45 /* CapacitorCordova-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = FB1AFA939CECAB029934DBC1EAF88742 /* CapacitorCordova-dummy.m */; }; + E9B95392857E466198E2FFD234092B93 /* CDVWebViewProcessPoolFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 17AE58CD1ADD07DD9FEA88931D0F5D22 /* CDVWebViewProcessPoolFactory.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EA83A79FF1DD9CFD564539EBE85A4075 /* WKWebView+Capacitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBBDB22A2818944BBF894475E81CFFE6 /* WKWebView+Capacitor.swift */; }; + EACC53C924CC079B4D4EB4B2A729F01D /* CDVPlugin+Resources.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D4E33F09D7E6EA708A393DCA9D6AFB9 /* CDVPlugin+Resources.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EB99E1BE46CB187B91736F39E3ED08BB /* CAPBridge.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7EA8211FDF54FE98FBAA044F3D7CEA0 /* CAPBridge.swift */; }; + ED227CB506888616381FB4867D221B3A /* UIStatusBarManager+CAPHandleTapAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 3763CB8B63738A487F25B9D159EDF8DE /* UIStatusBarManager+CAPHandleTapAction.m */; }; + EF77B5C312518AF79A588746882D93CE /* CAPPluginCall.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6015C26B0D7D81331053C8F88F8DDC33 /* CAPPluginCall.swift */; }; + F226824369CCC866568DC74B5ED7BD35 /* CDVPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = E836D3E3290079E51DDCB96D8A095942 /* CDVPlugin.m */; }; + F2273535879477B590B87264FF4B0B4A /* CDVURLProtocol.m in Sources */ = {isa = PBXBuildFile; fileRef = 63CA49B9FEB6B4E88D6C824BE745A921 /* CDVURLProtocol.m */; }; + F2CB5F2716E2A29BBD97D0E536D2EC4E /* CAPInstanceDescriptor.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3A58AC532D2AA4F4ED2A1732DB89F4 /* CAPInstanceDescriptor.m */; }; + F30492DC285ED1AD4470173A3AB2C196 /* WebView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EC12A44AF93A0F42A7D7934B956E924 /* WebView.swift */; }; + F34725C8044DAAA071D2B2687BCF9861 /* CDVPlugin.h in Headers */ = {isa = PBXBuildFile; fileRef = 0249BF2B4AD076B27532089B9CC0180D /* CDVPlugin.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F62743280115D52A54566D7AFF46A271 /* CAPLog.swift in Sources */ = {isa = PBXBuildFile; fileRef = D73A20758871BEC6AB3CCAE68C74DBDA /* CAPLog.swift */; }; + F75957FA306C694CA84137ECFC16A133 /* CDV.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A35816AF163353BBA815B674518D5CC /* CDV.h */; settings = {ATTRIBUTES = (Public, ); }; }; + FBE6F2054283082FBFB0F4DB9E751E90 /* CDVPluginResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 4521DB3AF260E2133CBD36522DB7BA75 /* CDVPluginResult.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 127DC55B609A0305F67450805B0C7094 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 400AE44335852A2D8D746557E21E8EB0; + remoteInfo = CapacitorCordova; + }; + 3FE83C1640CBE5C0D9BA0420819B5E5F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 0ECF3D6BFCC08377AE23B027EE1D4371; + remoteInfo = Capacitor; + }; + 6DF20DB01C9B457730A36CA25BA09463 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 0ECF3D6BFCC08377AE23B027EE1D4371; + remoteInfo = Capacitor; + }; + 845C3BC277EA5C1FE432A56E456ABCFB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 400AE44335852A2D8D746557E21E8EB0; + remoteInfo = CapacitorCordova; + }; + BAEF81288EED2D4A7CE700D573E39499 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 400AE44335852A2D8D746557E21E8EB0; + remoteInfo = CapacitorCordova; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 0105DDBA94BC8BCB737759E84AAE7208 /* AppDelegate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; + 0249BF2B4AD076B27532089B9CC0180D /* CDVPlugin.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVPlugin.h; sourceTree = ""; }; + 034E099A6F68B36A4512A9AEB01F41C6 /* CAPBridgedJSTypes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CAPBridgedJSTypes.h; path = Capacitor/Capacitor/CAPBridgedJSTypes.h; sourceTree = ""; }; + 058355C86F3D67F2B6321DC4E1FC10A1 /* TmpViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TmpViewController.swift; path = Capacitor/Capacitor/TmpViewController.swift; sourceTree = ""; }; + 05FEE9BE906E5FD3A2023A19D663CC35 /* CAPPluginCall.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CAPPluginCall.h; path = Capacitor/Capacitor/CAPPluginCall.h; sourceTree = ""; }; + 0EC12A44AF93A0F42A7D7934B956E924 /* WebView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = WebView.swift; sourceTree = ""; }; + 100A2F7039C5EC78463F4B6D919C0027 /* CAPFile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPFile.swift; path = Capacitor/Capacitor/CAPFile.swift; sourceTree = ""; }; + 11DF9CA040CEBA3928A7F34FB4928E2C /* Pods-Plugin-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Plugin-Info.plist"; sourceTree = ""; }; + 11E4D3210F27C4592CE89FEB3DBAE96A /* CAPBridgeViewController+CDVScreenOrientationDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "CAPBridgeViewController+CDVScreenOrientationDelegate.h"; path = "Capacitor/Capacitor/CAPBridgeViewController+CDVScreenOrientationDelegate.h"; sourceTree = ""; }; + 14A79D65A53F0511F9911570922C1B93 /* CapacitorCordova.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = CapacitorCordova.modulemap; sourceTree = ""; }; + 17115ED7528F1A0B61F0C52409715CA2 /* CapacitorCordova-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "CapacitorCordova-prefix.pch"; sourceTree = ""; }; + 17715AB9228EA6E1D4F012B0CCEB33F5 /* CDVPluginResult.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVPluginResult.h; sourceTree = ""; }; + 17AE58CD1ADD07DD9FEA88931D0F5D22 /* CDVWebViewProcessPoolFactory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVWebViewProcessPoolFactory.h; sourceTree = ""; }; + 1A5E6150D9FC87A26CC0986391626019 /* CAPPluginMethod.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CAPPluginMethod.m; path = Capacitor/Capacitor/CAPPluginMethod.m; sourceTree = ""; }; + 1ABFDA3391AEBA42EFB0FEBF824A6E34 /* CapacitorCordova */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = CapacitorCordova; path = Cordova.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 1B26A9DFA84BEC3CE4BCC5439C97FEB5 /* CAPBridgedPlugin.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CAPBridgedPlugin.h; path = Capacitor/Capacitor/CAPBridgedPlugin.h; sourceTree = ""; }; + 1D3A58AC532D2AA4F4ED2A1732DB89F4 /* CAPInstanceDescriptor.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CAPInstanceDescriptor.m; path = Capacitor/Capacitor/CAPInstanceDescriptor.m; sourceTree = ""; }; + 2016A734CA851674602290F66A762B63 /* Capacitor-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Capacitor-Info.plist"; sourceTree = ""; }; + 24EF261844A690BDF4EC68C25C7A5589 /* CapacitorCookies.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CapacitorCookies.swift; sourceTree = ""; }; + 2A1612702E201BE0983D534A6F9D071A /* CDVViewController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVViewController.h; sourceTree = ""; }; + 2F11C8BC6D3CB7B817842AA9AFAC48F4 /* NotificationHandlerProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NotificationHandlerProtocol.swift; path = Capacitor/Capacitor/NotificationHandlerProtocol.swift; sourceTree = ""; }; + 361CCAC6BE339CADD7B79EFF50187FBE /* CAPBridgeDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPBridgeDelegate.swift; path = Capacitor/Capacitor/CAPBridgeDelegate.swift; sourceTree = ""; }; + 3732370A43B40B615A6E2E0FA72E51C3 /* CDVViewController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CDVViewController.m; sourceTree = ""; }; + 3763CB8B63738A487F25B9D159EDF8DE /* UIStatusBarManager+CAPHandleTapAction.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIStatusBarManager+CAPHandleTapAction.m"; path = "Capacitor/Capacitor/UIStatusBarManager+CAPHandleTapAction.m"; sourceTree = ""; }; + 3B9E8896A248D0A3B628BE972B7A4486 /* KeyPath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyPath.swift; path = Capacitor/Capacitor/KeyPath.swift; sourceTree = ""; }; + 3CFD655E5956A08005DD5AA421862B8B /* native-bridge.js */ = {isa = PBXFileReference; includeInIndex = 1; path = "native-bridge.js"; sourceTree = ""; }; + 3DF6B2974AF73F4D12D28B80AC5F36F5 /* CapacitorUrlRequest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CapacitorUrlRequest.swift; sourceTree = ""; }; + 401B4870616B3D09347BE1F13F95D477 /* Pods-Plugin.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Plugin.modulemap"; sourceTree = ""; }; + 4197ED0A91C1D7947BA5FBB380806250 /* CAPPlugin+LoadInstance.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CAPPlugin+LoadInstance.swift"; path = "Capacitor/Capacitor/CAPPlugin+LoadInstance.swift"; sourceTree = ""; }; + 4482B770B243ABA1FB534B9EF3183997 /* CAPBridgeProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPBridgeProtocol.swift; path = Capacitor/Capacitor/CAPBridgeProtocol.swift; sourceTree = ""; }; + 44D6062E8C618EC2B8F1D7229E8AD501 /* Capacitor */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Capacitor; path = Capacitor.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 4521DB3AF260E2133CBD36522DB7BA75 /* CDVPluginResult.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CDVPluginResult.m; sourceTree = ""; }; + 45AEE2D3BD43D61882B01AAE2B8F11E4 /* Pods-PluginTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PluginTests-acknowledgements.plist"; sourceTree = ""; }; + 467FCC173510CF0FC276F6532D770907 /* WebViewAssetHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WebViewAssetHandler.swift; path = Capacitor/Capacitor/WebViewAssetHandler.swift; sourceTree = ""; }; + 47F881CAB117FE10E92963EF6CC91861 /* Pods-PluginTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PluginTests.debug.xcconfig"; sourceTree = ""; }; + 493CF8B368FE667CC972900CC186E9C5 /* CDVCommandDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVCommandDelegate.h; sourceTree = ""; }; + 4983F575EC8224716E5A6D6B3C5C2085 /* CapacitorCookieManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CapacitorCookieManager.swift; sourceTree = ""; }; + 4B7B23985828F9D35ECCA1361A486792 /* Pods-Plugin */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = "Pods-Plugin"; path = Pods_Plugin.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 4C006AC3D0821275FCF555E6E934B840 /* CAPBridgeViewController+CDVScreenOrientationDelegate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "CAPBridgeViewController+CDVScreenOrientationDelegate.m"; path = "Capacitor/Capacitor/CAPBridgeViewController+CDVScreenOrientationDelegate.m"; sourceTree = ""; }; + 50F35474E793D3079F51A1423D50322D /* Capacitor.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Capacitor.debug.xcconfig; sourceTree = ""; }; + 512101D8B0690EC4264E4026595E6C09 /* WebViewDelegationHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WebViewDelegationHandler.swift; path = Capacitor/Capacitor/WebViewDelegationHandler.swift; sourceTree = ""; }; + 529064D5D9025BE6A79DE45A25CF473C /* JSTypes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSTypes.swift; path = Capacitor/Capacitor/JSTypes.swift; sourceTree = ""; }; + 535AEEBA96B786E87F23F75310B8CB74 /* Pods-Plugin-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Plugin-acknowledgements.plist"; sourceTree = ""; }; + 548629F623A47EB37EE3410159EA22AF /* CAPInstanceDescriptor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPInstanceDescriptor.swift; path = Capacitor/Capacitor/CAPInstanceDescriptor.swift; sourceTree = ""; }; + 563A77979ACFFB84A79E21335EB145D7 /* CDVAvailability.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVAvailability.h; sourceTree = ""; }; + 58DEAF78291AAC1E83073B9084B45542 /* Pods-PluginTests */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = "Pods-PluginTests"; path = Pods_PluginTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 5985DDA358070FD5E8E0924F7B21993B /* Data+Capacitor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Data+Capacitor.swift"; path = "Capacitor/Capacitor/Data+Capacitor.swift"; sourceTree = ""; }; + 59D5E4DFE1C5C24A08DE24200E2D13A5 /* CDVPlugin+Resources.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "CDVPlugin+Resources.m"; sourceTree = ""; }; + 5A35816AF163353BBA815B674518D5CC /* CDV.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDV.h; sourceTree = ""; }; + 5D4E33F09D7E6EA708A393DCA9D6AFB9 /* CDVPlugin+Resources.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "CDVPlugin+Resources.h"; sourceTree = ""; }; + 5E899B1AC03689EDAC12449B726FB334 /* WKWebView+Capacitor.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "WKWebView+Capacitor.m"; path = "Capacitor/Capacitor/WKWebView+Capacitor.m"; sourceTree = ""; }; + 6015C26B0D7D81331053C8F88F8DDC33 /* CAPPluginCall.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPPluginCall.swift; path = Capacitor/Capacitor/CAPPluginCall.swift; sourceTree = ""; }; + 605CC094F300E6D3154759CD45B6FE93 /* AppUUID.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AppUUID.swift; path = Capacitor/Capacitor/AppUUID.swift; sourceTree = ""; }; + 63CA49B9FEB6B4E88D6C824BE745A921 /* CDVURLProtocol.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CDVURLProtocol.m; sourceTree = ""; }; + 649B5A19BF47F4CDA5DCCFF2C64B57EA /* CAPInstancePlugin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPInstancePlugin.swift; path = Capacitor/Capacitor/CAPInstancePlugin.swift; sourceTree = ""; }; + 6CA66746F86BE55810CFE7AD03678EED /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + 6ECB88325A202355935E8868FC704161 /* AppDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; + 6F1715C2DEF7461A3964E29A0FCB6D3D /* Pods-Plugin.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Plugin.release.xcconfig"; sourceTree = ""; }; + 703752F658D442F244EA452FB74965B3 /* CapacitorCordova.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CapacitorCordova.h; path = CapacitorCordova/CapacitorCordova/CapacitorCordova.h; sourceTree = ""; }; + 7660E6814B15B929A0F9F717B3D7AC68 /* CDVConfigParser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVConfigParser.h; sourceTree = ""; }; + 77A1EAF35490B5AFF5FAAD95EB018E41 /* CDVPluginManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVPluginManager.h; sourceTree = ""; }; + 7D967D566F7C3FD1B78180239E63BC92 /* Pods-PluginTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PluginTests.release.xcconfig"; sourceTree = ""; }; + 7E0E0F34AC2147857612A52C22DC6AD2 /* CAPNotifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPNotifications.swift; path = Capacitor/Capacitor/CAPNotifications.swift; sourceTree = ""; }; + 7E74390F09A29D254E98C5610DDD5A28 /* Pods-PluginTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-PluginTests-dummy.m"; sourceTree = ""; }; + 7EFD241FB11A4273E5C38133FF35CF7D /* Pods-Plugin-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Plugin-umbrella.h"; sourceTree = ""; }; + 80EC617BCD4EA95F9AAC9AB3CAA3B8E1 /* CapacitorBridge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CapacitorBridge.swift; path = Capacitor/Capacitor/CapacitorBridge.swift; sourceTree = ""; }; + 817499F6B220524F650005F03DD71B4A /* CDVURLProtocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVURLProtocol.h; sourceTree = ""; }; + 818851AD6AAAFD56B6C49CBB95831BD2 /* CDVInvokedUrlCommand.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CDVInvokedUrlCommand.m; sourceTree = ""; }; + 83BE6CA12E14393F4ABE5A03E7C4021A /* CAPApplicationDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPApplicationDelegateProxy.swift; path = Capacitor/Capacitor/CAPApplicationDelegateProxy.swift; sourceTree = ""; }; + 869C4EBBF812C9DF1DEC1E1C9A0414B6 /* CDVCommandDelegateImpl.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CDVCommandDelegateImpl.m; sourceTree = ""; }; + 878E6794B11C0E8DC0D0272E0075D3DA /* HttpRequestHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = HttpRequestHandler.swift; sourceTree = ""; }; + 8F944F7FF0C26D29173A8EF79812831C /* JS.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JS.swift; path = Capacitor/Capacitor/JS.swift; sourceTree = ""; }; + 939147BBA617256FB279F110F9DD2227 /* Pods-PluginTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PluginTests-Info.plist"; sourceTree = ""; }; + 95648C56D4E4ABD41EE8AF4CB2326B5B /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; name = PrivacyInfo.xcprivacy; path = CapacitorCordova/CapacitorCordova/PrivacyInfo.xcprivacy; sourceTree = ""; }; + 9B30FA46B72726BE8575E32C6D723774 /* CAPBridgedJSTypes.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CAPBridgedJSTypes.m; path = Capacitor/Capacitor/CAPBridgedJSTypes.m; sourceTree = ""; }; + 9BC36ADDFA38A3661389DDA825FE5083 /* NotificationRouter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NotificationRouter.swift; path = Capacitor/Capacitor/NotificationRouter.swift; sourceTree = ""; }; + 9BEB3F4052AFC1F272E8E569F38D99A8 /* Array+Capacitor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Array+Capacitor.swift"; path = "Capacitor/Capacitor/Array+Capacitor.swift"; sourceTree = ""; }; + 9D81585547EDB4B034BE2EA0D9D56208 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; name = PrivacyInfo.xcprivacy; path = Capacitor/Capacitor/PrivacyInfo.xcprivacy; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + A0D985C80C63BDFDA02B09FBDE5F6F5A /* Capacitor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Capacitor.h; path = Capacitor/Capacitor/Capacitor.h; sourceTree = ""; }; + A1E5822FC61F9421CF2456D453B75418 /* Pods-PluginTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-PluginTests-acknowledgements.markdown"; sourceTree = ""; }; + A43E09C2D3593E85EC9C672DACDC6B8E /* CAPInstanceDescriptor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CAPInstanceDescriptor.h; path = Capacitor/Capacitor/CAPInstanceDescriptor.h; sourceTree = ""; }; + AA4B6D6707D7C90A6A5A0F9BEBC93AAE /* CAPBridgeViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPBridgeViewController.swift; path = Capacitor/Capacitor/CAPBridgeViewController.swift; sourceTree = ""; }; + AB23217D412C120E51CE4FC5F03A3527 /* CapacitorCordova.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = CapacitorCordova.modulemap; path = CapacitorCordova/CapacitorCordova/CapacitorCordova.modulemap; sourceTree = ""; }; + AC328445EC3EA24D0B0319746270406C /* CapacitorHttp.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CapacitorHttp.swift; sourceTree = ""; }; + AD894B091F39A97912ACF4CFBC836D87 /* CAPInstanceConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPInstanceConfiguration.swift; path = Capacitor/Capacitor/CAPInstanceConfiguration.swift; sourceTree = ""; }; + B03A777C244FAEA1BE8CD3E9096CB41B /* CapacitorCordova.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = CapacitorCordova.release.xcconfig; sourceTree = ""; }; + B31007A810171D345EEC4FA0BCB21CEA /* NSDictionary+CordovaPreferences.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "NSDictionary+CordovaPreferences.m"; sourceTree = ""; }; + B5A2BC9A9C63563BFD519AB3CE4D5D9D /* Pods-Plugin-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Plugin-dummy.m"; sourceTree = ""; }; + B67934A6336DB96153F69F2885F7FE6A /* KeyValueStore.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyValueStore.swift; path = Capacitor/Capacitor/KeyValueStore.swift; sourceTree = ""; }; + B6ACD1E8895E541D2AAA00D1AA8A5366 /* CapacitorCordova.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = CapacitorCordova.debug.xcconfig; sourceTree = ""; }; + B6DA0364646B8DAC5AC1996CA4DB6D82 /* PluginConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PluginConfig.swift; path = Capacitor/Capacitor/PluginConfig.swift; sourceTree = ""; }; + BA5F5DAE2C5394EEE17B9029808226AC /* CAPPluginCall.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CAPPluginCall.m; path = Capacitor/Capacitor/CAPPluginCall.m; sourceTree = ""; }; + BA7554A812B86229C8EA5F6F81B321BC /* CDVScreenOrientationDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVScreenOrientationDelegate.h; sourceTree = ""; }; + BCF32033DAF5F1B50DB8C41C642EC0CB /* CAPPluginMethod.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CAPPluginMethod.h; path = Capacitor/Capacitor/CAPPluginMethod.h; sourceTree = ""; }; + C28B91C116136C7A64464B856666B322 /* CAPInstanceConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CAPInstanceConfiguration.h; path = Capacitor/Capacitor/CAPInstanceConfiguration.h; sourceTree = ""; }; + C6E3C256CDF6737FDBD363893A1A9631 /* Capacitor.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = Capacitor.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + C818B5D2E7E4FE4DB6A541C59C3F46A2 /* Pods-Plugin-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Plugin-acknowledgements.markdown"; sourceTree = ""; }; + C9870CDDCF99B18DB64FE413BD355A33 /* Capacitor-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Capacitor-dummy.m"; sourceTree = ""; }; + CE0E983F534D35114FB10F2860CF307A /* CDVWebViewProcessPoolFactory.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CDVWebViewProcessPoolFactory.m; sourceTree = ""; }; + CF80221FA9CE809EEE159B1AE2206780 /* CapacitorCordova-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "CapacitorCordova-Info.plist"; sourceTree = ""; }; + D16D9D7D1D75407542D70F279BE858C5 /* PluginCallResult.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PluginCallResult.swift; path = Capacitor/Capacitor/PluginCallResult.swift; sourceTree = ""; }; + D270CA36CCC04D75B45920C620AEAE72 /* Capacitor.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Capacitor.modulemap; sourceTree = ""; }; + D3913FC61666E5D3FD73A8767928B4A8 /* JSValueDecoder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = JSValueDecoder.swift; sourceTree = ""; }; + D500B14AFB8C0E709A9582A05B81F7EA /* CapacitorExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CapacitorExtension.swift; path = Capacitor/Capacitor/CapacitorExtension.swift; sourceTree = ""; }; + D585E1B9BF72861652A5256F71241D37 /* Capacitor.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Capacitor.release.xcconfig; sourceTree = ""; }; + D675757DBDED4F579C45B611BB53DAC9 /* CapacitorCordova.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = CapacitorCordova.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + D6A9D9102A6C05CE4B93BA2C13954FE9 /* Pods-PluginTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-PluginTests-frameworks.sh"; sourceTree = ""; }; + D73A20758871BEC6AB3CCAE68C74DBDA /* CAPLog.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPLog.swift; path = Capacitor/Capacitor/CAPLog.swift; sourceTree = ""; }; + D7539895D20B52CA8D5ADC3349621C52 /* DefaultPlugins.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = DefaultPlugins.m; sourceTree = ""; }; + D81BE104344112B7A5C9F3A53EDE99A7 /* JSExport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSExport.swift; path = Capacitor/Capacitor/JSExport.swift; sourceTree = ""; }; + DAA5DBF72380C5466DCBC107B7747A60 /* Pods-Plugin.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Plugin.debug.xcconfig"; sourceTree = ""; }; + DBBDB22A2818944BBF894475E81CFFE6 /* WKWebView+Capacitor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "WKWebView+Capacitor.swift"; path = "Capacitor/Capacitor/WKWebView+Capacitor.swift"; sourceTree = ""; }; + DBDA16FB77D8D59DEB32CCFE8105EE7B /* CDVInvokedUrlCommand.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVInvokedUrlCommand.h; sourceTree = ""; }; + DF1B07523853D822DC5BF0764E9EED19 /* Console.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Console.swift; sourceTree = ""; }; + E07B414D8F1B660835190464D21ABC10 /* JSValueEncoder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = JSValueEncoder.swift; sourceTree = ""; }; + E5B59AC595CB35EA245E9B30141E6924 /* Router.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Router.swift; path = Capacitor/Capacitor/Router.swift; sourceTree = ""; }; + E836D3E3290079E51DDCB96D8A095942 /* CDVPlugin.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CDVPlugin.m; sourceTree = ""; }; + E8950E00418A9BCE1D0E315A85B496FB /* Pods-PluginTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-PluginTests.modulemap"; sourceTree = ""; }; + E8B0050ADDF2B0F4CB17DE2B2B6DFC69 /* Capacitor-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Capacitor-prefix.pch"; sourceTree = ""; }; + E997E61FDD01E884BBF5AC59944653AB /* UIColor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIColor.swift; path = Capacitor/Capacitor/UIColor.swift; sourceTree = ""; }; + ECE23228C63C46F0C4EEBEB40A001646 /* CAPBridgedPlugin+getMethod.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CAPBridgedPlugin+getMethod.swift"; path = "Capacitor/Capacitor/CAPBridgedPlugin+getMethod.swift"; sourceTree = ""; }; + ECF24F4C1B1CD901AEC6C31DA750B980 /* CDVPluginManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CDVPluginManager.m; sourceTree = ""; }; + ED001DBFC4DFBFB5A051A6771A4BA01D /* Capacitor.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = Capacitor.modulemap; path = Capacitor/Capacitor/Capacitor.modulemap; sourceTree = ""; }; + ED48CB5BF6D421A9CDA0C959348D407C /* DocLinks.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DocLinks.swift; path = Capacitor/Capacitor/DocLinks.swift; sourceTree = ""; }; + EDB8C9ACBBD85B912C1048908BCC00F8 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.0.sdk/System/Library/Frameworks/WebKit.framework; sourceTree = DEVELOPER_DIR; }; + EFC7B9E1A25EB4AE22B2BFD76CE82545 /* CAPInstanceConfiguration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CAPInstanceConfiguration.m; path = Capacitor/Capacitor/CAPInstanceConfiguration.m; sourceTree = ""; }; + F1C958D69C29CFBBDC15C97C583F4B43 /* CAPPlugin.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CAPPlugin.m; path = Capacitor/Capacitor/CAPPlugin.m; sourceTree = ""; }; + F57C5B609F6096ECA1A3472EB9598349 /* CAPPlugin.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CAPPlugin.h; path = Capacitor/Capacitor/CAPPlugin.h; sourceTree = ""; }; + F58C13F718DDDF912C8D8F957ADC563C /* CDVCommandDelegateImpl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CDVCommandDelegateImpl.h; sourceTree = ""; }; + F7EA8211FDF54FE98FBAA044F3D7CEA0 /* CAPBridge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CAPBridge.swift; path = Capacitor/Capacitor/CAPBridge.swift; sourceTree = ""; }; + FAB754CF702177D045E75886784DDA40 /* NSDictionary+CordovaPreferences.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NSDictionary+CordovaPreferences.h"; sourceTree = ""; }; + FB1AFA939CECAB029934DBC1EAF88742 /* CapacitorCordova-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "CapacitorCordova-dummy.m"; sourceTree = ""; }; + FBD93D36D06B546B5015A4716941DCBB /* Pods-PluginTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-PluginTests-umbrella.h"; sourceTree = ""; }; + FE5DE9C8F410DA397F9857E73F8B90AF /* CDVConfigParser.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CDVConfigParser.m; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 137FD195E06C68002F8038D781EE1CE1 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 455CD8F7855CC7A4FF370977AF09419F /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 254647EE38576F1E6FE680A4D9BA22B3 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + E272C2D1FC899E2FA18FA93A496E09FE /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 99733E4961DE174D9B6CA2DA2212F8E3 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + C9181D44A46C8BCF730EAA4B90494821 /* Foundation.framework in Frameworks */, + 8FE65960A50DAB49D78947D1DD829A55 /* WebKit.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BE6852BD46B2A3BD6CE203149CED67C2 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 9ADD62FB5D9238F2908105EB91BB3959 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 0EC29E0DBDD1AA7F3CADB821A3286B96 /* Support Files */ = { + isa = PBXGroup; + children = ( + 14A79D65A53F0511F9911570922C1B93 /* CapacitorCordova.modulemap */, + FB1AFA939CECAB029934DBC1EAF88742 /* CapacitorCordova-dummy.m */, + CF80221FA9CE809EEE159B1AE2206780 /* CapacitorCordova-Info.plist */, + 17115ED7528F1A0B61F0C52409715CA2 /* CapacitorCordova-prefix.pch */, + B6ACD1E8895E541D2AAA00D1AA8A5366 /* CapacitorCordova.debug.xcconfig */, + B03A777C244FAEA1BE8CD3E9096CB41B /* CapacitorCordova.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../ios/Pods/Target Support Files/CapacitorCordova"; + sourceTree = ""; + }; + 1628BF05B4CAFDCC3549A101F5A10A17 /* Frameworks */ = { + isa = PBXGroup; + children = ( + D436BFCF28DC3F91BC057EA7A5D1DD60 /* iOS */, + ); + name = Frameworks; + sourceTree = ""; + }; + 21D8C95B1BEEF7A6D874CF3A60C0818A /* Plugins */ = { + isa = PBXGroup; + children = ( + 4983F575EC8224716E5A6D6B3C5C2085 /* CapacitorCookieManager.swift */, + 24EF261844A690BDF4EC68C25C7A5589 /* CapacitorCookies.swift */, + AC328445EC3EA24D0B0319746270406C /* CapacitorHttp.swift */, + 3DF6B2974AF73F4D12D28B80AC5F36F5 /* CapacitorUrlRequest.swift */, + DF1B07523853D822DC5BF0764E9EED19 /* Console.swift */, + D7539895D20B52CA8D5ADC3349621C52 /* DefaultPlugins.m */, + 878E6794B11C0E8DC0D0272E0075D3DA /* HttpRequestHandler.swift */, + 0EC12A44AF93A0F42A7D7934B956E924 /* WebView.swift */, + ); + name = Plugins; + path = Capacitor/Capacitor/Plugins; + sourceTree = ""; + }; + 740E12C899D56C459793F8D89BE2D003 /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + 8C0C94AB912114BEDD51A64682444E19 /* Pods-Plugin */, + F22F323547F39068C402A67FCA68E7C2 /* Pods-PluginTests */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + 8C0C94AB912114BEDD51A64682444E19 /* Pods-Plugin */ = { + isa = PBXGroup; + children = ( + 401B4870616B3D09347BE1F13F95D477 /* Pods-Plugin.modulemap */, + C818B5D2E7E4FE4DB6A541C59C3F46A2 /* Pods-Plugin-acknowledgements.markdown */, + 535AEEBA96B786E87F23F75310B8CB74 /* Pods-Plugin-acknowledgements.plist */, + B5A2BC9A9C63563BFD519AB3CE4D5D9D /* Pods-Plugin-dummy.m */, + 11DF9CA040CEBA3928A7F34FB4928E2C /* Pods-Plugin-Info.plist */, + 7EFD241FB11A4273E5C38133FF35CF7D /* Pods-Plugin-umbrella.h */, + DAA5DBF72380C5466DCBC107B7747A60 /* Pods-Plugin.debug.xcconfig */, + 6F1715C2DEF7461A3964E29A0FCB6D3D /* Pods-Plugin.release.xcconfig */, + ); + name = "Pods-Plugin"; + path = "Target Support Files/Pods-Plugin"; + sourceTree = ""; + }; + 8D9964217F2EEB12752C3B7E09079D20 /* Pod */ = { + isa = PBXGroup; + children = ( + ED001DBFC4DFBFB5A051A6771A4BA01D /* Capacitor.modulemap */, + C6E3C256CDF6737FDBD363893A1A9631 /* Capacitor.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + A4E15BAF88F61EBE5480D5FC881F9152 /* Classes */ = { + isa = PBXGroup; + children = ( + B83E6620F8659B77710988289B2666DC /* Public */, + ); + name = Classes; + path = CapacitorCordova/CapacitorCordova/Classes; + sourceTree = ""; + }; + B4641ABF5ECED9CF77DF2100CD120734 /* Codable */ = { + isa = PBXGroup; + children = ( + D3913FC61666E5D3FD73A8767928B4A8 /* JSValueDecoder.swift */, + E07B414D8F1B660835190464D21ABC10 /* JSValueEncoder.swift */, + ); + name = Codable; + path = Capacitor/Capacitor/Codable; + sourceTree = ""; + }; + B479BBBCE5EE0CCF5B51E4DCA1CC2197 /* Products */ = { + isa = PBXGroup; + children = ( + 44D6062E8C618EC2B8F1D7229E8AD501 /* Capacitor */, + 1ABFDA3391AEBA42EFB0FEBF824A6E34 /* CapacitorCordova */, + 4B7B23985828F9D35ECCA1361A486792 /* Pods-Plugin */, + 58DEAF78291AAC1E83073B9084B45542 /* Pods-PluginTests */, + ); + name = Products; + sourceTree = ""; + }; + B80D21DD6B0715BE70978B3A57B6D882 /* assets */ = { + isa = PBXGroup; + children = ( + 3CFD655E5956A08005DD5AA421862B8B /* native-bridge.js */, + ); + name = assets; + path = Capacitor/Capacitor/assets; + sourceTree = ""; + }; + B83E6620F8659B77710988289B2666DC /* Public */ = { + isa = PBXGroup; + children = ( + 6ECB88325A202355935E8868FC704161 /* AppDelegate.h */, + 0105DDBA94BC8BCB737759E84AAE7208 /* AppDelegate.m */, + 5A35816AF163353BBA815B674518D5CC /* CDV.h */, + 563A77979ACFFB84A79E21335EB145D7 /* CDVAvailability.h */, + 493CF8B368FE667CC972900CC186E9C5 /* CDVCommandDelegate.h */, + F58C13F718DDDF912C8D8F957ADC563C /* CDVCommandDelegateImpl.h */, + 869C4EBBF812C9DF1DEC1E1C9A0414B6 /* CDVCommandDelegateImpl.m */, + 7660E6814B15B929A0F9F717B3D7AC68 /* CDVConfigParser.h */, + FE5DE9C8F410DA397F9857E73F8B90AF /* CDVConfigParser.m */, + DBDA16FB77D8D59DEB32CCFE8105EE7B /* CDVInvokedUrlCommand.h */, + 818851AD6AAAFD56B6C49CBB95831BD2 /* CDVInvokedUrlCommand.m */, + 0249BF2B4AD076B27532089B9CC0180D /* CDVPlugin.h */, + E836D3E3290079E51DDCB96D8A095942 /* CDVPlugin.m */, + 5D4E33F09D7E6EA708A393DCA9D6AFB9 /* CDVPlugin+Resources.h */, + 59D5E4DFE1C5C24A08DE24200E2D13A5 /* CDVPlugin+Resources.m */, + 77A1EAF35490B5AFF5FAAD95EB018E41 /* CDVPluginManager.h */, + ECF24F4C1B1CD901AEC6C31DA750B980 /* CDVPluginManager.m */, + 17715AB9228EA6E1D4F012B0CCEB33F5 /* CDVPluginResult.h */, + 4521DB3AF260E2133CBD36522DB7BA75 /* CDVPluginResult.m */, + BA7554A812B86229C8EA5F6F81B321BC /* CDVScreenOrientationDelegate.h */, + 817499F6B220524F650005F03DD71B4A /* CDVURLProtocol.h */, + 63CA49B9FEB6B4E88D6C824BE745A921 /* CDVURLProtocol.m */, + 2A1612702E201BE0983D534A6F9D071A /* CDVViewController.h */, + 3732370A43B40B615A6E2E0FA72E51C3 /* CDVViewController.m */, + 17AE58CD1ADD07DD9FEA88931D0F5D22 /* CDVWebViewProcessPoolFactory.h */, + CE0E983F534D35114FB10F2860CF307A /* CDVWebViewProcessPoolFactory.m */, + FAB754CF702177D045E75886784DDA40 /* NSDictionary+CordovaPreferences.h */, + B31007A810171D345EEC4FA0BCB21CEA /* NSDictionary+CordovaPreferences.m */, + ); + name = Public; + path = Public; + sourceTree = ""; + }; + C1BCDB7772E00B6E96DD04DCB861C56A /* Pod */ = { + isa = PBXGroup; + children = ( + AB23217D412C120E51CE4FC5F03A3527 /* CapacitorCordova.modulemap */, + D675757DBDED4F579C45B611BB53DAC9 /* CapacitorCordova.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + C2E0EED2785D3E2AE9B50BEA84028A28 /* Capacitor */ = { + isa = PBXGroup; + children = ( + 605CC094F300E6D3154759CD45B6FE93 /* AppUUID.swift */, + 9BEB3F4052AFC1F272E8E569F38D99A8 /* Array+Capacitor.swift */, + A0D985C80C63BDFDA02B09FBDE5F6F5A /* Capacitor.h */, + 80EC617BCD4EA95F9AAC9AB3CAA3B8E1 /* CapacitorBridge.swift */, + D500B14AFB8C0E709A9582A05B81F7EA /* CapacitorExtension.swift */, + 83BE6CA12E14393F4ABE5A03E7C4021A /* CAPApplicationDelegateProxy.swift */, + F7EA8211FDF54FE98FBAA044F3D7CEA0 /* CAPBridge.swift */, + 361CCAC6BE339CADD7B79EFF50187FBE /* CAPBridgeDelegate.swift */, + 034E099A6F68B36A4512A9AEB01F41C6 /* CAPBridgedJSTypes.h */, + 9B30FA46B72726BE8575E32C6D723774 /* CAPBridgedJSTypes.m */, + 1B26A9DFA84BEC3CE4BCC5439C97FEB5 /* CAPBridgedPlugin.h */, + ECE23228C63C46F0C4EEBEB40A001646 /* CAPBridgedPlugin+getMethod.swift */, + 4482B770B243ABA1FB534B9EF3183997 /* CAPBridgeProtocol.swift */, + AA4B6D6707D7C90A6A5A0F9BEBC93AAE /* CAPBridgeViewController.swift */, + 11E4D3210F27C4592CE89FEB3DBAE96A /* CAPBridgeViewController+CDVScreenOrientationDelegate.h */, + 4C006AC3D0821275FCF555E6E934B840 /* CAPBridgeViewController+CDVScreenOrientationDelegate.m */, + 100A2F7039C5EC78463F4B6D919C0027 /* CAPFile.swift */, + C28B91C116136C7A64464B856666B322 /* CAPInstanceConfiguration.h */, + EFC7B9E1A25EB4AE22B2BFD76CE82545 /* CAPInstanceConfiguration.m */, + AD894B091F39A97912ACF4CFBC836D87 /* CAPInstanceConfiguration.swift */, + A43E09C2D3593E85EC9C672DACDC6B8E /* CAPInstanceDescriptor.h */, + 1D3A58AC532D2AA4F4ED2A1732DB89F4 /* CAPInstanceDescriptor.m */, + 548629F623A47EB37EE3410159EA22AF /* CAPInstanceDescriptor.swift */, + 649B5A19BF47F4CDA5DCCFF2C64B57EA /* CAPInstancePlugin.swift */, + D73A20758871BEC6AB3CCAE68C74DBDA /* CAPLog.swift */, + 7E0E0F34AC2147857612A52C22DC6AD2 /* CAPNotifications.swift */, + F57C5B609F6096ECA1A3472EB9598349 /* CAPPlugin.h */, + F1C958D69C29CFBBDC15C97C583F4B43 /* CAPPlugin.m */, + 4197ED0A91C1D7947BA5FBB380806250 /* CAPPlugin+LoadInstance.swift */, + 05FEE9BE906E5FD3A2023A19D663CC35 /* CAPPluginCall.h */, + BA5F5DAE2C5394EEE17B9029808226AC /* CAPPluginCall.m */, + 6015C26B0D7D81331053C8F88F8DDC33 /* CAPPluginCall.swift */, + BCF32033DAF5F1B50DB8C41C642EC0CB /* CAPPluginMethod.h */, + 1A5E6150D9FC87A26CC0986391626019 /* CAPPluginMethod.m */, + 5985DDA358070FD5E8E0924F7B21993B /* Data+Capacitor.swift */, + ED48CB5BF6D421A9CDA0C959348D407C /* DocLinks.swift */, + 8F944F7FF0C26D29173A8EF79812831C /* JS.swift */, + D81BE104344112B7A5C9F3A53EDE99A7 /* JSExport.swift */, + 529064D5D9025BE6A79DE45A25CF473C /* JSTypes.swift */, + 3B9E8896A248D0A3B628BE972B7A4486 /* KeyPath.swift */, + B67934A6336DB96153F69F2885F7FE6A /* KeyValueStore.swift */, + 2F11C8BC6D3CB7B817842AA9AFAC48F4 /* NotificationHandlerProtocol.swift */, + 9BC36ADDFA38A3661389DDA825FE5083 /* NotificationRouter.swift */, + D16D9D7D1D75407542D70F279BE858C5 /* PluginCallResult.swift */, + B6DA0364646B8DAC5AC1996CA4DB6D82 /* PluginConfig.swift */, + 9D81585547EDB4B034BE2EA0D9D56208 /* PrivacyInfo.xcprivacy */, + E5B59AC595CB35EA245E9B30141E6924 /* Router.swift */, + 058355C86F3D67F2B6321DC4E1FC10A1 /* TmpViewController.swift */, + E997E61FDD01E884BBF5AC59944653AB /* UIColor.swift */, + 3763CB8B63738A487F25B9D159EDF8DE /* UIStatusBarManager+CAPHandleTapAction.m */, + 467FCC173510CF0FC276F6532D770907 /* WebViewAssetHandler.swift */, + 512101D8B0690EC4264E4026595E6C09 /* WebViewDelegationHandler.swift */, + 5E899B1AC03689EDAC12449B726FB334 /* WKWebView+Capacitor.m */, + DBBDB22A2818944BBF894475E81CFFE6 /* WKWebView+Capacitor.swift */, + B80D21DD6B0715BE70978B3A57B6D882 /* assets */, + B4641ABF5ECED9CF77DF2100CD120734 /* Codable */, + 21D8C95B1BEEF7A6D874CF3A60C0818A /* Plugins */, + 8D9964217F2EEB12752C3B7E09079D20 /* Pod */, + EEDD3C1FCC1C3B500A707B1DEE6A16D1 /* Support Files */, + ); + name = Capacitor; + path = "../../node_modules/@capacitor/ios"; + sourceTree = ""; + }; + CF1408CF629C7361332E53B88F7BD30C = { + isa = PBXGroup; + children = ( + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, + FBC934EFED6A2BB758D83B692683C295 /* Development Pods */, + 1628BF05B4CAFDCC3549A101F5A10A17 /* Frameworks */, + B479BBBCE5EE0CCF5B51E4DCA1CC2197 /* Products */, + 740E12C899D56C459793F8D89BE2D003 /* Targets Support Files */, + ); + sourceTree = ""; + }; + D436BFCF28DC3F91BC057EA7A5D1DD60 /* iOS */ = { + isa = PBXGroup; + children = ( + 6CA66746F86BE55810CFE7AD03678EED /* Foundation.framework */, + EDB8C9ACBBD85B912C1048908BCC00F8 /* WebKit.framework */, + ); + name = iOS; + sourceTree = ""; + }; + DA9DD59DAD49D440C669BDA0491F4FDC /* CapacitorCordova */ = { + isa = PBXGroup; + children = ( + 703752F658D442F244EA452FB74965B3 /* CapacitorCordova.h */, + 95648C56D4E4ABD41EE8AF4CB2326B5B /* PrivacyInfo.xcprivacy */, + A4E15BAF88F61EBE5480D5FC881F9152 /* Classes */, + C1BCDB7772E00B6E96DD04DCB861C56A /* Pod */, + 0EC29E0DBDD1AA7F3CADB821A3286B96 /* Support Files */, + ); + name = CapacitorCordova; + path = "../../node_modules/@capacitor/ios"; + sourceTree = ""; + }; + EEDD3C1FCC1C3B500A707B1DEE6A16D1 /* Support Files */ = { + isa = PBXGroup; + children = ( + D270CA36CCC04D75B45920C620AEAE72 /* Capacitor.modulemap */, + C9870CDDCF99B18DB64FE413BD355A33 /* Capacitor-dummy.m */, + 2016A734CA851674602290F66A762B63 /* Capacitor-Info.plist */, + E8B0050ADDF2B0F4CB17DE2B2B6DFC69 /* Capacitor-prefix.pch */, + 50F35474E793D3079F51A1423D50322D /* Capacitor.debug.xcconfig */, + D585E1B9BF72861652A5256F71241D37 /* Capacitor.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../ios/Pods/Target Support Files/Capacitor"; + sourceTree = ""; + }; + F22F323547F39068C402A67FCA68E7C2 /* Pods-PluginTests */ = { + isa = PBXGroup; + children = ( + E8950E00418A9BCE1D0E315A85B496FB /* Pods-PluginTests.modulemap */, + A1E5822FC61F9421CF2456D453B75418 /* Pods-PluginTests-acknowledgements.markdown */, + 45AEE2D3BD43D61882B01AAE2B8F11E4 /* Pods-PluginTests-acknowledgements.plist */, + 7E74390F09A29D254E98C5610DDD5A28 /* Pods-PluginTests-dummy.m */, + D6A9D9102A6C05CE4B93BA2C13954FE9 /* Pods-PluginTests-frameworks.sh */, + 939147BBA617256FB279F110F9DD2227 /* Pods-PluginTests-Info.plist */, + FBD93D36D06B546B5015A4716941DCBB /* Pods-PluginTests-umbrella.h */, + 47F881CAB117FE10E92963EF6CC91861 /* Pods-PluginTests.debug.xcconfig */, + 7D967D566F7C3FD1B78180239E63BC92 /* Pods-PluginTests.release.xcconfig */, + ); + name = "Pods-PluginTests"; + path = "Target Support Files/Pods-PluginTests"; + sourceTree = ""; + }; + FBC934EFED6A2BB758D83B692683C295 /* Development Pods */ = { + isa = PBXGroup; + children = ( + C2E0EED2785D3E2AE9B50BEA84028A28 /* Capacitor */, + DA9DD59DAD49D440C669BDA0491F4FDC /* CapacitorCordova */, + ); + name = "Development Pods"; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 0ED80981ABA8375CD1BEFA19CF254C0B /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 52D57F9B1D5180EF81CB354EFDE39C0B /* Pods-PluginTests-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 1AA5471D29DB2FE0A5F2DCBC0801102F /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 926BF4474C23361F1CBB6972C18294C7 /* Capacitor.h in Headers */, + 3AD12CA3257D333D693EF402B0D37050 /* CAPBridgedJSTypes.h in Headers */, + D6CD38508B1A1BA95FE5DDD0D475C48F /* CAPBridgedPlugin.h in Headers */, + 4AC0806A2014559389ED0D5F5864898F /* CAPBridgeViewController+CDVScreenOrientationDelegate.h in Headers */, + CFD73DDF6ECC44D5319C1C3220DDE419 /* CAPInstanceConfiguration.h in Headers */, + 55EFE2AD906557A4B67F8121371C3A73 /* CAPInstanceDescriptor.h in Headers */, + BB87CDD8BC95A41CC36A5F310531447D /* CAPPlugin.h in Headers */, + 148484B94011D20A3216BC1BA9BD0BC1 /* CAPPluginCall.h in Headers */, + 7AA91E8502C6B20AA53707E2C588976E /* CAPPluginMethod.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DD7A5A1E9F26482BB0BF7730B0064DA0 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + D6269E73CDF8361E771B00BA95B326A3 /* Pods-Plugin-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FC92A16E590D28F38BDC31354D987585 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 5271648081A40D55671BA56FBC8D43CE /* AppDelegate.h in Headers */, + 75FED7AF2279400A5BF6C3862FB9355F /* CapacitorCordova.h in Headers */, + F75957FA306C694CA84137ECFC16A133 /* CDV.h in Headers */, + 1B15596AD72235D0A9E68C338FED5894 /* CDVAvailability.h in Headers */, + B3AA855A84675E936255A71AD4DB9B23 /* CDVCommandDelegate.h in Headers */, + 877AAFE43D8767C5A9277971E95289D4 /* CDVCommandDelegateImpl.h in Headers */, + 8D649A3F9FFE8B6B7D6DB866677CFE97 /* CDVConfigParser.h in Headers */, + 69F1FB75650D41026C8AB7D4DC6B5EF5 /* CDVInvokedUrlCommand.h in Headers */, + F34725C8044DAAA071D2B2687BCF9861 /* CDVPlugin.h in Headers */, + EACC53C924CC079B4D4EB4B2A729F01D /* CDVPlugin+Resources.h in Headers */, + 300BB1816FB64B3DFE3505C61DABC8A0 /* CDVPluginManager.h in Headers */, + 2D6D1E1EFD2949E677434B3B469C88E8 /* CDVPluginResult.h in Headers */, + 176129582238765CAF813BB1E7AB7205 /* CDVScreenOrientationDelegate.h in Headers */, + 2E593F392039A254C0CDD3989DEE41D7 /* CDVURLProtocol.h in Headers */, + 5D25C6861DDE1676A36EAE28ADEFEB7E /* CDVViewController.h in Headers */, + E9B95392857E466198E2FFD234092B93 /* CDVWebViewProcessPoolFactory.h in Headers */, + 83C85B8084B10C07A2915FC96D7464E7 /* NSDictionary+CordovaPreferences.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 0ECF3D6BFCC08377AE23B027EE1D4371 /* Capacitor */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1358F1177FC46BA6C6E04FEEDC769D46 /* Build configuration list for PBXNativeTarget "Capacitor" */; + buildPhases = ( + 1AA5471D29DB2FE0A5F2DCBC0801102F /* Headers */, + BD74089860BEE17CEAFA4ABDD9E77167 /* Sources */, + 137FD195E06C68002F8038D781EE1CE1 /* Frameworks */, + 0839094697C7E32ACFB8CF80AD7D0194 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 9E62A31C4822D4E40EDECF67F80B6206 /* PBXTargetDependency */, + ); + name = Capacitor; + productName = Capacitor; + productReference = 44D6062E8C618EC2B8F1D7229E8AD501 /* Capacitor */; + productType = "com.apple.product-type.framework"; + }; + 10467BF5021453A5297325418ACC4E64 /* Pods-Plugin */ = { + isa = PBXNativeTarget; + buildConfigurationList = 5AB1AD12B001DCFA4D2BB403DD59571F /* Build configuration list for PBXNativeTarget "Pods-Plugin" */; + buildPhases = ( + DD7A5A1E9F26482BB0BF7730B0064DA0 /* Headers */, + 23FE8FB584585CCC7A99F0276308F2CE /* Sources */, + BE6852BD46B2A3BD6CE203149CED67C2 /* Frameworks */, + 485311AE53DA94650A43707370941295 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 547D4E94BECE254D556F5E6D7B9400DD /* PBXTargetDependency */, + 8AEB5906FE8EC93140ED2E305C9D3F42 /* PBXTargetDependency */, + ); + name = "Pods-Plugin"; + productName = Pods_Plugin; + productReference = 4B7B23985828F9D35ECCA1361A486792 /* Pods-Plugin */; + productType = "com.apple.product-type.framework"; + }; + 400AE44335852A2D8D746557E21E8EB0 /* CapacitorCordova */ = { + isa = PBXNativeTarget; + buildConfigurationList = BAEF5ED26067BEC37C548BF989EA8FB7 /* Build configuration list for PBXNativeTarget "CapacitorCordova" */; + buildPhases = ( + FC92A16E590D28F38BDC31354D987585 /* Headers */, + E16C7EF01B79DA307ECD59FF453B0DE7 /* Sources */, + 99733E4961DE174D9B6CA2DA2212F8E3 /* Frameworks */, + D8F27D50E94C12413DBA741023DE9C90 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = CapacitorCordova; + productName = Cordova; + productReference = 1ABFDA3391AEBA42EFB0FEBF824A6E34 /* CapacitorCordova */; + productType = "com.apple.product-type.framework"; + }; + 401C34F4B17A319A7086C93431C92B42 /* Pods-PluginTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 622B3E98A1E093A71E2EFCAD99AA4D8F /* Build configuration list for PBXNativeTarget "Pods-PluginTests" */; + buildPhases = ( + 0ED80981ABA8375CD1BEFA19CF254C0B /* Headers */, + EDE5DFE7A4ABFE1CD401D85AC5128A82 /* Sources */, + 254647EE38576F1E6FE680A4D9BA22B3 /* Frameworks */, + 23C6CC87A4B5FCEE9CEF4367F24E5212 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 2F1424774B5689372E63284132F95D84 /* PBXTargetDependency */, + D64FEDAAA12672112B61EAAE71F05328 /* PBXTargetDependency */, + ); + name = "Pods-PluginTests"; + productName = Pods_PluginTests; + productReference = 58DEAF78291AAC1E83073B9084B45542 /* Pods-PluginTests */; + productType = "com.apple.product-type.framework"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + BFDFE7DC352907FC980B868725387E98 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1600; + LastUpgradeCheck = 1600; + }; + buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; + compatibilityVersion = "Xcode 8.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + Base, + en, + ); + mainGroup = CF1408CF629C7361332E53B88F7BD30C; + minimizedProjectReferenceProxies = 0; + preferredProjectObjectVersion = 77; + productRefGroup = B479BBBCE5EE0CCF5B51E4DCA1CC2197 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 0ECF3D6BFCC08377AE23B027EE1D4371 /* Capacitor */, + 400AE44335852A2D8D746557E21E8EB0 /* CapacitorCordova */, + 10467BF5021453A5297325418ACC4E64 /* Pods-Plugin */, + 401C34F4B17A319A7086C93431C92B42 /* Pods-PluginTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 0839094697C7E32ACFB8CF80AD7D0194 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 9C1F9C1B8E5BA5A84502172BCFE12B5E /* native-bridge.js in Resources */, + B2E9029E480D0080EC6E60289094AB72 /* PrivacyInfo.xcprivacy in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 23C6CC87A4B5FCEE9CEF4367F24E5212 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 485311AE53DA94650A43707370941295 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D8F27D50E94C12413DBA741023DE9C90 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 00DD49AAA7B7FBACB25F3DCA70FF2185 /* PrivacyInfo.xcprivacy in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 23FE8FB584585CCC7A99F0276308F2CE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 0499127BAC8542710DA405AF0FFE94A3 /* Pods-Plugin-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BD74089860BEE17CEAFA4ABDD9E77167 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + AF417F0017CAB8D4750C6DA49603D1F9 /* AppUUID.swift in Sources */, + 57F75BCC4364106AEDA3D57862A0A027 /* Array+Capacitor.swift in Sources */, + 9AF55497FBDEDD5F7A73314595DCE8CA /* Capacitor-dummy.m in Sources */, + 6DA5EDEC3ED099DD0674F0887286C372 /* CapacitorBridge.swift in Sources */, + 4C6B5F2E9DA93A4D34CD6D193EAFAECB /* CapacitorCookieManager.swift in Sources */, + 5D7E32867181BC87F7B54D0022B143C2 /* CapacitorCookies.swift in Sources */, + 2F5A978C43E03ACC771F8BA4A4EFC8C3 /* CapacitorExtension.swift in Sources */, + 0C58F0348A989679220D52A7968B65AD /* CapacitorHttp.swift in Sources */, + B792996B7760D781528A1C763063A368 /* CapacitorUrlRequest.swift in Sources */, + 3FAA1B6C5055BD2E04059B17765662FE /* CAPApplicationDelegateProxy.swift in Sources */, + EB99E1BE46CB187B91736F39E3ED08BB /* CAPBridge.swift in Sources */, + C70B7BAFB1CC9CB3BDE81CD032F7E8C0 /* CAPBridgeDelegate.swift in Sources */, + BF6B68F1184491A2448C7FBB4B5133C6 /* CAPBridgedJSTypes.m in Sources */, + 3B90DE2EBCB83B06B8DD720EC3162314 /* CAPBridgedPlugin+getMethod.swift in Sources */, + 0CAF5AA5DFABA1AFBAFC9006FA117868 /* CAPBridgeProtocol.swift in Sources */, + 4DCBD5692A9842C29E2237EBF131565C /* CAPBridgeViewController.swift in Sources */, + AFB76EBA404290D774F5D2B7500F8D26 /* CAPBridgeViewController+CDVScreenOrientationDelegate.m in Sources */, + 6436FD5818142CE6C011F59096CB5126 /* CAPFile.swift in Sources */, + 97AED5E6D515157B9A0DAEC0DD412BED /* CAPInstanceConfiguration.m in Sources */, + 72F1392053F0629A4CDABC370C13BC6E /* CAPInstanceConfiguration.swift in Sources */, + F2CB5F2716E2A29BBD97D0E536D2EC4E /* CAPInstanceDescriptor.m in Sources */, + 21538F9E86EC068189BF4A052B2BC138 /* CAPInstanceDescriptor.swift in Sources */, + 34DF23D0F78E37B2C73491A0A882750C /* CAPInstancePlugin.swift in Sources */, + F62743280115D52A54566D7AFF46A271 /* CAPLog.swift in Sources */, + 0CDC3D7F98C3CAD813E6B7CD9A86904A /* CAPNotifications.swift in Sources */, + 397E4837F8D249FCF827C9B45804EF45 /* CAPPlugin.m in Sources */, + 98DF94563B6A5901AA43E27520CD78F0 /* CAPPlugin+LoadInstance.swift in Sources */, + 1045EACE8E8B629DC92734306767FFB4 /* CAPPluginCall.m in Sources */, + EF77B5C312518AF79A588746882D93CE /* CAPPluginCall.swift in Sources */, + 461E7273DE46D278F1194EA42888CCC7 /* CAPPluginMethod.m in Sources */, + 8C9938F35EF9682762937A36EBCF0D8C /* Console.swift in Sources */, + 4CC2C15BF2EACE8730ACEEC3166E4E6E /* Data+Capacitor.swift in Sources */, + 45D2423AA78EB59FAB2F0BDD0B1E75C5 /* DefaultPlugins.m in Sources */, + 8F1B2EB11C7A2369929B4E71D0ED1EAD /* DocLinks.swift in Sources */, + A7F57A930C06BAB6B840BDEAA9781B09 /* HttpRequestHandler.swift in Sources */, + CFAEC4AE503B12B7769D5B6558D46D9B /* JS.swift in Sources */, + B3212C5BA6214ADED01CB29F9800D649 /* JSExport.swift in Sources */, + 75C6F32607D77EDEE605063D70641A82 /* JSTypes.swift in Sources */, + C76B932E7394525172D7D6151E1E8C85 /* JSValueDecoder.swift in Sources */, + 2EE90CB8CD51A9D111E674C30CA6713F /* JSValueEncoder.swift in Sources */, + 5B2897352536D64DA610740A510672E9 /* KeyPath.swift in Sources */, + 57CED43B0677CB39026183C4DE28D266 /* KeyValueStore.swift in Sources */, + 5ADB39382AF2A449748E390C77797E83 /* NotificationHandlerProtocol.swift in Sources */, + AE866E6014CB92EEFB702EAA6B26DA69 /* NotificationRouter.swift in Sources */, + 2745795601B95C8ADCD9CD944EA64816 /* PluginCallResult.swift in Sources */, + 4CA1078205A5A8CD35CFFD2F3E3726DB /* PluginConfig.swift in Sources */, + 8FB38FB7DAEF8175DC26FBF29EF794B3 /* Router.swift in Sources */, + 2EF78801E23385A00A7FED52738C450F /* TmpViewController.swift in Sources */, + 8ADBB5DB517A52E496244D7F3C61993A /* UIColor.swift in Sources */, + ED227CB506888616381FB4867D221B3A /* UIStatusBarManager+CAPHandleTapAction.m in Sources */, + F30492DC285ED1AD4470173A3AB2C196 /* WebView.swift in Sources */, + 66C1BEA5070DA09154CACF1C82386C24 /* WebViewAssetHandler.swift in Sources */, + 8CCB724976529DED0CCB88A368B98DBB /* WebViewDelegationHandler.swift in Sources */, + 00E3AC2042D078DEA544CAA6CD4180A8 /* WKWebView+Capacitor.m in Sources */, + EA83A79FF1DD9CFD564539EBE85A4075 /* WKWebView+Capacitor.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E16C7EF01B79DA307ECD59FF453B0DE7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DAEA37C2E0F7D2B3AE9398A8FEC46341 /* AppDelegate.m in Sources */, + E30ECF193303AD72B7F96836A36BEB45 /* CapacitorCordova-dummy.m in Sources */, + 4D6F8880738509BA1E553595FEB47F95 /* CDVCommandDelegateImpl.m in Sources */, + DC1825A1FB35A20419A2A0CD5FBA84C9 /* CDVConfigParser.m in Sources */, + 85F009269489F186F56C821D384F083F /* CDVInvokedUrlCommand.m in Sources */, + F226824369CCC866568DC74B5ED7BD35 /* CDVPlugin.m in Sources */, + 027FC9F6CE661B44DE8435A77C6FDA4B /* CDVPlugin+Resources.m in Sources */, + 76CB6E36ED7444EF01E0CF68D963977B /* CDVPluginManager.m in Sources */, + FBE6F2054283082FBFB0F4DB9E751E90 /* CDVPluginResult.m in Sources */, + F2273535879477B590B87264FF4B0B4A /* CDVURLProtocol.m in Sources */, + AE3F0F5552793D35078BC7ED891FAD7A /* CDVViewController.m in Sources */, + 7CE9D62121171BA6C313FBAAC145250C /* CDVWebViewProcessPoolFactory.m in Sources */, + 29AD4AFDB1051F7091DFB08B64CD7EFB /* NSDictionary+CordovaPreferences.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + EDE5DFE7A4ABFE1CD401D85AC5128A82 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1E4541F5947B0911BB3D0A3E2B4FCFD1 /* Pods-PluginTests-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 2F1424774B5689372E63284132F95D84 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Capacitor; + target = 0ECF3D6BFCC08377AE23B027EE1D4371 /* Capacitor */; + targetProxy = 6DF20DB01C9B457730A36CA25BA09463 /* PBXContainerItemProxy */; + }; + 547D4E94BECE254D556F5E6D7B9400DD /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Capacitor; + target = 0ECF3D6BFCC08377AE23B027EE1D4371 /* Capacitor */; + targetProxy = 3FE83C1640CBE5C0D9BA0420819B5E5F /* PBXContainerItemProxy */; + }; + 8AEB5906FE8EC93140ED2E305C9D3F42 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = CapacitorCordova; + target = 400AE44335852A2D8D746557E21E8EB0 /* CapacitorCordova */; + targetProxy = BAEF81288EED2D4A7CE700D573E39499 /* PBXContainerItemProxy */; + }; + 9E62A31C4822D4E40EDECF67F80B6206 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = CapacitorCordova; + target = 400AE44335852A2D8D746557E21E8EB0 /* CapacitorCordova */; + targetProxy = 127DC55B609A0305F67450805B0C7094 /* PBXContainerItemProxy */; + }; + D64FEDAAA12672112B61EAAE71F05328 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = CapacitorCordova; + target = 400AE44335852A2D8D746557E21E8EB0 /* CapacitorCordova */; + targetProxy = 845C3BC277EA5C1FE432A56E456ABCFB /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 39159D1FF19276FCA6607E8B102E55A9 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 47F881CAB117FE10E92963EF6CC91861 /* Pods-PluginTests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + INFOPLIST_FILE = "Target Support Files/Pods-PluginTests/Pods-PluginTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-PluginTests/Pods-PluginTests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 3B8567A02FDBA9BEDC3D56BA717BF22A /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F1715C2DEF7461A3964E29A0FCB6D3D /* Pods-Plugin.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + INFOPLIST_FILE = "Target Support Files/Pods-Plugin/Pods-Plugin-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Plugin/Pods-Plugin.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 711B95E68E87459E7C7B93FF45435940 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = DAA5DBF72380C5466DCBC107B7747A60 /* Pods-Plugin.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + INFOPLIST_FILE = "Target Support Files/Pods-Plugin/Pods-Plugin-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Plugin/Pods-Plugin.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 760F0D17D3F25A5926F2265CAA85E8DA /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D585E1B9BF72861652A5256F71241D37 /* Capacitor.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_PREFIX_HEADER = "Target Support Files/Capacitor/Capacitor-prefix.pch"; + GENERATE_INFOPLIST_FILE = NO; + INFOPLIST_FILE = "Target Support Files/Capacitor/Capacitor-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Capacitor/Capacitor.modulemap"; + PRODUCT_MODULE_NAME = Capacitor; + PRODUCT_NAME = Capacitor; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_INSTALL_OBJC_HEADER = YES; + SWIFT_VERSION = 5.1; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 7FDCD1C0E22644411D5AE10DC842F275 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = B6ACD1E8895E541D2AAA00D1AA8A5366 /* CapacitorCordova.debug.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_PREFIX_HEADER = "Target Support Files/CapacitorCordova/CapacitorCordova-prefix.pch"; + GENERATE_INFOPLIST_FILE = NO; + INFOPLIST_FILE = "Target Support Files/CapacitorCordova/CapacitorCordova-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/CapacitorCordova/CapacitorCordova.modulemap"; + PRODUCT_MODULE_NAME = Cordova; + PRODUCT_NAME = Cordova; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_INSTALL_OBJC_HEADER = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 8DE5143C03248BB6CD542DE3963D6F3A /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Debug; + }; + 9E406C6AAF85E580207CD97B0044DEAB /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_RELEASE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Release; + }; + D1A0DA2BC08F5B6E8725FB8C32B26B7D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7D967D566F7C3FD1B78180239E63BC92 /* Pods-PluginTests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + INFOPLIST_FILE = "Target Support Files/Pods-PluginTests/Pods-PluginTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-PluginTests/Pods-PluginTests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + D2E948D57242CB5836BEFF56D00C998A /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 50F35474E793D3079F51A1423D50322D /* Capacitor.debug.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_PREFIX_HEADER = "Target Support Files/Capacitor/Capacitor-prefix.pch"; + GENERATE_INFOPLIST_FILE = NO; + INFOPLIST_FILE = "Target Support Files/Capacitor/Capacitor-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Capacitor/Capacitor.modulemap"; + PRODUCT_MODULE_NAME = Capacitor; + PRODUCT_NAME = Capacitor; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_INSTALL_OBJC_HEADER = YES; + SWIFT_VERSION = 5.1; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + EC05AB339819544C9AF02DF578CCD4FA /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = B03A777C244FAEA1BE8CD3E9096CB41B /* CapacitorCordova.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_PREFIX_HEADER = "Target Support Files/CapacitorCordova/CapacitorCordova-prefix.pch"; + GENERATE_INFOPLIST_FILE = NO; + INFOPLIST_FILE = "Target Support Files/CapacitorCordova/CapacitorCordova-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/CapacitorCordova/CapacitorCordova.modulemap"; + PRODUCT_MODULE_NAME = Cordova; + PRODUCT_NAME = Cordova; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_INSTALL_OBJC_HEADER = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1358F1177FC46BA6C6E04FEEDC769D46 /* Build configuration list for PBXNativeTarget "Capacitor" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D2E948D57242CB5836BEFF56D00C998A /* Debug */, + 760F0D17D3F25A5926F2265CAA85E8DA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 8DE5143C03248BB6CD542DE3963D6F3A /* Debug */, + 9E406C6AAF85E580207CD97B0044DEAB /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 5AB1AD12B001DCFA4D2BB403DD59571F /* Build configuration list for PBXNativeTarget "Pods-Plugin" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 711B95E68E87459E7C7B93FF45435940 /* Debug */, + 3B8567A02FDBA9BEDC3D56BA717BF22A /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 622B3E98A1E093A71E2EFCAD99AA4D8F /* Build configuration list for PBXNativeTarget "Pods-PluginTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 39159D1FF19276FCA6607E8B102E55A9 /* Debug */, + D1A0DA2BC08F5B6E8725FB8C32B26B7D /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + BAEF5ED26067BEC37C548BF989EA8FB7 /* Build configuration list for PBXNativeTarget "CapacitorCordova" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 7FDCD1C0E22644411D5AE10DC842F275 /* Debug */, + EC05AB339819544C9AF02DF578CCD4FA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; +} diff --git a/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Capacitor.xcscheme b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Capacitor.xcscheme new file mode 100644 index 00000000..d001fbde --- /dev/null +++ b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Capacitor.xcscheme @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/CapacitorCordova.xcscheme b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/CapacitorCordova.xcscheme new file mode 100644 index 00000000..e8a4c0ed --- /dev/null +++ b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/CapacitorCordova.xcscheme @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Pods-Plugin.xcscheme b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Pods-Plugin.xcscheme new file mode 100644 index 00000000..ed3fe3bb --- /dev/null +++ b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Pods-Plugin.xcscheme @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Pods-PluginTests.xcscheme b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Pods-PluginTests.xcscheme new file mode 100644 index 00000000..502b35bb --- /dev/null +++ b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Pods-PluginTests.xcscheme @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/xcschememanagement.plist b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 00000000..0491af45 --- /dev/null +++ b/speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,31 @@ + + + + + SchemeUserState + + Capacitor.xcscheme + + isShown + + + CapacitorCordova.xcscheme + + isShown + + + Pods-Plugin.xcscheme + + isShown + + + Pods-PluginTests.xcscheme + + isShown + + + + SuppressBuildableAutocreation + + + diff --git a/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-Info.plist b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-Info.plist new file mode 100644 index 00000000..060f4744 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + ${PODS_DEVELOPMENT_LANGUAGE} + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 6.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-dummy.m b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-dummy.m new file mode 100644 index 00000000..be1a8444 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Capacitor : NSObject +@end +@implementation PodsDummy_Capacitor +@end diff --git a/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-prefix.pch b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-prefix.pch new file mode 100644 index 00000000..beb2a244 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.debug.xcconfig b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.debug.xcconfig new file mode 100644 index 00000000..51a54514 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.debug.xcconfig @@ -0,0 +1,16 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Capacitor +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_LDFLAGS = $(inherited) -framework "Cordova" -framework "WebKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_DEVELOPMENT_LANGUAGE = ${DEVELOPMENT_LANGUAGE} +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../../node_modules/@capacitor/ios +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.modulemap b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.modulemap new file mode 100644 index 00000000..b39eb8e8 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.modulemap @@ -0,0 +1,8 @@ +framework module Capacitor { + umbrella header "Capacitor.h" + exclude header "CAPBridgedJSTypes.h" + exclude header "CAPBridgeViewController+CDVScreenOrientationDelegate.h" + + export * + module * { export * } +} diff --git a/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.release.xcconfig b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.release.xcconfig new file mode 100644 index 00000000..51a54514 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.release.xcconfig @@ -0,0 +1,16 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Capacitor +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_LDFLAGS = $(inherited) -framework "Cordova" -framework "WebKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_DEVELOPMENT_LANGUAGE = ${DEVELOPMENT_LANGUAGE} +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../../node_modules/@capacitor/ios +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-Info.plist b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-Info.plist new file mode 100644 index 00000000..060f4744 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + ${PODS_DEVELOPMENT_LANGUAGE} + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 6.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-dummy.m b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-dummy.m new file mode 100644 index 00000000..47e9c39f --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_CapacitorCordova : NSObject +@end +@implementation PodsDummy_CapacitorCordova +@end diff --git a/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-prefix.pch b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-prefix.pch new file mode 100644 index 00000000..beb2a244 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.debug.xcconfig b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.debug.xcconfig new file mode 100644 index 00000000..6d1b3388 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.debug.xcconfig @@ -0,0 +1,13 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +OTHER_LDFLAGS = $(inherited) -framework "WebKit" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_DEVELOPMENT_LANGUAGE = ${DEVELOPMENT_LANGUAGE} +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../../node_modules/@capacitor/ios +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.modulemap b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.modulemap new file mode 100644 index 00000000..32af43c1 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.modulemap @@ -0,0 +1,6 @@ +framework module Cordova { + umbrella header "CapacitorCordova.h" + + export * + module * { export * } +} diff --git a/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.release.xcconfig b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.release.xcconfig new file mode 100644 index 00000000..6d1b3388 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.release.xcconfig @@ -0,0 +1,13 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +OTHER_LDFLAGS = $(inherited) -framework "WebKit" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_DEVELOPMENT_LANGUAGE = ${DEVELOPMENT_LANGUAGE} +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../../node_modules/@capacitor/ios +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-Info.plist b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-Info.plist new file mode 100644 index 00000000..19cf209d --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + ${PODS_DEVELOPMENT_LANGUAGE} + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-acknowledgements.markdown b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-acknowledgements.markdown new file mode 100644 index 00000000..2a136caf --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-acknowledgements.markdown @@ -0,0 +1,53 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## Capacitor + +MIT License + +Copyright (c) 2017-present Drifty Co. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +## CapacitorCordova + +MIT License + +Copyright (c) 2017-present Drifty Co. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Generated by CocoaPods - https://cocoapods.org diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-acknowledgements.plist b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-acknowledgements.plist new file mode 100644 index 00000000..d21b1fd2 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-acknowledgements.plist @@ -0,0 +1,91 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + MIT License + +Copyright (c) 2017-present Drifty Co. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + License + MIT + Title + Capacitor + Type + PSGroupSpecifier + + + FooterText + MIT License + +Copyright (c) 2017-present Drifty Co. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + License + MIT + Title + CapacitorCordova + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-dummy.m b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-dummy.m new file mode 100644 index 00000000..8685bcb1 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Plugin : NSObject +@end +@implementation PodsDummy_Pods_Plugin +@end diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-umbrella.h b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-umbrella.h new file mode 100644 index 00000000..ce248b22 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double Pods_PluginVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_PluginVersionString[]; + diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.debug.xcconfig b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.debug.xcconfig new file mode 100644 index 00000000..59bf9923 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.debug.xcconfig @@ -0,0 +1,15 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Capacitor" "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Capacitor/Capacitor.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova/Cordova.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks' '@executable_path/../../Frameworks' +LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_LDFLAGS = $(inherited) -framework "Capacitor" -framework "Cordova" -framework "WebKit" +OTHER_MODULE_VERIFIER_FLAGS = $(inherited) "-F${PODS_CONFIGURATION_BUILD_DIR}/Capacitor" "-F${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.modulemap b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.modulemap new file mode 100644 index 00000000..6ee05ec0 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.modulemap @@ -0,0 +1,6 @@ +framework module Pods_Plugin { + umbrella header "Pods-Plugin-umbrella.h" + + export * + module * { export * } +} diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.release.xcconfig b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.release.xcconfig new file mode 100644 index 00000000..59bf9923 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.release.xcconfig @@ -0,0 +1,15 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Capacitor" "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Capacitor/Capacitor.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova/Cordova.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks' '@executable_path/../../Frameworks' +LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_LDFLAGS = $(inherited) -framework "Capacitor" -framework "Cordova" -framework "WebKit" +OTHER_MODULE_VERIFIER_FLAGS = $(inherited) "-F${PODS_CONFIGURATION_BUILD_DIR}/Capacitor" "-F${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-Info.plist b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-Info.plist new file mode 100644 index 00000000..19cf209d --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + ${PODS_DEVELOPMENT_LANGUAGE} + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-acknowledgements.markdown b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-acknowledgements.markdown new file mode 100644 index 00000000..2a136caf --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-acknowledgements.markdown @@ -0,0 +1,53 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## Capacitor + +MIT License + +Copyright (c) 2017-present Drifty Co. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +## CapacitorCordova + +MIT License + +Copyright (c) 2017-present Drifty Co. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Generated by CocoaPods - https://cocoapods.org diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-acknowledgements.plist b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-acknowledgements.plist new file mode 100644 index 00000000..d21b1fd2 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-acknowledgements.plist @@ -0,0 +1,91 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + MIT License + +Copyright (c) 2017-present Drifty Co. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + License + MIT + Title + Capacitor + Type + PSGroupSpecifier + + + FooterText + MIT License + +Copyright (c) 2017-present Drifty Co. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + License + MIT + Title + CapacitorCordova + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-dummy.m b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-dummy.m new file mode 100644 index 00000000..fd42ff18 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_PluginTests : NSObject +@end +@implementation PodsDummy_Pods_PluginTests +@end diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-frameworks.sh b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-frameworks.sh new file mode 100755 index 00000000..dddb6010 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-frameworks.sh @@ -0,0 +1,188 @@ +#!/bin/sh +set -e +set -u +set -o pipefail + +function on_error { + echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" +} +trap 'on_error $LINENO' ERR + +if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 +fi + +echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" +mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + +COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}" +SWIFT_STDLIB_PATH="${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" +BCSYMBOLMAP_DIR="BCSymbolMaps" + + +# This protects against multiple targets copying the same framework dependency at the same time. The solution +# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html +RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") + +# Copies and strips a vendored framework +install_framework() +{ + if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then + local source="${BUILT_PRODUCTS_DIR}/$1" + elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then + local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" + elif [ -r "$1" ]; then + local source="$1" + fi + + local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + + if [ -L "${source}" ]; then + echo "Symlinked..." + source="$(readlink -f "${source}")" + fi + + if [ -d "${source}/${BCSYMBOLMAP_DIR}" ]; then + # Locate and install any .bcsymbolmaps if present, and remove them from the .framework before the framework is copied + find "${source}/${BCSYMBOLMAP_DIR}" -name "*.bcsymbolmap"|while read f; do + echo "Installing $f" + install_bcsymbolmap "$f" "$destination" + rm "$f" + done + rmdir "${source}/${BCSYMBOLMAP_DIR}" + fi + + # Use filter instead of exclude so missing patterns don't throw errors. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" + + local basename + basename="$(basename -s .framework "$1")" + binary="${destination}/${basename}.framework/${basename}" + + if ! [ -r "$binary" ]; then + binary="${destination}/${basename}" + elif [ -L "${binary}" ]; then + echo "Destination binary is symlinked..." + dirname="$(dirname "${binary}")" + binary="${dirname}/$(readlink "${binary}")" + fi + + # Strip invalid architectures so "fat" simulator / device frameworks work on device + if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then + strip_invalid_archs "$binary" + fi + + # Resign the code if required by the build settings to avoid unstable apps + code_sign_if_enabled "${destination}/$(basename "$1")" + + # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. + if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then + local swift_runtime_libs + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u) + for lib in $swift_runtime_libs; do + echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" + rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" + code_sign_if_enabled "${destination}/${lib}" + done + fi +} +# Copies and strips a vendored dSYM +install_dsym() { + local source="$1" + warn_missing_arch=${2:-true} + if [ -r "$source" ]; then + # Copy the dSYM into the targets temp dir. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}" + + local basename + basename="$(basename -s .dSYM "$source")" + binary_name="$(ls "$source/Contents/Resources/DWARF")" + binary="${DERIVED_FILES_DIR}/${basename}.dSYM/Contents/Resources/DWARF/${binary_name}" + + # Strip invalid architectures from the dSYM. + if [[ "$(file "$binary")" == *"Mach-O "*"dSYM companion"* ]]; then + strip_invalid_archs "$binary" "$warn_missing_arch" + fi + if [[ $STRIP_BINARY_RETVAL == 0 ]]; then + # Move the stripped file into its final destination. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.dSYM" "${DWARF_DSYM_FOLDER_PATH}" + else + # The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing. + mkdir -p "${DWARF_DSYM_FOLDER_PATH}" + touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.dSYM" + fi + fi +} + +# Used as a return value for each invocation of `strip_invalid_archs` function. +STRIP_BINARY_RETVAL=0 + +# Strip invalid architectures +strip_invalid_archs() { + binary="$1" + warn_missing_arch=${2:-true} + # Get architectures for current target binary + binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)" + # Intersect them with the architectures we are building for + intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)" + # If there are no archs supported by this binary then warn the user + if [[ -z "$intersected_archs" ]]; then + if [[ "$warn_missing_arch" == "true" ]]; then + echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)." + fi + STRIP_BINARY_RETVAL=1 + return + fi + stripped="" + for arch in $binary_archs; do + if ! [[ "${ARCHS}" == *"$arch"* ]]; then + # Strip non-valid architectures in-place + lipo -remove "$arch" -output "$binary" "$binary" + stripped="$stripped $arch" + fi + done + if [[ "$stripped" ]]; then + echo "Stripped $binary of architectures:$stripped" + fi + STRIP_BINARY_RETVAL=0 +} + +# Copies the bcsymbolmap files of a vendored framework +install_bcsymbolmap() { + local bcsymbolmap_path="$1" + local destination="${BUILT_PRODUCTS_DIR}" + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}" +} + +# Signs a framework with the provided identity +code_sign_if_enabled() { + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identity + echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" + local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" + + if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + code_sign_cmd="$code_sign_cmd &" + fi + echo "$code_sign_cmd" + eval "$code_sign_cmd" + fi +} + +if [[ "$CONFIGURATION" == "Debug" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/Capacitor/Capacitor.framework" + install_framework "${BUILT_PRODUCTS_DIR}/CapacitorCordova/Cordova.framework" +fi +if [[ "$CONFIGURATION" == "Release" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/Capacitor/Capacitor.framework" + install_framework "${BUILT_PRODUCTS_DIR}/CapacitorCordova/Cordova.framework" +fi +if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + wait +fi diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-umbrella.h b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-umbrella.h new file mode 100644 index 00000000..cac4be7c --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double Pods_PluginTestsVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_PluginTestsVersionString[]; + diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.debug.xcconfig b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.debug.xcconfig new file mode 100644 index 00000000..5bcfb0ff --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.debug.xcconfig @@ -0,0 +1,16 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Capacitor" "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Capacitor/Capacitor.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova/Cordova.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift "$(PLATFORM_DIR)/Developer/Library/Frameworks" '@executable_path/Frameworks' '@loader_path/Frameworks' +LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_LDFLAGS = $(inherited) -framework "Capacitor" -framework "Cordova" -framework "WebKit" +OTHER_MODULE_VERIFIER_FLAGS = $(inherited) "-F${PODS_CONFIGURATION_BUILD_DIR}/Capacitor" "-F${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.modulemap b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.modulemap new file mode 100644 index 00000000..9e566605 --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.modulemap @@ -0,0 +1,6 @@ +framework module Pods_PluginTests { + umbrella header "Pods-PluginTests-umbrella.h" + + export * + module * { export * } +} diff --git a/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.release.xcconfig b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.release.xcconfig new file mode 100644 index 00000000..5bcfb0ff --- /dev/null +++ b/speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.release.xcconfig @@ -0,0 +1,16 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Capacitor" "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Capacitor/Capacitor.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova/Cordova.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift "$(PLATFORM_DIR)/Developer/Library/Frameworks" '@executable_path/Frameworks' '@loader_path/Frameworks' +LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_LDFLAGS = $(inherited) -framework "Capacitor" -framework "Cordova" -framework "WebKit" +OTHER_MODULE_VERIFIER_FLAGS = $(inherited) "-F${PODS_CONFIGURATION_BUILD_DIR}/Capacitor" "-F${PODS_CONFIGURATION_BUILD_DIR}/CapacitorCordova" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/speech-recognition/loggy b/speech-recognition/loggy new file mode 100644 index 00000000..b90d172f --- /dev/null +++ b/speech-recognition/loggy @@ -0,0 +1,7234 @@ + +> @capacitor-community/speech-recognition@6.0.1 build +> npm run clean && npm run docgen && tsc && rollup -c rollup.config.js + + +> @capacitor-community/speech-recognition@6.0.1 clean +> rimraf ./dist + + +> @capacitor-community/speech-recognition@6.0.1 docgen +> docgen --api SpeechRecognitionPlugin --output-readme README.md --output-json dist/docs.json + + +✔️ DocGen Output: /Users/richandrasekaran/Code/scriberr/speech-recognition/dist/docs.json +✔️ DocGen Output: /Users/richandrasekaran/Code/scriberr/speech-recognition/README.md + +../node_modules/@types/node/http.d.ts:235:47 - error TS1005: ',' expected. + +235 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:235:71 - error TS1109: Expression expected. + +235 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:236:5 - error TS1109: Expression expected. + +236 > { +   ~ + +../node_modules/@types/node/http.d.ts:240:46 - error TS1005: ',' expected. + +240 IncomingMessage?: Request | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:244:46 - error TS1005: ',' expected. + +244 ServerResponse?: Response | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:251:44 - error TS1005: ',' expected. + +251 requestTimeout?: number | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:257:39 - error TS1005: ',' expected. + +257 joinDuplicateHeaders?: boolean; +   ~ + +../node_modules/@types/node/http.d.ts:265:46 - error TS1005: ',' expected. + +265 keepAliveTimeout?: number | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:270:57 - error TS1005: ',' expected. + +270 connectionsCheckingInterval?: number | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:277:43 - error TS1005: ',' expected. + +277 highWaterMark?: number | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:284:49 - error TS1005: ',' expected. + +284 insecureHTTPParser?: boolean | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:291:43 - error TS1005: ',' expected. + +291 maxHeaderSize?: number | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:297:38 - error TS1005: ',' expected. + +297 noDelay?: boolean | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:304:40 - error TS1005: ',' expected. + +304 keepAlive?: boolean | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:310:51 - error TS1005: ',' expected. + +310 keepAliveInitialDelay?: number | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:315:50 - error TS1005: '(' expected. + +315 uniqueHeaders?: Array | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:315:61 - error TS1005: ')' expected. + +315 uniqueHeaders?: Array | undefined; +   ~ + +../node_modules/@types/node/http.d.ts:319:47 - error TS1005: ',' expected. + +319 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:319:60 - error TS1005: ',' expected. + +319 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:319:69 - error TS1005: '(' expected. + +319 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:319:71 - error TS1109: Expression expected. + +319 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:320:5 - error TS1109: Expression expected. + +320 > = (req: InstanceType, res: InstanceType & { req: InstanceType }) => void; +   ~ + +../node_modules/@types/node/http.d.ts:320:7 - error TS1109: Expression expected. + +320 > = (req: InstanceType, res: InstanceType & { req: InstanceType }) => void; +   ~ + +../node_modules/@types/node/http.d.ts:320:107 - error TS1109: Expression expected. + +320 > = (req: InstanceType, res: InstanceType & { req: InstanceType }) => void; +   ~ + +../node_modules/@types/node/http.d.ts:326:47 - error TS1005: ',' expected. + +326 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:326:71 - error TS1109: Expression expected. + +326 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:327:5 - error TS1109: Expression expected. + +327 > extends NetServer { +   ~ + +../node_modules/@types/node/http.d.ts:327:7 - error TS1109: Expression expected. + +327 > extends NetServer { +   ~~~~~~~ + +../node_modules/@types/node/http.d.ts:327:25 - error TS1005: ';' expected. + +327 > extends NetServer { +   ~ + +../node_modules/@types/node/http.d.ts:328:37 - error TS1109: Expression expected. + +328 constructor(requestListener?: RequestListener); +   ~ + +../node_modules/@types/node/http.d.ts:328:73 - error TS1005: '(' expected. + +328 constructor(requestListener?: RequestListener); +   ~ + +../node_modules/@types/node/http.d.ts:328:74 - error TS1005: ')' expected. + +328 constructor(requestListener?: RequestListener); +   ~ + +../node_modules/@types/node/http.d.ts:329:28 - error TS1005: ',' expected. + +329 constructor(options: ServerOptions, requestListener?: RequestListener); +   ~ + +../node_modules/@types/node/http.d.ts:329:62 - error TS1109: Expression expected. + +329 constructor(options: ServerOptions, requestListener?: RequestListener); +   ~ + +../node_modules/@types/node/http.d.ts:329:80 - error TS1109: Expression expected. + +329 constructor(options: ServerOptions, requestListener?: RequestListener); +   ~ + +../node_modules/@types/node/http.d.ts:329:116 - error TS1005: '(' expected. + +329 constructor(options: ServerOptions, requestListener?: RequestListener); +   ~ + +../node_modules/@types/node/http.d.ts:329:117 - error TS1005: ')' expected. + +329 constructor(options: ServerOptions, requestListener?: RequestListener); +   ~ + +../node_modules/@types/node/http.d.ts:344:26 - error TS1109: Expression expected. + +344 setTimeout(msecs?: number, callback?: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:344:45 - error TS1109: Expression expected. + +344 setTimeout(msecs?: number, callback?: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:344:57 - error TS1109: Expression expected. + +344 setTimeout(msecs?: number, callback?: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:344:58 - error TS1005: ';' expected. + +344 setTimeout(msecs?: number, callback?: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:345:28 - error TS1005: ',' expected. + +345 setTimeout(callback: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:345:40 - error TS1109: Expression expected. + +345 setTimeout(callback: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:345:41 - error TS1005: ';' expected. + +345 setTimeout(callback: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:420:30 - error TS1005: ';' expected. + +420 closeAllConnections(): void; +   ~ + +../node_modules/@types/node/http.d.ts:420:36 - error TS1109: Expression expected. + +420 closeAllConnections(): void; +   ~ + +../node_modules/@types/node/http.d.ts:426:31 - error TS1005: ';' expected. + +426 closeIdleConnections(): void; +   ~ + +../node_modules/@types/node/http.d.ts:426:37 - error TS1109: Expression expected. + +426 closeIdleConnections(): void; +   ~ + +../node_modules/@types/node/http.d.ts:427:26 - error TS1005: ',' expected. + +427 addListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:427:44 - error TS1005: ',' expected. + +427 addListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:427:70 - error TS1109: Expression expected. + +427 addListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:427:71 - error TS1005: ';' expected. + +427 addListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:428:26 - error TS1005: ',' expected. + +428 addListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:428:45 - error TS1005: ',' expected. + +428 addListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:428:57 - error TS1109: Expression expected. + +428 addListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:428:58 - error TS1005: ';' expected. + +428 addListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:429:26 - error TS1005: ',' expected. + +429 addListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:429:50 - error TS1005: ',' expected. + +429 addListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:429:76 - error TS1109: Expression expected. + +429 addListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:429:77 - error TS1005: ';' expected. + +429 addListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:430:26 - error TS1005: ',' expected. + +430 addListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:430:45 - error TS1005: ',' expected. + +430 addListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:430:67 - error TS1109: Expression expected. + +430 addListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:430:68 - error TS1005: ';' expected. + +430 addListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:431:26 - error TS1005: ',' expected. + +431 addListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:431:49 - error TS1005: ',' expected. + +431 addListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:431:61 - error TS1109: Expression expected. + +431 addListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:431:62 - error TS1005: ';' expected. + +431 addListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:432:26 - error TS1005: ',' expected. + +432 addListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:432:53 - error TS1005: ',' expected. + +432 addListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:432:89 - error TS1005: '(' expected. + +432 addListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:432:90 - error TS1005: ',' expected. + +432 addListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:432:96 - error TS1005: ')' expected. + +432 addListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:433:26 - error TS1005: ',' expected. + +433 addListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:433:56 - error TS1005: ',' expected. + +433 addListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:433:92 - error TS1005: '(' expected. + +433 addListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:433:93 - error TS1005: ',' expected. + +433 addListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:433:99 - error TS1005: ')' expected. + +433 addListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:434:26 - error TS1005: ',' expected. + +434 addListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:434:51 - error TS1005: ',' expected. + +434 addListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:434:96 - error TS1109: Expression expected. + +434 addListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:434:97 - error TS1005: ';' expected. + +434 addListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:436:18 - error TS1005: ',' expected. + +436 event: "connect", +   ~ + +../node_modules/@types/node/http.d.ts:437:21 - error TS1005: ',' expected. + +437 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:437:96 - error TS1109: Expression expected. + +437 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:438:10 - error TS1005: ';' expected. + +438 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:439:26 - error TS1005: ',' expected. + +439 addListener(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:439:51 - error TS1005: ',' expected. + +439 addListener(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:439:112 - error TS1109: Expression expected. + +439 addListener(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:439:113 - error TS1005: ';' expected. + +439 addListener(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:440:26 - error TS1005: ',' expected. + +440 addListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:440:47 - error TS1005: ',' expected. + +440 addListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:440:83 - error TS1005: '(' expected. + +440 addListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:440:84 - error TS1005: ',' expected. + +440 addListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:440:90 - error TS1005: ')' expected. + +440 addListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:442:18 - error TS1005: ',' expected. + +442 event: "upgrade", +   ~ + +../node_modules/@types/node/http.d.ts:443:21 - error TS1005: ',' expected. + +443 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:443:96 - error TS1109: Expression expected. + +443 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:444:10 - error TS1005: ';' expected. + +444 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:445:19 - error TS1005: ',' expected. + +445 emit(event: string, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:445:36 - error TS1005: ',' expected. + +445 emit(event: string, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:445:42 - error TS1011: An element access expression should take an argument. + +445 emit(event: string, ...args: any[]): boolean; +    + +../node_modules/@types/node/http.d.ts:445:44 - error TS1005: ';' expected. + +445 emit(event: string, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:446:19 - error TS1005: ',' expected. + +446 emit(event: "close"): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:446:29 - error TS1005: ';' expected. + +446 emit(event: "close"): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:447:19 - error TS1005: ',' expected. + +447 emit(event: "connection", socket: Socket): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:447:41 - error TS1005: ',' expected. + +447 emit(event: "connection", socket: Socket): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:447:50 - error TS1005: ';' expected. + +447 emit(event: "connection", socket: Socket): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:448:19 - error TS1005: ',' expected. + +448 emit(event: "error", err: Error): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:448:33 - error TS1005: ',' expected. + +448 emit(event: "error", err: Error): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:448:41 - error TS1005: ';' expected. + +448 emit(event: "error", err: Error): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:449:19 - error TS1005: ',' expected. + +449 emit(event: "listening"): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:449:33 - error TS1005: ';' expected. + +449 emit(event: "listening"): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:451:18 - error TS1005: ',' expected. + +451 event: "checkContinue", +   ~ + +../node_modules/@types/node/http.d.ts:452:16 - error TS1005: ',' expected. + +452 req: InstanceType, +   ~ + +../node_modules/@types/node/http.d.ts:452:39 - error TS1109: Expression expected. + +452 req: InstanceType, +   ~ + +../node_modules/@types/node/http.d.ts:453:16 - error TS1005: ',' expected. + +453 res: InstanceType & { req: InstanceType }, +   ~ + +../node_modules/@types/node/http.d.ts:453:41 - error TS1005: '(' expected. + +453 res: InstanceType & { req: InstanceType }, +   ~ + +../node_modules/@types/node/http.d.ts:453:72 - error TS1005: '(' expected. + +453 res: InstanceType & { req: InstanceType }, +   ~ + +../node_modules/@types/node/http.d.ts:454:10 - error TS1005: ',' expected. + +454 ): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:454:19 - error TS1005: ')' expected. + +454 ): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:456:18 - error TS1005: ',' expected. + +456 event: "checkExpectation", +   ~ + +../node_modules/@types/node/http.d.ts:457:16 - error TS1005: ',' expected. + +457 req: InstanceType, +   ~ + +../node_modules/@types/node/http.d.ts:457:39 - error TS1109: Expression expected. + +457 req: InstanceType, +   ~ + +../node_modules/@types/node/http.d.ts:458:16 - error TS1005: ',' expected. + +458 res: InstanceType & { req: InstanceType }, +   ~ + +../node_modules/@types/node/http.d.ts:458:41 - error TS1005: '(' expected. + +458 res: InstanceType & { req: InstanceType }, +   ~ + +../node_modules/@types/node/http.d.ts:458:72 - error TS1005: '(' expected. + +458 res: InstanceType & { req: InstanceType }, +   ~ + +../node_modules/@types/node/http.d.ts:459:10 - error TS1005: ',' expected. + +459 ): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:459:19 - error TS1005: ')' expected. + +459 ): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:460:19 - error TS1005: ',' expected. + +460 emit(event: "clientError", err: Error, socket: stream.Duplex): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:460:39 - error TS1005: ',' expected. + +460 emit(event: "clientError", err: Error, socket: stream.Duplex): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:460:54 - error TS1005: ',' expected. + +460 emit(event: "clientError", err: Error, socket: stream.Duplex): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:460:70 - error TS1005: ';' expected. + +460 emit(event: "clientError", err: Error, socket: stream.Duplex): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:461:19 - error TS1005: ',' expected. + +461 emit(event: "connect", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:461:35 - error TS1005: ',' expected. + +461 emit(event: "connect", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:461:58 - error TS1109: Expression expected. + +461 emit(event: "connect", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:461:66 - error TS1005: ',' expected. + +461 emit(event: "connect", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:461:87 - error TS1005: ',' expected. + +461 emit(event: "connect", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:461:96 - error TS1005: ';' expected. + +461 emit(event: "connect", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:462:19 - error TS1005: ',' expected. + +462 emit(event: "dropRequest", req: InstanceType, socket: stream.Duplex): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:462:39 - error TS1005: ',' expected. + +462 emit(event: "dropRequest", req: InstanceType, socket: stream.Duplex): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:462:62 - error TS1109: Expression expected. + +462 emit(event: "dropRequest", req: InstanceType, socket: stream.Duplex): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:462:70 - error TS1005: ',' expected. + +462 emit(event: "dropRequest", req: InstanceType, socket: stream.Duplex): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:462:86 - error TS1005: ';' expected. + +462 emit(event: "dropRequest", req: InstanceType, socket: stream.Duplex): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:464:18 - error TS1005: ',' expected. + +464 event: "request", +   ~ + +../node_modules/@types/node/http.d.ts:465:16 - error TS1005: ',' expected. + +465 req: InstanceType, +   ~ + +../node_modules/@types/node/http.d.ts:465:39 - error TS1109: Expression expected. + +465 req: InstanceType, +   ~ + +../node_modules/@types/node/http.d.ts:466:16 - error TS1005: ',' expected. + +466 res: InstanceType & { req: InstanceType }, +   ~ + +../node_modules/@types/node/http.d.ts:466:41 - error TS1005: '(' expected. + +466 res: InstanceType & { req: InstanceType }, +   ~ + +../node_modules/@types/node/http.d.ts:466:72 - error TS1005: '(' expected. + +466 res: InstanceType & { req: InstanceType }, +   ~ + +../node_modules/@types/node/http.d.ts:467:10 - error TS1005: ',' expected. + +467 ): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:467:19 - error TS1005: ')' expected. + +467 ): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:468:19 - error TS1005: ',' expected. + +468 emit(event: "upgrade", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:468:35 - error TS1005: ',' expected. + +468 emit(event: "upgrade", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:468:58 - error TS1109: Expression expected. + +468 emit(event: "upgrade", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:468:66 - error TS1005: ',' expected. + +468 emit(event: "upgrade", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:468:87 - error TS1005: ',' expected. + +468 emit(event: "upgrade", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:468:96 - error TS1005: ';' expected. + +468 emit(event: "upgrade", req: InstanceType, socket: stream.Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/http.d.ts:469:17 - error TS1005: ',' expected. + +469 on(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:469:35 - error TS1005: ',' expected. + +469 on(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:469:61 - error TS1109: Expression expected. + +469 on(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:469:62 - error TS1005: ';' expected. + +469 on(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:470:17 - error TS1005: ',' expected. + +470 on(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:470:36 - error TS1005: ',' expected. + +470 on(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:470:48 - error TS1109: Expression expected. + +470 on(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:470:49 - error TS1005: ';' expected. + +470 on(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:471:17 - error TS1005: ',' expected. + +471 on(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:471:41 - error TS1005: ',' expected. + +471 on(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:471:67 - error TS1109: Expression expected. + +471 on(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:471:68 - error TS1005: ';' expected. + +471 on(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:472:17 - error TS1005: ',' expected. + +472 on(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:472:36 - error TS1005: ',' expected. + +472 on(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:472:58 - error TS1109: Expression expected. + +472 on(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:472:59 - error TS1005: ';' expected. + +472 on(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:473:17 - error TS1005: ',' expected. + +473 on(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:473:40 - error TS1005: ',' expected. + +473 on(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:473:52 - error TS1109: Expression expected. + +473 on(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:473:53 - error TS1005: ';' expected. + +473 on(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:474:17 - error TS1005: ',' expected. + +474 on(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:474:44 - error TS1005: ',' expected. + +474 on(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:474:80 - error TS1005: '(' expected. + +474 on(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:474:81 - error TS1005: ',' expected. + +474 on(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:474:87 - error TS1005: ')' expected. + +474 on(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:475:17 - error TS1005: ',' expected. + +475 on(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:475:47 - error TS1005: ',' expected. + +475 on(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:475:83 - error TS1005: '(' expected. + +475 on(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:475:84 - error TS1005: ',' expected. + +475 on(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:475:90 - error TS1005: ')' expected. + +475 on(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:476:17 - error TS1005: ',' expected. + +476 on(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:476:42 - error TS1005: ',' expected. + +476 on(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:476:87 - error TS1109: Expression expected. + +476 on(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:476:88 - error TS1005: ';' expected. + +476 on(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:477:17 - error TS1005: ',' expected. + +477 on(event: "connect", listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:477:38 - error TS1005: ',' expected. + +477 on(event: "connect", listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:477:113 - error TS1109: Expression expected. + +477 on(event: "connect", listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:477:114 - error TS1005: ';' expected. + +477 on(event: "connect", listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:478:17 - error TS1005: ',' expected. + +478 on(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:478:42 - error TS1005: ',' expected. + +478 on(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:478:103 - error TS1109: Expression expected. + +478 on(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:478:104 - error TS1005: ';' expected. + +478 on(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:479:17 - error TS1005: ',' expected. + +479 on(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:479:38 - error TS1005: ',' expected. + +479 on(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:479:74 - error TS1005: '(' expected. + +479 on(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:479:75 - error TS1005: ',' expected. + +479 on(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:479:81 - error TS1005: ')' expected. + +479 on(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:480:17 - error TS1005: ',' expected. + +480 on(event: "upgrade", listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:480:38 - error TS1005: ',' expected. + +480 on(event: "upgrade", listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:480:113 - error TS1109: Expression expected. + +480 on(event: "upgrade", listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:480:114 - error TS1005: ';' expected. + +480 on(event: "upgrade", listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:481:19 - error TS1005: ',' expected. + +481 once(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:481:37 - error TS1005: ',' expected. + +481 once(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:481:63 - error TS1109: Expression expected. + +481 once(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:481:64 - error TS1005: ';' expected. + +481 once(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:482:19 - error TS1005: ',' expected. + +482 once(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:482:38 - error TS1005: ',' expected. + +482 once(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:482:50 - error TS1109: Expression expected. + +482 once(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:482:51 - error TS1005: ';' expected. + +482 once(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:483:19 - error TS1005: ',' expected. + +483 once(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:483:43 - error TS1005: ',' expected. + +483 once(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:483:69 - error TS1109: Expression expected. + +483 once(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:483:70 - error TS1005: ';' expected. + +483 once(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:484:19 - error TS1005: ',' expected. + +484 once(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:484:38 - error TS1005: ',' expected. + +484 once(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:484:60 - error TS1109: Expression expected. + +484 once(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:484:61 - error TS1005: ';' expected. + +484 once(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:485:19 - error TS1005: ',' expected. + +485 once(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:485:42 - error TS1005: ',' expected. + +485 once(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:485:54 - error TS1109: Expression expected. + +485 once(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:485:55 - error TS1005: ';' expected. + +485 once(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:486:19 - error TS1005: ',' expected. + +486 once(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:486:46 - error TS1005: ',' expected. + +486 once(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:486:82 - error TS1005: '(' expected. + +486 once(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:486:83 - error TS1005: ',' expected. + +486 once(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:486:89 - error TS1005: ')' expected. + +486 once(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:487:19 - error TS1005: ',' expected. + +487 once(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:487:49 - error TS1005: ',' expected. + +487 once(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:487:85 - error TS1005: '(' expected. + +487 once(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:487:86 - error TS1005: ',' expected. + +487 once(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:487:92 - error TS1005: ')' expected. + +487 once(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:488:19 - error TS1005: ',' expected. + +488 once(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:488:44 - error TS1005: ',' expected. + +488 once(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:488:89 - error TS1109: Expression expected. + +488 once(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:488:90 - error TS1005: ';' expected. + +488 once(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:490:18 - error TS1005: ',' expected. + +490 event: "connect", +   ~ + +../node_modules/@types/node/http.d.ts:491:21 - error TS1005: ',' expected. + +491 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:491:96 - error TS1109: Expression expected. + +491 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:492:10 - error TS1005: ';' expected. + +492 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:493:19 - error TS1005: ',' expected. + +493 once(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:493:44 - error TS1005: ',' expected. + +493 once(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:493:105 - error TS1109: Expression expected. + +493 once(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:493:106 - error TS1005: ';' expected. + +493 once(event: "dropRequest", listener: (req: InstanceType, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:494:19 - error TS1005: ',' expected. + +494 once(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:494:40 - error TS1005: ',' expected. + +494 once(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:494:76 - error TS1005: '(' expected. + +494 once(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:494:77 - error TS1005: ',' expected. + +494 once(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:494:83 - error TS1005: ')' expected. + +494 once(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:496:18 - error TS1005: ',' expected. + +496 event: "upgrade", +   ~ + +../node_modules/@types/node/http.d.ts:497:21 - error TS1005: ',' expected. + +497 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:497:96 - error TS1109: Expression expected. + +497 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:498:10 - error TS1005: ';' expected. + +498 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:499:30 - error TS1005: ',' expected. + +499 prependListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:499:48 - error TS1005: ',' expected. + +499 prependListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:499:74 - error TS1109: Expression expected. + +499 prependListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:499:75 - error TS1005: ';' expected. + +499 prependListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:500:30 - error TS1005: ',' expected. + +500 prependListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:500:49 - error TS1005: ',' expected. + +500 prependListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:500:61 - error TS1109: Expression expected. + +500 prependListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:500:62 - error TS1005: ';' expected. + +500 prependListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:501:30 - error TS1005: ',' expected. + +501 prependListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:501:54 - error TS1005: ',' expected. + +501 prependListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:501:80 - error TS1109: Expression expected. + +501 prependListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:501:81 - error TS1005: ';' expected. + +501 prependListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:502:30 - error TS1005: ',' expected. + +502 prependListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:502:49 - error TS1005: ',' expected. + +502 prependListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:502:71 - error TS1109: Expression expected. + +502 prependListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:502:72 - error TS1005: ';' expected. + +502 prependListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:503:30 - error TS1005: ',' expected. + +503 prependListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:503:53 - error TS1005: ',' expected. + +503 prependListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:503:65 - error TS1109: Expression expected. + +503 prependListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:503:66 - error TS1005: ';' expected. + +503 prependListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:504:30 - error TS1005: ',' expected. + +504 prependListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:504:57 - error TS1005: ',' expected. + +504 prependListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:504:93 - error TS1005: '(' expected. + +504 prependListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:504:94 - error TS1005: ',' expected. + +504 prependListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:504:100 - error TS1005: ')' expected. + +504 prependListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:505:30 - error TS1005: ',' expected. + +505 prependListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:505:60 - error TS1005: ',' expected. + +505 prependListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:505:96 - error TS1005: '(' expected. + +505 prependListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:505:97 - error TS1005: ',' expected. + +505 prependListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:505:103 - error TS1005: ')' expected. + +505 prependListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:506:30 - error TS1005: ',' expected. + +506 prependListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:506:55 - error TS1005: ',' expected. + +506 prependListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:506:100 - error TS1109: Expression expected. + +506 prependListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:506:101 - error TS1005: ';' expected. + +506 prependListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:508:18 - error TS1005: ',' expected. + +508 event: "connect", +   ~ + +../node_modules/@types/node/http.d.ts:509:21 - error TS1005: ',' expected. + +509 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:509:96 - error TS1109: Expression expected. + +509 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:510:10 - error TS1005: ';' expected. + +510 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:512:18 - error TS1005: ',' expected. + +512 event: "dropRequest", +   ~ + +../node_modules/@types/node/http.d.ts:513:21 - error TS1005: ',' expected. + +513 listener: (req: InstanceType, socket: stream.Duplex) => void, +   ~ + +../node_modules/@types/node/http.d.ts:513:82 - error TS1109: Expression expected. + +513 listener: (req: InstanceType, socket: stream.Duplex) => void, +   ~ + +../node_modules/@types/node/http.d.ts:514:10 - error TS1005: ';' expected. + +514 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:515:30 - error TS1005: ',' expected. + +515 prependListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:515:51 - error TS1005: ',' expected. + +515 prependListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:515:87 - error TS1005: '(' expected. + +515 prependListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:515:88 - error TS1005: ',' expected. + +515 prependListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:515:94 - error TS1005: ')' expected. + +515 prependListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:517:18 - error TS1005: ',' expected. + +517 event: "upgrade", +   ~ + +../node_modules/@types/node/http.d.ts:518:21 - error TS1005: ',' expected. + +518 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:518:96 - error TS1109: Expression expected. + +518 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:519:10 - error TS1005: ';' expected. + +519 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:520:34 - error TS1005: ',' expected. + +520 prependOnceListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:520:52 - error TS1005: ',' expected. + +520 prependOnceListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:520:78 - error TS1109: Expression expected. + +520 prependOnceListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:520:79 - error TS1005: ';' expected. + +520 prependOnceListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:521:34 - error TS1005: ',' expected. + +521 prependOnceListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:521:53 - error TS1005: ',' expected. + +521 prependOnceListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:521:65 - error TS1109: Expression expected. + +521 prependOnceListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:521:66 - error TS1005: ';' expected. + +521 prependOnceListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:522:34 - error TS1005: ',' expected. + +522 prependOnceListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:522:58 - error TS1005: ',' expected. + +522 prependOnceListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:522:84 - error TS1109: Expression expected. + +522 prependOnceListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:522:85 - error TS1005: ';' expected. + +522 prependOnceListener(event: "connection", listener: (socket: Socket) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:523:34 - error TS1005: ',' expected. + +523 prependOnceListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:523:53 - error TS1005: ',' expected. + +523 prependOnceListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:523:75 - error TS1109: Expression expected. + +523 prependOnceListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:523:76 - error TS1005: ';' expected. + +523 prependOnceListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:524:34 - error TS1005: ',' expected. + +524 prependOnceListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:524:57 - error TS1005: ',' expected. + +524 prependOnceListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:524:69 - error TS1109: Expression expected. + +524 prependOnceListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:524:70 - error TS1005: ';' expected. + +524 prependOnceListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:525:34 - error TS1005: ',' expected. + +525 prependOnceListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:525:61 - error TS1005: ',' expected. + +525 prependOnceListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:525:97 - error TS1005: '(' expected. + +525 prependOnceListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:525:98 - error TS1005: ',' expected. + +525 prependOnceListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:525:104 - error TS1005: ')' expected. + +525 prependOnceListener(event: "checkContinue", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:526:34 - error TS1005: ',' expected. + +526 prependOnceListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:526:64 - error TS1005: ',' expected. + +526 prependOnceListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:526:100 - error TS1005: '(' expected. + +526 prependOnceListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:526:101 - error TS1005: ',' expected. + +526 prependOnceListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:526:107 - error TS1005: ')' expected. + +526 prependOnceListener(event: "checkExpectation", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:527:34 - error TS1005: ',' expected. + +527 prependOnceListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:527:59 - error TS1005: ',' expected. + +527 prependOnceListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:527:104 - error TS1109: Expression expected. + +527 prependOnceListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:527:105 - error TS1005: ';' expected. + +527 prependOnceListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this; +   ~ + +../node_modules/@types/node/http.d.ts:529:18 - error TS1005: ',' expected. + +529 event: "connect", +   ~ + +../node_modules/@types/node/http.d.ts:530:21 - error TS1005: ',' expected. + +530 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:530:96 - error TS1109: Expression expected. + +530 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:531:10 - error TS1005: ';' expected. + +531 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:533:18 - error TS1005: ',' expected. + +533 event: "dropRequest", +   ~ + +../node_modules/@types/node/http.d.ts:534:21 - error TS1005: ',' expected. + +534 listener: (req: InstanceType, socket: stream.Duplex) => void, +   ~ + +../node_modules/@types/node/http.d.ts:534:82 - error TS1109: Expression expected. + +534 listener: (req: InstanceType, socket: stream.Duplex) => void, +   ~ + +../node_modules/@types/node/http.d.ts:535:10 - error TS1005: ';' expected. + +535 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:536:34 - error TS1005: ',' expected. + +536 prependOnceListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:536:55 - error TS1005: ',' expected. + +536 prependOnceListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:536:91 - error TS1005: '(' expected. + +536 prependOnceListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:536:92 - error TS1005: ',' expected. + +536 prependOnceListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:536:98 - error TS1005: ')' expected. + +536 prependOnceListener(event: "request", listener: RequestListener): this; +   ~ + +../node_modules/@types/node/http.d.ts:538:18 - error TS1005: ',' expected. + +538 event: "upgrade", +   ~ + +../node_modules/@types/node/http.d.ts:539:21 - error TS1005: ',' expected. + +539 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:539:96 - error TS1109: Expression expected. + +539 listener: (req: InstanceType, socket: stream.Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/http.d.ts:540:10 - error TS1005: ';' expected. + +540 ): this; +   ~ + +../node_modules/@types/node/http.d.ts:1593:47 - error TS1005: ',' expected. + +1593 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:1593:71 - error TS1109: Expression expected. + +1593 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:1594:5 - error TS1109: Expression expected. + +1594 >(requestListener?: RequestListener): Server; +   ~ + +../node_modules/@types/node/http.d.ts:1594:23 - error TS1109: Expression expected. + +1594 >(requestListener?: RequestListener): Server; +   ~ + +../node_modules/@types/node/http.d.ts:1594:59 - error TS1005: '(' expected. + +1594 >(requestListener?: RequestListener): Server; +   ~ + +../node_modules/@types/node/http.d.ts:1594:60 - error TS1005: ')' expected. + +1594 >(requestListener?: RequestListener): Server; +   ~ + +../node_modules/@types/node/http.d.ts:1594:87 - error TS1005: '(' expected. + +1594 >(requestListener?: RequestListener): Server; +   ~ + +../node_modules/@types/node/http.d.ts:1597:47 - error TS1005: ',' expected. + +1597 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:1597:71 - error TS1109: Expression expected. + +1597 Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http.d.ts:1598:5 - error TS1109: Expression expected. + +1598 >( +   ~ + +../node_modules/@types/node/http.d.ts:1599:16 - error TS1005: ')' expected. + +1599 options: ServerOptions, +   ~ + +../node_modules/@types/node/http.d.ts:1599:50 - error TS1109: Expression expected. + +1599 options: ServerOptions, +   ~ + +../node_modules/@types/node/http.d.ts:1600:25 - error TS1109: Expression expected. + +1600 requestListener?: RequestListener, +   ~ + +../node_modules/@types/node/http.d.ts:1600:61 - error TS1109: Expression expected. + +1600 requestListener?: RequestListener, +   ~ + +../node_modules/@types/node/http.d.ts:1601:5 - error TS1109: Expression expected. + +1601 ): Server; +   ~ + +../node_modules/@types/node/http.d.ts:1601:6 - error TS1128: Declaration or statement expected. + +1601 ): Server; +   ~ + +../node_modules/@types/node/http.d.ts:1601:33 - error TS1005: '(' expected. + +1601 ): Server; +   ~ + +../node_modules/@types/node/http2.d.ts:1057:52 - error TS1005: ',' expected. + +1057 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1057:81 - error TS1109: Expression expected. + +1057 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1058:22 - error TS1005: ';' expected. + +1058 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1058:56 - error TS1005: ';' expected. + +1058 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:1059:23 - error TS1005: ';' expected. + +1059 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1059:86 - error TS1109: Expression expected. + +1059 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1060:5 - error TS1109: Expression expected. + +1060 > extends Http2Session { +   ~ + +../node_modules/@types/node/http2.d.ts:1060:7 - error TS1109: Expression expected. + +1060 > extends Http2Session { +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1060:28 - error TS1005: ';' expected. + +1060 > extends Http2Session { +   ~ + +../node_modules/@types/node/http2.d.ts:1061:9 - error TS1128: Declaration or statement expected. + +1061 readonly server: +   ~~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1062:13 - error TS1109: Expression expected. + +1062 | Http2Server +   ~ + +../node_modules/@types/node/http2.d.ts:1063:13 - error TS1005: '(' expected. + +1063 | Http2SecureServer; +   ~ + +../node_modules/@types/node/http2.d.ts:1063:90 - error TS1005: '(' expected. + +1063 | Http2SecureServer; +   ~ + +../node_modules/@types/node/http2.d.ts:1102:19 - error TS1005: ',' expected. + +1102 altsvc(alt: string, originOrStream: number | string | url.URL | AlternativeServiceOptions): void; +   ~ + +../node_modules/@types/node/http2.d.ts:1102:43 - error TS1005: ',' expected. + +1102 altsvc(alt: string, originOrStream: number | string | url.URL | AlternativeServiceOptions): void; +   ~ + +../node_modules/@types/node/http2.d.ts:1102:99 - error TS1005: ';' expected. + +1102 altsvc(alt: string, originOrStream: number | string | url.URL | AlternativeServiceOptions): void; +   ~ + +../node_modules/@types/node/http2.d.ts:1102:105 - error TS1109: Expression expected. + +1102 altsvc(alt: string, originOrStream: number | string | url.URL | AlternativeServiceOptions): void; +   ~ + +../node_modules/@types/node/http2.d.ts:1148:23 - error TS1005: ',' expected. + +1148 ...origins: Array< +   ~ + +../node_modules/@types/node/http2.d.ts:1155:9 - error TS1005: '(' expected. + +1155 ): void; +   ~ + +../node_modules/@types/node/http2.d.ts:1155:10 - error TS1005: ',' expected. + +1155 ): void; +   ~ + +../node_modules/@types/node/http2.d.ts:1155:16 - error TS1109: Expression expected. + +1155 ): void; +   ~ + +../node_modules/@types/node/http2.d.ts:1157:18 - error TS1005: ',' expected. + +1157 event: "connect", +   ~ + +../node_modules/@types/node/http2.d.ts:1158:21 - error TS1005: ',' expected. + +1158 listener: ( +   ~ + +../node_modules/@types/node/http2.d.ts:1161:22 - error TS1109: Expression expected. + +1161 ) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1162:10 - error TS1005: ';' expected. + +1162 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1164:18 - error TS1005: ',' expected. + +1164 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1165:21 - error TS1005: ',' expected. + +1165 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1165:103 - error TS1109: Expression expected. + +1165 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1166:10 - error TS1005: ';' expected. + +1166 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1167:26 - error TS1005: ',' expected. + +1167 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1167:53 - error TS1005: ',' expected. + +1167 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1167:79 - error TS1109: Expression expected. + +1167 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1167:80 - error TS1005: ';' expected. + +1167 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1169:18 - error TS1005: ',' expected. + +1169 event: "connect", +   ~ + +../node_modules/@types/node/http2.d.ts:1170:20 - error TS1005: ',' expected. + +1170 session: ServerHttp2Session, +   ~ + +../node_modules/@types/node/http2.d.ts:1170:98 - error TS1109: Expression expected. + +1170 session: ServerHttp2Session, +   ~ + +../node_modules/@types/node/http2.d.ts:1171:19 - error TS1005: ',' expected. + +1171 socket: net.Socket | tls.TLSSocket, +   ~ + +../node_modules/@types/node/http2.d.ts:1172:10 - error TS1005: ';' expected. + +1172 ): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1173:19 - error TS1005: ',' expected. + +1173 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1173:37 - error TS1005: ',' expected. + +1173 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1173:65 - error TS1005: ',' expected. + +1173 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1173:93 - error TS1005: ',' expected. + +1173 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1173:102 - error TS1005: ';' expected. + +1173 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1174:19 - error TS1005: ',' expected. + +1174 emit(event: string | symbol, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1174:45 - error TS1005: ',' expected. + +1174 emit(event: string | symbol, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1174:51 - error TS1011: An element access expression should take an argument. + +1174 emit(event: string | symbol, ...args: any[]): boolean; +    + +../node_modules/@types/node/http2.d.ts:1174:53 - error TS1005: ';' expected. + +1174 emit(event: string | symbol, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1176:18 - error TS1005: ',' expected. + +1176 event: "connect", +   ~ + +../node_modules/@types/node/http2.d.ts:1177:21 - error TS1005: ',' expected. + +1177 listener: ( +   ~ + +../node_modules/@types/node/http2.d.ts:1180:22 - error TS1109: Expression expected. + +1180 ) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1181:10 - error TS1005: ';' expected. + +1181 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1183:18 - error TS1005: ',' expected. + +1183 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1184:21 - error TS1005: ',' expected. + +1184 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1184:103 - error TS1109: Expression expected. + +1184 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1185:10 - error TS1005: ';' expected. + +1185 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1186:17 - error TS1005: ',' expected. + +1186 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1186:44 - error TS1005: ',' expected. + +1186 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1186:70 - error TS1109: Expression expected. + +1186 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1186:71 - error TS1005: ';' expected. + +1186 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1188:18 - error TS1005: ',' expected. + +1188 event: "connect", +   ~ + +../node_modules/@types/node/http2.d.ts:1189:21 - error TS1005: ',' expected. + +1189 listener: ( +   ~ + +../node_modules/@types/node/http2.d.ts:1192:22 - error TS1109: Expression expected. + +1192 ) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1193:10 - error TS1005: ';' expected. + +1193 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1195:18 - error TS1005: ',' expected. + +1195 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1196:21 - error TS1005: ',' expected. + +1196 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1196:103 - error TS1109: Expression expected. + +1196 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1197:10 - error TS1005: ';' expected. + +1197 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1198:19 - error TS1005: ',' expected. + +1198 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1198:46 - error TS1005: ',' expected. + +1198 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1198:72 - error TS1109: Expression expected. + +1198 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1198:73 - error TS1005: ';' expected. + +1198 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1200:18 - error TS1005: ',' expected. + +1200 event: "connect", +   ~ + +../node_modules/@types/node/http2.d.ts:1201:21 - error TS1005: ',' expected. + +1201 listener: ( +   ~ + +../node_modules/@types/node/http2.d.ts:1204:22 - error TS1109: Expression expected. + +1204 ) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1205:10 - error TS1005: ';' expected. + +1205 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1207:18 - error TS1005: ',' expected. + +1207 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1208:21 - error TS1005: ',' expected. + +1208 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1208:103 - error TS1109: Expression expected. + +1208 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1209:10 - error TS1005: ';' expected. + +1209 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1210:30 - error TS1005: ',' expected. + +1210 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1210:57 - error TS1005: ',' expected. + +1210 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1210:83 - error TS1109: Expression expected. + +1210 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1210:84 - error TS1005: ';' expected. + +1210 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1212:18 - error TS1005: ',' expected. + +1212 event: "connect", +   ~ + +../node_modules/@types/node/http2.d.ts:1213:21 - error TS1005: ',' expected. + +1213 listener: ( +   ~ + +../node_modules/@types/node/http2.d.ts:1216:22 - error TS1109: Expression expected. + +1216 ) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1217:10 - error TS1005: ';' expected. + +1217 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1219:18 - error TS1005: ',' expected. + +1219 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1220:21 - error TS1005: ',' expected. + +1220 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1220:103 - error TS1109: Expression expected. + +1220 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1221:10 - error TS1005: ';' expected. + +1221 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1222:34 - error TS1005: ',' expected. + +1222 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1222:61 - error TS1005: ',' expected. + +1222 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1222:87 - error TS1109: Expression expected. + +1222 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1222:88 - error TS1005: ';' expected. + +1222 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1251:52 - error TS1005: ',' expected. + +1251 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1251:81 - error TS1109: Expression expected. + +1251 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1252:22 - error TS1005: ';' expected. + +1252 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1252:56 - error TS1005: ';' expected. + +1252 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:1253:23 - error TS1005: ';' expected. + +1253 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1253:86 - error TS1109: Expression expected. + +1253 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1254:5 - error TS1109: Expression expected. + +1254 > extends SessionOptions { +   ~ + +../node_modules/@types/node/http2.d.ts:1254:7 - error TS1109: Expression expected. + +1254 > extends SessionOptions { +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1254:30 - error TS1005: ';' expected. + +1254 > extends SessionOptions { +   ~ + +../node_modules/@types/node/http2.d.ts:1255:30 - error TS1109: Expression expected. + +1255 Http1IncomingMessage?: Http1Request | undefined; +   ~ + +../node_modules/@types/node/http2.d.ts:1256:29 - error TS1109: Expression expected. + +1256 Http1ServerResponse?: Http1Response | undefined; +   ~ + +../node_modules/@types/node/http2.d.ts:1257:28 - error TS1109: Expression expected. + +1257 Http2ServerRequest?: Http2Request | undefined; +   ~ + +../node_modules/@types/node/http2.d.ts:1258:29 - error TS1109: Expression expected. + +1258 Http2ServerResponse?: Http2Response | undefined; +   ~ + +../node_modules/@types/node/http2.d.ts:1263:52 - error TS1005: ',' expected. + +1263 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1263:81 - error TS1109: Expression expected. + +1263 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1264:22 - error TS1005: ';' expected. + +1264 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1264:56 - error TS1005: ';' expected. + +1264 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:1265:23 - error TS1005: ';' expected. + +1265 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1265:86 - error TS1109: Expression expected. + +1265 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1266:5 - error TS1109: Expression expected. + +1266 > extends ServerSessionOptions, tls.TlsOptions {} +   ~ + +../node_modules/@types/node/http2.d.ts:1266:7 - error TS1109: Expression expected. + +1266 > extends ServerSessionOptions, tls.TlsOptions {} +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1266:93 - error TS1109: Expression expected. + +1266 > extends ServerSessionOptions, tls.TlsOptions {} +   ~ + +../node_modules/@types/node/http2.d.ts:1266:110 - error TS1005: ';' expected. + +1266 > extends ServerSessionOptions, tls.TlsOptions {} +   ~ + +../node_modules/@types/node/http2.d.ts:1269:52 - error TS1005: ',' expected. + +1269 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1269:81 - error TS1109: Expression expected. + +1269 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1270:22 - error TS1005: ';' expected. + +1270 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1270:56 - error TS1005: ';' expected. + +1270 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:1271:23 - error TS1005: ';' expected. + +1271 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1271:86 - error TS1109: Expression expected. + +1271 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1272:5 - error TS1109: Expression expected. + +1272 > extends ServerSessionOptions { +   ~ + +../node_modules/@types/node/http2.d.ts:1272:7 - error TS1109: Expression expected. + +1272 > extends ServerSessionOptions { +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1273:46 - error TS1005: ',' expected. + +1273 streamResetBurst?: number | undefined; +   ~ + +../node_modules/@types/node/http2.d.ts:1274:45 - error TS1005: ',' expected. + +1274 streamResetRate?: number | undefined; +   ~ + +../node_modules/@types/node/http2.d.ts:1278:52 - error TS1005: ',' expected. + +1278 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1278:81 - error TS1109: Expression expected. + +1278 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1279:22 - error TS1005: ';' expected. + +1279 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1279:56 - error TS1005: ';' expected. + +1279 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:1280:23 - error TS1005: ';' expected. + +1280 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1280:86 - error TS1109: Expression expected. + +1280 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1281:5 - error TS1109: Expression expected. + +1281 > extends SecureServerSessionOptions { +   ~ + +../node_modules/@types/node/http2.d.ts:1281:7 - error TS1109: Expression expected. + +1281 > extends SecureServerSessionOptions { +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1282:41 - error TS1005: ',' expected. + +1282 allowHTTP1?: boolean | undefined; +   ~ + +../node_modules/@types/node/http2.d.ts:1283:26 - error TS1011: An element access expression should take an argument. + +1283 origins?: string[] | undefined; +    + +../node_modules/@types/node/http2.d.ts:1283:39 - error TS1005: ',' expected. + +1283 origins?: string[] | undefined; +   ~ + +../node_modules/@types/node/http2.d.ts:1295:52 - error TS1005: ',' expected. + +1295 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1295:81 - error TS1109: Expression expected. + +1295 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1296:22 - error TS1005: ';' expected. + +1296 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1296:56 - error TS1005: ';' expected. + +1296 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:1297:23 - error TS1005: ';' expected. + +1297 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1297:86 - error TS1109: Expression expected. + +1297 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1298:5 - error TS1109: Expression expected. + +1298 > extends net.Server, HTTP2ServerCommon { +   ~ + +../node_modules/@types/node/http2.d.ts:1298:7 - error TS1109: Expression expected. + +1298 > extends net.Server, HTTP2ServerCommon { +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1298:45 - error TS1005: ';' expected. + +1298 > extends net.Server, HTTP2ServerCommon { +   ~ + +../node_modules/@types/node/http2.d.ts:1300:18 - error TS1005: ',' expected. + +1300 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1301:21 - error TS1005: ',' expected. + +1301 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1301:107 - error TS1109: Expression expected. + +1301 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1302:10 - error TS1005: ';' expected. + +1302 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1304:18 - error TS1005: ',' expected. + +1304 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1305:21 - error TS1005: ',' expected. + +1305 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1305:107 - error TS1109: Expression expected. + +1305 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1306:10 - error TS1005: ';' expected. + +1306 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1308:18 - error TS1005: ',' expected. + +1308 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1309:21 - error TS1005: ',' expected. + +1309 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1309:118 - error TS1109: Expression expected. + +1309 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1310:10 - error TS1005: ';' expected. + +1310 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1311:26 - error TS1005: ',' expected. + +1311 addListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1311:52 - error TS1005: ',' expected. + +1311 addListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1311:74 - error TS1109: Expression expected. + +1311 addListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1311:75 - error TS1005: ';' expected. + +1311 addListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1313:18 - error TS1005: ',' expected. + +1313 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1314:21 - error TS1005: ',' expected. + +1314 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1314:103 - error TS1109: Expression expected. + +1314 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1315:10 - error TS1005: ';' expected. + +1315 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1316:26 - error TS1005: ',' expected. + +1316 addListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1316:47 - error TS1005: ',' expected. + +1316 addListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1316:59 - error TS1109: Expression expected. + +1316 addListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1316:60 - error TS1005: ';' expected. + +1316 addListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1317:26 - error TS1005: ',' expected. + +1317 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1317:53 - error TS1005: ',' expected. + +1317 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1317:79 - error TS1109: Expression expected. + +1317 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1317:80 - error TS1005: ';' expected. + +1317 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1319:18 - error TS1005: ',' expected. + +1319 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1320:20 - error TS1005: ',' expected. + +1320 request: InstanceType, +   ~ + +../node_modules/@types/node/http2.d.ts:1320:48 - error TS1109: Expression expected. + +1320 request: InstanceType, +   ~ + +../node_modules/@types/node/http2.d.ts:1321:21 - error TS1005: ',' expected. + +1321 response: InstanceType, +   ~ + +../node_modules/@types/node/http2.d.ts:1321:50 - error TS1109: Expression expected. + +1321 response: InstanceType, +   ~ + +../node_modules/@types/node/http2.d.ts:1322:10 - error TS1005: ';' expected. + +1322 ): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1323:19 - error TS1005: ',' expected. + +1323 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1323:39 - error TS1005: ',' expected. + +1323 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1323:67 - error TS1109: Expression expected. + +1323 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1323:77 - error TS1005: ',' expected. + +1323 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1323:106 - error TS1005: '(' expected. + +1323 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1323:107 - error TS1005: ',' expected. + +1323 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1323:116 - error TS1005: ')' expected. + +1323 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1325:18 - error TS1005: ',' expected. + +1325 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1326:20 - error TS1005: ',' expected. + +1326 session: ServerHttp2Session, +   ~ + +../node_modules/@types/node/http2.d.ts:1326:98 - error TS1109: Expression expected. + +1326 session: ServerHttp2Session, +   ~ + +../node_modules/@types/node/http2.d.ts:1327:10 - error TS1005: ';' expected. + +1327 ): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1328:19 - error TS1005: ',' expected. + +1328 emit(event: "sessionError", err: Error): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1328:40 - error TS1005: ',' expected. + +1328 emit(event: "sessionError", err: Error): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1328:48 - error TS1005: ';' expected. + +1328 emit(event: "sessionError", err: Error): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1329:19 - error TS1005: ',' expected. + +1329 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1329:37 - error TS1005: ',' expected. + +1329 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1329:65 - error TS1005: ',' expected. + +1329 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1329:93 - error TS1005: ',' expected. + +1329 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1329:102 - error TS1005: ';' expected. + +1329 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1330:19 - error TS1005: ',' expected. + +1330 emit(event: "timeout"): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1330:31 - error TS1005: ';' expected. + +1330 emit(event: "timeout"): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1331:19 - error TS1005: ',' expected. + +1331 emit(event: string | symbol, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1331:45 - error TS1005: ',' expected. + +1331 emit(event: string | symbol, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1331:51 - error TS1011: An element access expression should take an argument. + +1331 emit(event: string | symbol, ...args: any[]): boolean; +    + +../node_modules/@types/node/http2.d.ts:1331:53 - error TS1005: ';' expected. + +1331 emit(event: string | symbol, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1333:18 - error TS1005: ',' expected. + +1333 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1334:21 - error TS1005: ',' expected. + +1334 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1334:107 - error TS1109: Expression expected. + +1334 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1335:10 - error TS1005: ';' expected. + +1335 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1337:18 - error TS1005: ',' expected. + +1337 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1338:21 - error TS1005: ',' expected. + +1338 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1338:107 - error TS1109: Expression expected. + +1338 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1339:10 - error TS1005: ';' expected. + +1339 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1341:18 - error TS1005: ',' expected. + +1341 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1342:21 - error TS1005: ',' expected. + +1342 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1342:118 - error TS1109: Expression expected. + +1342 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1343:10 - error TS1005: ';' expected. + +1343 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1344:17 - error TS1005: ',' expected. + +1344 on(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1344:43 - error TS1005: ',' expected. + +1344 on(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1344:65 - error TS1109: Expression expected. + +1344 on(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1344:66 - error TS1005: ';' expected. + +1344 on(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1346:18 - error TS1005: ',' expected. + +1346 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1347:21 - error TS1005: ',' expected. + +1347 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1347:103 - error TS1109: Expression expected. + +1347 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1348:10 - error TS1005: ';' expected. + +1348 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1349:17 - error TS1005: ',' expected. + +1349 on(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1349:38 - error TS1005: ',' expected. + +1349 on(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1349:50 - error TS1109: Expression expected. + +1349 on(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1349:51 - error TS1005: ';' expected. + +1349 on(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1350:17 - error TS1005: ',' expected. + +1350 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1350:44 - error TS1005: ',' expected. + +1350 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1350:70 - error TS1109: Expression expected. + +1350 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1350:71 - error TS1005: ';' expected. + +1350 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1352:18 - error TS1005: ',' expected. + +1352 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1353:21 - error TS1005: ',' expected. + +1353 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1353:107 - error TS1109: Expression expected. + +1353 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1354:10 - error TS1005: ';' expected. + +1354 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1356:18 - error TS1005: ',' expected. + +1356 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1357:21 - error TS1005: ',' expected. + +1357 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1357:107 - error TS1109: Expression expected. + +1357 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1358:10 - error TS1005: ';' expected. + +1358 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1360:18 - error TS1005: ',' expected. + +1360 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1361:21 - error TS1005: ',' expected. + +1361 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1361:118 - error TS1109: Expression expected. + +1361 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1362:10 - error TS1005: ';' expected. + +1362 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1363:19 - error TS1005: ',' expected. + +1363 once(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1363:45 - error TS1005: ',' expected. + +1363 once(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1363:67 - error TS1109: Expression expected. + +1363 once(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1363:68 - error TS1005: ';' expected. + +1363 once(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1365:18 - error TS1005: ',' expected. + +1365 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1366:21 - error TS1005: ',' expected. + +1366 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1366:103 - error TS1109: Expression expected. + +1366 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1367:10 - error TS1005: ';' expected. + +1367 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1368:19 - error TS1005: ',' expected. + +1368 once(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1368:40 - error TS1005: ',' expected. + +1368 once(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1368:52 - error TS1109: Expression expected. + +1368 once(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1368:53 - error TS1005: ';' expected. + +1368 once(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1369:19 - error TS1005: ',' expected. + +1369 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1369:46 - error TS1005: ',' expected. + +1369 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1369:72 - error TS1109: Expression expected. + +1369 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1369:73 - error TS1005: ';' expected. + +1369 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1371:18 - error TS1005: ',' expected. + +1371 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1372:21 - error TS1005: ',' expected. + +1372 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1372:107 - error TS1109: Expression expected. + +1372 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1373:10 - error TS1005: ';' expected. + +1373 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1375:18 - error TS1005: ',' expected. + +1375 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1376:21 - error TS1005: ',' expected. + +1376 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1376:107 - error TS1109: Expression expected. + +1376 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1377:10 - error TS1005: ';' expected. + +1377 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1379:18 - error TS1005: ',' expected. + +1379 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1380:21 - error TS1005: ',' expected. + +1380 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1380:118 - error TS1109: Expression expected. + +1380 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1381:10 - error TS1005: ';' expected. + +1381 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1382:30 - error TS1005: ',' expected. + +1382 prependListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1382:56 - error TS1005: ',' expected. + +1382 prependListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1382:78 - error TS1109: Expression expected. + +1382 prependListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1382:79 - error TS1005: ';' expected. + +1382 prependListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1384:18 - error TS1005: ',' expected. + +1384 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1385:21 - error TS1005: ',' expected. + +1385 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1385:103 - error TS1109: Expression expected. + +1385 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1386:10 - error TS1005: ';' expected. + +1386 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1387:30 - error TS1005: ',' expected. + +1387 prependListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1387:51 - error TS1005: ',' expected. + +1387 prependListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1387:63 - error TS1109: Expression expected. + +1387 prependListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1387:64 - error TS1005: ';' expected. + +1387 prependListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1388:30 - error TS1005: ',' expected. + +1388 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1388:57 - error TS1005: ',' expected. + +1388 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1388:83 - error TS1109: Expression expected. + +1388 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1388:84 - error TS1005: ';' expected. + +1388 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1390:18 - error TS1005: ',' expected. + +1390 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1391:21 - error TS1005: ',' expected. + +1391 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1391:107 - error TS1109: Expression expected. + +1391 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1392:10 - error TS1005: ';' expected. + +1392 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1394:18 - error TS1005: ',' expected. + +1394 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1395:21 - error TS1005: ',' expected. + +1395 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1395:107 - error TS1109: Expression expected. + +1395 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1396:10 - error TS1005: ';' expected. + +1396 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1398:18 - error TS1005: ',' expected. + +1398 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1399:21 - error TS1005: ',' expected. + +1399 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1399:118 - error TS1109: Expression expected. + +1399 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1400:10 - error TS1005: ';' expected. + +1400 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1401:34 - error TS1005: ',' expected. + +1401 prependOnceListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1401:60 - error TS1005: ',' expected. + +1401 prependOnceListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1401:82 - error TS1109: Expression expected. + +1401 prependOnceListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1401:83 - error TS1005: ';' expected. + +1401 prependOnceListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1403:18 - error TS1005: ',' expected. + +1403 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1404:21 - error TS1005: ',' expected. + +1404 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1404:103 - error TS1109: Expression expected. + +1404 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1405:10 - error TS1005: ';' expected. + +1405 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1406:34 - error TS1005: ',' expected. + +1406 prependOnceListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1406:55 - error TS1005: ',' expected. + +1406 prependOnceListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1406:67 - error TS1109: Expression expected. + +1406 prependOnceListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1406:68 - error TS1005: ';' expected. + +1406 prependOnceListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1407:34 - error TS1005: ',' expected. + +1407 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1407:61 - error TS1005: ',' expected. + +1407 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1407:87 - error TS1109: Expression expected. + +1407 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1407:88 - error TS1005: ';' expected. + +1407 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1411:52 - error TS1005: ',' expected. + +1411 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1411:81 - error TS1109: Expression expected. + +1411 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1412:22 - error TS1005: ';' expected. + +1412 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1412:56 - error TS1005: ';' expected. + +1412 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:1413:23 - error TS1005: ';' expected. + +1413 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1413:86 - error TS1109: Expression expected. + +1413 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:1414:5 - error TS1109: Expression expected. + +1414 > extends tls.Server, HTTP2ServerCommon { +   ~ + +../node_modules/@types/node/http2.d.ts:1414:7 - error TS1109: Expression expected. + +1414 > extends tls.Server, HTTP2ServerCommon { +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:1414:45 - error TS1005: ';' expected. + +1414 > extends tls.Server, HTTP2ServerCommon { +   ~ + +../node_modules/@types/node/http2.d.ts:1416:18 - error TS1005: ',' expected. + +1416 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1417:21 - error TS1005: ',' expected. + +1417 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1417:107 - error TS1109: Expression expected. + +1417 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1418:10 - error TS1005: ';' expected. + +1418 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1420:18 - error TS1005: ',' expected. + +1420 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1421:21 - error TS1005: ',' expected. + +1421 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1421:107 - error TS1109: Expression expected. + +1421 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1422:10 - error TS1005: ';' expected. + +1422 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1424:18 - error TS1005: ',' expected. + +1424 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1425:21 - error TS1005: ',' expected. + +1425 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1425:118 - error TS1109: Expression expected. + +1425 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1426:10 - error TS1005: ';' expected. + +1426 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1427:26 - error TS1005: ',' expected. + +1427 addListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1427:52 - error TS1005: ',' expected. + +1427 addListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1427:74 - error TS1109: Expression expected. + +1427 addListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1427:75 - error TS1005: ';' expected. + +1427 addListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1429:18 - error TS1005: ',' expected. + +1429 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1430:21 - error TS1005: ',' expected. + +1430 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1430:103 - error TS1109: Expression expected. + +1430 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1431:10 - error TS1005: ';' expected. + +1431 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1432:26 - error TS1005: ',' expected. + +1432 addListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1432:47 - error TS1005: ',' expected. + +1432 addListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1432:59 - error TS1109: Expression expected. + +1432 addListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1432:60 - error TS1005: ';' expected. + +1432 addListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1433:26 - error TS1005: ',' expected. + +1433 addListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1433:55 - error TS1005: ',' expected. + +1433 addListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1433:88 - error TS1109: Expression expected. + +1433 addListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1433:89 - error TS1005: ';' expected. + +1433 addListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1434:26 - error TS1005: ',' expected. + +1434 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1434:53 - error TS1005: ',' expected. + +1434 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1434:79 - error TS1109: Expression expected. + +1434 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1434:80 - error TS1005: ';' expected. + +1434 addListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1436:18 - error TS1005: ',' expected. + +1436 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1437:20 - error TS1005: ',' expected. + +1437 request: InstanceType, +   ~ + +../node_modules/@types/node/http2.d.ts:1437:48 - error TS1109: Expression expected. + +1437 request: InstanceType, +   ~ + +../node_modules/@types/node/http2.d.ts:1438:21 - error TS1005: ',' expected. + +1438 response: InstanceType, +   ~ + +../node_modules/@types/node/http2.d.ts:1438:50 - error TS1109: Expression expected. + +1438 response: InstanceType, +   ~ + +../node_modules/@types/node/http2.d.ts:1439:10 - error TS1005: ';' expected. + +1439 ): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1440:19 - error TS1005: ',' expected. + +1440 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1440:39 - error TS1005: ',' expected. + +1440 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1440:67 - error TS1109: Expression expected. + +1440 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1440:77 - error TS1005: ',' expected. + +1440 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1440:106 - error TS1005: '(' expected. + +1440 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1440:107 - error TS1005: ',' expected. + +1440 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1440:116 - error TS1005: ')' expected. + +1440 emit(event: "request", request: InstanceType, response: InstanceType): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1442:18 - error TS1005: ',' expected. + +1442 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1443:20 - error TS1005: ',' expected. + +1443 session: ServerHttp2Session, +   ~ + +../node_modules/@types/node/http2.d.ts:1443:98 - error TS1109: Expression expected. + +1443 session: ServerHttp2Session, +   ~ + +../node_modules/@types/node/http2.d.ts:1444:10 - error TS1005: ';' expected. + +1444 ): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1445:19 - error TS1005: ',' expected. + +1445 emit(event: "sessionError", err: Error): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1445:40 - error TS1005: ',' expected. + +1445 emit(event: "sessionError", err: Error): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1445:48 - error TS1005: ';' expected. + +1445 emit(event: "sessionError", err: Error): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1446:19 - error TS1005: ',' expected. + +1446 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1446:37 - error TS1005: ',' expected. + +1446 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1446:65 - error TS1005: ',' expected. + +1446 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1446:93 - error TS1005: ',' expected. + +1446 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1446:102 - error TS1005: ';' expected. + +1446 emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1447:19 - error TS1005: ',' expected. + +1447 emit(event: "timeout"): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1447:31 - error TS1005: ';' expected. + +1447 emit(event: "timeout"): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1448:19 - error TS1005: ',' expected. + +1448 emit(event: "unknownProtocol", socket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1448:46 - error TS1005: ',' expected. + +1448 emit(event: "unknownProtocol", socket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1448:62 - error TS1005: ';' expected. + +1448 emit(event: "unknownProtocol", socket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1449:19 - error TS1005: ',' expected. + +1449 emit(event: string | symbol, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1449:45 - error TS1005: ',' expected. + +1449 emit(event: string | symbol, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1449:51 - error TS1011: An element access expression should take an argument. + +1449 emit(event: string | symbol, ...args: any[]): boolean; +    + +../node_modules/@types/node/http2.d.ts:1449:53 - error TS1005: ';' expected. + +1449 emit(event: string | symbol, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/http2.d.ts:1451:18 - error TS1005: ',' expected. + +1451 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1452:21 - error TS1005: ',' expected. + +1452 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1452:107 - error TS1109: Expression expected. + +1452 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1453:10 - error TS1005: ';' expected. + +1453 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1455:18 - error TS1005: ',' expected. + +1455 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1456:21 - error TS1005: ',' expected. + +1456 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1456:107 - error TS1109: Expression expected. + +1456 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1457:10 - error TS1005: ';' expected. + +1457 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1459:18 - error TS1005: ',' expected. + +1459 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1460:21 - error TS1005: ',' expected. + +1460 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1460:118 - error TS1109: Expression expected. + +1460 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1461:10 - error TS1005: ';' expected. + +1461 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1462:17 - error TS1005: ',' expected. + +1462 on(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1462:43 - error TS1005: ',' expected. + +1462 on(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1462:65 - error TS1109: Expression expected. + +1462 on(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1462:66 - error TS1005: ';' expected. + +1462 on(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1464:18 - error TS1005: ',' expected. + +1464 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1465:21 - error TS1005: ',' expected. + +1465 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1465:103 - error TS1109: Expression expected. + +1465 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1466:10 - error TS1005: ';' expected. + +1466 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1467:17 - error TS1005: ',' expected. + +1467 on(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1467:38 - error TS1005: ',' expected. + +1467 on(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1467:50 - error TS1109: Expression expected. + +1467 on(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1467:51 - error TS1005: ';' expected. + +1467 on(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1468:17 - error TS1005: ',' expected. + +1468 on(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1468:46 - error TS1005: ',' expected. + +1468 on(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1468:79 - error TS1109: Expression expected. + +1468 on(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1468:80 - error TS1005: ';' expected. + +1468 on(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1469:17 - error TS1005: ',' expected. + +1469 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1469:44 - error TS1005: ',' expected. + +1469 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1469:70 - error TS1109: Expression expected. + +1469 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1469:71 - error TS1005: ';' expected. + +1469 on(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1471:18 - error TS1005: ',' expected. + +1471 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1472:21 - error TS1005: ',' expected. + +1472 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1472:107 - error TS1109: Expression expected. + +1472 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1473:10 - error TS1005: ';' expected. + +1473 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1475:18 - error TS1005: ',' expected. + +1475 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1476:21 - error TS1005: ',' expected. + +1476 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1476:107 - error TS1109: Expression expected. + +1476 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1477:10 - error TS1005: ';' expected. + +1477 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1479:18 - error TS1005: ',' expected. + +1479 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1480:21 - error TS1005: ',' expected. + +1480 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1480:118 - error TS1109: Expression expected. + +1480 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1481:10 - error TS1005: ';' expected. + +1481 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1482:19 - error TS1005: ',' expected. + +1482 once(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1482:45 - error TS1005: ',' expected. + +1482 once(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1482:67 - error TS1109: Expression expected. + +1482 once(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1482:68 - error TS1005: ';' expected. + +1482 once(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1484:18 - error TS1005: ',' expected. + +1484 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1485:21 - error TS1005: ',' expected. + +1485 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1485:103 - error TS1109: Expression expected. + +1485 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1486:10 - error TS1005: ';' expected. + +1486 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1487:19 - error TS1005: ',' expected. + +1487 once(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1487:40 - error TS1005: ',' expected. + +1487 once(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1487:52 - error TS1109: Expression expected. + +1487 once(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1487:53 - error TS1005: ';' expected. + +1487 once(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1488:19 - error TS1005: ',' expected. + +1488 once(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1488:48 - error TS1005: ',' expected. + +1488 once(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1488:81 - error TS1109: Expression expected. + +1488 once(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1488:82 - error TS1005: ';' expected. + +1488 once(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1489:19 - error TS1005: ',' expected. + +1489 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1489:46 - error TS1005: ',' expected. + +1489 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1489:72 - error TS1109: Expression expected. + +1489 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1489:73 - error TS1005: ';' expected. + +1489 once(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1491:18 - error TS1005: ',' expected. + +1491 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1492:21 - error TS1005: ',' expected. + +1492 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1492:107 - error TS1109: Expression expected. + +1492 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1493:10 - error TS1005: ';' expected. + +1493 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1495:18 - error TS1005: ',' expected. + +1495 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1496:21 - error TS1005: ',' expected. + +1496 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1496:107 - error TS1109: Expression expected. + +1496 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1497:10 - error TS1005: ';' expected. + +1497 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1499:18 - error TS1005: ',' expected. + +1499 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1500:21 - error TS1005: ',' expected. + +1500 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1500:118 - error TS1109: Expression expected. + +1500 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1501:10 - error TS1005: ';' expected. + +1501 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1502:30 - error TS1005: ',' expected. + +1502 prependListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1502:56 - error TS1005: ',' expected. + +1502 prependListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1502:78 - error TS1109: Expression expected. + +1502 prependListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1502:79 - error TS1005: ';' expected. + +1502 prependListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1504:18 - error TS1005: ',' expected. + +1504 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1505:21 - error TS1005: ',' expected. + +1505 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1505:103 - error TS1109: Expression expected. + +1505 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1506:10 - error TS1005: ';' expected. + +1506 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1507:30 - error TS1005: ',' expected. + +1507 prependListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1507:51 - error TS1005: ',' expected. + +1507 prependListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1507:63 - error TS1109: Expression expected. + +1507 prependListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1507:64 - error TS1005: ';' expected. + +1507 prependListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1508:30 - error TS1005: ',' expected. + +1508 prependListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1508:59 - error TS1005: ',' expected. + +1508 prependListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1508:92 - error TS1109: Expression expected. + +1508 prependListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1508:93 - error TS1005: ';' expected. + +1508 prependListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1509:30 - error TS1005: ',' expected. + +1509 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1509:57 - error TS1005: ',' expected. + +1509 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1509:83 - error TS1109: Expression expected. + +1509 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1509:84 - error TS1005: ';' expected. + +1509 prependListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1511:18 - error TS1005: ',' expected. + +1511 event: "checkContinue", +   ~ + +../node_modules/@types/node/http2.d.ts:1512:21 - error TS1005: ',' expected. + +1512 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1512:107 - error TS1109: Expression expected. + +1512 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1513:10 - error TS1005: ';' expected. + +1513 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1515:18 - error TS1005: ',' expected. + +1515 event: "request", +   ~ + +../node_modules/@types/node/http2.d.ts:1516:21 - error TS1005: ',' expected. + +1516 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1516:107 - error TS1109: Expression expected. + +1516 listener: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1517:10 - error TS1005: ';' expected. + +1517 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1519:18 - error TS1005: ',' expected. + +1519 event: "session", +   ~ + +../node_modules/@types/node/http2.d.ts:1520:21 - error TS1005: ',' expected. + +1520 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1520:118 - error TS1109: Expression expected. + +1520 listener: (session: ServerHttp2Session) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1521:10 - error TS1005: ';' expected. + +1521 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1522:34 - error TS1005: ',' expected. + +1522 prependOnceListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1522:60 - error TS1005: ',' expected. + +1522 prependOnceListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1522:82 - error TS1109: Expression expected. + +1522 prependOnceListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1522:83 - error TS1005: ';' expected. + +1522 prependOnceListener(event: "sessionError", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1524:18 - error TS1005: ',' expected. + +1524 event: "stream", +   ~ + +../node_modules/@types/node/http2.d.ts:1525:21 - error TS1005: ',' expected. + +1525 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1525:103 - error TS1109: Expression expected. + +1525 listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:1526:10 - error TS1005: ';' expected. + +1526 ): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1527:34 - error TS1005: ',' expected. + +1527 prependOnceListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1527:55 - error TS1005: ',' expected. + +1527 prependOnceListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1527:67 - error TS1109: Expression expected. + +1527 prependOnceListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1527:68 - error TS1005: ';' expected. + +1527 prependOnceListener(event: "timeout", listener: () => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1528:34 - error TS1005: ',' expected. + +1528 prependOnceListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1528:63 - error TS1005: ',' expected. + +1528 prependOnceListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1528:96 - error TS1109: Expression expected. + +1528 prependOnceListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1528:97 - error TS1005: ';' expected. + +1528 prependOnceListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1529:34 - error TS1005: ',' expected. + +1529 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1529:61 - error TS1005: ',' expected. + +1529 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1529:87 - error TS1109: Expression expected. + +1529 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:1529:88 - error TS1005: ';' expected. + +1529 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/http2.d.ts:2468:52 - error TS1005: ',' expected. + +2468 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:2468:81 - error TS1109: Expression expected. + +2468 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:2469:22 - error TS1005: ';' expected. + +2469 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:2469:56 - error TS1005: ';' expected. + +2469 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:2470:23 - error TS1005: ';' expected. + +2470 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:2470:86 - error TS1109: Expression expected. + +2470 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:2471:5 - error TS1109: Expression expected. + +2471 >( +   ~ + +../node_modules/@types/node/http2.d.ts:2472:16 - error TS1005: ')' expected. + +2472 options: ServerOptions, +   ~ + +../node_modules/@types/node/http2.d.ts:2472:89 - error TS1109: Expression expected. + +2472 options: ServerOptions, +   ~ + +../node_modules/@types/node/http2.d.ts:2473:26 - error TS1109: Expression expected. + +2473 onRequestHandler?: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:2473:112 - error TS1109: Expression expected. + +2473 onRequestHandler?: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:2474:5 - error TS1109: Expression expected. + +2474 ): Http2Server; +   ~ + +../node_modules/@types/node/http2.d.ts:2474:6 - error TS1128: Declaration or statement expected. + +2474 ): Http2Server; +   ~ + +../node_modules/@types/node/http2.d.ts:2474:77 - error TS1005: '(' expected. + +2474 ): Http2Server; +   ~ + +../node_modules/@types/node/http2.d.ts:2508:52 - error TS1005: ',' expected. + +2508 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:2508:81 - error TS1109: Expression expected. + +2508 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:2509:22 - error TS1005: ';' expected. + +2509 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:2509:56 - error TS1005: ';' expected. + +2509 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:2510:23 - error TS1005: ';' expected. + +2510 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:2510:86 - error TS1109: Expression expected. + +2510 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:2511:5 - error TS1109: Expression expected. + +2511 >( +   ~ + +../node_modules/@types/node/http2.d.ts:2512:16 - error TS1005: ')' expected. + +2512 options: SecureServerOptions, +   ~ + +../node_modules/@types/node/http2.d.ts:2512:95 - error TS1109: Expression expected. + +2512 options: SecureServerOptions, +   ~ + +../node_modules/@types/node/http2.d.ts:2513:26 - error TS1109: Expression expected. + +2513 onRequestHandler?: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:2513:112 - error TS1109: Expression expected. + +2513 onRequestHandler?: (request: InstanceType, response: InstanceType) => void, +   ~ + +../node_modules/@types/node/http2.d.ts:2514:5 - error TS1109: Expression expected. + +2514 ): Http2SecureServer; +   ~ + +../node_modules/@types/node/http2.d.ts:2514:6 - error TS1128: Declaration or statement expected. + +2514 ): Http2SecureServer; +   ~ + +../node_modules/@types/node/http2.d.ts:2514:83 - error TS1005: '(' expected. + +2514 ): Http2SecureServer; +   ~ + +../node_modules/@types/node/http2.d.ts:2548:52 - error TS1005: ',' expected. + +2548 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:2548:81 - error TS1109: Expression expected. + +2548 Http1Response extends typeof ServerResponse> = typeof ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:2549:22 - error TS1005: ';' expected. + +2549 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:2549:56 - error TS1005: ';' expected. + +2549 Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest, +   ~ + +../node_modules/@types/node/http2.d.ts:2550:23 - error TS1005: ';' expected. + +2550 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~~~~~~~ + +../node_modules/@types/node/http2.d.ts:2550:86 - error TS1109: Expression expected. + +2550 Http2Response extends typeof Http2ServerResponse> = typeof Http2ServerResponse, +   ~ + +../node_modules/@types/node/http2.d.ts:2551:5 - error TS1109: Expression expected. + +2551 >( +   ~ + +../node_modules/@types/node/http2.d.ts:2552:15 - error TS1005: ')' expected. + +2552 socket: stream.Duplex, +   ~ + +../node_modules/@types/node/http2.d.ts:2553:17 - error TS1109: Expression expected. + +2553 options?: ServerOptions, +   ~ + +../node_modules/@types/node/http2.d.ts:2553:90 - error TS1109: Expression expected. + +2553 options?: ServerOptions, +   ~ + +../node_modules/@types/node/http2.d.ts:2554:5 - error TS1109: Expression expected. + +2554 ): ServerHttp2Session; +   ~ + +../node_modules/@types/node/http2.d.ts:2554:6 - error TS1128: Declaration or statement expected. + +2554 ): ServerHttp2Session; +   ~ + +../node_modules/@types/node/http2.d.ts:2554:84 - error TS1005: '(' expected. + +2554 ): ServerHttp2Session; +   ~ + +../node_modules/@types/node/https.d.ts:13:52 - error TS1005: ',' expected. + +13 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:13:65 - error TS1005: ',' expected. + +13 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:13:74 - error TS1005: '(' expected. + +13 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:13:76 - error TS1109: Expression expected. + +13 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:14:5 - error TS1109: Expression expected. + +14 > = tls.SecureContextOptions & tls.TlsOptions & http.ServerOptions; +   ~ + +../node_modules/@types/node/https.d.ts:14:7 - error TS1109: Expression expected. + +14 > = tls.SecureContextOptions & tls.TlsOptions & http.ServerOptions; +   ~ + +../node_modules/@types/node/https.d.ts:14:90 - error TS1005: '(' expected. + +14 > = tls.SecureContextOptions & tls.TlsOptions & http.ServerOptions; +   ~ + +../node_modules/@types/node/https.d.ts:36:52 - error TS1005: ',' expected. + +36 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:36:76 - error TS1109: Expression expected. + +36 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:37:5 - error TS1109: Expression expected. + +37 > extends http.Server {} +   ~ + +../node_modules/@types/node/https.d.ts:37:7 - error TS1109: Expression expected. + +37 > extends http.Server {} +   ~~~~~~~ + +../node_modules/@types/node/https.d.ts:44:52 - error TS1005: ',' expected. + +44 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:44:76 - error TS1109: Expression expected. + +44 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:45:5 - error TS1109: Expression expected. + +45 > extends tls.Server { +   ~ + +../node_modules/@types/node/https.d.ts:45:7 - error TS1109: Expression expected. + +45 > extends tls.Server { +   ~~~~~~~ + +../node_modules/@types/node/https.d.ts:45:26 - error TS1005: ';' expected. + +45 > extends tls.Server { +   ~ + +../node_modules/@types/node/https.d.ts:46:37 - error TS1109: Expression expected. + +46 constructor(requestListener?: http.RequestListener); +   ~ + +../node_modules/@types/node/https.d.ts:46:78 - error TS1005: '(' expected. + +46 constructor(requestListener?: http.RequestListener); +   ~ + +../node_modules/@types/node/https.d.ts:46:79 - error TS1005: ')' expected. + +46 constructor(requestListener?: http.RequestListener); +   ~ + +../node_modules/@types/node/https.d.ts:48:20 - error TS1005: ',' expected. + +48 options: ServerOptions, +   ~ + +../node_modules/@types/node/https.d.ts:48:54 - error TS1109: Expression expected. + +48 options: ServerOptions, +   ~ + +../node_modules/@types/node/https.d.ts:49:29 - error TS1109: Expression expected. + +49 requestListener?: http.RequestListener, +   ~ + +../node_modules/@types/node/https.d.ts:49:70 - error TS1109: Expression expected. + +49 requestListener?: http.RequestListener, +   ~ + +../node_modules/@types/node/https.d.ts:55:30 - error TS1005: ';' expected. + +55 closeAllConnections(): void; +   ~ + +../node_modules/@types/node/https.d.ts:55:36 - error TS1109: Expression expected. + +55 closeAllConnections(): void; +   ~ + +../node_modules/@types/node/https.d.ts:60:31 - error TS1005: ';' expected. + +60 closeIdleConnections(): void; +   ~ + +../node_modules/@types/node/https.d.ts:60:37 - error TS1109: Expression expected. + +60 closeIdleConnections(): void; +   ~ + +../node_modules/@types/node/https.d.ts:61:26 - error TS1005: ',' expected. + +61 addListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:61:44 - error TS1005: ',' expected. + +61 addListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:61:70 - error TS1109: Expression expected. + +61 addListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:61:71 - error TS1005: ';' expected. + +61 addListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:62:26 - error TS1005: ',' expected. + +62 addListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:62:46 - error TS1005: ',' expected. + +62 addListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:62:96 - error TS1109: Expression expected. + +62 addListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:62:97 - error TS1005: ';' expected. + +62 addListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:64:18 - error TS1005: ',' expected. + +64 event: "newSession", +   ~ + +../node_modules/@types/node/https.d.ts:65:21 - error TS1005: ',' expected. + +65 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:65:117 - error TS1109: Expression expected. + +65 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:66:10 - error TS1005: ';' expected. + +66 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:68:18 - error TS1005: ',' expected. + +68 event: "OCSPRequest", +   ~ + +../node_modules/@types/node/https.d.ts:69:21 - error TS1005: ',' expected. + +69 listener: ( +   ~ + +../node_modules/@types/node/https.d.ts:73:22 - error TS1109: Expression expected. + +73 ) => void, +   ~ + +../node_modules/@types/node/https.d.ts:74:10 - error TS1005: ';' expected. + +74 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:76:18 - error TS1005: ',' expected. + +76 event: "resumeSession", +   ~ + +../node_modules/@types/node/https.d.ts:77:21 - error TS1005: ',' expected. + +77 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:77:103 - error TS1109: Expression expected. + +77 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:78:10 - error TS1005: ';' expected. + +78 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:79:26 - error TS1005: ',' expected. + +79 addListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:79:56 - error TS1005: ',' expected. + +79 addListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:79:92 - error TS1109: Expression expected. + +79 addListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:79:93 - error TS1005: ';' expected. + +79 addListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:80:26 - error TS1005: ',' expected. + +80 addListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:80:54 - error TS1005: ',' expected. + +80 addListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:80:102 - error TS1109: Expression expected. + +80 addListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:80:103 - error TS1005: ';' expected. + +80 addListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:81:26 - error TS1005: ',' expected. + +81 addListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:81:45 - error TS1005: ',' expected. + +81 addListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:81:57 - error TS1109: Expression expected. + +81 addListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:81:58 - error TS1005: ';' expected. + +81 addListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:82:26 - error TS1005: ',' expected. + +82 addListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:82:50 - error TS1005: ',' expected. + +82 addListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:82:76 - error TS1109: Expression expected. + +82 addListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:82:77 - error TS1005: ';' expected. + +82 addListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:83:26 - error TS1005: ',' expected. + +83 addListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:83:45 - error TS1005: ',' expected. + +83 addListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:83:67 - error TS1109: Expression expected. + +83 addListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:83:68 - error TS1005: ';' expected. + +83 addListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:84:26 - error TS1005: ',' expected. + +84 addListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:84:49 - error TS1005: ',' expected. + +84 addListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:84:61 - error TS1109: Expression expected. + +84 addListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:84:62 - error TS1005: ';' expected. + +84 addListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:85:26 - error TS1005: ',' expected. + +85 addListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:85:53 - error TS1005: ',' expected. + +85 addListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:85:94 - error TS1005: '(' expected. + +85 addListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:85:95 - error TS1005: ',' expected. + +85 addListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:85:101 - error TS1005: ')' expected. + +85 addListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:86:26 - error TS1005: ',' expected. + +86 addListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:86:56 - error TS1005: ',' expected. + +86 addListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:86:97 - error TS1005: '(' expected. + +86 addListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:86:98 - error TS1005: ',' expected. + +86 addListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:86:104 - error TS1005: ')' expected. + +86 addListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:87:26 - error TS1005: ',' expected. + +87 addListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:87:51 - error TS1005: ',' expected. + +87 addListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:87:89 - error TS1109: Expression expected. + +87 addListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:87:90 - error TS1005: ';' expected. + +87 addListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:89:18 - error TS1005: ',' expected. + +89 event: "connect", +   ~ + +../node_modules/@types/node/https.d.ts:90:21 - error TS1005: ',' expected. + +90 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:90:89 - error TS1109: Expression expected. + +90 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:91:10 - error TS1005: ';' expected. + +91 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:92:26 - error TS1005: ',' expected. + +92 addListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:92:47 - error TS1005: ',' expected. + +92 addListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:92:88 - error TS1005: '(' expected. + +92 addListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:92:89 - error TS1005: ',' expected. + +92 addListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:92:95 - error TS1005: ')' expected. + +92 addListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:94:18 - error TS1005: ',' expected. + +94 event: "upgrade", +   ~ + +../node_modules/@types/node/https.d.ts:95:21 - error TS1005: ',' expected. + +95 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:95:89 - error TS1109: Expression expected. + +95 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:96:10 - error TS1005: ';' expected. + +96 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:97:19 - error TS1005: ',' expected. + +97 emit(event: string, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:97:36 - error TS1005: ',' expected. + +97 emit(event: string, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:97:42 - error TS1011: An element access expression should take an argument. + +97 emit(event: string, ...args: any[]): boolean; +    + +../node_modules/@types/node/https.d.ts:97:44 - error TS1005: ';' expected. + +97 emit(event: string, ...args: any[]): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:98:19 - error TS1005: ',' expected. + +98 emit(event: "keylog", line: Buffer, tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:98:35 - error TS1005: ',' expected. + +98 emit(event: "keylog", line: Buffer, tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:98:54 - error TS1005: ',' expected. + +98 emit(event: "keylog", line: Buffer, tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:98:70 - error TS1005: ';' expected. + +98 emit(event: "keylog", line: Buffer, tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:100:18 - error TS1005: ',' expected. + +100 event: "newSession", +   ~ + +../node_modules/@types/node/https.d.ts:101:22 - error TS1005: ',' expected. + +101 sessionId: Buffer, +   ~ + +../node_modules/@types/node/https.d.ts:102:24 - error TS1005: ',' expected. + +102 sessionData: Buffer, +   ~ + +../node_modules/@types/node/https.d.ts:103:21 - error TS1005: ',' expected. + +103 callback: (err: Error, resp: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:103:57 - error TS1109: Expression expected. + +103 callback: (err: Error, resp: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:104:10 - error TS1005: ';' expected. + +104 ): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:106:18 - error TS1005: ',' expected. + +106 event: "OCSPRequest", +   ~ + +../node_modules/@types/node/https.d.ts:107:24 - error TS1005: ',' expected. + +107 certificate: Buffer, +   ~ + +../node_modules/@types/node/https.d.ts:108:19 - error TS1005: ',' expected. + +108 issuer: Buffer, +   ~ + +../node_modules/@types/node/https.d.ts:109:21 - error TS1005: ',' expected. + +109 callback: (err: Error | null, resp: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:109:64 - error TS1109: Expression expected. + +109 callback: (err: Error | null, resp: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:110:10 - error TS1005: ';' expected. + +110 ): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:111:19 - error TS1005: ',' expected. + +111 emit(event: "resumeSession", sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:111:47 - error TS1005: ',' expected. + +111 emit(event: "resumeSession", sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:111:65 - error TS1005: ',' expected. + +111 emit(event: "resumeSession", sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:111:108 - error TS1109: Expression expected. + +111 emit(event: "resumeSession", sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:111:109 - error TS1005: ';' expected. + +111 emit(event: "resumeSession", sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:112:19 - error TS1005: ',' expected. + +112 emit(event: "secureConnection", tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:112:50 - error TS1005: ',' expected. + +112 emit(event: "secureConnection", tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:112:66 - error TS1005: ';' expected. + +112 emit(event: "secureConnection", tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:113:19 - error TS1005: ',' expected. + +113 emit(event: "tlsClientError", err: Error, tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:113:42 - error TS1005: ',' expected. + +113 emit(event: "tlsClientError", err: Error, tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:113:60 - error TS1005: ',' expected. + +113 emit(event: "tlsClientError", err: Error, tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:113:76 - error TS1005: ';' expected. + +113 emit(event: "tlsClientError", err: Error, tlsSocket: tls.TLSSocket): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:114:19 - error TS1005: ',' expected. + +114 emit(event: "close"): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:114:29 - error TS1005: ';' expected. + +114 emit(event: "close"): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:115:19 - error TS1005: ',' expected. + +115 emit(event: "connection", socket: Duplex): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:115:41 - error TS1005: ',' expected. + +115 emit(event: "connection", socket: Duplex): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:115:50 - error TS1005: ';' expected. + +115 emit(event: "connection", socket: Duplex): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:116:19 - error TS1005: ',' expected. + +116 emit(event: "error", err: Error): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:116:33 - error TS1005: ',' expected. + +116 emit(event: "error", err: Error): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:116:41 - error TS1005: ';' expected. + +116 emit(event: "error", err: Error): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:117:19 - error TS1005: ',' expected. + +117 emit(event: "listening"): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:117:33 - error TS1005: ';' expected. + +117 emit(event: "listening"): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:119:18 - error TS1005: ',' expected. + +119 event: "checkContinue", +   ~ + +../node_modules/@types/node/https.d.ts:120:16 - error TS1005: ',' expected. + +120 req: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:120:39 - error TS1109: Expression expected. + +120 req: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:121:16 - error TS1005: ',' expected. + +121 res: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:121:40 - error TS1109: Expression expected. + +121 res: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:122:10 - error TS1005: ';' expected. + +122 ): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:124:18 - error TS1005: ',' expected. + +124 event: "checkExpectation", +   ~ + +../node_modules/@types/node/https.d.ts:125:16 - error TS1005: ',' expected. + +125 req: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:125:39 - error TS1109: Expression expected. + +125 req: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:126:16 - error TS1005: ',' expected. + +126 res: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:126:40 - error TS1109: Expression expected. + +126 res: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:127:10 - error TS1005: ';' expected. + +127 ): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:128:19 - error TS1005: ',' expected. + +128 emit(event: "clientError", err: Error, socket: Duplex): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:128:39 - error TS1005: ',' expected. + +128 emit(event: "clientError", err: Error, socket: Duplex): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:128:54 - error TS1005: ',' expected. + +128 emit(event: "clientError", err: Error, socket: Duplex): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:128:63 - error TS1005: ';' expected. + +128 emit(event: "clientError", err: Error, socket: Duplex): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:129:19 - error TS1005: ',' expected. + +129 emit(event: "connect", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:129:35 - error TS1005: ',' expected. + +129 emit(event: "connect", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:129:58 - error TS1109: Expression expected. + +129 emit(event: "connect", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:129:66 - error TS1005: ',' expected. + +129 emit(event: "connect", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:129:80 - error TS1005: ',' expected. + +129 emit(event: "connect", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:129:89 - error TS1005: ';' expected. + +129 emit(event: "connect", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:131:18 - error TS1005: ',' expected. + +131 event: "request", +   ~ + +../node_modules/@types/node/https.d.ts:132:16 - error TS1005: ',' expected. + +132 req: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:132:39 - error TS1109: Expression expected. + +132 req: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:133:16 - error TS1005: ',' expected. + +133 res: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:133:40 - error TS1109: Expression expected. + +133 res: InstanceType, +   ~ + +../node_modules/@types/node/https.d.ts:134:10 - error TS1005: ';' expected. + +134 ): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:135:19 - error TS1005: ',' expected. + +135 emit(event: "upgrade", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:135:35 - error TS1005: ',' expected. + +135 emit(event: "upgrade", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:135:58 - error TS1109: Expression expected. + +135 emit(event: "upgrade", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:135:66 - error TS1005: ',' expected. + +135 emit(event: "upgrade", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:135:80 - error TS1005: ',' expected. + +135 emit(event: "upgrade", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:135:89 - error TS1005: ';' expected. + +135 emit(event: "upgrade", req: InstanceType, socket: Duplex, head: Buffer): boolean; +   ~ + +../node_modules/@types/node/https.d.ts:136:17 - error TS1005: ',' expected. + +136 on(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:136:35 - error TS1005: ',' expected. + +136 on(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:136:61 - error TS1109: Expression expected. + +136 on(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:136:62 - error TS1005: ';' expected. + +136 on(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:137:17 - error TS1005: ',' expected. + +137 on(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:137:37 - error TS1005: ',' expected. + +137 on(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:137:87 - error TS1109: Expression expected. + +137 on(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:137:88 - error TS1005: ';' expected. + +137 on(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:139:18 - error TS1005: ',' expected. + +139 event: "newSession", +   ~ + +../node_modules/@types/node/https.d.ts:140:21 - error TS1005: ',' expected. + +140 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:140:117 - error TS1109: Expression expected. + +140 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:141:10 - error TS1005: ';' expected. + +141 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:143:18 - error TS1005: ',' expected. + +143 event: "OCSPRequest", +   ~ + +../node_modules/@types/node/https.d.ts:144:21 - error TS1005: ',' expected. + +144 listener: ( +   ~ + +../node_modules/@types/node/https.d.ts:148:22 - error TS1109: Expression expected. + +148 ) => void, +   ~ + +../node_modules/@types/node/https.d.ts:149:10 - error TS1005: ';' expected. + +149 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:151:18 - error TS1005: ',' expected. + +151 event: "resumeSession", +   ~ + +../node_modules/@types/node/https.d.ts:152:21 - error TS1005: ',' expected. + +152 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:152:103 - error TS1109: Expression expected. + +152 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:153:10 - error TS1005: ';' expected. + +153 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:154:17 - error TS1005: ',' expected. + +154 on(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:154:47 - error TS1005: ',' expected. + +154 on(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:154:83 - error TS1109: Expression expected. + +154 on(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:154:84 - error TS1005: ';' expected. + +154 on(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:155:17 - error TS1005: ',' expected. + +155 on(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:155:45 - error TS1005: ',' expected. + +155 on(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:155:93 - error TS1109: Expression expected. + +155 on(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:155:94 - error TS1005: ';' expected. + +155 on(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:156:17 - error TS1005: ',' expected. + +156 on(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:156:36 - error TS1005: ',' expected. + +156 on(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:156:48 - error TS1109: Expression expected. + +156 on(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:156:49 - error TS1005: ';' expected. + +156 on(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:157:17 - error TS1005: ',' expected. + +157 on(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:157:41 - error TS1005: ',' expected. + +157 on(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:157:67 - error TS1109: Expression expected. + +157 on(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:157:68 - error TS1005: ';' expected. + +157 on(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:158:17 - error TS1005: ',' expected. + +158 on(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:158:36 - error TS1005: ',' expected. + +158 on(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:158:58 - error TS1109: Expression expected. + +158 on(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:158:59 - error TS1005: ';' expected. + +158 on(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:159:17 - error TS1005: ',' expected. + +159 on(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:159:40 - error TS1005: ',' expected. + +159 on(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:159:52 - error TS1109: Expression expected. + +159 on(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:159:53 - error TS1005: ';' expected. + +159 on(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:160:17 - error TS1005: ',' expected. + +160 on(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:160:44 - error TS1005: ',' expected. + +160 on(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:160:85 - error TS1005: '(' expected. + +160 on(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:160:86 - error TS1005: ',' expected. + +160 on(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:160:92 - error TS1005: ')' expected. + +160 on(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:161:17 - error TS1005: ',' expected. + +161 on(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:161:47 - error TS1005: ',' expected. + +161 on(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:161:88 - error TS1005: '(' expected. + +161 on(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:161:89 - error TS1005: ',' expected. + +161 on(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:161:95 - error TS1005: ')' expected. + +161 on(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:162:17 - error TS1005: ',' expected. + +162 on(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:162:42 - error TS1005: ',' expected. + +162 on(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:162:80 - error TS1109: Expression expected. + +162 on(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:162:81 - error TS1005: ';' expected. + +162 on(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:163:17 - error TS1005: ',' expected. + +163 on(event: "connect", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:163:38 - error TS1005: ',' expected. + +163 on(event: "connect", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:163:106 - error TS1109: Expression expected. + +163 on(event: "connect", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:163:107 - error TS1005: ';' expected. + +163 on(event: "connect", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:164:17 - error TS1005: ',' expected. + +164 on(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:164:38 - error TS1005: ',' expected. + +164 on(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:164:79 - error TS1005: '(' expected. + +164 on(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:164:80 - error TS1005: ',' expected. + +164 on(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:164:86 - error TS1005: ')' expected. + +164 on(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:165:17 - error TS1005: ',' expected. + +165 on(event: "upgrade", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:165:38 - error TS1005: ',' expected. + +165 on(event: "upgrade", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:165:106 - error TS1109: Expression expected. + +165 on(event: "upgrade", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:165:107 - error TS1005: ';' expected. + +165 on(event: "upgrade", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:166:19 - error TS1005: ',' expected. + +166 once(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:166:37 - error TS1005: ',' expected. + +166 once(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:166:63 - error TS1109: Expression expected. + +166 once(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:166:64 - error TS1005: ';' expected. + +166 once(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:167:19 - error TS1005: ',' expected. + +167 once(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:167:39 - error TS1005: ',' expected. + +167 once(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:167:89 - error TS1109: Expression expected. + +167 once(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:167:90 - error TS1005: ';' expected. + +167 once(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:169:18 - error TS1005: ',' expected. + +169 event: "newSession", +   ~ + +../node_modules/@types/node/https.d.ts:170:21 - error TS1005: ',' expected. + +170 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:170:117 - error TS1109: Expression expected. + +170 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:171:10 - error TS1005: ';' expected. + +171 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:173:18 - error TS1005: ',' expected. + +173 event: "OCSPRequest", +   ~ + +../node_modules/@types/node/https.d.ts:174:21 - error TS1005: ',' expected. + +174 listener: ( +   ~ + +../node_modules/@types/node/https.d.ts:178:22 - error TS1109: Expression expected. + +178 ) => void, +   ~ + +../node_modules/@types/node/https.d.ts:179:10 - error TS1005: ';' expected. + +179 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:181:18 - error TS1005: ',' expected. + +181 event: "resumeSession", +   ~ + +../node_modules/@types/node/https.d.ts:182:21 - error TS1005: ',' expected. + +182 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:182:103 - error TS1109: Expression expected. + +182 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:183:10 - error TS1005: ';' expected. + +183 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:184:19 - error TS1005: ',' expected. + +184 once(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:184:49 - error TS1005: ',' expected. + +184 once(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:184:85 - error TS1109: Expression expected. + +184 once(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:184:86 - error TS1005: ';' expected. + +184 once(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:185:19 - error TS1005: ',' expected. + +185 once(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:185:47 - error TS1005: ',' expected. + +185 once(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:185:95 - error TS1109: Expression expected. + +185 once(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:185:96 - error TS1005: ';' expected. + +185 once(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:186:19 - error TS1005: ',' expected. + +186 once(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:186:38 - error TS1005: ',' expected. + +186 once(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:186:50 - error TS1109: Expression expected. + +186 once(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:186:51 - error TS1005: ';' expected. + +186 once(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:187:19 - error TS1005: ',' expected. + +187 once(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:187:43 - error TS1005: ',' expected. + +187 once(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:187:69 - error TS1109: Expression expected. + +187 once(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:187:70 - error TS1005: ';' expected. + +187 once(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:188:19 - error TS1005: ',' expected. + +188 once(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:188:38 - error TS1005: ',' expected. + +188 once(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:188:60 - error TS1109: Expression expected. + +188 once(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:188:61 - error TS1005: ';' expected. + +188 once(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:189:19 - error TS1005: ',' expected. + +189 once(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:189:42 - error TS1005: ',' expected. + +189 once(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:189:54 - error TS1109: Expression expected. + +189 once(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:189:55 - error TS1005: ';' expected. + +189 once(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:190:19 - error TS1005: ',' expected. + +190 once(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:190:46 - error TS1005: ',' expected. + +190 once(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:190:87 - error TS1005: '(' expected. + +190 once(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:190:88 - error TS1005: ',' expected. + +190 once(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:190:94 - error TS1005: ')' expected. + +190 once(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:191:19 - error TS1005: ',' expected. + +191 once(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:191:49 - error TS1005: ',' expected. + +191 once(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:191:90 - error TS1005: '(' expected. + +191 once(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:191:91 - error TS1005: ',' expected. + +191 once(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:191:97 - error TS1005: ')' expected. + +191 once(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:192:19 - error TS1005: ',' expected. + +192 once(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:192:44 - error TS1005: ',' expected. + +192 once(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:192:82 - error TS1109: Expression expected. + +192 once(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:192:83 - error TS1005: ';' expected. + +192 once(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:193:19 - error TS1005: ',' expected. + +193 once(event: "connect", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:193:40 - error TS1005: ',' expected. + +193 once(event: "connect", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:193:108 - error TS1109: Expression expected. + +193 once(event: "connect", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:193:109 - error TS1005: ';' expected. + +193 once(event: "connect", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:194:19 - error TS1005: ',' expected. + +194 once(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:194:40 - error TS1005: ',' expected. + +194 once(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:194:81 - error TS1005: '(' expected. + +194 once(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:194:82 - error TS1005: ',' expected. + +194 once(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:194:88 - error TS1005: ')' expected. + +194 once(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:195:19 - error TS1005: ',' expected. + +195 once(event: "upgrade", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:195:40 - error TS1005: ',' expected. + +195 once(event: "upgrade", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:195:108 - error TS1109: Expression expected. + +195 once(event: "upgrade", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:195:109 - error TS1005: ';' expected. + +195 once(event: "upgrade", listener: (req: InstanceType, socket: Duplex, head: Buffer) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:196:30 - error TS1005: ',' expected. + +196 prependListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:196:48 - error TS1005: ',' expected. + +196 prependListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:196:74 - error TS1109: Expression expected. + +196 prependListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:196:75 - error TS1005: ';' expected. + +196 prependListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:197:30 - error TS1005: ',' expected. + +197 prependListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:197:50 - error TS1005: ',' expected. + +197 prependListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:197:100 - error TS1109: Expression expected. + +197 prependListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:197:101 - error TS1005: ';' expected. + +197 prependListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:199:18 - error TS1005: ',' expected. + +199 event: "newSession", +   ~ + +../node_modules/@types/node/https.d.ts:200:21 - error TS1005: ',' expected. + +200 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:200:117 - error TS1109: Expression expected. + +200 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:201:10 - error TS1005: ';' expected. + +201 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:203:18 - error TS1005: ',' expected. + +203 event: "OCSPRequest", +   ~ + +../node_modules/@types/node/https.d.ts:204:21 - error TS1005: ',' expected. + +204 listener: ( +   ~ + +../node_modules/@types/node/https.d.ts:208:22 - error TS1109: Expression expected. + +208 ) => void, +   ~ + +../node_modules/@types/node/https.d.ts:209:10 - error TS1005: ';' expected. + +209 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:211:18 - error TS1005: ',' expected. + +211 event: "resumeSession", +   ~ + +../node_modules/@types/node/https.d.ts:212:21 - error TS1005: ',' expected. + +212 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:212:103 - error TS1109: Expression expected. + +212 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:213:10 - error TS1005: ';' expected. + +213 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:214:30 - error TS1005: ',' expected. + +214 prependListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:214:60 - error TS1005: ',' expected. + +214 prependListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:214:96 - error TS1109: Expression expected. + +214 prependListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:214:97 - error TS1005: ';' expected. + +214 prependListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:215:30 - error TS1005: ',' expected. + +215 prependListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:215:58 - error TS1005: ',' expected. + +215 prependListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:215:106 - error TS1109: Expression expected. + +215 prependListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:215:107 - error TS1005: ';' expected. + +215 prependListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:216:30 - error TS1005: ',' expected. + +216 prependListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:216:49 - error TS1005: ',' expected. + +216 prependListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:216:61 - error TS1109: Expression expected. + +216 prependListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:216:62 - error TS1005: ';' expected. + +216 prependListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:217:30 - error TS1005: ',' expected. + +217 prependListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:217:54 - error TS1005: ',' expected. + +217 prependListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:217:80 - error TS1109: Expression expected. + +217 prependListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:217:81 - error TS1005: ';' expected. + +217 prependListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:218:30 - error TS1005: ',' expected. + +218 prependListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:218:49 - error TS1005: ',' expected. + +218 prependListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:218:71 - error TS1109: Expression expected. + +218 prependListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:218:72 - error TS1005: ';' expected. + +218 prependListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:219:30 - error TS1005: ',' expected. + +219 prependListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:219:53 - error TS1005: ',' expected. + +219 prependListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:219:65 - error TS1109: Expression expected. + +219 prependListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:219:66 - error TS1005: ';' expected. + +219 prependListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:220:30 - error TS1005: ',' expected. + +220 prependListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:220:57 - error TS1005: ',' expected. + +220 prependListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:220:98 - error TS1005: '(' expected. + +220 prependListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:220:99 - error TS1005: ',' expected. + +220 prependListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:220:105 - error TS1005: ')' expected. + +220 prependListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:221:30 - error TS1005: ',' expected. + +221 prependListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:221:60 - error TS1005: ',' expected. + +221 prependListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:221:101 - error TS1005: '(' expected. + +221 prependListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:221:102 - error TS1005: ',' expected. + +221 prependListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:221:108 - error TS1005: ')' expected. + +221 prependListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:222:30 - error TS1005: ',' expected. + +222 prependListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:222:55 - error TS1005: ',' expected. + +222 prependListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:222:93 - error TS1109: Expression expected. + +222 prependListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:222:94 - error TS1005: ';' expected. + +222 prependListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:224:18 - error TS1005: ',' expected. + +224 event: "connect", +   ~ + +../node_modules/@types/node/https.d.ts:225:21 - error TS1005: ',' expected. + +225 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:225:89 - error TS1109: Expression expected. + +225 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:226:10 - error TS1005: ';' expected. + +226 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:227:30 - error TS1005: ',' expected. + +227 prependListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:227:51 - error TS1005: ',' expected. + +227 prependListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:227:92 - error TS1005: '(' expected. + +227 prependListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:227:93 - error TS1005: ',' expected. + +227 prependListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:227:99 - error TS1005: ')' expected. + +227 prependListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:229:18 - error TS1005: ',' expected. + +229 event: "upgrade", +   ~ + +../node_modules/@types/node/https.d.ts:230:21 - error TS1005: ',' expected. + +230 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:230:89 - error TS1109: Expression expected. + +230 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:231:10 - error TS1005: ';' expected. + +231 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:232:34 - error TS1005: ',' expected. + +232 prependOnceListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:232:52 - error TS1005: ',' expected. + +232 prependOnceListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:232:78 - error TS1109: Expression expected. + +232 prependOnceListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:232:79 - error TS1005: ';' expected. + +232 prependOnceListener(event: string, listener: (...args: any[]) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:233:34 - error TS1005: ',' expected. + +233 prependOnceListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:233:54 - error TS1005: ',' expected. + +233 prependOnceListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:233:104 - error TS1109: Expression expected. + +233 prependOnceListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:233:105 - error TS1005: ';' expected. + +233 prependOnceListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:235:18 - error TS1005: ',' expected. + +235 event: "newSession", +   ~ + +../node_modules/@types/node/https.d.ts:236:21 - error TS1005: ',' expected. + +236 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:236:117 - error TS1109: Expression expected. + +236 listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:237:10 - error TS1005: ';' expected. + +237 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:239:18 - error TS1005: ',' expected. + +239 event: "OCSPRequest", +   ~ + +../node_modules/@types/node/https.d.ts:240:21 - error TS1005: ',' expected. + +240 listener: ( +   ~ + +../node_modules/@types/node/https.d.ts:244:22 - error TS1109: Expression expected. + +244 ) => void, +   ~ + +../node_modules/@types/node/https.d.ts:245:10 - error TS1005: ';' expected. + +245 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:247:18 - error TS1005: ',' expected. + +247 event: "resumeSession", +   ~ + +../node_modules/@types/node/https.d.ts:248:21 - error TS1005: ',' expected. + +248 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:248:103 - error TS1109: Expression expected. + +248 listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void, +   ~ + +../node_modules/@types/node/https.d.ts:249:10 - error TS1005: ';' expected. + +249 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:250:34 - error TS1005: ',' expected. + +250 prependOnceListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:250:64 - error TS1005: ',' expected. + +250 prependOnceListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:250:100 - error TS1109: Expression expected. + +250 prependOnceListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:250:101 - error TS1005: ';' expected. + +250 prependOnceListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:251:34 - error TS1005: ',' expected. + +251 prependOnceListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:251:62 - error TS1005: ',' expected. + +251 prependOnceListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:251:110 - error TS1109: Expression expected. + +251 prependOnceListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:251:111 - error TS1005: ';' expected. + +251 prependOnceListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:252:34 - error TS1005: ',' expected. + +252 prependOnceListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:252:53 - error TS1005: ',' expected. + +252 prependOnceListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:252:65 - error TS1109: Expression expected. + +252 prependOnceListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:252:66 - error TS1005: ';' expected. + +252 prependOnceListener(event: "close", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:253:34 - error TS1005: ',' expected. + +253 prependOnceListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:253:58 - error TS1005: ',' expected. + +253 prependOnceListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:253:84 - error TS1109: Expression expected. + +253 prependOnceListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:253:85 - error TS1005: ';' expected. + +253 prependOnceListener(event: "connection", listener: (socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:254:34 - error TS1005: ',' expected. + +254 prependOnceListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:254:53 - error TS1005: ',' expected. + +254 prependOnceListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:254:75 - error TS1109: Expression expected. + +254 prependOnceListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:254:76 - error TS1005: ';' expected. + +254 prependOnceListener(event: "error", listener: (err: Error) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:255:34 - error TS1005: ',' expected. + +255 prependOnceListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:255:57 - error TS1005: ',' expected. + +255 prependOnceListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:255:69 - error TS1109: Expression expected. + +255 prependOnceListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:255:70 - error TS1005: ';' expected. + +255 prependOnceListener(event: "listening", listener: () => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:256:34 - error TS1005: ',' expected. + +256 prependOnceListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:256:61 - error TS1005: ',' expected. + +256 prependOnceListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:256:102 - error TS1005: '(' expected. + +256 prependOnceListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:256:103 - error TS1005: ',' expected. + +256 prependOnceListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:256:109 - error TS1005: ')' expected. + +256 prependOnceListener(event: "checkContinue", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:257:34 - error TS1005: ',' expected. + +257 prependOnceListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:257:64 - error TS1005: ',' expected. + +257 prependOnceListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:257:105 - error TS1005: '(' expected. + +257 prependOnceListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:257:106 - error TS1005: ',' expected. + +257 prependOnceListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:257:112 - error TS1005: ')' expected. + +257 prependOnceListener(event: "checkExpectation", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:258:34 - error TS1005: ',' expected. + +258 prependOnceListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:258:59 - error TS1005: ',' expected. + +258 prependOnceListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:258:97 - error TS1109: Expression expected. + +258 prependOnceListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:258:98 - error TS1005: ';' expected. + +258 prependOnceListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this; +   ~ + +../node_modules/@types/node/https.d.ts:260:18 - error TS1005: ',' expected. + +260 event: "connect", +   ~ + +../node_modules/@types/node/https.d.ts:261:21 - error TS1005: ',' expected. + +261 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:261:89 - error TS1109: Expression expected. + +261 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:262:10 - error TS1005: ';' expected. + +262 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:263:34 - error TS1005: ',' expected. + +263 prependOnceListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:263:55 - error TS1005: ',' expected. + +263 prependOnceListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:263:96 - error TS1005: '(' expected. + +263 prependOnceListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:263:97 - error TS1005: ',' expected. + +263 prependOnceListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:263:103 - error TS1005: ')' expected. + +263 prependOnceListener(event: "request", listener: http.RequestListener): this; +   ~ + +../node_modules/@types/node/https.d.ts:265:18 - error TS1005: ',' expected. + +265 event: "upgrade", +   ~ + +../node_modules/@types/node/https.d.ts:266:21 - error TS1005: ',' expected. + +266 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:266:89 - error TS1109: Expression expected. + +266 listener: (req: InstanceType, socket: Duplex, head: Buffer) => void, +   ~ + +../node_modules/@types/node/https.d.ts:267:10 - error TS1005: ';' expected. + +267 ): this; +   ~ + +../node_modules/@types/node/https.d.ts:308:52 - error TS1005: ',' expected. + +308 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:308:76 - error TS1109: Expression expected. + +308 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:309:5 - error TS1109: Expression expected. + +309 >(requestListener?: http.RequestListener): Server; +   ~ + +../node_modules/@types/node/https.d.ts:309:23 - error TS1109: Expression expected. + +309 >(requestListener?: http.RequestListener): Server; +   ~ + +../node_modules/@types/node/https.d.ts:309:64 - error TS1005: '(' expected. + +309 >(requestListener?: http.RequestListener): Server; +   ~ + +../node_modules/@types/node/https.d.ts:309:65 - error TS1005: ')' expected. + +309 >(requestListener?: http.RequestListener): Server; +   ~ + +../node_modules/@types/node/https.d.ts:309:92 - error TS1005: '(' expected. + +309 >(requestListener?: http.RequestListener): Server; +   ~ + +../node_modules/@types/node/https.d.ts:312:52 - error TS1005: ',' expected. + +312 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:312:76 - error TS1109: Expression expected. + +312 Response extends typeof http.ServerResponse> = typeof http.ServerResponse, +   ~ + +../node_modules/@types/node/https.d.ts:313:5 - error TS1109: Expression expected. + +313 >( +   ~ + +../node_modules/@types/node/https.d.ts:314:16 - error TS1005: ')' expected. + +314 options: ServerOptions, +   ~ + +../node_modules/@types/node/https.d.ts:314:50 - error TS1109: Expression expected. + +314 options: ServerOptions, +   ~ + +../node_modules/@types/node/https.d.ts:315:25 - error TS1109: Expression expected. + +315 requestListener?: http.RequestListener, +   ~ + +../node_modules/@types/node/https.d.ts:315:66 - error TS1109: Expression expected. + +315 requestListener?: http.RequestListener, +   ~ + +../node_modules/@types/node/https.d.ts:316:5 - error TS1109: Expression expected. + +316 ): Server; +   ~ + +../node_modules/@types/node/https.d.ts:316:6 - error TS1128: Declaration or statement expected. + +316 ): Server; +   ~ + +../node_modules/@types/node/https.d.ts:316:33 - error TS1005: '(' expected. + +316 ): Server; +   ~ + +../node_modules/@types/node/stream/web.d.ts:472:56 - error TS1005: '?' expected. + +472 DecompressionStream: infer T extends object; +   ~ + +../node_modules/@types/node/test.d.ts:1326:34 - error TS1005: '?' expected. + +1326 : F extends abstract new(...args: any) => infer T ? T +   ~~~ + +../node_modules/@types/node/test.d.ts:1326:63 - error TS1005: ':' expected. + +1326 : F extends abstract new(...args: any) => infer T ? T +   ~ + +../node_modules/@types/node/test.d.ts:1327:13 - error TS1005: ',' expected. + +1327 : unknown, +   ~ + +../node_modules/@types/node/test.d.ts:1329:34 - error TS1005: '?' expected. + +1329 : F extends abstract new(...args: infer Y) => any ? Y +   ~~~ + +../node_modules/@types/node/test.d.ts:1329:63 - error TS1005: ':' expected. + +1329 : F extends abstract new(...args: infer Y) => any ? Y +   ~ + +../node_modules/@types/node/test.d.ts:1330:13 - error TS1005: ',' expected. + +1330 : unknown[], +   ~ + +../node_modules/@types/node/test.d.ts:1330:22 - error TS1005: ',' expected. + +1330 : unknown[], +   ~ + +../node_modules/@types/node/test.d.ts:1331:5 - error TS1109: Expression expected. + +1331 > { +   ~ + +../node_modules/@types/node/test.d.ts:1335:24 - error TS1005: ',' expected. + +1335 arguments: Args; +   ~ + +../node_modules/@types/node/test.d.ts:1339:35 - error TS1005: ',' expected. + +1339 error: unknown | undefined; +   ~ + +../node_modules/@types/node/test.d.ts:1345:39 - error TS1005: ',' expected. + +1345 result: ReturnType | undefined; +   ~ + +../node_modules/@types/node/test.d.ts:1349:21 - error TS1005: ',' expected. + +1349 stack: Error; +   ~ + +../node_modules/@types/node/test.d.ts:1354:19 - error TS1005: ',' expected. + +1354 target: F extends abstract new(...args: any) => any ? F : undefined; +   ~~~~~~~ + +../node_modules/@types/node/test.d.ts:1354:27 - error TS1005: ':' expected. + +1354 target: F extends abstract new(...args: any) => any ? F : undefined; +   ~~~~~~~~ + +../node_modules/@types/node/test.d.ts:1354:36 - error TS1005: ',' expected. + +1354 target: F extends abstract new(...args: any) => any ? F : undefined; +   ~~~ + +../node_modules/@types/node/test.d.ts:1354:54 - error TS1005: '{' expected. + +1354 target: F extends abstract new(...args: any) => any ? F : undefined; +   ~~ + +../node_modules/@types/node/test.d.ts:1354:63 - error TS1005: ',' expected. + +1354 target: F extends abstract new(...args: any) => any ? F : undefined; +   ~ + +../node_modules/@types/node/test.d.ts:1354:76 - error TS1005: ',' expected. + +1354 target: F extends abstract new(...args: any) => any ? F : undefined; +   ~ + +../node_modules/@types/node/test.d.ts:1358:22 - error TS1005: ',' expected. + +1358 this: unknown; +   ~ + +../node_modules/undici-types/balanced-pool.d.ts:22:12 - error TS1005: ';' expected. + +22 override connect( +   ~~~~~~~ + +../node_modules/undici-types/balanced-pool.d.ts:25:12 - error TS1005: ';' expected. + +25 override connect( +   ~~~~~~~ + +../node_modules/undici-types/client.d.ts:21:12 - error TS1005: ';' expected. + +21 override connect( +   ~~~~~~~ + +../node_modules/undici-types/client.d.ts:24:12 - error TS1005: ';' expected. + +24 override connect( +   ~~~~~~~ + +../node_modules/undici-types/pool.d.ts:20:12 - error TS1005: ';' expected. + +20 override connect( +   ~~~~~~~ + +../node_modules/undici-types/pool.d.ts:23:12 - error TS1005: ';' expected. + +23 override connect( +   ~~~~~~~ + + +Found 1443 errors. + diff --git a/speech-recognition/package-lock.json b/speech-recognition/package-lock.json new file mode 100644 index 00000000..6550481e --- /dev/null +++ b/speech-recognition/package-lock.json @@ -0,0 +1,6138 @@ +{ + "name": "@capacitor-community/speech-recognition", + "version": "6.0.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@capacitor-community/speech-recognition", + "version": "6.0.1", + "license": "MIT", + "dependencies": { + "@capacitor/filesystem": "6.0.2", + "@mediagrid/capacitor-native-audio": "1.2.0", + "ansi-regex": "5.0.1", + "doctrine": "3.0.0", + "eslint-scope": "7.2.2", + "eslint-visitor-keys": "3.4.3", + "espree": "9.6.1", + "file-entry-cache": "6.0.1", + "flat-cache": "3.2.0", + "glob": "7.2.3", + "globals": "13.24.0", + "strip-ansi": "6.0.1" + }, + "devDependencies": { + "@capacitor/android": "^6.0.0", + "@capacitor/cli": "^6.0.0", + "@capacitor/core": "6.2.0", + "@capacitor/docgen": "0.2.2", + "@capacitor/ios": "^6.0.0", + "@ionic/eslint-config": "0.4.0", + "@ionic/prettier-config": "1.0.1", + "@ionic/swiftlint-config": "1.1.2", + "@rollup/plugin-commonjs": "28.0.1", + "@rollup/plugin-node-resolve": "15.3.0", + "eslint": "^8.57.0", + "prettier": "2.3.2", + "prettier-plugin-java": "1.0.2", + "rimraf": "3.0.2", + "rollup": "2.79.2", + "standard-version": "9.5.0", + "swiftlint": "1.0.1", + "typescript": "4.1.5" + }, + "peerDependencies": { + "@capacitor/core": "^6.0.0" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@capacitor/android": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@capacitor/android/-/android-6.0.0.tgz", + "integrity": "sha512-NwL87VO9F1WY/EgvJZN9pIhjejq688k2fRW6XWNLVe3cgGE6nUb9J34KI68fhx3139cf2LVGPUYs+mwZC8esiQ==", + "dev": true, + "peerDependencies": { + "@capacitor/core": "^6.0.0" + } + }, + "node_modules/@capacitor/cli": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-6.0.0.tgz", + "integrity": "sha512-6z30P0mr53l0VXPwFjzDVuKIt1991bqUSSfShTT2efWN+rBSGSAH2bPID6qSZornH1n5R5Lh/UHq/aGuW523MQ==", + "dev": true, + "dependencies": { + "@ionic/cli-framework-output": "^2.2.5", + "@ionic/utils-fs": "^3.1.6", + "@ionic/utils-process": "^2.1.11", + "@ionic/utils-subprocess": "2.1.11", + "@ionic/utils-terminal": "^2.3.3", + "commander": "^9.3.0", + "debug": "^4.3.4", + "env-paths": "^2.2.0", + "kleur": "^4.1.4", + "native-run": "^2.0.0", + "open": "^8.4.0", + "plist": "^3.0.5", + "prompts": "^2.4.2", + "rimraf": "^4.4.1", + "semver": "^7.3.7", + "tar": "^6.1.11", + "tslib": "^2.4.0", + "xml2js": "^0.5.0" + }, + "bin": { + "cap": "bin/capacitor", + "capacitor": "bin/capacitor" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@capacitor/cli/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@capacitor/cli/node_modules/glob": { + "version": "9.3.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", + "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "minimatch": "^8.0.2", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@capacitor/cli/node_modules/minimatch": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", + "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@capacitor/cli/node_modules/minipass": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", + "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@capacitor/cli/node_modules/rimraf": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", + "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", + "dev": true, + "dependencies": { + "glob": "^9.2.0" + }, + "bin": { + "rimraf": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@capacitor/core": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@capacitor/core/-/core-6.2.0.tgz", + "integrity": "sha512-B9IlJtDpUqhhYb+T8+cp2Db/3RETX36STgjeU2kQZBs/SLAcFiMama227o+msRjLeo3DO+7HJjWVA1+XlyyPEg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/@capacitor/docgen": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@capacitor/docgen/-/docgen-0.2.2.tgz", + "integrity": "sha512-617jB5DlKjUljxfoANORWeqffsHqHekckH48oslKWFGzfCHYIAEPfJfMa5M4mVSzn2ifSvWB5C3st4augwhl5w==", + "dev": true, + "dependencies": { + "@types/node": "^14.18.0", + "colorette": "^2.0.16", + "github-slugger": "^1.4.0", + "minimist": "^1.2.5", + "typescript": "~4.2.4" + }, + "bin": { + "docgen": "bin/docgen" + }, + "engines": { + "node": ">=14.5.0" + } + }, + "node_modules/@capacitor/docgen/node_modules/typescript": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.2.4.tgz", + "integrity": "sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/@capacitor/filesystem": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@capacitor/filesystem/-/filesystem-6.0.2.tgz", + "integrity": "sha512-OUDjGPljC3/q6wFnCCBUgElfZgAaSaoKeh0ij2eoDygn5KVXta+5CiJ7H7o2/ziTW6WOyvP0++EC3DT0TzR23A==", + "license": "MIT", + "peerDependencies": { + "@capacitor/core": "^6.0.0" + } + }, + "node_modules/@capacitor/ios": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@capacitor/ios/-/ios-6.0.0.tgz", + "integrity": "sha512-7mAs3gjWiE5DPM4AGPduqFSDGXCPwwqQRMzbohVway7/cTWnHomHV8mIojMZE4GILeWO2fILbyu3C8q9pHg2vg==", + "dev": true, + "peerDependencies": { + "@capacitor/core": "^6.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.1.tgz", + "integrity": "sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "dev": true + }, + "node_modules/@hutson/parse-repository-url": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz", + "integrity": "sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ionic/cli-framework-output": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/@ionic/cli-framework-output/-/cli-framework-output-2.2.8.tgz", + "integrity": "sha512-TshtaFQsovB4NWRBydbNFawql6yul7d5bMiW1WYYf17hd99V6xdDdk3vtF51bw6sLkxON3bDQpWsnUc9/hVo3g==", + "dev": true, + "dependencies": { + "@ionic/utils-terminal": "2.3.5", + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/eslint-config": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@ionic/eslint-config/-/eslint-config-0.4.0.tgz", + "integrity": "sha512-L8OXY29D3iGqNtteFj0iz3eoZIVgokBiVjCO8WMssNZa4GTHjYsase0rC9ASXGefMnLJu6rbNl3Gbx7NNxJRZQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/eslint-plugin": "^5.58.0", + "@typescript-eslint/parser": "^5.58.0", + "eslint-config-prettier": "^8.8.0", + "eslint-plugin-import": "^2.27.0" + }, + "peerDependencies": { + "eslint": ">=7" + } + }, + "node_modules/@ionic/prettier-config": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ionic/prettier-config/-/prettier-config-1.0.1.tgz", + "integrity": "sha512-/v8UOW7rxkw/hvrRe/QfjlQsdjkm3sfAHoE3uqffO5BoNGijQMARrT32JT9Ei0g6KySXPyxxW+7LzPHrQmfzCw==", + "dev": true, + "peerDependencies": { + "prettier": "^2.0.0" + } + }, + "node_modules/@ionic/swiftlint-config": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@ionic/swiftlint-config/-/swiftlint-config-1.1.2.tgz", + "integrity": "sha512-UbE1AIlTowt9uR7fMzRtbQX4URcyuok7mcpdJfFDHAIGM6nDjohYMke+6xOr6ZYlLnEyVmBGNEg0+grEYRgcVg==", + "dev": true + }, + "node_modules/@ionic/utils-array": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@ionic/utils-array/-/utils-array-2.1.5.tgz", + "integrity": "sha512-HD72a71IQVBmQckDwmA8RxNVMTbxnaLbgFOl+dO5tbvW9CkkSFCv41h6fUuNsSEVgngfkn0i98HDuZC8mk+lTA==", + "dev": true, + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=10.3.0" + } + }, + "node_modules/@ionic/utils-fs": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.7.tgz", + "integrity": "sha512-2EknRvMVfhnyhL1VhFkSLa5gOcycK91VnjfrTB0kbqkTFCOXyXgVLI5whzq7SLrgD9t1aqos3lMMQyVzaQ5gVA==", + "dev": true, + "dependencies": { + "@types/fs-extra": "^8.0.0", + "debug": "^4.0.0", + "fs-extra": "^9.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-object": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@ionic/utils-object/-/utils-object-2.1.6.tgz", + "integrity": "sha512-vCl7sl6JjBHFw99CuAqHljYJpcE88YaH2ZW4ELiC/Zwxl5tiwn4kbdP/gxi2OT3MQb1vOtgAmSNRtusvgxI8ww==", + "dev": true, + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-process": { + "version": "2.1.12", + "resolved": "https://registry.npmjs.org/@ionic/utils-process/-/utils-process-2.1.12.tgz", + "integrity": "sha512-Jqkgyq7zBs/v/J3YvKtQQiIcxfJyplPgECMWgdO0E1fKrrH8EF0QGHNJ9mJCn6PYe2UtHNS8JJf5G21e09DfYg==", + "dev": true, + "dependencies": { + "@ionic/utils-object": "2.1.6", + "@ionic/utils-terminal": "2.3.5", + "debug": "^4.0.0", + "signal-exit": "^3.0.3", + "tree-kill": "^1.2.2", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-stream": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@ionic/utils-stream/-/utils-stream-3.1.5.tgz", + "integrity": "sha512-hkm46uHvEC05X/8PHgdJi4l4zv9VQDELZTM+Kz69odtO9zZYfnt8DkfXHJqJ+PxmtiE5mk/ehJWLnn/XAczTUw==", + "dev": true, + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=10.3.0" + } + }, + "node_modules/@ionic/utils-subprocess": { + "version": "2.1.11", + "resolved": "https://registry.npmjs.org/@ionic/utils-subprocess/-/utils-subprocess-2.1.11.tgz", + "integrity": "sha512-6zCDixNmZCbMCy5np8klSxOZF85kuDyzZSTTQKQP90ZtYNCcPYmuFSzaqDwApJT4r5L3MY3JrqK1gLkc6xiUPw==", + "dev": true, + "dependencies": { + "@ionic/utils-array": "2.1.5", + "@ionic/utils-fs": "3.1.6", + "@ionic/utils-process": "2.1.10", + "@ionic/utils-stream": "3.1.5", + "@ionic/utils-terminal": "2.3.3", + "cross-spawn": "^7.0.3", + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=10.3.0" + } + }, + "node_modules/@ionic/utils-subprocess/node_modules/@ionic/utils-fs": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.6.tgz", + "integrity": "sha512-eikrNkK89CfGPmexjTfSWl4EYqsPSBh0Ka7by4F0PLc1hJZYtJxUZV3X4r5ecA8ikjicUmcbU7zJmAjmqutG/w==", + "dev": true, + "dependencies": { + "@types/fs-extra": "^8.0.0", + "debug": "^4.0.0", + "fs-extra": "^9.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=10.3.0" + } + }, + "node_modules/@ionic/utils-subprocess/node_modules/@ionic/utils-object": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@ionic/utils-object/-/utils-object-2.1.5.tgz", + "integrity": "sha512-XnYNSwfewUqxq+yjER1hxTKggftpNjFLJH0s37jcrNDwbzmbpFTQTVAp4ikNK4rd9DOebX/jbeZb8jfD86IYxw==", + "dev": true, + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=10.3.0" + } + }, + "node_modules/@ionic/utils-subprocess/node_modules/@ionic/utils-process": { + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/@ionic/utils-process/-/utils-process-2.1.10.tgz", + "integrity": "sha512-mZ7JEowcuGQK+SKsJXi0liYTcXd2bNMR3nE0CyTROpMECUpJeAvvaBaPGZf5ERQUPeWBVuwqAqjUmIdxhz5bxw==", + "dev": true, + "dependencies": { + "@ionic/utils-object": "2.1.5", + "@ionic/utils-terminal": "2.3.3", + "debug": "^4.0.0", + "signal-exit": "^3.0.3", + "tree-kill": "^1.2.2", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=10.3.0" + } + }, + "node_modules/@ionic/utils-subprocess/node_modules/@ionic/utils-terminal": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.3.tgz", + "integrity": "sha512-RnuSfNZ5fLEyX3R5mtcMY97cGD1A0NVBbarsSQ6yMMfRJ5YHU7hHVyUfvZeClbqkBC/pAqI/rYJuXKCT9YeMCQ==", + "dev": true, + "dependencies": { + "@types/slice-ansi": "^4.0.0", + "debug": "^4.0.0", + "signal-exit": "^3.0.3", + "slice-ansi": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "tslib": "^2.0.1", + "untildify": "^4.0.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10.3.0" + } + }, + "node_modules/@ionic/utils-terminal": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.5.tgz", + "integrity": "sha512-3cKScz9Jx2/Pr9ijj1OzGlBDfcmx7OMVBt4+P1uRR0SSW4cm1/y3Mo4OY3lfkuaYifMNBW8Wz6lQHbs1bihr7A==", + "dev": true, + "dependencies": { + "@types/slice-ansi": "^4.0.0", + "debug": "^4.0.0", + "signal-exit": "^3.0.3", + "slice-ansi": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "tslib": "^2.0.1", + "untildify": "^4.0.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@mediagrid/capacitor-native-audio": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@mediagrid/capacitor-native-audio/-/capacitor-native-audio-1.2.0.tgz", + "integrity": "sha512-w9WIUzHX7pq6UHMOclT4T/6uoRae7BxRKUjMZtgHe6tiHDLkUkNJWPNfBiXizHeoZnQHRITa1Iiisfz3yQLCKg==", + "license": "MIT", + "peerDependencies": { + "@capacitor/core": "^6.0.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "28.0.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.1.tgz", + "integrity": "sha512-+tNWdlWKbpB3WgBN7ijjYkq9X5uhjmcvyjEght4NmH5fAU++zfQzAJ6wumLS+dNcvwEZhKx2Z+skY8m7v0wGSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "fdir": "^6.2.0", + "is-reference": "1.2.1", + "magic-string": "^0.30.3", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=16.0.0 || 14 >= 14.17" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-commonjs/node_modules/fdir": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.2.tgz", + "integrity": "sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-commonjs/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.0.tgz", + "integrity": "sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz", + "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/fs-extra": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", + "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "node_modules/@types/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", + "dev": true + }, + "node_modules/@types/node": { + "version": "14.18.63", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.63.tgz", + "integrity": "sha512-fAtCfv4jJg+ExtXhvCkCqUKZ+4ok/JQk01qDKhL5BDDoS3AxKXhV5/MAVUZyQnSEd2GT92fkgZl0pz0Q0AzcIQ==", + "dev": true + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", + "dev": true + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", + "dev": true + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "dev": true + }, + "node_modules/@types/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-+OpjSaq85gvlZAYINyzKpLeiFkSC4EsC6IIiT6v6TLSU5k5U83fHGj9Lel8oKEXM0HqgrMVCjXPDPVICtxF7EQ==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", + "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/type-utils": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", + "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, + "node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/add-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", + "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==", + "dev": true + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-ify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", + "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", + "dev": true + }, + "node_modules/array-includes": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/big-integer": { + "version": "1.6.52", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", + "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/bplist-parser": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.2.tgz", + "integrity": "sha512-apC2+fspHGI3mMKj+dGevkGo/tCqVB8jMb6i+OX+E29p0Iposz07fABkRIfVUPNd5A5VbuOz1bZbnmkKLYF+wQ==", + "dev": true, + "dependencies": { + "big-integer": "1.6.x" + }, + "engines": { + "node": ">= 5.10.0" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chevrotain": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-6.5.0.tgz", + "integrity": "sha512-BwqQ/AgmKJ8jcMEjaSnfMybnKMgGTrtDKowfTP3pX4jwVy0kNjRsT/AP6h+wC3+3NC+X8X15VWBnTCQlX+wQFg==", + "dev": true, + "dependencies": { + "regexp-to-ast": "0.4.0" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true, + "license": "MIT" + }, + "node_modules/compare-func": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", + "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", + "dev": true, + "dependencies": { + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "dev": true, + "engines": [ + "node >= 6.0" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/conventional-changelog": { + "version": "3.1.25", + "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-3.1.25.tgz", + "integrity": "sha512-ryhi3fd1mKf3fSjbLXOfK2D06YwKNic1nC9mWqybBHdObPd8KJ2vjaXZfYj1U23t+V8T8n0d7gwnc9XbIdFbyQ==", + "dev": true, + "dependencies": { + "conventional-changelog-angular": "^5.0.12", + "conventional-changelog-atom": "^2.0.8", + "conventional-changelog-codemirror": "^2.0.8", + "conventional-changelog-conventionalcommits": "^4.5.0", + "conventional-changelog-core": "^4.2.1", + "conventional-changelog-ember": "^2.0.9", + "conventional-changelog-eslint": "^3.0.9", + "conventional-changelog-express": "^2.0.6", + "conventional-changelog-jquery": "^3.0.11", + "conventional-changelog-jshint": "^2.0.9", + "conventional-changelog-preset-loader": "^2.3.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-angular": { + "version": "5.0.13", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz", + "integrity": "sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==", + "dev": true, + "dependencies": { + "compare-func": "^2.0.0", + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-atom": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-2.0.8.tgz", + "integrity": "sha512-xo6v46icsFTK3bb7dY/8m2qvc8sZemRgdqLb/bjpBsH2UyOS8rKNTgcb5025Hri6IpANPApbXMg15QLb1LJpBw==", + "dev": true, + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-codemirror": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-2.0.8.tgz", + "integrity": "sha512-z5DAsn3uj1Vfp7po3gpt2Boc+Bdwmw2++ZHa5Ak9k0UKsYAO5mH1UBTN0qSCuJZREIhX6WU4E1p3IW2oRCNzQw==", + "dev": true, + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-config-spec": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-config-spec/-/conventional-changelog-config-spec-2.1.0.tgz", + "integrity": "sha512-IpVePh16EbbB02V+UA+HQnnPIohgXvJRxHcS5+Uwk4AT5LjzCZJm5sp/yqs5C6KZJ1jMsV4paEV13BN1pvDuxQ==", + "dev": true + }, + "node_modules/conventional-changelog-conventionalcommits": { + "version": "4.6.3", + "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.3.tgz", + "integrity": "sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g==", + "dev": true, + "dependencies": { + "compare-func": "^2.0.0", + "lodash": "^4.17.15", + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-core": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz", + "integrity": "sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg==", + "dev": true, + "dependencies": { + "add-stream": "^1.0.0", + "conventional-changelog-writer": "^5.0.0", + "conventional-commits-parser": "^3.2.0", + "dateformat": "^3.0.0", + "get-pkg-repo": "^4.0.0", + "git-raw-commits": "^2.0.8", + "git-remote-origin-url": "^2.0.0", + "git-semver-tags": "^4.1.1", + "lodash": "^4.17.15", + "normalize-package-data": "^3.0.0", + "q": "^1.5.1", + "read-pkg": "^3.0.0", + "read-pkg-up": "^3.0.0", + "through2": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-ember": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-2.0.9.tgz", + "integrity": "sha512-ulzIReoZEvZCBDhcNYfDIsLTHzYHc7awh+eI44ZtV5cx6LVxLlVtEmcO+2/kGIHGtw+qVabJYjdI5cJOQgXh1A==", + "dev": true, + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-eslint": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.9.tgz", + "integrity": "sha512-6NpUCMgU8qmWmyAMSZO5NrRd7rTgErjrm4VASam2u5jrZS0n38V7Y9CzTtLT2qwz5xEChDR4BduoWIr8TfwvXA==", + "dev": true, + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-express": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/conventional-changelog-express/-/conventional-changelog-express-2.0.6.tgz", + "integrity": "sha512-SDez2f3iVJw6V563O3pRtNwXtQaSmEfTCaTBPCqn0oG0mfkq0rX4hHBq5P7De2MncoRixrALj3u3oQsNK+Q0pQ==", + "dev": true, + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-jquery": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-3.0.11.tgz", + "integrity": "sha512-x8AWz5/Td55F7+o/9LQ6cQIPwrCjfJQ5Zmfqi8thwUEKHstEn4kTIofXub7plf1xvFA2TqhZlq7fy5OmV6BOMw==", + "dev": true, + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-jshint": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.9.tgz", + "integrity": "sha512-wMLdaIzq6TNnMHMy31hql02OEQ8nCQfExw1SE0hYL5KvU+JCTuPaDO+7JiogGT2gJAxiUGATdtYYfh+nT+6riA==", + "dev": true, + "dependencies": { + "compare-func": "^2.0.0", + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-preset-loader": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz", + "integrity": "sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-5.0.1.tgz", + "integrity": "sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ==", + "dev": true, + "dependencies": { + "conventional-commits-filter": "^2.0.7", + "dateformat": "^3.0.0", + "handlebars": "^4.7.7", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "semver": "^6.0.0", + "split": "^1.0.0", + "through2": "^4.0.0" + }, + "bin": { + "conventional-changelog-writer": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/conventional-commits-filter": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz", + "integrity": "sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==", + "dev": true, + "dependencies": { + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-commits-parser": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz", + "integrity": "sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==", + "dev": true, + "dependencies": { + "is-text-path": "^1.0.1", + "JSONStream": "^1.0.4", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "conventional-commits-parser": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-commits-parser/node_modules/split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", + "dev": true, + "dependencies": { + "readable-stream": "^3.0.0" + } + }, + "node_modules/conventional-recommended-bump": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz", + "integrity": "sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw==", + "dev": true, + "dependencies": { + "concat-stream": "^2.0.0", + "conventional-changelog-preset-loader": "^2.3.4", + "conventional-commits-filter": "^2.0.7", + "conventional-commits-parser": "^3.2.0", + "git-raw-commits": "^2.0.8", + "git-semver-tags": "^4.1.1", + "meow": "^8.0.0", + "q": "^1.5.1" + }, + "bin": { + "conventional-recommended-bump": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cosmiconfig/node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/dargs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", + "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", + "dev": true, + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/detect-indent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", + "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotgitignore": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dotgitignore/-/dotgitignore-2.1.0.tgz", + "integrity": "sha512-sCm11ak2oY6DglEPpCB8TixLjWAxd3kJTs6UIcSasNYxXdFPV+YKlye92c8H4kKFqV5qYMIh7d+cYecEg0dIkA==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dotgitignore/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dotgitignore/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dotgitignore/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dotgitignore/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dotgitignore/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/elementtree": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/elementtree/-/elementtree-0.1.7.tgz", + "integrity": "sha512-wkgGT6kugeQk/P6VZ/f4T+4HB41BVgNBq5CDIZVbQ02nvTVqAiVTbskxxu3eA/X96lMlfYOwnLQpN2v5E1zDEg==", + "dev": true, + "dependencies": { + "sax": "1.1.4" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", + "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", + "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", + "dev": true, + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", + "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.7", + "array.prototype.findlastindex": "^1.2.3", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.8.0", + "hasown": "^2.0.0", + "is-core-module": "^2.13.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.7", + "object.groupby": "^1.0.1", + "object.values": "^1.1.7", + "semver": "^6.3.1", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dev": true, + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==" + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-pkg-repo": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz", + "integrity": "sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==", + "dev": true, + "dependencies": { + "@hutson/parse-repository-url": "^3.0.0", + "hosted-git-info": "^4.0.0", + "through2": "^2.0.0", + "yargs": "^16.2.0" + }, + "bin": { + "get-pkg-repo": "src/cli.js" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-pkg-repo/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/get-pkg-repo/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/get-pkg-repo/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/get-pkg-repo/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/get-pkg-repo/node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/git-raw-commits": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz", + "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==", + "dev": true, + "dependencies": { + "dargs": "^7.0.0", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "git-raw-commits": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/git-raw-commits/node_modules/split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", + "dev": true, + "dependencies": { + "readable-stream": "^3.0.0" + } + }, + "node_modules/git-remote-origin-url": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz", + "integrity": "sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==", + "dev": true, + "dependencies": { + "gitconfiglocal": "^1.0.0", + "pify": "^2.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/git-semver-tags": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-4.1.1.tgz", + "integrity": "sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA==", + "dev": true, + "dependencies": { + "meow": "^8.0.0", + "semver": "^6.0.0" + }, + "bin": { + "git-semver-tags": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/git-semver-tags/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/gitconfiglocal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz", + "integrity": "sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==", + "dev": true, + "dependencies": { + "ini": "^1.3.2" + } + }, + "node_modules/gitconfiglocal/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/github-slugger": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", + "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==", + "dev": true + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/handlebars": { + "version": "4.7.8", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", + "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" + } + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dev": true, + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-text-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", + "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==", + "dev": true, + "dependencies": { + "text-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/java-parser": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/java-parser/-/java-parser-1.0.2.tgz", + "integrity": "sha512-lBXc+F62ds2W83eH5MwGnzuWdb6kgGBV0x0R7w0B4JKGDrJzolMUEhRMzzzlIX68HvRU7XtfPon22YaB+dVg+A==", + "dev": true, + "dependencies": { + "chevrotain": "6.5.0", + "lodash": "4.17.21" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.ismatch": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", + "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.30.15", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.15.tgz", + "integrity": "sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/map-obj": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "dev": true, + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/meow/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "node_modules/meow/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/meow/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/meow/node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/meow/node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/meow/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/meow/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/modify-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", + "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/native-run": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/native-run/-/native-run-2.0.1.tgz", + "integrity": "sha512-XfG1FBZLM50J10xH9361whJRC9SHZ0Bub4iNRhhI61C8Jv0e1ud19muex6sNKB51ibQNUJNuYn25MuYET/rE6w==", + "dev": true, + "dependencies": { + "@ionic/utils-fs": "^3.1.7", + "@ionic/utils-terminal": "^2.3.4", + "bplist-parser": "^0.3.2", + "debug": "^4.3.4", + "elementtree": "^0.1.7", + "ini": "^4.1.1", + "plist": "^3.1.0", + "split2": "^4.2.0", + "through2": "^4.0.2", + "tslib": "^2.6.2", + "yauzl": "^2.10.0" + }, + "bin": { + "native-run": "bin/native-run" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plist": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", + "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==", + "dev": true, + "dependencies": { + "@xmldom/xmldom": "^0.8.8", + "base64-js": "^1.5.1", + "xmlbuilder": "^15.1.1" + }, + "engines": { + "node": ">=10.4.0" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.3.2.tgz", + "integrity": "sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/prettier-plugin-java": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/prettier-plugin-java/-/prettier-plugin-java-1.0.2.tgz", + "integrity": "sha512-YgcN1WGZlrH0E+bHdqtIYtfDp6k2PHBnIaGjzdff/7t/NyDWAA6ypAmnD7YQVG2OuoIaXYkC37HN7cz68lLWLg==", + "dev": true, + "dependencies": { + "java-parser": "1.0.2", + "lodash": "4.17.21", + "prettier": "2.2.1" + } + }, + "node_modules/prettier-plugin-java/node_modules/prettier": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", + "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prompts/node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==", + "dev": true, + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", + "dev": true, + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==", + "dev": true, + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regexp-to-ast": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.4.0.tgz", + "integrity": "sha512-4qf/7IsIKfSNHQXSwial1IFmfM1Cc/whNBQqRwe0V2stPe7KmN1U0tWQiIx6JiirgSrisjE0eECdNf7Tav1Ntw==", + "dev": true + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "2.79.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.2.tgz", + "integrity": "sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==", + "dev": true, + "license": "MIT", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sax": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.1.4.tgz", + "integrity": "sha512-5f3k2PbGGp+YtKJjOItpg3P99IMD84E4HOvcfleTb5joCHNXYLsR9yWFPOYGgaeMPDubQILTCMdsFb2OMeOjtg==", + "dev": true + }, + "node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", + "dev": true + }, + "node_modules/split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "dev": true, + "dependencies": { + "through": "2" + }, + "engines": { + "node": "*" + } + }, + "node_modules/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", + "dev": true, + "engines": { + "node": ">= 10.x" + } + }, + "node_modules/standard-version": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/standard-version/-/standard-version-9.5.0.tgz", + "integrity": "sha512-3zWJ/mmZQsOaO+fOlsa0+QK90pwhNd042qEcw6hKFNoLFs7peGyvPffpEBbK/DSGPbyOvli0mUIFv5A4qTjh2Q==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "conventional-changelog": "3.1.25", + "conventional-changelog-config-spec": "2.1.0", + "conventional-changelog-conventionalcommits": "4.6.3", + "conventional-recommended-bump": "6.1.0", + "detect-indent": "^6.0.0", + "detect-newline": "^3.1.0", + "dotgitignore": "^2.1.0", + "figures": "^3.1.0", + "find-up": "^5.0.0", + "git-semver-tags": "^4.0.0", + "semver": "^7.1.1", + "stringify-package": "^1.0.1", + "yargs": "^16.0.0" + }, + "bin": { + "standard-version": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/standard-version/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/standard-version/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/standard-version/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/standard-version/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/standard-version/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/standard-version/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/standard-version/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/stringify-package": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stringify-package/-/stringify-package-1.0.1.tgz", + "integrity": "sha512-sa4DUQsYciMP1xhKWGuFM04fB0LG/9DlluZoSVywUMRNvzid6XucHK0/90xGxRoHrAaROrcHK1aPKaijCtSrhg==", + "deprecated": "This module is not used anymore, and has been replaced by @npmcli/package-json", + "dev": true + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/swiftlint": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/swiftlint/-/swiftlint-1.0.1.tgz", + "integrity": "sha512-HV/fCJTpwgCeoMw5W21J5PnhXSAVg2dtgTPrAbHqFZR1dDHEdEiM7tObw/w+CEGW/68xwWWTgKfyyvyY/6uUxA==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@ionic/utils-fs": "^3.1.3", + "@ionic/utils-subprocess": "^2.1.3", + "cosmiconfig": "^6.0.0" + }, + "bin": { + "node-swiftlint": "bin.js" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/text-extensions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", + "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "dependencies": { + "readable-stream": "3" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/trim-newlines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "dev": true + }, + "node_modules/typescript": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.5.tgz", + "integrity": "sha512-6OSu9PTIzmn9TCDiovULTnET6BgXtDYL4Gg4szY+cGsc3JP1dQL8qvE8kShTRx1NIw4Q9IBHlwODjkjWEtMUyA==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/uglify-js": { + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", + "dev": true, + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/xml2js": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "dev": true, + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xml2js/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "dev": true, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/speech-recognition/package.json b/speech-recognition/package.json new file mode 100644 index 00000000..e08656dd --- /dev/null +++ b/speech-recognition/package.json @@ -0,0 +1,104 @@ +{ + "name": "@capacitor-community/speech-recognition", + "version": "6.0.1", + "description": "A native plugin for speech recognition", + "main": "dist/plugin.cjs.js", + "module": "dist/esm/index.js", + "types": "dist/esm/index.d.ts", + "unpkg": "dist/plugin.js", + "files": [ + "android/src/main/", + "android/build.gradle", + "dist/", + "ios/Plugin/", + "CapacitorCommunitySpeechRecognition.podspec" + ], + "author": "Priyank Patel ", + "contributors": [ + { + "name": "Matteo Padovano", + "email": "mrbatista@users.noreply.github.com" + } + ], + "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/capacitor-community/speech-recognition.git" + }, + "bugs": { + "url": "https://github.com/capacitor-community/speech-recognition/issues" + }, + "keywords": [ + "capacitor", + "plugin", + "native" + ], + "scripts": { + "verify": "npm run verify:ios && npm run verify:android && npm run verify:web", + "verify:ios": "cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..", + "verify:android": "cd android && ./gradlew clean build test && cd ..", + "verify:web": "npm run build", + "lint": "npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint", + "fmt": "npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format", + "eslint": "eslint . --ext ts", + "prettier": "prettier \"**/*.{css,html,ts,js,java}\"", + "swiftlint": "node-swiftlint", + "docgen": "docgen --api SpeechRecognitionPlugin --output-readme README.md --output-json dist/docs.json", + "build": "npm run clean && npm run docgen && tsc && rollup -c rollup.config.js", + "clean": "rimraf ./dist", + "watch": "tsc --watch", + "prepublishOnly": "npm run build", + "release": "standard-version" + }, + "devDependencies": { + "@capacitor/android": "^6.0.0", + "@capacitor/cli": "^6.0.0", + "@capacitor/core": "6.2.0", + "@capacitor/docgen": "0.2.2", + "@capacitor/ios": "^6.0.0", + "@ionic/eslint-config": "0.4.0", + "@ionic/prettier-config": "1.0.1", + "@ionic/swiftlint-config": "1.1.2", + "@rollup/plugin-commonjs": "28.0.1", + "@rollup/plugin-node-resolve": "15.3.0", + "eslint": "^8.57.0", + "prettier": "2.3.2", + "prettier-plugin-java": "1.0.2", + "rimraf": "3.0.2", + "rollup": "2.79.2", + "standard-version": "9.5.0", + "swiftlint": "1.0.1", + "typescript": "4.1.5" + }, + "peerDependencies": { + "@capacitor/core": "^6.0.0" + }, + "prettier": "@ionic/prettier-config", + "swiftlint": "@ionic/swiftlint-config", + "eslintConfig": { + "extends": "@ionic/eslint-config/recommended" + }, + "capacitor": { + "ios": { + "src": "ios" + }, + "android": { + "src": "android" + } + }, + "dependencies": { + "@capacitor/filesystem": "6.0.2", + "@mediagrid/capacitor-native-audio": "1.2.0", + "ansi-regex": "5.0.1", + "doctrine": "3.0.0", + "eslint-scope": "7.2.2", + "eslint-visitor-keys": "3.4.3", + "espree": "9.6.1", + "file-entry-cache": "6.0.1", + "flat-cache": "3.2.0", + "glob": "7.2.3", + "globals": "13.24.0", + "strip-ansi": "6.0.1" + }, + "homepage": "https://github.com/capacitor-community/speech-recognition#readme" +} diff --git a/speech-recognition/rollup.config.js b/speech-recognition/rollup.config.js new file mode 100644 index 00000000..e6ea0bc6 --- /dev/null +++ b/speech-recognition/rollup.config.js @@ -0,0 +1,22 @@ +export default { + input: 'dist/esm/index.js', + output: [ + { + file: 'dist/plugin.js', + format: 'iife', + name: 'capacitorSpeechRecognition', + globals: { + '@capacitor/core': 'capacitorExports', + }, + sourcemap: true, + inlineDynamicImports: true, + }, + { + file: 'dist/plugin.cjs.js', + format: 'cjs', + sourcemap: true, + inlineDynamicImports: true, + }, + ], + external: ['@capacitor/core'], +}; diff --git a/speech-recognition/src/definitions.ts b/speech-recognition/src/definitions.ts new file mode 100644 index 00000000..530169f5 --- /dev/null +++ b/speech-recognition/src/definitions.ts @@ -0,0 +1,157 @@ +import type { PermissionState, PluginListenerHandle } from '@capacitor/core'; + +export interface PermissionStatus { + /** + * Permission state for speechRecognition alias. + * + * On Android it requests/checks RECORD_AUDIO permission + * + * On iOS it requests/checks the speech recognition and microphone permissions. + * + * @since 5.0.0 + */ + speechRecognition: PermissionState; +} + +export interface RecordOptions { + fileName?: string; + outputPath?: string; +} + +export interface RecordingResult { + /** + * Path to the recorded audio file + */ + path: string; + status?: 'started' | 'stopped'; +} + +export interface AudioData { + buffer: number[]; +} + + +export interface SpeechRecognitionPlugin { + /** + * This method will check if speech recognition feature is available on the device. + * @param none + * @returns available - boolean true/false for availability + */ + available(): Promise<{ available: boolean }>; + /** + * Start recording audio to a file + * @returns Promise with the path to the recorded file + */ + record(options?: RecordOptions): Promise; + +/** + * Start streaming microphone data for visualization + */ + startMicrophoneStream(): Promise; + + /** + * Stop streaming microphone data + */ + stopMicrophoneStream(): Promise; /** + * Stop the current recording + * @returns Promise that resolves when recording is stopped + */ + stopRecording(): Promise; + /** + * This method will start to listen for utterance. + * + * if `partialResults` is `true`, the function respond directly without result and + * event `partialResults` will be emit for each partial result, until stopped. + * + * @param options + * @returns void or array of string results + */ + start(options?: UtteranceOptions): Promise<{ matches?: string[] }>; + /** + * This method will stop listening for utterance + * @param none + * @returns void + */ + stop(): Promise; + /** + * This method will return list of languages supported by the speech recognizer. + * + * It's not available on Android 13 and newer. + * + * @param none + * @returns languages - array string of languages + */ + getSupportedLanguages(): Promise<{ languages: any[] }>; + /** + * This method will check if speech recognition is listening. + * @param none + * @returns boolean true/false if speech recognition is currently listening + * + * @since 5.1.0 + */ + isListening(): Promise<{ listening: boolean }>; + /** + * Check the speech recognition permission. + * + * @since 5.0.0 + */ + checkPermissions(): Promise; + /** + * Request the speech recognition permission. + * + * @since 5.0.0 + */ + requestPermissions(): Promise; + /** + * Called when partialResults set to true and result received. + * + * On Android it doesn't work if popup is true. + * + * Provides partial result. + * + * @since 2.0.2 + */ + addListener( + eventName: 'partialResults', + listenerFunc: (data: { matches: string[] }) => void, + ): Promise; + + /** + * Called when listening state changed. + * + * @since 5.1.0 + */ + addListener( + eventName: 'listeningState', + listenerFunc: (data: { status: 'started' | 'stopped' }) => void, + ): Promise; + /** + * Remove all the listeners that are attached to this plugin. + * + * @since 4.0.0 + */ + removeAllListeners(): Promise; +} + +export interface UtteranceOptions { + /** + * key returned from `getSupportedLanguages()` + */ + language?: string; + /** + * maximum number of results to return (5 is max) + */ + maxResults?: number; + /** + * prompt message to display on popup (Android only) + */ + prompt?: string; + /** + * display popup window when listening for utterance (Android only) + */ + popup?: boolean; + /** + * return partial results if found + */ + partialResults?: boolean; +} diff --git a/speech-recognition/src/index.ts b/speech-recognition/src/index.ts new file mode 100644 index 00000000..08d8c868 --- /dev/null +++ b/speech-recognition/src/index.ts @@ -0,0 +1,13 @@ +import { registerPlugin } from '@capacitor/core'; + +import type { SpeechRecognitionPlugin } from './definitions'; + +const SpeechRecognition = registerPlugin( + 'SpeechRecognition', + { + web: () => import('./web').then(m => new m.SpeechRecognitionWeb()), + }, +); + +export * from './definitions'; +export { SpeechRecognition }; diff --git a/speech-recognition/src/web.ts b/speech-recognition/src/web.ts new file mode 100644 index 00000000..570c443a --- /dev/null +++ b/speech-recognition/src/web.ts @@ -0,0 +1,59 @@ +import { WebPlugin } from '@capacitor/core'; + +import type { + PermissionStatus, + SpeechRecognitionPlugin, + UtteranceOptions, + RecordingResult, + RecordOptions +} from './definitions'; + +export class SpeechRecognitionWeb + extends WebPlugin + implements SpeechRecognitionPlugin +{ + available(): Promise<{ available: boolean }> { + throw this.unimplemented('Method not implemented on web.'); + } + async startMicrophoneStream(): Promise { + throw this.unimplemented('Not implemented on web.'); + } + async stopMicrophoneStream(): Promise { + throw this.unimplemented('Not implemented on web.'); + } + async record(_options?: RecordOptions): Promise { + throw this.unimplemented('Not implemented on web.'); + } + + async stopRecording(): Promise { + throw this.unimplemented('Not implemented on web.'); + } + start(_options?: UtteranceOptions): Promise<{ matches?: string[] }> { + throw this.unimplemented('Method not implemented on web.'); + } + stop(): Promise { + throw this.unimplemented('Method not implemented on web.'); + } + getSupportedLanguages(): Promise<{ languages: any[] }> { + throw this.unimplemented('Method not implemented on web.'); + } + hasPermission(): Promise<{ permission: boolean }> { + throw this.unimplemented('Method not implemented on web.'); + } + isListening(): Promise<{ listening: boolean }> { + throw this.unimplemented('Method not implemented on web.'); + } + requestPermission(): Promise { + throw this.unimplemented('Method not implemented on web.'); + } + checkPermissions(): Promise { + throw this.unimplemented('Method not implemented on web.'); + } + requestPermissions(): Promise { + throw this.unimplemented('Method not implemented on web.'); + } +} + +const SpeechRecognition = new SpeechRecognitionWeb(); + +export { SpeechRecognition }; diff --git a/speech-recognition/tsconfig.json b/speech-recognition/tsconfig.json new file mode 100644 index 00000000..f2e88e6a --- /dev/null +++ b/speech-recognition/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "allowUnreachableCode": false, + "declaration": true, + "esModuleInterop": true, + "inlineSources": true, + "lib": ["dom", "es2017"], + "module": "esnext", + "moduleResolution": "node", + "noFallthroughCasesInSwitch": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "outDir": "dist/esm", + "pretty": true, + "sourceMap": true, + "strict": true, + "target": "es2017" + }, + "files": ["src/index.ts"] +}