From f1d4020eb23f7c3d5f3f821ffbcfd309df8a3b57 Mon Sep 17 00:00:00 2001 From: rishikanthc Date: Thu, 9 Jan 2025 12:16:05 -0800 Subject: [PATCH] fixing cap plugin --- speech-recognition/.eslintignore | 2 + speech-recognition/.npmrc | 1 + speech-recognition/.prettierignore | 2 + speech-recognition/CHANGELOG.md | 42 + speech-recognition/CONTRIBUTING.md | 66 + ...apacitorCommunitySpeechRecognition.podspec | 17 + speech-recognition/LICENSE | 21 + speech-recognition/README.md | 370 + speech-recognition/android/.npmignore | 1 + speech-recognition/android/build.gradle | 57 + speech-recognition/android/gradle.properties | 20 + .../android/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 63375 bytes .../gradle/wrapper/gradle-wrapper.properties | 7 + speech-recognition/android/gradlew | 248 + speech-recognition/android/gradlew.bat | 92 + speech-recognition/android/proguard-rules.pro | 21 + speech-recognition/android/settings.gradle | 2 + .../android/ExampleInstrumentedTest.java | 26 + .../android/src/main/AndroidManifest.xml | 11 + .../speechrecognition/Constants.java | 19 + .../community/speechrecognition/Receiver.java | 52 + .../speechrecognition/SpeechRecognition.java | 375 + .../main/res/layout/bridge_layout_main.xml | 15 + .../android/src/main/res/values/colors.xml | 3 + .../android/src/main/res/values/strings.xml | 3 + .../android/src/main/res/values/styles.xml | 3 + .../com/getcapacitor/ExampleUnitTest.java | 18 + speech-recognition/dist/docs.json | 439 + speech-recognition/dist/esm/definitions.d.ts | 153 + speech-recognition/dist/esm/definitions.js | 2 + .../dist/esm/definitions.js.map | 1 + speech-recognition/dist/esm/index.d.ts | 4 + speech-recognition/dist/esm/index.js | 7 + speech-recognition/dist/esm/index.js.map | 1 + speech-recognition/dist/esm/web.d.ts | 29 + speech-recognition/dist/esm/web.js | 45 + speech-recognition/dist/esm/web.js.map | 1 + .../ios/Plugin.xcodeproj/project.pbxproj | 556 ++ .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + speech-recognition/ios/Plugin/Info.plist | 42 + speech-recognition/ios/Plugin/Plugin.h | 10 + speech-recognition/ios/Plugin/Plugin.m | 21 + speech-recognition/ios/Plugin/Plugin.swift | 324 + speech-recognition/ios/PluginTests/Info.plist | 22 + .../ios/PluginTests/PluginTests.swift | 25 + speech-recognition/ios/Podfile | 16 + speech-recognition/ios/Podfile.lock | 22 + .../Local Podspecs/Capacitor.podspec.json | 31 + .../CapacitorCordova.podspec.json | 29 + speech-recognition/ios/Pods/Manifest.lock | 22 + .../ios/Pods/Pods.xcodeproj/project.pbxproj | 1438 ++++ .../xcschemes/Capacitor.xcscheme | 58 + .../xcschemes/CapacitorCordova.xcscheme | 58 + .../xcschemes/Pods-Plugin.xcscheme | 58 + .../xcschemes/Pods-PluginTests.xcscheme | 58 + .../xcschemes/xcschememanagement.plist | 31 + .../Capacitor/Capacitor-Info.plist | 26 + .../Capacitor/Capacitor-dummy.m | 5 + .../Capacitor/Capacitor-prefix.pch | 12 + .../Capacitor/Capacitor.debug.xcconfig | 16 + .../Capacitor/Capacitor.modulemap | 8 + .../Capacitor/Capacitor.release.xcconfig | 16 + .../CapacitorCordova-Info.plist | 26 + .../CapacitorCordova/CapacitorCordova-dummy.m | 5 + .../CapacitorCordova-prefix.pch | 12 + .../CapacitorCordova.debug.xcconfig | 13 + .../CapacitorCordova.modulemap | 6 + .../CapacitorCordova.release.xcconfig | 13 + .../Pods-Plugin/Pods-Plugin-Info.plist | 26 + .../Pods-Plugin-acknowledgements.markdown | 53 + .../Pods-Plugin-acknowledgements.plist | 91 + .../Pods-Plugin/Pods-Plugin-dummy.m | 5 + .../Pods-Plugin/Pods-Plugin-umbrella.h | 16 + .../Pods-Plugin/Pods-Plugin.debug.xcconfig | 15 + .../Pods-Plugin/Pods-Plugin.modulemap | 6 + .../Pods-Plugin/Pods-Plugin.release.xcconfig | 15 + .../Pods-PluginTests-Info.plist | 26 + ...Pods-PluginTests-acknowledgements.markdown | 53 + .../Pods-PluginTests-acknowledgements.plist | 91 + .../Pods-PluginTests/Pods-PluginTests-dummy.m | 5 + .../Pods-PluginTests-frameworks.sh | 188 + .../Pods-PluginTests-umbrella.h | 16 + .../Pods-PluginTests.debug.xcconfig | 16 + .../Pods-PluginTests.modulemap | 6 + .../Pods-PluginTests.release.xcconfig | 16 + speech-recognition/loggy | 7234 +++++++++++++++++ speech-recognition/package-lock.json | 6138 ++++++++++++++ speech-recognition/package.json | 104 + speech-recognition/rollup.config.js | 22 + speech-recognition/src/definitions.ts | 157 + speech-recognition/src/index.ts | 13 + speech-recognition/src/web.ts | 59 + speech-recognition/tsconfig.json | 20 + 94 files changed, 19564 insertions(+) create mode 100644 speech-recognition/.eslintignore create mode 100644 speech-recognition/.npmrc create mode 100644 speech-recognition/.prettierignore create mode 100644 speech-recognition/CHANGELOG.md create mode 100644 speech-recognition/CONTRIBUTING.md create mode 100644 speech-recognition/CapacitorCommunitySpeechRecognition.podspec create mode 100644 speech-recognition/LICENSE create mode 100644 speech-recognition/README.md create mode 100644 speech-recognition/android/.npmignore create mode 100644 speech-recognition/android/build.gradle create mode 100644 speech-recognition/android/gradle.properties create mode 100644 speech-recognition/android/gradle/wrapper/gradle-wrapper.jar create mode 100644 speech-recognition/android/gradle/wrapper/gradle-wrapper.properties create mode 100755 speech-recognition/android/gradlew create mode 100644 speech-recognition/android/gradlew.bat create mode 100644 speech-recognition/android/proguard-rules.pro create mode 100644 speech-recognition/android/settings.gradle create mode 100644 speech-recognition/android/src/androidTest/java/com/getcapacitor/android/ExampleInstrumentedTest.java create mode 100644 speech-recognition/android/src/main/AndroidManifest.xml create mode 100644 speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/Constants.java create mode 100644 speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/Receiver.java create mode 100644 speech-recognition/android/src/main/java/com/getcapacitor/community/speechrecognition/SpeechRecognition.java create mode 100644 speech-recognition/android/src/main/res/layout/bridge_layout_main.xml create mode 100644 speech-recognition/android/src/main/res/values/colors.xml create mode 100644 speech-recognition/android/src/main/res/values/strings.xml create mode 100644 speech-recognition/android/src/main/res/values/styles.xml create mode 100644 speech-recognition/android/src/test/java/com/getcapacitor/ExampleUnitTest.java create mode 100644 speech-recognition/dist/docs.json create mode 100644 speech-recognition/dist/esm/definitions.d.ts create mode 100644 speech-recognition/dist/esm/definitions.js create mode 100644 speech-recognition/dist/esm/definitions.js.map create mode 100644 speech-recognition/dist/esm/index.d.ts create mode 100644 speech-recognition/dist/esm/index.js create mode 100644 speech-recognition/dist/esm/index.js.map create mode 100644 speech-recognition/dist/esm/web.d.ts create mode 100644 speech-recognition/dist/esm/web.js create mode 100644 speech-recognition/dist/esm/web.js.map create mode 100644 speech-recognition/ios/Plugin.xcodeproj/project.pbxproj create mode 100644 speech-recognition/ios/Plugin.xcworkspace/contents.xcworkspacedata create mode 100644 speech-recognition/ios/Plugin.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 speech-recognition/ios/Plugin/Info.plist create mode 100644 speech-recognition/ios/Plugin/Plugin.h create mode 100644 speech-recognition/ios/Plugin/Plugin.m create mode 100644 speech-recognition/ios/Plugin/Plugin.swift create mode 100644 speech-recognition/ios/PluginTests/Info.plist create mode 100644 speech-recognition/ios/PluginTests/PluginTests.swift create mode 100644 speech-recognition/ios/Podfile create mode 100644 speech-recognition/ios/Podfile.lock create mode 100644 speech-recognition/ios/Pods/Local Podspecs/Capacitor.podspec.json create mode 100644 speech-recognition/ios/Pods/Local Podspecs/CapacitorCordova.podspec.json create mode 100644 speech-recognition/ios/Pods/Manifest.lock create mode 100644 speech-recognition/ios/Pods/Pods.xcodeproj/project.pbxproj create mode 100644 speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Capacitor.xcscheme create mode 100644 speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/CapacitorCordova.xcscheme create mode 100644 speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Pods-Plugin.xcscheme create mode 100644 speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/Pods-PluginTests.xcscheme create mode 100644 speech-recognition/ios/Pods/Pods.xcodeproj/xcuserdata/richandrasekaran.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-Info.plist create mode 100644 speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-dummy.m create mode 100644 speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor-prefix.pch create mode 100644 speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.debug.xcconfig create mode 100644 speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.modulemap create mode 100644 speech-recognition/ios/Pods/Target Support Files/Capacitor/Capacitor.release.xcconfig create mode 100644 speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-Info.plist create mode 100644 speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-dummy.m create mode 100644 speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova-prefix.pch create mode 100644 speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.debug.xcconfig create mode 100644 speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.modulemap create mode 100644 speech-recognition/ios/Pods/Target Support Files/CapacitorCordova/CapacitorCordova.release.xcconfig create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-Info.plist create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-acknowledgements.markdown create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-acknowledgements.plist create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-dummy.m create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin-umbrella.h create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.debug.xcconfig create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.modulemap create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-Plugin/Pods-Plugin.release.xcconfig create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-Info.plist create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-acknowledgements.markdown create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-acknowledgements.plist create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-dummy.m create mode 100755 speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-frameworks.sh create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests-umbrella.h create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.debug.xcconfig create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.modulemap create mode 100644 speech-recognition/ios/Pods/Target Support Files/Pods-PluginTests/Pods-PluginTests.release.xcconfig create mode 100644 speech-recognition/loggy create mode 100644 speech-recognition/package-lock.json create mode 100644 speech-recognition/package.json create mode 100644 speech-recognition/rollup.config.js create mode 100644 speech-recognition/src/definitions.ts create mode 100644 speech-recognition/src/index.ts create mode 100644 speech-recognition/src/web.ts create mode 100644 speech-recognition/tsconfig.json 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 0000000000000000000000000000000000000000..033e24c4cdf41af1ab109bc7f253b2b887023340 GIT binary patch literal 63375 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≫L+crb^Bz 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 '} + 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"] +}