├── .eslintignore ├── android ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ └── .gitkeep │ │ ├── AndroidManifest.xml │ │ └── java │ │ │ └── com │ │ │ └── paqu │ │ │ └── unityads │ │ │ └── UnityAdsPlugin.java │ ├── test │ │ └── java │ │ │ └── com │ │ │ └── getcapacitor │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── com │ │ └── getcapacitor │ │ └── android │ │ └── ExampleInstrumentedTest.java ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── settings.gradle ├── proguard-rules.pro ├── gradle.properties ├── build.gradle ├── gradlew.bat └── gradlew ├── .prettierignore ├── ios ├── Plugin │ ├── UnityAds.swift │ ├── UnityAdsPlugin.m │ ├── UnityAdsPlugin.h │ ├── UnityAdsPlugin.swift │ └── Info.plist ├── Plugin.xcodeproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ ├── xcshareddata │ │ └── xcschemes │ │ │ ├── PluginTests.xcscheme │ │ │ └── Plugin.xcscheme │ └── project.pbxproj ├── Plugin.xcworkspace │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist ├── Podfile └── PluginTests │ ├── Info.plist │ └── UnityAdsTests.swift ├── src ├── web.ts ├── index.ts └── definitions.ts ├── rollup.config.js ├── tsconfig.json ├── UnityAdsCapacitor.podspec ├── .gitignore ├── CONTRIBUTING.md ├── package.json ├── README.md └── pnpm-lock.yaml /.eslintignore: -------------------------------------------------------------------------------- 1 | build 2 | dist 3 | -------------------------------------------------------------------------------- /android/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /android/src/main/res/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | build 2 | dist 3 | -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenAnime/capacitor-plugin-unityads/HEAD/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /android/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':capacitor-android' 2 | project(':capacitor-android').projectDir = new File('../node_modules/@capacitor/android/capacitor') -------------------------------------------------------------------------------- /android/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /ios/Plugin/UnityAds.swift: -------------------------------------------------------------------------------- 1 | import Foundation 2 | 3 | @objc public class UnityAds: NSObject { 4 | @objc public func echo(_ value: String) -> String { 5 | print(value) 6 | return value 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /ios/Plugin.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/web.ts: -------------------------------------------------------------------------------- 1 | import { WebPlugin } from '@capacitor/core'; 2 | 3 | export class UnityAdsWeb extends WebPlugin { 4 | initAds() { 5 | return 6 | } 7 | 8 | loadAds() { 9 | return 10 | } 11 | 12 | displayAd() { 13 | return 14 | } 15 | } -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-all.zip 4 | networkTimeout=10000 5 | zipStoreBase=GRADLE_USER_HOME 6 | zipStorePath=wrapper/dists 7 | -------------------------------------------------------------------------------- /ios/Plugin.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | import { registerPlugin } from '@capacitor/core'; 2 | 3 | import type { UnityAdsWeb } from './definitions'; 4 | 5 | const UnityAds = registerPlugin('UnityAds', { 6 | web: () => import('./web').then(m => new m.UnityAdsWeb()), 7 | }); 8 | 9 | export * from './definitions'; 10 | export { UnityAds }; 11 | -------------------------------------------------------------------------------- /ios/Plugin.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ios/Plugin/UnityAdsPlugin.m: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | // Define the plugin using the CAP_PLUGIN Macro, and 5 | // each method the plugin supports using the CAP_PLUGIN_METHOD macro. 6 | CAP_PLUGIN(UnityAdsPlugin, "UnityAds", 7 | CAP_PLUGIN_METHOD(echo, CAPPluginReturnPromise); 8 | ) 9 | -------------------------------------------------------------------------------- /ios/Plugin/UnityAdsPlugin.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for Plugin. 4 | FOUNDATION_EXPORT double PluginVersionNumber; 5 | 6 | //! Project version string for Plugin. 7 | FOUNDATION_EXPORT const unsigned char PluginVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | -------------------------------------------------------------------------------- /ios/Podfile: -------------------------------------------------------------------------------- 1 | platform :ios, '13.0' 2 | 3 | def capacitor_pods 4 | # Comment the next line if you're not using Swift and don't want to use dynamic frameworks 5 | use_frameworks! 6 | pod 'Capacitor', :path => '../node_modules/@capacitor/ios' 7 | pod 'CapacitorCordova', :path => '../node_modules/@capacitor/ios' 8 | end 9 | 10 | target 'Plugin' do 11 | capacitor_pods 12 | end 13 | 14 | target 'PluginTests' do 15 | capacitor_pods 16 | end 17 | -------------------------------------------------------------------------------- /android/src/test/java/com/getcapacitor/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package com.getcapacitor; 2 | 3 | import static org.junit.Assert.*; 4 | 5 | import org.junit.Test; 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * @see Testing documentation 11 | */ 12 | public class ExampleUnitTest { 13 | 14 | @Test 15 | public void addition_isCorrect() throws Exception { 16 | assertEquals(4, 2 + 2); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ios/Plugin/UnityAdsPlugin.swift: -------------------------------------------------------------------------------- 1 | import Foundation 2 | import Capacitor 3 | 4 | /** 5 | * Please read the Capacitor iOS Plugin Development Guide 6 | * here: https://capacitorjs.com/docs/plugins/ios 7 | */ 8 | @objc(UnityAdsPlugin) 9 | public class UnityAdsPlugin: CAPPlugin { 10 | private let implementation = UnityAds() 11 | 12 | @objc func echo(_ call: CAPPluginCall) { 13 | let value = call.getString("value") ?? "" 14 | call.resolve([ 15 | "value": implementation.echo(value) 16 | ]) 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /rollup.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | input: 'dist/esm/index.js', 3 | output: [ 4 | { 5 | file: 'dist/plugin.js', 6 | format: 'iife', 7 | name: 'capacitorUnityAds', 8 | globals: { 9 | '@capacitor/core': 'capacitorExports', 10 | }, 11 | sourcemap: true, 12 | inlineDynamicImports: true, 13 | }, 14 | { 15 | file: 'dist/plugin.cjs.js', 16 | format: 'cjs', 17 | sourcemap: true, 18 | inlineDynamicImports: true, 19 | }, 20 | ], 21 | external: ['@capacitor/core'], 22 | }; 23 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "allowUnreachableCode": false, 4 | "declaration": true, 5 | "esModuleInterop": true, 6 | "inlineSources": true, 7 | "lib": ["dom", "es2017"], 8 | "module": "esnext", 9 | "moduleResolution": "node", 10 | "noFallthroughCasesInSwitch": true, 11 | "noUnusedLocals": true, 12 | "noUnusedParameters": true, 13 | "outDir": "dist/esm", 14 | "pretty": true, 15 | "sourceMap": true, 16 | "strict": true, 17 | "target": "es2017" 18 | }, 19 | "files": ["src/index.ts"] 20 | } 21 | -------------------------------------------------------------------------------- /UnityAdsCapacitor.podspec: -------------------------------------------------------------------------------- 1 | require 'json' 2 | 3 | package = JSON.parse(File.read(File.join(__dir__, 'package.json'))) 4 | 5 | Pod::Spec.new do |s| 6 | s.name = 'UnityAdsCapacitor' 7 | s.version = package['version'] 8 | s.summary = package['description'] 9 | s.license = package['license'] 10 | s.homepage = package['repository']['url'] 11 | s.author = package['author'] 12 | s.source = { :git => package['repository']['url'], :tag => s.version.to_s } 13 | s.source_files = 'ios/Plugin/**/*.{swift,h,m,c,cc,mm,cpp}' 14 | s.ios.deployment_target = '13.0' 15 | s.dependency 'Capacitor' 16 | s.swift_version = '5.1' 17 | end 18 | -------------------------------------------------------------------------------- /ios/PluginTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /android/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile 22 | -------------------------------------------------------------------------------- /ios/Plugin/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | $(CURRENT_PROJECT_VERSION) 21 | NSPrincipalClass 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /ios/PluginTests/UnityAdsTests.swift: -------------------------------------------------------------------------------- 1 | import XCTest 2 | @testable import Plugin 3 | 4 | class UnityAdsTests: XCTestCase { 5 | override func setUp() { 6 | super.setUp() 7 | // Put setup code here. This method is called before the invocation of each test method in the class. 8 | } 9 | 10 | override func tearDown() { 11 | // Put teardown code here. This method is called after the invocation of each test method in the class. 12 | super.tearDown() 13 | } 14 | 15 | func testEcho() { 16 | // This is an example of a functional test case for a plugin. 17 | // Use XCTAssert and related functions to verify your tests produce the correct results. 18 | 19 | let implementation = UnityAds() 20 | let value = "Hello, World!" 21 | let result = implementation.echo(value) 22 | 23 | XCTAssertEqual(value, result) 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /src/definitions.ts: -------------------------------------------------------------------------------- 1 | import { Plugin, PluginListenerHandle } from '@capacitor/core'; 2 | 3 | interface Error { 4 | error: string 5 | } 6 | 7 | export interface IListeners { 8 | initialized: []; 9 | initializationError: [error: Error]; 10 | adLoaded: []; 11 | adLoadError: [error: Error]; 12 | adShowError: [error: Error]; 13 | adShowStart: []; 14 | adShowClick: []; 15 | adShown: [state: { state: "SKIPPED" | "COMPLETED" }]; 16 | } 17 | 18 | interface IUnityAdsPlugin extends Plugin { 19 | addListener(eventName: E, listenerFunc: (...args: IListeners[E]) => any): Promise 20 | } 21 | 22 | export interface UnityAdsWeb extends IUnityAdsPlugin { 23 | initAds(options: { 24 | unityGameId: string 25 | testMode: boolean, 26 | }): void; 27 | loadAds(options: { 28 | adUnitId: string, 29 | }): void 30 | displayAd(): void 31 | } 32 | -------------------------------------------------------------------------------- /android/src/androidTest/java/com/getcapacitor/android/ExampleInstrumentedTest.java: -------------------------------------------------------------------------------- 1 | package com.getcapacitor.android; 2 | 3 | import static org.junit.Assert.*; 4 | 5 | import android.content.Context; 6 | import androidx.test.ext.junit.runners.AndroidJUnit4; 7 | import androidx.test.platform.app.InstrumentationRegistry; 8 | import org.junit.Test; 9 | import org.junit.runner.RunWith; 10 | 11 | /** 12 | * Instrumented test, which will execute on an Android device. 13 | * 14 | * @see Testing documentation 15 | */ 16 | @RunWith(AndroidJUnit4.class) 17 | public class ExampleInstrumentedTest { 18 | 19 | @Test 20 | public void useAppContext() throws Exception { 21 | // Context of the app under test. 22 | Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); 23 | 24 | assertEquals("com.getcapacitor.android", appContext.getPackageName()); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /android/gradle.properties: -------------------------------------------------------------------------------- 1 | # Project-wide Gradle settings. 2 | 3 | # IDE (e.g. Android Studio) users: 4 | # Gradle settings configured through the IDE *will override* 5 | # any settings specified in this file. 6 | 7 | # For more details on how to configure your build environment visit 8 | # http://www.gradle.org/docs/current/userguide/build_environment.html 9 | 10 | # Specifies the JVM arguments used for the daemon process. 11 | # The setting is particularly useful for tweaking memory settings. 12 | org.gradle.jvmargs=-Xmx1536m 13 | 14 | # When configured, Gradle will run in incubating parallel mode. 15 | # This option should only be used with decoupled projects. More details, visit 16 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 17 | # org.gradle.parallel=true 18 | 19 | # AndroidX package structure to make it clearer which packages are bundled with the 20 | # Android operating system, and which are packaged with your app's APK 21 | # https://developer.android.com/topic/libraries/support-library/androidx-rn 22 | android.useAndroidX=true 23 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # node files 2 | dist 3 | node_modules 4 | 5 | # iOS files 6 | Pods 7 | Podfile.lock 8 | Build 9 | xcuserdata 10 | 11 | # macOS files 12 | .DS_Store 13 | 14 | 15 | 16 | # Based on Android gitignore template: https://github.com/github/gitignore/blob/HEAD/Android.gitignore 17 | 18 | # Built application files 19 | *.apk 20 | *.ap_ 21 | 22 | # Files for the ART/Dalvik VM 23 | *.dex 24 | 25 | # Java class files 26 | *.class 27 | 28 | # Generated files 29 | bin 30 | gen 31 | out 32 | 33 | # Gradle files 34 | .gradle 35 | build 36 | 37 | # Local configuration file (sdk path, etc) 38 | local.properties 39 | 40 | # Proguard folder generated by Eclipse 41 | proguard 42 | 43 | # Log Files 44 | *.log 45 | 46 | # Android Studio Navigation editor temp files 47 | .navigation 48 | 49 | # Android Studio captures folder 50 | captures 51 | 52 | # IntelliJ 53 | *.iml 54 | .idea 55 | 56 | # Keystore files 57 | # Uncomment the following line if you do not want to check your keystore files in. 58 | #*.jks 59 | 60 | # External native build folder generated in Android Studio 2.2 and later 61 | .externalNativeBuild 62 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | This guide provides instructions for contributing to this Capacitor plugin. 4 | 5 | ## Developing 6 | 7 | ### Local Setup 8 | 9 | 1. Fork and clone the repo. 10 | 1. Install the dependencies. 11 | 12 | ```shell 13 | npm install 14 | ``` 15 | 16 | 1. Install SwiftLint if you're on macOS. 17 | 18 | ```shell 19 | brew install swiftlint 20 | ``` 21 | 22 | ### Scripts 23 | 24 | #### `npm run build` 25 | 26 | Build the plugin web assets and generate plugin API documentation using [`@capacitor/docgen`](https://github.com/ionic-team/capacitor-docgen). 27 | 28 | 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. 29 | 30 | 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`. 31 | 32 | #### `npm run verify` 33 | 34 | Build and validate the web and native projects. 35 | 36 | This is useful to run in CI to verify that the plugin builds for all platforms. 37 | 38 | #### `npm run lint` / `npm run fmt` 39 | 40 | Check formatting and code quality, autoformat/autofix if possible. 41 | 42 | 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. 43 | 44 | ## Publishing 45 | 46 | There is a `prepublishOnly` hook in `package.json` which prepares the plugin before publishing, so all you need to do is run: 47 | 48 | ```shell 49 | npm publish 50 | ``` 51 | 52 | > **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. 53 | -------------------------------------------------------------------------------- /android/build.gradle: -------------------------------------------------------------------------------- 1 | ext { 2 | junitVersion = project.hasProperty('junitVersion') ? rootProject.ext.junitVersion : '4.13.2' 3 | androidxAppCompatVersion = project.hasProperty('androidxAppCompatVersion') ? rootProject.ext.androidxAppCompatVersion : '1.6.1' 4 | androidxJunitVersion = project.hasProperty('androidxJunitVersion') ? rootProject.ext.androidxJunitVersion : '1.1.5' 5 | androidxEspressoCoreVersion = project.hasProperty('androidxEspressoCoreVersion') ? rootProject.ext.androidxEspressoCoreVersion : '3.5.1' 6 | } 7 | 8 | buildscript { 9 | repositories { 10 | google() 11 | mavenCentral() 12 | } 13 | dependencies { 14 | classpath 'com.android.tools.build:gradle:8.0.0' 15 | } 16 | } 17 | 18 | apply plugin: 'com.android.library' 19 | 20 | android { 21 | namespace "com.paqu.unityads" 22 | compileSdkVersion project.hasProperty('compileSdkVersion') ? rootProject.ext.compileSdkVersion : 33 23 | defaultConfig { 24 | minSdkVersion project.hasProperty('minSdkVersion') ? rootProject.ext.minSdkVersion : 22 25 | targetSdkVersion project.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion : 33 26 | versionCode 1 27 | versionName "1.0" 28 | testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" 29 | } 30 | buildTypes { 31 | release { 32 | minifyEnabled false 33 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 34 | } 35 | } 36 | lintOptions { 37 | abortOnError false 38 | } 39 | compileOptions { 40 | sourceCompatibility JavaVersion.VERSION_1_8 41 | targetCompatibility JavaVersion.VERSION_1_8 42 | } 43 | } 44 | 45 | repositories { 46 | google() 47 | mavenCentral() 48 | } 49 | 50 | 51 | dependencies { 52 | implementation fileTree(dir: 'libs', include: ['*.jar']) 53 | implementation project(':capacitor-android') 54 | implementation 'com.unity3d.ads:unity-ads:4.7.0' 55 | implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion" 56 | testImplementation "junit:junit:$junitVersion" 57 | androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion" 58 | androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion" 59 | } 60 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "capacitor-plugin-unityads", 3 | "version": "0.0.1", 4 | "description": "Unity ADS Integration for Capacitor & Ionic Projects.", 5 | "main": "dist/plugin.cjs.js", 6 | "module": "dist/esm/index.js", 7 | "types": "dist/esm/index.d.ts", 8 | "unpkg": "dist/plugin.js", 9 | "files": [ 10 | "android/src/main/", 11 | "android/build.gradle", 12 | "dist/", 13 | "ios/Plugin/", 14 | "UnityAdsCapacitor.podspec" 15 | ], 16 | "author": "Paqu", 17 | "license": "MIT", 18 | "repository": { 19 | "type": "git", 20 | "url": "git+https://google.com.git" 21 | }, 22 | "bugs": { 23 | "url": "https://google.com/issues" 24 | }, 25 | "keywords": [ 26 | "capacitor", 27 | "plugin", 28 | "native" 29 | ], 30 | "scripts": { 31 | "verify": "npm run verify:ios && npm run verify:android && npm run verify:web", 32 | "verify:ios": "cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..", 33 | "verify:android": "cd android && ./gradlew clean build test && cd ..", 34 | "verify:web": "npm run build", 35 | "lint": "npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint", 36 | "fmt": "npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format", 37 | "eslint": "eslint . --ext ts", 38 | "prettier": "prettier \"**/*.{css,html,ts,js,java}\"", 39 | "swiftlint": "node-swiftlint", 40 | "docgen": "docgen --api UnityAdsPlugin --output-readme README.md --output-json dist/docs.json", 41 | "build": "npm run clean && tsc && rollup -c rollup.config.js", 42 | "clean": "rimraf ./dist", 43 | "watch": "tsc --watch", 44 | "prepublishOnly": "npm run build" 45 | }, 46 | "devDependencies": { 47 | "@capacitor/android": "^5.0.0", 48 | "@capacitor/core": "^5.0.0", 49 | "@capacitor/docgen": "^0.0.18", 50 | "@capacitor/ios": "^5.0.0", 51 | "@ionic/eslint-config": "^0.3.0", 52 | "@ionic/prettier-config": "^1.0.1", 53 | "@ionic/swiftlint-config": "^1.1.2", 54 | "eslint": "^7.11.0", 55 | "prettier": "~2.3.0", 56 | "prettier-plugin-java": "~1.0.2", 57 | "rimraf": "^3.0.2", 58 | "rollup": "^2.32.0", 59 | "swiftlint": "^1.0.1", 60 | "typescript": "~4.1.5" 61 | }, 62 | "peerDependencies": { 63 | "@capacitor/core": "^5.0.0" 64 | }, 65 | "prettier": "@ionic/prettier-config", 66 | "swiftlint": "@ionic/swiftlint-config", 67 | "eslintConfig": { 68 | "extends": "@ionic/eslint-config/recommended" 69 | }, 70 | "capacitor": { 71 | "ios": { 72 | "src": "ios" 73 | }, 74 | "android": { 75 | "src": "android" 76 | } 77 | } 78 | } 79 | -------------------------------------------------------------------------------- /ios/Plugin.xcodeproj/xcshareddata/xcschemes/PluginTests.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 53 | 54 | 60 | 61 | 63 | 64 | 67 | 68 | 69 | -------------------------------------------------------------------------------- /ios/Plugin.xcodeproj/xcshareddata/xcschemes/Plugin.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 53 | 54 | 60 | 61 | 67 | 68 | 69 | 70 | 72 | 73 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /android/gradlew.bat: -------------------------------------------------------------------------------- 1 | @rem 2 | @rem Copyright 2015 the original author or authors. 3 | @rem 4 | @rem Licensed under the Apache License, Version 2.0 (the "License"); 5 | @rem you may not use this file except in compliance with the License. 6 | @rem You may obtain a copy of the License at 7 | @rem 8 | @rem https://www.apache.org/licenses/LICENSE-2.0 9 | @rem 10 | @rem Unless required by applicable law or agreed to in writing, software 11 | @rem distributed under the License is distributed on an "AS IS" BASIS, 12 | @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | @rem See the License for the specific language governing permissions and 14 | @rem limitations under the License. 15 | @rem 16 | 17 | @if "%DEBUG%"=="" @echo off 18 | @rem ########################################################################## 19 | @rem 20 | @rem Gradle startup script for Windows 21 | @rem 22 | @rem ########################################################################## 23 | 24 | @rem Set local scope for the variables with windows NT shell 25 | if "%OS%"=="Windows_NT" setlocal 26 | 27 | set DIRNAME=%~dp0 28 | if "%DIRNAME%"=="" set DIRNAME=. 29 | @rem This is normally unused 30 | set APP_BASE_NAME=%~n0 31 | set APP_HOME=%DIRNAME% 32 | 33 | @rem Resolve any "." and ".." in APP_HOME to make it shorter. 34 | for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi 35 | 36 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 37 | set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" 38 | 39 | @rem Find java.exe 40 | if defined JAVA_HOME goto findJavaFromJavaHome 41 | 42 | set JAVA_EXE=java.exe 43 | %JAVA_EXE% -version >NUL 2>&1 44 | if %ERRORLEVEL% equ 0 goto execute 45 | 46 | echo. 47 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 48 | echo. 49 | echo Please set the JAVA_HOME variable in your environment to match the 50 | echo location of your Java installation. 51 | 52 | goto fail 53 | 54 | :findJavaFromJavaHome 55 | set JAVA_HOME=%JAVA_HOME:"=% 56 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe 57 | 58 | if exist "%JAVA_EXE%" goto execute 59 | 60 | echo. 61 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 62 | echo. 63 | echo Please set the JAVA_HOME variable in your environment to match the 64 | echo location of your Java installation. 65 | 66 | goto fail 67 | 68 | :execute 69 | @rem Setup the command line 70 | 71 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar 72 | 73 | 74 | @rem Execute Gradle 75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* 76 | 77 | :end 78 | @rem End local scope for the variables with windows NT shell 79 | if %ERRORLEVEL% equ 0 goto mainEnd 80 | 81 | :fail 82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of 83 | rem the _cmd.exe /c_ return code! 84 | set EXIT_CODE=%ERRORLEVEL% 85 | if %EXIT_CODE% equ 0 set EXIT_CODE=1 86 | if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% 87 | exit /b %EXIT_CODE% 88 | 89 | :mainEnd 90 | if "%OS%"=="Windows_NT" endlocal 91 | 92 | :omega 93 | -------------------------------------------------------------------------------- /android/src/main/java/com/paqu/unityads/UnityAdsPlugin.java: -------------------------------------------------------------------------------- 1 | package com.paqu.unityads; 2 | 3 | import com.getcapacitor.JSObject; 4 | import com.getcapacitor.Plugin; 5 | import com.getcapacitor.PluginCall; 6 | import com.getcapacitor.PluginMethod; 7 | import com.getcapacitor.annotation.CapacitorPlugin; 8 | import com.unity3d.ads.IUnityAdsLoadListener; 9 | import com.unity3d.ads.UnityAds; 10 | import com.unity3d.ads.IUnityAdsInitializationListener; 11 | import com.unity3d.ads.IUnityAdsShowListener; 12 | 13 | @CapacitorPlugin(name = "UnityAds") 14 | public class UnityAdsPlugin extends Plugin { 15 | 16 | private String adUnitId; 17 | 18 | @PluginMethod 19 | public void initAds(PluginCall call) { 20 | IUnityAdsInitializationListener initListener = new IUnityAdsInitializationListener() { 21 | @Override 22 | public void onInitializationComplete() { 23 | notifyListeners("initialized", null); 24 | } 25 | 26 | @Override 27 | public void onInitializationFailed(UnityAds.UnityAdsInitializationError error, String message) { 28 | JSObject ret = new JSObject(); 29 | ret.put("error", message); 30 | notifyListeners("initializationError", ret); 31 | } 32 | }; 33 | 34 | UnityAds.initialize(this.getActivity().getApplicationContext(), call.getString("unityGameId"), Boolean.TRUE.equals(call.getBoolean("testMode")), initListener); 35 | call.resolve(); 36 | } 37 | 38 | @PluginMethod 39 | public void loadAds(PluginCall call) { 40 | IUnityAdsLoadListener loadListener = new IUnityAdsLoadListener() { 41 | @Override 42 | public void onUnityAdsAdLoaded(String placementId) { 43 | notifyListeners("adLoaded", null); 44 | } 45 | 46 | @Override 47 | public void onUnityAdsFailedToLoad(String placementId, UnityAds.UnityAdsLoadError error, String message) { 48 | JSObject ret = new JSObject(); 49 | ret.put("error", message); 50 | notifyListeners("adLoadError", ret); 51 | } 52 | }; 53 | 54 | adUnitId = call.getString("adUnitId"); 55 | 56 | UnityAds.load(adUnitId, loadListener); 57 | 58 | call.resolve(); 59 | } 60 | 61 | @PluginMethod 62 | public void displayAd(PluginCall call) { 63 | IUnityAdsShowListener showListener = new IUnityAdsShowListener() { 64 | @Override 65 | public void onUnityAdsShowFailure(String placementId, UnityAds.UnityAdsShowError error, String message) { 66 | JSObject ret = new JSObject(); 67 | ret.put("error", message); 68 | notifyListeners("adShowError", ret); 69 | } 70 | 71 | @Override 72 | public void onUnityAdsShowStart(String placementId) { 73 | notifyListeners("adShowStart", null); 74 | } 75 | 76 | @Override 77 | public void onUnityAdsShowClick(String placementId) { 78 | notifyListeners("adShowClick", null); 79 | } 80 | 81 | @Override 82 | public void onUnityAdsShowComplete(String placementId, UnityAds.UnityAdsShowCompletionState state) { 83 | JSObject ret = new JSObject(); 84 | ret.put("state", state); 85 | notifyListeners("adShown", ret); 86 | } 87 | }; 88 | 89 | UnityAds.show(getActivity(), adUnitId, showListener); 90 | call.resolve(); 91 | } 92 | } 93 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # capacitor-plugin-unityads 2 | 3 | Unity ADS Integration for Capacitor & Ionic Projects. 4 | 5 | ## ⚠ NOTE 6 | 7 | This plugin is in beta. Currently it only supports interstitial ads but rewarded ads and banner ads are planned. 8 | 9 | Also, IOS support is still under development. 10 | 11 | ## Install 12 | 13 | ```bash 14 | npm install @openanime/capacitor-plugin-unityads 15 | npx cap sync 16 | ``` 17 | 18 | ## Table of Contents 19 | 20 | - [capacitor-plugin-unityads](#capacitor-plugin-unityads) 21 | - [⚠ NOTE](#-note) 22 | - [Install](#install) 23 | - [Table of Contents](#table-of-contents) 24 | - [Basic Example with Svelte](#basic-example-with-svelte) 25 | - [API](#api) 26 | - [initAds(...)](#initads) 27 | - [loadAds(...)](#loadads) 28 | - [displayAd()](#displayad) 29 | - [Events](#events) 30 | 31 | ## Basic Example with Svelte 32 | 33 | ```html 34 | 92 | 93 |
94 | {#if ready} 95 | 96 | {:else} 97 |

not ready!

98 | {/if} 99 | 100 |

{message}

101 |
102 | ``` 103 | 104 | ## API 105 | 106 | ### initAds(...) 107 | 108 | ```typescript 109 | initAds(options: { unityGameId: string; testMode: boolean; }) => void 110 | ``` 111 | 112 | --- 113 | 114 | ### loadAds(...) 115 | 116 | ```typescript 117 | loadAds(options: { adUnitId: string; }) => void 118 | ``` 119 | 120 | --- 121 | 122 | ### displayAd() 123 | 124 | ```typescript 125 | displayAd() => void 126 | ``` 127 | 128 | --- 129 | 130 | ## Events 131 | 132 | | Event | Returns | Description | 133 | | --------------------- | -------------------- | -------------------------------------------- | 134 | | `initialized` | `null` | Fires when Unity SDK is initialized. | 135 | | `adLoaded` | `null` | Fires when AD is loaded. | 136 | | `adShowStart` | `null` | Fires when AD starts showing. | 137 | | `adShowClick` | `null` | Fires when user clicks the AD. | 138 | | `adShown` | `{ state: "SKIPPED" \| "COMPLETED"; }` | Fires when AD is completed or skipped. | 139 | | `initializationError` | `{ error: string; }` | Fires when error occurs in initialization. | 140 | | `adLoadError` | `{ error: string; }` | Fires when error occurs while loading an AD. | 141 | | `adShowError` | `{ error: string; }` | Fires when error occurs while showing an AD. | 142 | -------------------------------------------------------------------------------- /android/gradlew: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # 4 | # Copyright © 2015-2021 the original authors. 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # https://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | 19 | ############################################################################## 20 | # 21 | # Gradle start up script for POSIX generated by Gradle. 22 | # 23 | # Important for running: 24 | # 25 | # (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is 26 | # noncompliant, but you have some other compliant shell such as ksh or 27 | # bash, then to run this script, type that shell name before the whole 28 | # command line, like: 29 | # 30 | # ksh Gradle 31 | # 32 | # Busybox and similar reduced shells will NOT work, because this script 33 | # requires all of these POSIX shell features: 34 | # * functions; 35 | # * expansions «$var», «${var}», «${var:-default}», «${var+SET}», 36 | # «${var#prefix}», «${var%suffix}», and «$( cmd )»; 37 | # * compound commands having a testable exit status, especially «case»; 38 | # * various built-in commands including «command», «set», and «ulimit». 39 | # 40 | # Important for patching: 41 | # 42 | # (2) This script targets any POSIX shell, so it avoids extensions provided 43 | # by Bash, Ksh, etc; in particular arrays are avoided. 44 | # 45 | # The "traditional" practice of packing multiple parameters into a 46 | # space-separated string is a well documented source of bugs and security 47 | # problems, so this is (mostly) avoided, by progressively accumulating 48 | # options in "$@", and eventually passing that to Java. 49 | # 50 | # Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, 51 | # and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; 52 | # see the in-line comments for details. 53 | # 54 | # There are tweaks for specific operating systems such as AIX, CygWin, 55 | # Darwin, MinGW, and NonStop. 56 | # 57 | # (3) This script is generated from the Groovy template 58 | # https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt 59 | # within the Gradle project. 60 | # 61 | # You can find Gradle at https://github.com/gradle/gradle/. 62 | # 63 | ############################################################################## 64 | 65 | # Attempt to set APP_HOME 66 | 67 | # Resolve links: $0 may be a link 68 | app_path=$0 69 | 70 | # Need this for daisy-chained symlinks. 71 | while 72 | APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path 73 | [ -h "$app_path" ] 74 | do 75 | ls=$( ls -ld "$app_path" ) 76 | link=${ls#*' -> '} 77 | case $link in #( 78 | /*) app_path=$link ;; #( 79 | *) app_path=$APP_HOME$link ;; 80 | esac 81 | done 82 | 83 | # This is normally unused 84 | # shellcheck disable=SC2034 85 | APP_BASE_NAME=${0##*/} 86 | APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit 87 | 88 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 89 | DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' 90 | 91 | # Use the maximum available, or set MAX_FD != -1 to use that value. 92 | MAX_FD=maximum 93 | 94 | warn () { 95 | echo "$*" 96 | } >&2 97 | 98 | die () { 99 | echo 100 | echo "$*" 101 | echo 102 | exit 1 103 | } >&2 104 | 105 | # OS specific support (must be 'true' or 'false'). 106 | cygwin=false 107 | msys=false 108 | darwin=false 109 | nonstop=false 110 | case "$( uname )" in #( 111 | CYGWIN* ) cygwin=true ;; #( 112 | Darwin* ) darwin=true ;; #( 113 | MSYS* | MINGW* ) msys=true ;; #( 114 | NONSTOP* ) nonstop=true ;; 115 | esac 116 | 117 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar 118 | 119 | 120 | # Determine the Java command to use to start the JVM. 121 | if [ -n "$JAVA_HOME" ] ; then 122 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then 123 | # IBM's JDK on AIX uses strange locations for the executables 124 | JAVACMD=$JAVA_HOME/jre/sh/java 125 | else 126 | JAVACMD=$JAVA_HOME/bin/java 127 | fi 128 | if [ ! -x "$JAVACMD" ] ; then 129 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME 130 | 131 | Please set the JAVA_HOME variable in your environment to match the 132 | location of your Java installation." 133 | fi 134 | else 135 | JAVACMD=java 136 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 137 | 138 | Please set the JAVA_HOME variable in your environment to match the 139 | location of your Java installation." 140 | fi 141 | 142 | # Increase the maximum file descriptors if we can. 143 | if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then 144 | case $MAX_FD in #( 145 | max*) 146 | # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. 147 | # shellcheck disable=SC3045 148 | MAX_FD=$( ulimit -H -n ) || 149 | warn "Could not query maximum file descriptor limit" 150 | esac 151 | case $MAX_FD in #( 152 | '' | soft) :;; #( 153 | *) 154 | # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. 155 | # shellcheck disable=SC3045 156 | ulimit -n "$MAX_FD" || 157 | warn "Could not set maximum file descriptor limit to $MAX_FD" 158 | esac 159 | fi 160 | 161 | # Collect all arguments for the java command, stacking in reverse order: 162 | # * args from the command line 163 | # * the main class name 164 | # * -classpath 165 | # * -D...appname settings 166 | # * --module-path (only if needed) 167 | # * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. 168 | 169 | # For Cygwin or MSYS, switch paths to Windows format before running java 170 | if "$cygwin" || "$msys" ; then 171 | APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) 172 | CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) 173 | 174 | JAVACMD=$( cygpath --unix "$JAVACMD" ) 175 | 176 | # Now convert the arguments - kludge to limit ourselves to /bin/sh 177 | for arg do 178 | if 179 | case $arg in #( 180 | -*) false ;; # don't mess with options #( 181 | /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath 182 | [ -e "$t" ] ;; #( 183 | *) false ;; 184 | esac 185 | then 186 | arg=$( cygpath --path --ignore --mixed "$arg" ) 187 | fi 188 | # Roll the args list around exactly as many times as the number of 189 | # args, so each arg winds up back in the position where it started, but 190 | # possibly modified. 191 | # 192 | # NB: a `for` loop captures its iteration list before it begins, so 193 | # changing the positional parameters here affects neither the number of 194 | # iterations, nor the values presented in `arg`. 195 | shift # remove old arg 196 | set -- "$@" "$arg" # push replacement arg 197 | done 198 | fi 199 | 200 | # Collect all arguments for the java command; 201 | # * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of 202 | # shell script including quotes and variable substitutions, so put them in 203 | # double quotes to make sure that they get re-expanded; and 204 | # * put everything else in single quotes, so that it's not re-expanded. 205 | 206 | set -- \ 207 | "-Dorg.gradle.appname=$APP_BASE_NAME" \ 208 | -classpath "$CLASSPATH" \ 209 | org.gradle.wrapper.GradleWrapperMain \ 210 | "$@" 211 | 212 | # Stop when "xargs" is not available. 213 | if ! command -v xargs >/dev/null 2>&1 214 | then 215 | die "xargs is not available" 216 | fi 217 | 218 | # Use "xargs" to parse quoted args. 219 | # 220 | # With -n1 it outputs one arg per line, with the quotes and backslashes removed. 221 | # 222 | # In Bash we could simply go: 223 | # 224 | # readarray ARGS < <( xargs -n1 <<<"$var" ) && 225 | # set -- "${ARGS[@]}" "$@" 226 | # 227 | # but POSIX shell has neither arrays nor command substitution, so instead we 228 | # post-process each arg (as a line of input to sed) to backslash-escape any 229 | # character that might be a shell metacharacter, then use eval to reverse 230 | # that process (while maintaining the separation between arguments), and wrap 231 | # the whole thing up as a single "set" statement. 232 | # 233 | # This will of course break if any of these variables contains a newline or 234 | # an unmatched quote. 235 | # 236 | 237 | eval "set -- $( 238 | printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | 239 | xargs -n1 | 240 | sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | 241 | tr '\n' ' ' 242 | )" '"$@"' 243 | 244 | exec "$JAVACMD" "$@" 245 | -------------------------------------------------------------------------------- /ios/Plugin.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 48; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 03FC29A292ACC40490383A1F /* Pods_Plugin.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3B2A61DA5A1F2DD4F959604D /* Pods_Plugin.framework */; }; 11 | 20C0B05DCFC8E3958A738AF2 /* Pods_PluginTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F6753A823D3815DB436415E3 /* Pods_PluginTests.framework */; }; 12 | 2F98D68224C9AAE500613A4C /* UnityAds.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F98D68124C9AAE400613A4C /* UnityAds.swift */; }; 13 | 50ADFF92201F53D600D50D53 /* Plugin.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50ADFF88201F53D600D50D53 /* Plugin.framework */; }; 14 | 50ADFF97201F53D600D50D53 /* UnityAdsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50ADFF96201F53D600D50D53 /* UnityAdsTests.swift */; }; 15 | 50ADFF99201F53D600D50D53 /* UnityAdsPlugin.h in Headers */ = {isa = PBXBuildFile; fileRef = 50ADFF8B201F53D600D50D53 /* UnityAdsPlugin.h */; settings = {ATTRIBUTES = (Public, ); }; }; 16 | 50ADFFA42020D75100D50D53 /* Capacitor.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50ADFFA52020D75100D50D53 /* Capacitor.framework */; }; 17 | 50ADFFA82020EE4F00D50D53 /* UnityAdsPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 50ADFFA72020EE4F00D50D53 /* UnityAdsPlugin.m */; }; 18 | 50E1A94820377CB70090CE1A /* UnityAdsPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50E1A94720377CB70090CE1A /* UnityAdsPlugin.swift */; }; 19 | /* End PBXBuildFile section */ 20 | 21 | /* Begin PBXContainerItemProxy section */ 22 | 50ADFF93201F53D600D50D53 /* PBXContainerItemProxy */ = { 23 | isa = PBXContainerItemProxy; 24 | containerPortal = 50ADFF7F201F53D600D50D53 /* Project object */; 25 | proxyType = 1; 26 | remoteGlobalIDString = 50ADFF87201F53D600D50D53; 27 | remoteInfo = Plugin; 28 | }; 29 | /* End PBXContainerItemProxy section */ 30 | 31 | /* Begin PBXFileReference section */ 32 | 2F98D68124C9AAE400613A4C /* UnityAds.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UnityAds.swift; sourceTree = ""; }; 33 | 3B2A61DA5A1F2DD4F959604D /* Pods_Plugin.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Plugin.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 34 | 50ADFF88201F53D600D50D53 /* Plugin.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Plugin.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 35 | 50ADFF8B201F53D600D50D53 /* UnityAdsPlugin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UnityAdsPlugin.h; sourceTree = ""; }; 36 | 50ADFF8C201F53D600D50D53 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 37 | 50ADFF91201F53D600D50D53 /* PluginTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PluginTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 38 | 50ADFF96201F53D600D50D53 /* UnityAdsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnityAdsTests.swift; sourceTree = ""; }; 39 | 50ADFF98201F53D600D50D53 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 40 | 50ADFFA52020D75100D50D53 /* Capacitor.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Capacitor.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 41 | 50ADFFA72020EE4F00D50D53 /* UnityAdsPlugin.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UnityAdsPlugin.m; sourceTree = ""; }; 42 | 50E1A94720377CB70090CE1A /* UnityAdsPlugin.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UnityAdsPlugin.swift; sourceTree = ""; }; 43 | 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 = ""; }; 44 | 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 = ""; }; 45 | 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 = ""; }; 46 | 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 = ""; }; 47 | F6753A823D3815DB436415E3 /* Pods_PluginTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_PluginTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 48 | /* End PBXFileReference section */ 49 | 50 | /* Begin PBXFrameworksBuildPhase section */ 51 | 50ADFF84201F53D600D50D53 /* Frameworks */ = { 52 | isa = PBXFrameworksBuildPhase; 53 | buildActionMask = 2147483647; 54 | files = ( 55 | 50ADFFA42020D75100D50D53 /* Capacitor.framework in Frameworks */, 56 | 03FC29A292ACC40490383A1F /* Pods_Plugin.framework in Frameworks */, 57 | ); 58 | runOnlyForDeploymentPostprocessing = 0; 59 | }; 60 | 50ADFF8E201F53D600D50D53 /* Frameworks */ = { 61 | isa = PBXFrameworksBuildPhase; 62 | buildActionMask = 2147483647; 63 | files = ( 64 | 50ADFF92201F53D600D50D53 /* Plugin.framework in Frameworks */, 65 | 20C0B05DCFC8E3958A738AF2 /* Pods_PluginTests.framework in Frameworks */, 66 | ); 67 | runOnlyForDeploymentPostprocessing = 0; 68 | }; 69 | /* End PBXFrameworksBuildPhase section */ 70 | 71 | /* Begin PBXGroup section */ 72 | 50ADFF7E201F53D600D50D53 = { 73 | isa = PBXGroup; 74 | children = ( 75 | 50ADFF8A201F53D600D50D53 /* Plugin */, 76 | 50ADFF95201F53D600D50D53 /* PluginTests */, 77 | 50ADFF89201F53D600D50D53 /* Products */, 78 | 8C8E7744173064A9F6D438E3 /* Pods */, 79 | A797B9EFA3DCEFEA1FBB66A9 /* Frameworks */, 80 | ); 81 | sourceTree = ""; 82 | }; 83 | 50ADFF89201F53D600D50D53 /* Products */ = { 84 | isa = PBXGroup; 85 | children = ( 86 | 50ADFF88201F53D600D50D53 /* Plugin.framework */, 87 | 50ADFF91201F53D600D50D53 /* PluginTests.xctest */, 88 | ); 89 | name = Products; 90 | sourceTree = ""; 91 | }; 92 | 50ADFF8A201F53D600D50D53 /* Plugin */ = { 93 | isa = PBXGroup; 94 | children = ( 95 | 50E1A94720377CB70090CE1A /* UnityAdsPlugin.swift */, 96 | 2F98D68124C9AAE400613A4C /* UnityAds.swift */, 97 | 50ADFF8B201F53D600D50D53 /* UnityAdsPlugin.h */, 98 | 50ADFFA72020EE4F00D50D53 /* UnityAdsPlugin.m */, 99 | 50ADFF8C201F53D600D50D53 /* Info.plist */, 100 | ); 101 | path = Plugin; 102 | sourceTree = ""; 103 | }; 104 | 50ADFF95201F53D600D50D53 /* PluginTests */ = { 105 | isa = PBXGroup; 106 | children = ( 107 | 50ADFF96201F53D600D50D53 /* UnityAdsTests.swift */, 108 | 50ADFF98201F53D600D50D53 /* Info.plist */, 109 | ); 110 | path = PluginTests; 111 | sourceTree = ""; 112 | }; 113 | 8C8E7744173064A9F6D438E3 /* Pods */ = { 114 | isa = PBXGroup; 115 | children = ( 116 | 5E23F77F099397094342571A /* Pods-Plugin.debug.xcconfig */, 117 | 91781294A431A2A7CC6EB714 /* Pods-Plugin.release.xcconfig */, 118 | 96ED1B6440D6672E406C8D19 /* Pods-PluginTests.debug.xcconfig */, 119 | F65BB2953ECE002E1EF3E424 /* Pods-PluginTests.release.xcconfig */, 120 | ); 121 | name = Pods; 122 | sourceTree = ""; 123 | }; 124 | A797B9EFA3DCEFEA1FBB66A9 /* Frameworks */ = { 125 | isa = PBXGroup; 126 | children = ( 127 | 50ADFFA52020D75100D50D53 /* Capacitor.framework */, 128 | 3B2A61DA5A1F2DD4F959604D /* Pods_Plugin.framework */, 129 | F6753A823D3815DB436415E3 /* Pods_PluginTests.framework */, 130 | ); 131 | name = Frameworks; 132 | sourceTree = ""; 133 | }; 134 | /* End PBXGroup section */ 135 | 136 | /* Begin PBXHeadersBuildPhase section */ 137 | 50ADFF85201F53D600D50D53 /* Headers */ = { 138 | isa = PBXHeadersBuildPhase; 139 | buildActionMask = 2147483647; 140 | files = ( 141 | 50ADFF99201F53D600D50D53 /* UnityAdsPlugin.h in Headers */, 142 | ); 143 | runOnlyForDeploymentPostprocessing = 0; 144 | }; 145 | /* End PBXHeadersBuildPhase section */ 146 | 147 | /* Begin PBXNativeTarget section */ 148 | 50ADFF87201F53D600D50D53 /* Plugin */ = { 149 | isa = PBXNativeTarget; 150 | buildConfigurationList = 50ADFF9C201F53D600D50D53 /* Build configuration list for PBXNativeTarget "Plugin" */; 151 | buildPhases = ( 152 | AB5B3E54B4E897F32C2279DA /* [CP] Check Pods Manifest.lock */, 153 | 50ADFF83201F53D600D50D53 /* Sources */, 154 | 50ADFF84201F53D600D50D53 /* Frameworks */, 155 | 50ADFF85201F53D600D50D53 /* Headers */, 156 | 50ADFF86201F53D600D50D53 /* Resources */, 157 | ); 158 | buildRules = ( 159 | ); 160 | dependencies = ( 161 | ); 162 | name = Plugin; 163 | productName = Plugin; 164 | productReference = 50ADFF88201F53D600D50D53 /* Plugin.framework */; 165 | productType = "com.apple.product-type.framework"; 166 | }; 167 | 50ADFF90201F53D600D50D53 /* PluginTests */ = { 168 | isa = PBXNativeTarget; 169 | buildConfigurationList = 50ADFF9F201F53D600D50D53 /* Build configuration list for PBXNativeTarget "PluginTests" */; 170 | buildPhases = ( 171 | 0596884F929ED6F1DE134961 /* [CP] Check Pods Manifest.lock */, 172 | 50ADFF8D201F53D600D50D53 /* Sources */, 173 | 50ADFF8E201F53D600D50D53 /* Frameworks */, 174 | 50ADFF8F201F53D600D50D53 /* Resources */, 175 | 8E97F58B69A94C6503FC9C85 /* [CP] Embed Pods Frameworks */, 176 | ); 177 | buildRules = ( 178 | ); 179 | dependencies = ( 180 | 50ADFF94201F53D600D50D53 /* PBXTargetDependency */, 181 | ); 182 | name = PluginTests; 183 | productName = PluginTests; 184 | productReference = 50ADFF91201F53D600D50D53 /* PluginTests.xctest */; 185 | productType = "com.apple.product-type.bundle.unit-test"; 186 | }; 187 | /* End PBXNativeTarget section */ 188 | 189 | /* Begin PBXProject section */ 190 | 50ADFF7F201F53D600D50D53 /* Project object */ = { 191 | isa = PBXProject; 192 | attributes = { 193 | LastSwiftUpdateCheck = 0920; 194 | LastUpgradeCheck = 1160; 195 | ORGANIZATIONNAME = "Max Lynch"; 196 | TargetAttributes = { 197 | 50ADFF87201F53D600D50D53 = { 198 | CreatedOnToolsVersion = 9.2; 199 | LastSwiftMigration = 1100; 200 | ProvisioningStyle = Automatic; 201 | }; 202 | 50ADFF90201F53D600D50D53 = { 203 | CreatedOnToolsVersion = 9.2; 204 | LastSwiftMigration = 1100; 205 | ProvisioningStyle = Automatic; 206 | }; 207 | }; 208 | }; 209 | buildConfigurationList = 50ADFF82201F53D600D50D53 /* Build configuration list for PBXProject "Plugin" */; 210 | compatibilityVersion = "Xcode 8.0"; 211 | developmentRegion = en; 212 | hasScannedForEncodings = 0; 213 | knownRegions = ( 214 | en, 215 | Base, 216 | ); 217 | mainGroup = 50ADFF7E201F53D600D50D53; 218 | productRefGroup = 50ADFF89201F53D600D50D53 /* Products */; 219 | projectDirPath = ""; 220 | projectRoot = ""; 221 | targets = ( 222 | 50ADFF87201F53D600D50D53 /* Plugin */, 223 | 50ADFF90201F53D600D50D53 /* PluginTests */, 224 | ); 225 | }; 226 | /* End PBXProject section */ 227 | 228 | /* Begin PBXResourcesBuildPhase section */ 229 | 50ADFF86201F53D600D50D53 /* Resources */ = { 230 | isa = PBXResourcesBuildPhase; 231 | buildActionMask = 2147483647; 232 | files = ( 233 | ); 234 | runOnlyForDeploymentPostprocessing = 0; 235 | }; 236 | 50ADFF8F201F53D600D50D53 /* Resources */ = { 237 | isa = PBXResourcesBuildPhase; 238 | buildActionMask = 2147483647; 239 | files = ( 240 | ); 241 | runOnlyForDeploymentPostprocessing = 0; 242 | }; 243 | /* End PBXResourcesBuildPhase section */ 244 | 245 | /* Begin PBXShellScriptBuildPhase section */ 246 | 0596884F929ED6F1DE134961 /* [CP] Check Pods Manifest.lock */ = { 247 | isa = PBXShellScriptBuildPhase; 248 | buildActionMask = 2147483647; 249 | files = ( 250 | ); 251 | inputPaths = ( 252 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock", 253 | "${PODS_ROOT}/Manifest.lock", 254 | ); 255 | name = "[CP] Check Pods Manifest.lock"; 256 | outputPaths = ( 257 | "$(DERIVED_FILE_DIR)/Pods-PluginTests-checkManifestLockResult.txt", 258 | ); 259 | runOnlyForDeploymentPostprocessing = 0; 260 | shellPath = /bin/sh; 261 | 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"; 262 | showEnvVarsInLog = 0; 263 | }; 264 | 8E97F58B69A94C6503FC9C85 /* [CP] Embed Pods Frameworks */ = { 265 | isa = PBXShellScriptBuildPhase; 266 | buildActionMask = 2147483647; 267 | files = ( 268 | ); 269 | inputPaths = ( 270 | "${PODS_ROOT}/Target Support Files/Pods-PluginTests/Pods-PluginTests-frameworks.sh", 271 | "${BUILT_PRODUCTS_DIR}/Capacitor/Capacitor.framework", 272 | "${BUILT_PRODUCTS_DIR}/CapacitorCordova/Cordova.framework", 273 | ); 274 | name = "[CP] Embed Pods Frameworks"; 275 | outputPaths = ( 276 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Capacitor.framework", 277 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Cordova.framework", 278 | ); 279 | runOnlyForDeploymentPostprocessing = 0; 280 | shellPath = /bin/sh; 281 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-PluginTests/Pods-PluginTests-frameworks.sh\"\n"; 282 | showEnvVarsInLog = 0; 283 | }; 284 | AB5B3E54B4E897F32C2279DA /* [CP] Check Pods Manifest.lock */ = { 285 | isa = PBXShellScriptBuildPhase; 286 | buildActionMask = 2147483647; 287 | files = ( 288 | ); 289 | inputPaths = ( 290 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock", 291 | "${PODS_ROOT}/Manifest.lock", 292 | ); 293 | name = "[CP] Check Pods Manifest.lock"; 294 | outputPaths = ( 295 | "$(DERIVED_FILE_DIR)/Pods-Plugin-checkManifestLockResult.txt", 296 | ); 297 | runOnlyForDeploymentPostprocessing = 0; 298 | shellPath = /bin/sh; 299 | 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"; 300 | showEnvVarsInLog = 0; 301 | }; 302 | /* End PBXShellScriptBuildPhase section */ 303 | 304 | /* Begin PBXSourcesBuildPhase section */ 305 | 50ADFF83201F53D600D50D53 /* Sources */ = { 306 | isa = PBXSourcesBuildPhase; 307 | buildActionMask = 2147483647; 308 | files = ( 309 | 50E1A94820377CB70090CE1A /* UnityAdsPlugin.swift in Sources */, 310 | 2F98D68224C9AAE500613A4C /* UnityAds.swift in Sources */, 311 | 50ADFFA82020EE4F00D50D53 /* UnityAdsPlugin.m in Sources */, 312 | ); 313 | runOnlyForDeploymentPostprocessing = 0; 314 | }; 315 | 50ADFF8D201F53D600D50D53 /* Sources */ = { 316 | isa = PBXSourcesBuildPhase; 317 | buildActionMask = 2147483647; 318 | files = ( 319 | 50ADFF97201F53D600D50D53 /* UnityAdsTests.swift in Sources */, 320 | ); 321 | runOnlyForDeploymentPostprocessing = 0; 322 | }; 323 | /* End PBXSourcesBuildPhase section */ 324 | 325 | /* Begin PBXTargetDependency section */ 326 | 50ADFF94201F53D600D50D53 /* PBXTargetDependency */ = { 327 | isa = PBXTargetDependency; 328 | target = 50ADFF87201F53D600D50D53 /* Plugin */; 329 | targetProxy = 50ADFF93201F53D600D50D53 /* PBXContainerItemProxy */; 330 | }; 331 | /* End PBXTargetDependency section */ 332 | 333 | /* Begin XCBuildConfiguration section */ 334 | 50ADFF9A201F53D600D50D53 /* Debug */ = { 335 | isa = XCBuildConfiguration; 336 | buildSettings = { 337 | ALWAYS_SEARCH_USER_PATHS = NO; 338 | CLANG_ANALYZER_NONNULL = YES; 339 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; 340 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; 341 | CLANG_CXX_LIBRARY = "libc++"; 342 | CLANG_ENABLE_MODULES = YES; 343 | CLANG_ENABLE_OBJC_ARC = YES; 344 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 345 | CLANG_WARN_BOOL_CONVERSION = YES; 346 | CLANG_WARN_COMMA = YES; 347 | CLANG_WARN_CONSTANT_CONVERSION = YES; 348 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 349 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 350 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 351 | CLANG_WARN_EMPTY_BODY = YES; 352 | CLANG_WARN_ENUM_CONVERSION = YES; 353 | CLANG_WARN_INFINITE_RECURSION = YES; 354 | CLANG_WARN_INT_CONVERSION = YES; 355 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 356 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 357 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 358 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 359 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 360 | CLANG_WARN_STRICT_PROTOTYPES = YES; 361 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 362 | CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; 363 | CLANG_WARN_UNREACHABLE_CODE = YES; 364 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 365 | CODE_SIGN_IDENTITY = "iPhone Developer"; 366 | COPY_PHASE_STRIP = NO; 367 | CURRENT_PROJECT_VERSION = 1; 368 | DEBUG_INFORMATION_FORMAT = dwarf; 369 | ENABLE_STRICT_OBJC_MSGSEND = YES; 370 | ENABLE_TESTABILITY = YES; 371 | FRAMEWORK_SEARCH_PATHS = ( 372 | "\"${BUILT_PRODUCTS_DIR}/Capacitor\"", 373 | "\"${BUILT_PRODUCTS_DIR}/CapacitorCordova\"", 374 | ); 375 | GCC_C_LANGUAGE_STANDARD = gnu11; 376 | GCC_DYNAMIC_NO_PIC = NO; 377 | GCC_NO_COMMON_BLOCKS = YES; 378 | GCC_OPTIMIZATION_LEVEL = 0; 379 | GCC_PREPROCESSOR_DEFINITIONS = ( 380 | "DEBUG=1", 381 | "$(inherited)", 382 | ); 383 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 384 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 385 | GCC_WARN_UNDECLARED_SELECTOR = YES; 386 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 387 | GCC_WARN_UNUSED_FUNCTION = YES; 388 | GCC_WARN_UNUSED_VARIABLE = YES; 389 | IPHONEOS_DEPLOYMENT_TARGET = 13.0; 390 | MTL_ENABLE_DEBUG_INFO = YES; 391 | ONLY_ACTIVE_ARCH = YES; 392 | SDKROOT = iphoneos; 393 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; 394 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 395 | VERSIONING_SYSTEM = "apple-generic"; 396 | VERSION_INFO_PREFIX = ""; 397 | }; 398 | name = Debug; 399 | }; 400 | 50ADFF9B201F53D600D50D53 /* Release */ = { 401 | isa = XCBuildConfiguration; 402 | buildSettings = { 403 | ALWAYS_SEARCH_USER_PATHS = NO; 404 | CLANG_ANALYZER_NONNULL = YES; 405 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; 406 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; 407 | CLANG_CXX_LIBRARY = "libc++"; 408 | CLANG_ENABLE_MODULES = YES; 409 | CLANG_ENABLE_OBJC_ARC = YES; 410 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 411 | CLANG_WARN_BOOL_CONVERSION = YES; 412 | CLANG_WARN_COMMA = YES; 413 | CLANG_WARN_CONSTANT_CONVERSION = YES; 414 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 415 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 416 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 417 | CLANG_WARN_EMPTY_BODY = YES; 418 | CLANG_WARN_ENUM_CONVERSION = YES; 419 | CLANG_WARN_INFINITE_RECURSION = YES; 420 | CLANG_WARN_INT_CONVERSION = YES; 421 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 422 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 423 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 424 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 425 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 426 | CLANG_WARN_STRICT_PROTOTYPES = YES; 427 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 428 | CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; 429 | CLANG_WARN_UNREACHABLE_CODE = YES; 430 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 431 | CODE_SIGN_IDENTITY = "iPhone Developer"; 432 | COPY_PHASE_STRIP = NO; 433 | CURRENT_PROJECT_VERSION = 1; 434 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 435 | ENABLE_NS_ASSERTIONS = NO; 436 | ENABLE_STRICT_OBJC_MSGSEND = YES; 437 | FRAMEWORK_SEARCH_PATHS = ( 438 | "\"${BUILT_PRODUCTS_DIR}/Capacitor\"", 439 | "\"${BUILT_PRODUCTS_DIR}/CapacitorCordova\"", 440 | ); 441 | GCC_C_LANGUAGE_STANDARD = gnu11; 442 | GCC_NO_COMMON_BLOCKS = YES; 443 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 444 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 445 | GCC_WARN_UNDECLARED_SELECTOR = YES; 446 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 447 | GCC_WARN_UNUSED_FUNCTION = YES; 448 | GCC_WARN_UNUSED_VARIABLE = YES; 449 | IPHONEOS_DEPLOYMENT_TARGET = 13.0; 450 | MTL_ENABLE_DEBUG_INFO = NO; 451 | SDKROOT = iphoneos; 452 | SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; 453 | VALIDATE_PRODUCT = YES; 454 | VERSIONING_SYSTEM = "apple-generic"; 455 | VERSION_INFO_PREFIX = ""; 456 | }; 457 | name = Release; 458 | }; 459 | 50ADFF9D201F53D600D50D53 /* Debug */ = { 460 | isa = XCBuildConfiguration; 461 | baseConfigurationReference = 5E23F77F099397094342571A /* Pods-Plugin.debug.xcconfig */; 462 | buildSettings = { 463 | CLANG_ENABLE_MODULES = YES; 464 | CODE_SIGN_IDENTITY = ""; 465 | CODE_SIGN_STYLE = Automatic; 466 | DEFINES_MODULE = YES; 467 | DYLIB_COMPATIBILITY_VERSION = 1; 468 | DYLIB_CURRENT_VERSION = 1; 469 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 470 | INFOPLIST_FILE = Plugin/Info.plist; 471 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 472 | IPHONEOS_DEPLOYMENT_TARGET = 13.0; 473 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks $(FRAMEWORK_SEARCH_PATHS)\n$(FRAMEWORK_SEARCH_PATHS)\n$(FRAMEWORK_SEARCH_PATHS)"; 474 | ONLY_ACTIVE_ARCH = YES; 475 | PRODUCT_BUNDLE_IDENTIFIER = com.getcapacitor.Plugin; 476 | PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; 477 | SKIP_INSTALL = YES; 478 | SUPPORTS_MACCATALYST = NO; 479 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 480 | SWIFT_VERSION = 5.0; 481 | TARGETED_DEVICE_FAMILY = "1,2"; 482 | }; 483 | name = Debug; 484 | }; 485 | 50ADFF9E201F53D600D50D53 /* Release */ = { 486 | isa = XCBuildConfiguration; 487 | baseConfigurationReference = 91781294A431A2A7CC6EB714 /* Pods-Plugin.release.xcconfig */; 488 | buildSettings = { 489 | CLANG_ENABLE_MODULES = YES; 490 | CODE_SIGN_IDENTITY = ""; 491 | CODE_SIGN_STYLE = Automatic; 492 | DEFINES_MODULE = YES; 493 | DYLIB_COMPATIBILITY_VERSION = 1; 494 | DYLIB_CURRENT_VERSION = 1; 495 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 496 | INFOPLIST_FILE = Plugin/Info.plist; 497 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 498 | IPHONEOS_DEPLOYMENT_TARGET = 13.0; 499 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks $(FRAMEWORK_SEARCH_PATHS)"; 500 | ONLY_ACTIVE_ARCH = NO; 501 | PRODUCT_BUNDLE_IDENTIFIER = com.getcapacitor.Plugin; 502 | PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; 503 | SKIP_INSTALL = YES; 504 | SUPPORTS_MACCATALYST = NO; 505 | SWIFT_VERSION = 5.0; 506 | TARGETED_DEVICE_FAMILY = "1,2"; 507 | }; 508 | name = Release; 509 | }; 510 | 50ADFFA0201F53D600D50D53 /* Debug */ = { 511 | isa = XCBuildConfiguration; 512 | baseConfigurationReference = 96ED1B6440D6672E406C8D19 /* Pods-PluginTests.debug.xcconfig */; 513 | buildSettings = { 514 | CODE_SIGN_STYLE = Automatic; 515 | INFOPLIST_FILE = PluginTests/Info.plist; 516 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 517 | PRODUCT_BUNDLE_IDENTIFIER = com.getcapacitor.PluginTests; 518 | PRODUCT_NAME = "$(TARGET_NAME)"; 519 | SWIFT_VERSION = 5.0; 520 | TARGETED_DEVICE_FAMILY = "1,2"; 521 | }; 522 | name = Debug; 523 | }; 524 | 50ADFFA1201F53D600D50D53 /* Release */ = { 525 | isa = XCBuildConfiguration; 526 | baseConfigurationReference = F65BB2953ECE002E1EF3E424 /* Pods-PluginTests.release.xcconfig */; 527 | buildSettings = { 528 | CODE_SIGN_STYLE = Automatic; 529 | INFOPLIST_FILE = PluginTests/Info.plist; 530 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 531 | PRODUCT_BUNDLE_IDENTIFIER = com.getcapacitor.PluginTests; 532 | PRODUCT_NAME = "$(TARGET_NAME)"; 533 | SWIFT_VERSION = 5.0; 534 | TARGETED_DEVICE_FAMILY = "1,2"; 535 | }; 536 | name = Release; 537 | }; 538 | /* End XCBuildConfiguration section */ 539 | 540 | /* Begin XCConfigurationList section */ 541 | 50ADFF82201F53D600D50D53 /* Build configuration list for PBXProject "Plugin" */ = { 542 | isa = XCConfigurationList; 543 | buildConfigurations = ( 544 | 50ADFF9A201F53D600D50D53 /* Debug */, 545 | 50ADFF9B201F53D600D50D53 /* Release */, 546 | ); 547 | defaultConfigurationIsVisible = 0; 548 | defaultConfigurationName = Release; 549 | }; 550 | 50ADFF9C201F53D600D50D53 /* Build configuration list for PBXNativeTarget "Plugin" */ = { 551 | isa = XCConfigurationList; 552 | buildConfigurations = ( 553 | 50ADFF9D201F53D600D50D53 /* Debug */, 554 | 50ADFF9E201F53D600D50D53 /* Release */, 555 | ); 556 | defaultConfigurationIsVisible = 0; 557 | defaultConfigurationName = Release; 558 | }; 559 | 50ADFF9F201F53D600D50D53 /* Build configuration list for PBXNativeTarget "PluginTests" */ = { 560 | isa = XCConfigurationList; 561 | buildConfigurations = ( 562 | 50ADFFA0201F53D600D50D53 /* Debug */, 563 | 50ADFFA1201F53D600D50D53 /* Release */, 564 | ); 565 | defaultConfigurationIsVisible = 0; 566 | defaultConfigurationName = Release; 567 | }; 568 | /* End XCConfigurationList section */ 569 | }; 570 | rootObject = 50ADFF7F201F53D600D50D53 /* Project object */; 571 | } 572 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | devDependencies: 8 | '@capacitor/android': 9 | specifier: ^5.0.0 10 | version: 5.5.0(@capacitor/core@5.5.0) 11 | '@capacitor/core': 12 | specifier: ^5.0.0 13 | version: 5.5.0 14 | '@capacitor/docgen': 15 | specifier: ^0.0.18 16 | version: 0.0.18 17 | '@capacitor/ios': 18 | specifier: ^5.0.0 19 | version: 5.5.0(@capacitor/core@5.5.0) 20 | '@ionic/eslint-config': 21 | specifier: ^0.3.0 22 | version: 0.3.0(eslint@7.32.0)(typescript@4.1.6) 23 | '@ionic/prettier-config': 24 | specifier: ^1.0.1 25 | version: 1.0.1(prettier@2.3.2) 26 | '@ionic/swiftlint-config': 27 | specifier: ^1.1.2 28 | version: 1.1.2 29 | eslint: 30 | specifier: ^7.11.0 31 | version: 7.32.0 32 | prettier: 33 | specifier: ~2.3.0 34 | version: 2.3.2 35 | prettier-plugin-java: 36 | specifier: ~1.0.2 37 | version: 1.0.2 38 | rimraf: 39 | specifier: ^3.0.2 40 | version: 3.0.2 41 | rollup: 42 | specifier: ^2.32.0 43 | version: 2.79.1 44 | swiftlint: 45 | specifier: ^1.0.1 46 | version: 1.0.2 47 | typescript: 48 | specifier: ~4.1.5 49 | version: 4.1.6 50 | 51 | packages: 52 | 53 | /@aashutoshrathi/word-wrap@1.2.6: 54 | resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} 55 | engines: {node: '>=0.10.0'} 56 | dev: true 57 | 58 | /@babel/code-frame@7.12.11: 59 | resolution: {integrity: sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==} 60 | dependencies: 61 | '@babel/highlight': 7.22.20 62 | dev: true 63 | 64 | /@babel/code-frame@7.22.13: 65 | resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} 66 | engines: {node: '>=6.9.0'} 67 | dependencies: 68 | '@babel/highlight': 7.22.20 69 | chalk: 2.4.2 70 | dev: true 71 | 72 | /@babel/helper-validator-identifier@7.22.20: 73 | resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} 74 | engines: {node: '>=6.9.0'} 75 | dev: true 76 | 77 | /@babel/highlight@7.22.20: 78 | resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} 79 | engines: {node: '>=6.9.0'} 80 | dependencies: 81 | '@babel/helper-validator-identifier': 7.22.20 82 | chalk: 2.4.2 83 | js-tokens: 4.0.0 84 | dev: true 85 | 86 | /@capacitor/android@5.5.0(@capacitor/core@5.5.0): 87 | resolution: {integrity: sha512-ipJijb3M0FA6DvotS9zrbJ8p/mTEVg9EVtBmvUexogm8g5se1mc7i1gvOr3MQ/iTZ3PnNrRC/P7kHxa2R55iqg==} 88 | peerDependencies: 89 | '@capacitor/core': ^5.5.0 90 | dependencies: 91 | '@capacitor/core': 5.5.0 92 | dev: true 93 | 94 | /@capacitor/core@5.5.0: 95 | resolution: {integrity: sha512-w59io0ctwnb7JRng7yO2H0YLHG8uz7XARUugRfp5aYTNiG55FqdSmSMOOqGCMPRg4sEnKjJTvAa4ImCYh3Kk1w==} 96 | dependencies: 97 | tslib: 2.6.2 98 | dev: true 99 | 100 | /@capacitor/docgen@0.0.18: 101 | resolution: {integrity: sha512-BVqzrbSi9u5IaKRLlG0H/ZW8M23FDJpH2018RTGVHRn2Yk3na9jOcItBc3r+rYiwgRgAHylNw9Lt7+lWmJBD3Q==} 102 | engines: {node: '>=14.5.0'} 103 | hasBin: true 104 | dependencies: 105 | '@types/node': 14.18.63 106 | colorette: 1.4.0 107 | github-slugger: 1.5.0 108 | minimist: 1.2.8 109 | typescript: 4.2.4 110 | dev: true 111 | 112 | /@capacitor/ios@5.5.0(@capacitor/core@5.5.0): 113 | resolution: {integrity: sha512-kApjblUOlLY91+1OrWIx+vaVfEN1bl1kh1jSgK1/IdGfS9kFs1hxUE/okRoLJGT6tYeSOa6GA/19MLOs64wb6A==} 114 | peerDependencies: 115 | '@capacitor/core': ^5.5.0 116 | dependencies: 117 | '@capacitor/core': 5.5.0 118 | dev: true 119 | 120 | /@eslint/eslintrc@0.4.3: 121 | resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==} 122 | engines: {node: ^10.12.0 || >=12.0.0} 123 | dependencies: 124 | ajv: 6.12.6 125 | debug: 4.3.4 126 | espree: 7.3.1 127 | globals: 13.23.0 128 | ignore: 4.0.6 129 | import-fresh: 3.3.0 130 | js-yaml: 3.14.1 131 | minimatch: 3.1.2 132 | strip-json-comments: 3.1.1 133 | transitivePeerDependencies: 134 | - supports-color 135 | dev: true 136 | 137 | /@humanwhocodes/config-array@0.5.0: 138 | resolution: {integrity: sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==} 139 | engines: {node: '>=10.10.0'} 140 | dependencies: 141 | '@humanwhocodes/object-schema': 1.2.1 142 | debug: 4.3.4 143 | minimatch: 3.1.2 144 | transitivePeerDependencies: 145 | - supports-color 146 | dev: true 147 | 148 | /@humanwhocodes/object-schema@1.2.1: 149 | resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} 150 | dev: true 151 | 152 | /@ionic/eslint-config@0.3.0(eslint@7.32.0)(typescript@4.1.6): 153 | resolution: {integrity: sha512-Uf1hS2YIoHlcvXPF5LnsPM6auMewEdChQhR117Rt3sVEAutbyKMpFP4slNC2a6up3a5Q34zepqlf61Qgkf9XeQ==} 154 | peerDependencies: 155 | eslint: '>=7' 156 | dependencies: 157 | '@typescript-eslint/eslint-plugin': 4.33.0(@typescript-eslint/parser@4.33.0)(eslint@7.32.0)(typescript@4.1.6) 158 | '@typescript-eslint/parser': 4.33.0(eslint@7.32.0)(typescript@4.1.6) 159 | eslint: 7.32.0 160 | eslint-config-prettier: 6.15.0(eslint@7.32.0) 161 | eslint-plugin-import: 2.28.1(@typescript-eslint/parser@4.33.0)(eslint@7.32.0) 162 | transitivePeerDependencies: 163 | - eslint-import-resolver-typescript 164 | - eslint-import-resolver-webpack 165 | - supports-color 166 | - typescript 167 | dev: true 168 | 169 | /@ionic/prettier-config@1.0.1(prettier@2.3.2): 170 | resolution: {integrity: sha512-/v8UOW7rxkw/hvrRe/QfjlQsdjkm3sfAHoE3uqffO5BoNGijQMARrT32JT9Ei0g6KySXPyxxW+7LzPHrQmfzCw==} 171 | peerDependencies: 172 | prettier: ^2.0.0 173 | dependencies: 174 | prettier: 2.3.2 175 | dev: true 176 | 177 | /@ionic/swiftlint-config@1.1.2: 178 | resolution: {integrity: sha512-UbE1AIlTowt9uR7fMzRtbQX4URcyuok7mcpdJfFDHAIGM6nDjohYMke+6xOr6ZYlLnEyVmBGNEg0+grEYRgcVg==} 179 | dev: true 180 | 181 | /@ionic/utils-array@2.1.5: 182 | resolution: {integrity: sha512-HD72a71IQVBmQckDwmA8RxNVMTbxnaLbgFOl+dO5tbvW9CkkSFCv41h6fUuNsSEVgngfkn0i98HDuZC8mk+lTA==} 183 | engines: {node: '>=10.3.0'} 184 | dependencies: 185 | debug: 4.3.4 186 | tslib: 2.6.2 187 | transitivePeerDependencies: 188 | - supports-color 189 | dev: true 190 | 191 | /@ionic/utils-fs@3.1.6: 192 | resolution: {integrity: sha512-eikrNkK89CfGPmexjTfSWl4EYqsPSBh0Ka7by4F0PLc1hJZYtJxUZV3X4r5ecA8ikjicUmcbU7zJmAjmqutG/w==} 193 | engines: {node: '>=10.3.0'} 194 | dependencies: 195 | '@types/fs-extra': 8.1.3 196 | debug: 4.3.4 197 | fs-extra: 9.1.0 198 | tslib: 2.6.2 199 | transitivePeerDependencies: 200 | - supports-color 201 | dev: true 202 | 203 | /@ionic/utils-object@2.1.5: 204 | resolution: {integrity: sha512-XnYNSwfewUqxq+yjER1hxTKggftpNjFLJH0s37jcrNDwbzmbpFTQTVAp4ikNK4rd9DOebX/jbeZb8jfD86IYxw==} 205 | engines: {node: '>=10.3.0'} 206 | dependencies: 207 | debug: 4.3.4 208 | tslib: 2.6.2 209 | transitivePeerDependencies: 210 | - supports-color 211 | dev: true 212 | 213 | /@ionic/utils-process@2.1.10: 214 | resolution: {integrity: sha512-mZ7JEowcuGQK+SKsJXi0liYTcXd2bNMR3nE0CyTROpMECUpJeAvvaBaPGZf5ERQUPeWBVuwqAqjUmIdxhz5bxw==} 215 | engines: {node: '>=10.3.0'} 216 | dependencies: 217 | '@ionic/utils-object': 2.1.5 218 | '@ionic/utils-terminal': 2.3.3 219 | debug: 4.3.4 220 | signal-exit: 3.0.7 221 | tree-kill: 1.2.2 222 | tslib: 2.6.2 223 | transitivePeerDependencies: 224 | - supports-color 225 | dev: true 226 | 227 | /@ionic/utils-stream@3.1.5: 228 | resolution: {integrity: sha512-hkm46uHvEC05X/8PHgdJi4l4zv9VQDELZTM+Kz69odtO9zZYfnt8DkfXHJqJ+PxmtiE5mk/ehJWLnn/XAczTUw==} 229 | engines: {node: '>=10.3.0'} 230 | dependencies: 231 | debug: 4.3.4 232 | tslib: 2.6.2 233 | transitivePeerDependencies: 234 | - supports-color 235 | dev: true 236 | 237 | /@ionic/utils-subprocess@2.1.11: 238 | resolution: {integrity: sha512-6zCDixNmZCbMCy5np8klSxOZF85kuDyzZSTTQKQP90ZtYNCcPYmuFSzaqDwApJT4r5L3MY3JrqK1gLkc6xiUPw==} 239 | engines: {node: '>=10.3.0'} 240 | dependencies: 241 | '@ionic/utils-array': 2.1.5 242 | '@ionic/utils-fs': 3.1.6 243 | '@ionic/utils-process': 2.1.10 244 | '@ionic/utils-stream': 3.1.5 245 | '@ionic/utils-terminal': 2.3.3 246 | cross-spawn: 7.0.3 247 | debug: 4.3.4 248 | tslib: 2.6.2 249 | transitivePeerDependencies: 250 | - supports-color 251 | dev: true 252 | 253 | /@ionic/utils-terminal@2.3.3: 254 | resolution: {integrity: sha512-RnuSfNZ5fLEyX3R5mtcMY97cGD1A0NVBbarsSQ6yMMfRJ5YHU7hHVyUfvZeClbqkBC/pAqI/rYJuXKCT9YeMCQ==} 255 | engines: {node: '>=10.3.0'} 256 | dependencies: 257 | '@types/slice-ansi': 4.0.0 258 | debug: 4.3.4 259 | signal-exit: 3.0.7 260 | slice-ansi: 4.0.0 261 | string-width: 4.2.3 262 | strip-ansi: 6.0.1 263 | tslib: 2.6.2 264 | untildify: 4.0.0 265 | wrap-ansi: 7.0.0 266 | transitivePeerDependencies: 267 | - supports-color 268 | dev: true 269 | 270 | /@nodelib/fs.scandir@2.1.5: 271 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 272 | engines: {node: '>= 8'} 273 | dependencies: 274 | '@nodelib/fs.stat': 2.0.5 275 | run-parallel: 1.2.0 276 | dev: true 277 | 278 | /@nodelib/fs.stat@2.0.5: 279 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 280 | engines: {node: '>= 8'} 281 | dev: true 282 | 283 | /@nodelib/fs.walk@1.2.8: 284 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 285 | engines: {node: '>= 8'} 286 | dependencies: 287 | '@nodelib/fs.scandir': 2.1.5 288 | fastq: 1.15.0 289 | dev: true 290 | 291 | /@types/fs-extra@8.1.3: 292 | resolution: {integrity: sha512-7IdV01N0u/CaVO0fuY1YmEg14HQN3+EW8mpNgg6NEfxEl/lzCa5OxlBu3iFsCAdamnYOcTQ7oEi43Xc/67Rgzw==} 293 | dependencies: 294 | '@types/node': 20.8.6 295 | dev: true 296 | 297 | /@types/json-schema@7.0.13: 298 | resolution: {integrity: sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==} 299 | dev: true 300 | 301 | /@types/json5@0.0.29: 302 | resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} 303 | dev: true 304 | 305 | /@types/node@14.18.63: 306 | resolution: {integrity: sha512-fAtCfv4jJg+ExtXhvCkCqUKZ+4ok/JQk01qDKhL5BDDoS3AxKXhV5/MAVUZyQnSEd2GT92fkgZl0pz0Q0AzcIQ==} 307 | dev: true 308 | 309 | /@types/node@20.8.6: 310 | resolution: {integrity: sha512-eWO4K2Ji70QzKUqRy6oyJWUeB7+g2cRagT3T/nxYibYcT4y2BDL8lqolRXjTHmkZCdJfIPaY73KbJAZmcryxTQ==} 311 | dependencies: 312 | undici-types: 5.25.3 313 | dev: true 314 | 315 | /@types/parse-json@4.0.0: 316 | resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} 317 | dev: true 318 | 319 | /@types/slice-ansi@4.0.0: 320 | resolution: {integrity: sha512-+OpjSaq85gvlZAYINyzKpLeiFkSC4EsC6IIiT6v6TLSU5k5U83fHGj9Lel8oKEXM0HqgrMVCjXPDPVICtxF7EQ==} 321 | dev: true 322 | 323 | /@typescript-eslint/eslint-plugin@4.33.0(@typescript-eslint/parser@4.33.0)(eslint@7.32.0)(typescript@4.1.6): 324 | resolution: {integrity: sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==} 325 | engines: {node: ^10.12.0 || >=12.0.0} 326 | peerDependencies: 327 | '@typescript-eslint/parser': ^4.0.0 328 | eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 329 | typescript: '*' 330 | peerDependenciesMeta: 331 | typescript: 332 | optional: true 333 | dependencies: 334 | '@typescript-eslint/experimental-utils': 4.33.0(eslint@7.32.0)(typescript@4.1.6) 335 | '@typescript-eslint/parser': 4.33.0(eslint@7.32.0)(typescript@4.1.6) 336 | '@typescript-eslint/scope-manager': 4.33.0 337 | debug: 4.3.4 338 | eslint: 7.32.0 339 | functional-red-black-tree: 1.0.1 340 | ignore: 5.2.4 341 | regexpp: 3.2.0 342 | semver: 7.5.4 343 | tsutils: 3.21.0(typescript@4.1.6) 344 | typescript: 4.1.6 345 | transitivePeerDependencies: 346 | - supports-color 347 | dev: true 348 | 349 | /@typescript-eslint/experimental-utils@4.33.0(eslint@7.32.0)(typescript@4.1.6): 350 | resolution: {integrity: sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==} 351 | engines: {node: ^10.12.0 || >=12.0.0} 352 | peerDependencies: 353 | eslint: '*' 354 | dependencies: 355 | '@types/json-schema': 7.0.13 356 | '@typescript-eslint/scope-manager': 4.33.0 357 | '@typescript-eslint/types': 4.33.0 358 | '@typescript-eslint/typescript-estree': 4.33.0(typescript@4.1.6) 359 | eslint: 7.32.0 360 | eslint-scope: 5.1.1 361 | eslint-utils: 3.0.0(eslint@7.32.0) 362 | transitivePeerDependencies: 363 | - supports-color 364 | - typescript 365 | dev: true 366 | 367 | /@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@4.1.6): 368 | resolution: {integrity: sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==} 369 | engines: {node: ^10.12.0 || >=12.0.0} 370 | peerDependencies: 371 | eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 372 | typescript: '*' 373 | peerDependenciesMeta: 374 | typescript: 375 | optional: true 376 | dependencies: 377 | '@typescript-eslint/scope-manager': 4.33.0 378 | '@typescript-eslint/types': 4.33.0 379 | '@typescript-eslint/typescript-estree': 4.33.0(typescript@4.1.6) 380 | debug: 4.3.4 381 | eslint: 7.32.0 382 | typescript: 4.1.6 383 | transitivePeerDependencies: 384 | - supports-color 385 | dev: true 386 | 387 | /@typescript-eslint/scope-manager@4.33.0: 388 | resolution: {integrity: sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==} 389 | engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} 390 | dependencies: 391 | '@typescript-eslint/types': 4.33.0 392 | '@typescript-eslint/visitor-keys': 4.33.0 393 | dev: true 394 | 395 | /@typescript-eslint/types@4.33.0: 396 | resolution: {integrity: sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==} 397 | engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} 398 | dev: true 399 | 400 | /@typescript-eslint/typescript-estree@4.33.0(typescript@4.1.6): 401 | resolution: {integrity: sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==} 402 | engines: {node: ^10.12.0 || >=12.0.0} 403 | peerDependencies: 404 | typescript: '*' 405 | peerDependenciesMeta: 406 | typescript: 407 | optional: true 408 | dependencies: 409 | '@typescript-eslint/types': 4.33.0 410 | '@typescript-eslint/visitor-keys': 4.33.0 411 | debug: 4.3.4 412 | globby: 11.1.0 413 | is-glob: 4.0.3 414 | semver: 7.5.4 415 | tsutils: 3.21.0(typescript@4.1.6) 416 | typescript: 4.1.6 417 | transitivePeerDependencies: 418 | - supports-color 419 | dev: true 420 | 421 | /@typescript-eslint/visitor-keys@4.33.0: 422 | resolution: {integrity: sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==} 423 | engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} 424 | dependencies: 425 | '@typescript-eslint/types': 4.33.0 426 | eslint-visitor-keys: 2.1.0 427 | dev: true 428 | 429 | /acorn-jsx@5.3.2(acorn@7.4.1): 430 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 431 | peerDependencies: 432 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 433 | dependencies: 434 | acorn: 7.4.1 435 | dev: true 436 | 437 | /acorn@7.4.1: 438 | resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} 439 | engines: {node: '>=0.4.0'} 440 | hasBin: true 441 | dev: true 442 | 443 | /ajv@6.12.6: 444 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 445 | dependencies: 446 | fast-deep-equal: 3.1.3 447 | fast-json-stable-stringify: 2.1.0 448 | json-schema-traverse: 0.4.1 449 | uri-js: 4.4.1 450 | dev: true 451 | 452 | /ajv@8.12.0: 453 | resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} 454 | dependencies: 455 | fast-deep-equal: 3.1.3 456 | json-schema-traverse: 1.0.0 457 | require-from-string: 2.0.2 458 | uri-js: 4.4.1 459 | dev: true 460 | 461 | /ansi-colors@4.1.3: 462 | resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} 463 | engines: {node: '>=6'} 464 | dev: true 465 | 466 | /ansi-regex@5.0.1: 467 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 468 | engines: {node: '>=8'} 469 | dev: true 470 | 471 | /ansi-styles@3.2.1: 472 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 473 | engines: {node: '>=4'} 474 | dependencies: 475 | color-convert: 1.9.3 476 | dev: true 477 | 478 | /ansi-styles@4.3.0: 479 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 480 | engines: {node: '>=8'} 481 | dependencies: 482 | color-convert: 2.0.1 483 | dev: true 484 | 485 | /argparse@1.0.10: 486 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 487 | dependencies: 488 | sprintf-js: 1.0.3 489 | dev: true 490 | 491 | /array-buffer-byte-length@1.0.0: 492 | resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} 493 | dependencies: 494 | call-bind: 1.0.2 495 | is-array-buffer: 3.0.2 496 | dev: true 497 | 498 | /array-includes@3.1.7: 499 | resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} 500 | engines: {node: '>= 0.4'} 501 | dependencies: 502 | call-bind: 1.0.2 503 | define-properties: 1.2.1 504 | es-abstract: 1.22.2 505 | get-intrinsic: 1.2.1 506 | is-string: 1.0.7 507 | dev: true 508 | 509 | /array-union@2.1.0: 510 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 511 | engines: {node: '>=8'} 512 | dev: true 513 | 514 | /array.prototype.findlastindex@1.2.3: 515 | resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} 516 | engines: {node: '>= 0.4'} 517 | dependencies: 518 | call-bind: 1.0.2 519 | define-properties: 1.2.1 520 | es-abstract: 1.22.2 521 | es-shim-unscopables: 1.0.0 522 | get-intrinsic: 1.2.1 523 | dev: true 524 | 525 | /array.prototype.flat@1.3.2: 526 | resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} 527 | engines: {node: '>= 0.4'} 528 | dependencies: 529 | call-bind: 1.0.2 530 | define-properties: 1.2.1 531 | es-abstract: 1.22.2 532 | es-shim-unscopables: 1.0.0 533 | dev: true 534 | 535 | /array.prototype.flatmap@1.3.2: 536 | resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} 537 | engines: {node: '>= 0.4'} 538 | dependencies: 539 | call-bind: 1.0.2 540 | define-properties: 1.2.1 541 | es-abstract: 1.22.2 542 | es-shim-unscopables: 1.0.0 543 | dev: true 544 | 545 | /arraybuffer.prototype.slice@1.0.2: 546 | resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} 547 | engines: {node: '>= 0.4'} 548 | dependencies: 549 | array-buffer-byte-length: 1.0.0 550 | call-bind: 1.0.2 551 | define-properties: 1.2.1 552 | es-abstract: 1.22.2 553 | get-intrinsic: 1.2.1 554 | is-array-buffer: 3.0.2 555 | is-shared-array-buffer: 1.0.2 556 | dev: true 557 | 558 | /astral-regex@2.0.0: 559 | resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} 560 | engines: {node: '>=8'} 561 | dev: true 562 | 563 | /at-least-node@1.0.0: 564 | resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} 565 | engines: {node: '>= 4.0.0'} 566 | dev: true 567 | 568 | /available-typed-arrays@1.0.5: 569 | resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} 570 | engines: {node: '>= 0.4'} 571 | dev: true 572 | 573 | /balanced-match@1.0.2: 574 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 575 | dev: true 576 | 577 | /brace-expansion@1.1.11: 578 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 579 | dependencies: 580 | balanced-match: 1.0.2 581 | concat-map: 0.0.1 582 | dev: true 583 | 584 | /braces@3.0.2: 585 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 586 | engines: {node: '>=8'} 587 | dependencies: 588 | fill-range: 7.0.1 589 | dev: true 590 | 591 | /call-bind@1.0.2: 592 | resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} 593 | dependencies: 594 | function-bind: 1.1.2 595 | get-intrinsic: 1.2.1 596 | dev: true 597 | 598 | /callsites@3.1.0: 599 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 600 | engines: {node: '>=6'} 601 | dev: true 602 | 603 | /chalk@2.4.2: 604 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 605 | engines: {node: '>=4'} 606 | dependencies: 607 | ansi-styles: 3.2.1 608 | escape-string-regexp: 1.0.5 609 | supports-color: 5.5.0 610 | dev: true 611 | 612 | /chalk@4.1.2: 613 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 614 | engines: {node: '>=10'} 615 | dependencies: 616 | ansi-styles: 4.3.0 617 | supports-color: 7.2.0 618 | dev: true 619 | 620 | /chevrotain@6.5.0: 621 | resolution: {integrity: sha512-BwqQ/AgmKJ8jcMEjaSnfMybnKMgGTrtDKowfTP3pX4jwVy0kNjRsT/AP6h+wC3+3NC+X8X15VWBnTCQlX+wQFg==} 622 | dependencies: 623 | regexp-to-ast: 0.4.0 624 | dev: true 625 | 626 | /color-convert@1.9.3: 627 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 628 | dependencies: 629 | color-name: 1.1.3 630 | dev: true 631 | 632 | /color-convert@2.0.1: 633 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 634 | engines: {node: '>=7.0.0'} 635 | dependencies: 636 | color-name: 1.1.4 637 | dev: true 638 | 639 | /color-name@1.1.3: 640 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 641 | dev: true 642 | 643 | /color-name@1.1.4: 644 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 645 | dev: true 646 | 647 | /colorette@1.4.0: 648 | resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} 649 | dev: true 650 | 651 | /concat-map@0.0.1: 652 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 653 | dev: true 654 | 655 | /cosmiconfig@6.0.0: 656 | resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==} 657 | engines: {node: '>=8'} 658 | dependencies: 659 | '@types/parse-json': 4.0.0 660 | import-fresh: 3.3.0 661 | parse-json: 5.2.0 662 | path-type: 4.0.0 663 | yaml: 1.10.2 664 | dev: true 665 | 666 | /cross-spawn@7.0.3: 667 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 668 | engines: {node: '>= 8'} 669 | dependencies: 670 | path-key: 3.1.1 671 | shebang-command: 2.0.0 672 | which: 2.0.2 673 | dev: true 674 | 675 | /debug@3.2.7: 676 | resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} 677 | peerDependencies: 678 | supports-color: '*' 679 | peerDependenciesMeta: 680 | supports-color: 681 | optional: true 682 | dependencies: 683 | ms: 2.1.3 684 | dev: true 685 | 686 | /debug@4.3.4: 687 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 688 | engines: {node: '>=6.0'} 689 | peerDependencies: 690 | supports-color: '*' 691 | peerDependenciesMeta: 692 | supports-color: 693 | optional: true 694 | dependencies: 695 | ms: 2.1.2 696 | dev: true 697 | 698 | /deep-is@0.1.4: 699 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 700 | dev: true 701 | 702 | /define-data-property@1.1.1: 703 | resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} 704 | engines: {node: '>= 0.4'} 705 | dependencies: 706 | get-intrinsic: 1.2.1 707 | gopd: 1.0.1 708 | has-property-descriptors: 1.0.0 709 | dev: true 710 | 711 | /define-properties@1.2.1: 712 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 713 | engines: {node: '>= 0.4'} 714 | dependencies: 715 | define-data-property: 1.1.1 716 | has-property-descriptors: 1.0.0 717 | object-keys: 1.1.1 718 | dev: true 719 | 720 | /dir-glob@3.0.1: 721 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 722 | engines: {node: '>=8'} 723 | dependencies: 724 | path-type: 4.0.0 725 | dev: true 726 | 727 | /doctrine@2.1.0: 728 | resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} 729 | engines: {node: '>=0.10.0'} 730 | dependencies: 731 | esutils: 2.0.3 732 | dev: true 733 | 734 | /doctrine@3.0.0: 735 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 736 | engines: {node: '>=6.0.0'} 737 | dependencies: 738 | esutils: 2.0.3 739 | dev: true 740 | 741 | /emoji-regex@8.0.0: 742 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 743 | dev: true 744 | 745 | /enquirer@2.4.1: 746 | resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} 747 | engines: {node: '>=8.6'} 748 | dependencies: 749 | ansi-colors: 4.1.3 750 | strip-ansi: 6.0.1 751 | dev: true 752 | 753 | /error-ex@1.3.2: 754 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} 755 | dependencies: 756 | is-arrayish: 0.2.1 757 | dev: true 758 | 759 | /es-abstract@1.22.2: 760 | resolution: {integrity: sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==} 761 | engines: {node: '>= 0.4'} 762 | dependencies: 763 | array-buffer-byte-length: 1.0.0 764 | arraybuffer.prototype.slice: 1.0.2 765 | available-typed-arrays: 1.0.5 766 | call-bind: 1.0.2 767 | es-set-tostringtag: 2.0.1 768 | es-to-primitive: 1.2.1 769 | function.prototype.name: 1.1.6 770 | get-intrinsic: 1.2.1 771 | get-symbol-description: 1.0.0 772 | globalthis: 1.0.3 773 | gopd: 1.0.1 774 | has: 1.0.4 775 | has-property-descriptors: 1.0.0 776 | has-proto: 1.0.1 777 | has-symbols: 1.0.3 778 | internal-slot: 1.0.5 779 | is-array-buffer: 3.0.2 780 | is-callable: 1.2.7 781 | is-negative-zero: 2.0.2 782 | is-regex: 1.1.4 783 | is-shared-array-buffer: 1.0.2 784 | is-string: 1.0.7 785 | is-typed-array: 1.1.12 786 | is-weakref: 1.0.2 787 | object-inspect: 1.12.3 788 | object-keys: 1.1.1 789 | object.assign: 4.1.4 790 | regexp.prototype.flags: 1.5.1 791 | safe-array-concat: 1.0.1 792 | safe-regex-test: 1.0.0 793 | string.prototype.trim: 1.2.8 794 | string.prototype.trimend: 1.0.7 795 | string.prototype.trimstart: 1.0.7 796 | typed-array-buffer: 1.0.0 797 | typed-array-byte-length: 1.0.0 798 | typed-array-byte-offset: 1.0.0 799 | typed-array-length: 1.0.4 800 | unbox-primitive: 1.0.2 801 | which-typed-array: 1.1.11 802 | dev: true 803 | 804 | /es-set-tostringtag@2.0.1: 805 | resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} 806 | engines: {node: '>= 0.4'} 807 | dependencies: 808 | get-intrinsic: 1.2.1 809 | has: 1.0.4 810 | has-tostringtag: 1.0.0 811 | dev: true 812 | 813 | /es-shim-unscopables@1.0.0: 814 | resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} 815 | dependencies: 816 | has: 1.0.4 817 | dev: true 818 | 819 | /es-to-primitive@1.2.1: 820 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} 821 | engines: {node: '>= 0.4'} 822 | dependencies: 823 | is-callable: 1.2.7 824 | is-date-object: 1.0.5 825 | is-symbol: 1.0.4 826 | dev: true 827 | 828 | /escape-string-regexp@1.0.5: 829 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 830 | engines: {node: '>=0.8.0'} 831 | dev: true 832 | 833 | /escape-string-regexp@4.0.0: 834 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 835 | engines: {node: '>=10'} 836 | dev: true 837 | 838 | /eslint-config-prettier@6.15.0(eslint@7.32.0): 839 | resolution: {integrity: sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==} 840 | hasBin: true 841 | peerDependencies: 842 | eslint: '>=3.14.1' 843 | dependencies: 844 | eslint: 7.32.0 845 | get-stdin: 6.0.0 846 | dev: true 847 | 848 | /eslint-import-resolver-node@0.3.9: 849 | resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} 850 | dependencies: 851 | debug: 3.2.7 852 | is-core-module: 2.13.0 853 | resolve: 1.22.8 854 | transitivePeerDependencies: 855 | - supports-color 856 | dev: true 857 | 858 | /eslint-module-utils@2.8.0(@typescript-eslint/parser@4.33.0)(eslint-import-resolver-node@0.3.9)(eslint@7.32.0): 859 | resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} 860 | engines: {node: '>=4'} 861 | peerDependencies: 862 | '@typescript-eslint/parser': '*' 863 | eslint: '*' 864 | eslint-import-resolver-node: '*' 865 | eslint-import-resolver-typescript: '*' 866 | eslint-import-resolver-webpack: '*' 867 | peerDependenciesMeta: 868 | '@typescript-eslint/parser': 869 | optional: true 870 | eslint: 871 | optional: true 872 | eslint-import-resolver-node: 873 | optional: true 874 | eslint-import-resolver-typescript: 875 | optional: true 876 | eslint-import-resolver-webpack: 877 | optional: true 878 | dependencies: 879 | '@typescript-eslint/parser': 4.33.0(eslint@7.32.0)(typescript@4.1.6) 880 | debug: 3.2.7 881 | eslint: 7.32.0 882 | eslint-import-resolver-node: 0.3.9 883 | transitivePeerDependencies: 884 | - supports-color 885 | dev: true 886 | 887 | /eslint-plugin-import@2.28.1(@typescript-eslint/parser@4.33.0)(eslint@7.32.0): 888 | resolution: {integrity: sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==} 889 | engines: {node: '>=4'} 890 | peerDependencies: 891 | '@typescript-eslint/parser': '*' 892 | eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 893 | peerDependenciesMeta: 894 | '@typescript-eslint/parser': 895 | optional: true 896 | dependencies: 897 | '@typescript-eslint/parser': 4.33.0(eslint@7.32.0)(typescript@4.1.6) 898 | array-includes: 3.1.7 899 | array.prototype.findlastindex: 1.2.3 900 | array.prototype.flat: 1.3.2 901 | array.prototype.flatmap: 1.3.2 902 | debug: 3.2.7 903 | doctrine: 2.1.0 904 | eslint: 7.32.0 905 | eslint-import-resolver-node: 0.3.9 906 | eslint-module-utils: 2.8.0(@typescript-eslint/parser@4.33.0)(eslint-import-resolver-node@0.3.9)(eslint@7.32.0) 907 | has: 1.0.4 908 | is-core-module: 2.13.0 909 | is-glob: 4.0.3 910 | minimatch: 3.1.2 911 | object.fromentries: 2.0.7 912 | object.groupby: 1.0.1 913 | object.values: 1.1.7 914 | semver: 6.3.1 915 | tsconfig-paths: 3.14.2 916 | transitivePeerDependencies: 917 | - eslint-import-resolver-typescript 918 | - eslint-import-resolver-webpack 919 | - supports-color 920 | dev: true 921 | 922 | /eslint-scope@5.1.1: 923 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} 924 | engines: {node: '>=8.0.0'} 925 | dependencies: 926 | esrecurse: 4.3.0 927 | estraverse: 4.3.0 928 | dev: true 929 | 930 | /eslint-utils@2.1.0: 931 | resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} 932 | engines: {node: '>=6'} 933 | dependencies: 934 | eslint-visitor-keys: 1.3.0 935 | dev: true 936 | 937 | /eslint-utils@3.0.0(eslint@7.32.0): 938 | resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} 939 | engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} 940 | peerDependencies: 941 | eslint: '>=5' 942 | dependencies: 943 | eslint: 7.32.0 944 | eslint-visitor-keys: 2.1.0 945 | dev: true 946 | 947 | /eslint-visitor-keys@1.3.0: 948 | resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} 949 | engines: {node: '>=4'} 950 | dev: true 951 | 952 | /eslint-visitor-keys@2.1.0: 953 | resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} 954 | engines: {node: '>=10'} 955 | dev: true 956 | 957 | /eslint@7.32.0: 958 | resolution: {integrity: sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==} 959 | engines: {node: ^10.12.0 || >=12.0.0} 960 | hasBin: true 961 | dependencies: 962 | '@babel/code-frame': 7.12.11 963 | '@eslint/eslintrc': 0.4.3 964 | '@humanwhocodes/config-array': 0.5.0 965 | ajv: 6.12.6 966 | chalk: 4.1.2 967 | cross-spawn: 7.0.3 968 | debug: 4.3.4 969 | doctrine: 3.0.0 970 | enquirer: 2.4.1 971 | escape-string-regexp: 4.0.0 972 | eslint-scope: 5.1.1 973 | eslint-utils: 2.1.0 974 | eslint-visitor-keys: 2.1.0 975 | espree: 7.3.1 976 | esquery: 1.5.0 977 | esutils: 2.0.3 978 | fast-deep-equal: 3.1.3 979 | file-entry-cache: 6.0.1 980 | functional-red-black-tree: 1.0.1 981 | glob-parent: 5.1.2 982 | globals: 13.23.0 983 | ignore: 4.0.6 984 | import-fresh: 3.3.0 985 | imurmurhash: 0.1.4 986 | is-glob: 4.0.3 987 | js-yaml: 3.14.1 988 | json-stable-stringify-without-jsonify: 1.0.1 989 | levn: 0.4.1 990 | lodash.merge: 4.6.2 991 | minimatch: 3.1.2 992 | natural-compare: 1.4.0 993 | optionator: 0.9.3 994 | progress: 2.0.3 995 | regexpp: 3.2.0 996 | semver: 7.5.4 997 | strip-ansi: 6.0.1 998 | strip-json-comments: 3.1.1 999 | table: 6.8.1 1000 | text-table: 0.2.0 1001 | v8-compile-cache: 2.4.0 1002 | transitivePeerDependencies: 1003 | - supports-color 1004 | dev: true 1005 | 1006 | /espree@7.3.1: 1007 | resolution: {integrity: sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==} 1008 | engines: {node: ^10.12.0 || >=12.0.0} 1009 | dependencies: 1010 | acorn: 7.4.1 1011 | acorn-jsx: 5.3.2(acorn@7.4.1) 1012 | eslint-visitor-keys: 1.3.0 1013 | dev: true 1014 | 1015 | /esprima@4.0.1: 1016 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 1017 | engines: {node: '>=4'} 1018 | hasBin: true 1019 | dev: true 1020 | 1021 | /esquery@1.5.0: 1022 | resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} 1023 | engines: {node: '>=0.10'} 1024 | dependencies: 1025 | estraverse: 5.3.0 1026 | dev: true 1027 | 1028 | /esrecurse@4.3.0: 1029 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 1030 | engines: {node: '>=4.0'} 1031 | dependencies: 1032 | estraverse: 5.3.0 1033 | dev: true 1034 | 1035 | /estraverse@4.3.0: 1036 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} 1037 | engines: {node: '>=4.0'} 1038 | dev: true 1039 | 1040 | /estraverse@5.3.0: 1041 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 1042 | engines: {node: '>=4.0'} 1043 | dev: true 1044 | 1045 | /esutils@2.0.3: 1046 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1047 | engines: {node: '>=0.10.0'} 1048 | dev: true 1049 | 1050 | /fast-deep-equal@3.1.3: 1051 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1052 | dev: true 1053 | 1054 | /fast-glob@3.3.1: 1055 | resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} 1056 | engines: {node: '>=8.6.0'} 1057 | dependencies: 1058 | '@nodelib/fs.stat': 2.0.5 1059 | '@nodelib/fs.walk': 1.2.8 1060 | glob-parent: 5.1.2 1061 | merge2: 1.4.1 1062 | micromatch: 4.0.5 1063 | dev: true 1064 | 1065 | /fast-json-stable-stringify@2.1.0: 1066 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1067 | dev: true 1068 | 1069 | /fast-levenshtein@2.0.6: 1070 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 1071 | dev: true 1072 | 1073 | /fastq@1.15.0: 1074 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} 1075 | dependencies: 1076 | reusify: 1.0.4 1077 | dev: true 1078 | 1079 | /file-entry-cache@6.0.1: 1080 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 1081 | engines: {node: ^10.12.0 || >=12.0.0} 1082 | dependencies: 1083 | flat-cache: 3.1.1 1084 | dev: true 1085 | 1086 | /fill-range@7.0.1: 1087 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1088 | engines: {node: '>=8'} 1089 | dependencies: 1090 | to-regex-range: 5.0.1 1091 | dev: true 1092 | 1093 | /flat-cache@3.1.1: 1094 | resolution: {integrity: sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==} 1095 | engines: {node: '>=12.0.0'} 1096 | dependencies: 1097 | flatted: 3.2.9 1098 | keyv: 4.5.4 1099 | rimraf: 3.0.2 1100 | dev: true 1101 | 1102 | /flatted@3.2.9: 1103 | resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} 1104 | dev: true 1105 | 1106 | /for-each@0.3.3: 1107 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 1108 | dependencies: 1109 | is-callable: 1.2.7 1110 | dev: true 1111 | 1112 | /fs-extra@9.1.0: 1113 | resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} 1114 | engines: {node: '>=10'} 1115 | dependencies: 1116 | at-least-node: 1.0.0 1117 | graceful-fs: 4.2.11 1118 | jsonfile: 6.1.0 1119 | universalify: 2.0.0 1120 | dev: true 1121 | 1122 | /fs.realpath@1.0.0: 1123 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1124 | dev: true 1125 | 1126 | /fsevents@2.3.3: 1127 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 1128 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1129 | os: [darwin] 1130 | requiresBuild: true 1131 | dev: true 1132 | optional: true 1133 | 1134 | /function-bind@1.1.2: 1135 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 1136 | dev: true 1137 | 1138 | /function.prototype.name@1.1.6: 1139 | resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} 1140 | engines: {node: '>= 0.4'} 1141 | dependencies: 1142 | call-bind: 1.0.2 1143 | define-properties: 1.2.1 1144 | es-abstract: 1.22.2 1145 | functions-have-names: 1.2.3 1146 | dev: true 1147 | 1148 | /functional-red-black-tree@1.0.1: 1149 | resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==} 1150 | dev: true 1151 | 1152 | /functions-have-names@1.2.3: 1153 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 1154 | dev: true 1155 | 1156 | /get-intrinsic@1.2.1: 1157 | resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} 1158 | dependencies: 1159 | function-bind: 1.1.2 1160 | has: 1.0.4 1161 | has-proto: 1.0.1 1162 | has-symbols: 1.0.3 1163 | dev: true 1164 | 1165 | /get-stdin@6.0.0: 1166 | resolution: {integrity: sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==} 1167 | engines: {node: '>=4'} 1168 | dev: true 1169 | 1170 | /get-symbol-description@1.0.0: 1171 | resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} 1172 | engines: {node: '>= 0.4'} 1173 | dependencies: 1174 | call-bind: 1.0.2 1175 | get-intrinsic: 1.2.1 1176 | dev: true 1177 | 1178 | /github-slugger@1.5.0: 1179 | resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} 1180 | dev: true 1181 | 1182 | /glob-parent@5.1.2: 1183 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1184 | engines: {node: '>= 6'} 1185 | dependencies: 1186 | is-glob: 4.0.3 1187 | dev: true 1188 | 1189 | /glob@7.2.3: 1190 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 1191 | dependencies: 1192 | fs.realpath: 1.0.0 1193 | inflight: 1.0.6 1194 | inherits: 2.0.4 1195 | minimatch: 3.1.2 1196 | once: 1.4.0 1197 | path-is-absolute: 1.0.1 1198 | dev: true 1199 | 1200 | /globals@13.23.0: 1201 | resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} 1202 | engines: {node: '>=8'} 1203 | dependencies: 1204 | type-fest: 0.20.2 1205 | dev: true 1206 | 1207 | /globalthis@1.0.3: 1208 | resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} 1209 | engines: {node: '>= 0.4'} 1210 | dependencies: 1211 | define-properties: 1.2.1 1212 | dev: true 1213 | 1214 | /globby@11.1.0: 1215 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 1216 | engines: {node: '>=10'} 1217 | dependencies: 1218 | array-union: 2.1.0 1219 | dir-glob: 3.0.1 1220 | fast-glob: 3.3.1 1221 | ignore: 5.2.4 1222 | merge2: 1.4.1 1223 | slash: 3.0.0 1224 | dev: true 1225 | 1226 | /gopd@1.0.1: 1227 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} 1228 | dependencies: 1229 | get-intrinsic: 1.2.1 1230 | dev: true 1231 | 1232 | /graceful-fs@4.2.11: 1233 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 1234 | dev: true 1235 | 1236 | /has-bigints@1.0.2: 1237 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} 1238 | dev: true 1239 | 1240 | /has-flag@3.0.0: 1241 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 1242 | engines: {node: '>=4'} 1243 | dev: true 1244 | 1245 | /has-flag@4.0.0: 1246 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1247 | engines: {node: '>=8'} 1248 | dev: true 1249 | 1250 | /has-property-descriptors@1.0.0: 1251 | resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} 1252 | dependencies: 1253 | get-intrinsic: 1.2.1 1254 | dev: true 1255 | 1256 | /has-proto@1.0.1: 1257 | resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} 1258 | engines: {node: '>= 0.4'} 1259 | dev: true 1260 | 1261 | /has-symbols@1.0.3: 1262 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} 1263 | engines: {node: '>= 0.4'} 1264 | dev: true 1265 | 1266 | /has-tostringtag@1.0.0: 1267 | resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} 1268 | engines: {node: '>= 0.4'} 1269 | dependencies: 1270 | has-symbols: 1.0.3 1271 | dev: true 1272 | 1273 | /has@1.0.4: 1274 | resolution: {integrity: sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==} 1275 | engines: {node: '>= 0.4.0'} 1276 | dev: true 1277 | 1278 | /ignore@4.0.6: 1279 | resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==} 1280 | engines: {node: '>= 4'} 1281 | dev: true 1282 | 1283 | /ignore@5.2.4: 1284 | resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} 1285 | engines: {node: '>= 4'} 1286 | dev: true 1287 | 1288 | /import-fresh@3.3.0: 1289 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1290 | engines: {node: '>=6'} 1291 | dependencies: 1292 | parent-module: 1.0.1 1293 | resolve-from: 4.0.0 1294 | dev: true 1295 | 1296 | /imurmurhash@0.1.4: 1297 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 1298 | engines: {node: '>=0.8.19'} 1299 | dev: true 1300 | 1301 | /inflight@1.0.6: 1302 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1303 | dependencies: 1304 | once: 1.4.0 1305 | wrappy: 1.0.2 1306 | dev: true 1307 | 1308 | /inherits@2.0.4: 1309 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1310 | dev: true 1311 | 1312 | /internal-slot@1.0.5: 1313 | resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} 1314 | engines: {node: '>= 0.4'} 1315 | dependencies: 1316 | get-intrinsic: 1.2.1 1317 | has: 1.0.4 1318 | side-channel: 1.0.4 1319 | dev: true 1320 | 1321 | /is-array-buffer@3.0.2: 1322 | resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} 1323 | dependencies: 1324 | call-bind: 1.0.2 1325 | get-intrinsic: 1.2.1 1326 | is-typed-array: 1.1.12 1327 | dev: true 1328 | 1329 | /is-arrayish@0.2.1: 1330 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} 1331 | dev: true 1332 | 1333 | /is-bigint@1.0.4: 1334 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} 1335 | dependencies: 1336 | has-bigints: 1.0.2 1337 | dev: true 1338 | 1339 | /is-boolean-object@1.1.2: 1340 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} 1341 | engines: {node: '>= 0.4'} 1342 | dependencies: 1343 | call-bind: 1.0.2 1344 | has-tostringtag: 1.0.0 1345 | dev: true 1346 | 1347 | /is-callable@1.2.7: 1348 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 1349 | engines: {node: '>= 0.4'} 1350 | dev: true 1351 | 1352 | /is-core-module@2.13.0: 1353 | resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} 1354 | dependencies: 1355 | has: 1.0.4 1356 | dev: true 1357 | 1358 | /is-date-object@1.0.5: 1359 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} 1360 | engines: {node: '>= 0.4'} 1361 | dependencies: 1362 | has-tostringtag: 1.0.0 1363 | dev: true 1364 | 1365 | /is-extglob@2.1.1: 1366 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1367 | engines: {node: '>=0.10.0'} 1368 | dev: true 1369 | 1370 | /is-fullwidth-code-point@3.0.0: 1371 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 1372 | engines: {node: '>=8'} 1373 | dev: true 1374 | 1375 | /is-glob@4.0.3: 1376 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1377 | engines: {node: '>=0.10.0'} 1378 | dependencies: 1379 | is-extglob: 2.1.1 1380 | dev: true 1381 | 1382 | /is-negative-zero@2.0.2: 1383 | resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} 1384 | engines: {node: '>= 0.4'} 1385 | dev: true 1386 | 1387 | /is-number-object@1.0.7: 1388 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} 1389 | engines: {node: '>= 0.4'} 1390 | dependencies: 1391 | has-tostringtag: 1.0.0 1392 | dev: true 1393 | 1394 | /is-number@7.0.0: 1395 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1396 | engines: {node: '>=0.12.0'} 1397 | dev: true 1398 | 1399 | /is-regex@1.1.4: 1400 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} 1401 | engines: {node: '>= 0.4'} 1402 | dependencies: 1403 | call-bind: 1.0.2 1404 | has-tostringtag: 1.0.0 1405 | dev: true 1406 | 1407 | /is-shared-array-buffer@1.0.2: 1408 | resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} 1409 | dependencies: 1410 | call-bind: 1.0.2 1411 | dev: true 1412 | 1413 | /is-string@1.0.7: 1414 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} 1415 | engines: {node: '>= 0.4'} 1416 | dependencies: 1417 | has-tostringtag: 1.0.0 1418 | dev: true 1419 | 1420 | /is-symbol@1.0.4: 1421 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} 1422 | engines: {node: '>= 0.4'} 1423 | dependencies: 1424 | has-symbols: 1.0.3 1425 | dev: true 1426 | 1427 | /is-typed-array@1.1.12: 1428 | resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} 1429 | engines: {node: '>= 0.4'} 1430 | dependencies: 1431 | which-typed-array: 1.1.11 1432 | dev: true 1433 | 1434 | /is-weakref@1.0.2: 1435 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} 1436 | dependencies: 1437 | call-bind: 1.0.2 1438 | dev: true 1439 | 1440 | /isarray@2.0.5: 1441 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} 1442 | dev: true 1443 | 1444 | /isexe@2.0.0: 1445 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1446 | dev: true 1447 | 1448 | /java-parser@1.0.2: 1449 | resolution: {integrity: sha512-lBXc+F62ds2W83eH5MwGnzuWdb6kgGBV0x0R7w0B4JKGDrJzolMUEhRMzzzlIX68HvRU7XtfPon22YaB+dVg+A==} 1450 | dependencies: 1451 | chevrotain: 6.5.0 1452 | lodash: 4.17.21 1453 | dev: true 1454 | 1455 | /js-tokens@4.0.0: 1456 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 1457 | dev: true 1458 | 1459 | /js-yaml@3.14.1: 1460 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 1461 | hasBin: true 1462 | dependencies: 1463 | argparse: 1.0.10 1464 | esprima: 4.0.1 1465 | dev: true 1466 | 1467 | /json-buffer@3.0.1: 1468 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 1469 | dev: true 1470 | 1471 | /json-parse-even-better-errors@2.3.1: 1472 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} 1473 | dev: true 1474 | 1475 | /json-schema-traverse@0.4.1: 1476 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1477 | dev: true 1478 | 1479 | /json-schema-traverse@1.0.0: 1480 | resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} 1481 | dev: true 1482 | 1483 | /json-stable-stringify-without-jsonify@1.0.1: 1484 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 1485 | dev: true 1486 | 1487 | /json5@1.0.2: 1488 | resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} 1489 | hasBin: true 1490 | dependencies: 1491 | minimist: 1.2.8 1492 | dev: true 1493 | 1494 | /jsonfile@6.1.0: 1495 | resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} 1496 | dependencies: 1497 | universalify: 2.0.0 1498 | optionalDependencies: 1499 | graceful-fs: 4.2.11 1500 | dev: true 1501 | 1502 | /keyv@4.5.4: 1503 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 1504 | dependencies: 1505 | json-buffer: 3.0.1 1506 | dev: true 1507 | 1508 | /levn@0.4.1: 1509 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1510 | engines: {node: '>= 0.8.0'} 1511 | dependencies: 1512 | prelude-ls: 1.2.1 1513 | type-check: 0.4.0 1514 | dev: true 1515 | 1516 | /lines-and-columns@1.2.4: 1517 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 1518 | dev: true 1519 | 1520 | /lodash.merge@4.6.2: 1521 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1522 | dev: true 1523 | 1524 | /lodash.truncate@4.4.2: 1525 | resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} 1526 | dev: true 1527 | 1528 | /lodash@4.17.21: 1529 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 1530 | dev: true 1531 | 1532 | /lru-cache@6.0.0: 1533 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 1534 | engines: {node: '>=10'} 1535 | dependencies: 1536 | yallist: 4.0.0 1537 | dev: true 1538 | 1539 | /merge2@1.4.1: 1540 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1541 | engines: {node: '>= 8'} 1542 | dev: true 1543 | 1544 | /micromatch@4.0.5: 1545 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 1546 | engines: {node: '>=8.6'} 1547 | dependencies: 1548 | braces: 3.0.2 1549 | picomatch: 2.3.1 1550 | dev: true 1551 | 1552 | /minimatch@3.1.2: 1553 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1554 | dependencies: 1555 | brace-expansion: 1.1.11 1556 | dev: true 1557 | 1558 | /minimist@1.2.8: 1559 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 1560 | dev: true 1561 | 1562 | /ms@2.1.2: 1563 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1564 | dev: true 1565 | 1566 | /ms@2.1.3: 1567 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 1568 | dev: true 1569 | 1570 | /natural-compare@1.4.0: 1571 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 1572 | dev: true 1573 | 1574 | /object-inspect@1.12.3: 1575 | resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} 1576 | dev: true 1577 | 1578 | /object-keys@1.1.1: 1579 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 1580 | engines: {node: '>= 0.4'} 1581 | dev: true 1582 | 1583 | /object.assign@4.1.4: 1584 | resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} 1585 | engines: {node: '>= 0.4'} 1586 | dependencies: 1587 | call-bind: 1.0.2 1588 | define-properties: 1.2.1 1589 | has-symbols: 1.0.3 1590 | object-keys: 1.1.1 1591 | dev: true 1592 | 1593 | /object.fromentries@2.0.7: 1594 | resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} 1595 | engines: {node: '>= 0.4'} 1596 | dependencies: 1597 | call-bind: 1.0.2 1598 | define-properties: 1.2.1 1599 | es-abstract: 1.22.2 1600 | dev: true 1601 | 1602 | /object.groupby@1.0.1: 1603 | resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} 1604 | dependencies: 1605 | call-bind: 1.0.2 1606 | define-properties: 1.2.1 1607 | es-abstract: 1.22.2 1608 | get-intrinsic: 1.2.1 1609 | dev: true 1610 | 1611 | /object.values@1.1.7: 1612 | resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} 1613 | engines: {node: '>= 0.4'} 1614 | dependencies: 1615 | call-bind: 1.0.2 1616 | define-properties: 1.2.1 1617 | es-abstract: 1.22.2 1618 | dev: true 1619 | 1620 | /once@1.4.0: 1621 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 1622 | dependencies: 1623 | wrappy: 1.0.2 1624 | dev: true 1625 | 1626 | /optionator@0.9.3: 1627 | resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} 1628 | engines: {node: '>= 0.8.0'} 1629 | dependencies: 1630 | '@aashutoshrathi/word-wrap': 1.2.6 1631 | deep-is: 0.1.4 1632 | fast-levenshtein: 2.0.6 1633 | levn: 0.4.1 1634 | prelude-ls: 1.2.1 1635 | type-check: 0.4.0 1636 | dev: true 1637 | 1638 | /parent-module@1.0.1: 1639 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1640 | engines: {node: '>=6'} 1641 | dependencies: 1642 | callsites: 3.1.0 1643 | dev: true 1644 | 1645 | /parse-json@5.2.0: 1646 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} 1647 | engines: {node: '>=8'} 1648 | dependencies: 1649 | '@babel/code-frame': 7.22.13 1650 | error-ex: 1.3.2 1651 | json-parse-even-better-errors: 2.3.1 1652 | lines-and-columns: 1.2.4 1653 | dev: true 1654 | 1655 | /path-is-absolute@1.0.1: 1656 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 1657 | engines: {node: '>=0.10.0'} 1658 | dev: true 1659 | 1660 | /path-key@3.1.1: 1661 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 1662 | engines: {node: '>=8'} 1663 | dev: true 1664 | 1665 | /path-parse@1.0.7: 1666 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1667 | dev: true 1668 | 1669 | /path-type@4.0.0: 1670 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 1671 | engines: {node: '>=8'} 1672 | dev: true 1673 | 1674 | /picomatch@2.3.1: 1675 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1676 | engines: {node: '>=8.6'} 1677 | dev: true 1678 | 1679 | /prelude-ls@1.2.1: 1680 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 1681 | engines: {node: '>= 0.8.0'} 1682 | dev: true 1683 | 1684 | /prettier-plugin-java@1.0.2: 1685 | resolution: {integrity: sha512-YgcN1WGZlrH0E+bHdqtIYtfDp6k2PHBnIaGjzdff/7t/NyDWAA6ypAmnD7YQVG2OuoIaXYkC37HN7cz68lLWLg==} 1686 | dependencies: 1687 | java-parser: 1.0.2 1688 | lodash: 4.17.21 1689 | prettier: 2.2.1 1690 | dev: true 1691 | 1692 | /prettier@2.2.1: 1693 | resolution: {integrity: sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==} 1694 | engines: {node: '>=10.13.0'} 1695 | hasBin: true 1696 | dev: true 1697 | 1698 | /prettier@2.3.2: 1699 | resolution: {integrity: sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ==} 1700 | engines: {node: '>=10.13.0'} 1701 | hasBin: true 1702 | dev: true 1703 | 1704 | /progress@2.0.3: 1705 | resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} 1706 | engines: {node: '>=0.4.0'} 1707 | dev: true 1708 | 1709 | /punycode@2.3.0: 1710 | resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} 1711 | engines: {node: '>=6'} 1712 | dev: true 1713 | 1714 | /queue-microtask@1.2.3: 1715 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1716 | dev: true 1717 | 1718 | /regexp-to-ast@0.4.0: 1719 | resolution: {integrity: sha512-4qf/7IsIKfSNHQXSwial1IFmfM1Cc/whNBQqRwe0V2stPe7KmN1U0tWQiIx6JiirgSrisjE0eECdNf7Tav1Ntw==} 1720 | dev: true 1721 | 1722 | /regexp.prototype.flags@1.5.1: 1723 | resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} 1724 | engines: {node: '>= 0.4'} 1725 | dependencies: 1726 | call-bind: 1.0.2 1727 | define-properties: 1.2.1 1728 | set-function-name: 2.0.1 1729 | dev: true 1730 | 1731 | /regexpp@3.2.0: 1732 | resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} 1733 | engines: {node: '>=8'} 1734 | dev: true 1735 | 1736 | /require-from-string@2.0.2: 1737 | resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} 1738 | engines: {node: '>=0.10.0'} 1739 | dev: true 1740 | 1741 | /resolve-from@4.0.0: 1742 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1743 | engines: {node: '>=4'} 1744 | dev: true 1745 | 1746 | /resolve@1.22.8: 1747 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} 1748 | hasBin: true 1749 | dependencies: 1750 | is-core-module: 2.13.0 1751 | path-parse: 1.0.7 1752 | supports-preserve-symlinks-flag: 1.0.0 1753 | dev: true 1754 | 1755 | /reusify@1.0.4: 1756 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1757 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1758 | dev: true 1759 | 1760 | /rimraf@3.0.2: 1761 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 1762 | hasBin: true 1763 | dependencies: 1764 | glob: 7.2.3 1765 | dev: true 1766 | 1767 | /rollup@2.79.1: 1768 | resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==} 1769 | engines: {node: '>=10.0.0'} 1770 | hasBin: true 1771 | optionalDependencies: 1772 | fsevents: 2.3.3 1773 | dev: true 1774 | 1775 | /run-parallel@1.2.0: 1776 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1777 | dependencies: 1778 | queue-microtask: 1.2.3 1779 | dev: true 1780 | 1781 | /safe-array-concat@1.0.1: 1782 | resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} 1783 | engines: {node: '>=0.4'} 1784 | dependencies: 1785 | call-bind: 1.0.2 1786 | get-intrinsic: 1.2.1 1787 | has-symbols: 1.0.3 1788 | isarray: 2.0.5 1789 | dev: true 1790 | 1791 | /safe-regex-test@1.0.0: 1792 | resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} 1793 | dependencies: 1794 | call-bind: 1.0.2 1795 | get-intrinsic: 1.2.1 1796 | is-regex: 1.1.4 1797 | dev: true 1798 | 1799 | /semver@6.3.1: 1800 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 1801 | hasBin: true 1802 | dev: true 1803 | 1804 | /semver@7.5.4: 1805 | resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} 1806 | engines: {node: '>=10'} 1807 | hasBin: true 1808 | dependencies: 1809 | lru-cache: 6.0.0 1810 | dev: true 1811 | 1812 | /set-function-name@2.0.1: 1813 | resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} 1814 | engines: {node: '>= 0.4'} 1815 | dependencies: 1816 | define-data-property: 1.1.1 1817 | functions-have-names: 1.2.3 1818 | has-property-descriptors: 1.0.0 1819 | dev: true 1820 | 1821 | /shebang-command@2.0.0: 1822 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1823 | engines: {node: '>=8'} 1824 | dependencies: 1825 | shebang-regex: 3.0.0 1826 | dev: true 1827 | 1828 | /shebang-regex@3.0.0: 1829 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1830 | engines: {node: '>=8'} 1831 | dev: true 1832 | 1833 | /side-channel@1.0.4: 1834 | resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} 1835 | dependencies: 1836 | call-bind: 1.0.2 1837 | get-intrinsic: 1.2.1 1838 | object-inspect: 1.12.3 1839 | dev: true 1840 | 1841 | /signal-exit@3.0.7: 1842 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 1843 | dev: true 1844 | 1845 | /slash@3.0.0: 1846 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 1847 | engines: {node: '>=8'} 1848 | dev: true 1849 | 1850 | /slice-ansi@4.0.0: 1851 | resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} 1852 | engines: {node: '>=10'} 1853 | dependencies: 1854 | ansi-styles: 4.3.0 1855 | astral-regex: 2.0.0 1856 | is-fullwidth-code-point: 3.0.0 1857 | dev: true 1858 | 1859 | /sprintf-js@1.0.3: 1860 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 1861 | dev: true 1862 | 1863 | /string-width@4.2.3: 1864 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 1865 | engines: {node: '>=8'} 1866 | dependencies: 1867 | emoji-regex: 8.0.0 1868 | is-fullwidth-code-point: 3.0.0 1869 | strip-ansi: 6.0.1 1870 | dev: true 1871 | 1872 | /string.prototype.trim@1.2.8: 1873 | resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} 1874 | engines: {node: '>= 0.4'} 1875 | dependencies: 1876 | call-bind: 1.0.2 1877 | define-properties: 1.2.1 1878 | es-abstract: 1.22.2 1879 | dev: true 1880 | 1881 | /string.prototype.trimend@1.0.7: 1882 | resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} 1883 | dependencies: 1884 | call-bind: 1.0.2 1885 | define-properties: 1.2.1 1886 | es-abstract: 1.22.2 1887 | dev: true 1888 | 1889 | /string.prototype.trimstart@1.0.7: 1890 | resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} 1891 | dependencies: 1892 | call-bind: 1.0.2 1893 | define-properties: 1.2.1 1894 | es-abstract: 1.22.2 1895 | dev: true 1896 | 1897 | /strip-ansi@6.0.1: 1898 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1899 | engines: {node: '>=8'} 1900 | dependencies: 1901 | ansi-regex: 5.0.1 1902 | dev: true 1903 | 1904 | /strip-bom@3.0.0: 1905 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 1906 | engines: {node: '>=4'} 1907 | dev: true 1908 | 1909 | /strip-json-comments@3.1.1: 1910 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1911 | engines: {node: '>=8'} 1912 | dev: true 1913 | 1914 | /supports-color@5.5.0: 1915 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 1916 | engines: {node: '>=4'} 1917 | dependencies: 1918 | has-flag: 3.0.0 1919 | dev: true 1920 | 1921 | /supports-color@7.2.0: 1922 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1923 | engines: {node: '>=8'} 1924 | dependencies: 1925 | has-flag: 4.0.0 1926 | dev: true 1927 | 1928 | /supports-preserve-symlinks-flag@1.0.0: 1929 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1930 | engines: {node: '>= 0.4'} 1931 | dev: true 1932 | 1933 | /swiftlint@1.0.2: 1934 | resolution: {integrity: sha512-YhcS0N3vkwBatnZf/iJPg89LGQk7MbFnz67Cg3EZ6Ppqm2H8y6x7A1t6KMQ0jYVQpea9wQiFiFRFhkoChaQ29Q==} 1935 | hasBin: true 1936 | requiresBuild: true 1937 | dependencies: 1938 | '@ionic/utils-fs': 3.1.6 1939 | '@ionic/utils-subprocess': 2.1.11 1940 | cosmiconfig: 6.0.0 1941 | transitivePeerDependencies: 1942 | - supports-color 1943 | dev: true 1944 | 1945 | /table@6.8.1: 1946 | resolution: {integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==} 1947 | engines: {node: '>=10.0.0'} 1948 | dependencies: 1949 | ajv: 8.12.0 1950 | lodash.truncate: 4.4.2 1951 | slice-ansi: 4.0.0 1952 | string-width: 4.2.3 1953 | strip-ansi: 6.0.1 1954 | dev: true 1955 | 1956 | /text-table@0.2.0: 1957 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 1958 | dev: true 1959 | 1960 | /to-regex-range@5.0.1: 1961 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1962 | engines: {node: '>=8.0'} 1963 | dependencies: 1964 | is-number: 7.0.0 1965 | dev: true 1966 | 1967 | /tree-kill@1.2.2: 1968 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 1969 | hasBin: true 1970 | dev: true 1971 | 1972 | /tsconfig-paths@3.14.2: 1973 | resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} 1974 | dependencies: 1975 | '@types/json5': 0.0.29 1976 | json5: 1.0.2 1977 | minimist: 1.2.8 1978 | strip-bom: 3.0.0 1979 | dev: true 1980 | 1981 | /tslib@1.14.1: 1982 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} 1983 | dev: true 1984 | 1985 | /tslib@2.6.2: 1986 | resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} 1987 | dev: true 1988 | 1989 | /tsutils@3.21.0(typescript@4.1.6): 1990 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} 1991 | engines: {node: '>= 6'} 1992 | peerDependencies: 1993 | 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' 1994 | dependencies: 1995 | tslib: 1.14.1 1996 | typescript: 4.1.6 1997 | dev: true 1998 | 1999 | /type-check@0.4.0: 2000 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 2001 | engines: {node: '>= 0.8.0'} 2002 | dependencies: 2003 | prelude-ls: 1.2.1 2004 | dev: true 2005 | 2006 | /type-fest@0.20.2: 2007 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 2008 | engines: {node: '>=10'} 2009 | dev: true 2010 | 2011 | /typed-array-buffer@1.0.0: 2012 | resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} 2013 | engines: {node: '>= 0.4'} 2014 | dependencies: 2015 | call-bind: 1.0.2 2016 | get-intrinsic: 1.2.1 2017 | is-typed-array: 1.1.12 2018 | dev: true 2019 | 2020 | /typed-array-byte-length@1.0.0: 2021 | resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} 2022 | engines: {node: '>= 0.4'} 2023 | dependencies: 2024 | call-bind: 1.0.2 2025 | for-each: 0.3.3 2026 | has-proto: 1.0.1 2027 | is-typed-array: 1.1.12 2028 | dev: true 2029 | 2030 | /typed-array-byte-offset@1.0.0: 2031 | resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} 2032 | engines: {node: '>= 0.4'} 2033 | dependencies: 2034 | available-typed-arrays: 1.0.5 2035 | call-bind: 1.0.2 2036 | for-each: 0.3.3 2037 | has-proto: 1.0.1 2038 | is-typed-array: 1.1.12 2039 | dev: true 2040 | 2041 | /typed-array-length@1.0.4: 2042 | resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} 2043 | dependencies: 2044 | call-bind: 1.0.2 2045 | for-each: 0.3.3 2046 | is-typed-array: 1.1.12 2047 | dev: true 2048 | 2049 | /typescript@4.1.6: 2050 | resolution: {integrity: sha512-pxnwLxeb/Z5SP80JDRzVjh58KsM6jZHRAOtTpS7sXLS4ogXNKC9ANxHHZqLLeVHZN35jCtI4JdmLLbLiC1kBow==} 2051 | engines: {node: '>=4.2.0'} 2052 | hasBin: true 2053 | dev: true 2054 | 2055 | /typescript@4.2.4: 2056 | resolution: {integrity: sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg==} 2057 | engines: {node: '>=4.2.0'} 2058 | hasBin: true 2059 | dev: true 2060 | 2061 | /unbox-primitive@1.0.2: 2062 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} 2063 | dependencies: 2064 | call-bind: 1.0.2 2065 | has-bigints: 1.0.2 2066 | has-symbols: 1.0.3 2067 | which-boxed-primitive: 1.0.2 2068 | dev: true 2069 | 2070 | /undici-types@5.25.3: 2071 | resolution: {integrity: sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==} 2072 | dev: true 2073 | 2074 | /universalify@2.0.0: 2075 | resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} 2076 | engines: {node: '>= 10.0.0'} 2077 | dev: true 2078 | 2079 | /untildify@4.0.0: 2080 | resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} 2081 | engines: {node: '>=8'} 2082 | dev: true 2083 | 2084 | /uri-js@4.4.1: 2085 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 2086 | dependencies: 2087 | punycode: 2.3.0 2088 | dev: true 2089 | 2090 | /v8-compile-cache@2.4.0: 2091 | resolution: {integrity: sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==} 2092 | dev: true 2093 | 2094 | /which-boxed-primitive@1.0.2: 2095 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} 2096 | dependencies: 2097 | is-bigint: 1.0.4 2098 | is-boolean-object: 1.1.2 2099 | is-number-object: 1.0.7 2100 | is-string: 1.0.7 2101 | is-symbol: 1.0.4 2102 | dev: true 2103 | 2104 | /which-typed-array@1.1.11: 2105 | resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} 2106 | engines: {node: '>= 0.4'} 2107 | dependencies: 2108 | available-typed-arrays: 1.0.5 2109 | call-bind: 1.0.2 2110 | for-each: 0.3.3 2111 | gopd: 1.0.1 2112 | has-tostringtag: 1.0.0 2113 | dev: true 2114 | 2115 | /which@2.0.2: 2116 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 2117 | engines: {node: '>= 8'} 2118 | hasBin: true 2119 | dependencies: 2120 | isexe: 2.0.0 2121 | dev: true 2122 | 2123 | /wrap-ansi@7.0.0: 2124 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 2125 | engines: {node: '>=10'} 2126 | dependencies: 2127 | ansi-styles: 4.3.0 2128 | string-width: 4.2.3 2129 | strip-ansi: 6.0.1 2130 | dev: true 2131 | 2132 | /wrappy@1.0.2: 2133 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 2134 | dev: true 2135 | 2136 | /yallist@4.0.0: 2137 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 2138 | dev: true 2139 | 2140 | /yaml@1.10.2: 2141 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} 2142 | engines: {node: '>= 6'} 2143 | dev: true 2144 | --------------------------------------------------------------------------------