diff --git a/.bazelignore b/.bazelignore
new file mode 100644
index 0000000..5225186
--- /dev/null
+++ b/.bazelignore
@@ -0,0 +1,2 @@
+javascript/examples
+kotlin/example
\ No newline at end of file
diff --git a/.bazelrc b/.bazelrc
index e8f8a5a..7d40210 100644
--- a/.bazelrc
+++ b/.bazelrc
@@ -1,3 +1,31 @@
-# Use embedded JDK
-common --repo_env=JAVA_HOME=../bazel_tools/jdk
+common --enable_bzlmod
common --experimental_google_legacy_api
+
+build --bes_results_url=https://app.buildbuddy.io/invocation/
+build --bes_backend=grpcs://remote.buildbuddy.io
+build --remote_cache=grpcs://remote.buildbuddy.io
+build --experimental_remote_cache_compression
+build --experimental_remote_cache_async
+build --remote_download_toplevel
+build --remote_timeout=3600
+build --build_metadata=REPO_URL=https://github.com/player-ui/rules_player.git
+
+test --bes_results_url=https://app.buildbuddy.io/invocation/
+test --bes_backend=grpcs://remote.buildbuddy.io
+test --remote_cache=grpcs://remote.buildbuddy.io
+test --experimental_remote_cache_compression
+test --experimental_remote_cache_async
+test --remote_download_toplevel
+test --remote_timeout=3600
+test --build_metadata=REPO_URL=https://github.com/player-ui/rules_player.git
+
+coverage --bes_results_url=https://app.buildbuddy.io/invocation/
+coverage --bes_backend=grpcs://remote.buildbuddy.io
+coverage --remote_cache=grpcs://remote.buildbuddy.io
+coverage --experimental_remote_cache_compression
+coverage --experimental_remote_cache_async
+coverage --remote_download_toplevel
+coverage --remote_timeout=3600
+coverage --build_metadata=REPO_URL=https://github.com/player-ui/rules_player.git
+
+try-import %workspace%/.bazelrc.local
diff --git a/.bazelversion b/.bazelversion
index 04edabd..c0be8a7 100644
--- a/.bazelversion
+++ b/.bazelversion
@@ -1 +1 @@
-5.4.1
\ No newline at end of file
+6.4.0
\ No newline at end of file
diff --git a/.circleci/config.yml b/.circleci/config.yml
index dc934cb..1e64615 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -66,6 +66,9 @@ jobs:
at: ~/rules_player
- run:
name: Test
+ command: bazel test //...
+ - run:
+ name: Test Examples
command: ./scripts/test.sh
release:
diff --git a/.gitignore b/.gitignore
index 51fdfee..6593307 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,3 +25,4 @@ user.bazelrc
**/node_modules/
**/.DS_Store
+.bazelrc.local
\ No newline at end of file
diff --git a/MODULE.bazel b/MODULE.bazel
new file mode 100644
index 0000000..1a5648e
--- /dev/null
+++ b/MODULE.bazel
@@ -0,0 +1,50 @@
+module(name = "rules_player", version = "1.0")
+
+bazel_dep(name = "aspect_bazel_lib", version = "1.32.0")
+bazel_dep(name = "aspect_rules_js", version = "1.33.1")
+bazel_dep(name = "aspect_rules_rollup", version = "1.0.0")
+bazel_dep(name = "bazel_skylib", version = "1.4.1")
+bazel_dep(name = "rules_pkg", version = "0.9.1")
+bazel_dep(name = "aspect_rules_ts", version = "2.1.0")
+bazel_dep(name = "platforms", version = "0.0.5")
+
+rules_ts_ext = use_extension(
+ "@aspect_rules_ts//ts:extensions.bzl",
+ "ext",
+ dev_dependency = True,
+)
+
+rules_ts_ext.deps()
+
+use_repo(rules_ts_ext, "npm_typescript")
+
+bazel_dep(name = "rules_kotlin", version = "1.9.1")
+
+bazel_dep(name = "rules_jvm_external", version = "5.3")
+maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
+
+maven.install(
+ name = "rules_player_maven",
+ artifacts = [
+ "com.github.ajalt.clikt:clikt-jvm:3.4.0",
+ "io.github.gradle-nexus:publish-plugin:1.1.0",
+ "ch.qos.logback:logback-classic:1.2.11",
+ "org.junit.jupiter:junit-jupiter-api:5.7.2",
+ "org.junit.jupiter:junit-jupiter-params:5.7.2",
+ "org.junit.jupiter:junit-jupiter-engine:5.7.2",
+ "org.junit.platform:junit-platform-suite-api:1.7.2",
+ "org.junit.platform:junit-platform-console:1.7.2",
+ "org.junit.platform:junit-platform-launcher:1.7.2"
+ ],
+ fetch_sources = True,
+ repositories = [
+ "https://repo1.maven.org/maven2",
+ "https://maven.google.com/",
+ "https://plugins.gradle.org/m2/",
+ ]
+)
+use_repo(maven, "rules_player_maven")
+## Rule Dependencies
+bazel_dep(name = "rules_swift", version = "1.18.0", repo_name = "build_bazel_rules_swift")
+bazel_dep(name = "rules_apple", version = "3.5.1", repo_name = "build_bazel_rules_apple")
+bazel_dep(name = "rules_ios", version = "4.3.1", repo_name = "build_bazel_rules_ios")
diff --git a/WORKSPACE b/WORKSPACE
index a660e63..664c747 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -1,85 +1,5 @@
workspace(
name = "rules_player",
- managed_directories = {
- "@npm": ["node_modules"],
- },
)
-# Defines all potential dependencies -- loading these deps is done lazily on first access
-load(":workspace.bzl", "deps")
-deps()
-
-# Like right here
-# load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
-# bazel_skylib_workspace()
-load("//:conf.bzl", "apple", "distribution", "javascript", "skylib", "kotlin")
-
-skylib()
-
-# apple()
-
-distribution()
-
-javascript()
-
-kotlin()
-
-# TODO: This breaks the conf.bzl standard... b/c of the way bzl files
-# are required to be structured, we can't consolidate config logic
-# to a sinlge .bzl file. This is super frustrating when it comes to
-# consolidating and standardizing common workspace configuration for
-# Bazel projects and just adds to boilerplate overhead, even if in
-# the name of being explicit.
-# load("//swift:rules_deps.bzl", "rules_deps")
-
-# rules_deps()
-
-# load("//swift:extra_deps.bzl", "extra_deps")
-
-# extra_deps()
-
-# load("//apple:support_deps.bzl", "support_deps")
-
-# support_deps()
-
-
-load("@io_bazel_rules_kotlin//kotlin:core.bzl", "kt_register_toolchains")
-
-kt_register_toolchains()
-
-load("@rules_player//junit5:conf.bzl", "junit5")
-
-junit5()
-
-######################
-# Maven Dependencies #
-######################
-load("@rules_player//distribution:deps.bzl", artifacts = "maven")
-load("@rules_jvm_external//:defs.bzl", "maven_install")
-
-maven_install(
- artifacts = artifacts,
- fetch_sources = True,
- repositories = [
- "https://repo1.maven.org/maven2",
- "https://maven.google.com/",
- "https://plugins.gradle.org/m2/",
- ],
-)
-
-#####################
-# Yarn Dependencies #
-#####################
-load("@build_bazel_rules_nodejs//:index.bzl", "node_repositories", "yarn_install")
-
-node_repositories(
- node_version = "16.12.0",
- yarn_version = "1.22.17",
-)
-
-yarn_install(
- name = "npm",
- package_json = "//:package.json",
- yarn_lock = "//:yarn.lock",
-)
diff --git a/WORKSPACE.bzlmod b/WORKSPACE.bzlmod
new file mode 100644
index 0000000..91517d3
--- /dev/null
+++ b/WORKSPACE.bzlmod
@@ -0,0 +1,3 @@
+android_sdk_repository(
+ name = "androidsdk",
+)
\ No newline at end of file
diff --git a/android/workspace.bzl b/android/workspace.bzl
deleted file mode 100644
index 23599eb..0000000
--- a/android/workspace.bzl
+++ /dev/null
@@ -1,6 +0,0 @@
-def android(
- name = "androidsdk",
- api_level = None,
- build_tools_version = None
-):
- native.android_sdk_repository(name = name, api_level = api_level, build_tools_version = build_tools_version)
\ No newline at end of file
diff --git a/apple/BUILD b/apple/BUILD
deleted file mode 100644
index e69de29..0000000
diff --git a/apple/conf.bzl b/apple/conf.bzl
deleted file mode 100644
index 6ce3d0d..0000000
--- a/apple/conf.bzl
+++ /dev/null
@@ -1,3 +0,0 @@
-load("//apple:rules_deps.bzl", "rules_deps")
-
-apple = rules_deps
diff --git a/apple/rules_deps.bzl b/apple/rules_deps.bzl
deleted file mode 100644
index 2f06d1e..0000000
--- a/apple/rules_deps.bzl
+++ /dev/null
@@ -1,22 +0,0 @@
-load(
- "@build_bazel_rules_ios//rules:repositories.bzl",
- "rules_ios_dependencies"
-)
-load(
- "@build_bazel_rules_apple//apple:repositories.bzl",
- "apple_rules_dependencies",
-)
-load(
- "@build_bazel_rules_swift//swift:repositories.bzl",
- "swift_rules_dependencies",
-)
-load(
- "@com_google_protobuf//:protobuf_deps.bzl",
- "protobuf_deps",
-)
-
-def rules_deps():
- rules_ios_dependencies()
- apple_rules_dependencies()
- swift_rules_dependencies()
- protobuf_deps()
diff --git a/apple/support_deps.bzl b/apple/support_deps.bzl
deleted file mode 100644
index b3d788a..0000000
--- a/apple/support_deps.bzl
+++ /dev/null
@@ -1,7 +0,0 @@
-load(
- "@build_bazel_apple_support//lib:repositories.bzl",
- "apple_support_dependencies",
-)
-
-def support_deps():
- apple_support_dependencies()
diff --git a/apple/workspace.bzl b/apple/workspace.bzl
deleted file mode 100644
index 98a082a..0000000
--- a/apple/workspace.bzl
+++ /dev/null
@@ -1,31 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
-load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
-load("//internal:maybe.bzl", "maybe")
-
-def apple():
- maybe(
- http_archive,
- name = "build_bazel_rules_apple",
- sha256 = "36072d4f3614d309d6a703da0dfe48684ec4c65a89611aeb9590b45af7a3e592",
- url = "https://github.com/bazelbuild/rules_apple/releases/download/1.0.1/rules_apple.1.0.1.tar.gz",
- )
- maybe(
- http_archive,
- name = "build_bazel_rules_swift",
- sha256 = "12057b7aa904467284eee640de5e33853e51d8e31aae50b3fb25d2823d51c6b8",
- url = "https://github.com/bazelbuild/rules_swift/releases/download/1.0.0/rules_swift.1.0.0.tar.gz",
- )
- maybe(
- http_archive,
- name = "com_google_protobuf",
- sha256 = "bb1ddd8172b745cbdc75f06841bd9e7c9de0b3956397723d883423abfab8e176",
- strip_prefix = "protobuf-3.18.0",
- urls = ["https://github.com/protocolbuffers/protobuf/archive/refs/tags/v3.18.0.zip"]
- )
- maybe(
- git_repository,
- name = "build_bazel_rules_ios",
- remote = "https://github.com/hborawski/rules_ios.git",
- commit = "618bb1cc11614a858b97e0baf099449f379cc541",
- shallow_since = "1697658491 -0700"
- )
diff --git a/bazel/BUILD b/bazel/BUILD
deleted file mode 100644
index e69de29..0000000
diff --git a/bazel/conf.bzl b/bazel/conf.bzl
deleted file mode 100644
index 73d2a6d..0000000
--- a/bazel/conf.bzl
+++ /dev/null
@@ -1,7 +0,0 @@
-load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
-
-# Obviously, this a silly abstraction, but it might be worth keeping
-# like this to prove out the pattern of workspace.bzl declaration ->
-# conf.bzl configuration
-def skylib():
- bazel_skylib_workspace()
diff --git a/bazel/workspace.bzl b/bazel/workspace.bzl
deleted file mode 100644
index 933621c..0000000
--- a/bazel/workspace.bzl
+++ /dev/null
@@ -1,13 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
-load("//internal:maybe.bzl", "maybe")
-
-def skylib():
- maybe(
- http_archive,
- name = "bazel_skylib",
- urls = [
- "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.0.2/bazel-skylib-1.0.2.tar.gz",
- "https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.2/bazel-skylib-1.0.2.tar.gz",
- ],
- sha256 = "97e70364e9249702246c0e9444bccdc4b847bed1eb03c5a3ece4f83dfe6abc44",
- )
diff --git a/cocoapods/BUILD b/cocoapods/BUILD
deleted file mode 100644
index 4fec7bf..0000000
--- a/cocoapods/BUILD
+++ /dev/null
@@ -1,11 +0,0 @@
-package(default_visibility = ["//visibility:public"])
-
-py_binary(
- name = "convert_ios_test_reports",
- srcs = ["convert_ios_test_reports.py"],
-)
-
-exports_files([
- "pod_repo_push.sh",
- "pod_trunk_push.sh"
-])
\ No newline at end of file
diff --git a/cocoapods/cocoapod.bzl b/cocoapods/cocoapod.bzl
deleted file mode 100644
index 3c0f6db..0000000
--- a/cocoapods/cocoapod.bzl
+++ /dev/null
@@ -1,196 +0,0 @@
-load("@rules_pkg//:pkg.bzl", "pkg_zip")
-load("@rules_pkg//:mappings.bzl", "pkg_files", "strip_prefix")
-load("//internal:stamp.bzl", _stamp = "stamp")
-
-def assemble_pod(
- name,
- podspec = '',
- srcs = [],
- data = {}
-):
- pkg_files(
- name = "podspec",
- srcs = [podspec],
- strip_prefix = strip_prefix.from_pkg(),
- )
-
- pkg_files(
- name = "srcs",
- srcs = srcs,
- strip_prefix = strip_prefix.from_pkg(),
- )
-
- data_pkgs = []
- for target in data:
- ident = "data_%d" % len(data_pkgs)
- pkg_files(
- name = ident,
- srcs = [target],
- strip_prefix = strip_prefix.from_pkg(),
- prefix = data[target]
- )
- data_pkgs.append(ident)
-
- pkg_zip(
- name = name,
- srcs = ["podspec", "srcs"] + data_pkgs
- )
-
-def _pod_command(repository_ctx):
- # split up the command into an array
- # that way `pod` works, but so does `bundle exec pod`
- return repository_ctx.attr.executable.split(' ')
-
-def _pod_install_impl(repository_ctx):
- repository_ctx.report_progress("Processing Podfile: installing pods and generating BUILD files")
- # Need to get the real path to be able to run pod install since it will have relative path
- # to the development pod
- workspace_root = str(repository_ctx.path(Label('@//:WORKSPACE')).dirname)
- path = workspace_root + str(repository_ctx.path(repository_ctx.attr.podfile))
-
- if ":" in path:
- root = path.split(':')[0]
- else:
- root = path
-
- command = _pod_command(repository_ctx)
-
- repository_ctx.file(
- "_pod_check.sh",
- content = """#!/usr/bin/env bash
-# Immediately exit if any command fails.
-set -e
-cd "{root}"
-'{pod}' {subcommands}
-""".format(
- root = root,
- pod = command[0],
- subcommands = " ".join(command[1:])
- ),
- executable = True
- )
-
- # Install pods
- pod_result = repository_ctx.execute(
- [repository_ctx.path("_pod_check.sh")]
- )
- if pod_result.return_code == 0:
- repository_ctx.file(
- "_pod_install.sh",
- content = """#!/usr/bin/env bash
- # Immediately exit if any command fails.
- set -e
- (cd "{root}"; BAZEL_POD_INSTALL=true "{pod}" {subcommands} install {flags} 1>&2)
- """.format(
- root = root,
- pod = command[0],
- subcommands = " ".join(command[1:]),
- flags = " ".join(repository_ctx.attr.flags)
- ),
- executable = True
- )
-
- # Install pods
- install_result = repository_ctx.execute(
- [repository_ctx.path("_pod_install.sh")]
- )
-
- if install_result.return_code:
- fail("Return: {code} {stderr}".format(code = install_result.return_code, stderr = install_result.stderr))
-
- # Symlink pod folders to external/Pods folder if they have a BUILD.bazel file
- # Pods directory has more folders than just pods that aren't needed for bazel
- for f in repository_ctx.path(root).get_child('Pods').readdir():
- if f.get_child('BUILD.bazel').exists:
- repository_ctx.symlink(
- f.realpath,
- repository_ctx.path(f.basename)
- )
- else:
- print(
- "'{pod} {subcommands}' not found on system, skipping pod install"
- .format(
- pod = command[0],
- subcommands = " ".join(command[1:])
- )
- )
-
-pod_install = repository_rule(
- implementation=_pod_install_impl,
- attrs={
- "podfile": attr.string(
- doc = "The podfile to use for install"
- ),
- "flags": attr.string_list(
- doc = "Flags to append to the pod install command"
- ),
- "executable": attr.string(
- default = "pod",
- doc = "The command to use for cocoapods"
- ),
- }
-)
-
-_TEMPLATE_REPO_PUSH = Label("//cocoapods:pod_repo_push.sh")
-_TEMPLATE_TRUNK_PUSH = Label("//cocoapods:pod_trunk_push.sh")
-
-def _pod_push_impl(ctx):
- output = ctx.actions.declare_file("push.sh")
-
- commands = ctx.attr.executable.split(' ')
-
- ctx.actions.expand_template(
- template = ctx.file._templatePrivateRepo if ctx.attr.repository else ctx.file._templateTrunk,
- output = output,
- is_executable = True,
- substitutions = {
- '{POD}': commands[0],
- '{SUBCOMMANDS}': " ".join(commands[1:]),
- '{PUSH_FLAGS}': " ".join(ctx.attr.pushFlags),
- '{GLOBAL_FLAGS}': " ".join(ctx.attr.globalFlags),
- '{PODSPEC}': ctx.file.podspec.basename,
- '{REPOSITORY}': ctx.attr.repository
- }
- )
-
- return DefaultInfo(
- executable = output,
- runfiles = ctx.runfiles(files = [ctx.file.podspec])
- )
-
-pod_push = rule(
- implementation = _pod_push_impl,
- executable = True,
- attrs = {
- "podspec": attr.label(
- allow_single_file = True,
- mandatory = True,
- doc = "The podspec to push to a specs repo"
- ),
- "executable": attr.string(
- default = "pod",
- doc = "The command to use for cocoapods"
- ),
- "pushFlags": attr.string_list(
- default = [],
- doc = "Flags to append to the push command"
- ),
- "globalFlags": attr.string_list(
- default = [],
- doc = "Flags to append to all pod commands"
- ),
- "repository": attr.string(
- doc = "A private specs repository to push to. Otherwise pushes to trunk"
- ),
- "_templatePrivateRepo": attr.label(
- default = _TEMPLATE_REPO_PUSH,
- allow_single_file = True,
- doc = "The repo push script to use as a template for expansion"
- ),
- "_templateTrunk": attr.label(
- default = _TEMPLATE_TRUNK_PUSH,
- allow_single_file = True,
- doc = "The trunk push script to use as a template for expansion"
- )
- }
-)
\ No newline at end of file
diff --git a/cocoapods/conf.bzl b/cocoapods/conf.bzl
deleted file mode 100644
index 45daac9..0000000
--- a/cocoapods/conf.bzl
+++ /dev/null
@@ -1,2 +0,0 @@
-def cocoapods():
- return
\ No newline at end of file
diff --git a/cocoapods/convert_ios_test_reports.py b/cocoapods/convert_ios_test_reports.py
deleted file mode 100755
index fa59652..0000000
--- a/cocoapods/convert_ios_test_reports.py
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/usr/bin/env python3
-from sys import argv
-from json import loads
-from subprocess import run
-from os import path, getcwd
-from urllib.request import url2pathname
-from urllib.parse import urlparse
-from argparse import ArgumentParser
-
-def getTestActionOutput(bep_file, trainer):
- with open(bep_file) as f:
- zips = []
- for line in f:
- zips += getOutputZips(line)
-
- results = getXcResultPaths(zips)
- convertToJunit(results, trainer)
-
-def getOutputZips(bep_json_string):
- zips = []
- jsonObj = loads(bep_json_string)
- files = jsonObj.get('testResult', {}).get('testActionOutput', [])
- if len(files) > 0:
- outputZips = list(filter(lambda x: x['name'] == 'test.outputs__outputs.zip', files))
- for outputZip in outputZips:
- path = url2pathname(urlparse(outputZip['uri']).path)
- zips.append(path)
- return zips
-
-def getXcResultPaths(zip_paths):
- result_paths = []
- for zip_path in zip_paths:
- folder = path.dirname(zip_path)
- if run(['unzip', '-o', zip_path, '-d', folder]).returncode != 0:
- print('error unzipping ' + zip_path)
- else:
- result_path = path.join(folder, 'test.xcresult')
- if path.exists(result_path):
- result_paths.append(result_path)
- return result_paths
-
-def convertToJunit(xcresult_paths, command):
- for result in xcresult_paths:
- run([command, '--path', result])
-
-if __name__ == '__main__':
- parser = ArgumentParser(description='Run `trainer` xcresult transformer on test outputs')
- parser.add_argument('build_event_json', type=str, help='The Build Event Protocol json file from the test run')
- parser.add_argument('trainer_executable', type=str, help='Path to the `trainer` executable')
-
- args = parser.parse_args()
- getTestActionOutput(args.build_event_json, args.trainer_executable)
\ No newline at end of file
diff --git a/cocoapods/pod_repo_push.sh b/cocoapods/pod_repo_push.sh
deleted file mode 100644
index 7944cf4..0000000
--- a/cocoapods/pod_repo_push.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-set -e
-echo "{POD} {SUBCOMMANDS} repo add {GLOBAL_FLAGS} bazel_publish_repo {REPOSITORY}" 1>&2
-"{POD}" {SUBCOMMANDS} repo add {GLOBAL_FLAGS} bazel_publish_repo {REPOSITORY} 1>&2
-echo "{POD} {SUBCOMMANDS} repo push {GLOBAL_FLAGS} {PUSH_FLAGS} {REPOSITORY} {PODSPEC}" 1>&2
-"{POD}" {SUBCOMMANDS} repo push {GLOBAL_FLAGS} {PUSH_FLAGS} {REPOSITORY} {PODSPEC} 1>&2
-echo "{POD} {SUBCOMMANDS} repo remove {GLOBAL_FLAGS} bazel_publish_repo" 1>&2
-"{POD}" {SUBCOMMANDS} repo remove {GLOBAL_FLAGS} bazel_publish_repo 1>&2
diff --git a/cocoapods/pod_trunk_push.sh b/cocoapods/pod_trunk_push.sh
deleted file mode 100644
index c670277..0000000
--- a/cocoapods/pod_trunk_push.sh
+++ /dev/null
@@ -1 +0,0 @@
-"{POD}" {SUBCOMMANDS} trunk push {GLOBAL_FLAGS} {PUSH_FLAGS} {PODSPEC} 1>&2
\ No newline at end of file
diff --git a/cocoapods/workspace.bzl b/cocoapods/workspace.bzl
deleted file mode 100644
index c457080..0000000
--- a/cocoapods/workspace.bzl
+++ /dev/null
@@ -1,18 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
-load("//internal:maybe.bzl", "maybe")
-def cocoapods():
- maybe(
- http_archive,
- name = "rules_python",
- url = "https://github.com/bazelbuild/rules_python/releases/download/0.5.0/rules_python-0.5.0.tar.gz",
- sha256 = "cd6730ed53a002c56ce4e2f396ba3b3be262fd7cb68339f0377a45e8227fe332",
- )
- maybe(
- http_archive,
- name = "rules_pkg",
- urls = [
- "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.5.1/rules_pkg-0.5.1.tar.gz",
- "https://github.com/bazelbuild/rules_pkg/releases/download/0.5.1/rules_pkg-0.5.1.tar.gz",
- ],
- sha256 = "a89e203d3cf264e564fcb96b6e06dd70bc0557356eb48400ce4b5d97c2c3720d",
- )
\ No newline at end of file
diff --git a/conf.bzl b/conf.bzl
deleted file mode 100644
index 693ef7c..0000000
--- a/conf.bzl
+++ /dev/null
@@ -1,11 +0,0 @@
-load("//bazel:conf.bzl", _skylib = "skylib")
-load("//apple:conf.bzl", _apple = "apple")
-load("//javascript:conf.bzl", _javascript = "javascript")
-load("//kotlin:conf.bzl", _kotlin = "kotlin")
-load("//distribution:conf.bzl", _distribution = "distribution")
-
-skylib = _skylib
-apple = _apple
-distribution = _distribution
-javascript = _javascript
-kotlin = _kotlin
diff --git a/distribution/BUILD b/distribution/BUILD
index ec58116..2192db5 100644
--- a/distribution/BUILD
+++ b/distribution/BUILD
@@ -1,16 +1,18 @@
-load("@io_bazel_rules_kotlin//kotlin:jvm.bzl", "kt_jvm_binary")
-load("@rules_player//maven:parse_coordinates.bzl", "parse_coordinates")
-load(":deps.bzl", "staging_cli")
+load("@rules_kotlin//kotlin:jvm.bzl", "kt_jvm_binary")
# TODO: We should probably build this for the archive
kt_jvm_binary(
name = "nexus-staging-cli",
srcs = ["NexusStagingCli.kt"],
main_class = "com.intuit.player.rules.distribution.NexusStagingCliKt",
- deps = parse_coordinates(staging_cli),
+ deps = [
+ "@rules_player_maven//:com_github_ajalt_clikt_clikt_jvm",
+ "@rules_player_maven//:io_github_gradle_nexus_publish_plugin",
+ "@rules_player_maven//:ch_qos_logback_logback_classic",
+ ],
)
sh_binary(
name = "staged-maven-deploy",
srcs = [":staged-maven-deploy.sh"],
-)
+)
\ No newline at end of file
diff --git a/distribution/conf.bzl b/distribution/conf.bzl
deleted file mode 100644
index d95c0d9..0000000
--- a/distribution/conf.bzl
+++ /dev/null
@@ -1,2 +0,0 @@
-def distribution():
- pass
diff --git a/distribution/deps.bzl b/distribution/deps.bzl
deleted file mode 100644
index f6566cc..0000000
--- a/distribution/deps.bzl
+++ /dev/null
@@ -1,9 +0,0 @@
-load("@vaticle_bazel_distribution//maven:deps.bzl", distribution = "maven_artifacts_with_versions")
-
-staging_cli = [
- "com.github.ajalt.clikt:clikt-jvm:3.4.0",
- "io.github.gradle-nexus:publish-plugin:1.1.0",
- "ch.qos.logback:logback-classic:1.2.11",
-]
-
-maven = distribution + staging_cli
diff --git a/distribution/index.bzl b/distribution/index.bzl
deleted file mode 100644
index 2bd9c6b..0000000
--- a/distribution/index.bzl
+++ /dev/null
@@ -1,22 +0,0 @@
-load("@rules_player//distribution/tar:stamp_tar_files.bzl", "stamp_tar_files")
-load("@bazel_tools//tools/build_defs/pkg:pkg.bzl", "pkg_tar")
-
-def pkg_stamped_tar(name, substitutions = {}, visibility = None, **kwargs):
- """
- Creates a tar.gz file in which all files are stamped with the given substitutions.
- """
- base_name = "%s_base" % name
- base_target = ":%s" % base_name
-
- pkg_tar(
- # TODO: Add visibility here
- name = base_name,
- **kwargs,
- )
-
- stamp_tar_files(
- name = name,
- substitutions = substitutions,
- visibility = visibility,
- tar = base_target
- )
\ No newline at end of file
diff --git a/distribution/maven.bzl b/distribution/maven.bzl
deleted file mode 100644
index 828e7cd..0000000
--- a/distribution/maven.bzl
+++ /dev/null
@@ -1,8 +0,0 @@
-load("@rules_jvm_external//:defs.bzl", "maven_install")
-load("//distribution:deps.bzl", artifacts = "maven")
-
-def install():
- maven_install(
- artifacts = artifacts,
- repositories = ["https://repo1.maven.org/maven2",],
- )
\ No newline at end of file
diff --git a/distribution/tar/BUILD b/distribution/tar/BUILD
deleted file mode 100644
index 88a303b..0000000
--- a/distribution/tar/BUILD
+++ /dev/null
@@ -1,11 +0,0 @@
-load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary")
-
-package(default_visibility = ["//visibility:public"])
-
-nodejs_binary(
- name = "stamp_tar_files",
- entry_point = "stamp_tar_files.js",
- data = [
- "@npm//tar"
- ]
-)
\ No newline at end of file
diff --git a/distribution/tar/stamp_tar_files.bzl b/distribution/tar/stamp_tar_files.bzl
deleted file mode 100644
index aa6f4b1..0000000
--- a/distribution/tar/stamp_tar_files.bzl
+++ /dev/null
@@ -1,50 +0,0 @@
-"""
-Module for stamping a tar.gz file and repackaging it
-"""
-load("@build_bazel_rules_nodejs//:providers.bzl", "run_node", "NODE_CONTEXT_ATTRS", "NodeContextInfo")
-load("@bazel_skylib//lib:paths.bzl", "paths")
-
-_stamp_tar_files = Label("//distribution/tar:stamp_tar_files")
-
-TAR_STAMP_ATTRS = dict(NODE_CONTEXT_ATTRS, **{
- "tar": attr.label( allow_single_file=True ),
- "substitutions": attr.string_dict(),
- "_stamp_tar_files": attr.label(default=_stamp_tar_files, executable=True, cfg="host"),
-})
-
-def _stamp_tar_impl(ctx):
- """
- Untar it, stamp the items, and repack
- """
- stamped_tar = ctx.actions.declare_file(paths.basename(ctx.attr.name + '.tar.gz'))
-
- stamp_inputs = []
- stamp = ctx.attr.node_context_data[NodeContextInfo].stamp
-
- if stamp:
- stamp_inputs = [ctx.info_file]
-
- run_node(
- ctx,
- inputs = ctx.files.tar + stamp_inputs,
- outputs = [stamped_tar],
- arguments = [json.encode({
- "input_file": ctx.file.tar.path,
- "output_file": stamped_tar.path,
- "stamp": ctx.info_file.path if stamp else None,
- "substitutions": ctx.attr.substitutions,
- })],
- executable = "_stamp_tar_files",
- mnemonic = "tar",
- )
-
- return [
- DefaultInfo(
- files = depset([stamped_tar])
- )
- ]
-
-stamp_tar_files = rule(
- implementation = _stamp_tar_impl,
- attrs = TAR_STAMP_ATTRS,
-)
\ No newline at end of file
diff --git a/distribution/tar/stamp_tar_files.js b/distribution/tar/stamp_tar_files.js
deleted file mode 100644
index 5f06969..0000000
--- a/distribution/tar/stamp_tar_files.js
+++ /dev/null
@@ -1,96 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const os = require('os');
-const tar = require('tar');
-
-async function handleSubstitutions(folderOrFile, substitutions) {
- if (Object.keys(substitutions).length === 0) {
- return;
- }
-
- if ((await fs.promises.stat(folderOrFile)).isDirectory()) {
- const files = await fs.promises.readdir(folderOrFile);
- for (const file of files) {
- await handleSubstitutions(path.join(folderOrFile, file), substitutions);
- }
-
- return;
- }
-
- let contents = await fs.promises.readFile(folderOrFile, "utf-8");
- const originalContents = contents;
- for (const key in substitutions) {
- const value = substitutions[key];
- contents = contents.replace(new RegExp(key, "g"), value);
- }
-
- if (contents !== originalContents) {
- await fs.promises.writeFile(folderOrFile, contents);
- }
-}
-
-const repackageTar = async (input_file, output_file, substitutions) => {
- const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'stamping-'));
- const tempTar = path.join(tempDir, "temp.tar");
- const tempOutputDir = path.join(tempDir, "output");
- await fs.promises.mkdir(tempOutputDir, { recursive: true });
-
- await tar.extract({
- cwd: tempOutputDir,
- file: input_file,
- });
-
- await handleSubstitutions(tempOutputDir, substitutions);
-
- await tar.create({
- file: output_file,
- cwd: tempOutputDir,
- gzip: true,
- }, ['.']);
-};
-
-const main = async ([config]) => {
- const { input_file, output_file, stamp, substitutions } = JSON.parse(config);
-
- // Don't do much if we don't have to stamp, just copy it over as is
- if (!stamp) {
- fs.copyFileSync(input_file, output_file);
- return;
- }
-
- // Grab all of the vars to stamp
- // untar the file
- // Replace what needs to be replaced
- // retar it to the new location
- const stampFile = fs.readFileSync(stamp, "utf-8");
-
- // TODO: Should share this as a common module
- stampFile.split("\n").forEach((line) => {
- const firstSpace = line.indexOf(" ");
- const varName = line.substring(0, firstSpace);
- let varVal = line.substring(firstSpace + 1);
-
- // Using the same match as https://github.com/bazelbuild/rules_nodejs/blob/stable/internal/pkg_npm/packager.js#L139
- if (varName.endsWith('_VERSION')) {
- // vscode doesn't let you have `-canary` suffixes
- varVal = varVal.replace(/[^\d.]/g, '');
- }
-
- // Swap out anything referencing the stamped file with the actual value
- Object.keys(substitutions).forEach((key) => {
- if (substitutions[key] === `{${varName}}`) {
- substitutions[key] = varVal;
- }
- });
- });
-
- await repackageTar(input_file, output_file, substitutions);
-};
-
-if (require.main === module) {
- try {
- process.exitCode = main(process.argv.slice(2));
- } catch (e) {
- console.error(process.argv[1], e);
- }
-}
diff --git a/distribution/workspace.bzl b/distribution/workspace.bzl
deleted file mode 100644
index 481ed84..0000000
--- a/distribution/workspace.bzl
+++ /dev/null
@@ -1,11 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
-load("//internal:maybe.bzl", "maybe")
-
-def distribution():
- maybe(
- git_repository,
- name = "vaticle_bazel_distribution",
- remote = "https://github.com/sugarmanz/bazel-distribution",
- commit = "ffccd79b47c743aaee70fe1288f39d1c07931824",
- shallow_since = "1670883396 -0500"
- )
diff --git a/docs/BUILD b/docs/BUILD
new file mode 100644
index 0000000..009bc04
--- /dev/null
+++ b/docs/BUILD
@@ -0,0 +1,8 @@
+load("@aspect_bazel_lib//lib:docs.bzl", "stardoc_with_diff_test", "update_docs")
+
+stardoc_with_diff_test(
+ name = "rules",
+ bzl_library_target = "//javascript:defs",
+)
+
+update_docs(name = "update")
diff --git a/docs/rules.md b/docs/rules.md
new file mode 100644
index 0000000..4fa2239
--- /dev/null
+++ b/docs/rules.md
@@ -0,0 +1,176 @@
+
+
+
+Public API for JavaScript based project rules
+
+
+
+
+## create_package_json
+
+
+create_package_json(name, base_package_json, custom_entrypoints, dependencies, native_bundle,
+ peer_dependencies, placeholder_version, root_package_json, stamp, substitutions)
+
+
+
+
+**ATTRIBUTES**
+
+
+| Name | Description | Type | Mandatory | Default |
+| :------------- | :------------- | :------------- | :------------- | :------------- |
+| name | A unique name for this target. | Name | required | |
+| base_package_json | A .json file to use to add additional properties to the generated package. This can often be a 'package.json' and the entries/outputs/dependencies will be filled in later on. | Label | required | |
+| custom_entrypoints | If custom main/module/types entrypoints are specified and shouldn't be overwritten | Boolean | optional | False
|
+| dependencies | The dependencies of the package. These will be added to the base package.json | List of labels | optional | []
|
+| native_bundle | The name for the native bundle if used | String | optional | ""
|
+| peer_dependencies | The peer dependencies of the package. These will be added to the base package.json | List of labels | optional | []
|
+| placeholder_version | The version to use for the local dependencies in the workspace | String | optional | "0.0.0-PLACEHOLDER"
|
+| root_package_json | The root package.json for the project. Used to get the versions of dependencies and peer-depedencies | Label | required | |
+| stamp | Whether to encode build information into the output. Possible values:
- stamp = 1
: Always stamp the build information into the output, even in [--nostamp](https://docs.bazel.build/versions/main/user-manual.html#flag--stamp) builds. This setting should be avoided, since it is non-deterministic. It potentially causes remote cache misses for the target and any downstream actions that depend on the result. - stamp = 0
: Never stamp, instead replace build information by constant values. This gives good build result caching. - stamp = -1
: Embedding of build information is controlled by the [--[no]stamp](https://docs.bazel.build/versions/main/user-manual.html#flag--stamp) flag. Stamped targets are not rebuilt unless their dependencies change. | Integer | optional | -1
|
+| substitutions | - | Dictionary: String -> String | optional | {}
|
+
+
+
+
+## eslint_test
+
+
+eslint_test(name, data, srcs, node_modules, lint_exts, kwargs)
+
+
+ A test target that runs eslint on the given sources.
+
+**PARAMETERS**
+
+
+| Name | Description | Default Value |
+| :------------- | :------------- | :------------- |
+| name | The name of the target. | none |
+| data | A list of targets to include in the test's data. | []
|
+| srcs | A list of sources to run eslint on. | []
|
+| node_modules | The node_modules target to use for eslint. | "//:node_modules"
|
+| lint_exts | A list of extensions to pass to eslint's --ext flag. | [".ts", ".js", ".tsx", ".jsx"]
|
+| kwargs | Additional arguments to pass to the underlying js_test target. | none |
+
+
+
+
+## js_pipeline
+
+
+js_pipeline(package_name, name, srcs, package_json, root_package_json, vitest_config, tsup_config,
+ node_modules, deps, native_bundle, private, peer_deps, include_packaging_targets,
+ test_deps, lint_deps, build_deps)
+
+
+ The main entry point for any JS/TS project. `js_pipeline` should be the only thing you need in your BUILD file.
+
+Creates a js_library, npm_package, and test targets for a given package.
+
+
+**PARAMETERS**
+
+
+| Name | Description | Default Value |
+| :------------- | :------------- | :------------- |
+| package_name | The name of the package including the scope (@test/bar). | none |
+| name | The name of the package (defaults to the last part of the package_name). | None
|
+| srcs | The source files for the package (defaults to src/*). | None
|
+| package_json | The package.json file for the package (defaults to package.json). | "package.json"
|
+| root_package_json | The root package.json file for the package (defaults to //:package.json). | "//:package.json"
|
+| vitest_config | The vitest config for the package (defaults to None). | ":vitest_config"
|
+| tsup_config | The tsup config for the package (defaults to None). | ":tsup_config"
|
+| node_modules | The base node_modules to pull dependencies from (defaults to //:node_modules). | "//:node_modules"
|
+| deps | The dependencies for the package. | []
|
+| native_bundle | The name for the native bundle global if defined. | None
|
+| private | Whether or not the package should be private (skipping an npm release). | False
|
+| peer_deps | The peer dependencies for the package. | []
|
+| include_packaging_targets | -
| []
|
+| test_deps | The test dependencies for the package. | ["//:vitest_config"]
|
+| lint_deps | The lint dependencies for the package. | ["//:eslint_config"]
|
+| build_deps | The build dependencies for the package. | ["//:tsup_config", "//:typings"]
|
+
+
+
+
+## oclif_pipeline
+
+
+oclif_pipeline(package_name, name, srcs, manifest, package_json, root_package_json, vitest_config,
+ node_modules, deps, peer_deps, test_deps, lint_deps, build_deps)
+
+
+ A modified version of the `js_pipeline` for building oclif CLIs and CLI plugins.
+
+Creates a js_library, npm_package, and test targets for a given package.
+
+
+**PARAMETERS**
+
+
+| Name | Description | Default Value |
+| :------------- | :------------- | :------------- |
+| package_name | The name of the package including the scope (@test/bar). | none |
+| name | The name of the package (defaults to the last part of the package_name). | None
|
+| srcs | The source files for the package (defaults to src/*). | None
|
+| manifest | If an oclif manifest should be generated as part of the build. Not needed for CLI plugins. | True
|
+| package_json | The package.json file for the package (defaults to package.json). | "package.json"
|
+| root_package_json | The root package.json file for the package (defaults to //:package.json). | "//:package.json"
|
+| vitest_config | The vitest config for the package (defaults to None). | ":vitest_config"
|
+| node_modules | The base node_modules to pull dependencies from (defaults to //:node_modules). | "//:node_modules"
|
+| deps | The dependencies for the package. | []
|
+| peer_deps | The peer dependencies for the package. | []
|
+| test_deps | The test dependencies for the package. | ["//:vitest_config"]
|
+| lint_deps | The lint dependencies for the package. | ["//:eslint_config"]
|
+| build_deps | The build dependencies for the package. | ["//:typings"]
|
+
+
+
+
+## tsup_build
+
+
+tsup_build(name, srcs, config, data, node_modules, substitutions, outs, kwargs)
+
+
+Run a vite test.
+
+**PARAMETERS**
+
+
+| Name | Description | Default Value |
+| :------------- | :------------- | :------------- |
+| name | The name of the test. | none |
+| srcs | Inputs to the module | []
|
+| config | The vite config target. | "tsup.config.ts"
|
+| data | The list of data dependencies. | ["//:tsup_config"]
|
+| node_modules | The node_modules target. | "//:node_modules"
|
+| substitutions | Substitutions to stamp during the build. | {"__VERSION__": "{STABLE_VERSION}"}
|
+| outs | Any defined outputs | None
|
+| kwargs | Additional arguments to pass to the test. | none |
+
+
+
+
+## vitest_test
+
+
+vitest_test(name, config, data, node_modules, kwargs)
+
+
+Run a vite test.
+
+**PARAMETERS**
+
+
+| Name | Description | Default Value |
+| :------------- | :------------- | :------------- |
+| name | The name of the test. | none |
+| config | The vite config target. | none |
+| data | The list of data dependencies. | []
|
+| node_modules | The node_modules target. | "//:node_modules"
|
+| kwargs | Additional arguments to pass to the test. | none |
+
+
diff --git a/gh-pages/BUILD b/gh-pages/BUILD
deleted file mode 100644
index 6c3fc4f..0000000
--- a/gh-pages/BUILD
+++ /dev/null
@@ -1,9 +0,0 @@
-load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary")
-
-package(default_visibility = ["//visibility:public"])
-
-nodejs_binary(
- name = "gh_pages_deploy",
- data = [],
- entry_point = ":gh-pages.js",
-)
\ No newline at end of file
diff --git a/gh-pages/README.md b/gh-pages/README.md
deleted file mode 100644
index 23d4c44..0000000
--- a/gh-pages/README.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# GH Pages Deployment
-
-The rules defined here outline a basic pipeline of deploying a folder to an org-level github-pages repo.
-It leverages the same `VERSION` file that many of our distribution rules use, and automatically publishes docs to sub-folders based on their release versions
-
-The repo structure would look something like:
-
-```
-.github.io/
- 1/
- 2/
- latest/
- next/
-```
-
-where numbered folders correspond to the major version of the release, `latest` is an alias for the last main version, and `next` corresponds to the latest canary release.
-
-You must supply a `GH_TOKEN` environment variable that has push rights to the target repo.
-
-
-To use the rule, define it in your docs folder with the data to be published:
-
-```python
-load("@rules_player//gh-pages:index.bzl", "gh_pages")
-
-gh_pages(
- name="deploy_docs",
- source_dir=package_name() + "/src",
- repo="/.github.io",
- data = glob(["src/**"])
-)
-```
-
-and run it during your deployment:
-
-```sh
-bazel run //packages/docs:deploy_docs
-```
\ No newline at end of file
diff --git a/gh-pages/gh-pages.js b/gh-pages/gh-pages.js
deleted file mode 100644
index b8ca7f7..0000000
--- a/gh-pages/gh-pages.js
+++ /dev/null
@@ -1,87 +0,0 @@
-const yargs = require("yargs/yargs");
-const { hideBin } = require("yargs/helpers");
-const fs = require("fs");
-const ghPages = require("gh-pages");
-const path = require("path");
-const tar = require("tar");
-
-async function deployPages(dir, config) {
- return new Promise((resolve, reject) => {
- ghPages.publish(dir, config, (err) => {
- if (err) {
- reject(err);
- } else {
- resolve();
- }
- });
- });
-}
-
-async function expandTarball(tarball) {
- const tempDir = path.join(__dirname, "temp");
- await fs.promises.mkdir(tempDir, { recursive: true });
-
- await tar.extract({
- cwd: tempDir,
- file: tarball,
- });
-
- return tempDir;
-}
-
-const isTarball = (file) =>
- file.endsWith(".tar.gz") || file.endsWith(".tar") || file.endsWith(".tar.xz");
-
-async function main(args) {
- const {
- srcDir,
- repo,
- branch,
- version: version_file,
- gh_user,
- gh_email,
- dest_dir,
- } = args;
-
- const normalized_dest_dir = String(dest_dir);
-
- const version = await fs.promises.readFile(version_file, "utf8");
- let cleanup = false;
- let upload_root = srcDir;
-
- if (isTarball(srcDir)) {
- cleanup = true;
- upload_root = await expandTarball(srcDir);
- }
-
- if (!normalized_dest_dir) {
- throw new Error("Unable to upload without a destination directory");
- }
-
- const config = {
- branch,
- repo: `https://${process.env.GH_TOKEN}@github.com/${repo}.git`,
- dest: normalized_dest_dir,
- dotFiles: true,
- add: false,
- verbose: false,
- message: `Deploying docs for ${version}`,
- user: {
- name: gh_user,
- email: gh_email,
- },
- };
-
- await deployPages(upload_root, config);
-
- if (cleanup) {
- await fs.promises.rm(upload_root, { recursive: true });
- }
-}
-
-const parsed = yargs(hideBin(process.argv)).version(false).parse();
-
-main(parsed).catch((err) => {
- console.error(err);
- process.exitCode = 1;
-});
diff --git a/gh-pages/index.bzl b/gh-pages/index.bzl
deleted file mode 100644
index 9f78212..0000000
--- a/gh-pages/index.bzl
+++ /dev/null
@@ -1,19 +0,0 @@
-load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary", "nodejs_test", "npm_package_bin")
-
-def gh_pages(repo, gh_name = 'intuit-svc', gh_email = 'opensource-svc@intuit.com', source_dir="src", branch = "main", **kwargs):
- nodejs_binary(
- entry_point = "@rules_player//gh-pages:gh-pages.js",
- data = [
- "@npm//gh-pages",
- "//:VERSION"
- ] + kwargs.pop("data", []),
- args = [
- "--srcDir", source_dir,
- "--repo", repo,
- "--branch", branch,
- "--version", "$(location //:VERSION)",
- '--gh_user', gh_name,
- '--gh_email', gh_email,
- ],
- **kwargs
- )
diff --git a/index.bzl b/index.bzl
deleted file mode 100644
index c19660f..0000000
--- a/index.bzl
+++ /dev/null
@@ -1,3 +0,0 @@
-load("//javascript:js_library_pipeline.bzl", _js_library_pipeline = "js_library_pipeline")
-
-js_library_pipeline = _js_library_pipeline
diff --git a/internal/BUILD b/internal/BUILD
index cc23109..df97c04 100644
--- a/internal/BUILD
+++ b/internal/BUILD
@@ -1,8 +1,10 @@
-load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary")
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
-package(default_visibility = ["//visibility:public"])
+exports_files(["defs.bzl"])
-nodejs_binary(
- name = "stamp_replacement",
- entry_point = "stamp_replacement.js",
-)
\ No newline at end of file
+bzl_library(
+ name = "defs",
+ srcs = ["defs.bzl"],
+ visibility = ["//visibility:public"],
+ deps = [],
+)
diff --git a/internal/defs.bzl b/internal/defs.bzl
new file mode 100644
index 0000000..3fe6813
--- /dev/null
+++ b/internal/defs.bzl
@@ -0,0 +1,7 @@
+"""
+Public API for Utility rules
+"""
+
+load("//internal/private:stamp.bzl", _stamp = "stamp")
+
+stamp = _stamp
diff --git a/internal/maybe.bzl b/internal/maybe.bzl
deleted file mode 100644
index 2364fdb..0000000
--- a/internal/maybe.bzl
+++ /dev/null
@@ -1,3 +0,0 @@
-def maybe(rule, name, **kwargs):
- if not native.existing_rule(name):
- rule(name = name, **kwargs)
diff --git a/internal/private/BUILD b/internal/private/BUILD
new file mode 100644
index 0000000..b068c5c
--- /dev/null
+++ b/internal/private/BUILD
@@ -0,0 +1,20 @@
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
+load("@aspect_rules_js//js:defs.bzl", "js_binary")
+
+
+bzl_library(
+ name = "stamp",
+ srcs = ["stamp.bzl"],
+ visibility = [
+ "//docs:__subpackages__",
+ "//internal:__subpackages__",
+ ],
+ deps = [
+ ],
+)
+
+js_binary(
+ name = "stamp_replacement_script",
+ entry_point = "stamp_replacement.js",
+ visibility = ["//visibility:public"],
+)
\ No newline at end of file
diff --git a/internal/stamp.bzl b/internal/private/stamp.bzl
similarity index 53%
rename from internal/stamp.bzl
rename to internal/private/stamp.bzl
index 78e179b..2d25448 100644
--- a/internal/stamp.bzl
+++ b/internal/private/stamp.bzl
@@ -1,29 +1,39 @@
-load("@build_bazel_rules_nodejs//:providers.bzl", "run_node")
+load("@aspect_bazel_lib//lib:stamping.bzl", "STAMP_ATTRS", "maybe_stamp")
-_STAMP = Label("//internal:stamp_replacement")
+_STAMP = Label("//internal/private:stamp_replacement_script")
def _stamp_impl(ctx):
- inputs = [ctx.info_file, ctx.version_file]
+ inputs = []
outputs = []
+
for file in ctx.files.files:
outputs.append(ctx.actions.declare_file(file.basename))
- run_node(
- ctx,
+ stamp = maybe_stamp(ctx)
+ args = {
+ "files": [f.path for f in ctx.files.files],
+ "outputs": [f.path for f in outputs],
+ "substitutions": ctx.attr.substitutions,
+ "stable": ctx.attr.stable
+ }
+
+ if stamp:
+ inputs = [stamp.volatile_status_file, stamp.stable_status_file]
+ args["info_file"] = stamp.stable_status_file.path
+ args["version_file"] = stamp.volatile_status_file.path
+
+
+ ctx.actions.run(
inputs = inputs + ctx.files.files,
outputs = outputs,
arguments = [
- json.encode({
- "info_file": ctx.info_file.path,
- "version_file": ctx.version_file.path,
- "files": [f.path for f in ctx.files.files],
- "outputs": [f.path for f in outputs],
- "substitutions": ctx.attr.substitutions,
- "stable": ctx.attr.stable
- })
+ json.encode(args)
],
- executable = "_stamp_exec"
+ env = {
+ "BAZEL_BINDIR": ctx.bin_dir.path,
+ },
+ executable = ctx.executable._stamp_exec
)
return [
@@ -34,7 +44,7 @@ def _stamp_impl(ctx):
stamp = rule(
implementation = _stamp_impl,
- attrs = {
+ attrs = dict({
"files": attr.label_list(
allow_files = True,
mandatory = True,
@@ -51,7 +61,7 @@ stamp = rule(
default = _STAMP,
executable = True,
doc = "The executable to run the stamping",
- cfg = "host"
+ cfg = "exec"
)
- }
-)
+ }, **STAMP_ATTRS)
+)
\ No newline at end of file
diff --git a/internal/stamp_replacement.js b/internal/private/stamp_replacement.js
similarity index 65%
rename from internal/stamp_replacement.js
rename to internal/private/stamp_replacement.js
index 574b33d..cec43f9 100644
--- a/internal/stamp_replacement.js
+++ b/internal/private/stamp_replacement.js
@@ -12,17 +12,25 @@ const main = ([config]) => {
outputs = []
} = JSON.parse(config);
- const variables = fs.readFileSync(stable ? info_file : version_file)
- .toString()
- .trim()
- .split('\n')
- .map(line => line.split(' '))
- .reduce((acc, cv) => ({...acc, ...{[`{${cv[0]}}`]: cv[1]}}))
+ const fileToRead = stable ? info_file : version_file
+
+ process.chdir(process.env.JS_BINARY__EXECROOT)
+
+ const variables = fileToRead ?
+ fs.readFileSync(fileToRead)
+ .toString()
+ .trim()
+ .split('\n')
+ .map(line => line.split(' '))
+ .reduce((acc, cv) => ({...acc, ...{[`{${cv[0]}}`]: cv[1]}}))
+ : {}
files.forEach( f => {
const outputLocation = outputs.find((o) => o.includes(f))
- if (!outputLocation || !fs.existsSync(f)) { return }
+ if (outputLocation) {
+ fs.mkdirSync(path.dirname(outputLocation), { recursive: true})
+ }
const contents = fs.readFileSync(f).toString()
const newContents = Object.keys(substitutions).reduce((acc, cv) => {
const subValue = variables[substitutions[cv]]
diff --git a/ios/BUILD b/ios/BUILD
new file mode 100644
index 0000000..86ab231
--- /dev/null
+++ b/ios/BUILD
@@ -0,0 +1,12 @@
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
+
+exports_files(["defs.bzl"])
+
+bzl_library(
+ name = "defs",
+ srcs = ["defs.bzl"],
+ visibility = ["//visibility:public"],
+ deps = [
+ "//ios/private:common_utils",
+ ],
+)
diff --git a/ios/defs.bzl b/ios/defs.bzl
new file mode 100644
index 0000000..33014ec
--- /dev/null
+++ b/ios/defs.bzl
@@ -0,0 +1,13 @@
+"""
+Public API for Common iOS utils
+"""
+
+load("//ios/private:common_utils.bzl", _assemble_pod = "assemble_pod", _ios_pipeline = "ios_pipeline")
+
+#export Rule Dependencies here so Player does not need to load dependencies, does not work for rules_ios and rules_apple
+load("@build_bazel_rules_swift//swift:swift.bzl", _swift_library = "swift_library")
+
+assemble_pod = _assemble_pod
+ios_pipeline = _ios_pipeline
+
+swift_library = _swift_library
\ No newline at end of file
diff --git a/ios/private/BUILD b/ios/private/BUILD
new file mode 100644
index 0000000..2de81b9
--- /dev/null
+++ b/ios/private/BUILD
@@ -0,0 +1,14 @@
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
+
+bzl_library(
+ name = "common_utils",
+ srcs = ["common_utils.bzl"],
+ visibility = [
+ "//ios:__subpackages__",
+ ],
+)
+
+exports_files([
+ "ResourceShimTemplate.swift",
+ "Info.plist"
+])
diff --git a/ios/private/Info.plist b/ios/private/Info.plist
new file mode 100644
index 0000000..23f4271
--- /dev/null
+++ b/ios/private/Info.plist
@@ -0,0 +1,41 @@
+
+
+
+
+ CFBundleIdentifier
+ com.intuit.ios.player.ReferenceAssets
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ ReferenceAssets
+ CFBundlePackageType
+ BNDL
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ 1
+ DTCompiler
+ com.apple.compilers.llvm.clang.1_0
+ DTPlatformBuild
+ 20E238
+ DTPlatformName
+ iphonesimulator
+ DTPlatformVersion
+ 16.4
+ DTSDKBuild
+ 20E238
+ DTSDKName
+ iphonesimulator16.4
+ DTXcode
+ 1431
+ DTXcodeBuild
+ 14E300c
+ MinimumOSVersion
+ 13.0
+ UIDeviceFamily
+
+ 1
+ 2
+
+
+
\ No newline at end of file
diff --git a/ios/private/ResourceShimTemplate.swift b/ios/private/ResourceShimTemplate.swift
new file mode 100644
index 0000000..b1bb305
--- /dev/null
+++ b/ios/private/ResourceShimTemplate.swift
@@ -0,0 +1,32 @@
+#if BAZEL_TARGET
+import Foundation
+
+private class BundleFinder {}
+
+extension Foundation.Bundle {
+ /// Returns the resource bundle associated with the current Swift module.
+ static let module: Bundle = {
+ let bundleName = "PLACEHOLDER"
+
+ let candidates: [URL?] = [
+ // Bundle should be present here when the package is linked into an App.
+ Bundle.main.resourceURL,
+
+ // Bundle should be present here when the package is linked into a framework.
+ Bundle(for: BundleFinder.self).resourceURL,
+
+ // For command-line tools.
+ Bundle.main.bundleURL,
+ ]
+
+ for candidate in candidates {
+ let bundlePath = candidate?.appendingPathComponent(bundleName + ".bundle")
+ if let bundle = bundlePath.flatMap(Bundle.init(url:)) {
+ return bundle
+ }
+ }
+
+ fatalError("unable to find bundle named \(bundleName)")
+ }()
+}
+#endif
\ No newline at end of file
diff --git a/ios/private/common_utils.bzl b/ios/private/common_utils.bzl
new file mode 100644
index 0000000..82be595
--- /dev/null
+++ b/ios/private/common_utils.bzl
@@ -0,0 +1,188 @@
+load("@rules_pkg//:pkg.bzl", "pkg_zip")
+load("@rules_pkg//:mappings.bzl", "pkg_files", "strip_prefix")
+load("@build_bazel_rules_apple//apple:resources.bzl", "apple_resource_bundle")
+load("@build_bazel_rules_swift//swift:swift.bzl", "swift_library")
+load("@build_bazel_rules_ios//rules:test.bzl", "ios_unit_test", "ios_ui_test")
+
+def ios_bundle_module_shim(name):
+ native.genrule(
+ name = name + "ResourceShim",
+ srcs = ["@rules_player//ios/private:ResourceShimTemplate.swift"],
+ outs = [name + "ResourceShim.swift"],
+ cmd = "sed 's/PLACEHOLDER/" + name + "/g' < $< > $@"
+ )
+
+
+def assemble_pod(
+ name,
+ podspec = '',
+ srcs = [],
+ data = {}
+):
+ pkg_files(
+ name = "podspec",
+ srcs = [podspec],
+ strip_prefix = strip_prefix.from_pkg(),
+ )
+
+ pkg_files(
+ name = "srcs",
+ srcs = srcs,
+ strip_prefix = strip_prefix.from_pkg(),
+ )
+
+ data_pkgs = []
+ for target in data:
+ ident = "data_%d" % len(data_pkgs)
+ pkg_files(
+ name = ident,
+ srcs = [target],
+ strip_prefix = strip_prefix.from_pkg(),
+ prefix = data[target]
+ )
+ data_pkgs.append(ident)
+
+ pkg_zip(
+ name = name,
+ srcs = ["podspec", "srcs"] + data_pkgs
+ )
+
+def ios_pipeline(
+ name,
+ resources,
+ deps,
+ test_deps,
+ hasUnitTests,
+ hasViewInspectorTests,
+ test_host,
+ hasUITests = False,
+ needsXCTest = False,
+ bundle_name = None,
+
+):
+ """Packages source files, creates swift library and tests for a swift PlayerUI plugin
+
+ Args:
+ name: The base name of this package
+ Targets created by this macro prefix the name with 'PlayerUI'
+ resources: Any resources to include in a resource bundle
+ This will create a Bundle.module shim as well automatically
+ deps: Dependencies for the plugin
+ test_deps: Dependencies for the tests of this plugin
+ hasUnitTests: Whether or not to generate ios_unit_test tests
+ hasViewInspectorTests: Whether or not to generate ios_ui_test tests that require ViewInspector
+ test_host: The target where the tests should run (Demo app target)
+ hasUITests: Whether or not to generate ios_ui_test tests
+ needsXCTest: Set the 'testonly' attribute on swift_library
+ bundle_name: Pptionally override the name used for the resource bundle
+ """
+
+ # if we are backed by a JS package, these attributes
+ # will be populated to add to the sources/resources of the
+ # swift_library
+ data = []
+ resourceSources = []
+
+ bundleName = bundle_name if bundle_name != None else name
+
+ if len(resources) > 0:
+ apple_resource_bundle(
+ name = name + "ResourceBundle",
+ bundle_name = bundleName,
+ bundle_id = "com.intuit.ios.player.resources."+name,
+ resources = resources,
+ )
+
+ ios_bundle_module_shim(bundleName)
+ data.append(":" + name + "ResourceBundle")
+ resourceSources.append(":" + bundleName + "ResourceShim")
+
+ # Group up files to be used in swift_library
+ # and in //:PlayerUI_Pod which builds the zip of sources
+ pkg_files(
+ name = name + "_Sources",
+ srcs = native.glob(["Sources/**/*.swift"]),
+ strip_prefix = strip_prefix.from_pkg(),
+ visibility = ["//visibility:public"],
+ )
+
+ swift_library(
+ name = name,
+ module_name = name,
+ srcs = [":" + name + "_Sources"] + resourceSources,
+ visibility = ["//visibility:public"],
+ testonly = needsXCTest,
+ deps = deps,
+ data = data,
+ # this define makes Bundle.module extension work from ios_bundle_module_shim
+ defines = ["BAZEL_TARGET"]
+ )
+
+ # Packages not specific to SwiftUI don't need ViewInspector
+ # so it can just be regular unit tests
+ if hasUnitTests == True:
+ ios_unit_test(
+ name = name + "Tests",
+ srcs = native.glob(["Tests/**/*.swift"]),
+ minimum_os_version = "14.0",
+ deps = [
+ ":" + name
+ ] + deps + test_deps,
+ visibility = ["//visibility:public"]
+ )
+ # ViewInspector has to run as a UI Test to work properly
+ # Some SwiftUI plugins need ViewInspector
+ if hasViewInspectorTests == True:
+ ios_ui_test(
+ name = name + "ViewInspectorTests",
+ srcs = native.glob(["ViewInspector/**/*.swift"]),
+ minimum_os_version = "14.0",
+ deps = [
+ "@swiftpkg_viewinspector//:Sources_ViewInspector",
+ ":" + name
+ ] + deps + test_deps,
+ visibility = ["//visibility:public"],
+ test_host = test_host
+ )
+
+ #Some SwiftUI plugins have UI tests without ViewInspector
+ if hasUITests == True:
+ ios_ui_test(
+ name = name + "UITests",
+ srcs = native.glob(["UITests/**/*.swift"]),
+ minimum_os_version = "14.0",
+ deps = [
+ ] + deps + test_deps,
+ visibility = ["//visibility:public"],
+ test_host = test_host
+ )
+
+ # Runs SwiftLint as a test calling the genrule target which outputs the result of linting
+ native.sh_test(
+ name = name + "SwiftLint",
+ srcs = [":"+ name + "_Lint"],
+ visibility = ["//visibility:public"],
+ )
+
+ # Runs the SwiftLint as part of the build, if lint fails with serious violations defer the results for the test
+ native.genrule(
+ name = name + "_Lint",
+ tools = [
+ "@SwiftLint//:swiftlint"
+ ],
+ srcs = [":" + name + "_Sources"] + ["//:.swiftlint.yml"],
+ outs = ["output.sh"],
+ executable = True,
+ testonly = True,
+ visibility = ["//visibility:public"],
+ cmd="""
+ echo `$(location @SwiftLint//:swiftlint) --config $(location //:.swiftlint.yml) $(SRCS) || true` > lint_results.txt
+ LINT=$$(cat lint_results.txt)
+
+ echo '#!/bin/bash' > $(location output.sh)
+ echo "echo '$$LINT'" > $(location output.sh)
+
+ LINESWITHERROR=$$(echo grep error lint_results.txt || true)
+ echo "exit $$(($$LINESWITHERROR) | wc -l)" >> $(location output.sh)
+ """
+ )
\ No newline at end of file
diff --git a/javascript/BUILD b/javascript/BUILD
index e69de29..5416b01 100644
--- a/javascript/BUILD
+++ b/javascript/BUILD
@@ -0,0 +1,15 @@
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
+
+exports_files(["defs.bzl"])
+
+bzl_library(
+ name = "defs",
+ srcs = ["defs.bzl"],
+ visibility = ["//visibility:public"],
+ deps = [
+ "//javascript/private:eslint",
+ "//javascript/private:js_pipeline",
+ "//javascript/private:oclif",
+ "//javascript/private:vitest",
+ ],
+)
diff --git a/javascript/README.md b/javascript/README.md
deleted file mode 100644
index c61e9f9..0000000
--- a/javascript/README.md
+++ /dev/null
@@ -1,101 +0,0 @@
-# Javascript Pipeline
-
-The JS rules/macros defined here are extension of the [rules_nodejs](https://github.com/bazelbuild/rules_nodejs) provided by `bazel`.
-They're intended to make the setup of common development patterns for JS libraries _super_ easy.
-
-The main integration point is the `js_library_pipeline` macro. It will:
- - Generate a `package.json` based on the dependencies provided (pulling versions from a root `package.json`)
- - Create the proper outputs for tree-shaking support:
- - `dist/index.cjs.js` - CommonJS output file, used in tests/node
- - `dist/index.esm.js` - ESM output, used in bundlers (webpack, etc)
- - `dist/index.d.ts` - TS type output (if using typescript)
- - Add a `:unit` test target using `jest`
- - Add a `:lint` test target using `eslint`
-
-Each of these steps can be customized as needed, but we try to minimize the need for it.
-
-## How to use the pipeline rule
-
-### Setup
-
-There's a bit of setup involved before you're able to leverage this pipeline.
-
-First add this repo as a target:
-
-```python
-load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
-
-git_repository(
- name = "player_common",
- branch = "main",
- remote = "https://github.com/player-ui/rules_player",
-)
-```
-
-Load the dependent libraries
-
-```python
-load("@rules_player//:workspace.bzl", "deps")
-deps()
-```
-Setup the libraries that we just loaded
-
-```python
-load("@rules_player//:conf.bzl", "javascript")
-
-javascript()
-```
-
-See the `ts-monorepo` example for all the files needed to get up and running
-
-
-
-## Rules
-
-### create_package_json
-
-Used to generate a `package.json` for a module, including automatically pulling in the correct versions of any dependent libraries.
-
-To extend the generated `package.json` there's 2 options:
-
-- Pass a `base_package_json` label to a `.json` file. This will be used to override/extend anything defined by the generated file.
-- Pass the `additional_properties` attribute, which is a JSON string of a similar set of features.
-
-The generation and precedence can be though of as:
-
-```js
-{
- ...generated,
- ...base_package_json,
- ...additional_properties
-}
-```
-
-### create_contributors
-
-The `create_contributors` rule generates the `package.json` formatted contributors list from an `.all-contributorsrc` file
-
-```python
-load("@rules_player//javascript/package_json:index.bzl", "create_contributors")
-
-create_contributors(
- name = "pkg_json_contrib",
- all_contributors = "//:.all-contributorsrc",
-)
-```
-
-### merge_json
-
-The `merge_json` rule will merge together properties from multiple JSON files into one. This can be used as an input to the `base_package_json` attribute.
-
-```python
-load("@rules_player//javascript/package_json:index.bzl", "merge_json")
-
-merge_json(
- name = "pkg_json_template",
- srcs = [
- "package-template.json",
- ":pkg_json_contrib",
- ]
-)
-```
\ No newline at end of file
diff --git a/javascript/conf.bzl b/javascript/conf.bzl
deleted file mode 100644
index ccd761f..0000000
--- a/javascript/conf.bzl
+++ /dev/null
@@ -1,4 +0,0 @@
-load("//distribution:conf.bzl", "distribution")
-
-def javascript():
- distribution()
diff --git a/javascript/defs.bzl b/javascript/defs.bzl
new file mode 100644
index 0000000..1528ba5
--- /dev/null
+++ b/javascript/defs.bzl
@@ -0,0 +1,17 @@
+"""
+Public API for JavaScript based project rules
+"""
+
+load("//javascript/private:js_pipeline.bzl", _js_pipeline = "js_pipeline")
+load("//javascript/private:eslint.bzl", _eslint_test = "eslint_test")
+load("//javascript/private:vitest.bzl", _vitest_test = "vitest_test")
+load("//javascript/private:package_json.bzl", _create_package_json = "create_package_json")
+load("//javascript/private:tsup.bzl", _tsup_build = "tsup_build")
+load("//javascript/private:oclif.bzl", _oclif_pipeline = "oclif_pipeline")
+
+js_pipeline = _js_pipeline
+eslint_test = _eslint_test
+vitest_test = _vitest_test
+tsup_build = _tsup_build
+create_package_json = _create_package_json
+oclif_pipeline = _oclif_pipeline
diff --git a/javascript/examples/ts-monorepo/.bazelignore b/javascript/examples/ts-monorepo/.bazelignore
index cab4566..5989ddc 100644
--- a/javascript/examples/ts-monorepo/.bazelignore
+++ b/javascript/examples/ts-monorepo/.bazelignore
@@ -1,2 +1,4 @@
.cache
-node_modules
\ No newline at end of file
+node_modules
+packages/module-a/node_modules
+packages/module-b/node_modules
\ No newline at end of file
diff --git a/javascript/examples/ts-monorepo/.bazelrc b/javascript/examples/ts-monorepo/.bazelrc
index af87cbb..dcef39a 100644
--- a/javascript/examples/ts-monorepo/.bazelrc
+++ b/javascript/examples/ts-monorepo/.bazelrc
@@ -1 +1,6 @@
-build:release --stamp --workspace_status_command=./scripts/bazel-stamp-vars.sh
\ No newline at end of file
+common --enable_bzlmod
+build:release --stamp --workspace_status_command=$(pwd)/workspace_status.sh
+
+build --@aspect_rules_ts//ts:skipLibCheck=always
+fetch --@aspect_rules_ts//ts:skipLibCheck=always
+query --@aspect_rules_ts//ts:skipLibCheck=always
\ No newline at end of file
diff --git a/javascript/examples/ts-monorepo/.bazelversion b/javascript/examples/ts-monorepo/.bazelversion
new file mode 100644
index 0000000..c0be8a7
--- /dev/null
+++ b/javascript/examples/ts-monorepo/.bazelversion
@@ -0,0 +1 @@
+6.4.0
\ No newline at end of file
diff --git a/javascript/examples/ts-monorepo/.eslintrc.js b/javascript/examples/ts-monorepo/.eslintrc.js
index c29c252..050c090 100644
--- a/javascript/examples/ts-monorepo/.eslintrc.js
+++ b/javascript/examples/ts-monorepo/.eslintrc.js
@@ -1,13 +1,7 @@
module.exports = {
- env: { jest: true, browser: true },
-
- parser: '@babel/eslint-parser',
-
- extends: [
- 'eslint:recommended'
- ],
-
- plugins: [
- 'jest',
- ],
-}
\ No newline at end of file
+ extends: ['plugin:@typescript-eslint/recommended'],
+ parser: '@typescript-eslint/parser',
+ ignorePatterns: ['node_modules', 'dist', '__snapshots__'],
+ plugins: ['@typescript-eslint'],
+ root: true,
+};
diff --git a/javascript/examples/ts-monorepo/BUILD b/javascript/examples/ts-monorepo/BUILD
index c78c97f..00c9492 100644
--- a/javascript/examples/ts-monorepo/BUILD
+++ b/javascript/examples/ts-monorepo/BUILD
@@ -1,8 +1,58 @@
+load("@npm//:defs.bzl", "npm_link_all_packages")
+load("@aspect_rules_js//js:defs.bzl", "js_library")
+
+package(default_visibility = ["//visibility:public"])
+
+npm_link_all_packages(
+ name = "node_modules",
+)
+
exports_files([
"package.json",
- "tsconfig.json",
- "jest.config.js",
- "babel.config.js",
- ".eslintrc.js",
"VERSION",
])
+
+js_library(
+ name = "typings",
+ srcs = [],
+ visibility = ["//visibility:public"],
+ deps = [],
+)
+
+js_library(
+ name = "vitest_config",
+ testonly = True,
+ srcs = [
+ "vitest.config.ts",
+ ],
+ visibility = ["//visibility:public"],
+ deps = [
+ "//:node_modules/vitest",
+ ],
+)
+
+js_library(
+ name = "eslint_config",
+ testonly = True,
+ srcs = [
+ ".eslintrc.js",
+ ],
+ visibility = ["//visibility:public"],
+ deps = [
+ ":node_modules/@typescript-eslint/eslint-plugin",
+ ":node_modules/@typescript-eslint/parser",
+ ":node_modules/eslint",
+ ],
+)
+
+js_library(
+ name = "tsup_config",
+ srcs = [
+ "tsup.config.ts",
+ ],
+ visibility = ["//visibility:public"],
+ deps = [
+ ":node_modules/tsup",
+ ":node_modules/typescript",
+ ],
+)
diff --git a/javascript/examples/ts-monorepo/MODULE.bazel b/javascript/examples/ts-monorepo/MODULE.bazel
new file mode 100644
index 0000000..41bc5a4
--- /dev/null
+++ b/javascript/examples/ts-monorepo/MODULE.bazel
@@ -0,0 +1,36 @@
+module(name = "ts-monorepo-example")
+
+bazel_dep(name = "rules_player")
+local_path_override(module_name = "rules_player", path = "../../..")
+
+bazel_dep(name = "bazel_skylib", version = "1.4.1")
+bazel_dep(name = "aspect_rules_js", version = "1.33.1")
+bazel_dep(name = "aspect_rules_rollup", version = "1.0.0")
+bazel_dep(name = "rules_nodejs", version = "5.8.2")
+bazel_dep(name = "aspect_rules_ts", version = "2.1.0")
+
+rules_ts_ext = use_extension(
+ "@aspect_rules_ts//ts:extensions.bzl",
+ "ext",
+ dev_dependency = True,
+)
+
+rules_ts_ext.deps()
+
+use_repo(rules_ts_ext, "npm_typescript")
+
+node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node")
+node.toolchain(node_version = "16.4.2")
+
+npm = use_extension("@aspect_rules_js//npm:extensions.bzl", "npm")
+
+npm.npm_translate_lock(
+ name = "npm",
+ pnpm_lock = "//:pnpm-lock.yaml",
+ data = [
+ "//:package.json",
+ ],
+ verify_node_modules_ignored = "//:.bazelignore",
+)
+
+use_repo(npm, "npm")
diff --git a/javascript/examples/ts-monorepo/WORKSPACE b/javascript/examples/ts-monorepo/WORKSPACE
index 692d9bd..21078e7 100644
--- a/javascript/examples/ts-monorepo/WORKSPACE
+++ b/javascript/examples/ts-monorepo/WORKSPACE
@@ -1,34 +1 @@
-workspace(
- name = "javascript",
- managed_directories = {
- "@npm": ["./node_modules"],
- },
-)
-
-local_repository(
- name = "rules_player",
- path = "../../..",
-)
-
-load("@rules_player//bazel:workspace.bzl", "skylib")
-skylib()
-
-load("@rules_player//javascript:workspace.bzl", deps = "javascript")
-deps()
-
-load("@rules_player//javascript:conf.bzl", "javascript")
-javascript()
-
-load("@build_bazel_rules_nodejs//:index.bzl", "node_repositories", "yarn_install")
-
-node_repositories(
- node_version = "16.12.0",
- yarn_version = "1.22.17",
-)
-
-yarn_install(
- name = "npm",
- package_json = "//:package.json",
- strict_visibility = False,
- yarn_lock = "//:yarn.lock",
-)
+workspace(name = "ts-monorepo-example")
\ No newline at end of file
diff --git a/javascript/examples/ts-monorepo/babel.config.js b/javascript/examples/ts-monorepo/babel.config.js
deleted file mode 100644
index fb96047..0000000
--- a/javascript/examples/ts-monorepo/babel.config.js
+++ /dev/null
@@ -1,6 +0,0 @@
-module.exports = (api) => ({
- presets: [
- ['@babel/preset-env', { modules: api.env('module') ? false : 'auto' }],
- require.resolve('@babel/preset-typescript'),
- ]
-})
\ No newline at end of file
diff --git a/javascript/examples/ts-monorepo/index.bzl b/javascript/examples/ts-monorepo/index.bzl
deleted file mode 100644
index 9ccf2ff..0000000
--- a/javascript/examples/ts-monorepo/index.bzl
+++ /dev/null
@@ -1,35 +0,0 @@
-load("@rules_player//:index.bzl", _js_library_pipeline = "js_library_pipeline")
-
-DATA = []
-TEST_DATA = [
- "//:babel.config.js",
- "@npm//@babel/preset-typescript",
- "@npm//@babel/preset-env",
-]
-BUILD_DATA = []
-LINT_DATA = [
- "//:.eslintrc.js",
- "@npm//eslint-plugin-jest",
- "@npm//@babel/eslint-parser"
-]
-
-def js_library_pipeline(
- name,
- srcs,
- entry,
- dependencies = [],
- peer_dependencies = [],
- **kwargs):
- _js_library_pipeline(
- name = name,
- srcs = srcs,
- entry = entry,
- dependencies = dependencies,
- peer_dependencies = peer_dependencies,
- eslint_config = None,
- data = DATA,
- test_data = TEST_DATA,
- build_data = BUILD_DATA,
- lint_data = LINT_DATA,
- **kwargs
- )
diff --git a/javascript/examples/ts-monorepo/jest.config.js b/javascript/examples/ts-monorepo/jest.config.js
deleted file mode 100644
index e7779ea..0000000
--- a/javascript/examples/ts-monorepo/jest.config.js
+++ /dev/null
@@ -1,16 +0,0 @@
-const path = require('path');
-
-module.exports = {
- moduleFileExtensions: ['js', 'jsx', 'json', 'ts', 'tsx'],
- haste: {
- enableSymlinks: true,
- },
- watchman: false,
- passWithNoTests: true,
- transform: {
- '^.+\\.[jt]sx?$': [
- 'babel-jest',
- { configFile: path.join(__dirname, 'babel.config.js') },
- ],
- },
-}
\ No newline at end of file
diff --git a/javascript/examples/ts-monorepo/package.json b/javascript/examples/ts-monorepo/package.json
index 66c86b2..452a025 100644
--- a/javascript/examples/ts-monorepo/package.json
+++ b/javascript/examples/ts-monorepo/package.json
@@ -1,22 +1,17 @@
{
"dependencies": {
- "@babel/eslint-parser": "^7.15.8",
- "@babel/preset-env": "^7.16.4",
- "@babel/preset-typescript": "^7.16.0",
- "@rollup/plugin-image": "^2.1.1",
- "@rollup/plugin-json": "^4.1.0",
- "babel-jest": "^27.4.0",
- "esbuild": "^0.14.0",
- "eslint": "^8.3.0",
- "eslint-plugin-jest": "^25.2.2",
- "jest": "^27.4.0",
- "rollup": "^2.60.1",
- "rollup-plugin-dts": "^4.0.1",
- "rollup-plugin-esbuild": "^4.7.2",
- "rollup-plugin-styles": "^4.0.0",
- "typescript": "^4.5.2"
+ "@types/node": "^20.11.18",
+ "@typescript-eslint/eslint-plugin": "^5.1.0",
+ "@typescript-eslint/parser": "^5.1.0",
+ "eslint": "^8.54.0",
+ "tslib": "^2.6.2",
+ "tsup": "^8.0.1",
+ "typescript": "^4.5.2",
+ "vitest": "^0.34.6"
},
- "volta": {
- "node": "14.18.3"
- }
+ "engines": {
+ "node": "^16.14.0",
+ "pnpm": "^8.9.2"
+ },
+ "packageManager": "pnpm@8.9.2"
}
diff --git a/javascript/examples/ts-monorepo/packages/module-a/BUILD b/javascript/examples/ts-monorepo/packages/module-a/BUILD
index 58d12bb..73b2ca9 100644
--- a/javascript/examples/ts-monorepo/packages/module-a/BUILD
+++ b/javascript/examples/ts-monorepo/packages/module-a/BUILD
@@ -1,17 +1,10 @@
-load("@build_bazel_rules_nodejs//:index.bzl", "generated_file_test")
-load("//:index.bzl", "js_library_pipeline")
+load("@rules_player//javascript:defs.bzl", "js_pipeline")
-js_library_pipeline(
- name = "@test/module-a",
- srcs = glob(["src/*"]) + ["README.md"],
- entry = "./src/index.ts",
- peer_dependencies = [
- "@npm//typescript",
+js_pipeline(
+ package_name = "@test/module-a",
+ tsup_config = "tsup.config.ts",
+ vitest_config = "vitest.config.ts",
+ deps = [
+ "//:node_modules/@types/node",
],
)
-
-generated_file_test(
- name = "package-json-test",
- src = "package.test.json",
- generated = ":@test/module-a-package_json",
-)
diff --git a/javascript/examples/ts-monorepo/packages/module-a/package.json b/javascript/examples/ts-monorepo/packages/module-a/package.json
new file mode 100644
index 0000000..f5d9dcc
--- /dev/null
+++ b/javascript/examples/ts-monorepo/packages/module-a/package.json
@@ -0,0 +1,20 @@
+{
+ "name": "@test/module-a",
+ "version": "0.0.0-PLACEHOLDER",
+ "main": "dist/cjs/index.cjs",
+ "module": "dist/index.legacy-esm.js",
+ "types": "dist/index.d.ts",
+ "sideEffects": false,
+ "exports": {
+ "./package.json": "./package.json",
+ ".": {
+ "types": "./dist/index.d.ts",
+ "import": "./dist/index.mjs",
+ "default": "./dist/cjs/index.cjs"
+ }
+ },
+ "files": [
+ "dist",
+ "src"
+ ]
+}
diff --git a/javascript/examples/ts-monorepo/packages/module-a/package.test.json b/javascript/examples/ts-monorepo/packages/module-a/package.test.json
deleted file mode 100644
index 76916e6..0000000
--- a/javascript/examples/ts-monorepo/packages/module-a/package.test.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "name": "@test/module-a",
- "version": "0.0.0-PLACEHOLDER",
- "private": false,
- "publishConfig": {
- "registry": "https://registry.npmjs.org"
- },
- "peerDependencies": {
- "typescript": "^4.5.2"
- },
- "dependencies": {},
- "main": "dist/index.cjs.js",
- "module": "dist/index.esm.js",
- "typings": "dist/index.d.ts"
-}
\ No newline at end of file
diff --git a/javascript/examples/ts-monorepo/packages/module-a/src/index.test.ts b/javascript/examples/ts-monorepo/packages/module-a/src/index.test.ts
index 5297f8b..2818c0a 100644
--- a/javascript/examples/ts-monorepo/packages/module-a/src/index.test.ts
+++ b/javascript/examples/ts-monorepo/packages/module-a/src/index.test.ts
@@ -1,3 +1,4 @@
+import { test, expect } from "vitest";
import { helloWorld } from ".";
test("expect return", () => {
diff --git a/javascript/examples/ts-monorepo/packages/module-a/src/index.ts b/javascript/examples/ts-monorepo/packages/module-a/src/index.ts
index 3753f09..47fbb03 100644
--- a/javascript/examples/ts-monorepo/packages/module-a/src/index.ts
+++ b/javascript/examples/ts-monorepo/packages/module-a/src/index.ts
@@ -1,4 +1,11 @@
-export const TEST = "__VERSION__";
+declare global {
+ const __VERSION__: string;
+}
+
+export const TEST_sub =
+ typeof __VERSION__ !== "undefined" ? __VERSION__ : "__Placeholder__";
+export const TEST_process = process.env.STABLE_VERSION;
+
export function helloWorld() {
return "hello world";
}
diff --git a/javascript/examples/ts-monorepo/packages/module-a/tsup.config.ts b/javascript/examples/ts-monorepo/packages/module-a/tsup.config.ts
new file mode 100644
index 0000000..a4ebb2b
--- /dev/null
+++ b/javascript/examples/ts-monorepo/packages/module-a/tsup.config.ts
@@ -0,0 +1,3 @@
+import { createConfig } from "../../tsup.config";
+
+export default createConfig();
diff --git a/javascript/examples/ts-monorepo/packages/module-a/vitest.config.ts b/javascript/examples/ts-monorepo/packages/module-a/vitest.config.ts
new file mode 100644
index 0000000..867e18b
--- /dev/null
+++ b/javascript/examples/ts-monorepo/packages/module-a/vitest.config.ts
@@ -0,0 +1,9 @@
+import { defineConfig, mergeConfig } from 'vitest/config';
+import baseConfig from '../../vitest.config';
+
+export default mergeConfig(
+ baseConfig,
+ defineConfig({
+ test: {},
+ })
+);
diff --git a/javascript/examples/ts-monorepo/packages/module-b/BUILD b/javascript/examples/ts-monorepo/packages/module-b/BUILD
index 18cd609..31d3d43 100644
--- a/javascript/examples/ts-monorepo/packages/module-b/BUILD
+++ b/javascript/examples/ts-monorepo/packages/module-b/BUILD
@@ -1,18 +1,13 @@
-load("@build_bazel_rules_nodejs//:index.bzl", "generated_file_test")
-load("//:index.bzl", "js_library_pipeline")
+load("@rules_player//javascript:defs.bzl", "js_pipeline")
+load("@npm//:defs.bzl", "npm_link_all_packages")
-js_library_pipeline(
- name = "@test/module-b",
- srcs = glob(["files/**"]),
- bin_entry = "./files/cli.ts",
- dependencies = [
- "//packages/module-a:@test/module-a",
- ],
- entry = "./files/entry.ts",
-)
+npm_link_all_packages(name = "node_modules")
-generated_file_test(
- name = "package-json-test",
- src = "package.test.json",
- generated = ":@test/module-b-package_json",
+js_pipeline(
+ package_name = "@test/module-b",
+ tsup_config = "tsup.config.ts",
+ vitest_config = "vitest.config.ts",
+ deps = [
+ ":node_modules/@test/module-a",
+ ],
)
diff --git a/javascript/examples/ts-monorepo/packages/module-b/package.json b/javascript/examples/ts-monorepo/packages/module-b/package.json
new file mode 100644
index 0000000..5e66bc4
--- /dev/null
+++ b/javascript/examples/ts-monorepo/packages/module-b/package.json
@@ -0,0 +1,23 @@
+{
+ "name": "@test/module-b",
+ "version": "0.0.0-PLACEHOLDER",
+ "main": "dist/cjs/index.cjs",
+ "module": "dist/index.legacy-esm.js",
+ "types": "dist/index.d.ts",
+ "sideEffects": false,
+ "exports": {
+ "./package.json": "./package.json",
+ ".": {
+ "types": "./dist/index.d.ts",
+ "import": "./dist/index.mjs",
+ "default": "./dist/cjs/index.cjs"
+ }
+ },
+ "files": [
+ "dist",
+ "src"
+ ],
+ "dependencies": {
+ "@test/module-a": "workspace:*"
+ }
+}
diff --git a/javascript/examples/ts-monorepo/packages/module-b/files/__tests__/entry.test.ts b/javascript/examples/ts-monorepo/packages/module-b/src/__tests__/entry.test.ts
similarity index 74%
rename from javascript/examples/ts-monorepo/packages/module-b/files/__tests__/entry.test.ts
rename to javascript/examples/ts-monorepo/packages/module-b/src/__tests__/entry.test.ts
index e135e0f..2e0fff2 100644
--- a/javascript/examples/ts-monorepo/packages/module-b/files/__tests__/entry.test.ts
+++ b/javascript/examples/ts-monorepo/packages/module-b/src/__tests__/entry.test.ts
@@ -1,3 +1,4 @@
+import { test, expect } from "vitest";
import { sayHi } from "../entry";
test("works", () => {
diff --git a/javascript/examples/ts-monorepo/packages/module-b/files/cli.ts b/javascript/examples/ts-monorepo/packages/module-b/src/cli.ts
similarity index 100%
rename from javascript/examples/ts-monorepo/packages/module-b/files/cli.ts
rename to javascript/examples/ts-monorepo/packages/module-b/src/cli.ts
diff --git a/javascript/examples/ts-monorepo/packages/module-b/files/entry.ts b/javascript/examples/ts-monorepo/packages/module-b/src/entry.ts
similarity index 65%
rename from javascript/examples/ts-monorepo/packages/module-b/files/entry.ts
rename to javascript/examples/ts-monorepo/packages/module-b/src/entry.ts
index b7ec215..9dfd0f1 100644
--- a/javascript/examples/ts-monorepo/packages/module-b/files/entry.ts
+++ b/javascript/examples/ts-monorepo/packages/module-b/src/entry.ts
@@ -1,5 +1,5 @@
import { helloWorld } from "@test/module-a";
-export const sayHi = (name: string) => {
+export function sayHi(name: string) {
return `${name}: ${helloWorld()}`;
-};
+}
diff --git a/android/BUILD b/javascript/examples/ts-monorepo/packages/module-b/src/index.ts
similarity index 100%
rename from android/BUILD
rename to javascript/examples/ts-monorepo/packages/module-b/src/index.ts
diff --git a/javascript/examples/ts-monorepo/packages/module-b/tsup.config.ts b/javascript/examples/ts-monorepo/packages/module-b/tsup.config.ts
new file mode 100644
index 0000000..a4ebb2b
--- /dev/null
+++ b/javascript/examples/ts-monorepo/packages/module-b/tsup.config.ts
@@ -0,0 +1,3 @@
+import { createConfig } from "../../tsup.config";
+
+export default createConfig();
diff --git a/javascript/examples/ts-monorepo/packages/module-b/vitest.config.ts b/javascript/examples/ts-monorepo/packages/module-b/vitest.config.ts
new file mode 100644
index 0000000..867e18b
--- /dev/null
+++ b/javascript/examples/ts-monorepo/packages/module-b/vitest.config.ts
@@ -0,0 +1,9 @@
+import { defineConfig, mergeConfig } from 'vitest/config';
+import baseConfig from '../../vitest.config';
+
+export default mergeConfig(
+ baseConfig,
+ defineConfig({
+ test: {},
+ })
+);
diff --git a/javascript/examples/ts-monorepo/pnpm-lock.yaml b/javascript/examples/ts-monorepo/pnpm-lock.yaml
new file mode 100644
index 0000000..3a1a66b
--- /dev/null
+++ b/javascript/examples/ts-monorepo/pnpm-lock.yaml
@@ -0,0 +1,2066 @@
+lockfileVersion: '6.0'
+
+settings:
+ autoInstallPeers: true
+ excludeLinksFromLockfile: false
+
+importers:
+
+ .:
+ dependencies:
+ '@types/node':
+ specifier: ^20.11.18
+ version: 20.11.18
+ '@typescript-eslint/eslint-plugin':
+ specifier: ^5.1.0
+ version: 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.54.0)(typescript@4.9.5)
+ '@typescript-eslint/parser':
+ specifier: ^5.1.0
+ version: 5.62.0(eslint@8.54.0)(typescript@4.9.5)
+ eslint:
+ specifier: ^8.54.0
+ version: 8.54.0
+ tslib:
+ specifier: ^2.6.2
+ version: 2.6.2
+ tsup:
+ specifier: ^8.0.1
+ version: 8.0.1(typescript@4.9.5)
+ typescript:
+ specifier: ^4.5.2
+ version: 4.9.5
+ vitest:
+ specifier: ^0.34.6
+ version: 0.34.6
+
+ packages/module-a: {}
+
+ packages/module-b:
+ dependencies:
+ '@test/module-a':
+ specifier: workspace:*
+ version: link:../module-a
+
+packages:
+
+ /@aashutoshrathi/word-wrap@1.2.6:
+ resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /@esbuild/android-arm64@0.19.7:
+ resolution: {integrity: sha512-YEDcw5IT7hW3sFKZBkCAQaOCJQLONVcD4bOyTXMZz5fr66pTHnAet46XAtbXAkJRfIn2YVhdC6R9g4xa27jQ1w==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/android-arm@0.19.7:
+ resolution: {integrity: sha512-YGSPnndkcLo4PmVl2tKatEn+0mlVMr3yEpOOT0BeMria87PhvoJb5dg5f5Ft9fbCVgtAz4pWMzZVgSEGpDAlww==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/android-x64@0.19.7:
+ resolution: {integrity: sha512-jhINx8DEjz68cChFvM72YzrqfwJuFbfvSxZAk4bebpngGfNNRm+zRl4rtT9oAX6N9b6gBcFaJHFew5Blf6CvUw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/darwin-arm64@0.19.7:
+ resolution: {integrity: sha512-dr81gbmWN//3ZnBIm6YNCl4p3pjnabg1/ZVOgz2fJoUO1a3mq9WQ/1iuEluMs7mCL+Zwv7AY5e3g1hjXqQZ9Iw==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/darwin-x64@0.19.7:
+ resolution: {integrity: sha512-Lc0q5HouGlzQEwLkgEKnWcSazqr9l9OdV2HhVasWJzLKeOt0PLhHaUHuzb8s/UIya38DJDoUm74GToZ6Wc7NGQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/freebsd-arm64@0.19.7:
+ resolution: {integrity: sha512-+y2YsUr0CxDFF7GWiegWjGtTUF6gac2zFasfFkRJPkMAuMy9O7+2EH550VlqVdpEEchWMynkdhC9ZjtnMiHImQ==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/freebsd-x64@0.19.7:
+ resolution: {integrity: sha512-CdXOxIbIzPJmJhrpmJTLx+o35NoiKBIgOvmvT+jeSadYiWJn0vFKsl+0bSG/5lwjNHoIDEyMYc/GAPR9jxusTA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/linux-arm64@0.19.7:
+ resolution: {integrity: sha512-inHqdOVCkUhHNvuQPT1oCB7cWz9qQ/Cz46xmVe0b7UXcuIJU3166aqSunsqkgSGMtUCWOZw3+KMwI6otINuC9g==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/linux-arm@0.19.7:
+ resolution: {integrity: sha512-Y+SCmWxsJOdQtjcBxoacn/pGW9HDZpwsoof0ttL+2vGcHokFlfqV666JpfLCSP2xLxFpF1lj7T3Ox3sr95YXww==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/linux-ia32@0.19.7:
+ resolution: {integrity: sha512-2BbiL7nLS5ZO96bxTQkdO0euGZIUQEUXMTrqLxKUmk/Y5pmrWU84f+CMJpM8+EHaBPfFSPnomEaQiG/+Gmh61g==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/linux-loong64@0.19.7:
+ resolution: {integrity: sha512-BVFQla72KXv3yyTFCQXF7MORvpTo4uTA8FVFgmwVrqbB/4DsBFWilUm1i2Oq6zN36DOZKSVUTb16jbjedhfSHw==}
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/linux-mips64el@0.19.7:
+ resolution: {integrity: sha512-DzAYckIaK+pS31Q/rGpvUKu7M+5/t+jI+cdleDgUwbU7KdG2eC3SUbZHlo6Q4P1CfVKZ1lUERRFP8+q0ob9i2w==}
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/linux-ppc64@0.19.7:
+ resolution: {integrity: sha512-JQ1p0SmUteNdUaaiRtyS59GkkfTW0Edo+e0O2sihnY4FoZLz5glpWUQEKMSzMhA430ctkylkS7+vn8ziuhUugQ==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/linux-riscv64@0.19.7:
+ resolution: {integrity: sha512-xGwVJ7eGhkprY/nB7L7MXysHduqjpzUl40+XoYDGC4UPLbnG+gsyS1wQPJ9lFPcxYAaDXbdRXd1ACs9AE9lxuw==}
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/linux-s390x@0.19.7:
+ resolution: {integrity: sha512-U8Rhki5PVU0L0nvk+E8FjkV8r4Lh4hVEb9duR6Zl21eIEYEwXz8RScj4LZWA2i3V70V4UHVgiqMpszXvG0Yqhg==}
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/linux-x64@0.19.7:
+ resolution: {integrity: sha512-ZYZopyLhm4mcoZXjFt25itRlocKlcazDVkB4AhioiL9hOWhDldU9n38g62fhOI4Pth6vp+Mrd5rFKxD0/S+7aQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/netbsd-x64@0.19.7:
+ resolution: {integrity: sha512-/yfjlsYmT1O3cum3J6cmGG16Fd5tqKMcg5D+sBYLaOQExheAJhqr8xOAEIuLo8JYkevmjM5zFD9rVs3VBcsjtQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/openbsd-x64@0.19.7:
+ resolution: {integrity: sha512-MYDFyV0EW1cTP46IgUJ38OnEY5TaXxjoDmwiTXPjezahQgZd+j3T55Ht8/Q9YXBM0+T9HJygrSRGV5QNF/YVDQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/sunos-x64@0.19.7:
+ resolution: {integrity: sha512-JcPvgzf2NN/y6X3UUSqP6jSS06V0DZAV/8q0PjsZyGSXsIGcG110XsdmuWiHM+pno7/mJF6fjH5/vhUz/vA9fw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/win32-arm64@0.19.7:
+ resolution: {integrity: sha512-ZA0KSYti5w5toax5FpmfcAgu3ZNJxYSRm0AW/Dao5up0YV1hDVof1NvwLomjEN+3/GMtaWDI+CIyJOMTRSTdMw==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/win32-ia32@0.19.7:
+ resolution: {integrity: sha512-CTOnijBKc5Jpk6/W9hQMMvJnsSYRYgveN6O75DTACCY18RA2nqka8dTZR+x/JqXCRiKk84+5+bRKXUSbbwsS0A==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@esbuild/win32-x64@0.19.7:
+ resolution: {integrity: sha512-gRaP2sk6hc98N734luX4VpF318l3w+ofrtTu9j5L8EQXF+FzQKV6alCOHMVoJJHvVK/mGbwBXfOL1HETQu9IGQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@eslint-community/eslint-utils@4.4.0(eslint@8.54.0):
+ resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+ dependencies:
+ eslint: 8.54.0
+ eslint-visitor-keys: 3.4.3
+ dev: false
+
+ /@eslint-community/regexpp@4.10.0:
+ resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ dev: false
+
+ /@eslint/eslintrc@2.1.3:
+ resolution: {integrity: sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ ajv: 6.12.6
+ debug: 4.3.4
+ espree: 9.6.1
+ globals: 13.23.0
+ ignore: 5.3.0
+ import-fresh: 3.3.0
+ js-yaml: 4.1.0
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@eslint/js@8.54.0:
+ resolution: {integrity: sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: false
+
+ /@humanwhocodes/config-array@0.11.13:
+ resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==}
+ engines: {node: '>=10.10.0'}
+ dependencies:
+ '@humanwhocodes/object-schema': 2.0.1
+ debug: 4.3.4
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@humanwhocodes/module-importer@1.0.1:
+ resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+ engines: {node: '>=12.22'}
+ dev: false
+
+ /@humanwhocodes/object-schema@2.0.1:
+ resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==}
+ dev: false
+
+ /@jest/schemas@29.6.3:
+ resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+ dependencies:
+ '@sinclair/typebox': 0.27.8
+ dev: false
+
+ /@jridgewell/gen-mapping@0.3.3:
+ resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ '@jridgewell/set-array': 1.1.2
+ '@jridgewell/sourcemap-codec': 1.4.15
+ '@jridgewell/trace-mapping': 0.3.20
+ dev: false
+
+ /@jridgewell/resolve-uri@3.1.1:
+ resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==}
+ engines: {node: '>=6.0.0'}
+ dev: false
+
+ /@jridgewell/set-array@1.1.2:
+ resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
+ engines: {node: '>=6.0.0'}
+ dev: false
+
+ /@jridgewell/sourcemap-codec@1.4.15:
+ resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
+ dev: false
+
+ /@jridgewell/trace-mapping@0.3.20:
+ resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==}
+ dependencies:
+ '@jridgewell/resolve-uri': 3.1.1
+ '@jridgewell/sourcemap-codec': 1.4.15
+ dev: false
+
+ /@nodelib/fs.scandir@2.1.5:
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ run-parallel: 1.2.0
+ dev: false
+
+ /@nodelib/fs.stat@2.0.5:
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+ engines: {node: '>= 8'}
+ dev: false
+
+ /@nodelib/fs.walk@1.2.8:
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.scandir': 2.1.5
+ fastq: 1.15.0
+ dev: false
+
+ /@rollup/rollup-android-arm-eabi@4.5.0:
+ resolution: {integrity: sha512-OINaBGY+Wc++U0rdr7BLuFClxcoWaVW3vQYqmQq6B3bqQ/2olkaoz+K8+af/Mmka/C2yN5j+L9scBkv4BtKsDA==}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-android-arm64@4.5.0:
+ resolution: {integrity: sha512-UdMf1pOQc4ZmUA/NTmKhgJTBimbSKnhPS2zJqucqFyBRFPnPDtwA8MzrGNTjDeQbIAWfpJVAlxejw+/lQyBK/w==}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-darwin-arm64@4.5.0:
+ resolution: {integrity: sha512-L0/CA5p/idVKI+c9PcAPGorH6CwXn6+J0Ys7Gg1axCbTPgI8MeMlhA6fLM9fK+ssFhqogMHFC8HDvZuetOii7w==}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-darwin-x64@4.5.0:
+ resolution: {integrity: sha512-QZCbVqU26mNlLn8zi/XDDquNmvcr4ON5FYAHQQsyhrHx8q+sQi/6xduoznYXwk/KmKIXG5dLfR0CvY+NAWpFYQ==}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-linux-arm-gnueabihf@4.5.0:
+ resolution: {integrity: sha512-VpSQ+xm93AeV33QbYslgf44wc5eJGYfYitlQzAi3OObu9iwrGXEnmu5S3ilkqE3Pr/FkgOiJKV/2p0ewf4Hrtg==}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-linux-arm64-gnu@4.5.0:
+ resolution: {integrity: sha512-OrEyIfpxSsMal44JpEVx9AEcGpdBQG1ZuWISAanaQTSMeStBW+oHWwOkoqR54bw3x8heP8gBOyoJiGg+fLY8qQ==}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-linux-arm64-musl@4.5.0:
+ resolution: {integrity: sha512-1H7wBbQuE6igQdxMSTjtFfD+DGAudcYWhp106z/9zBA8OQhsJRnemO4XGavdzHpGhRtRxbgmUGdO3YQgrWf2RA==}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-linux-x64-gnu@4.5.0:
+ resolution: {integrity: sha512-FVyFI13tXw5aE65sZdBpNjPVIi4Q5mARnL/39UIkxvSgRAIqCo5sCpCELk0JtXHGee2owZz5aNLbWNfBHzr71Q==}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-linux-x64-musl@4.5.0:
+ resolution: {integrity: sha512-eBPYl2sLpH/o8qbSz6vPwWlDyThnQjJfcDOGFbNjmjb44XKC1F5dQfakOsADRVrXCNzM6ZsSIPDG5dc6HHLNFg==}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-win32-arm64-msvc@4.5.0:
+ resolution: {integrity: sha512-xaOHIfLOZypoQ5U2I6rEaugS4IYtTgP030xzvrBf5js7p9WI9wik07iHmsKaej8Z83ZDxN5GyypfoyKV5O5TJA==}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-win32-ia32-msvc@4.5.0:
+ resolution: {integrity: sha512-Al6quztQUrHwcOoU2TuFblUQ5L+/AmPBXFR6dUvyo4nRj2yQRK0WIUaGMF/uwKulvRcXkpHe3k9A8Vf93VDktA==}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@rollup/rollup-win32-x64-msvc@4.5.0:
+ resolution: {integrity: sha512-8kdW+brNhI/NzJ4fxDufuJUjepzINqJKLGHuxyAtpPG9bMbn8P5mtaCcbOm0EzLJ+atg+kF9dwg8jpclkVqx5w==}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@sinclair/typebox@0.27.8:
+ resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
+ dev: false
+
+ /@types/chai-subset@1.3.5:
+ resolution: {integrity: sha512-c2mPnw+xHtXDoHmdtcCXGwyLMiauiAyxWMzhGpqHC4nqI/Y5G2XhTampslK2rb59kpcuHon03UH8W6iYUzw88A==}
+ dependencies:
+ '@types/chai': 4.3.11
+ dev: false
+
+ /@types/chai@4.3.11:
+ resolution: {integrity: sha512-qQR1dr2rGIHYlJulmr8Ioq3De0Le9E4MJ5AiaeAETJJpndT1uUNHsGFK3L/UIu+rbkQSdj8J/w2bCsBZc/Y5fQ==}
+ dev: false
+
+ /@types/json-schema@7.0.15:
+ resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+ dev: false
+
+ /@types/node@20.11.18:
+ resolution: {integrity: sha512-ABT5VWnnYneSBcNWYSCuR05M826RoMyMSGiFivXGx6ZUIsXb9vn4643IEwkg2zbEOSgAiSogtapN2fgc4mAPlw==}
+ dependencies:
+ undici-types: 5.26.5
+ dev: false
+
+ /@types/semver@7.5.6:
+ resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==}
+ dev: false
+
+ /@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.54.0)(typescript@4.9.5):
+ resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^5.0.0
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@eslint-community/regexpp': 4.10.0
+ '@typescript-eslint/parser': 5.62.0(eslint@8.54.0)(typescript@4.9.5)
+ '@typescript-eslint/scope-manager': 5.62.0
+ '@typescript-eslint/type-utils': 5.62.0(eslint@8.54.0)(typescript@4.9.5)
+ '@typescript-eslint/utils': 5.62.0(eslint@8.54.0)(typescript@4.9.5)
+ debug: 4.3.4
+ eslint: 8.54.0
+ graphemer: 1.4.0
+ ignore: 5.3.0
+ natural-compare-lite: 1.4.0
+ semver: 7.5.4
+ tsutils: 3.21.0(typescript@4.9.5)
+ typescript: 4.9.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@typescript-eslint/parser@5.62.0(eslint@8.54.0)(typescript@4.9.5):
+ resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/scope-manager': 5.62.0
+ '@typescript-eslint/types': 5.62.0
+ '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5)
+ debug: 4.3.4
+ eslint: 8.54.0
+ typescript: 4.9.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@typescript-eslint/scope-manager@5.62.0:
+ resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ '@typescript-eslint/types': 5.62.0
+ '@typescript-eslint/visitor-keys': 5.62.0
+ dev: false
+
+ /@typescript-eslint/type-utils@5.62.0(eslint@8.54.0)(typescript@4.9.5):
+ resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '*'
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5)
+ '@typescript-eslint/utils': 5.62.0(eslint@8.54.0)(typescript@4.9.5)
+ debug: 4.3.4
+ eslint: 8.54.0
+ tsutils: 3.21.0(typescript@4.9.5)
+ typescript: 4.9.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@typescript-eslint/types@5.62.0:
+ resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: false
+
+ /@typescript-eslint/typescript-estree@5.62.0(typescript@4.9.5):
+ resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/types': 5.62.0
+ '@typescript-eslint/visitor-keys': 5.62.0
+ debug: 4.3.4
+ globby: 11.1.0
+ is-glob: 4.0.3
+ semver: 7.5.4
+ tsutils: 3.21.0(typescript@4.9.5)
+ typescript: 4.9.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@typescript-eslint/utils@5.62.0(eslint@8.54.0)(typescript@4.9.5):
+ resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.54.0)
+ '@types/json-schema': 7.0.15
+ '@types/semver': 7.5.6
+ '@typescript-eslint/scope-manager': 5.62.0
+ '@typescript-eslint/types': 5.62.0
+ '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5)
+ eslint: 8.54.0
+ eslint-scope: 5.1.1
+ semver: 7.5.4
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+ dev: false
+
+ /@typescript-eslint/visitor-keys@5.62.0:
+ resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ '@typescript-eslint/types': 5.62.0
+ eslint-visitor-keys: 3.4.3
+ dev: false
+
+ /@ungap/structured-clone@1.2.0:
+ resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
+ dev: false
+
+ /@vitest/expect@0.34.6:
+ resolution: {integrity: sha512-QUzKpUQRc1qC7qdGo7rMK3AkETI7w18gTCUrsNnyjjJKYiuUB9+TQK3QnR1unhCnWRC0AbKv2omLGQDF/mIjOw==}
+ dependencies:
+ '@vitest/spy': 0.34.6
+ '@vitest/utils': 0.34.6
+ chai: 4.3.10
+ dev: false
+
+ /@vitest/runner@0.34.6:
+ resolution: {integrity: sha512-1CUQgtJSLF47NnhN+F9X2ycxUP0kLHQ/JWvNHbeBfwW8CzEGgeskzNnHDyv1ieKTltuR6sdIHV+nmR6kPxQqzQ==}
+ dependencies:
+ '@vitest/utils': 0.34.6
+ p-limit: 4.0.0
+ pathe: 1.1.1
+ dev: false
+
+ /@vitest/snapshot@0.34.6:
+ resolution: {integrity: sha512-B3OZqYn6k4VaN011D+ve+AA4whM4QkcwcrwaKwAbyyvS/NB1hCWjFIBQxAQQSQir9/RtyAAGuq+4RJmbn2dH4w==}
+ dependencies:
+ magic-string: 0.30.5
+ pathe: 1.1.1
+ pretty-format: 29.7.0
+ dev: false
+
+ /@vitest/spy@0.34.6:
+ resolution: {integrity: sha512-xaCvneSaeBw/cz8ySmF7ZwGvL0lBjfvqc1LpQ/vcdHEvpLn3Ff1vAvjw+CoGn0802l++5L/pxb7whwcWAw+DUQ==}
+ dependencies:
+ tinyspy: 2.2.0
+ dev: false
+
+ /@vitest/utils@0.34.6:
+ resolution: {integrity: sha512-IG5aDD8S6zlvloDsnzHw0Ut5xczlF+kv2BOTo+iXfPr54Yhi5qbVOgGB1hZaVq4iJ4C/MZ2J0y15IlsV/ZcI0A==}
+ dependencies:
+ diff-sequences: 29.6.3
+ loupe: 2.3.7
+ pretty-format: 29.7.0
+ dev: false
+
+ /acorn-jsx@5.3.2(acorn@8.11.2):
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ acorn: 8.11.2
+ dev: false
+
+ /acorn-walk@8.3.0:
+ resolution: {integrity: sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==}
+ engines: {node: '>=0.4.0'}
+ dev: false
+
+ /acorn@8.11.2:
+ resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+ dev: false
+
+ /ajv@6.12.6:
+ resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-json-stable-stringify: 2.1.0
+ json-schema-traverse: 0.4.1
+ uri-js: 4.4.1
+ dev: false
+
+ /ansi-regex@5.0.1:
+ resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /ansi-styles@4.3.0:
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
+ engines: {node: '>=8'}
+ dependencies:
+ color-convert: 2.0.1
+ dev: false
+
+ /ansi-styles@5.2.0:
+ resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /any-promise@1.3.0:
+ resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
+ dev: false
+
+ /anymatch@3.1.3:
+ resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
+ engines: {node: '>= 8'}
+ dependencies:
+ normalize-path: 3.0.0
+ picomatch: 2.3.1
+ dev: false
+
+ /argparse@2.0.1:
+ resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+ dev: false
+
+ /array-union@2.1.0:
+ resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /assertion-error@1.1.0:
+ resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==}
+ dev: false
+
+ /balanced-match@1.0.2:
+ resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+ dev: false
+
+ /binary-extensions@2.2.0:
+ resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /brace-expansion@1.1.11:
+ resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
+ dependencies:
+ balanced-match: 1.0.2
+ concat-map: 0.0.1
+ dev: false
+
+ /braces@3.0.2:
+ resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
+ engines: {node: '>=8'}
+ dependencies:
+ fill-range: 7.0.1
+ dev: false
+
+ /bundle-require@4.0.2(esbuild@0.19.7):
+ resolution: {integrity: sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ peerDependencies:
+ esbuild: '>=0.17'
+ dependencies:
+ esbuild: 0.19.7
+ load-tsconfig: 0.2.5
+ dev: false
+
+ /cac@6.7.14:
+ resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /callsites@3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /chai@4.3.10:
+ resolution: {integrity: sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==}
+ engines: {node: '>=4'}
+ dependencies:
+ assertion-error: 1.1.0
+ check-error: 1.0.3
+ deep-eql: 4.1.3
+ get-func-name: 2.0.2
+ loupe: 2.3.7
+ pathval: 1.1.1
+ type-detect: 4.0.8
+ dev: false
+
+ /chalk@4.1.2:
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
+ engines: {node: '>=10'}
+ dependencies:
+ ansi-styles: 4.3.0
+ supports-color: 7.2.0
+ dev: false
+
+ /check-error@1.0.3:
+ resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==}
+ dependencies:
+ get-func-name: 2.0.2
+ dev: false
+
+ /chokidar@3.5.3:
+ resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
+ engines: {node: '>= 8.10.0'}
+ dependencies:
+ anymatch: 3.1.3
+ braces: 3.0.2
+ glob-parent: 5.1.2
+ is-binary-path: 2.1.0
+ is-glob: 4.0.3
+ normalize-path: 3.0.0
+ readdirp: 3.6.0
+ optionalDependencies:
+ fsevents: 2.3.3
+ dev: false
+
+ /color-convert@2.0.1:
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
+ engines: {node: '>=7.0.0'}
+ dependencies:
+ color-name: 1.1.4
+ dev: false
+
+ /color-name@1.1.4:
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+ dev: false
+
+ /commander@4.1.1:
+ resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
+ engines: {node: '>= 6'}
+ dev: false
+
+ /concat-map@0.0.1:
+ resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
+ dev: false
+
+ /cross-spawn@7.0.3:
+ resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
+ engines: {node: '>= 8'}
+ dependencies:
+ path-key: 3.1.1
+ shebang-command: 2.0.0
+ which: 2.0.2
+ dev: false
+
+ /debug@4.3.4:
+ resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: 2.1.2
+ dev: false
+
+ /deep-eql@4.1.3:
+ resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==}
+ engines: {node: '>=6'}
+ dependencies:
+ type-detect: 4.0.8
+ dev: false
+
+ /deep-is@0.1.4:
+ resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+ dev: false
+
+ /diff-sequences@29.6.3:
+ resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+ dev: false
+
+ /dir-glob@3.0.1:
+ resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
+ engines: {node: '>=8'}
+ dependencies:
+ path-type: 4.0.0
+ dev: false
+
+ /doctrine@3.0.0:
+ resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ esutils: 2.0.3
+ dev: false
+
+ /esbuild@0.19.7:
+ resolution: {integrity: sha512-6brbTZVqxhqgbpqBR5MzErImcpA0SQdoKOkcWK/U30HtQxnokIpG3TX2r0IJqbFUzqLjhU/zC1S5ndgakObVCQ==}
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ optionalDependencies:
+ '@esbuild/android-arm': 0.19.7
+ '@esbuild/android-arm64': 0.19.7
+ '@esbuild/android-x64': 0.19.7
+ '@esbuild/darwin-arm64': 0.19.7
+ '@esbuild/darwin-x64': 0.19.7
+ '@esbuild/freebsd-arm64': 0.19.7
+ '@esbuild/freebsd-x64': 0.19.7
+ '@esbuild/linux-arm': 0.19.7
+ '@esbuild/linux-arm64': 0.19.7
+ '@esbuild/linux-ia32': 0.19.7
+ '@esbuild/linux-loong64': 0.19.7
+ '@esbuild/linux-mips64el': 0.19.7
+ '@esbuild/linux-ppc64': 0.19.7
+ '@esbuild/linux-riscv64': 0.19.7
+ '@esbuild/linux-s390x': 0.19.7
+ '@esbuild/linux-x64': 0.19.7
+ '@esbuild/netbsd-x64': 0.19.7
+ '@esbuild/openbsd-x64': 0.19.7
+ '@esbuild/sunos-x64': 0.19.7
+ '@esbuild/win32-arm64': 0.19.7
+ '@esbuild/win32-ia32': 0.19.7
+ '@esbuild/win32-x64': 0.19.7
+ dev: false
+
+ /escape-string-regexp@4.0.0:
+ resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /eslint-scope@5.1.1:
+ resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
+ engines: {node: '>=8.0.0'}
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 4.3.0
+ dev: false
+
+ /eslint-scope@7.2.2:
+ resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 5.3.0
+ dev: false
+
+ /eslint-visitor-keys@3.4.3:
+ resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: false
+
+ /eslint@8.54.0:
+ resolution: {integrity: sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ hasBin: true
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.54.0)
+ '@eslint-community/regexpp': 4.10.0
+ '@eslint/eslintrc': 2.1.3
+ '@eslint/js': 8.54.0
+ '@humanwhocodes/config-array': 0.11.13
+ '@humanwhocodes/module-importer': 1.0.1
+ '@nodelib/fs.walk': 1.2.8
+ '@ungap/structured-clone': 1.2.0
+ ajv: 6.12.6
+ chalk: 4.1.2
+ cross-spawn: 7.0.3
+ debug: 4.3.4
+ doctrine: 3.0.0
+ escape-string-regexp: 4.0.0
+ eslint-scope: 7.2.2
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ esquery: 1.5.0
+ esutils: 2.0.3
+ fast-deep-equal: 3.1.3
+ file-entry-cache: 6.0.1
+ find-up: 5.0.0
+ glob-parent: 6.0.2
+ globals: 13.23.0
+ graphemer: 1.4.0
+ ignore: 5.3.0
+ imurmurhash: 0.1.4
+ is-glob: 4.0.3
+ is-path-inside: 3.0.3
+ js-yaml: 4.1.0
+ json-stable-stringify-without-jsonify: 1.0.1
+ levn: 0.4.1
+ lodash.merge: 4.6.2
+ minimatch: 3.1.2
+ natural-compare: 1.4.0
+ optionator: 0.9.3
+ strip-ansi: 6.0.1
+ text-table: 0.2.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /espree@9.6.1:
+ resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ acorn: 8.11.2
+ acorn-jsx: 5.3.2(acorn@8.11.2)
+ eslint-visitor-keys: 3.4.3
+ dev: false
+
+ /esquery@1.5.0:
+ resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==}
+ engines: {node: '>=0.10'}
+ dependencies:
+ estraverse: 5.3.0
+ dev: false
+
+ /esrecurse@4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
+ dependencies:
+ estraverse: 5.3.0
+ dev: false
+
+ /estraverse@4.3.0:
+ resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
+ engines: {node: '>=4.0'}
+ dev: false
+
+ /estraverse@5.3.0:
+ resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
+ engines: {node: '>=4.0'}
+ dev: false
+
+ /esutils@2.0.3:
+ resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /execa@5.1.1:
+ resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
+ engines: {node: '>=10'}
+ dependencies:
+ cross-spawn: 7.0.3
+ get-stream: 6.0.1
+ human-signals: 2.1.0
+ is-stream: 2.0.1
+ merge-stream: 2.0.0
+ npm-run-path: 4.0.1
+ onetime: 5.1.2
+ signal-exit: 3.0.7
+ strip-final-newline: 2.0.0
+ dev: false
+
+ /fast-deep-equal@3.1.3:
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+ dev: false
+
+ /fast-glob@3.3.2:
+ resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
+ engines: {node: '>=8.6.0'}
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ '@nodelib/fs.walk': 1.2.8
+ glob-parent: 5.1.2
+ merge2: 1.4.1
+ micromatch: 4.0.5
+ dev: false
+
+ /fast-json-stable-stringify@2.1.0:
+ resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+ dev: false
+
+ /fast-levenshtein@2.0.6:
+ resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
+ dev: false
+
+ /fastq@1.15.0:
+ resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==}
+ dependencies:
+ reusify: 1.0.4
+ dev: false
+
+ /file-entry-cache@6.0.1:
+ resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
+ engines: {node: ^10.12.0 || >=12.0.0}
+ dependencies:
+ flat-cache: 3.2.0
+ dev: false
+
+ /fill-range@7.0.1:
+ resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
+ engines: {node: '>=8'}
+ dependencies:
+ to-regex-range: 5.0.1
+ dev: false
+
+ /find-up@5.0.0:
+ resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
+ engines: {node: '>=10'}
+ dependencies:
+ locate-path: 6.0.0
+ path-exists: 4.0.0
+ dev: false
+
+ /flat-cache@3.2.0:
+ resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==}
+ engines: {node: ^10.12.0 || >=12.0.0}
+ dependencies:
+ flatted: 3.2.9
+ keyv: 4.5.4
+ rimraf: 3.0.2
+ dev: false
+
+ /flatted@3.2.9:
+ resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==}
+ dev: false
+
+ /fs.realpath@1.0.0:
+ resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
+ dev: false
+
+ /fsevents@2.3.3:
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /get-func-name@2.0.2:
+ resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==}
+ dev: false
+
+ /get-stream@6.0.1:
+ resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /glob-parent@5.1.2:
+ resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
+ engines: {node: '>= 6'}
+ dependencies:
+ is-glob: 4.0.3
+ dev: false
+
+ /glob-parent@6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
+ engines: {node: '>=10.13.0'}
+ dependencies:
+ is-glob: 4.0.3
+ dev: false
+
+ /glob@7.1.6:
+ resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==}
+ dependencies:
+ fs.realpath: 1.0.0
+ inflight: 1.0.6
+ inherits: 2.0.4
+ minimatch: 3.1.2
+ once: 1.4.0
+ path-is-absolute: 1.0.1
+ dev: false
+
+ /glob@7.2.3:
+ resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
+ dependencies:
+ fs.realpath: 1.0.0
+ inflight: 1.0.6
+ inherits: 2.0.4
+ minimatch: 3.1.2
+ once: 1.4.0
+ path-is-absolute: 1.0.1
+ dev: false
+
+ /globals@13.23.0:
+ resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==}
+ engines: {node: '>=8'}
+ dependencies:
+ type-fest: 0.20.2
+ dev: false
+
+ /globby@11.1.0:
+ resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
+ engines: {node: '>=10'}
+ dependencies:
+ array-union: 2.1.0
+ dir-glob: 3.0.1
+ fast-glob: 3.3.2
+ ignore: 5.3.0
+ merge2: 1.4.1
+ slash: 3.0.0
+ dev: false
+
+ /graphemer@1.4.0:
+ resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+ dev: false
+
+ /has-flag@4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /human-signals@2.1.0:
+ resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
+ engines: {node: '>=10.17.0'}
+ dev: false
+
+ /ignore@5.3.0:
+ resolution: {integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==}
+ engines: {node: '>= 4'}
+ dev: false
+
+ /import-fresh@3.3.0:
+ resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
+ engines: {node: '>=6'}
+ dependencies:
+ parent-module: 1.0.1
+ resolve-from: 4.0.0
+ dev: false
+
+ /imurmurhash@0.1.4:
+ resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
+ engines: {node: '>=0.8.19'}
+ dev: false
+
+ /inflight@1.0.6:
+ resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
+ dependencies:
+ once: 1.4.0
+ wrappy: 1.0.2
+ dev: false
+
+ /inherits@2.0.4:
+ resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
+ dev: false
+
+ /is-binary-path@2.1.0:
+ resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
+ engines: {node: '>=8'}
+ dependencies:
+ binary-extensions: 2.2.0
+ dev: false
+
+ /is-extglob@2.1.1:
+ resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /is-glob@4.0.3:
+ resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-extglob: 2.1.1
+ dev: false
+
+ /is-number@7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
+ engines: {node: '>=0.12.0'}
+ dev: false
+
+ /is-path-inside@3.0.3:
+ resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /is-stream@2.0.1:
+ resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /isexe@2.0.0:
+ resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+ dev: false
+
+ /joycon@3.1.1:
+ resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /js-yaml@4.1.0:
+ resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
+ hasBin: true
+ dependencies:
+ argparse: 2.0.1
+ dev: false
+
+ /json-buffer@3.0.1:
+ resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+ dev: false
+
+ /json-schema-traverse@0.4.1:
+ resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+ dev: false
+
+ /json-stable-stringify-without-jsonify@1.0.1:
+ resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+ dev: false
+
+ /jsonc-parser@3.2.0:
+ resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==}
+ dev: false
+
+ /keyv@4.5.4:
+ resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+ dependencies:
+ json-buffer: 3.0.1
+ dev: false
+
+ /levn@0.4.1:
+ resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+ dev: false
+
+ /lilconfig@3.0.0:
+ resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==}
+ engines: {node: '>=14'}
+ dev: false
+
+ /lines-and-columns@1.2.4:
+ resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
+ dev: false
+
+ /load-tsconfig@0.2.5:
+ resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dev: false
+
+ /local-pkg@0.4.3:
+ resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==}
+ engines: {node: '>=14'}
+ dev: false
+
+ /locate-path@6.0.0:
+ resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
+ engines: {node: '>=10'}
+ dependencies:
+ p-locate: 5.0.0
+ dev: false
+
+ /lodash.merge@4.6.2:
+ resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+ dev: false
+
+ /lodash.sortby@4.7.0:
+ resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==}
+ dev: false
+
+ /loupe@2.3.7:
+ resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==}
+ dependencies:
+ get-func-name: 2.0.2
+ dev: false
+
+ /lru-cache@6.0.0:
+ resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
+ engines: {node: '>=10'}
+ dependencies:
+ yallist: 4.0.0
+ dev: false
+
+ /magic-string@0.30.5:
+ resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==}
+ engines: {node: '>=12'}
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.4.15
+ dev: false
+
+ /merge-stream@2.0.0:
+ resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
+ dev: false
+
+ /merge2@1.4.1:
+ resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
+ engines: {node: '>= 8'}
+ dev: false
+
+ /micromatch@4.0.5:
+ resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
+ engines: {node: '>=8.6'}
+ dependencies:
+ braces: 3.0.2
+ picomatch: 2.3.1
+ dev: false
+
+ /mimic-fn@2.1.0:
+ resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /minimatch@3.1.2:
+ resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+ dependencies:
+ brace-expansion: 1.1.11
+ dev: false
+
+ /mlly@1.4.2:
+ resolution: {integrity: sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==}
+ dependencies:
+ acorn: 8.11.2
+ pathe: 1.1.1
+ pkg-types: 1.0.3
+ ufo: 1.3.2
+ dev: false
+
+ /ms@2.1.2:
+ resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
+ dev: false
+
+ /mz@2.7.0:
+ resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
+ dependencies:
+ any-promise: 1.3.0
+ object-assign: 4.1.1
+ thenify-all: 1.6.0
+ dev: false
+
+ /nanoid@3.3.7:
+ resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
+ dev: false
+
+ /natural-compare-lite@1.4.0:
+ resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==}
+ dev: false
+
+ /natural-compare@1.4.0:
+ resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+ dev: false
+
+ /normalize-path@3.0.0:
+ resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /npm-run-path@4.0.1:
+ resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
+ engines: {node: '>=8'}
+ dependencies:
+ path-key: 3.1.1
+ dev: false
+
+ /object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /once@1.4.0:
+ resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
+ dependencies:
+ wrappy: 1.0.2
+ dev: false
+
+ /onetime@5.1.2:
+ resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
+ engines: {node: '>=6'}
+ dependencies:
+ mimic-fn: 2.1.0
+ dev: false
+
+ /optionator@0.9.3:
+ resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==}
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ '@aashutoshrathi/word-wrap': 1.2.6
+ deep-is: 0.1.4
+ fast-levenshtein: 2.0.6
+ levn: 0.4.1
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+ dev: false
+
+ /p-limit@3.1.0:
+ resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ yocto-queue: 0.1.0
+ dev: false
+
+ /p-limit@4.0.0:
+ resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dependencies:
+ yocto-queue: 1.0.0
+ dev: false
+
+ /p-locate@5.0.0:
+ resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
+ engines: {node: '>=10'}
+ dependencies:
+ p-limit: 3.1.0
+ dev: false
+
+ /parent-module@1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
+ engines: {node: '>=6'}
+ dependencies:
+ callsites: 3.1.0
+ dev: false
+
+ /path-exists@4.0.0:
+ resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /path-is-absolute@1.0.1:
+ resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /path-key@3.1.1:
+ resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /path-type@4.0.0:
+ resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /pathe@1.1.1:
+ resolution: {integrity: sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==}
+ dev: false
+
+ /pathval@1.1.1:
+ resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
+ dev: false
+
+ /picocolors@1.0.0:
+ resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
+ dev: false
+
+ /picomatch@2.3.1:
+ resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
+ engines: {node: '>=8.6'}
+ dev: false
+
+ /pirates@4.0.6:
+ resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
+ engines: {node: '>= 6'}
+ dev: false
+
+ /pkg-types@1.0.3:
+ resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==}
+ dependencies:
+ jsonc-parser: 3.2.0
+ mlly: 1.4.2
+ pathe: 1.1.1
+ dev: false
+
+ /postcss-load-config@4.0.2:
+ resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==}
+ engines: {node: '>= 14'}
+ peerDependencies:
+ postcss: '>=8.0.9'
+ ts-node: '>=9.0.0'
+ peerDependenciesMeta:
+ postcss:
+ optional: true
+ ts-node:
+ optional: true
+ dependencies:
+ lilconfig: 3.0.0
+ yaml: 2.3.4
+ dev: false
+
+ /postcss@8.4.31:
+ resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
+ engines: {node: ^10 || ^12 || >=14}
+ dependencies:
+ nanoid: 3.3.7
+ picocolors: 1.0.0
+ source-map-js: 1.0.2
+ dev: false
+
+ /prelude-ls@1.2.1:
+ resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
+ engines: {node: '>= 0.8.0'}
+ dev: false
+
+ /pretty-format@29.7.0:
+ resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+ dependencies:
+ '@jest/schemas': 29.6.3
+ ansi-styles: 5.2.0
+ react-is: 18.2.0
+ dev: false
+
+ /punycode@2.3.1:
+ resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /queue-microtask@1.2.3:
+ resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+ dev: false
+
+ /react-is@18.2.0:
+ resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
+ dev: false
+
+ /readdirp@3.6.0:
+ resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
+ engines: {node: '>=8.10.0'}
+ dependencies:
+ picomatch: 2.3.1
+ dev: false
+
+ /resolve-from@4.0.0:
+ resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
+ engines: {node: '>=4'}
+ dev: false
+
+ /resolve-from@5.0.0:
+ resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /reusify@1.0.4:
+ resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
+ engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+ dev: false
+
+ /rimraf@3.0.2:
+ resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
+ hasBin: true
+ dependencies:
+ glob: 7.2.3
+ dev: false
+
+ /rollup@4.5.0:
+ resolution: {integrity: sha512-41xsWhzxqjMDASCxH5ibw1mXk+3c4TNI2UjKbLxe6iEzrSQnqOzmmK8/3mufCPbzHNJ2e04Fc1ddI35hHy+8zg==}
+ engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ hasBin: true
+ optionalDependencies:
+ '@rollup/rollup-android-arm-eabi': 4.5.0
+ '@rollup/rollup-android-arm64': 4.5.0
+ '@rollup/rollup-darwin-arm64': 4.5.0
+ '@rollup/rollup-darwin-x64': 4.5.0
+ '@rollup/rollup-linux-arm-gnueabihf': 4.5.0
+ '@rollup/rollup-linux-arm64-gnu': 4.5.0
+ '@rollup/rollup-linux-arm64-musl': 4.5.0
+ '@rollup/rollup-linux-x64-gnu': 4.5.0
+ '@rollup/rollup-linux-x64-musl': 4.5.0
+ '@rollup/rollup-win32-arm64-msvc': 4.5.0
+ '@rollup/rollup-win32-ia32-msvc': 4.5.0
+ '@rollup/rollup-win32-x64-msvc': 4.5.0
+ fsevents: 2.3.3
+ dev: false
+
+ /run-parallel@1.2.0:
+ resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+ dependencies:
+ queue-microtask: 1.2.3
+ dev: false
+
+ /semver@7.5.4:
+ resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
+ engines: {node: '>=10'}
+ hasBin: true
+ dependencies:
+ lru-cache: 6.0.0
+ dev: false
+
+ /shebang-command@2.0.0:
+ resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
+ engines: {node: '>=8'}
+ dependencies:
+ shebang-regex: 3.0.0
+ dev: false
+
+ /shebang-regex@3.0.0:
+ resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /siginfo@2.0.0:
+ resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
+ dev: false
+
+ /signal-exit@3.0.7:
+ resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
+ dev: false
+
+ /slash@3.0.0:
+ resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /source-map-js@1.0.2:
+ resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /source-map@0.8.0-beta.0:
+ resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==}
+ engines: {node: '>= 8'}
+ dependencies:
+ whatwg-url: 7.1.0
+ dev: false
+
+ /stackback@0.0.2:
+ resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
+ dev: false
+
+ /std-env@3.5.0:
+ resolution: {integrity: sha512-JGUEaALvL0Mf6JCfYnJOTcobY+Nc7sG/TemDRBqCA0wEr4DER7zDchaaixTlmOxAjG1uRJmX82EQcxwTQTkqVA==}
+ dev: false
+
+ /strip-ansi@6.0.1:
+ resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
+ engines: {node: '>=8'}
+ dependencies:
+ ansi-regex: 5.0.1
+ dev: false
+
+ /strip-final-newline@2.0.0:
+ resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /strip-json-comments@3.1.1:
+ resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
+ engines: {node: '>=8'}
+ dev: false
+
+ /strip-literal@1.3.0:
+ resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==}
+ dependencies:
+ acorn: 8.11.2
+ dev: false
+
+ /sucrase@3.34.0:
+ resolution: {integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==}
+ engines: {node: '>=8'}
+ hasBin: true
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.3
+ commander: 4.1.1
+ glob: 7.1.6
+ lines-and-columns: 1.2.4
+ mz: 2.7.0
+ pirates: 4.0.6
+ ts-interface-checker: 0.1.13
+ dev: false
+
+ /supports-color@7.2.0:
+ resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
+ engines: {node: '>=8'}
+ dependencies:
+ has-flag: 4.0.0
+ dev: false
+
+ /text-table@0.2.0:
+ resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
+ dev: false
+
+ /thenify-all@1.6.0:
+ resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
+ engines: {node: '>=0.8'}
+ dependencies:
+ thenify: 3.3.1
+ dev: false
+
+ /thenify@3.3.1:
+ resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
+ dependencies:
+ any-promise: 1.3.0
+ dev: false
+
+ /tinybench@2.5.1:
+ resolution: {integrity: sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==}
+ dev: false
+
+ /tinypool@0.7.0:
+ resolution: {integrity: sha512-zSYNUlYSMhJ6Zdou4cJwo/p7w5nmAH17GRfU/ui3ctvjXFErXXkruT4MWW6poDeXgCaIBlGLrfU6TbTXxyGMww==}
+ engines: {node: '>=14.0.0'}
+ dev: false
+
+ /tinyspy@2.2.0:
+ resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==}
+ engines: {node: '>=14.0.0'}
+ dev: false
+
+ /to-regex-range@5.0.1:
+ resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
+ engines: {node: '>=8.0'}
+ dependencies:
+ is-number: 7.0.0
+ dev: false
+
+ /tr46@1.0.1:
+ resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==}
+ dependencies:
+ punycode: 2.3.1
+ dev: false
+
+ /tree-kill@1.2.2:
+ resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}
+ hasBin: true
+ dev: false
+
+ /ts-interface-checker@0.1.13:
+ resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
+ dev: false
+
+ /tslib@1.14.1:
+ resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
+ dev: false
+
+ /tslib@2.6.2:
+ resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
+ dev: false
+
+ /tsup@8.0.1(typescript@4.9.5):
+ resolution: {integrity: sha512-hvW7gUSG96j53ZTSlT4j/KL0q1Q2l6TqGBFc6/mu/L46IoNWqLLUzLRLP1R8Q7xrJTmkDxxDoojV5uCVs1sVOg==}
+ engines: {node: '>=18'}
+ hasBin: true
+ peerDependencies:
+ '@microsoft/api-extractor': ^7.36.0
+ '@swc/core': ^1
+ postcss: ^8.4.12
+ typescript: '>=4.5.0'
+ peerDependenciesMeta:
+ '@microsoft/api-extractor':
+ optional: true
+ '@swc/core':
+ optional: true
+ postcss:
+ optional: true
+ typescript:
+ optional: true
+ dependencies:
+ bundle-require: 4.0.2(esbuild@0.19.7)
+ cac: 6.7.14
+ chokidar: 3.5.3
+ debug: 4.3.4
+ esbuild: 0.19.7
+ execa: 5.1.1
+ globby: 11.1.0
+ joycon: 3.1.1
+ postcss-load-config: 4.0.2
+ resolve-from: 5.0.0
+ rollup: 4.5.0
+ source-map: 0.8.0-beta.0
+ sucrase: 3.34.0
+ tree-kill: 1.2.2
+ typescript: 4.9.5
+ transitivePeerDependencies:
+ - supports-color
+ - ts-node
+ dev: false
+
+ /tsutils@3.21.0(typescript@4.9.5):
+ resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
+ engines: {node: '>= 6'}
+ peerDependencies:
+ typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
+ dependencies:
+ tslib: 1.14.1
+ typescript: 4.9.5
+ dev: false
+
+ /type-check@0.4.0:
+ resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ prelude-ls: 1.2.1
+ dev: false
+
+ /type-detect@4.0.8:
+ resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
+ engines: {node: '>=4'}
+ dev: false
+
+ /type-fest@0.20.2:
+ resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /typescript@4.9.5:
+ resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==}
+ engines: {node: '>=4.2.0'}
+ hasBin: true
+ dev: false
+
+ /ufo@1.3.2:
+ resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==}
+ dev: false
+
+ /undici-types@5.26.5:
+ resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
+ dev: false
+
+ /uri-js@4.4.1:
+ resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+ dependencies:
+ punycode: 2.3.1
+ dev: false
+
+ /vite-node@0.34.6(@types/node@20.11.18):
+ resolution: {integrity: sha512-nlBMJ9x6n7/Amaz6F3zJ97EBwR2FkzhBRxF5e+jE6LA3yi6Wtc2lyTij1OnDMIr34v5g/tVQtsVAzhT0jc5ygA==}
+ engines: {node: '>=v14.18.0'}
+ hasBin: true
+ dependencies:
+ cac: 6.7.14
+ debug: 4.3.4
+ mlly: 1.4.2
+ pathe: 1.1.1
+ picocolors: 1.0.0
+ vite: 5.0.2(@types/node@20.11.18)
+ transitivePeerDependencies:
+ - '@types/node'
+ - less
+ - lightningcss
+ - sass
+ - stylus
+ - sugarss
+ - supports-color
+ - terser
+ dev: false
+
+ /vite@5.0.2(@types/node@20.11.18):
+ resolution: {integrity: sha512-6CCq1CAJCNM1ya2ZZA7+jS2KgnhbzvxakmlIjN24cF/PXhRMzpM/z8QgsVJA/Dm5fWUWnVEsmtBoMhmerPxT0g==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ hasBin: true
+ peerDependencies:
+ '@types/node': ^18.0.0 || >=20.0.0
+ less: '*'
+ lightningcss: ^1.21.0
+ sass: '*'
+ stylus: '*'
+ sugarss: '*'
+ terser: ^5.4.0
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
+ less:
+ optional: true
+ lightningcss:
+ optional: true
+ sass:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+ dependencies:
+ '@types/node': 20.11.18
+ esbuild: 0.19.7
+ postcss: 8.4.31
+ rollup: 4.5.0
+ optionalDependencies:
+ fsevents: 2.3.3
+ dev: false
+
+ /vitest@0.34.6:
+ resolution: {integrity: sha512-+5CALsOvbNKnS+ZHMXtuUC7nL8/7F1F2DnHGjSsszX8zCjWSSviphCb/NuS9Nzf4Q03KyyDRBAXhF/8lffME4Q==}
+ engines: {node: '>=v14.18.0'}
+ hasBin: true
+ peerDependencies:
+ '@edge-runtime/vm': '*'
+ '@vitest/browser': '*'
+ '@vitest/ui': '*'
+ happy-dom: '*'
+ jsdom: '*'
+ playwright: '*'
+ safaridriver: '*'
+ webdriverio: '*'
+ peerDependenciesMeta:
+ '@edge-runtime/vm':
+ optional: true
+ '@vitest/browser':
+ optional: true
+ '@vitest/ui':
+ optional: true
+ happy-dom:
+ optional: true
+ jsdom:
+ optional: true
+ playwright:
+ optional: true
+ safaridriver:
+ optional: true
+ webdriverio:
+ optional: true
+ dependencies:
+ '@types/chai': 4.3.11
+ '@types/chai-subset': 1.3.5
+ '@types/node': 20.11.18
+ '@vitest/expect': 0.34.6
+ '@vitest/runner': 0.34.6
+ '@vitest/snapshot': 0.34.6
+ '@vitest/spy': 0.34.6
+ '@vitest/utils': 0.34.6
+ acorn: 8.11.2
+ acorn-walk: 8.3.0
+ cac: 6.7.14
+ chai: 4.3.10
+ debug: 4.3.4
+ local-pkg: 0.4.3
+ magic-string: 0.30.5
+ pathe: 1.1.1
+ picocolors: 1.0.0
+ std-env: 3.5.0
+ strip-literal: 1.3.0
+ tinybench: 2.5.1
+ tinypool: 0.7.0
+ vite: 5.0.2(@types/node@20.11.18)
+ vite-node: 0.34.6(@types/node@20.11.18)
+ why-is-node-running: 2.2.2
+ transitivePeerDependencies:
+ - less
+ - lightningcss
+ - sass
+ - stylus
+ - sugarss
+ - supports-color
+ - terser
+ dev: false
+
+ /webidl-conversions@4.0.2:
+ resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==}
+ dev: false
+
+ /whatwg-url@7.1.0:
+ resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==}
+ dependencies:
+ lodash.sortby: 4.7.0
+ tr46: 1.0.1
+ webidl-conversions: 4.0.2
+ dev: false
+
+ /which@2.0.2:
+ resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
+ engines: {node: '>= 8'}
+ hasBin: true
+ dependencies:
+ isexe: 2.0.0
+ dev: false
+
+ /why-is-node-running@2.2.2:
+ resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==}
+ engines: {node: '>=8'}
+ hasBin: true
+ dependencies:
+ siginfo: 2.0.0
+ stackback: 0.0.2
+ dev: false
+
+ /wrappy@1.0.2:
+ resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+ dev: false
+
+ /yallist@4.0.0:
+ resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
+ dev: false
+
+ /yaml@2.3.4:
+ resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==}
+ engines: {node: '>= 14'}
+ dev: false
+
+ /yocto-queue@0.1.0:
+ resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /yocto-queue@1.0.0:
+ resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==}
+ engines: {node: '>=12.20'}
+ dev: false
diff --git a/javascript/examples/ts-monorepo/pnpm-workspace.yaml b/javascript/examples/ts-monorepo/pnpm-workspace.yaml
new file mode 100644
index 0000000..4340350
--- /dev/null
+++ b/javascript/examples/ts-monorepo/pnpm-workspace.yaml
@@ -0,0 +1,2 @@
+packages:
+ - 'packages/*'
\ No newline at end of file
diff --git a/javascript/examples/ts-monorepo/tsconfig.json b/javascript/examples/ts-monorepo/tsconfig.json
index 5679481..90881c3 100644
--- a/javascript/examples/ts-monorepo/tsconfig.json
+++ b/javascript/examples/ts-monorepo/tsconfig.json
@@ -1,101 +1,10 @@
{
"compilerOptions": {
- /* Visit https://aka.ms/tsconfig.json to read more about this file */
-
- /* Projects */
- // "incremental": true, /* Enable incremental compilation */
- // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */
- // "tsBuildInfoFile": "./", /* Specify the folder for .tsbuildinfo incremental compilation files. */
- // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects */
- // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */
- // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
-
- /* Language and Environment */
"target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
- // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */
- // "jsx": "preserve", /* Specify what JSX code is generated. */
- // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */
- // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
- // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h' */
- // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */
- // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using `jsx: react-jsx*`.` */
- // "reactNamespace": "", /* Specify the object invoked for `createElement`. This only applies when targeting `react` JSX emit. */
- // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */
- // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */
-
- /* Modules */
"module": "commonjs", /* Specify what module code is generated. */
- // "rootDir": "./", /* Specify the root folder within your source files. */
- // "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */
- // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
- // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
- // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
- // "typeRoots": [], /* Specify multiple folders that act like `./node_modules/@types`. */
- // "types": [], /* Specify type package names to be included without being referenced in a source file. */
- // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
- // "resolveJsonModule": true, /* Enable importing .json files */
- // "noResolve": true, /* Disallow `import`s, `require`s or ``s from expanding the number of files TypeScript should add to a project. */
-
- /* JavaScript Support */
- // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */
- // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */
- // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from `node_modules`. Only applicable with `allowJs`. */
-
- /* Emit */
- // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */
- // "declarationMap": true, /* Create sourcemaps for d.ts files. */
- // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */
- // "sourceMap": true, /* Create source map files for emitted JavaScript files. */
- // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If `declaration` is true, also designates a file that bundles all .d.ts output. */
- // "outDir": "./", /* Specify an output folder for all emitted files. */
- // "removeComments": true, /* Disable emitting comments. */
- // "noEmit": true, /* Disable emitting files from a compilation. */
- // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
- // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types */
- // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */
- // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */
- // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
- // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */
- // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */
- // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */
- // "newLine": "crlf", /* Set the newline character for emitting files. */
- // "stripInternal": true, /* Disable emitting declarations that have `@internal` in their JSDoc comments. */
- // "noEmitHelpers": true, /* Disable generating custom helper functions like `__extends` in compiled output. */
- // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */
- // "preserveConstEnums": true, /* Disable erasing `const enum` declarations in generated code. */
- // "declarationDir": "./", /* Specify the output directory for generated declaration files. */
- // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */
-
- /* Interop Constraints */
- // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */
- // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */
"esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */
- // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
"forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
-
- /* Type Checking */
"strict": true, /* Enable all strict type-checking options. */
- // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied `any` type.. */
- // "strictNullChecks": true, /* When type checking, take into account `null` and `undefined`. */
- // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
- // "strictBindCallApply": true, /* Check that the arguments for `bind`, `call`, and `apply` methods match the original function. */
- // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */
- // "noImplicitThis": true, /* Enable error reporting when `this` is given the type `any`. */
- // "useUnknownInCatchVariables": true, /* Type catch clause variables as 'unknown' instead of 'any'. */
- // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */
- // "noUnusedLocals": true, /* Enable error reporting when a local variables aren't read. */
- // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read */
- // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */
- // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */
- // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */
- // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */
- // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */
- // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type */
- // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */
- // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */
-
- /* Completeness */
- // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
"skipLibCheck": true /* Skip type checking all .d.ts files. */
}
}
diff --git a/javascript/examples/ts-monorepo/tsup.config.ts b/javascript/examples/ts-monorepo/tsup.config.ts
new file mode 100644
index 0000000..f06da77
--- /dev/null
+++ b/javascript/examples/ts-monorepo/tsup.config.ts
@@ -0,0 +1,110 @@
+import { defineConfig, Options } from "tsup";
+import path from "path";
+import fs from "fs";
+
+// Using the work from mark
+// https://github.com/reduxjs/redux/blob/c9e06506f88926e252daf5275495eba0c04bf8e3/tsup.config.ts#L2
+// https://blog.isquaredsoftware.com/2023/08/esm-modernization-lessons/
+
+/** Adds support for replacing process.env.* references with stamped values from bazel */
+function getStampedSubstitutions(): Record {
+ const contextDir = path.join(
+ process.env.BAZEL_BINDIR ?? "",
+ process.env.BAZEL_PACKAGE ?? ""
+ );
+ const contextDirRelative = contextDir.split(path.sep).map(() => "..");
+ const rootDir = path.join(process.cwd(), ...contextDirRelative);
+
+ if (
+ !process.env.BAZEL_STABLE_STATUS_FILE ||
+ !process.env.BAZEL_VOLATILE_STATUS_FILE
+ ) {
+ return {};
+ }
+
+ const stableStatusFile = path.join(
+ rootDir,
+ process.env.BAZEL_STABLE_STATUS_FILE
+ );
+
+ const volatileStatusFile = path.join(
+ rootDir,
+ process.env.BAZEL_VOLATILE_STATUS_FILE
+ );
+
+ const customSubstitutions = JSON.parse(
+ process.env.STAMP_SUBSTITUTIONS ?? "{}"
+ );
+
+ const substitutions: Record = {};
+
+ [stableStatusFile, volatileStatusFile].forEach((statusFile) => {
+ if (!fs.existsSync(statusFile)) {
+ return;
+ }
+
+ const contents = fs.readFileSync(statusFile, "utf-8");
+
+ contents.split("\n").forEach((statusLine) => {
+ if (!statusLine.trim()) {
+ return;
+ }
+
+ const firstSpace = statusLine.indexOf(" ");
+ const varName = statusLine.substring(0, firstSpace);
+ const varVal = statusLine.substring(firstSpace + 1);
+
+ substitutions[`process.env.${varName}`] = JSON.stringify(varVal);
+
+ Object.entries(customSubstitutions).forEach(([key, value]) => {
+ if (value === `{${varName}}`) {
+ substitutions[key] = JSON.stringify(varVal);
+ }
+ });
+ });
+ });
+
+ return substitutions;
+}
+
+export function createConfig() {
+ return defineConfig((options: Options) => {
+ const defaultOptions: Options = {
+ entry: ["src/index.ts"],
+ dts: true,
+ sourcemap: true,
+ define: getStampedSubstitutions(),
+ ...options,
+ };
+
+ return [
+ {
+ ...defaultOptions,
+ format: ["esm"],
+ outExtension: () => ({ js: ".mjs" }),
+ dts: true,
+ clean: true,
+ onSuccess() {
+ // Support Webpack 4 by pointing `"module"` to a file with a `.js` extension
+ fs.copyFileSync("dist/index.mjs", "dist/index.legacy-esm.js");
+ },
+ },
+ // Browser-ready ESM, production + minified
+ {
+ ...defaultOptions,
+ define: {
+ ...defaultOptions.define,
+ "process.env.NODE_ENV": JSON.stringify("production"),
+ },
+ format: ["esm"],
+ outExtension: () => ({ js: ".mjs" }),
+ },
+ {
+ ...defaultOptions,
+ format: "cjs",
+ outDir: "./dist/cjs/",
+ outExtension: () => ({ js: ".cjs" }),
+ },
+ ];
+ });
+}
diff --git a/javascript/examples/ts-monorepo/vitest.config.ts b/javascript/examples/ts-monorepo/vitest.config.ts
new file mode 100644
index 0000000..de462b9
--- /dev/null
+++ b/javascript/examples/ts-monorepo/vitest.config.ts
@@ -0,0 +1,26 @@
+import { defineConfig } from 'vitest/config';
+import path from 'node:path';
+
+const COVERAGE_OUTPUT_FILE = path.relative(
+ process.cwd(),
+ process.env.COVERAGE_OUTPUT_FILE ?? 'coverage.dat'
+);
+
+export default defineConfig({
+ test: {
+ reporters: ['default', 'junit'],
+ outputFile: {
+ junit: process.env.XML_OUTPUT_FILE ?? 'test-results.xml',
+ },
+
+ passWithNoTests: true,
+
+ coverage: {
+ enabled: Boolean(process.env.COVERAGE_OUTPUT_FILE),
+ reportOnFailure: true,
+ provider: 'v8',
+ reportsDirectory: 'coverage_test',
+ reporter: ['text', 'html', ['lcovonly', { file: COVERAGE_OUTPUT_FILE }]],
+ },
+ },
+});
diff --git a/javascript/examples/ts-monorepo/workspace_status.sh b/javascript/examples/ts-monorepo/workspace_status.sh
new file mode 100755
index 0000000..1526798
--- /dev/null
+++ b/javascript/examples/ts-monorepo/workspace_status.sh
@@ -0,0 +1 @@
+echo 'STABLE_VERSION 1.1.1'
\ No newline at end of file
diff --git a/javascript/examples/ts-monorepo/yarn.lock b/javascript/examples/ts-monorepo/yarn.lock
deleted file mode 100644
index 8ec8112..0000000
--- a/javascript/examples/ts-monorepo/yarn.lock
+++ /dev/null
@@ -1,4798 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@babel/code-frame@^7.0.0":
- version "7.16.7"
- resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789"
- integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==
- dependencies:
- "@babel/highlight" "^7.16.7"
-
-"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5", "@babel/code-frame@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431"
- integrity sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==
- dependencies:
- "@babel/highlight" "^7.16.0"
-
-"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.16.0", "@babel/compat-data@^7.16.4":
- version "7.16.4"
- resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.4.tgz#081d6bbc336ec5c2435c6346b2ae1fb98b5ac68e"
- integrity sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==
-
-"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.7.5":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.0.tgz#c4ff44046f5fe310525cc9eb4ef5147f0c5374d4"
- integrity sha512-mYZEvshBRHGsIAiyH5PzCFTCfbWfoYbO/jcSdXQSUQu1/pW0xDZAUP7KEc32heqWTAfAHhV9j1vH8Sav7l+JNQ==
- dependencies:
- "@babel/code-frame" "^7.16.0"
- "@babel/generator" "^7.16.0"
- "@babel/helper-compilation-targets" "^7.16.0"
- "@babel/helper-module-transforms" "^7.16.0"
- "@babel/helpers" "^7.16.0"
- "@babel/parser" "^7.16.0"
- "@babel/template" "^7.16.0"
- "@babel/traverse" "^7.16.0"
- "@babel/types" "^7.16.0"
- convert-source-map "^1.7.0"
- debug "^4.1.0"
- gensync "^1.0.0-beta.2"
- json5 "^2.1.2"
- semver "^6.3.0"
- source-map "^0.5.0"
-
-"@babel/eslint-parser@^7.15.8":
- version "7.17.0"
- resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.17.0.tgz#eabb24ad9f0afa80e5849f8240d0e5facc2d90d6"
- integrity sha512-PUEJ7ZBXbRkbq3qqM/jZ2nIuakUBqCYc7Qf52Lj7dlZ6zERnqisdHioL0l4wwQZnmskMeasqUNzLBFKs3nylXA==
- dependencies:
- eslint-scope "^5.1.1"
- eslint-visitor-keys "^2.1.0"
- semver "^6.3.0"
-
-"@babel/generator@^7.16.0", "@babel/generator@^7.7.2":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.16.0.tgz#d40f3d1d5075e62d3500bccb67f3daa8a95265b2"
- integrity sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew==
- dependencies:
- "@babel/types" "^7.16.0"
- jsesc "^2.5.1"
- source-map "^0.5.0"
-
-"@babel/helper-annotate-as-pure@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz#9a1f0ebcda53d9a2d00108c4ceace6a5d5f1f08d"
- integrity sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-builder-binary-assignment-operator-visitor@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.0.tgz#f1a686b92da794020c26582eb852e9accd0d7882"
- integrity sha512-9KuleLT0e77wFUku6TUkqZzCEymBdtuQQ27MhEKzf9UOOJu3cYj98kyaDAzxpC7lV6DGiZFuC8XqDsq8/Kl6aQ==
- dependencies:
- "@babel/helper-explode-assignable-expression" "^7.16.0"
- "@babel/types" "^7.16.0"
-
-"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.16.0", "@babel/helper-compilation-targets@^7.16.3":
- version "7.16.3"
- resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz#5b480cd13f68363df6ec4dc8ac8e2da11363cbf0"
- integrity sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA==
- dependencies:
- "@babel/compat-data" "^7.16.0"
- "@babel/helper-validator-option" "^7.14.5"
- browserslist "^4.17.5"
- semver "^6.3.0"
-
-"@babel/helper-create-class-features-plugin@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.0.tgz#090d4d166b342a03a9fec37ef4fd5aeb9c7c6a4b"
- integrity sha512-XLwWvqEaq19zFlF5PTgOod4bUA+XbkR4WLQBct1bkzmxJGB0ZEJaoKF4c8cgH9oBtCDuYJ8BP5NB9uFiEgO5QA==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.16.0"
- "@babel/helper-function-name" "^7.16.0"
- "@babel/helper-member-expression-to-functions" "^7.16.0"
- "@babel/helper-optimise-call-expression" "^7.16.0"
- "@babel/helper-replace-supers" "^7.16.0"
- "@babel/helper-split-export-declaration" "^7.16.0"
-
-"@babel/helper-create-regexp-features-plugin@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.16.0.tgz#06b2348ce37fccc4f5e18dcd8d75053f2a7c44ff"
- integrity sha512-3DyG0zAFAZKcOp7aVr33ddwkxJ0Z0Jr5V99y3I690eYLpukJsJvAbzTy1ewoCqsML8SbIrjH14Jc/nSQ4TvNPA==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.16.0"
- regexpu-core "^4.7.1"
-
-"@babel/helper-define-polyfill-provider@^0.3.0":
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.0.tgz#c5b10cf4b324ff840140bb07e05b8564af2ae971"
- integrity sha512-7hfT8lUljl/tM3h+izTX/pO3W3frz2ok6Pk+gzys8iJqDfZrZy2pXjRTZAvG2YmfHun1X4q8/UZRLatMfqc5Tg==
- dependencies:
- "@babel/helper-compilation-targets" "^7.13.0"
- "@babel/helper-module-imports" "^7.12.13"
- "@babel/helper-plugin-utils" "^7.13.0"
- "@babel/traverse" "^7.13.0"
- debug "^4.1.1"
- lodash.debounce "^4.0.8"
- resolve "^1.14.2"
- semver "^6.1.2"
-
-"@babel/helper-explode-assignable-expression@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.0.tgz#753017337a15f46f9c09f674cff10cee9b9d7778"
- integrity sha512-Hk2SLxC9ZbcOhLpg/yMznzJ11W++lg5GMbxt1ev6TXUiJB0N42KPC+7w8a+eWGuqDnUYuwStJoZHM7RgmIOaGQ==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-function-name@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz#b7dd0797d00bbfee4f07e9c4ea5b0e30c8bb1481"
- integrity sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog==
- dependencies:
- "@babel/helper-get-function-arity" "^7.16.0"
- "@babel/template" "^7.16.0"
- "@babel/types" "^7.16.0"
-
-"@babel/helper-get-function-arity@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz#0088c7486b29a9cb5d948b1a1de46db66e089cfa"
- integrity sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-hoist-variables@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz#4c9023c2f1def7e28ff46fc1dbcd36a39beaa81a"
- integrity sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-member-expression-to-functions@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz#29287040efd197c77636ef75188e81da8bccd5a4"
- integrity sha512-bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz#90538e60b672ecf1b448f5f4f5433d37e79a3ec3"
- integrity sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-module-transforms@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz#1c82a8dd4cb34577502ebd2909699b194c3e9bb5"
- integrity sha512-My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA==
- dependencies:
- "@babel/helper-module-imports" "^7.16.0"
- "@babel/helper-replace-supers" "^7.16.0"
- "@babel/helper-simple-access" "^7.16.0"
- "@babel/helper-split-export-declaration" "^7.16.0"
- "@babel/helper-validator-identifier" "^7.15.7"
- "@babel/template" "^7.16.0"
- "@babel/traverse" "^7.16.0"
- "@babel/types" "^7.16.0"
-
-"@babel/helper-optimise-call-expression@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz#cecdb145d70c54096b1564f8e9f10cd7d193b338"
- integrity sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz#5ac822ce97eec46741ab70a517971e443a70c5a9"
- integrity sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==
-
-"@babel/helper-remap-async-to-generator@^7.16.0", "@babel/helper-remap-async-to-generator@^7.16.4":
- version "7.16.4"
- resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.4.tgz#5d7902f61349ff6b963e07f06a389ce139fbfe6e"
- integrity sha512-vGERmmhR+s7eH5Y/cp8PCVzj4XEjerq8jooMfxFdA5xVtAk9Sh4AQsrWgiErUEBjtGrBtOFKDUcWQFW4/dFwMA==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.16.0"
- "@babel/helper-wrap-function" "^7.16.0"
- "@babel/types" "^7.16.0"
-
-"@babel/helper-replace-supers@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz#73055e8d3cf9bcba8ddb55cad93fedc860f68f17"
- integrity sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA==
- dependencies:
- "@babel/helper-member-expression-to-functions" "^7.16.0"
- "@babel/helper-optimise-call-expression" "^7.16.0"
- "@babel/traverse" "^7.16.0"
- "@babel/types" "^7.16.0"
-
-"@babel/helper-simple-access@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz#21d6a27620e383e37534cf6c10bba019a6f90517"
- integrity sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-skip-transparent-expression-wrappers@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz#0ee3388070147c3ae051e487eca3ebb0e2e8bb09"
- integrity sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-split-export-declaration@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz#29672f43663e936df370aaeb22beddb3baec7438"
- integrity sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw==
- dependencies:
- "@babel/types" "^7.16.0"
-
-"@babel/helper-validator-identifier@^7.15.7":
- version "7.15.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389"
- integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==
-
-"@babel/helper-validator-identifier@^7.16.7":
- version "7.16.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad"
- integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==
-
-"@babel/helper-validator-option@^7.14.5":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3"
- integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==
-
-"@babel/helper-wrap-function@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.16.0.tgz#b3cf318afce774dfe75b86767cd6d68f3482e57c"
- integrity sha512-VVMGzYY3vkWgCJML+qVLvGIam902mJW0FvT7Avj1zEe0Gn7D93aWdLblYARTxEw+6DhZmtzhBM2zv0ekE5zg1g==
- dependencies:
- "@babel/helper-function-name" "^7.16.0"
- "@babel/template" "^7.16.0"
- "@babel/traverse" "^7.16.0"
- "@babel/types" "^7.16.0"
-
-"@babel/helpers@^7.16.0":
- version "7.16.3"
- resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.16.3.tgz#27fc64f40b996e7074dc73128c3e5c3e7f55c43c"
- integrity sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w==
- dependencies:
- "@babel/template" "^7.16.0"
- "@babel/traverse" "^7.16.3"
- "@babel/types" "^7.16.0"
-
-"@babel/highlight@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a"
- integrity sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==
- dependencies:
- "@babel/helper-validator-identifier" "^7.15.7"
- chalk "^2.0.0"
- js-tokens "^4.0.0"
-
-"@babel/highlight@^7.16.7":
- version "7.16.10"
- resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88"
- integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==
- dependencies:
- "@babel/helper-validator-identifier" "^7.16.7"
- chalk "^2.0.0"
- js-tokens "^4.0.0"
-
-"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.0", "@babel/parser@^7.16.3", "@babel/parser@^7.7.2":
- version "7.16.4"
- resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.4.tgz#d5f92f57cf2c74ffe9b37981c0e72fee7311372e"
- integrity sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==
-
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.2":
- version "7.16.2"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.2.tgz#2977fca9b212db153c195674e57cfab807733183"
- integrity sha512-h37CvpLSf8gb2lIJ2CgC3t+EjFbi0t8qS7LCS1xcJIlEXE4czlofwaW7W1HA8zpgOCzI9C1nmoqNR1zWkk0pQg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.0.tgz#358972eaab006f5eb0826183b0c93cbcaf13e1e2"
- integrity sha512-4tcFwwicpWTrpl9qjf7UsoosaArgImF85AxqCRZlgc3IQDvkUHjJpruXAL58Wmj+T6fypWTC/BakfEkwIL/pwA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0"
- "@babel/plugin-proposal-optional-chaining" "^7.16.0"
-
-"@babel/plugin-proposal-async-generator-functions@^7.16.4":
- version "7.16.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.4.tgz#e606eb6015fec6fa5978c940f315eae4e300b081"
- integrity sha512-/CUekqaAaZCQHleSK/9HajvcD/zdnJiKRiuUFq8ITE+0HsPzquf53cpFiqAwl/UfmJbR6n5uGPQSPdrmKOvHHg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-remap-async-to-generator" "^7.16.4"
- "@babel/plugin-syntax-async-generators" "^7.8.4"
-
-"@babel/plugin-proposal-class-properties@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.0.tgz#c029618267ddebc7280fa286e0f8ca2a278a2d1a"
- integrity sha512-mCF3HcuZSY9Fcx56Lbn+CGdT44ioBMMvjNVldpKtj8tpniETdLjnxdHI1+sDWXIM1nNt+EanJOZ3IG9lzVjs7A==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-proposal-class-static-block@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.16.0.tgz#5296942c564d8144c83eea347d0aa8a0b89170e7"
- integrity sha512-mAy3sdcY9sKAkf3lQbDiv3olOfiLqI51c9DR9b19uMoR2Z6r5pmGl7dfNFqEvqOyqbf1ta4lknK4gc5PJn3mfA==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-class-static-block" "^7.14.5"
-
-"@babel/plugin-proposal-dynamic-import@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.0.tgz#783eca61d50526202f9b296095453977e88659f1"
- integrity sha512-QGSA6ExWk95jFQgwz5GQ2Dr95cf7eI7TKutIXXTb7B1gCLTCz5hTjFTQGfLFBBiC5WSNi7udNwWsqbbMh1c4yQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-dynamic-import" "^7.8.3"
-
-"@babel/plugin-proposal-export-namespace-from@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.0.tgz#9c01dee40b9d6b847b656aaf4a3976a71740f222"
- integrity sha512-CjI4nxM/D+5wCnhD11MHB1AwRSAYeDT+h8gCdcVJZ/OK7+wRzFsf7PFPWVpVpNRkHMmMkQWAHpTq+15IXQ1diA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
-
-"@babel/plugin-proposal-json-strings@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.0.tgz#cae35a95ed1d2a7fa29c4dc41540b84a72e9ab25"
- integrity sha512-kouIPuiv8mSi5JkEhzApg5Gn6hFyKPnlkO0a9YSzqRurH8wYzSlf6RJdzluAsbqecdW5pBvDJDfyDIUR/vLxvg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-json-strings" "^7.8.3"
-
-"@babel/plugin-proposal-logical-assignment-operators@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.0.tgz#a711b8ceb3ffddd3ef88d3a49e86dbd3cc7db3fd"
- integrity sha512-pbW0fE30sVTYXXm9lpVQQ/Vc+iTeQKiXlaNRZPPN2A2VdlWyAtsUrsQ3xydSlDW00TFMK7a8m3cDTkBF5WnV3Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
-
-"@babel/plugin-proposal-nullish-coalescing-operator@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.0.tgz#44e1cce08fe2427482cf446a91bb451528ed0596"
- integrity sha512-3bnHA8CAFm7cG93v8loghDYyQ8r97Qydf63BeYiGgYbjKKB/XP53W15wfRC7dvKfoiJ34f6Rbyyx2btExc8XsQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
-
-"@babel/plugin-proposal-numeric-separator@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.0.tgz#5d418e4fbbf8b9b7d03125d3a52730433a373734"
- integrity sha512-FAhE2I6mjispy+vwwd6xWPyEx3NYFS13pikDBWUAFGZvq6POGs5eNchw8+1CYoEgBl9n11I3NkzD7ghn25PQ9Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-numeric-separator" "^7.10.4"
-
-"@babel/plugin-proposal-object-rest-spread@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.0.tgz#5fb32f6d924d6e6712810362a60e12a2609872e6"
- integrity sha512-LU/+jp89efe5HuWJLmMmFG0+xbz+I2rSI7iLc1AlaeSMDMOGzWlc5yJrMN1d04osXN4sSfpo4O+azkBNBes0jg==
- dependencies:
- "@babel/compat-data" "^7.16.0"
- "@babel/helper-compilation-targets" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
- "@babel/plugin-transform-parameters" "^7.16.0"
-
-"@babel/plugin-proposal-optional-catch-binding@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.0.tgz#5910085811ab4c28b00d6ebffa4ab0274d1e5f16"
- integrity sha512-kicDo0A/5J0nrsCPbn89mTG3Bm4XgYi0CZtvex9Oyw7gGZE3HXGD0zpQNH+mo+tEfbo8wbmMvJftOwpmPy7aVw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
-
-"@babel/plugin-proposal-optional-chaining@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.0.tgz#56dbc3970825683608e9efb55ea82c2a2d6c8dc0"
- integrity sha512-Y4rFpkZODfHrVo70Uaj6cC1JJOt3Pp0MdWSwIKtb8z1/lsjl9AmnB7ErRFV+QNGIfcY1Eruc2UMx5KaRnXjMyg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
-
-"@babel/plugin-proposal-private-methods@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.0.tgz#b4dafb9c717e4301c5776b30d080d6383c89aff6"
- integrity sha512-IvHmcTHDFztQGnn6aWq4t12QaBXTKr1whF/dgp9kz84X6GUcwq9utj7z2wFCUfeOup/QKnOlt2k0zxkGFx9ubg==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-proposal-private-property-in-object@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.0.tgz#69e935b2c5c79d2488112d886f0c4e2790fee76f"
- integrity sha512-3jQUr/HBbMVZmi72LpjQwlZ55i1queL8KcDTQEkAHihttJnAPrcvG9ZNXIfsd2ugpizZo595egYV6xy+pv4Ofw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.16.0"
- "@babel/helper-create-class-features-plugin" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
-
-"@babel/plugin-proposal-unicode-property-regex@^7.16.0", "@babel/plugin-proposal-unicode-property-regex@^7.4.4":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.0.tgz#890482dfc5ea378e42e19a71e709728cabf18612"
- integrity sha512-ti7IdM54NXv29cA4+bNNKEMS4jLMCbJgl+Drv+FgYy0erJLAxNAIXcNjNjrRZEcWq0xJHsNVwQezskMFpF8N9g==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-async-generators@^7.8.4":
- version "7.8.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d"
- integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-bigint@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea"
- integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3":
- version "7.12.13"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10"
- integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.12.13"
-
-"@babel/plugin-syntax-class-static-block@^7.14.5":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406"
- integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-dynamic-import@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3"
- integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-export-namespace-from@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a"
- integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.3"
-
-"@babel/plugin-syntax-import-meta@^7.8.3":
- version "7.10.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51"
- integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.10.4"
-
-"@babel/plugin-syntax-json-strings@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a"
- integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3":
- version "7.10.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699"
- integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==
- dependencies:
- "@babel/helper-plugin-utils" "^7.10.4"
-
-"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9"
- integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3":
- version "7.10.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97"
- integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==
- dependencies:
- "@babel/helper-plugin-utils" "^7.10.4"
-
-"@babel/plugin-syntax-object-rest-spread@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871"
- integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-optional-catch-binding@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1"
- integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-optional-chaining@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a"
- integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-private-property-in-object@^7.14.5":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad"
- integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c"
- integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-typescript@^7.16.0", "@babel/plugin-syntax-typescript@^7.7.2":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.0.tgz#2feeb13d9334cc582ea9111d3506f773174179bb"
- integrity sha512-Xv6mEXqVdaqCBfJFyeab0fH2DnUoMsDmhamxsSi4j8nLd4Vtw213WMJr55xxqipC/YVWyPY3K0blJncPYji+dQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-arrow-functions@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.0.tgz#951706f8b449c834ed07bd474c0924c944b95a8e"
- integrity sha512-vIFb5250Rbh7roWARvCLvIJ/PtAU5Lhv7BtZ1u24COwpI9Ypjsh+bZcKk6rlIyalK+r0jOc1XQ8I4ovNxNrWrA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-async-to-generator@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.0.tgz#df12637f9630ddfa0ef9d7a11bc414d629d38604"
- integrity sha512-PbIr7G9kR8tdH6g8Wouir5uVjklETk91GMVSUq+VaOgiinbCkBP6Q7NN/suM/QutZkMJMvcyAriogcYAdhg8Gw==
- dependencies:
- "@babel/helper-module-imports" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-remap-async-to-generator" "^7.16.0"
-
-"@babel/plugin-transform-block-scoped-functions@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.0.tgz#c618763233ad02847805abcac4c345ce9de7145d"
- integrity sha512-V14As3haUOP4ZWrLJ3VVx5rCnrYhMSHN/jX7z6FAt5hjRkLsb0snPCmJwSOML5oxkKO4FNoNv7V5hw/y2bjuvg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-block-scoping@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.0.tgz#bcf433fb482fe8c3d3b4e8a66b1c4a8e77d37c16"
- integrity sha512-27n3l67/R3UrXfizlvHGuTwsRIFyce3D/6a37GRxn28iyTPvNXaW4XvznexRh1zUNLPjbLL22Id0XQElV94ruw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-classes@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.0.tgz#54cf5ff0b2242c6573d753cd4bfc7077a8b282f5"
- integrity sha512-HUxMvy6GtAdd+GKBNYDWCIA776byUQH8zjnfjxwT1P1ARv/wFu8eBDpmXQcLS/IwRtrxIReGiplOwMeyO7nsDQ==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.16.0"
- "@babel/helper-function-name" "^7.16.0"
- "@babel/helper-optimise-call-expression" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-replace-supers" "^7.16.0"
- "@babel/helper-split-export-declaration" "^7.16.0"
- globals "^11.1.0"
-
-"@babel/plugin-transform-computed-properties@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.0.tgz#e0c385507d21e1b0b076d66bed6d5231b85110b7"
- integrity sha512-63l1dRXday6S8V3WFY5mXJwcRAnPYxvFfTlt67bwV1rTyVTM5zrp0DBBb13Kl7+ehkCVwIZPumPpFP/4u70+Tw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-destructuring@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.0.tgz#ad3d7e74584ad5ea4eadb1e6642146c590dee33c"
- integrity sha512-Q7tBUwjxLTsHEoqktemHBMtb3NYwyJPTJdM+wDwb0g8PZ3kQUIzNvwD5lPaqW/p54TXBc/MXZu9Jr7tbUEUM8Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-dotall-regex@^7.16.0", "@babel/plugin-transform-dotall-regex@^7.4.4":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.0.tgz#50bab00c1084b6162d0a58a818031cf57798e06f"
- integrity sha512-FXlDZfQeLILfJlC6I1qyEwcHK5UpRCFkaoVyA1nk9A1L1Yu583YO4un2KsLBsu3IJb4CUbctZks8tD9xPQubLw==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-duplicate-keys@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.0.tgz#8bc2e21813e3e89e5e5bf3b60aa5fc458575a176"
- integrity sha512-LIe2kcHKAZOJDNxujvmp6z3mfN6V9lJxubU4fJIGoQCkKe3Ec2OcbdlYP+vW++4MpxwG0d1wSDOJtQW5kLnkZQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-exponentiation-operator@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.0.tgz#a180cd2881e3533cef9d3901e48dad0fbeff4be4"
- integrity sha512-OwYEvzFI38hXklsrbNivzpO3fh87skzx8Pnqi4LoSYeav0xHlueSoCJrSgTPfnbyzopo5b3YVAJkFIcUpK2wsw==
- dependencies:
- "@babel/helper-builder-binary-assignment-operator-visitor" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-for-of@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.0.tgz#f7abaced155260e2461359bbc7c7248aca5e6bd2"
- integrity sha512-5QKUw2kO+GVmKr2wMYSATCTTnHyscl6sxFRAY+rvN7h7WB0lcG0o4NoV6ZQU32OZGVsYUsfLGgPQpDFdkfjlJQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-function-name@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.0.tgz#02e3699c284c6262236599f751065c5d5f1f400e"
- integrity sha512-lBzMle9jcOXtSOXUpc7tvvTpENu/NuekNJVova5lCCWCV9/U1ho2HH2y0p6mBg8fPm/syEAbfaaemYGOHCY3mg==
- dependencies:
- "@babel/helper-function-name" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-literals@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.0.tgz#79711e670ffceb31bd298229d50f3621f7980cac"
- integrity sha512-gQDlsSF1iv9RU04clgXqRjrPyyoJMTclFt3K1cjLmTKikc0s/6vE3hlDeEVC71wLTRu72Fq7650kABrdTc2wMQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-member-expression-literals@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.0.tgz#5251b4cce01eaf8314403d21aedb269d79f5e64b"
- integrity sha512-WRpw5HL4Jhnxw8QARzRvwojp9MIE7Tdk3ez6vRyUk1MwgjJN0aNpRoXainLR5SgxmoXx/vsXGZ6OthP6t/RbUg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-modules-amd@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.0.tgz#09abd41e18dcf4fd479c598c1cef7bd39eb1337e"
- integrity sha512-rWFhWbCJ9Wdmzln1NmSCqn7P0RAD+ogXG/bd9Kg5c7PKWkJtkiXmYsMBeXjDlzHpVTJ4I/hnjs45zX4dEv81xw==
- dependencies:
- "@babel/helper-module-transforms" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
- babel-plugin-dynamic-import-node "^2.3.3"
-
-"@babel/plugin-transform-modules-commonjs@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.0.tgz#add58e638c8ddc4875bd9a9ecb5c594613f6c922"
- integrity sha512-Dzi+NWqyEotgzk/sb7kgQPJQf7AJkQBWsVp1N6JWc1lBVo0vkElUnGdr1PzUBmfsCCN5OOFya3RtpeHk15oLKQ==
- dependencies:
- "@babel/helper-module-transforms" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-simple-access" "^7.16.0"
- babel-plugin-dynamic-import-node "^2.3.3"
-
-"@babel/plugin-transform-modules-systemjs@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.0.tgz#a92cf240afeb605f4ca16670453024425e421ea4"
- integrity sha512-yuGBaHS3lF1m/5R+6fjIke64ii5luRUg97N2wr+z1sF0V+sNSXPxXDdEEL/iYLszsN5VKxVB1IPfEqhzVpiqvg==
- dependencies:
- "@babel/helper-hoist-variables" "^7.16.0"
- "@babel/helper-module-transforms" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-validator-identifier" "^7.15.7"
- babel-plugin-dynamic-import-node "^2.3.3"
-
-"@babel/plugin-transform-modules-umd@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.0.tgz#195f26c2ad6d6a391b70880effce18ce625e06a7"
- integrity sha512-nx4f6no57himWiHhxDM5pjwhae5vLpTK2zCnDH8+wNLJy0TVER/LJRHl2bkt6w9Aad2sPD5iNNoUpY3X9sTGDg==
- dependencies:
- "@babel/helper-module-transforms" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-named-capturing-groups-regex@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.0.tgz#d3db61cc5d5b97986559967cd5ea83e5c32096ca"
- integrity sha512-LogN88uO+7EhxWc8WZuQ8vxdSyVGxhkh8WTC3tzlT8LccMuQdA81e9SGV6zY7kY2LjDhhDOFdQVxdGwPyBCnvg==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.16.0"
-
-"@babel/plugin-transform-new-target@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.0.tgz#af823ab576f752215a49937779a41ca65825ab35"
- integrity sha512-fhjrDEYv2DBsGN/P6rlqakwRwIp7rBGLPbrKxwh7oVt5NNkIhZVOY2GRV+ULLsQri1bDqwDWnU3vhlmx5B2aCw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-object-super@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.0.tgz#fb20d5806dc6491a06296ac14ea8e8d6fedda72b"
- integrity sha512-fds+puedQHn4cPLshoHcR1DTMN0q1V9ou0mUjm8whx9pGcNvDrVVrgw+KJzzCaiTdaYhldtrUps8DWVMgrSEyg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-replace-supers" "^7.16.0"
-
-"@babel/plugin-transform-parameters@^7.16.0", "@babel/plugin-transform-parameters@^7.16.3":
- version "7.16.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.3.tgz#fa9e4c874ee5223f891ee6fa8d737f4766d31d15"
- integrity sha512-3MaDpJrOXT1MZ/WCmkOFo7EtmVVC8H4EUZVrHvFOsmwkk4lOjQj8rzv8JKUZV4YoQKeoIgk07GO+acPU9IMu/w==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-property-literals@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.0.tgz#a95c552189a96a00059f6776dc4e00e3690c78d1"
- integrity sha512-XLldD4V8+pOqX2hwfWhgwXzGdnDOThxaNTgqagOcpBgIxbUvpgU2FMvo5E1RyHbk756WYgdbS0T8y0Cj9FKkWQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-regenerator@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.0.tgz#eaee422c84b0232d03aea7db99c97deeaf6125a4"
- integrity sha512-JAvGxgKuwS2PihiSFaDrp94XOzzTUeDeOQlcKzVAyaPap7BnZXK/lvMDiubkPTdotPKOIZq9xWXWnggUMYiExg==
- dependencies:
- regenerator-transform "^0.14.2"
-
-"@babel/plugin-transform-reserved-words@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.0.tgz#fff4b9dcb19e12619394bda172d14f2d04c0379c"
- integrity sha512-Dgs8NNCehHSvXdhEhln8u/TtJxfVwGYCgP2OOr5Z3Ar+B+zXicEOKNTyc+eca2cuEOMtjW6m9P9ijOt8QdqWkg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-shorthand-properties@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.0.tgz#090372e3141f7cc324ed70b3daf5379df2fa384d"
- integrity sha512-iVb1mTcD8fuhSv3k99+5tlXu5N0v8/DPm2mO3WACLG6al1CGZH7v09HJyUb1TtYl/Z+KrM6pHSIJdZxP5A+xow==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-spread@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.0.tgz#d21ca099bbd53ab307a8621e019a7bd0f40cdcfb"
- integrity sha512-Ao4MSYRaLAQczZVp9/7E7QHsCuK92yHRrmVNRe/SlEJjhzivq0BSn8mEraimL8wizHZ3fuaHxKH0iwzI13GyGg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0"
-
-"@babel/plugin-transform-sticky-regex@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.0.tgz#c35ea31a02d86be485f6aa510184b677a91738fd"
- integrity sha512-/ntT2NljR9foobKk4E/YyOSwcGUXtYWv5tinMK/3RkypyNBNdhHUaq6Orw5DWq9ZcNlS03BIlEALFeQgeVAo4Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-template-literals@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.0.tgz#a8eced3a8e7b8e2d40ec4ec4548a45912630d302"
- integrity sha512-Rd4Ic89hA/f7xUSJQk5PnC+4so50vBoBfxjdQAdvngwidM8jYIBVxBZ/sARxD4e0yMXRbJVDrYf7dyRtIIKT6Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-typeof-symbol@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.0.tgz#8b19a244c6f8c9d668dca6a6f754ad6ead1128f2"
- integrity sha512-++V2L8Bdf4vcaHi2raILnptTBjGEFxn5315YU+e8+EqXIucA+q349qWngCLpUYqqv233suJ6NOienIVUpS9cqg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-typescript@^7.16.0":
- version "7.16.1"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.16.1.tgz#cc0670b2822b0338355bc1b3d2246a42b8166409"
- integrity sha512-NO4XoryBng06jjw/qWEU2LhcLJr1tWkhpMam/H4eas/CDKMX/b2/Ylb6EI256Y7+FVPCawwSM1rrJNOpDiz+Lg==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/plugin-syntax-typescript" "^7.16.0"
-
-"@babel/plugin-transform-unicode-escapes@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.0.tgz#1a354064b4c45663a32334f46fa0cf6100b5b1f3"
- integrity sha512-VFi4dhgJM7Bpk8lRc5CMaRGlKZ29W9C3geZjt9beuzSUrlJxsNwX7ReLwaL6WEvsOf2EQkyIJEPtF8EXjB/g2A==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-transform-unicode-regex@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.0.tgz#293b80950177c8c85aede87cef280259fb995402"
- integrity sha512-jHLK4LxhHjvCeZDWyA9c+P9XH1sOxRd1RO9xMtDVRAOND/PczPqizEtVdx4TQF/wyPaewqpT+tgQFYMnN/P94A==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.16.0"
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/preset-env@^7.16.4":
- version "7.16.4"
- resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.16.4.tgz#4f6ec33b2a3fe72d6bfdcdf3859500232563a2e3"
- integrity sha512-v0QtNd81v/xKj4gNKeuAerQ/azeNn/G1B1qMLeXOcV8+4TWlD2j3NV1u8q29SDFBXx/NBq5kyEAO+0mpRgacjA==
- dependencies:
- "@babel/compat-data" "^7.16.4"
- "@babel/helper-compilation-targets" "^7.16.3"
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-validator-option" "^7.14.5"
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.16.2"
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.16.0"
- "@babel/plugin-proposal-async-generator-functions" "^7.16.4"
- "@babel/plugin-proposal-class-properties" "^7.16.0"
- "@babel/plugin-proposal-class-static-block" "^7.16.0"
- "@babel/plugin-proposal-dynamic-import" "^7.16.0"
- "@babel/plugin-proposal-export-namespace-from" "^7.16.0"
- "@babel/plugin-proposal-json-strings" "^7.16.0"
- "@babel/plugin-proposal-logical-assignment-operators" "^7.16.0"
- "@babel/plugin-proposal-nullish-coalescing-operator" "^7.16.0"
- "@babel/plugin-proposal-numeric-separator" "^7.16.0"
- "@babel/plugin-proposal-object-rest-spread" "^7.16.0"
- "@babel/plugin-proposal-optional-catch-binding" "^7.16.0"
- "@babel/plugin-proposal-optional-chaining" "^7.16.0"
- "@babel/plugin-proposal-private-methods" "^7.16.0"
- "@babel/plugin-proposal-private-property-in-object" "^7.16.0"
- "@babel/plugin-proposal-unicode-property-regex" "^7.16.0"
- "@babel/plugin-syntax-async-generators" "^7.8.4"
- "@babel/plugin-syntax-class-properties" "^7.12.13"
- "@babel/plugin-syntax-class-static-block" "^7.14.5"
- "@babel/plugin-syntax-dynamic-import" "^7.8.3"
- "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
- "@babel/plugin-syntax-json-strings" "^7.8.3"
- "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
- "@babel/plugin-syntax-numeric-separator" "^7.10.4"
- "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
- "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
- "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
- "@babel/plugin-syntax-top-level-await" "^7.14.5"
- "@babel/plugin-transform-arrow-functions" "^7.16.0"
- "@babel/plugin-transform-async-to-generator" "^7.16.0"
- "@babel/plugin-transform-block-scoped-functions" "^7.16.0"
- "@babel/plugin-transform-block-scoping" "^7.16.0"
- "@babel/plugin-transform-classes" "^7.16.0"
- "@babel/plugin-transform-computed-properties" "^7.16.0"
- "@babel/plugin-transform-destructuring" "^7.16.0"
- "@babel/plugin-transform-dotall-regex" "^7.16.0"
- "@babel/plugin-transform-duplicate-keys" "^7.16.0"
- "@babel/plugin-transform-exponentiation-operator" "^7.16.0"
- "@babel/plugin-transform-for-of" "^7.16.0"
- "@babel/plugin-transform-function-name" "^7.16.0"
- "@babel/plugin-transform-literals" "^7.16.0"
- "@babel/plugin-transform-member-expression-literals" "^7.16.0"
- "@babel/plugin-transform-modules-amd" "^7.16.0"
- "@babel/plugin-transform-modules-commonjs" "^7.16.0"
- "@babel/plugin-transform-modules-systemjs" "^7.16.0"
- "@babel/plugin-transform-modules-umd" "^7.16.0"
- "@babel/plugin-transform-named-capturing-groups-regex" "^7.16.0"
- "@babel/plugin-transform-new-target" "^7.16.0"
- "@babel/plugin-transform-object-super" "^7.16.0"
- "@babel/plugin-transform-parameters" "^7.16.3"
- "@babel/plugin-transform-property-literals" "^7.16.0"
- "@babel/plugin-transform-regenerator" "^7.16.0"
- "@babel/plugin-transform-reserved-words" "^7.16.0"
- "@babel/plugin-transform-shorthand-properties" "^7.16.0"
- "@babel/plugin-transform-spread" "^7.16.0"
- "@babel/plugin-transform-sticky-regex" "^7.16.0"
- "@babel/plugin-transform-template-literals" "^7.16.0"
- "@babel/plugin-transform-typeof-symbol" "^7.16.0"
- "@babel/plugin-transform-unicode-escapes" "^7.16.0"
- "@babel/plugin-transform-unicode-regex" "^7.16.0"
- "@babel/preset-modules" "^0.1.5"
- "@babel/types" "^7.16.0"
- babel-plugin-polyfill-corejs2 "^0.3.0"
- babel-plugin-polyfill-corejs3 "^0.4.0"
- babel-plugin-polyfill-regenerator "^0.3.0"
- core-js-compat "^3.19.1"
- semver "^6.3.0"
-
-"@babel/preset-modules@^0.1.5":
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9"
- integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/plugin-proposal-unicode-property-regex" "^7.4.4"
- "@babel/plugin-transform-dotall-regex" "^7.4.4"
- "@babel/types" "^7.4.4"
- esutils "^2.0.2"
-
-"@babel/preset-typescript@^7.16.0":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.16.0.tgz#b0b4f105b855fb3d631ec036cdc9d1ffd1fa5eac"
- integrity sha512-txegdrZYgO9DlPbv+9QOVpMnKbOtezsLHWsnsRF4AjbSIsVaujrq1qg8HK0mxQpWv0jnejt0yEoW1uWpvbrDTg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
- "@babel/helper-validator-option" "^7.14.5"
- "@babel/plugin-transform-typescript" "^7.16.0"
-
-"@babel/runtime@^7.8.4":
- version "7.16.3"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.16.3.tgz#b86f0db02a04187a3c17caa77de69840165d42d5"
- integrity sha512-WBwekcqacdY2e9AF/Q7WLFUWmdJGJTkbjqTjoMDgXkVZ3ZRUvOPsLb5KdwISoQVsbP+DQzVZW4Zhci0DvpbNTQ==
- dependencies:
- regenerator-runtime "^0.13.4"
-
-"@babel/template@^7.16.0", "@babel/template@^7.3.3":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.0.tgz#d16a35ebf4cd74e202083356fab21dd89363ddd6"
- integrity sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==
- dependencies:
- "@babel/code-frame" "^7.16.0"
- "@babel/parser" "^7.16.0"
- "@babel/types" "^7.16.0"
-
-"@babel/traverse@^7.1.0", "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.0", "@babel/traverse@^7.16.3", "@babel/traverse@^7.7.2":
- version "7.16.3"
- resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.3.tgz#f63e8a938cc1b780f66d9ed3c54f532ca2d14787"
- integrity sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag==
- dependencies:
- "@babel/code-frame" "^7.16.0"
- "@babel/generator" "^7.16.0"
- "@babel/helper-function-name" "^7.16.0"
- "@babel/helper-hoist-variables" "^7.16.0"
- "@babel/helper-split-export-declaration" "^7.16.0"
- "@babel/parser" "^7.16.3"
- "@babel/types" "^7.16.0"
- debug "^4.1.0"
- globals "^11.1.0"
-
-"@babel/types@^7.0.0", "@babel/types@^7.16.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4":
- version "7.16.0"
- resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.16.0.tgz#db3b313804f96aadd0b776c4823e127ad67289ba"
- integrity sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg==
- dependencies:
- "@babel/helper-validator-identifier" "^7.15.7"
- to-fast-properties "^2.0.0"
-
-"@bcoe/v8-coverage@^0.2.3":
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
- integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
-
-"@eslint/eslintrc@^1.0.4":
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.0.4.tgz#dfe0ff7ba270848d10c5add0715e04964c034b31"
- integrity sha512-h8Vx6MdxwWI2WM8/zREHMoqdgLNXEL4QX3MWSVMdyNJGvXVOs+6lp+m2hc3FnuMHDc4poxFNI20vCk0OmI4G0Q==
- dependencies:
- ajv "^6.12.4"
- debug "^4.3.2"
- espree "^9.0.0"
- globals "^13.9.0"
- ignore "^4.0.6"
- import-fresh "^3.2.1"
- js-yaml "^4.1.0"
- minimatch "^3.0.4"
- strip-json-comments "^3.1.1"
-
-"@humanwhocodes/config-array@^0.6.0":
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.6.0.tgz#b5621fdb3b32309d2d16575456cbc277fa8f021a"
- integrity sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A==
- dependencies:
- "@humanwhocodes/object-schema" "^1.2.0"
- debug "^4.1.1"
- minimatch "^3.0.4"
-
-"@humanwhocodes/object-schema@^1.2.0":
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
- integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
-
-"@istanbuljs/load-nyc-config@^1.0.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced"
- integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==
- dependencies:
- camelcase "^5.3.1"
- find-up "^4.1.0"
- get-package-type "^0.1.0"
- js-yaml "^3.13.1"
- resolve-from "^5.0.0"
-
-"@istanbuljs/schema@^0.1.2":
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98"
- integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==
-
-"@jest/console@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.4.0.tgz#7b3fd8de361da5366357ecda3c4d966dfdf03374"
- integrity sha512-2m7Xwcd1zTWtai5DCl+b0TAfoH8p5uqUoKmfzJCAfCrIwoJAf3xB+4nx3eKEGoyNfg5oavrh3gjbZ1n5z5eh4Q==
- dependencies:
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- chalk "^4.0.0"
- jest-message-util "^27.4.0"
- jest-util "^27.4.0"
- slash "^3.0.0"
-
-"@jest/core@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.4.0.tgz#99df49f41c3941a0f602e902cba939cfbcc96efc"
- integrity sha512-P6eoNIbE0OeenvCxrwdj0jRgeZg8r4eXNCS2zMgAS8EADzdp03mKe7TNwCsEPr460QIYCBwJo4W8wqai3UPXOA==
- dependencies:
- "@jest/console" "^27.4.0"
- "@jest/reporters" "^27.4.0"
- "@jest/test-result" "^27.4.0"
- "@jest/transform" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- ansi-escapes "^4.2.1"
- chalk "^4.0.0"
- emittery "^0.8.1"
- exit "^0.1.2"
- graceful-fs "^4.2.4"
- jest-changed-files "^27.4.0"
- jest-config "^27.4.0"
- jest-haste-map "^27.4.0"
- jest-message-util "^27.4.0"
- jest-regex-util "^27.4.0"
- jest-resolve "^27.4.0"
- jest-resolve-dependencies "^27.4.0"
- jest-runner "^27.4.0"
- jest-runtime "^27.4.0"
- jest-snapshot "^27.4.0"
- jest-util "^27.4.0"
- jest-validate "^27.4.0"
- jest-watcher "^27.4.0"
- micromatch "^4.0.4"
- rimraf "^3.0.0"
- slash "^3.0.0"
- strip-ansi "^6.0.0"
-
-"@jest/environment@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.4.0.tgz#3d7c162904d8ec5e5020c17d1276943d36402562"
- integrity sha512-7HJ1c6lVNuxrj9PT5AD4yVDDqFt9B0lLsshxZJXShL/LOkLnBO4MoZMH3w1lXQJY3zxk3/l1yg2j7uRKpxF4yw==
- dependencies:
- "@jest/fake-timers" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- jest-mock "^27.4.0"
-
-"@jest/fake-timers@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.4.0.tgz#541638975bad78e90fe2aed9f9e9d43709972410"
- integrity sha512-oyMxDKlj/ThRms9eS0xFkxmUvjJ8lHsNS4gNErDRFSruTER1/OQi2L5N0sJav+/AcBoY/Pa313CpB6RgdDacGA==
- dependencies:
- "@jest/types" "^27.4.0"
- "@sinonjs/fake-timers" "^8.0.1"
- "@types/node" "*"
- jest-message-util "^27.4.0"
- jest-mock "^27.4.0"
- jest-util "^27.4.0"
-
-"@jest/globals@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.4.0.tgz#2daa3ad0cb7e44ae7845b4de053866a6f0e051e8"
- integrity sha512-jIkd2RSV18wvOqFx5climVkwONuxqNKD8jHMvIumj8+E0qqWqymBcWymidjbxmJ3L3Zr60l0lAJGKw0BstREeQ==
- dependencies:
- "@jest/environment" "^27.4.0"
- "@jest/types" "^27.4.0"
- expect "^27.4.0"
-
-"@jest/reporters@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.4.0.tgz#27d93c81f85f118d5fc08c5e7d5bfd5be44aa00e"
- integrity sha512-QqIdI9WBH5tBwSHZ81FEZkt3h8fvw+zdV0YQrUtdEbJEBGV/AHgRsIP23sdD/ybLfRFpjZJEyWT+7dM4mxnPYQ==
- dependencies:
- "@bcoe/v8-coverage" "^0.2.3"
- "@jest/console" "^27.4.0"
- "@jest/test-result" "^27.4.0"
- "@jest/transform" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- chalk "^4.0.0"
- collect-v8-coverage "^1.0.0"
- exit "^0.1.2"
- glob "^7.1.2"
- graceful-fs "^4.2.4"
- istanbul-lib-coverage "^3.0.0"
- istanbul-lib-instrument "^4.0.3"
- istanbul-lib-report "^3.0.0"
- istanbul-lib-source-maps "^4.0.0"
- istanbul-reports "^3.0.2"
- jest-haste-map "^27.4.0"
- jest-resolve "^27.4.0"
- jest-util "^27.4.0"
- jest-worker "^27.4.0"
- slash "^3.0.0"
- source-map "^0.6.0"
- string-length "^4.0.1"
- terminal-link "^2.0.0"
- v8-to-istanbul "^8.1.0"
-
-"@jest/source-map@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.4.0.tgz#2f0385d0d884fb3e2554e8f71f8fa957af9a74b6"
- integrity sha512-Ntjx9jzP26Bvhbm93z/AKcPRj/9wrkI88/gK60glXDx1q+IeI0rf7Lw2c89Ch6ofonB0On/iRDreQuQ6te9pgQ==
- dependencies:
- callsites "^3.0.0"
- graceful-fs "^4.2.4"
- source-map "^0.6.0"
-
-"@jest/test-result@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.4.0.tgz#5a42153c270e0c3988557c13e72517186a6c7bcb"
- integrity sha512-/RiwMUC9pKK1E85CEflPvb4uE4Zo9JK2Iq3RbkbBoj4FkEASb/Zsqta8WGot2J1GxOk3rqdW513tfSDYQQJVpA==
- dependencies:
- "@jest/console" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/istanbul-lib-coverage" "^2.0.0"
- collect-v8-coverage "^1.0.0"
-
-"@jest/test-sequencer@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.4.0.tgz#c42e2bdaadf5d197a107bd36a6316320cecca651"
- integrity sha512-yKu+sjFgelc5zUf0kcbbsO86qV0NIMPyYFFRaWTaEsq+j7aueX/Zev+NcX+bm7BCwCMWeK7V5AUE6HUOblylHA==
- dependencies:
- "@jest/test-result" "^27.4.0"
- graceful-fs "^4.2.4"
- jest-haste-map "^27.4.0"
- jest-runtime "^27.4.0"
-
-"@jest/transform@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.4.0.tgz#060bf842d3ac162c50c684e8422f3bfce6c824c1"
- integrity sha512-/8Cb8kEoCtXN/Co5lvv+jG0zv4Uj3ruIvffYUzxNGRGmM7qqaHtOBZ3WbH0T1Nvjya5utTA4YtwbInZVS6Zt9A==
- dependencies:
- "@babel/core" "^7.1.0"
- "@jest/types" "^27.4.0"
- babel-plugin-istanbul "^6.0.0"
- chalk "^4.0.0"
- convert-source-map "^1.4.0"
- fast-json-stable-stringify "^2.0.0"
- graceful-fs "^4.2.4"
- jest-haste-map "^27.4.0"
- jest-regex-util "^27.4.0"
- jest-util "^27.4.0"
- micromatch "^4.0.4"
- pirates "^4.0.1"
- slash "^3.0.0"
- source-map "^0.6.1"
- write-file-atomic "^3.0.0"
-
-"@jest/types@^27.4.0":
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.4.0.tgz#ac5c04d29ce47e0b96439dfd44ec3cd930fc9f86"
- integrity sha512-jIsLdASXMf8GS7P7oGFGwobNse/6Ewq3GBPHoo0i6XRmja+NrUoDqJm4a1ffF2bHGleKJizxokcp1sCqSktP3g==
- dependencies:
- "@types/istanbul-lib-coverage" "^2.0.0"
- "@types/istanbul-reports" "^3.0.0"
- "@types/node" "*"
- "@types/yargs" "^16.0.0"
- chalk "^4.0.0"
-
-"@nodelib/fs.scandir@2.1.5":
- version "2.1.5"
- resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
- integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
- dependencies:
- "@nodelib/fs.stat" "2.0.5"
- run-parallel "^1.1.9"
-
-"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
- integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
-
-"@nodelib/fs.walk@^1.2.3":
- version "1.2.8"
- resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
- integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
- dependencies:
- "@nodelib/fs.scandir" "2.1.5"
- fastq "^1.6.0"
-
-"@rollup/plugin-image@^2.1.1":
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/@rollup/plugin-image/-/plugin-image-2.1.1.tgz#898d6b59ac0025d7971ef45640ab330cb0663b0c"
- integrity sha512-AgP4U85zuQJdUopLUCM+hTf45RepgXeTb8EJsleExVy99dIoYpt3ZlDYJdKmAc2KLkNntCDg6BPJvgJU3uGF+g==
- dependencies:
- "@rollup/pluginutils" "^3.1.0"
- mini-svg-data-uri "^1.2.3"
-
-"@rollup/plugin-json@^4.1.0":
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/@rollup/plugin-json/-/plugin-json-4.1.0.tgz#54e09867ae6963c593844d8bd7a9c718294496f3"
- integrity sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==
- dependencies:
- "@rollup/pluginutils" "^3.0.8"
-
-"@rollup/pluginutils@^3.0.8", "@rollup/pluginutils@^3.1.0":
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b"
- integrity sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==
- dependencies:
- "@types/estree" "0.0.39"
- estree-walker "^1.0.1"
- picomatch "^2.2.2"
-
-"@rollup/pluginutils@^4.1.1":
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-4.1.1.tgz#1d4da86dd4eded15656a57d933fda2b9a08d47ec"
- integrity sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ==
- dependencies:
- estree-walker "^2.0.1"
- picomatch "^2.2.2"
-
-"@rollup/pluginutils@^4.1.2":
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-4.1.2.tgz#ed5821c15e5e05e32816f5fb9ec607cdf5a75751"
- integrity sha512-ROn4qvkxP9SyPeHaf7uQC/GPFY6L/OWy9+bd9AwcjOAWQwxRscoEyAUD8qCY5o5iL4jqQwoLk2kaTKJPb/HwzQ==
- dependencies:
- estree-walker "^2.0.1"
- picomatch "^2.2.2"
-
-"@sinonjs/commons@^1.7.0":
- version "1.8.3"
- resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d"
- integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==
- dependencies:
- type-detect "4.0.8"
-
-"@sinonjs/fake-timers@^8.0.1":
- version "8.1.0"
- resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7"
- integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==
- dependencies:
- "@sinonjs/commons" "^1.7.0"
-
-"@tootallnate/once@1":
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82"
- integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==
-
-"@trysound/sax@0.2.0":
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad"
- integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==
-
-"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14":
- version "7.1.16"
- resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.16.tgz#bc12c74b7d65e82d29876b5d0baf5c625ac58702"
- integrity sha512-EAEHtisTMM+KaKwfWdC3oyllIqswlznXCIVCt7/oRNrh+DhgT4UEBNC/jlADNjvw7UnfbcdkGQcPVZ1xYiLcrQ==
- dependencies:
- "@babel/parser" "^7.1.0"
- "@babel/types" "^7.0.0"
- "@types/babel__generator" "*"
- "@types/babel__template" "*"
- "@types/babel__traverse" "*"
-
-"@types/babel__generator@*":
- version "7.6.3"
- resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.3.tgz#f456b4b2ce79137f768aa130d2423d2f0ccfaba5"
- integrity sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA==
- dependencies:
- "@babel/types" "^7.0.0"
-
-"@types/babel__template@*":
- version "7.4.1"
- resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969"
- integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==
- dependencies:
- "@babel/parser" "^7.1.0"
- "@babel/types" "^7.0.0"
-
-"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6":
- version "7.14.2"
- resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43"
- integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==
- dependencies:
- "@babel/types" "^7.3.0"
-
-"@types/cssnano@^5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@types/cssnano/-/cssnano-5.0.0.tgz#9463679a7f11ea375e0ed4ada46c04de6c908ef0"
- integrity sha512-z98V7ICNAojxj9YV9+Q8qV+F7fW0poLWJRjed9tu7KNdYzHwAvLOAsTMI8xWjkOY9yzO+HmMxRRixlIvRsZwXg==
- dependencies:
- postcss "^8"
-
-"@types/estree@0.0.39":
- version "0.0.39"
- resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f"
- integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==
-
-"@types/graceful-fs@^4.1.2":
- version "4.1.5"
- resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15"
- integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==
- dependencies:
- "@types/node" "*"
-
-"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762"
- integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==
-
-"@types/istanbul-lib-report@*":
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686"
- integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==
- dependencies:
- "@types/istanbul-lib-coverage" "*"
-
-"@types/istanbul-reports@^3.0.0":
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff"
- integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==
- dependencies:
- "@types/istanbul-lib-report" "*"
-
-"@types/jsdom@^16.2.4":
- version "16.2.13"
- resolved "https://registry.yarnpkg.com/@types/jsdom/-/jsdom-16.2.13.tgz#126c8b7441b159d6234610a48de77b6066f1823f"
- integrity sha512-8JQCjdeAidptSsOcRWk2iTm9wCcwn9l+kRG6k5bzUacrnm1ezV4forq0kWjUih/tumAeoG+OspOvQEbbRucBTw==
- dependencies:
- "@types/node" "*"
- "@types/parse5" "*"
- "@types/tough-cookie" "*"
-
-"@types/json-schema@^7.0.9":
- version "7.0.9"
- resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d"
- integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==
-
-"@types/node@*":
- version "16.11.11"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.11.tgz#6ea7342dfb379ea1210835bada87b3c512120234"
- integrity sha512-KB0sixD67CeecHC33MYn+eYARkqTheIRNuu97y2XMjR7Wu3XibO1vaY6VBV6O/a89SPI81cEUIYT87UqUWlZNw==
-
-"@types/parse-json@^4.0.0":
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
- integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
-
-"@types/parse5@*":
- version "6.0.3"
- resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-6.0.3.tgz#705bb349e789efa06f43f128cef51240753424cb"
- integrity sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==
-
-"@types/prettier@^2.1.5":
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.2.tgz#4c62fae93eb479660c3bd93f9d24d561597a8281"
- integrity sha512-ekoj4qOQYp7CvjX8ZDBgN86w3MqQhLE1hczEJbEIjgFEumDy+na/4AJAbLXfgEWFNB2pKadM5rPFtuSGMWK7xA==
-
-"@types/stack-utils@^2.0.0":
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c"
- integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==
-
-"@types/tough-cookie@*":
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.1.tgz#8f80dd965ad81f3e1bc26d6f5c727e132721ff40"
- integrity sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg==
-
-"@types/yargs-parser@*":
- version "20.2.1"
- resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129"
- integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==
-
-"@types/yargs@^16.0.0":
- version "16.0.4"
- resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977"
- integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==
- dependencies:
- "@types/yargs-parser" "*"
-
-"@typescript-eslint/experimental-utils@^5.0.0":
- version "5.10.2"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.10.2.tgz#dbb541e2070c7bd6e63d3e3a55b58be73a8fbb34"
- integrity sha512-stRnIlxDduzxtaVLtEohESoXI1k7J6jvJHGyIkOT2pvXbg5whPM6f9tzJ51bJJxaJTdmvwgVFDNCopFRb2F5Gw==
- dependencies:
- "@typescript-eslint/utils" "5.10.2"
-
-"@typescript-eslint/scope-manager@5.10.2":
- version "5.10.2"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.10.2.tgz#92c0bc935ec00f3d8638cdffb3d0e70c9b879639"
- integrity sha512-39Tm6f4RoZoVUWBYr3ekS75TYgpr5Y+X0xLZxXqcZNDWZdJdYbKd3q2IR4V9y5NxxiPu/jxJ8XP7EgHiEQtFnw==
- dependencies:
- "@typescript-eslint/types" "5.10.2"
- "@typescript-eslint/visitor-keys" "5.10.2"
-
-"@typescript-eslint/types@5.10.2":
- version "5.10.2"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.10.2.tgz#604d15d795c4601fffba6ecb4587ff9fdec68ce8"
- integrity sha512-Qfp0qk/5j2Rz3p3/WhWgu4S1JtMcPgFLnmAKAW061uXxKSa7VWKZsDXVaMXh2N60CX9h6YLaBoy9PJAfCOjk3w==
-
-"@typescript-eslint/typescript-estree@5.10.2":
- version "5.10.2"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.10.2.tgz#810906056cd3ddcb35aa333fdbbef3713b0fe4a7"
- integrity sha512-WHHw6a9vvZls6JkTgGljwCsMkv8wu8XU8WaYKeYhxhWXH/atZeiMW6uDFPLZOvzNOGmuSMvHtZKd6AuC8PrwKQ==
- dependencies:
- "@typescript-eslint/types" "5.10.2"
- "@typescript-eslint/visitor-keys" "5.10.2"
- debug "^4.3.2"
- globby "^11.0.4"
- is-glob "^4.0.3"
- semver "^7.3.5"
- tsutils "^3.21.0"
-
-"@typescript-eslint/utils@5.10.2":
- version "5.10.2"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.10.2.tgz#1fcd37547c32c648ab11aea7173ec30060ee87a8"
- integrity sha512-vuJaBeig1NnBRkf7q9tgMLREiYD7zsMrsN1DA3wcoMDvr3BTFiIpKjGiYZoKPllfEwN7spUjv7ZqD+JhbVjEPg==
- dependencies:
- "@types/json-schema" "^7.0.9"
- "@typescript-eslint/scope-manager" "5.10.2"
- "@typescript-eslint/types" "5.10.2"
- "@typescript-eslint/typescript-estree" "5.10.2"
- eslint-scope "^5.1.1"
- eslint-utils "^3.0.0"
-
-"@typescript-eslint/visitor-keys@5.10.2":
- version "5.10.2"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.10.2.tgz#fdbf272d8e61c045d865bd6c8b41bea73d222f3d"
- integrity sha512-zHIhYGGGrFJvvyfwHk5M08C5B5K4bewkm+rrvNTKk1/S15YHR+SA/QUF8ZWscXSfEaB8Nn2puZj+iHcoxVOD/Q==
- dependencies:
- "@typescript-eslint/types" "5.10.2"
- eslint-visitor-keys "^3.0.0"
-
-abab@^2.0.3, abab@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a"
- integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==
-
-acorn-globals@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45"
- integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==
- dependencies:
- acorn "^7.1.1"
- acorn-walk "^7.1.1"
-
-acorn-jsx@^5.3.1:
- version "5.3.2"
- resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
- integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
-
-acorn-walk@^7.1.1:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc"
- integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==
-
-acorn@^7.1.1:
- version "7.4.1"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
- integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
-
-acorn@^8.2.4, acorn@^8.6.0:
- version "8.6.0"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.6.0.tgz#e3692ba0eb1a0c83eaa4f37f5fa7368dd7142895"
- integrity sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw==
-
-agent-base@6:
- version "6.0.2"
- resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77"
- integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==
- dependencies:
- debug "4"
-
-ajv@^6.10.0, ajv@^6.12.4:
- version "6.12.6"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
- integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
- dependencies:
- fast-deep-equal "^3.1.1"
- fast-json-stable-stringify "^2.0.0"
- json-schema-traverse "^0.4.1"
- uri-js "^4.2.2"
-
-ansi-colors@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"
- integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==
-
-ansi-escapes@^4.2.1:
- version "4.3.2"
- resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
- integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==
- dependencies:
- type-fest "^0.21.3"
-
-ansi-regex@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
- integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
-
-ansi-styles@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
- integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
- dependencies:
- color-convert "^1.9.0"
-
-ansi-styles@^4.0.0, ansi-styles@^4.1.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
- integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
- dependencies:
- color-convert "^2.0.1"
-
-ansi-styles@^5.0.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b"
- integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==
-
-anymatch@^3.0.3:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716"
- integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==
- dependencies:
- normalize-path "^3.0.0"
- picomatch "^2.0.4"
-
-argparse@^1.0.7:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
- integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
- dependencies:
- sprintf-js "~1.0.2"
-
-argparse@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
- integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
-
-array-union@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
- integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
-
-asynckit@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
- integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
-
-babel-jest@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.4.0.tgz#ba78a2e19260a0009206f4e717ee2b78ee759781"
- integrity sha512-4855S+YT4Hx0OiXFDBOWhrMj1Y9zYE7StlchuZtr1vbo1LEDBIkt8U6+7cse8jkpJSV98w3nBVDrPgol5Ab/cQ==
- dependencies:
- "@jest/transform" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/babel__core" "^7.1.14"
- babel-plugin-istanbul "^6.0.0"
- babel-preset-jest "^27.4.0"
- chalk "^4.0.0"
- graceful-fs "^4.2.4"
- slash "^3.0.0"
-
-babel-plugin-dynamic-import-node@^2.3.3:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3"
- integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==
- dependencies:
- object.assign "^4.1.0"
-
-babel-plugin-istanbul@^6.0.0:
- version "6.1.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73"
- integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@istanbuljs/load-nyc-config" "^1.0.0"
- "@istanbuljs/schema" "^0.1.2"
- istanbul-lib-instrument "^5.0.4"
- test-exclude "^6.0.0"
-
-babel-plugin-jest-hoist@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.4.0.tgz#d7831fc0f93573788d80dee7e682482da4c730d6"
- integrity sha512-Jcu7qS4OX5kTWBc45Hz7BMmgXuJqRnhatqpUhnzGC3OBYpOmf2tv6jFNwZpwM7wU7MUuv2r9IPS/ZlYOuburVw==
- dependencies:
- "@babel/template" "^7.3.3"
- "@babel/types" "^7.3.3"
- "@types/babel__core" "^7.0.0"
- "@types/babel__traverse" "^7.0.6"
-
-babel-plugin-polyfill-corejs2@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.0.tgz#407082d0d355ba565af24126fb6cb8e9115251fd"
- integrity sha512-wMDoBJ6uG4u4PNFh72Ty6t3EgfA91puCuAwKIazbQlci+ENb/UU9A3xG5lutjUIiXCIn1CY5L15r9LimiJyrSA==
- dependencies:
- "@babel/compat-data" "^7.13.11"
- "@babel/helper-define-polyfill-provider" "^0.3.0"
- semver "^6.1.1"
-
-babel-plugin-polyfill-corejs3@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.4.0.tgz#0b571f4cf3d67f911512f5c04842a7b8e8263087"
- integrity sha512-YxFreYwUfglYKdLUGvIF2nJEsGwj+RhWSX/ije3D2vQPOXuyMLMtg/cCGMDpOA7Nd+MwlNdnGODbd2EwUZPlsw==
- dependencies:
- "@babel/helper-define-polyfill-provider" "^0.3.0"
- core-js-compat "^3.18.0"
-
-babel-plugin-polyfill-regenerator@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.0.tgz#9ebbcd7186e1a33e21c5e20cae4e7983949533be"
- integrity sha512-dhAPTDLGoMW5/84wkgwiLRwMnio2i1fUe53EuvtKMv0pn2p3S8OCoV1xAzfJPl0KOX7IB89s2ib85vbYiea3jg==
- dependencies:
- "@babel/helper-define-polyfill-provider" "^0.3.0"
-
-babel-preset-current-node-syntax@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b"
- integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==
- dependencies:
- "@babel/plugin-syntax-async-generators" "^7.8.4"
- "@babel/plugin-syntax-bigint" "^7.8.3"
- "@babel/plugin-syntax-class-properties" "^7.8.3"
- "@babel/plugin-syntax-import-meta" "^7.8.3"
- "@babel/plugin-syntax-json-strings" "^7.8.3"
- "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
- "@babel/plugin-syntax-numeric-separator" "^7.8.3"
- "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
- "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
- "@babel/plugin-syntax-top-level-await" "^7.8.3"
-
-babel-preset-jest@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.4.0.tgz#70d0e676a282ccb200fbabd7f415db5fdf393bca"
- integrity sha512-NK4jGYpnBvNxcGo7/ZpZJr51jCGT+3bwwpVIDY2oNfTxJJldRtB4VAcYdgp1loDE50ODuTu+yBjpMAswv5tlpg==
- dependencies:
- babel-plugin-jest-hoist "^27.4.0"
- babel-preset-current-node-syntax "^1.0.0"
-
-balanced-match@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
- integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
-
-boolbase@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
- integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24=
-
-brace-expansion@^1.1.7:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
- integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-braces@^3.0.1:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
- integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
- dependencies:
- fill-range "^7.0.1"
-
-browser-process-hrtime@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626"
- integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==
-
-browserslist@^4.0.0, browserslist@^4.16.6:
- version "4.19.1"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.19.1.tgz#4ac0435b35ab655896c31d53018b6dd5e9e4c9a3"
- integrity sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==
- dependencies:
- caniuse-lite "^1.0.30001286"
- electron-to-chromium "^1.4.17"
- escalade "^3.1.1"
- node-releases "^2.0.1"
- picocolors "^1.0.0"
-
-browserslist@^4.17.5, browserslist@^4.18.1:
- version "4.18.1"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.18.1.tgz#60d3920f25b6860eb917c6c7b185576f4d8b017f"
- integrity sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==
- dependencies:
- caniuse-lite "^1.0.30001280"
- electron-to-chromium "^1.3.896"
- escalade "^3.1.1"
- node-releases "^2.0.1"
- picocolors "^1.0.0"
-
-bser@2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05"
- integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==
- dependencies:
- node-int64 "^0.4.0"
-
-buffer-from@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
- integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
-
-call-bind@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
- integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==
- dependencies:
- function-bind "^1.1.1"
- get-intrinsic "^1.0.2"
-
-callsites@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
- integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
-
-camelcase@^5.3.1:
- version "5.3.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
- integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
-
-camelcase@^6.2.0:
- version "6.2.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.1.tgz#250fd350cfd555d0d2160b1d51510eaf8326e86e"
- integrity sha512-tVI4q5jjFV5CavAU8DXfza/TJcZutVKo/5Foskmsqcm0MsL91moHvwiGNnqaa2o6PF/7yT5ikDRcVcl8Rj6LCA==
-
-caniuse-api@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0"
- integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==
- dependencies:
- browserslist "^4.0.0"
- caniuse-lite "^1.0.0"
- lodash.memoize "^4.1.2"
- lodash.uniq "^4.5.0"
-
-caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001286:
- version "1.0.30001304"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001304.tgz#38af55ed3fc8220cb13e35e6e7309c8c65a05559"
- integrity sha512-bdsfZd6K6ap87AGqSHJP/s1V+U6Z5lyrcbBu3ovbCCf8cSYpwTtGrCBObMpJqwxfTbLW6YTIdbb1jEeTelcpYQ==
-
-caniuse-lite@^1.0.30001280:
- version "1.0.30001283"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001283.tgz#8573685bdae4d733ef18f78d44ba0ca5fe9e896b"
- integrity sha512-9RoKo841j1GQFSJz/nCXOj0sD7tHBtlowjYlrqIUS812x9/emfBLBt6IyMz1zIaYc/eRL8Cs6HPUVi2Hzq4sIg==
-
-chalk@^2.0.0:
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
- integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
- dependencies:
- ansi-styles "^3.2.1"
- escape-string-regexp "^1.0.5"
- supports-color "^5.3.0"
-
-chalk@^4.0.0:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
- integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
- dependencies:
- ansi-styles "^4.1.0"
- supports-color "^7.1.0"
-
-char-regex@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf"
- integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==
-
-ci-info@^3.2.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2"
- integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==
-
-cjs-module-lexer@^1.0.0:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40"
- integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==
-
-cliui@^7.0.2:
- version "7.0.4"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
- integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==
- dependencies:
- string-width "^4.2.0"
- strip-ansi "^6.0.0"
- wrap-ansi "^7.0.0"
-
-co@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
- integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=
-
-collect-v8-coverage@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59"
- integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==
-
-color-convert@^1.9.0:
- version "1.9.3"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
- integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
- dependencies:
- color-name "1.1.3"
-
-color-convert@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
- integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
- dependencies:
- color-name "~1.1.4"
-
-color-name@1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
- integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
-
-color-name@~1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
- integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
-
-colord@^2.9.1:
- version "2.9.2"
- resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.2.tgz#25e2bacbbaa65991422c07ea209e2089428effb1"
- integrity sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ==
-
-combined-stream@^1.0.8:
- version "1.0.8"
- resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
- integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
- dependencies:
- delayed-stream "~1.0.0"
-
-commander@^7.2.0:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7"
- integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
- integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
-
-convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369"
- integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==
- dependencies:
- safe-buffer "~5.1.1"
-
-core-js-compat@^3.18.0, core-js-compat@^3.19.1:
- version "3.19.2"
- resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.19.2.tgz#18066a3404a302433cb0aa8be82dd3d75c76e5c4"
- integrity sha512-ObBY1W5vx/LFFMaL1P5Udo4Npib6fu+cMokeziWkA8Tns4FcDemKF5j9JvaI5JhdkW8EQJQGJN1EcrzmEwuAqQ==
- dependencies:
- browserslist "^4.18.1"
- semver "7.0.0"
-
-cosmiconfig@^7.0.1:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d"
- integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==
- dependencies:
- "@types/parse-json" "^4.0.0"
- import-fresh "^3.2.1"
- parse-json "^5.0.0"
- path-type "^4.0.0"
- yaml "^1.10.0"
-
-cross-spawn@^7.0.2, cross-spawn@^7.0.3:
- version "7.0.3"
- resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
- integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
- dependencies:
- path-key "^3.1.0"
- shebang-command "^2.0.0"
- which "^2.0.1"
-
-css-declaration-sorter@^6.0.3:
- version "6.1.4"
- resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.1.4.tgz#b9bfb4ed9a41f8dcca9bf7184d849ea94a8294b4"
- integrity sha512-lpfkqS0fctcmZotJGhnxkIyJWvBXgpyi2wsFd4J8VB7wzyrT6Ch/3Q+FMNJpjK4gu1+GN5khOnpU2ZVKrLbhCw==
- dependencies:
- timsort "^0.3.0"
-
-css-select@^4.1.3:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.2.1.tgz#9e665d6ae4c7f9d65dbe69d0316e3221fb274cdd"
- integrity sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==
- dependencies:
- boolbase "^1.0.0"
- css-what "^5.1.0"
- domhandler "^4.3.0"
- domutils "^2.8.0"
- nth-check "^2.0.1"
-
-css-tree@^1.1.2, css-tree@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d"
- integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==
- dependencies:
- mdn-data "2.0.14"
- source-map "^0.6.1"
-
-css-what@^5.1.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe"
- integrity sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==
-
-cssesc@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
- integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
-
-cssnano-preset-default@^5.1.11:
- version "5.1.11"
- resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.1.11.tgz#db10fb1ecee310e8285c5aca45bd8237be206828"
- integrity sha512-ETet5hqHxmzQq2ynXMOQofKuLm7VOjMiOB7E2zdtm/hSeCKlD9fabzIUV4GoPcRyJRHi+4kGf0vsfGYbQ4nmPw==
- dependencies:
- css-declaration-sorter "^6.0.3"
- cssnano-utils "^3.0.1"
- postcss-calc "^8.2.0"
- postcss-colormin "^5.2.4"
- postcss-convert-values "^5.0.3"
- postcss-discard-comments "^5.0.2"
- postcss-discard-duplicates "^5.0.2"
- postcss-discard-empty "^5.0.2"
- postcss-discard-overridden "^5.0.3"
- postcss-merge-longhand "^5.0.5"
- postcss-merge-rules "^5.0.5"
- postcss-minify-font-values "^5.0.3"
- postcss-minify-gradients "^5.0.5"
- postcss-minify-params "^5.0.4"
- postcss-minify-selectors "^5.1.2"
- postcss-normalize-charset "^5.0.2"
- postcss-normalize-display-values "^5.0.2"
- postcss-normalize-positions "^5.0.3"
- postcss-normalize-repeat-style "^5.0.3"
- postcss-normalize-string "^5.0.3"
- postcss-normalize-timing-functions "^5.0.2"
- postcss-normalize-unicode "^5.0.3"
- postcss-normalize-url "^5.0.4"
- postcss-normalize-whitespace "^5.0.3"
- postcss-ordered-values "^5.0.4"
- postcss-reduce-initial "^5.0.2"
- postcss-reduce-transforms "^5.0.3"
- postcss-svgo "^5.0.3"
- postcss-unique-selectors "^5.0.3"
-
-cssnano-utils@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-3.0.1.tgz#d3cc0a142d3d217f8736837ec0a2ccff6a89c6ea"
- integrity sha512-VNCHL364lh++/ono+S3j9NlUK+d97KNkxI77NlqZU2W3xd2/qmyN61dsa47pTpb55zuU4G4lI7qFjAXZJH1OAQ==
-
-cssnano@^5.0.15:
- version "5.0.16"
- resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.0.16.tgz#4ee97d30411693f3de24cef70b36f7ae2a843e04"
- integrity sha512-ryhRI9/B9VFCwPbb1z60LLK5/ldoExi7nwdnJzpkLZkm2/r7j2X3jfY+ZvDVJhC/0fPZlrAguYdHNFg0iglPKQ==
- dependencies:
- cssnano-preset-default "^5.1.11"
- lilconfig "^2.0.3"
- yaml "^1.10.2"
-
-csso@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529"
- integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==
- dependencies:
- css-tree "^1.1.2"
-
-cssom@^0.4.4:
- version "0.4.4"
- resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10"
- integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==
-
-cssom@~0.3.6:
- version "0.3.8"
- resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a"
- integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==
-
-cssstyle@^2.3.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852"
- integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==
- dependencies:
- cssom "~0.3.6"
-
-data-urls@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b"
- integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==
- dependencies:
- abab "^2.0.3"
- whatwg-mimetype "^2.3.0"
- whatwg-url "^8.0.0"
-
-debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2:
- version "4.3.3"
- resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
- integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
- dependencies:
- ms "2.1.2"
-
-decimal.js@^10.2.1:
- version "10.3.1"
- resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783"
- integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==
-
-decode-uri-component@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
- integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
-
-dedent@^0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c"
- integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=
-
-deep-is@^0.1.3, deep-is@~0.1.3:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
- integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
-
-deepmerge@^4.2.2:
- version "4.2.2"
- resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955"
- integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==
-
-define-properties@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
- integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
- dependencies:
- object-keys "^1.0.12"
-
-delayed-stream@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
- integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
-
-detect-newline@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651"
- integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==
-
-diff-sequences@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.4.0.tgz#d783920ad8d06ec718a060d00196dfef25b132a5"
- integrity sha512-YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww==
-
-dir-glob@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
- integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
- dependencies:
- path-type "^4.0.0"
-
-doctrine@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
- integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
- dependencies:
- esutils "^2.0.2"
-
-dom-serializer@^1.0.1:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91"
- integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==
- dependencies:
- domelementtype "^2.0.1"
- domhandler "^4.2.0"
- entities "^2.0.0"
-
-domelementtype@^2.0.1, domelementtype@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57"
- integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==
-
-domexception@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304"
- integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==
- dependencies:
- webidl-conversions "^5.0.0"
-
-domhandler@^4.2.0, domhandler@^4.3.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.0.tgz#16c658c626cf966967e306f966b431f77d4a5626"
- integrity sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==
- dependencies:
- domelementtype "^2.2.0"
-
-domutils@^2.8.0:
- version "2.8.0"
- resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135"
- integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==
- dependencies:
- dom-serializer "^1.0.1"
- domelementtype "^2.2.0"
- domhandler "^4.2.0"
-
-electron-to-chromium@^1.3.896:
- version "1.4.5"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.5.tgz#912e8fd1645edee2f0f212558f40916eb538b1f9"
- integrity sha512-YKaB+t8ul5crdh6OeqT2qXdxJGI0fAYb6/X8pDIyye+c3a7ndOCk5gVeKX+ABwivCGNS56vOAif3TN0qJMpEHw==
-
-electron-to-chromium@^1.4.17:
- version "1.4.57"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.57.tgz#2b2766df76ac8dbc0a1d41249bc5684a31849892"
- integrity sha512-FNC+P5K1n6pF+M0zIK+gFCoXcJhhzDViL3DRIGy2Fv5PohuSES1JHR7T+GlwxSxlzx4yYbsuzCZvHxcBSRCIOw==
-
-emittery@^0.8.1:
- version "0.8.1"
- resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860"
- integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==
-
-emoji-regex@^8.0.0:
- version "8.0.0"
- resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
- integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
-
-enquirer@^2.3.5:
- version "2.3.6"
- resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d"
- integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==
- dependencies:
- ansi-colors "^4.1.1"
-
-entities@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55"
- integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==
-
-error-ex@^1.3.1:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
- integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
- dependencies:
- is-arrayish "^0.2.1"
-
-esbuild-android-arm64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.0.tgz#fac7e9a207714a699283578e1c8106689e52fad9"
- integrity sha512-X7BjFiRRNfxPNg1aT5zw4xK1vbvX2IvDPcEp4bv0CEXgR39UzuOMUsQoG92aZgj8JGs8jxQAZc8k9dVJ1WL2BA==
-
-esbuild-darwin-64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.0.tgz#83bde8f68dd26ec4cbbbe4fd966eb1f4ce40a9d8"
- integrity sha512-43vtt407jMp1kEXiaY0dEIGjOREax9F1+qMI0+F9tJyr06EHAofnbLL6cTmLgdPy/pMhltSvOJ8EddJrrOBgpQ==
-
-esbuild-darwin-arm64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.0.tgz#644efb31fb27e291465e24757b3194d36aa2eb7d"
- integrity sha512-hMbT5YiBrFL763mnwR9BqNtq9XtJgJRxYs7Ad++KUd+ZhMoVE0Rs/YLe1oor9uBGhHLqQsZuJ2dUHjCsfT/iDg==
-
-esbuild-freebsd-64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.0.tgz#c74755b5f8a8a9a2acf19d49236ac7c18c548f71"
- integrity sha512-mx68HRYIZo6ZiHbWk5Md+mDJoDw779yWkJQAaBnXwOkGbDeA3JmPZjp6IPfy2P+n3emK9z6g4pKiebp1tQGVoQ==
-
-esbuild-freebsd-arm64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.0.tgz#b778a66b4fc6a0d0b91e2e2333620658724b45ef"
- integrity sha512-iM8u+zTagh0WGn2FTTxi7DII/ycVzYyuf2Df6eP2ZX+vlx2FjaduhagRkpyhjfmEyhfJOrYSAR5R1biNPcA+VA==
-
-esbuild-linux-32@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.0.tgz#64bfaa635a8f4d6f2fea62cc8c2466f5a926b221"
- integrity sha512-dWHotI2qlXWZyza7n85UubBj0asjpM7FTtQYDaRQKxoCJpCnSzq3aD55IJthiggZHXj2tAML9Bc5xjVLsBJR0w==
-
-esbuild-linux-64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.0.tgz#0e2714bd90cfc4afffcfee896d67763a03410d61"
- integrity sha512-7buo31kp1/yKWPm9vU44FEUwkeIROrIgnCDV9KLMLSbOjGEHBZXYJ2L0p4ZnB7Z+m5YiW7F/AfJu0/1E87nOeQ==
-
-esbuild-linux-arm64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.0.tgz#008ddc7c37e9bfc0cc8902310a728f8b8bfdf002"
- integrity sha512-9LBtCH2RkhDBwoAYksTtXljN6hlxxoL6a3ymNfXJG9JxFUQddOfhajXZdObFn/hgGkAFwx8dXqw+FnPm0FCzSg==
-
-esbuild-linux-arm@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.0.tgz#f8e3f91797eb291e7f8c1c867826e408804ece75"
- integrity sha512-fgybXQwPRT4Io01+aD+yphcLOLRVGqbSdhvaDK3qBwqUvspFsq4QkI7PeeYpuQdBZWiRKLoi9v5r90l7JO/s+g==
-
-esbuild-linux-mips64le@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.0.tgz#e2e3a2f3b4adf3ec64bcc43e21dd19105ff5ccab"
- integrity sha512-Xz7soOqWeCWcLp15biPM08To+s0k1E/2q0pQZNQ+SY9S5H2vU4ujDXqKjxFc24G9CrOeUNEOXTkh+JldBGbTCA==
-
-esbuild-linux-ppc64le@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.0.tgz#8a13f6e5257e19b62e7c28762f3cc742d56f3e1c"
- integrity sha512-fuBXTyUaZKxpmp43Nf0M1uI1OmZv/COcME9PG7NQ/EniwC680Xj5xQFhEBDVnvQQ+6xOnXdfPSojJq7gQxrORQ==
-
-esbuild-netbsd-64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.0.tgz#e76051ea739efa5be7a5979f212882c8d9e1b7db"
- integrity sha512-pQaECTKr/iCXtn1qjwih+cvoZzbZ+P3NwLQo4uo/IesklbPTR5eF4d85L1vPFVgff+itBMxbbB7aoRznSglN3A==
-
-esbuild-openbsd-64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.0.tgz#2d8c0689731605c68da816ac40095a1685c12e11"
- integrity sha512-HiaqQX9HMb9u3eYvKZ86+m/paQwASJSIjXiRTFpFusypjtU2NJqWb/LiRvhfmwC6rb7YHwCSPx+juSM7M+20bA==
-
-esbuild-sunos-64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.0.tgz#62b2a27cdc8d0ac150d4d15857e764652960d2b6"
- integrity sha512-TkMQOSiSU3fHLV3M+OKUgLZt5L7TpcBcMRvtFw1cTxAnX8eT+1qkWVLiDM8ow1C3P7PW3bkGY3LW8vOs8o/jBA==
-
-esbuild-windows-32@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.0.tgz#364a1d1558b0a2351997c1aa7fd4408428eb78ab"
- integrity sha512-0h7E50JHgyLd7TkqSIH0VzBhngWspxPHuq/crDAMnh4s4tW8zWCMLIz2c1HVwHfZsh7d5+C4/yBaQeJTHXGvIA==
-
-esbuild-windows-64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.0.tgz#e0db336f5c614f1b8dfacc0720cb0d30e118b36d"
- integrity sha512-RxnovPOoQS5Id4mbdIUm96L0GIg+ZME4FthbErw1kZZabLi9eLp1gR3vSwkZXKbK8Z76uDkSW0EN74i1XWVpiQ==
-
-esbuild-windows-arm64@0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.0.tgz#5ddc6134e766da3c7b62a9a463e91ad3127483b5"
- integrity sha512-66KsVlT6lGDWgDKQsAlojxgUhZkkjVeosMVRdb913OwtcOjszceg6zFD748jzp9CUgAseHCNJqFmYOyBzneSEQ==
-
-esbuild@^0.14.0:
- version "0.14.0"
- resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.0.tgz#9a3d21c9876b280e3b0186e36d372354ade51938"
- integrity sha512-UOnSKRAyZondxdLrOXnI/mesUmU/GvDTcajCvxoIaObzMeQcn0HyoGtvbfATnazlx799ZqFSyIZGLXFszkjy3A==
- optionalDependencies:
- esbuild-android-arm64 "0.14.0"
- esbuild-darwin-64 "0.14.0"
- esbuild-darwin-arm64 "0.14.0"
- esbuild-freebsd-64 "0.14.0"
- esbuild-freebsd-arm64 "0.14.0"
- esbuild-linux-32 "0.14.0"
- esbuild-linux-64 "0.14.0"
- esbuild-linux-arm "0.14.0"
- esbuild-linux-arm64 "0.14.0"
- esbuild-linux-mips64le "0.14.0"
- esbuild-linux-ppc64le "0.14.0"
- esbuild-netbsd-64 "0.14.0"
- esbuild-openbsd-64 "0.14.0"
- esbuild-sunos-64 "0.14.0"
- esbuild-windows-32 "0.14.0"
- esbuild-windows-64 "0.14.0"
- esbuild-windows-arm64 "0.14.0"
-
-escalade@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
- integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
-
-escape-string-regexp@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
- integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
-
-escape-string-regexp@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344"
- integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==
-
-escape-string-regexp@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
- integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
-
-escodegen@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd"
- integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==
- dependencies:
- esprima "^4.0.1"
- estraverse "^5.2.0"
- esutils "^2.0.2"
- optionator "^0.8.1"
- optionalDependencies:
- source-map "~0.6.1"
-
-eslint-plugin-jest@^25.2.2:
- version "25.7.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-25.7.0.tgz#ff4ac97520b53a96187bad9c9814e7d00de09a6a"
- integrity sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==
- dependencies:
- "@typescript-eslint/experimental-utils" "^5.0.0"
-
-eslint-scope@^5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
- integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
- dependencies:
- esrecurse "^4.3.0"
- estraverse "^4.1.1"
-
-eslint-scope@^7.1.0:
- version "7.1.0"
- resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.0.tgz#c1f6ea30ac583031f203d65c73e723b01298f153"
- integrity sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==
- dependencies:
- esrecurse "^4.3.0"
- estraverse "^5.2.0"
-
-eslint-utils@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672"
- integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==
- dependencies:
- eslint-visitor-keys "^2.0.0"
-
-eslint-visitor-keys@^2.0.0, eslint-visitor-keys@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
- integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
-
-eslint-visitor-keys@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz#6fbb166a6798ee5991358bc2daa1ba76cc1254a1"
- integrity sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==
-
-eslint-visitor-keys@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz#eee4acea891814cda67a7d8812d9647dd0179af2"
- integrity sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==
-
-eslint@^8.3.0:
- version "8.3.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.3.0.tgz#a3c2409507403c1c7f6c42926111d6cbefbc3e85"
- integrity sha512-aIay56Ph6RxOTC7xyr59Kt3ewX185SaGnAr8eWukoPLeriCrvGjvAubxuvaXOfsxhtwV5g0uBOsyhAom4qJdww==
- dependencies:
- "@eslint/eslintrc" "^1.0.4"
- "@humanwhocodes/config-array" "^0.6.0"
- ajv "^6.10.0"
- chalk "^4.0.0"
- cross-spawn "^7.0.2"
- debug "^4.3.2"
- doctrine "^3.0.0"
- enquirer "^2.3.5"
- escape-string-regexp "^4.0.0"
- eslint-scope "^7.1.0"
- eslint-utils "^3.0.0"
- eslint-visitor-keys "^3.1.0"
- espree "^9.1.0"
- esquery "^1.4.0"
- esutils "^2.0.2"
- fast-deep-equal "^3.1.3"
- file-entry-cache "^6.0.1"
- functional-red-black-tree "^1.0.1"
- glob-parent "^6.0.1"
- globals "^13.6.0"
- ignore "^4.0.6"
- import-fresh "^3.0.0"
- imurmurhash "^0.1.4"
- is-glob "^4.0.0"
- js-yaml "^4.1.0"
- json-stable-stringify-without-jsonify "^1.0.1"
- levn "^0.4.1"
- lodash.merge "^4.6.2"
- minimatch "^3.0.4"
- natural-compare "^1.4.0"
- optionator "^0.9.1"
- progress "^2.0.0"
- regexpp "^3.2.0"
- semver "^7.2.1"
- strip-ansi "^6.0.1"
- strip-json-comments "^3.1.0"
- text-table "^0.2.0"
- v8-compile-cache "^2.0.3"
-
-espree@^9.0.0, espree@^9.1.0:
- version "9.1.0"
- resolved "https://registry.yarnpkg.com/espree/-/espree-9.1.0.tgz#ba9d3c9b34eeae205724124e31de4543d59fbf74"
- integrity sha512-ZgYLvCS1wxOczBYGcQT9DDWgicXwJ4dbocr9uYN+/eresBAUuBu+O4WzB21ufQ/JqQT8gyp7hJ3z8SHii32mTQ==
- dependencies:
- acorn "^8.6.0"
- acorn-jsx "^5.3.1"
- eslint-visitor-keys "^3.1.0"
-
-esprima@^4.0.0, esprima@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
- integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
-
-esquery@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5"
- integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==
- dependencies:
- estraverse "^5.1.0"
-
-esrecurse@^4.3.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
- integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
- dependencies:
- estraverse "^5.2.0"
-
-estraverse@^4.1.1:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
- integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
-
-estraverse@^5.1.0, estraverse@^5.2.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
- integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
-
-estree-walker@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700"
- integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==
-
-estree-walker@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac"
- integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==
-
-esutils@^2.0.2:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
- integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
-
-eventemitter3@^4.0.4:
- version "4.0.7"
- resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
- integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==
-
-execa@^5.0.0:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd"
- integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==
- dependencies:
- cross-spawn "^7.0.3"
- get-stream "^6.0.0"
- human-signals "^2.1.0"
- is-stream "^2.0.0"
- merge-stream "^2.0.0"
- npm-run-path "^4.0.1"
- onetime "^5.1.2"
- signal-exit "^3.0.3"
- strip-final-newline "^2.0.0"
-
-exit@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
- integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=
-
-expect@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/expect/-/expect-27.4.0.tgz#694ec548044e2342a86f9f8091589eea3ead9b0a"
- integrity sha512-3V4Nq5E5dS7bzFfinUThG0OnOnNIDdEPC0KG1pBgB1Z7ZTDVuuyvSBTOQewi0z0vaGKWPaJ880tGI+pPm+5aCg==
- dependencies:
- "@jest/types" "^27.4.0"
- ansi-styles "^5.0.0"
- jest-get-type "^27.4.0"
- jest-matcher-utils "^27.4.0"
- jest-message-util "^27.4.0"
- jest-regex-util "^27.4.0"
-
-fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
- integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
-
-fast-glob@^3.2.9:
- version "3.2.11"
- resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9"
- integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==
- dependencies:
- "@nodelib/fs.stat" "^2.0.2"
- "@nodelib/fs.walk" "^1.2.3"
- glob-parent "^5.1.2"
- merge2 "^1.3.0"
- micromatch "^4.0.4"
-
-fast-json-stable-stringify@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
- integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
-
-fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
- integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
-
-fastq@^1.6.0:
- version "1.13.0"
- resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c"
- integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==
- dependencies:
- reusify "^1.0.4"
-
-fb-watchman@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85"
- integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==
- dependencies:
- bser "2.1.1"
-
-file-entry-cache@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
- integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
- dependencies:
- flat-cache "^3.0.4"
-
-fill-range@^7.0.1:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
- integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
- dependencies:
- to-regex-range "^5.0.1"
-
-filter-obj@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b"
- integrity sha1-mzERErxsYSehbgFsbF1/GeCAXFs=
-
-find-up@^4.0.0, find-up@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
- integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
- dependencies:
- locate-path "^5.0.0"
- path-exists "^4.0.0"
-
-flat-cache@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
- integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==
- dependencies:
- flatted "^3.1.0"
- rimraf "^3.0.2"
-
-flatted@^3.1.0:
- version "3.2.4"
- resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.4.tgz#28d9969ea90661b5134259f312ab6aa7929ac5e2"
- integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==
-
-form-data@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f"
- integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.8"
- mime-types "^2.1.12"
-
-fs-extra@^10.0.0:
- version "10.0.0"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.0.tgz#9ff61b655dde53fb34a82df84bb214ce802e17c1"
- integrity sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==
- dependencies:
- graceful-fs "^4.2.0"
- jsonfile "^6.0.1"
- universalify "^2.0.0"
-
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
- integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
-
-fsevents@^2.3.2, fsevents@~2.3.2:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
- integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
-
-function-bind@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
- integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
-
-functional-red-black-tree@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
- integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
-
-gensync@^1.0.0-beta.2:
- version "1.0.0-beta.2"
- resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
- integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
-
-get-caller-file@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
- integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
-
-get-intrinsic@^1.0.2:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6"
- integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==
- dependencies:
- function-bind "^1.1.1"
- has "^1.0.3"
- has-symbols "^1.0.1"
-
-get-package-type@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a"
- integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==
-
-get-stream@^6.0.0:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
- integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
-
-glob-parent@^5.1.2:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
- integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
- dependencies:
- is-glob "^4.0.1"
-
-glob-parent@^6.0.1:
- version "6.0.2"
- resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
- integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
- dependencies:
- is-glob "^4.0.3"
-
-glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
- integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-globals@^11.1.0:
- version "11.12.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
- integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
-
-globals@^13.6.0, globals@^13.9.0:
- version "13.12.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-13.12.0.tgz#4d733760304230a0082ed96e21e5c565f898089e"
- integrity sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==
- dependencies:
- type-fest "^0.20.2"
-
-globby@^11.0.4:
- version "11.1.0"
- resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
- integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
- dependencies:
- array-union "^2.1.0"
- dir-glob "^3.0.1"
- fast-glob "^3.2.9"
- ignore "^5.2.0"
- merge2 "^1.4.1"
- slash "^3.0.0"
-
-graceful-fs@^4.1.6, graceful-fs@^4.2.0:
- version "4.2.9"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96"
- integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==
-
-graceful-fs@^4.2.4:
- version "4.2.8"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a"
- integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==
-
-has-flag@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
- integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
-
-has-flag@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
- integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
-
-has-symbols@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423"
- integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==
-
-has@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
- integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
- dependencies:
- function-bind "^1.1.1"
-
-html-encoding-sniffer@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3"
- integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==
- dependencies:
- whatwg-encoding "^1.0.5"
-
-html-escaper@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
- integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
-
-http-proxy-agent@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a"
- integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==
- dependencies:
- "@tootallnate/once" "1"
- agent-base "6"
- debug "4"
-
-https-proxy-agent@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2"
- integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==
- dependencies:
- agent-base "6"
- debug "4"
-
-human-signals@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
- integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
-
-iconv-lite@0.4.24:
- version "0.4.24"
- resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
- integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
- dependencies:
- safer-buffer ">= 2.1.2 < 3"
-
-icss-utils@^5.0.0, icss-utils@^5.1.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae"
- integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==
-
-ignore@^4.0.6:
- version "4.0.6"
- resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
- integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==
-
-ignore@^5.2.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"
- integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==
-
-import-fresh@^3.0.0, import-fresh@^3.2.1:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
- integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
- dependencies:
- parent-module "^1.0.0"
- resolve-from "^4.0.0"
-
-import-local@^3.0.2:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.3.tgz#4d51c2c495ca9393da259ec66b62e022920211e0"
- integrity sha512-bE9iaUY3CXH8Cwfan/abDKAxe1KGT9kyGsBPqf6DMK/z0a2OzAsrukeYNgIH6cH5Xr452jb1TUL8rSfCLjZ9uA==
- dependencies:
- pkg-dir "^4.2.0"
- resolve-cwd "^3.0.0"
-
-imurmurhash@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
- integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
-
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@2:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
- integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-
-is-arrayish@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
- integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
-
-is-core-module@^2.2.0:
- version "2.8.0"
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz#0321336c3d0925e497fd97f5d95cb114a5ccd548"
- integrity sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==
- dependencies:
- has "^1.0.3"
-
-is-core-module@^2.8.1:
- version "2.8.1"
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211"
- integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==
- dependencies:
- has "^1.0.3"
-
-is-extglob@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
- integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
-
-is-fullwidth-code-point@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
- integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
-
-is-generator-fn@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118"
- integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==
-
-is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
- integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
- dependencies:
- is-extglob "^2.1.1"
-
-is-number@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
- integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
-
-is-potential-custom-element-name@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5"
- integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==
-
-is-stream@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
- integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
-
-is-typedarray@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
- integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
- integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
-
-istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3"
- integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==
-
-istanbul-lib-instrument@^4.0.3:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d"
- integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==
- dependencies:
- "@babel/core" "^7.7.5"
- "@istanbuljs/schema" "^0.1.2"
- istanbul-lib-coverage "^3.0.0"
- semver "^6.3.0"
-
-istanbul-lib-instrument@^5.0.4:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a"
- integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==
- dependencies:
- "@babel/core" "^7.12.3"
- "@babel/parser" "^7.14.7"
- "@istanbuljs/schema" "^0.1.2"
- istanbul-lib-coverage "^3.2.0"
- semver "^6.3.0"
-
-istanbul-lib-report@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6"
- integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==
- dependencies:
- istanbul-lib-coverage "^3.0.0"
- make-dir "^3.0.0"
- supports-color "^7.1.0"
-
-istanbul-lib-source-maps@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551"
- integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==
- dependencies:
- debug "^4.1.1"
- istanbul-lib-coverage "^3.0.0"
- source-map "^0.6.1"
-
-istanbul-reports@^3.0.2:
- version "3.0.5"
- resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.5.tgz#a2580107e71279ea6d661ddede929ffc6d693384"
- integrity sha512-5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ==
- dependencies:
- html-escaper "^2.0.0"
- istanbul-lib-report "^3.0.0"
-
-jest-changed-files@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.4.0.tgz#b2fada5f9952e3cb8af83e89338a089964b55ea5"
- integrity sha512-TacYni8ZumaB10L/fGRH92MbLYkn+MF2KtgHeAOcwnOzfmt+S6CDmJeslZuLOpnRUQKkV/Vr4qPAlrBTE5r67A==
- dependencies:
- "@jest/types" "^27.4.0"
- execa "^5.0.0"
- throat "^6.0.1"
-
-jest-circus@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.4.0.tgz#865c4428b00de301398ab4ffff017b68a4e45826"
- integrity sha512-WYmHSsuH82HZqOHPU1vD2AKyzUp5t/0R7jT1XJ8ga+hIGR5Ddv6PUQeMJvjnftyLC0izSm3tZaIYB+H6FfYqZA==
- dependencies:
- "@jest/environment" "^27.4.0"
- "@jest/test-result" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- chalk "^4.0.0"
- co "^4.6.0"
- dedent "^0.7.0"
- expect "^27.4.0"
- is-generator-fn "^2.0.0"
- jest-each "^27.4.0"
- jest-matcher-utils "^27.4.0"
- jest-message-util "^27.4.0"
- jest-runtime "^27.4.0"
- jest-snapshot "^27.4.0"
- jest-util "^27.4.0"
- pretty-format "^27.4.0"
- slash "^3.0.0"
- stack-utils "^2.0.3"
- throat "^6.0.1"
-
-jest-cli@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.4.0.tgz#d55a1465d6e8502a32e47831497ce3f72892265d"
- integrity sha512-cTL2ORt/ha+x6KJfVp0oTAyPmHVw7IJ+lA3kmT/kNcWoCiKa+t/JlF5x+nJ0UfL3/IQLV+ysYgu8MjGM8WXH+w==
- dependencies:
- "@jest/core" "^27.4.0"
- "@jest/test-result" "^27.4.0"
- "@jest/types" "^27.4.0"
- chalk "^4.0.0"
- exit "^0.1.2"
- graceful-fs "^4.2.4"
- import-local "^3.0.2"
- jest-config "^27.4.0"
- jest-util "^27.4.0"
- jest-validate "^27.4.0"
- prompts "^2.0.1"
- yargs "^16.2.0"
-
-jest-config@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.4.0.tgz#afbcf97dbf310e6c0d1287d3e163ff9a9bab141c"
- integrity sha512-4ZDJd0HLX4snqDNOQYswMjQj7d7I2Bm8+TYIytDcRSAy7mkneQCKHBJu2NtIuzXxAoS2Sy+sjZ1UX/9L06zZCQ==
- dependencies:
- "@babel/core" "^7.1.0"
- "@jest/test-sequencer" "^27.4.0"
- "@jest/types" "^27.4.0"
- babel-jest "^27.4.0"
- chalk "^4.0.0"
- ci-info "^3.2.0"
- deepmerge "^4.2.2"
- glob "^7.1.1"
- graceful-fs "^4.2.4"
- jest-circus "^27.4.0"
- jest-environment-jsdom "^27.4.0"
- jest-environment-node "^27.4.0"
- jest-get-type "^27.4.0"
- jest-jasmine2 "^27.4.0"
- jest-regex-util "^27.4.0"
- jest-resolve "^27.4.0"
- jest-runner "^27.4.0"
- jest-util "^27.4.0"
- jest-validate "^27.4.0"
- micromatch "^4.0.4"
- pretty-format "^27.4.0"
- slash "^3.0.0"
-
-jest-diff@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.4.0.tgz#d31269e4c070cd794cff756e39ecb4a4010be5cb"
- integrity sha512-fdXgpnyQH4LNSnYgRfHN/g413bqbPspWIAZPlXrdNISehDih1VNDtuRvlzGQJ4Go+fur1HKB2IyI25t6cWi5EA==
- dependencies:
- chalk "^4.0.0"
- diff-sequences "^27.4.0"
- jest-get-type "^27.4.0"
- pretty-format "^27.4.0"
-
-jest-docblock@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.4.0.tgz#06c78035ca93cbbb84faf8fce64deae79a59f69f"
- integrity sha512-7TBazUdCKGV7svZ+gh7C8esAnweJoG+SvcF6Cjqj4l17zA2q1cMwx2JObSioubk317H+cjcHgP+7fTs60paulg==
- dependencies:
- detect-newline "^3.0.0"
-
-jest-each@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.4.0.tgz#ac84f91334d101c864864ccaf693281652c8a2ec"
- integrity sha512-dq6r/Uf6Q7sI/gND7WyCmQ7Z13p1CSusMkHEC//+schTrhTRe+ubPO2GtejHlWV+BldH6aMAAmtlEZgBroNrNg==
- dependencies:
- "@jest/types" "^27.4.0"
- chalk "^4.0.0"
- jest-get-type "^27.4.0"
- jest-util "^27.4.0"
- pretty-format "^27.4.0"
-
-jest-environment-jsdom@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.4.0.tgz#9dc626b5f24121a3fc8206d285caaf17efd88ea0"
- integrity sha512-fgM6g4WftTTpRA8dB5FnmS3n+PthwjTdMwl/Lcq2QlCo0I5smyD+t82bzO9tX5w6ygxbCbnP4VkSWWYdqO4j+w==
- dependencies:
- "@jest/environment" "^27.4.0"
- "@jest/fake-timers" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/jsdom" "^16.2.4"
- "@types/node" "*"
- jest-mock "^27.4.0"
- jest-util "^27.4.0"
- jsdom "^16.6.0"
-
-jest-environment-node@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.4.0.tgz#df801e7c6d5f643f85deb164401d1f7e7645a150"
- integrity sha512-VG3jLukpPhpffd7dUiC7+usyTG8Omytg4NOjGQtv88208O2AAMwcqpOAl1/uVOhUvbiegtVztyd3ZzAQtBxifA==
- dependencies:
- "@jest/environment" "^27.4.0"
- "@jest/fake-timers" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- jest-mock "^27.4.0"
- jest-util "^27.4.0"
-
-jest-get-type@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.4.0.tgz#7503d2663fffa431638337b3998d39c5e928e9b5"
- integrity sha512-tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ==
-
-jest-haste-map@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.4.0.tgz#d07e0db356bbaa2996f922facf23e85f53e6c3b7"
- integrity sha512-xTXw1/JBJvdvTEsnTlRj9u9AAg2t23r5GHbtc5eC6AuEIRPfGWV02Y67U0p4K1KpEWLsk9Pb3b6Kfde/5a3C5A==
- dependencies:
- "@jest/types" "^27.4.0"
- "@types/graceful-fs" "^4.1.2"
- "@types/node" "*"
- anymatch "^3.0.3"
- fb-watchman "^2.0.0"
- graceful-fs "^4.2.4"
- jest-regex-util "^27.4.0"
- jest-serializer "^27.4.0"
- jest-util "^27.4.0"
- jest-worker "^27.4.0"
- micromatch "^4.0.4"
- walker "^1.0.7"
- optionalDependencies:
- fsevents "^2.3.2"
-
-jest-jasmine2@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.4.0.tgz#756f504f15c42c6052d7a0a1ef6106453dedd00d"
- integrity sha512-yvfWhQM/ZoxXfBZJdiKXCQxt18pOrciQUDqkT+EXtzhpKPIsbPdWCVv53NOqeWnRQR4HVhNgKK/fYD6BUXCxzA==
- dependencies:
- "@babel/traverse" "^7.1.0"
- "@jest/environment" "^27.4.0"
- "@jest/source-map" "^27.4.0"
- "@jest/test-result" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- chalk "^4.0.0"
- co "^4.6.0"
- expect "^27.4.0"
- is-generator-fn "^2.0.0"
- jest-each "^27.4.0"
- jest-matcher-utils "^27.4.0"
- jest-message-util "^27.4.0"
- jest-runtime "^27.4.0"
- jest-snapshot "^27.4.0"
- jest-util "^27.4.0"
- pretty-format "^27.4.0"
- throat "^6.0.1"
-
-jest-leak-detector@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.4.0.tgz#f1379e537a8e6c87e7775f6e4d2b7052f55385f2"
- integrity sha512-d7QeqzIOVQeMI6VROLPNeYagcxPCvqYD6A34Ol9D+vPzs72omGXsGbuuJrChD51zuA4ESXcLYZ81L9JHr1VYGw==
- dependencies:
- jest-get-type "^27.4.0"
- pretty-format "^27.4.0"
-
-jest-matcher-utils@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.4.0.tgz#0c9fee411f0450f045f9b49ec52aba231528b1fc"
- integrity sha512-vBy1tEyuKiItYgV9x9ubccyadOy5xAAmDBgXk8dMppXBXG4glggrGcZvE+8l1r+te477bRcFLB/hRyGm5Tdxzw==
- dependencies:
- chalk "^4.0.0"
- jest-diff "^27.4.0"
- jest-get-type "^27.4.0"
- pretty-format "^27.4.0"
-
-jest-message-util@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.4.0.tgz#8961c47cf8974590fa1a94dbf30953e2cb047576"
- integrity sha512-2KmfpnxFwt+5CF0YST6U1IwFomX9gx2dmcAV/ZjzF9/4tlmieExl7Ch7D36l94mIxWTXhDuPji4XOvxRBdswrQ==
- dependencies:
- "@babel/code-frame" "^7.12.13"
- "@jest/types" "^27.4.0"
- "@types/stack-utils" "^2.0.0"
- chalk "^4.0.0"
- graceful-fs "^4.2.4"
- micromatch "^4.0.4"
- pretty-format "^27.4.0"
- slash "^3.0.0"
- stack-utils "^2.0.3"
-
-jest-mock@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.4.0.tgz#b777dae3d761cd704895fab62f5cbbba0a18ae1b"
- integrity sha512-hQMpGIFEjhb6rtOz4JZcZaMdQytXjm54tBif9rpXfdzbEgYZ9+JGOUNqdtu3n09KG95/zEVwRI07HAuoSV1Dxw==
- dependencies:
- "@jest/types" "^27.4.0"
- "@types/node" "*"
-
-jest-pnp-resolver@^1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c"
- integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==
-
-jest-regex-util@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.4.0.tgz#e4c45b52653128843d07ad94aec34393ea14fbca"
- integrity sha512-WeCpMpNnqJYMQoOjm1nTtsgbR4XHAk1u00qDoNBQoykM280+/TmgA5Qh5giC1ecy6a5d4hbSsHzpBtu5yvlbEg==
-
-jest-resolve-dependencies@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.4.0.tgz#a86c941353047ace99758a4adbd950e049c67d9d"
- integrity sha512-D+Ean4nLgbRqhWCSKJIWpC36O7itmZbVQjnHWLF4brAP0r2sGATXjjhERIaiBCt/V2IhCDcH0EvS+PA7gSrf5g==
- dependencies:
- "@jest/types" "^27.4.0"
- jest-regex-util "^27.4.0"
- jest-snapshot "^27.4.0"
-
-jest-resolve@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.4.0.tgz#1afbdf5938f9ad4808ed6ab31a9cf77c0f4b58f1"
- integrity sha512-XF54RYG9a9fHTlovCwC5U49TVAfCkHLoJnMhgaT2AYif4E5BechlKUAlhYE4fkbr1J5LzP7O9qfgRA5JSR8HzQ==
- dependencies:
- "@jest/types" "^27.4.0"
- chalk "^4.0.0"
- graceful-fs "^4.2.4"
- jest-haste-map "^27.4.0"
- jest-pnp-resolver "^1.2.2"
- jest-util "^27.4.0"
- jest-validate "^27.4.0"
- resolve "^1.20.0"
- resolve.exports "^1.1.0"
- slash "^3.0.0"
-
-jest-runner@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.4.0.tgz#bc08973f3ab9f5716505f538367a992dd9ef1cb2"
- integrity sha512-ncnnOVQlqDorBAMNTuA2Htg3XJlnwAySpUBDmlJy4+WEwb5zB2cDLA3roPSMe0lVn8mGGXccl1/a8xwvE6txiQ==
- dependencies:
- "@jest/console" "^27.4.0"
- "@jest/environment" "^27.4.0"
- "@jest/test-result" "^27.4.0"
- "@jest/transform" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- chalk "^4.0.0"
- emittery "^0.8.1"
- exit "^0.1.2"
- graceful-fs "^4.2.4"
- jest-docblock "^27.4.0"
- jest-environment-jsdom "^27.4.0"
- jest-environment-node "^27.4.0"
- jest-haste-map "^27.4.0"
- jest-leak-detector "^27.4.0"
- jest-message-util "^27.4.0"
- jest-resolve "^27.4.0"
- jest-runtime "^27.4.0"
- jest-util "^27.4.0"
- jest-worker "^27.4.0"
- source-map-support "^0.5.6"
- throat "^6.0.1"
-
-jest-runtime@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.4.0.tgz#1c923f55f10477f3a1adc410bd37e8a11b6c32a0"
- integrity sha512-8IcQQFhVWWNq45wuDYooIDNdmhOVebOsIDOfXN/Xbw4h/6G1qy9+i5OND7Qmb4g+cSawK5C2tAdHcdR8Q9eSew==
- dependencies:
- "@jest/console" "^27.4.0"
- "@jest/environment" "^27.4.0"
- "@jest/globals" "^27.4.0"
- "@jest/source-map" "^27.4.0"
- "@jest/test-result" "^27.4.0"
- "@jest/transform" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/yargs" "^16.0.0"
- chalk "^4.0.0"
- cjs-module-lexer "^1.0.0"
- collect-v8-coverage "^1.0.0"
- execa "^5.0.0"
- exit "^0.1.2"
- glob "^7.1.3"
- graceful-fs "^4.2.4"
- jest-haste-map "^27.4.0"
- jest-message-util "^27.4.0"
- jest-mock "^27.4.0"
- jest-regex-util "^27.4.0"
- jest-resolve "^27.4.0"
- jest-snapshot "^27.4.0"
- jest-util "^27.4.0"
- jest-validate "^27.4.0"
- slash "^3.0.0"
- strip-bom "^4.0.0"
- yargs "^16.2.0"
-
-jest-serializer@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.4.0.tgz#34866586e1cae2388b7d12ffa2c7819edef5958a"
- integrity sha512-RDhpcn5f1JYTX2pvJAGDcnsNTnsV9bjYPU8xcV+xPwOXnUPOQwf4ZEuiU6G9H1UztH+OapMgu/ckEVwO87PwnQ==
- dependencies:
- "@types/node" "*"
- graceful-fs "^4.2.4"
-
-jest-snapshot@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.4.0.tgz#d9aa84bea524f0e6658bdcdbc6896e4ff33b108d"
- integrity sha512-iOisfzB00tQE/rk+LzLzjbjElT4Lq26ZrYHX/1OfhVb7IZbu/2i4bkS7YK3fimfw3zleWRTleUMCmWGi+GCjpQ==
- dependencies:
- "@babel/core" "^7.7.2"
- "@babel/generator" "^7.7.2"
- "@babel/parser" "^7.7.2"
- "@babel/plugin-syntax-typescript" "^7.7.2"
- "@babel/traverse" "^7.7.2"
- "@babel/types" "^7.0.0"
- "@jest/transform" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/babel__traverse" "^7.0.4"
- "@types/prettier" "^2.1.5"
- babel-preset-current-node-syntax "^1.0.0"
- chalk "^4.0.0"
- expect "^27.4.0"
- graceful-fs "^4.2.4"
- jest-diff "^27.4.0"
- jest-get-type "^27.4.0"
- jest-haste-map "^27.4.0"
- jest-matcher-utils "^27.4.0"
- jest-message-util "^27.4.0"
- jest-resolve "^27.4.0"
- jest-util "^27.4.0"
- natural-compare "^1.4.0"
- pretty-format "^27.4.0"
- semver "^7.3.2"
-
-jest-util@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.4.0.tgz#7b803e8a7da99728c7b1a7af74c33cb225df94d5"
- integrity sha512-9HL5h/IWeg2u2dt0UIiseVRCnadh7CMPD4B9AeoEO23/NofaEfcPzIfl8dw45CpGHjP+xenw1viQYMd25DWquA==
- dependencies:
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- chalk "^4.0.0"
- ci-info "^3.2.0"
- graceful-fs "^4.2.4"
- picomatch "^2.2.3"
-
-jest-validate@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.4.0.tgz#911f6b681bbe4d13cf9b8411f3e84fe1b4a9ee05"
- integrity sha512-Gsfh/KtS7fXDNzz3oKmB1F8dFVqWwqOwhUqEHhKM8Y0R0bJK8R2HLiuqKfnqfbuybdiGiVdzqaK5c0poZaQAew==
- dependencies:
- "@jest/types" "^27.4.0"
- camelcase "^6.2.0"
- chalk "^4.0.0"
- jest-get-type "^27.4.0"
- leven "^3.1.0"
- pretty-format "^27.4.0"
-
-jest-watcher@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.4.0.tgz#1d38eb7a7cd3f488363e0757fa8a4934f5887817"
- integrity sha512-0ZXzsp/NArW6IXxo4g7DP/nCJqS/OLCZyl08qzd8ANGSEoTsliivBumjUK5/0gvx/K4Oc60APNyTMfJJ6WENcg==
- dependencies:
- "@jest/test-result" "^27.4.0"
- "@jest/types" "^27.4.0"
- "@types/node" "*"
- ansi-escapes "^4.2.1"
- chalk "^4.0.0"
- jest-util "^27.4.0"
- string-length "^4.0.1"
-
-jest-worker@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.0.tgz#fa10dddc611cbb47a4153543dd16a0c7e7fd745c"
- integrity sha512-4WuKcUxtzxBoKOUFbt1MtTY9fJwPVD4aN/4Cgxee7OLetPZn5as2bjfZz98XSf2Zq1JFfhqPZpS+43BmWXKgCA==
- dependencies:
- "@types/node" "*"
- merge-stream "^2.0.0"
- supports-color "^8.0.0"
-
-jest@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/jest/-/jest-27.4.0.tgz#defb188c80e5f99d8f43398d334f97164a9a7aec"
- integrity sha512-54SYE6EmGRoHS+9/OCspbb7tAD2WYAvBBXmny2Zp39/QgnNIWZD4KujhAZyRXHWASTBa9/WfXM2oekNBIOFV2A==
- dependencies:
- "@jest/core" "^27.4.0"
- import-local "^3.0.2"
- jest-cli "^27.4.0"
-
-joycon@^3.0.1:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/joycon/-/joycon-3.1.0.tgz#33bb2b6b5a6849a1e251bed623bdf610f477d49f"
- integrity sha512-5Y/YJghKF/IzaUXTut0JtbQyHfBShTaIsH7hHhGXEzYO07zWdWZm5hr3Q6miqhrwsRqqm3mgOnUEZdn+1aRxKQ==
-
-js-tokens@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
- integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-
-js-yaml@^3.13.1:
- version "3.14.1"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
- integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==
- dependencies:
- argparse "^1.0.7"
- esprima "^4.0.0"
-
-js-yaml@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
- integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
- dependencies:
- argparse "^2.0.1"
-
-jsdom@^16.6.0:
- version "16.7.0"
- resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710"
- integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==
- dependencies:
- abab "^2.0.5"
- acorn "^8.2.4"
- acorn-globals "^6.0.0"
- cssom "^0.4.4"
- cssstyle "^2.3.0"
- data-urls "^2.0.0"
- decimal.js "^10.2.1"
- domexception "^2.0.1"
- escodegen "^2.0.0"
- form-data "^3.0.0"
- html-encoding-sniffer "^2.0.1"
- http-proxy-agent "^4.0.1"
- https-proxy-agent "^5.0.0"
- is-potential-custom-element-name "^1.0.1"
- nwsapi "^2.2.0"
- parse5 "6.0.1"
- saxes "^5.0.1"
- symbol-tree "^3.2.4"
- tough-cookie "^4.0.0"
- w3c-hr-time "^1.0.2"
- w3c-xmlserializer "^2.0.0"
- webidl-conversions "^6.1.0"
- whatwg-encoding "^1.0.5"
- whatwg-mimetype "^2.3.0"
- whatwg-url "^8.5.0"
- ws "^7.4.6"
- xml-name-validator "^3.0.0"
-
-jsesc@^2.5.1:
- version "2.5.2"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
- integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==
-
-jsesc@~0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
- integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=
-
-json-parse-even-better-errors@^2.3.0:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
- integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
-
-json-schema-traverse@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
- integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
-
-json-stable-stringify-without-jsonify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
- integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
-
-json5@^2.1.2:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3"
- integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==
- dependencies:
- minimist "^1.2.5"
-
-jsonc-parser@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.0.0.tgz#abdd785701c7e7eaca8a9ec8cf070ca51a745a22"
- integrity sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==
-
-jsonfile@^6.0.1:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae"
- integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==
- dependencies:
- universalify "^2.0.0"
- optionalDependencies:
- graceful-fs "^4.1.6"
-
-kleur@^3.0.3:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"
- integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==
-
-leven@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
- integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==
-
-levn@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
- integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==
- dependencies:
- prelude-ls "^1.2.1"
- type-check "~0.4.0"
-
-levn@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
- integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=
- dependencies:
- prelude-ls "~1.1.2"
- type-check "~0.3.2"
-
-lilconfig@^2.0.3:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.4.tgz#f4507d043d7058b380b6a8f5cb7bcd4b34cee082"
- integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==
-
-lines-and-columns@^1.1.6:
- version "1.2.4"
- resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
- integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
-
-locate-path@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
- integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
- dependencies:
- p-locate "^4.1.0"
-
-lodash.debounce@^4.0.8:
- version "4.0.8"
- resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
- integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168=
-
-lodash.memoize@^4.1.2:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
- integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=
-
-lodash.merge@^4.6.2:
- version "4.6.2"
- resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
- integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
-
-lodash.uniq@^4.5.0:
- version "4.5.0"
- resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
- integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=
-
-lodash@^4.7.0:
- version "4.17.21"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
- integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
-
-lru-cache@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
- integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
- dependencies:
- yallist "^4.0.0"
-
-magic-string@^0.25.7:
- version "0.25.7"
- resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051"
- integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==
- dependencies:
- sourcemap-codec "^1.4.4"
-
-make-dir@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
- integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
- dependencies:
- semver "^6.0.0"
-
-makeerror@1.0.12:
- version "1.0.12"
- resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a"
- integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==
- dependencies:
- tmpl "1.0.5"
-
-mdn-data@2.0.14:
- version "2.0.14"
- resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50"
- integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==
-
-merge-stream@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
- integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
-
-merge2@^1.3.0, merge2@^1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
- integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
-
-micromatch@^4.0.4:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9"
- integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==
- dependencies:
- braces "^3.0.1"
- picomatch "^2.2.3"
-
-mime-db@1.51.0:
- version "1.51.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c"
- integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==
-
-mime-types@^2.1.12, mime-types@^2.1.34:
- version "2.1.34"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24"
- integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==
- dependencies:
- mime-db "1.51.0"
-
-mimic-fn@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
- integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
-
-mini-svg-data-uri@^1.2.3:
- version "1.4.4"
- resolved "https://registry.yarnpkg.com/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz#8ab0aabcdf8c29ad5693ca595af19dd2ead09939"
- integrity sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==
-
-minimatch@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
- integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
- dependencies:
- brace-expansion "^1.1.7"
-
-minimist@^1.2.5:
- version "1.2.5"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
- integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
-
-ms@2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
- integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
-
-nanoid@^3.1.30:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.2.0.tgz#62667522da6673971cca916a6d3eff3f415ff80c"
- integrity sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==
-
-natural-compare@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
- integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
-
-node-int64@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
- integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=
-
-node-modules-regexp@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40"
- integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=
-
-node-releases@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5"
- integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==
-
-normalize-path@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
- integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
-
-normalize-url@^6.0.1:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a"
- integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==
-
-npm-run-path@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
- integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
- dependencies:
- path-key "^3.0.0"
-
-nth-check@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2"
- integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==
- dependencies:
- boolbase "^1.0.0"
-
-nwsapi@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7"
- integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==
-
-object-keys@^1.0.12, object-keys@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
- integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
-
-object.assign@^4.1.0:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940"
- integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==
- dependencies:
- call-bind "^1.0.0"
- define-properties "^1.1.3"
- has-symbols "^1.0.1"
- object-keys "^1.1.1"
-
-once@^1.3.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
- dependencies:
- wrappy "1"
-
-onetime@^5.1.2:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
- integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
- dependencies:
- mimic-fn "^2.1.0"
-
-optionator@^0.8.1:
- version "0.8.3"
- resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495"
- integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==
- dependencies:
- deep-is "~0.1.3"
- fast-levenshtein "~2.0.6"
- levn "~0.3.0"
- prelude-ls "~1.1.2"
- type-check "~0.3.2"
- word-wrap "~1.2.3"
-
-optionator@^0.9.1:
- version "0.9.1"
- resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499"
- integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==
- dependencies:
- deep-is "^0.1.3"
- fast-levenshtein "^2.0.6"
- levn "^0.4.1"
- prelude-ls "^1.2.1"
- type-check "^0.4.0"
- word-wrap "^1.2.3"
-
-p-finally@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
- integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=
-
-p-limit@^2.2.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
- integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
- dependencies:
- p-try "^2.0.0"
-
-p-locate@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07"
- integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
- dependencies:
- p-limit "^2.2.0"
-
-p-queue@^6.6.2:
- version "6.6.2"
- resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426"
- integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==
- dependencies:
- eventemitter3 "^4.0.4"
- p-timeout "^3.2.0"
-
-p-timeout@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe"
- integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==
- dependencies:
- p-finally "^1.0.0"
-
-p-try@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
- integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
-
-parent-module@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
- integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
- dependencies:
- callsites "^3.0.0"
-
-parse-json@^5.0.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
- integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
- dependencies:
- "@babel/code-frame" "^7.0.0"
- error-ex "^1.3.1"
- json-parse-even-better-errors "^2.3.0"
- lines-and-columns "^1.1.6"
-
-parse5@6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b"
- integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==
-
-path-exists@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
- integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
-
-path-is-absolute@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
- integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
-
-path-key@^3.0.0, path-key@^3.1.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
- integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
-
-path-parse@^1.0.6, path-parse@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
- integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
-
-path-type@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
- integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
-
-picocolors@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
- integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
-
-picomatch@^2.0.4, picomatch@^2.2.2, picomatch@^2.2.3:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972"
- integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==
-
-pirates@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87"
- integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==
- dependencies:
- node-modules-regexp "^1.0.0"
-
-pkg-dir@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3"
- integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
- dependencies:
- find-up "^4.0.0"
-
-postcss-calc@^8.2.0:
- version "8.2.3"
- resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.2.3.tgz#53b95ce93de19213c2a5fdd71277a81690ef41d0"
- integrity sha512-EGM2EBBWqP57N0E7N7WOLT116PJ39dwHVU01WO4XPPQLJfkL2xVgkMZ+TZvCfapj/uJH07UEfKHQNPHzSw/14Q==
- dependencies:
- postcss-selector-parser "^6.0.2"
- postcss-value-parser "^4.0.2"
-
-postcss-colormin@^5.2.4:
- version "5.2.4"
- resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.2.4.tgz#7726d3f3d24f111d39faff50a6500688225d5324"
- integrity sha512-rYlC5015aNqVQt/B6Cy156g7sH5tRUJGmT9xeagYthtKehetbKx7jHxhyLpulP4bs4vbp8u/B2rac0J7S7qPQg==
- dependencies:
- browserslist "^4.16.6"
- caniuse-api "^3.0.0"
- colord "^2.9.1"
- postcss-value-parser "^4.2.0"
-
-postcss-convert-values@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.0.3.tgz#492db08a28af84d57651f10edc8f6c8fb2f6df40"
- integrity sha512-fVkjHm2T0PSMqXUCIhHNWVGjhB9mHEWX2GboVs7j3iCgr6FpIl9c/IdXy0PHWZSQ9LFTRgmj98amxJE6KOnlsA==
- dependencies:
- postcss-value-parser "^4.2.0"
-
-postcss-discard-comments@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.0.2.tgz#811ed34e2b6c40713daab0beb4d7a04125927dcd"
- integrity sha512-6VQ3pYTsJHEsN2Bic88Aa7J/Brn4Bv8j/rqaFQZkH+pcVkKYwxCIvoMQkykEW7fBjmofdTnQgcivt5CCBJhtrg==
-
-postcss-discard-duplicates@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.0.2.tgz#61076f3d256351bdaac8e20aade730fef0609f44"
- integrity sha512-LKY81YjUjc78p6rbXIsnppsaFo8XzCoMZkXVILJU//sK0DgPkPSpuq/cZvHss3EtdKvWNYgWzQL+wiJFtEET4g==
-
-postcss-discard-empty@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.0.2.tgz#0676a9bcfc44bb00d338352a45ab80845a31d8f0"
- integrity sha512-SxBsbTjlsKUvZLL+dMrdWauuNZU8TBq5IOL/DHa6jBUSXFEwmDqeXRfTIK/FQpPTa8MJMxEHjSV3UbiuyLARPQ==
-
-postcss-discard-overridden@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.0.3.tgz#004b9818cabb407e60616509267567150b327a3f"
- integrity sha512-yRTXknIZA4k8Yo4FiF1xbsLj/VBxfXEWxJNIrtIy6HC9KQ4xJxcPtoaaskh6QptCGrrcGnhKsTsENTRPZOBu4g==
-
-postcss-merge-longhand@^5.0.5:
- version "5.0.5"
- resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.0.5.tgz#cbc217ca22fb5a3e6ee22a6a1aa6920ec1f3c628"
- integrity sha512-R2BCPJJ/U2oh1uTWEYn9CcJ7MMcQ1iIbj9wfr2s/zHu5om5MP/ewKdaunpfJqR1WYzqCsgnXuRoVXPAzxdqy8g==
- dependencies:
- postcss-value-parser "^4.2.0"
- stylehacks "^5.0.2"
-
-postcss-merge-rules@^5.0.5:
- version "5.0.5"
- resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.0.5.tgz#2a18669ec214019884a60f0a0d356803a8138366"
- integrity sha512-3Oa26/Pb9VOFVksJjFG45SNoe4nhGvJ2Uc6TlRimqF8uhfOCEhVCaJ3rvEat5UFOn2UZqTY5Da8dFgCh3Iq0Ug==
- dependencies:
- browserslist "^4.16.6"
- caniuse-api "^3.0.0"
- cssnano-utils "^3.0.1"
- postcss-selector-parser "^6.0.5"
-
-postcss-minify-font-values@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.0.3.tgz#48c455c4cd980ecd07ac9bf3fc58e9d8a2ae4168"
- integrity sha512-bC45rVzEwsLhv/cL1eCjoo2OOjbSk9I7HKFBYnBvtyuIZlf7uMipMATXtA0Fc3jwPo3wuPIW1jRJWKzflMh1sA==
- dependencies:
- postcss-value-parser "^4.2.0"
-
-postcss-minify-gradients@^5.0.5:
- version "5.0.5"
- resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.0.5.tgz#a5572b9c98ed52cbd7414db24b873f8b9e418290"
- integrity sha512-/YjvXs8PepsoiZAIpjstOO4IHKwFAqYNqbA1yVdqklM84tbUUneh6omJxGlRlF3mi6K5Pa067Mg6IwqEnYC8Zg==
- dependencies:
- colord "^2.9.1"
- cssnano-utils "^3.0.1"
- postcss-value-parser "^4.2.0"
-
-postcss-minify-params@^5.0.4:
- version "5.0.4"
- resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.0.4.tgz#230a4d04456609e614db1d48c2eebc21f6490a45"
- integrity sha512-Z0vjod9lRZEmEPfEmA2sCfjbfEEFKefMD3RDIQSUfXK4LpCyWkX1CniUgyNvnjJFLDPSxtgKzozhHhPHKoeGkg==
- dependencies:
- browserslist "^4.16.6"
- cssnano-utils "^3.0.1"
- postcss-value-parser "^4.2.0"
-
-postcss-minify-selectors@^5.1.2:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.1.2.tgz#bc9698f713b9dab7f44f1ec30643fcbad9a043c0"
- integrity sha512-gpn1nJDMCf3g32y/7kl+jsdamhiYT+/zmEt57RoT9GmzlixBNRPohI7k8UIHelLABhdLf3MSZhtM33xuH5eQOQ==
- dependencies:
- postcss-selector-parser "^6.0.5"
-
-postcss-modules-extract-imports@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d"
- integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==
-
-postcss-modules-local-by-default@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c"
- integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==
- dependencies:
- icss-utils "^5.0.0"
- postcss-selector-parser "^6.0.2"
- postcss-value-parser "^4.1.0"
-
-postcss-modules-scope@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06"
- integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==
- dependencies:
- postcss-selector-parser "^6.0.4"
-
-postcss-modules-values@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c"
- integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==
- dependencies:
- icss-utils "^5.0.0"
-
-postcss-normalize-charset@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.0.2.tgz#eb6130c8a8e950ce25f9ea512de1d9d6a6f81439"
- integrity sha512-fEMhYXzO8My+gC009qDc/3bgnFP8Fv1Ic8uw4ec4YTlhIOw63tGPk1YFd7fk9bZUf1DAbkhiL/QPWs9JLqdF2g==
-
-postcss-normalize-display-values@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.0.2.tgz#8b5273c6c7d0a445e6ef226b8a5bb3204a55fb99"
- integrity sha512-RxXoJPUR0shSjkMMzgEZDjGPrgXUVYyWA/YwQRicb48H15OClPuaDR7tYokLAlGZ2tCSENEN5WxjgxSD5m4cUw==
- dependencies:
- postcss-value-parser "^4.2.0"
-
-postcss-normalize-positions@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.0.3.tgz#b63fcc4ff5fbf65934fafaf83270b2da214711d1"
- integrity sha512-U+rmhjrNBvIGYqr/1tD4wXPFFMKUbXsYXvlUCzLi0tOCUS6LoeEAnmVXXJY/MEB/1CKZZwBSs2tmzGawcygVBA==
- dependencies:
- postcss-value-parser "^4.2.0"
-
-postcss-normalize-repeat-style@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.0.3.tgz#488c0ad8aac0fa4f66ef56cc8d604b3fd9bf705f"
- integrity sha512-uk1+xYx0AMbA3nLSNhbDrqbf/rx+Iuq5tVad2VNyaxxJzx79oGieJ6D9F6AfOL2GtiIbP7vTYlpYHtG+ERFXTg==
- dependencies:
- postcss-value-parser "^4.2.0"
-
-postcss-normalize-string@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.0.3.tgz#49e0a1d58a119d5435ef21893ad03136a6e8f0e6"
- integrity sha512-Mf2V4JbIDboNGQhW6xW0YREDiYXoX3WrD3EjKkjvnpAJ6W4qqjLnK/c9aioyVFaWWHVdP5zVRw/9DI5S3oLDFw==
- dependencies:
- postcss-value-parser "^4.2.0"
-
-postcss-normalize-timing-functions@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.0.2.tgz#db4f4f49721f47667afd1fdc5edb032f8d9cdb2e"
- integrity sha512-Ao0PP6MoYsRU1LxeVUW740ioknvdIUmfr6uAA3xWlQJ9s69/Tupy8qwhuKG3xWfl+KvLMAP9p2WXF9cwuk/7Bg==
- dependencies:
- postcss-value-parser "^4.2.0"
-
-postcss-normalize-unicode@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.0.3.tgz#10f0d30093598a58c48a616491cc7fa53256dd43"
- integrity sha512-uNC7BmS/7h6to2UWa4RFH8sOTzu2O9dVWPE/F9Vm9GdhONiD/c1kNaCLbmsFHlKWcEx7alNUChQ+jH/QAlqsQw==
- dependencies:
- browserslist "^4.16.6"
- postcss-value-parser "^4.2.0"
-
-postcss-normalize-url@^5.0.4:
- version "5.0.4"
- resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.0.4.tgz#3b0322c425e31dd275174d0d5db0e466f50810fb"
- integrity sha512-cNj3RzK2pgQQyNp7dzq0dqpUpQ/wYtdDZM3DepPmFjCmYIfceuD9VIAcOdvrNetjIU65g1B4uwdP/Krf6AFdXg==
- dependencies:
- normalize-url "^6.0.1"
- postcss-value-parser "^4.2.0"
-
-postcss-normalize-whitespace@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.0.3.tgz#fb6bcc9ff2f834448b802657c7acd0956f4591d1"
- integrity sha512-333JWRnX655fSoUbufJ10HJop3c8mrpKkCCUnEmgz/Cb/QEtW+/TMZwDAUt4lnwqP6tCCk0x0b58jqvDgiQm/A==
- dependencies:
- postcss-value-parser "^4.2.0"
-
-postcss-ordered-values@^5.0.4:
- version "5.0.4"
- resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.0.4.tgz#f799dca87a7f17526d31a20085e61768d0b00534"
- integrity sha512-taKtGDZtyYUMVYkg+MuJeBUiTF6cGHZmo/qcW7ibvW79UlyKuSHbo6dpCIiqI+j9oJsXWzP+ovIxoyLDOeQFdw==
- dependencies:
- cssnano-utils "^3.0.1"
- postcss-value-parser "^4.2.0"
-
-postcss-reduce-initial@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.0.2.tgz#fa424ce8aa88a89bc0b6d0f94871b24abe94c048"
- integrity sha512-v/kbAAQ+S1V5v9TJvbGkV98V2ERPdU6XvMcKMjqAlYiJ2NtsHGlKYLPjWWcXlaTKNxooId7BGxeraK8qXvzKtw==
- dependencies:
- browserslist "^4.16.6"
- caniuse-api "^3.0.0"
-
-postcss-reduce-transforms@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.0.3.tgz#df60fab34698a43073e8b87938c71df7a3b040ac"
- integrity sha512-yDnTUab5i7auHiNwdcL1f+pBnqQFf+7eC4cbC7D8Lc1FkvNZhtpkdad+9U4wDdFb84haupMf0rA/Zc5LcTe/3A==
- dependencies:
- postcss-value-parser "^4.2.0"
-
-postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5:
- version "6.0.9"
- resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.9.tgz#ee71c3b9ff63d9cd130838876c13a2ec1a992b2f"
- integrity sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ==
- dependencies:
- cssesc "^3.0.0"
- util-deprecate "^1.0.2"
-
-postcss-svgo@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.0.3.tgz#d945185756e5dfaae07f9edb0d3cae7ff79f9b30"
- integrity sha512-41XZUA1wNDAZrQ3XgWREL/M2zSw8LJPvb5ZWivljBsUQAGoEKMYm6okHsTjJxKYI4M75RQEH4KYlEM52VwdXVA==
- dependencies:
- postcss-value-parser "^4.1.0"
- svgo "^2.7.0"
-
-postcss-unique-selectors@^5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.0.3.tgz#07fd116a8fbd9202e7030f7c4952e7b52c26c63d"
- integrity sha512-V5tX2hadSSn+miVCluuK1IDGy+7jAXSOfRZ2DQ+s/4uQZb/orDYBjH0CHgFrXsRw78p4QTuEFA9kI6C956UnHQ==
- dependencies:
- postcss-selector-parser "^6.0.5"
-
-postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
- integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
-
-postcss@^8, postcss@^8.4.5:
- version "8.4.5"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.5.tgz#bae665764dfd4c6fcc24dc0fdf7e7aa00cc77f95"
- integrity sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==
- dependencies:
- nanoid "^3.1.30"
- picocolors "^1.0.0"
- source-map-js "^1.0.1"
-
-prelude-ls@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
- integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
-
-prelude-ls@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
- integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
-
-pretty-format@^27.4.0:
- version "27.4.0"
- resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.4.0.tgz#440a7b86612a18b0865831a6d8585d989a5420e9"
- integrity sha512-n0QR6hMREfp6nLzfVksXMAfIxk1ffOOfbb/FzKHFmRtn9iJKaZXB8WMzLr8a72IASShEAhqK06nlwp1gVWgqKg==
- dependencies:
- "@jest/types" "^27.4.0"
- ansi-regex "^5.0.1"
- ansi-styles "^5.0.0"
- react-is "^17.0.1"
-
-progress@^2.0.0:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
- integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
-
-prompts@^2.0.1:
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069"
- integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==
- dependencies:
- kleur "^3.0.3"
- sisteransi "^1.0.5"
-
-psl@^1.1.33:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24"
- integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
-
-punycode@^2.1.0, punycode@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
- integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
-
-query-string@^7.1.0:
- version "7.1.0"
- resolved "https://registry.yarnpkg.com/query-string/-/query-string-7.1.0.tgz#96b88f27b39794f97b8c8ccd060bc900495078ef"
- integrity sha512-wnJ8covk+S9isYR5JIXPt93kFUmI2fQ4R/8130fuq+qwLiGVTurg7Klodgfw4NSz/oe7xnyi09y3lSrogUeM3g==
- dependencies:
- decode-uri-component "^0.2.0"
- filter-obj "^1.1.0"
- split-on-first "^1.0.0"
- strict-uri-encode "^2.0.0"
-
-queue-microtask@^1.2.2:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
- integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
-
-react-is@^17.0.1:
- version "17.0.2"
- resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0"
- integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==
-
-regenerate-unicode-properties@^9.0.0:
- version "9.0.0"
- resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz#54d09c7115e1f53dc2314a974b32c1c344efe326"
- integrity sha512-3E12UeNSPfjrgwjkR81m5J7Aw/T55Tu7nUyZVQYCKEOs+2dkxEY+DpPtZzO4YruuiPb7NkYLVcyJC4+zCbk5pA==
- dependencies:
- regenerate "^1.4.2"
-
-regenerate@^1.4.2:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a"
- integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
-
-regenerator-runtime@^0.13.4:
- version "0.13.9"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52"
- integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==
-
-regenerator-transform@^0.14.2:
- version "0.14.5"
- resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4"
- integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==
- dependencies:
- "@babel/runtime" "^7.8.4"
-
-regexpp@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"
- integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==
-
-regexpu-core@^4.7.1:
- version "4.8.0"
- resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.8.0.tgz#e5605ba361b67b1718478501327502f4479a98f0"
- integrity sha512-1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg==
- dependencies:
- regenerate "^1.4.2"
- regenerate-unicode-properties "^9.0.0"
- regjsgen "^0.5.2"
- regjsparser "^0.7.0"
- unicode-match-property-ecmascript "^2.0.0"
- unicode-match-property-value-ecmascript "^2.0.0"
-
-regjsgen@^0.5.2:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733"
- integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==
-
-regjsparser@^0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.7.0.tgz#a6b667b54c885e18b52554cb4960ef71187e9968"
- integrity sha512-A4pcaORqmNMDVwUjWoTzuhwMGpP+NykpfqAsEgI1FSH/EzC7lrN5TMd+kN8YCovX+jMpu8eaqXgXPCa0g8FQNQ==
- dependencies:
- jsesc "~0.5.0"
-
-require-directory@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
- integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I=
-
-resolve-cwd@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
- integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==
- dependencies:
- resolve-from "^5.0.0"
-
-resolve-from@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
- integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
-
-resolve-from@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
- integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
-
-resolve.exports@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9"
- integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==
-
-resolve@^1.14.2, resolve@^1.20.0:
- version "1.20.0"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975"
- integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==
- dependencies:
- is-core-module "^2.2.0"
- path-parse "^1.0.6"
-
-resolve@^1.21.0:
- version "1.22.0"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198"
- integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==
- dependencies:
- is-core-module "^2.8.1"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-reusify@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
- integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
-
-rimraf@^3.0.0, rimraf@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
- integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
- dependencies:
- glob "^7.1.3"
-
-rollup-plugin-dts@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/rollup-plugin-dts/-/rollup-plugin-dts-4.0.1.tgz#930cbd5aaaa64a55e895ecd6ae8234e1a5467710"
- integrity sha512-DNv5F8pro/r0Hkx3JWKRtJZocDnqXfgypoajeiaNq134rYaFcEIl/oas5PogD1qexMadVijsHyVko1Chig0OOQ==
- dependencies:
- magic-string "^0.25.7"
- optionalDependencies:
- "@babel/code-frame" "^7.14.5"
-
-rollup-plugin-esbuild@^4.7.2:
- version "4.7.2"
- resolved "https://registry.yarnpkg.com/rollup-plugin-esbuild/-/rollup-plugin-esbuild-4.7.2.tgz#1a496a9f96257cdf5ed800e818932859232471f8"
- integrity sha512-rBS2hTedtG+wL/yyIWQ84zju5rtfF15gkaCLN0vsWGmBdRd0UPm52meAwkmrsPQf3mB/H2o+k9Q8Ce8A66SE5A==
- dependencies:
- "@rollup/pluginutils" "^4.1.1"
- joycon "^3.0.1"
- jsonc-parser "^3.0.0"
-
-rollup-plugin-styles@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/rollup-plugin-styles/-/rollup-plugin-styles-4.0.0.tgz#472f104d33edda27fb089b63a315e31531611826"
- integrity sha512-A2K2sao84OsTmDxXG83JTCdXWrmgvQkkI38XDat46rdtpGMRm9tSYqeCdlwwGDJF4kKIafhV1mUidqu8MxUGig==
- dependencies:
- "@rollup/pluginutils" "^4.1.2"
- "@types/cssnano" "^5.0.0"
- cosmiconfig "^7.0.1"
- cssnano "^5.0.15"
- fs-extra "^10.0.0"
- icss-utils "^5.1.0"
- mime-types "^2.1.34"
- p-queue "^6.6.2"
- postcss "^8.4.5"
- postcss-modules-extract-imports "^3.0.0"
- postcss-modules-local-by-default "^4.0.0"
- postcss-modules-scope "^3.0.0"
- postcss-modules-values "^4.0.0"
- postcss-value-parser "^4.2.0"
- query-string "^7.1.0"
- resolve "^1.21.0"
- source-map-js "^1.0.1"
- tslib "^2.3.1"
-
-rollup@^2.60.1:
- version "2.60.1"
- resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.60.1.tgz#4b34cd247f09b421f10a3c9286eda2ecf9972079"
- integrity sha512-akwfnpjY0rXEDSn1UTVfKXJhPsEBu+imi1gqBA1ZkHGydUnkV/fWCC90P7rDaLEW8KTwBcS1G3N4893Ndz+jwg==
- optionalDependencies:
- fsevents "~2.3.2"
-
-run-parallel@^1.1.9:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
- integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
- dependencies:
- queue-microtask "^1.2.2"
-
-safe-buffer@~5.1.1:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
- integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
-
-"safer-buffer@>= 2.1.2 < 3":
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
- integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
-
-saxes@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d"
- integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==
- dependencies:
- xmlchars "^2.2.0"
-
-semver@7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e"
- integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==
-
-semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0:
- version "6.3.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
- integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
-
-semver@^7.2.1, semver@^7.3.2, semver@^7.3.5:
- version "7.3.5"
- resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
- integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
- dependencies:
- lru-cache "^6.0.0"
-
-shebang-command@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
- integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
- dependencies:
- shebang-regex "^3.0.0"
-
-shebang-regex@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
- integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
-
-signal-exit@^3.0.2, signal-exit@^3.0.3:
- version "3.0.6"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af"
- integrity sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==
-
-sisteransi@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
- integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
-
-slash@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
- integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
-
-source-map-js@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
- integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
-
-source-map-support@^0.5.6:
- version "0.5.21"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
- integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
- dependencies:
- buffer-from "^1.0.0"
- source-map "^0.6.0"
-
-source-map@^0.5.0:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
- integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
-
-source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
- integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
-
-source-map@^0.7.3:
- version "0.7.3"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383"
- integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==
-
-sourcemap-codec@^1.4.4:
- version "1.4.8"
- resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
- integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
-
-split-on-first@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f"
- integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==
-
-sprintf-js@~1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
- integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
-
-stable@^0.1.8:
- version "0.1.8"
- resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf"
- integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==
-
-stack-utils@^2.0.3:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5"
- integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==
- dependencies:
- escape-string-regexp "^2.0.0"
-
-strict-uri-encode@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546"
- integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY=
-
-string-length@^4.0.1:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a"
- integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==
- dependencies:
- char-regex "^1.0.2"
- strip-ansi "^6.0.0"
-
-string-width@^4.1.0, string-width@^4.2.0:
- version "4.2.3"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
- integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
- dependencies:
- emoji-regex "^8.0.0"
- is-fullwidth-code-point "^3.0.0"
- strip-ansi "^6.0.1"
-
-strip-ansi@^6.0.0, strip-ansi@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
- integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
- dependencies:
- ansi-regex "^5.0.1"
-
-strip-bom@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878"
- integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==
-
-strip-final-newline@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
- integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
-
-strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
- integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
-
-stylehacks@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.0.2.tgz#fa10e5181c6e8dc0bddb4a3fb372e9ac42bba2ad"
- integrity sha512-114zeJdOpTrbQYRD4OU5UWJ99LKUaqCPJTU1HQ/n3q3BwmllFN8kHENaLnOeqVq6AhXrWfxHNZTl33iJ4oy3cQ==
- dependencies:
- browserslist "^4.16.6"
- postcss-selector-parser "^6.0.4"
-
-supports-color@^5.3.0:
- version "5.5.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
- integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
- dependencies:
- has-flag "^3.0.0"
-
-supports-color@^7.0.0, supports-color@^7.1.0:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
- integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
- dependencies:
- has-flag "^4.0.0"
-
-supports-color@^8.0.0:
- version "8.1.1"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c"
- integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==
- dependencies:
- has-flag "^4.0.0"
-
-supports-hyperlinks@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb"
- integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==
- dependencies:
- has-flag "^4.0.0"
- supports-color "^7.0.0"
-
-supports-preserve-symlinks-flag@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
- integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
-
-svgo@^2.7.0:
- version "2.8.0"
- resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24"
- integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==
- dependencies:
- "@trysound/sax" "0.2.0"
- commander "^7.2.0"
- css-select "^4.1.3"
- css-tree "^1.1.3"
- csso "^4.2.0"
- picocolors "^1.0.0"
- stable "^0.1.8"
-
-symbol-tree@^3.2.4:
- version "3.2.4"
- resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2"
- integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==
-
-terminal-link@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994"
- integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==
- dependencies:
- ansi-escapes "^4.2.1"
- supports-hyperlinks "^2.0.0"
-
-test-exclude@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e"
- integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==
- dependencies:
- "@istanbuljs/schema" "^0.1.2"
- glob "^7.1.4"
- minimatch "^3.0.4"
-
-text-table@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
- integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
-
-throat@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375"
- integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==
-
-timsort@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4"
- integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=
-
-tmpl@1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc"
- integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==
-
-to-fast-properties@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
- integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=
-
-to-regex-range@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
- integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
- dependencies:
- is-number "^7.0.0"
-
-tough-cookie@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4"
- integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==
- dependencies:
- psl "^1.1.33"
- punycode "^2.1.1"
- universalify "^0.1.2"
-
-tr46@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240"
- integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==
- dependencies:
- punycode "^2.1.1"
-
-tslib@^1.8.1:
- version "1.14.1"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
- integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
-
-tslib@^2.3.1:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01"
- integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==
-
-tsutils@^3.21.0:
- version "3.21.0"
- resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
- integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==
- dependencies:
- tslib "^1.8.1"
-
-type-check@^0.4.0, type-check@~0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
- integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==
- dependencies:
- prelude-ls "^1.2.1"
-
-type-check@~0.3.2:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
- integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=
- dependencies:
- prelude-ls "~1.1.2"
-
-type-detect@4.0.8:
- version "4.0.8"
- resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"
- integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==
-
-type-fest@^0.20.2:
- version "0.20.2"
- resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"
- integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
-
-type-fest@^0.21.3:
- version "0.21.3"
- resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
- integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
-
-typedarray-to-buffer@^3.1.5:
- version "3.1.5"
- resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
- integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
- dependencies:
- is-typedarray "^1.0.0"
-
-typescript@^4.5.2:
- version "4.5.2"
- resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.2.tgz#8ac1fba9f52256fdb06fb89e4122fa6a346c2998"
- integrity sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==
-
-unicode-canonical-property-names-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc"
- integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==
-
-unicode-match-property-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3"
- integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==
- dependencies:
- unicode-canonical-property-names-ecmascript "^2.0.0"
- unicode-property-aliases-ecmascript "^2.0.0"
-
-unicode-match-property-value-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714"
- integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==
-
-unicode-property-aliases-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8"
- integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==
-
-universalify@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
- integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
-
-universalify@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717"
- integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==
-
-uri-js@^4.2.2:
- version "4.4.1"
- resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
- integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
- dependencies:
- punycode "^2.1.0"
-
-util-deprecate@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
- integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
-
-v8-compile-cache@^2.0.3:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
- integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==
-
-v8-to-istanbul@^8.1.0:
- version "8.1.0"
- resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz#0aeb763894f1a0a1676adf8a8b7612a38902446c"
- integrity sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==
- dependencies:
- "@types/istanbul-lib-coverage" "^2.0.1"
- convert-source-map "^1.6.0"
- source-map "^0.7.3"
-
-w3c-hr-time@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd"
- integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==
- dependencies:
- browser-process-hrtime "^1.0.0"
-
-w3c-xmlserializer@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a"
- integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==
- dependencies:
- xml-name-validator "^3.0.0"
-
-walker@^1.0.7:
- version "1.0.8"
- resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f"
- integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==
- dependencies:
- makeerror "1.0.12"
-
-webidl-conversions@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff"
- integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==
-
-webidl-conversions@^6.1.0:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514"
- integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==
-
-whatwg-encoding@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0"
- integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==
- dependencies:
- iconv-lite "0.4.24"
-
-whatwg-mimetype@^2.3.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf"
- integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==
-
-whatwg-url@^8.0.0, whatwg-url@^8.5.0:
- version "8.7.0"
- resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77"
- integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==
- dependencies:
- lodash "^4.7.0"
- tr46 "^2.1.0"
- webidl-conversions "^6.1.0"
-
-which@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
- integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
- dependencies:
- isexe "^2.0.0"
-
-word-wrap@^1.2.3, word-wrap@~1.2.3:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
- integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
-
-wrap-ansi@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
- integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
- dependencies:
- ansi-styles "^4.0.0"
- string-width "^4.1.0"
- strip-ansi "^6.0.0"
-
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
- integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
-
-write-file-atomic@^3.0.0:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8"
- integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==
- dependencies:
- imurmurhash "^0.1.4"
- is-typedarray "^1.0.0"
- signal-exit "^3.0.2"
- typedarray-to-buffer "^3.1.5"
-
-ws@^7.4.6:
- version "7.5.6"
- resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.6.tgz#e59fc509fb15ddfb65487ee9765c5a51dec5fe7b"
- integrity sha512-6GLgCqo2cy2A2rjCNFlxQS6ZljG/coZfZXclldI8FB/1G3CCI36Zd8xy2HrFVACi8tfk5XrgLQEk+P0Tnz9UcA==
-
-xml-name-validator@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a"
- integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==
-
-xmlchars@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb"
- integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==
-
-y18n@^5.0.5:
- version "5.0.8"
- resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
- integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
-
-yallist@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
- integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
-
-yaml@^1.10.0, yaml@^1.10.2:
- version "1.10.2"
- resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
- integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
-
-yargs-parser@^20.2.2:
- version "20.2.9"
- resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
- integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
-
-yargs@^16.2.0:
- version "16.2.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"
- integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==
- dependencies:
- cliui "^7.0.2"
- escalade "^3.1.1"
- get-caller-file "^2.0.5"
- require-directory "^2.1.1"
- string-width "^4.2.0"
- y18n "^5.0.5"
- yargs-parser "^20.2.2"
diff --git a/javascript/js_library_pipeline.bzl b/javascript/js_library_pipeline.bzl
deleted file mode 100644
index 1f59f4c..0000000
--- a/javascript/js_library_pipeline.bzl
+++ /dev/null
@@ -1,147 +0,0 @@
-load("//javascript/package_json:package_json.bzl", "create_package_json")
-load("//javascript/rollup:rollup_build.bzl", "rollup_bin_build", "rollup_build")
-load("@build_bazel_rules_nodejs//:index.bzl", "js_library", "pkg_npm")
-load("@npm//jest-cli:index.bzl", "jest_test")
-load("@npm//eslint:index.bzl", "eslint_test")
-load(":utils.bzl", "filter_empty", "include_exts", "remove_duplicates", "without_tests")
-
-BUILD_DATA = [
- "@npm//rollup-plugin-dts",
- "@npm//rollup-plugin-esbuild",
- "@npm//rollup-plugin-styles",
- "@npm//@rollup/plugin-json",
- "@npm//@rollup/plugin-image",
-]
-
-PLACEHOLDER_VERSION = "0.0.0-PLACEHOLDER"
-
-def js_library_pipeline(
- name,
- srcs,
- entry,
- bin_entry = None,
- bin_name = None,
- out_dir = "dist",
- bundle = False,
- dependencies = [],
- peer_dependencies = [],
- data = [],
- build_data = [],
- build_label = None,
- test_data = [],
- lint_data = [],
- lint_exts = [".ts", ".js", ".tsx", ".jsx"],
- js_library_data = [],
- test_env = {},
- create_package_json_opts = {},
- placeholder_version = PLACEHOLDER_VERSION,
- registry = "https://registry.npmjs.org",
- version_file = "//:VERSION",
- root_package_json = "//:package.json",
- typings = [],
- private = False,
- test_file_pattern = [
- "_tests_",
- ".test.",
- ],
- ts_config = "//:tsconfig.json",
- jest_config = "//:jest.config.js",
- eslint_config = "//:.eslintrc.js"):
- create_package_json_name = "%s-package_json" % name
- js_build_name = build_label if build_label else "%s-js_build" % name
- js_bin_build_name = "%s-js_bin_build" % name if bin_entry else None
-
- create_package_json(
- name = create_package_json_name,
- package_name = name,
- entry = entry,
- private = private,
- bin_entry = bin_entry,
- bin_name = bin_name,
- out_dir = out_dir,
- registry = registry,
- placeholder_version = placeholder_version,
- dependencies = dependencies,
- peer_dependencies = peer_dependencies,
- root_package_json = root_package_json,
- **create_package_json_opts
- )
-
- all_build_data = remove_duplicates(filter_empty(data + BUILD_DATA + build_data + dependencies + peer_dependencies + [":%s" % create_package_json_name, ts_config] + typings))
-
- if not build_label:
- rollup_build(
- name = js_build_name,
- entry = entry,
- out_dir = out_dir,
- srcs = srcs,
- data = all_build_data,
- )
-
- for t in ["cjs", "esm", "types"]:
- native.filegroup(
- name = "%s-%s" % (name, t),
- srcs = [":%s" % js_build_name],
- output_group = t,
- )
-
- if bin_entry:
- rollup_bin_build(
- name = js_bin_build_name,
- entry = bin_entry,
- out_dir = out_dir,
- bin_name = bin_name,
- srcs = srcs,
- data = all_build_data,
- )
-
- js_library(
- visibility = ["//visibility:public"],
- name = name,
- srcs = without_tests(srcs, test_file_pattern),
- package_name = name,
- deps = remove_duplicates(filter_empty([
- ":%s" % create_package_json_name,
- ":%s" % js_build_name,
- (":%s" % js_bin_build_name) if bin_entry else None,
- ] + dependencies + peer_dependencies + js_library_data)),
- )
-
- eslint_test(
- name = "%s-lint" % name,
- data = remove_duplicates(filter_empty([eslint_config] + data + lint_data + test_data + dependencies + peer_dependencies + srcs)),
- args = [
- "--ext",
- ",".join(lint_exts),
- ] + ["$(execpath %s)" % (f) for f in include_exts(srcs, lint_exts)],
- )
-
- jest_test(
- name = "%s-unit" % name,
- env = dict(test_env, **{
- "JEST_JUNIT_OUTPUT_FILE": "$XML_OUTPUT_FILE",
- # Unset the coverage_dir so the default rules don't try to gather coverage
- "COVERAGE_DIR": "",
- }),
- args = [
- "--no-cache",
- "--ci",
- "--colors",
- ],
- data = remove_duplicates(filter_empty([jest_config] + data + test_data + dependencies + peer_dependencies + srcs)),
- )
-
- pkg_npm(
- name = "pkg_npm",
- package_name = name,
- deps = [":%s" % name],
- tags = filter_empty([
- "do-not-publish" if private else None,
- ]),
- substitutions = {
- "__VERSION__": "{STABLE_VERSION}",
- "0.0.0-PLACEHOLDER": "{STABLE_VERSION}",
- "__GIT_COMMIT__": "{STABLE_GIT_COMMIT}",
- },
- validate = False,
- )
diff --git a/javascript/next/BUILD b/javascript/next/BUILD
deleted file mode 100644
index 891a344..0000000
--- a/javascript/next/BUILD
+++ /dev/null
@@ -1,11 +0,0 @@
-load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary")
-
-package(default_visibility = ["//visibility:public"])
-
-nodejs_binary(
- name = "next_build",
- data = [
- "@npm//next",
- ],
- entry_point = ":next.build.js",
-)
diff --git a/javascript/next/next.build.js b/javascript/next/next.build.js
deleted file mode 100644
index bea20af..0000000
--- a/javascript/next/next.build.js
+++ /dev/null
@@ -1,77 +0,0 @@
-const nextBuild = require("next/dist/build").default;
-const nextExport = require('next/dist/export').default;
-const { trace } = require('next/dist/trace');
-
-const fse = require('fs-extra');
-const path = require("path");
-
-main(process.argv.slice(2)).catch((err) => {
- console.error(err);
- process.exitCode = 1;
-});
-
-async function handleSubstitutions(folderOrFile, substitutions) {
- if (Object.keys(substitutions).length === 0) {
- return;
- }
-
- if (await fse.statSync(folderOrFile).isDirectory()) {
- const files = await fse.readdir(folderOrFile);
- for (const file of files) {
- await handleSubstitutions(path.join(folderOrFile, file), substitutions);
- }
-
- return;
- }
-
- let contents = await fse.readFile(folderOrFile, 'utf-8');
- const originalContents = contents;
- for (const key in substitutions) {
- const value = substitutions[key];
- contents = contents.replace(new RegExp(key, 'g'), value);
- }
-
- // If the contents didn't change (i.e. no substitutions were made), don't write it out
- // This will also fix non-utf8 files from changing
- if (contents !== originalContents) {
- await fse.writeFile(folderOrFile, contents);
- }
-}
-
-async function main(argv) {
- const [_1, srcDir, _2, outDir, _3, sub, _4, statusFile, ] = argv;
-
- const substitutions = JSON.parse(sub);
-
- if (statusFile) {
- (await fse.readFile(statusFile, 'utf-8')).split('\n').forEach(line => {
- const firstSpace = line.indexOf(' ');
- const varName = line.substring(0, firstSpace);
- const varVal = line.substring(firstSpace + 1);
- process.env[varName] = varVal;
-
- // Swap out anything referencing the stamped file with the actual value
- Object.keys(substitutions).forEach(key => {
- if (substitutions[key] === varName) {
- substitutions[key] = varVal;
- }
- });
- })
- }
-
- const rootDir = path.resolve(srcDir);
- const distDir = path.resolve(outDir);
-
- await nextBuild(rootDir, null, false, true, false);
-
- await nextExport(rootDir, {
- threads: 6,
- outdir: path.join(rootDir, 'out')
- }, trace('bazel-export'));
-
- await fse.move(path.join(rootDir, 'out'), distDir, {
- overwrite: true
- });
-
- await handleSubstitutions(distDir, substitutions);
-}
\ No newline at end of file
diff --git a/javascript/next/next_build.bzl b/javascript/next/next_build.bzl
deleted file mode 100644
index 8a38848..0000000
--- a/javascript/next/next_build.bzl
+++ /dev/null
@@ -1,57 +0,0 @@
-load("@build_bazel_rules_nodejs//:providers.bzl", "node_modules_aspect", "run_node", "NODE_CONTEXT_ATTRS", "NodeContextInfo")
-load("@build_bazel_rules_nodejs//internal/linker:link_node_modules.bzl", "module_mappings_aspect")
-load("@rules_player//javascript:utils.bzl", "get_dep_files")
-
-NEXT_ATTRS = dict(NODE_CONTEXT_ATTRS, **{
- # Dependencies needed to build the pkg
- "data": attr.label_list(
- default = [],
- aspects = [module_mappings_aspect, node_modules_aspect],
- allow_files = True,
- ),
- "env": attr.string_dict(),
- "substitutions": attr.string_dict(),
- "srcs": attr.label_list(default = [], allow_files = True),
- "_next": attr.label(default = Label("//javascript/next:next_build"), executable = True, cfg = "host"),
-})
-
-def _next_export(ctx):
- next_dir = ctx.actions.declare_directory(ctx.label.name)
- deps_inputs = get_dep_files(ctx.attr.data)
-
- stamp = ctx.attr.node_context_data[NodeContextInfo].stamp
-
- stamp_args = []
- stamp_inputs = []
-
- if stamp:
- stamp_args = ['--stamp-file', ctx.info_file.path]
- stamp_inputs = [ctx.info_file]
-
- run_node(
- ctx,
- inputs = ctx.files.srcs + deps_inputs + stamp_inputs,
- outputs = [next_dir],
- env = ctx.attr.env,
- arguments = [
- "--root-dir",
- ctx.label.package,
- "--out_dir",
- next_dir.path,
- "--substitutions",
- json.encode(ctx.attr.substitutions),
- ] + stamp_args,
- executable = "_next",
- mnemonic = "Next",
- )
-
- return [
- DefaultInfo(
- files = depset([next_dir]),
- ),
- ]
-
-next_export = rule(
- implementation = _next_export,
- attrs = NEXT_ATTRS,
-)
diff --git a/javascript/package_json/BUILD b/javascript/package_json/BUILD
deleted file mode 100644
index cdf4302..0000000
--- a/javascript/package_json/BUILD
+++ /dev/null
@@ -1,18 +0,0 @@
-load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary")
-
-package(default_visibility = ["//visibility:public"])
-
-nodejs_binary(
- name = "create_package_json",
- entry_point = "create_package_json.js",
-)
-
-nodejs_binary(
- name = "merge_json",
- entry_point = "merge_json.js",
-)
-
-nodejs_binary(
- name = "contributors",
- entry_point = "contributors.js",
-)
\ No newline at end of file
diff --git a/javascript/package_json/contributors.bzl b/javascript/package_json/contributors.bzl
deleted file mode 100644
index 61e52f0..0000000
--- a/javascript/package_json/contributors.bzl
+++ /dev/null
@@ -1,40 +0,0 @@
-"""
-Module for building a contributor information about a directory.
-"""
-
-load("@build_bazel_rules_nodejs//:providers.bzl", "node_modules_aspect", "run_node")
-
-_CREATE_CONTRIBUTORS_JSON = Label("//javascript/package_json:contributors")
-
-create_contribUTORS_ATTRS = {
- # All contrib src file
- "all_contributors": attr.label(allow_single_file = [".all-contributorsrc"], ),
-
- # Internal reference to script to generate the contributors
- "_create_contributors": attr.label(default = _CREATE_CONTRIBUTORS_JSON, executable = True, cfg = "host"),
-}
-
-def _create_contributors_impl(ctx):
- contrib_json = ctx.actions.declare_file("_contributors.json")
-
- run_node(
- ctx,
- inputs = ctx.files.all_contributors,
- outputs = [contrib_json],
- arguments = [json.encode({
- "output_file": contrib_json.path,
- "all_contributors": ctx.file.all_contributors.path,
- })],
- executable = "_create_contributors",
- )
-
- return [
- DefaultInfo(
- files = depset([contrib_json]),
- ),
- ]
-
-create_contributors = rule(
- implementation = _create_contributors_impl,
- attrs = create_contribUTORS_ATTRS,
-)
diff --git a/javascript/package_json/contributors.js b/javascript/package_json/contributors.js
deleted file mode 100644
index 51025ab..0000000
--- a/javascript/package_json/contributors.js
+++ /dev/null
@@ -1,25 +0,0 @@
-const fs = require("fs");
-const { execSync } = require("child_process");
-
-const main = ([config]) => {
- const { output_file, all_contributors } = JSON.parse(config);
- const allContrib = JSON.parse(fs.readFileSync(all_contributors, "utf-8"));
- const contributors = [];
-
- allContrib.contributors.forEach(contrib => {
- contributors.push({
- name: contrib.name,
- url: contrib.profile
- })
- })
-
- fs.writeFileSync(output_file, JSON.stringify({ contributors }, null, 2));
-};
-
-if (require.main === module) {
- try {
- process.exitCode = main(process.argv.slice(2));
- } catch (e) {
- console.error(process.argv[1], e);
- }
-}
diff --git a/javascript/package_json/create_package_json.js b/javascript/package_json/create_package_json.js
deleted file mode 100644
index c0abee1..0000000
--- a/javascript/package_json/create_package_json.js
+++ /dev/null
@@ -1,84 +0,0 @@
-const fs = require("fs");
-const process = require("process");
-const path = require('path')
-
-const main = ([config]) => {
- const {
- name,
- peer_dependencies,
- dependencies,
- local_deps,
- output_file,
- bin_name,
- bin_entry,
- placeholder_version,
- root_package_json,
- base_package_json,
- additional_properties,
- out_dir,
- registry,
- private
- } = JSON.parse(config);
-
- const rootPackageJson = JSON.parse(fs.readFileSync(root_package_json, 'utf-8'));
- const createDependencyObject = deps => {
- return Object.fromEntries(deps.map(depName => {
- if (local_deps.includes(depName)) {
- return [depName, placeholder_version]
- }
-
- if (rootPackageJson.dependencies[depName]) {
- return [depName, rootPackageJson.dependencies[depName]]
- }
-
- throw new Error(`Unable to resolve version for ${depName}`);
- }))
- }
-
- let base_package_json_props = {};
- if (base_package_json) {
- base_package_json_props = JSON.parse(fs.readFileSync(base_package_json, 'utf-8'));
- }
-
- let bin_props = {};
-
- if (bin_entry) {
- const bin_path = path.join(out_dir, bin_entry);
-
- bin_props = {
- "bin": bin_name ? { [bin_name]: bin_path } : bin_path
- }
- }
-
- let publishConfig = undefined;
-
- if (registry) {
- publishConfig = {
- "registry": registry,
- }
- }
-
- fs.writeFileSync(output_file, JSON.stringify({
- name,
- version: placeholder_version,
- private,
- publishConfig,
- peerDependencies: createDependencyObject(peer_dependencies),
- dependencies: createDependencyObject(dependencies),
- main: path.join(out_dir, 'index.cjs.js'),
- module: path.join(out_dir, 'index.esm.js'),
- typings: path.join(out_dir, 'index.d.ts'),
- ...bin_props,
- ...base_package_json_props,
- ...JSON.parse(additional_properties),
- }, null, 2))
-
-}
-
-if (require.main === module) {
- try {
- process.exitCode = main(process.argv.slice(2));
- } catch (e) {
- console.error(process.argv[1], e);
- }
-}
\ No newline at end of file
diff --git a/javascript/package_json/index.bzl b/javascript/package_json/index.bzl
deleted file mode 100644
index d621d57..0000000
--- a/javascript/package_json/index.bzl
+++ /dev/null
@@ -1,7 +0,0 @@
-load(":merge_json.bzl", _merge_json = "merge_json")
-load(":package_json.bzl", _create_package_json = "create_package_json")
-load(":contributors.bzl", _create_contributors = "create_contributors")
-
-merge_json = _merge_json
-create_package_json = _create_package_json
-create_contributors = _create_contributors
\ No newline at end of file
diff --git a/javascript/package_json/merge_json.bzl b/javascript/package_json/merge_json.bzl
deleted file mode 100644
index 8273917..0000000
--- a/javascript/package_json/merge_json.bzl
+++ /dev/null
@@ -1,41 +0,0 @@
-"""
-Module for merging multiple JSON files together into one
-"""
-
-load("@build_bazel_rules_nodejs//:providers.bzl", "node_modules_aspect", "run_node")
-
-_MERGE_JSON = Label("//javascript/package_json:merge_json")
-
-MERGE_JSON_ATTRS = {
- # List of files to merge -- later files will override earlier ones
- "srcs": attr.label_list(default = [], allow_files = True),
-
- # Internal reference to script to merge attributes and files together
- "_merge_json": attr.label(default = _MERGE_JSON, executable = True, cfg = "host"),
-}
-
-
-def _merge_json_impl(ctx):
- merged_json = ctx.actions.declare_file("merged.json")
-
- run_node(
- ctx,
- inputs = ctx.files.srcs,
- outputs = [merged_json],
- arguments = [json.encode({
- "output_file": merged_json.path,
- "input_files": [f.path for f in ctx.files.srcs],
- })],
- executable = "_merge_json",
- )
-
- return [
- DefaultInfo(
- files = depset([merged_json]),
- ),
- ]
-
-merge_json = rule(
- implementation = _merge_json_impl,
- attrs = MERGE_JSON_ATTRS,
-)
diff --git a/javascript/package_json/merge_json.js b/javascript/package_json/merge_json.js
deleted file mode 100644
index 5bd1d9f..0000000
--- a/javascript/package_json/merge_json.js
+++ /dev/null
@@ -1,24 +0,0 @@
-const fs = require('fs');
-
-const main = ([config]) => {
- const { input_files, output_file } = JSON.parse(config);
- let merged_json = {};
-
- input_files.forEach(file => {
- const json = JSON.parse(fs.readFileSync(file, 'utf-8'));
- merged_json = {
- ...merged_json,
- ...json,
- }
- });
-
- fs.writeFileSync(output_file, JSON.stringify(merged_json, null, 2));
-};
-
-if (require.main === module) {
- try {
- process.exitCode = main(process.argv.slice(2));
- } catch (e) {
- console.error(process.argv[1], e);
- }
-}
diff --git a/javascript/package_json/package_json.bzl b/javascript/package_json/package_json.bzl
deleted file mode 100644
index 15c30af..0000000
--- a/javascript/package_json/package_json.bzl
+++ /dev/null
@@ -1,122 +0,0 @@
-"""
-Module for generating a package_json based on a BUILD invocation
-"""
-
-load("@build_bazel_rules_nodejs//:providers.bzl", "node_modules_aspect", "run_node")
-load("@build_bazel_rules_nodejs//internal/linker:link_node_modules.bzl", "LinkerPackageMappingInfo", "module_mappings_aspect")
-load("@rules_player//javascript:utils.bzl", "filter_empty")
-
-_CREATE_PKG_JSON = Label("//javascript/package_json:create_package_json")
-
-PACKGE_JSON_ATTRS = {
- # The name of the package "@foo/bar"
- "package_name": attr.string(mandatory = True),
-
- # The entry file, used to calculate the name of the output src/index.ts -> dist/index.cjs.js
- "entry": attr.string(),
-
- # An entry file for any `bin` script
- "bin_entry": attr.string(),
-
- # The name for a bin entry
- "bin_name": attr.string(),
-
- # If the package should skipped being published to npm
- "private": attr.bool(default = False),
-
- # The npm registry to publish to
- "registry": attr.string(),
-
- # A .json file to use to add additional properties to the generated package.
- # This can often be a 'package.json' and the entries/outputs/dependencies will be filled in later on
- "base_package_json": attr.label(allow_single_file = [".json"]),
-
- # A JSON string of additional things to add to the generated package.json
- # For when you don't want/have a template file to pull from
- "additional_properties": attr.string(default = "{}"),
-
- # The output directory, used to calculate the output file
- "out_dir": attr.string(mandatory = True),
-
- # The list of dependencies
- "dependencies": attr.label_list(
- default = [],
- aspects = [module_mappings_aspect, node_modules_aspect],
- ),
-
- # List of peer dependencies
- "peer_dependencies": attr.label_list(
- default = [],
- aspects = [module_mappings_aspect, node_modules_aspect],
- ),
- "placeholder_version": attr.string(default = "0.0.0-PLACEHOLDER"),
-
- # The root package.json for the project. Used to get the versions of dependencies and peer-depedencies
- "root_package_json": attr.label(mandatory = True, allow_single_file = ["package.json"]),
-
- # Internal reference to script to create package.json file
- "_create_pkg_json": attr.label(default = _CREATE_PKG_JSON, executable = True, cfg = "host"),
-}
-
-def _get_pkg_name(dep):
- if LinkerPackageMappingInfo in dep:
- mappings = dep[LinkerPackageMappingInfo].mappings.items()
- if (len(mappings) > 0):
- package_name = mappings[-1][0].split(":")[0]
- return package_name
-
- return dep.label.package
-
-def _create_package_json_impl(ctx):
- pkg_json = ctx.actions.declare_file("package.json")
-
- local_deps = []
-
- for dep in ctx.attr.dependencies + ctx.attr.peer_dependencies:
- if LinkerPackageMappingInfo in dep:
- for key, value in dep[LinkerPackageMappingInfo].mappings.items():
- # key is of format "package_name:package_path"
- package_name = key.split(":")[0]
- local_deps.append(package_name)
-
- bin_file_name = None
-
- if ctx.attr.bin_entry:
- if not ctx.attr.bin_name:
- bin_file_name = "cli.js"
- else:
- bin_file_name = ctx.attr.bin_name + ".js"
-
- run_node(
- ctx,
- inputs = filter_empty([ctx.file.root_package_json, ctx.file.base_package_json]),
- outputs = [pkg_json],
- arguments = [json.encode({
- "name": ctx.attr.package_name,
- "bin_entry": bin_file_name,
- "bin_name": ctx.attr.bin_name,
- "root_package_json": ctx.file.root_package_json.path,
- "base_package_json": ctx.file.base_package_json.path if ctx.file.base_package_json else None,
- "placeholder_version": ctx.attr.placeholder_version,
- "additional_properties": ctx.attr.additional_properties,
- "output_file": pkg_json.path,
- "out_dir": ctx.attr.out_dir,
- "peer_dependencies": [_get_pkg_name(dep) for dep in ctx.attr.peer_dependencies],
- "dependencies": [_get_pkg_name(dep) for dep in ctx.attr.dependencies],
- "local_deps": local_deps,
- "private": ctx.attr.private,
- "registry": ctx.attr.registry,
- })],
- executable = "_create_pkg_json",
- )
-
- return [
- DefaultInfo(
- files = depset([pkg_json]),
- ),
- ]
-
-create_package_json = rule(
- implementation = _create_package_json_impl,
- attrs = PACKGE_JSON_ATTRS,
-)
diff --git a/javascript/private/BUILD b/javascript/private/BUILD
new file mode 100644
index 0000000..58e4b54
--- /dev/null
+++ b/javascript/private/BUILD
@@ -0,0 +1,116 @@
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
+load("@aspect_rules_js//js:defs.bzl", "js_binary")
+
+exports_files(
+ glob(["*.bzl"]),
+ visibility = ["//docs:__pkg__"],
+)
+
+exports_files(
+ ["tsconfig.json.tmpl"],
+ visibility = ["//visibility:public"],
+)
+
+js_binary(
+ name = "create_package_json",
+ entry_point = "create_package_json.mjs",
+ visibility = ["//visibility:public"],
+)
+
+bzl_library(
+ name = "js_pipeline",
+ srcs = ["js_pipeline.bzl"],
+ visibility = [
+ "//docs:__subpackages__",
+ "//javascript:__subpackages__",
+ ],
+ deps = [
+ ":eslint",
+ ":package_json",
+ ":tsup",
+ ":utils",
+ ":vitest",
+ "@aspect_rules_js//js:defs",
+ "@aspect_rules_js//npm:defs",
+ "@aspect_rules_ts//ts:defs",
+ "@bazel_skylib//rules:expand_template",
+ ],
+)
+
+bzl_library(
+ name = "vitest",
+ srcs = ["vitest.bzl"],
+ visibility = [
+ "//docs:__subpackages__",
+ "//javascript:__subpackages__",
+ ],
+ deps = [
+ "@aspect_bazel_lib//lib:directory_path",
+ "@aspect_rules_js//js:defs",
+ ],
+)
+
+bzl_library(
+ name = "eslint",
+ srcs = ["eslint.bzl"],
+ visibility = [
+ "//docs:__subpackages__",
+ "//javascript:__subpackages__",
+ ],
+ deps = [
+ ":utils",
+ "@aspect_bazel_lib//lib:directory_path",
+ "@aspect_rules_js//js:defs",
+ ],
+)
+
+bzl_library(
+ name = "utils",
+ srcs = ["utils.bzl"],
+ visibility = [
+ "//docs:__subpackages__",
+ "//javascript:__subpackages__",
+ ],
+ deps = [
+ "@aspect_rules_js//js:providers",
+ ],
+)
+
+bzl_library(
+ name = "package_json",
+ srcs = ["package_json.bzl"],
+ visibility = [
+ "//docs:__subpackages__",
+ "//javascript:__subpackages__",
+ ],
+ deps = [
+ ":utils",
+ "@aspect_rules_js//js:defs",
+ ],
+)
+
+bzl_library(
+ name = "tsup",
+ srcs = ["tsup.bzl"],
+ visibility = [
+ "//docs:__subpackages__",
+ "//javascript:__subpackages__",
+ ],
+ deps = [
+ "@aspect_bazel_lib//lib:directory_path",
+ "@aspect_rules_js//js:defs",
+ ],
+)
+
+bzl_library(
+ name = "oclif",
+ srcs = ["oclif.bzl"],
+ visibility = [
+ "//docs:__subpackages__",
+ "//javascript:__subpackages__",
+ ],
+ deps = [
+ "@aspect_bazel_lib//lib:directory_path",
+ "@aspect_rules_js//js:defs",
+ ],
+)
diff --git a/javascript/private/create_package_json.mjs b/javascript/private/create_package_json.mjs
new file mode 100644
index 0000000..9fc7ee2
--- /dev/null
+++ b/javascript/private/create_package_json.mjs
@@ -0,0 +1,230 @@
+import path from "node:path";
+import fs from "node:fs";
+
+function replaceWorkspaceReferenceWithVersion(deps, version) {
+ return Object.entries(deps).reduce((acc, [key, value]) => {
+ if (value.startsWith("workspace:")) {
+ acc[key] = version;
+ } else {
+ acc[key] = value;
+ }
+ return acc;
+ }, {});
+}
+
+/** Adds support for replacing process.env.* references with stamped values from bazel */
+function getStampedSubstitutions(
+ customSubstitutions,
+ stableStatusFile,
+ volatileStatusFile
+) {
+ const substitutions = {};
+
+ [stableStatusFile, volatileStatusFile].forEach((statusFile) => {
+ if (!fs.existsSync(statusFile)) {
+ return;
+ }
+
+ const contents = fs.readFileSync(statusFile, "utf-8");
+
+ contents.split("\n").forEach((statusLine) => {
+ if (!statusLine.trim()) {
+ return;
+ }
+
+ const firstSpace = statusLine.indexOf(" ");
+ const varName = statusLine.substring(0, firstSpace);
+ const varVal = statusLine.substring(firstSpace + 1);
+
+ Object.entries(customSubstitutions).forEach(([key, value]) => {
+ if (value === `{${varName}}`) {
+ substitutions[key] = varVal;
+ }
+ });
+ });
+ });
+
+ return substitutions;
+}
+
+function createStampHandler({
+ substitutions,
+ BAZEL_STABLE_STATUS_FILE,
+ BAZEL_VOLATILE_STATUS_FILE,
+}) {
+ if (
+ Object.keys(substitutions).length === 0 ||
+ !BAZEL_STABLE_STATUS_FILE ||
+ !BAZEL_VOLATILE_STATUS_FILE
+ ) {
+ return (obj) => obj;
+ }
+
+ const stableStatusFile = path.join(
+ process.env.JS_BINARY__EXECROOT,
+ BAZEL_STABLE_STATUS_FILE
+ );
+ const volatileStatusFile = path.join(
+ process.env.JS_BINARY__EXECROOT,
+ BAZEL_VOLATILE_STATUS_FILE
+ );
+
+ if (!fs.existsSync(stableStatusFile) || !fs.existsSync(volatileStatusFile)) {
+ return (obj) => obj;
+ }
+
+ const customSubstitutions = getStampedSubstitutions(
+ substitutions,
+ stableStatusFile,
+ volatileStatusFile
+ );
+
+ return (obj) => stampObject(obj, customSubstitutions);
+}
+
+function stampObject(obj, customSubstitutions) {
+ if (typeof obj !== "object" || obj === null) {
+ return obj;
+ }
+
+ return Object.fromEntries(
+ Object.entries(obj).map(([key, value]) => {
+ if (Array.isArray(value)) {
+ return [key, value.map((v) => stampObject(v, customSubstitutions))];
+ }
+
+ if (typeof value === "object" && value !== null) {
+ return [key, stampObject(value, customSubstitutions)];
+ }
+
+ if (
+ typeof value === "string" &&
+ customSubstitutions[value] !== undefined
+ ) {
+ return [key, customSubstitutions[value]];
+ }
+
+ return [key, value];
+ })
+ );
+}
+
+async function main(args) {
+ const { JS_BINARY__EXECROOT } = process.env;
+ const {
+ output_file,
+ root_package_json,
+ base_package_json,
+ dependencies,
+ peer_dependencies,
+ native_bundle,
+ substitutions,
+ custom_entrypoints,
+ BAZEL_STABLE_STATUS_FILE,
+ BAZEL_VOLATILE_STATUS_FILE,
+ } = args;
+
+ const parsedBasePackageJson = JSON.parse(
+ await fs.promises.readFile(
+ path.join(JS_BINARY__EXECROOT, base_package_json),
+ "utf-8"
+ )
+ );
+ const parsedRootPackageJson = JSON.parse(
+ await fs.promises.readFile(
+ path.join(JS_BINARY__EXECROOT, root_package_json),
+ "utf-8"
+ )
+ );
+
+ const dependenciesMap = new Map();
+ Object.entries({
+ ...(parsedRootPackageJson.dependencies ?? {}),
+ ...(parsedRootPackageJson.devDependencies ?? {}),
+ ...(parsedRootPackageJson.peerDependencies ?? {}),
+ }).forEach(([key, value]) => {
+ dependenciesMap.set(key, value);
+ });
+
+ const versionedDependencies = dependencies.reduce((acc, key) => {
+ if (!dependenciesMap.has(key)) {
+ if (parsedBasePackageJson.dependencies[key] !== undefined) {
+ return acc;
+ }
+
+ throw new Error(`Unable to determine version for dependency: ${key}`);
+ }
+ acc[key] = dependenciesMap.get(key);
+ return acc;
+ }, parsedBasePackageJson.dependencies ?? {});
+
+ const versionedPeerDependencies = peer_dependencies.reduce((acc, key) => {
+ if (!dependenciesMap.has(key)) {
+ if (parsedBasePackageJson.peerDependencies[key] !== undefined) {
+ return acc;
+ }
+
+ throw new Error(`Unable to determine version for dependency: ${key}`);
+ }
+ acc[key] = dependenciesMap.get(key);
+ return acc;
+ }, parsedBasePackageJson.peerDependencies ?? {});
+
+ const packageJson = {
+ ...parsedBasePackageJson,
+ ...(!custom_entrypoints
+ ? {
+ main: "dist/cjs/index.cjs",
+ module: "dist/index.legacy-esm.js",
+ types: "types/index.d.ts",
+ }
+ : {}),
+ ...(native_bundle
+ ? {
+ bundle: `dist/${native_bundle}.native.js`,
+ }
+ : {}),
+ sideEffects: false,
+ ...(!custom_entrypoints
+ ? {
+ exports: {
+ "./package.json": "./package.json",
+ "./dist/index.css": "./dist/index.css",
+ ".": {
+ types: "./types/index.d.ts",
+ import: "./dist/index.mjs",
+ default: "./dist/cjs/index.cjs",
+ },
+ },
+ }
+ : {}),
+ files: ["dist", "src", "types"],
+ dependencies: replaceWorkspaceReferenceWithVersion(
+ versionedDependencies,
+ "0.0.0-PLACEHOLDER"
+ ),
+ peerDependencies: replaceWorkspaceReferenceWithVersion(
+ versionedPeerDependencies,
+ "0.0.0-PLACEHOLDER"
+ ),
+ };
+
+ const stamper = createStampHandler({
+ substitutions,
+ BAZEL_STABLE_STATUS_FILE,
+ BAZEL_VOLATILE_STATUS_FILE,
+ });
+
+ const stampedPkgJson = stamper(packageJson);
+
+ await fs.promises.mkdir(path.dirname(output_file), { recursive: true });
+ await fs.promises.writeFile(
+ output_file,
+ JSON.stringify(stampedPkgJson, null, 2)
+ );
+}
+
+main(JSON.parse(process.argv[2])).catch((e) => {
+ console.error(e);
+ process.exit(1);
+});
diff --git a/javascript/private/eslint.bzl b/javascript/private/eslint.bzl
new file mode 100644
index 0000000..41c2fee
--- /dev/null
+++ b/javascript/private/eslint.bzl
@@ -0,0 +1,44 @@
+load("@aspect_bazel_lib//lib:directory_path.bzl", "directory_path")
+load("@aspect_rules_js//js:defs.bzl", "js_test")
+load(":utils.bzl", "include_exts")
+
+def eslint_test(
+ name,
+ data = [],
+ srcs = [],
+ node_modules = "//:node_modules",
+ lint_exts = [".ts", ".js", ".tsx", ".jsx"],
+ **kwargs):
+ """
+ A test target that runs eslint on the given sources.
+
+ Args:
+ name: The name of the target.
+ data: A list of targets to include in the test's data.
+ srcs: A list of sources to run eslint on.
+ node_modules: The node_modules target to use for eslint.
+ lint_exts: A list of extensions to pass to eslint's --ext flag.
+ **kwargs: Additional arguments to pass to the underlying js_test target.
+ """
+
+ eslint_cli_entry = "{}_eslint_entrypoint".format(name)
+
+ directory_path(
+ name = eslint_cli_entry,
+ directory = "{}/eslint/dir".format(node_modules),
+ path = "bin/eslint.js",
+ )
+
+ js_test(
+ name = name,
+ size = "small",
+ entry_point = ":{}".format(eslint_cli_entry),
+ args = [
+ "--color",
+ "--quiet",
+ "--ext",
+ ",".join(lint_exts),
+ ] + ["$(execpath %s)" % (f) for f in include_exts(srcs, lint_exts)],
+ data = data,
+ **kwargs
+ )
diff --git a/javascript/private/js_pipeline.bzl b/javascript/private/js_pipeline.bzl
new file mode 100644
index 0000000..144056e
--- /dev/null
+++ b/javascript/private/js_pipeline.bzl
@@ -0,0 +1,181 @@
+load("@aspect_rules_js//npm:defs.bzl", "npm_package")
+load("@aspect_rules_js//js:defs.bzl", "js_binary", "js_library")
+load("@aspect_rules_ts//ts:defs.bzl", "ts_project")
+load("@bazel_skylib//rules:expand_template.bzl", "expand_template")
+load(":vitest.bzl", "vitest_test")
+load(":eslint.bzl", "eslint_test")
+load(":tsup.bzl", "tsup_build", "tsup_native_build")
+load(":package_json.bzl", "create_package_json")
+load(":utils.bzl", "filter_empty", "without_tests")
+
+test_file_pattern = [
+ "_tests_",
+ ".test.",
+]
+
+def js_pipeline(
+ package_name,
+ name = None,
+ srcs = None,
+ package_json = "package.json",
+ root_package_json = "//:package.json",
+ vitest_config = ":vitest_config",
+ tsup_config = ":tsup_config",
+ node_modules = "//:node_modules",
+ deps = [],
+ native_bundle = None,
+ private = False,
+ peer_deps = [],
+ include_packaging_targets = [],
+ test_deps = ["//:vitest_config"],
+ lint_deps = ["//:eslint_config"],
+ build_deps = ["//:tsup_config", "//:typings"]):
+ """
+ The main entry point for any JS/TS project. `js_pipeline` should be the only thing you need in your BUILD file.
+
+ Creates a js_library, npm_package, and test targets for a given package.
+
+ Args:
+ package_name: The name of the package including the scope (@test/bar).
+ srcs: The source files for the package (defaults to src/*).
+ name: The name of the package (defaults to the last part of the package_name).
+ package_json: The package.json file for the package (defaults to package.json).
+ root_package_json: The root package.json file for the package (defaults to //:package.json).
+ vitest_config: The vitest config for the package (defaults to None).
+ tsup_config: The tsup config for the package (defaults to None).
+ node_modules: The base node_modules to pull dependencies from (defaults to //:node_modules).
+ deps: The dependencies for the package.
+ native_bundle: The name for the native bundle global if defined.
+ private: Whether or not the package should be private (skipping an npm release).
+ peer_deps: The peer dependencies for the package.
+ test_deps: The test dependencies for the package.
+ lint_deps: The lint dependencies for the package.
+ build_deps: The build dependencies for the package.
+ """
+
+ tslib_ref = "{}/tslib".format(node_modules)
+
+ if tslib_ref not in deps:
+ deps = deps + [tslib_ref]
+
+ if srcs == None:
+ srcs = native.glob(["src/**/*"])
+
+ if name == None:
+ # name = package_name.split("/")[-1]
+ name = native.package_name().split("/")[-1]
+
+ tsup_build_name = name + "_tsup_build"
+ tsup_build_target = ":" + tsup_build_name
+
+ tsup_build(
+ name = tsup_build_name,
+ srcs = srcs,
+ config = tsup_config,
+ data = deps + build_deps + peer_deps + [package_json],
+ node_modules = node_modules,
+ )
+
+ native_bundle_target_dep = []
+
+ if native_bundle != None:
+ native_bundle_name = name + "_native_bundle"
+ native_bundle_target = ":" + native_bundle_name
+ native_bundle_target_dep = [native_bundle_target]
+
+ tsup_native_build(
+ name = native_bundle_name,
+ native_bundle = native_bundle,
+ srcs = srcs,
+ config = tsup_config,
+ data = deps + build_deps + peer_deps + [package_json],
+ node_modules = node_modules,
+ )
+
+ tsconfig = "{}_tsconfig".format(name)
+ prefix = "../" * len(native.package_name().split("/"))
+
+ expand_template(
+ name = tsconfig,
+ out = "tsconfig.json",
+ substitutions = {
+ "%PREFIX%": prefix,
+ },
+ template = "@rules_player//javascript/private:tsconfig.json.tmpl",
+ )
+
+ ts_types = "{}_ts_types".format(name)
+ ts_types_target = ":" + ts_types
+ ts_project(
+ name = ts_types,
+ srcs = without_tests(srcs + [package_json], test_file_pattern),
+ deps = deps + build_deps + peer_deps,
+ validate = False,
+ declaration = True,
+ declaration_dir = ts_types,
+ emit_declaration_only = True,
+ tsconfig = ":{}".format(tsconfig),
+ )
+
+ vitest_test(
+ name = name + "_vitest",
+ config = vitest_config,
+ node_modules = node_modules,
+ data = srcs + deps + test_deps + peer_deps,
+ )
+
+ eslint_test(
+ name = name + "_eslint",
+ srcs = srcs,
+ node_modules = node_modules,
+ data = srcs + deps + lint_deps,
+ )
+
+ package_json_name = name + "_package_json"
+ package_json_target = ":" + package_json_name
+
+ create_package_json(
+ name = package_json_name,
+ root_package_json = root_package_json,
+ base_package_json = package_json,
+ dependencies = deps,
+ peer_dependencies = peer_deps,
+ native_bundle = native_bundle,
+ stamp = -1,
+ substitutions = {
+ "0.0.0-PLACEHOLDER": "{STABLE_VERSION}",
+ },
+ )
+
+ js_library_name = name + "_js_library"
+ js_library_target = ":" + js_library_name
+
+ js_library(
+ name = js_library_name,
+ srcs = srcs + [tsup_build_target, package_json_target, ts_types_target] + native_bundle_target_dep,
+ deps = deps,
+ )
+
+ replacements = {}
+ replacements[package_json_name] = "package"
+ replacements[ts_types + "/src"] = "types"
+
+ npm_package(
+ name = name,
+ visibility = ["//visibility:public"],
+ package = package_name,
+ srcs = [js_library_target, tsup_build_target] + include_packaging_targets,
+ tags = filter_empty([
+ "do-not-publish" if private else None,
+ ]),
+ replace_prefixes = replacements,
+ )
+
+ js_binary(
+ name = name + ".npm-publish",
+ chdir = native.package_name() + "/" + name,
+ data = [":" + name],
+ entry_point = "@aspect_rules_js//npm/private:npm_publish_mjs",
+ # required to make npm to be available in PATH
+ include_npm = True,
+ )
diff --git a/javascript/private/oclif.bzl b/javascript/private/oclif.bzl
new file mode 100644
index 0000000..209b085
--- /dev/null
+++ b/javascript/private/oclif.bzl
@@ -0,0 +1,205 @@
+load("@aspect_rules_js//npm:defs.bzl", "npm_package")
+load("@aspect_bazel_lib//lib:directory_path.bzl", "directory_path")
+load("@aspect_rules_js//js:defs.bzl", "js_binary", "js_run_binary", "js_library")
+load("@aspect_rules_ts//ts:defs.bzl", "ts_config", "ts_project")
+load("@bazel_skylib//rules:expand_template.bzl", "expand_template")
+load(":vitest.bzl", "vitest_test")
+load(":eslint.bzl", "eslint_test")
+load(":tsup.bzl", "tsup_build", "tsup_native_build")
+load(":package_json.bzl", "create_package_json")
+load(":utils.bzl", "filter_empty", "without_tests")
+
+test_file_pattern = [
+ "_tests_",
+ ".test.",
+]
+
+def oclif_pipeline(
+ package_name,
+ name = None,
+ srcs = None,
+ manifest = True,
+ package_json = "package.json",
+ root_package_json = "//:package.json",
+ vitest_config = ":vitest_config",
+ node_modules = "//:node_modules",
+ deps = [],
+ peer_deps = [],
+ test_deps = ["//:vitest_config"],
+ lint_deps = ["//:eslint_config"],
+ build_deps = ["//:typings"]
+ ):
+ """
+ A modified version of the `js_pipeline` for building oclif CLIs and CLI plugins.
+
+ Creates a js_library, npm_package, and test targets for a given package.
+
+ Args:
+ package_name: The name of the package including the scope (@test/bar).
+ srcs: The source files for the package (defaults to src/*).
+ manifest: If an oclif manifest should be generated as part of the build. Not needed for CLI plugins.
+ name: The name of the package (defaults to the last part of the package_name).
+ package_json: The package.json file for the package (defaults to package.json).
+ root_package_json: The root package.json file for the package (defaults to //:package.json).
+ vitest_config: The vitest config for the package (defaults to None).
+ node_modules: The base node_modules to pull dependencies from (defaults to //:node_modules).
+ deps: The dependencies for the package.
+ native_bundle: The name for the native bundle global if defined.
+ private: Whether or not the package should be private (skipping an npm release).
+ peer_deps: The peer dependencies for the package.
+ test_deps: The test dependencies for the package.
+ lint_deps: The lint dependencies for the package.
+ build_deps: The build dependencies for the package.
+ """
+
+ tslib_ref = "{}/tslib".format(node_modules)
+
+ if tslib_ref not in deps:
+ deps = deps + [tslib_ref]
+
+ if srcs == None:
+ srcs = native.glob(["src/**/*"])
+
+ if name == None:
+ # name = package_name.split("/")[-1]
+ name = native.package_name().split("/")[-1]
+
+ all_deps = deps + peer_deps + build_deps
+
+ ts_config_name = name + "_ts_config"
+ ts_config_target = ":" + ts_config_name
+
+ ts_config(
+ name = ts_config_name,
+ src = "tsconfig.json",
+ deps = [
+ "//:tsconfig",
+ ],
+ )
+
+ tsc_build_name = name + "_tsc_build"
+ tsc_build_target = ":" + tsc_build_name
+
+ ts_project(
+ name = tsc_build_name,
+ srcs = native.glob(
+ [
+ "bin/**/*",
+ "src/**/*",
+ ],
+ exclude = [
+ "**/__tests__/*",
+ "**/*.test.*",
+ ],
+ ),
+ declaration = True,
+ out_dir = "dist",
+ root_dir = "src",
+ transpiler = "tsc",
+ tsconfig = ts_config_target,
+ validate = False,
+ deps = all_deps,
+ )
+
+ package_json_name = name + "_package_json"
+ package_json_target = ":" + package_json_name
+
+ create_package_json(
+ name = package_json_name,
+ base_package_json = "package.json",
+ dependencies = deps,
+ peer_dependencies = peer_deps,
+ root_package_json = "//:package.json",
+ substitutions = {
+ "0.0.0-PLACEHOLDER": "{STABLE_VERSION}",
+ },
+ custom_entrypoints = True,
+ )
+
+ manifest_target = []
+
+ if manifest == True :
+ manifest_name = name + "_manifest"
+ manifest_target = [":" + manifest_name]
+
+ oclif_cli_entry = "{}_oclif_entrypoint".format(name)
+ oclif_bin = "{}_oclif_bin".format(name)
+
+ directory_path(
+ name = oclif_cli_entry,
+ directory = "{}/oclif/dir".format(node_modules),
+ path = "bin/run.js",
+ )
+
+ js_binary(
+ name = oclif_bin,
+ data = ["{}/oclif".format(node_modules)],
+ entry_point = ":{}".format(oclif_cli_entry),
+ )
+
+ js_run_binary(
+ name = manifest_name,
+ tool = ":{}".format(oclif_bin),
+ stamp = -1,
+ srcs = [
+ "package.json",
+ tsc_build_target,
+ package_json_target,
+ ],
+ outs = ["oclif.manifest.json"],
+ args = ["manifest"],
+ chdir = native.package_name(),
+ )
+
+ bundle_name = name + "_bundle"
+ bundle_target = ":" + bundle_name
+
+ js_library(
+ name = bundle_name,
+ srcs = [
+ tsc_build_target,
+ package_json_target,
+ ] + native.glob(["bin/*"])
+ + manifest_target,
+ deps = all_deps,
+ )
+
+ vitest_test(
+ name = name + "_unit",
+ config = ":vitest_config",
+ data = native.glob(["src/**/*"]) + all_deps + ["//:vitest_config"],
+ node_modules = "//:node_modules",
+ )
+
+ eslint_test(
+ name = name + "_lint",
+ srcs = native.glob(["src/**/*"]),
+ data = native.glob(["src/**/*"]) + all_deps + ["//:eslint_config"],
+ node_modules = "//:node_modules",
+ )
+
+ package_name = name
+ package_target = ":" + package_name
+
+ npm_package(
+ name = package_name,
+ srcs = [
+ "README.md",
+ bundle_target,
+ ],
+ allow_overwrites = True,
+ package = package_name,
+ replace_prefixes = {
+ package_json_name : "package",
+ },
+ visibility = ["//visibility:public"],
+ )
+
+ js_binary(
+ name = name + ".npm-publish",
+ chdir = native.package_name() + "/" + package_name,
+ data = [package_target],
+ entry_point = "@aspect_rules_js//npm/private:npm_publish_mjs",
+ # required to make npm to be available in PATH
+ include_npm = True,
+ )
diff --git a/javascript/private/package_json.bzl b/javascript/private/package_json.bzl
new file mode 100644
index 0000000..27750c5
--- /dev/null
+++ b/javascript/private/package_json.bzl
@@ -0,0 +1,82 @@
+"""
+Populate all the required fields for a package.json file needed for a full build
+"""
+
+load("@aspect_rules_js//js:providers.bzl", "JsInfo")
+load("@aspect_bazel_lib//lib:stamping.bzl", "STAMP_ATTRS", "maybe_stamp")
+load(":utils.bzl", "get_js_npm_name")
+
+def _package_json_impl(ctx):
+ """Implementation of package_json."""
+ output_file = ctx.actions.declare_file("%s.json" % ctx.label.name)
+ stamp = maybe_stamp(ctx)
+
+ stamp_inputs = []
+
+ args = {
+ "output_file": output_file.short_path,
+ "substitutions": ctx.attr.substitutions,
+ "root_package_json": ctx.file.root_package_json.short_path,
+ "base_package_json": ctx.file.base_package_json.short_path,
+ "native_bundle": ctx.attr.native_bundle,
+ "dependencies": [get_js_npm_name(dep) for dep in ctx.attr.dependencies],
+ "peer_dependencies": [get_js_npm_name(dep) for dep in ctx.attr.peer_dependencies],
+ "custom_entrypoints": ctx.attr.custom_entrypoints,
+ }
+
+ if stamp:
+ stamp_inputs = [stamp.volatile_status_file, stamp.stable_status_file]
+ args["BAZEL_STABLE_STATUS_FILE"] = stamp.stable_status_file.path
+ args["BAZEL_VOLATILE_STATUS_FILE"] = stamp.volatile_status_file.path
+
+ ctx.actions.run(
+ inputs = stamp_inputs + ctx.files.root_package_json + ctx.files.base_package_json,
+ env = {
+ "BAZEL_BINDIR": ctx.bin_dir.path,
+ },
+ arguments = [json.encode(args)],
+ outputs = [output_file],
+ executable = ctx.executable._create_package_json,
+ )
+
+ return [
+ DefaultInfo(
+ files = depset([output_file]),
+ ),
+ ]
+
+create_package_json = rule(
+ implementation = _package_json_impl,
+ attrs = dict({
+ "root_package_json": attr.label(
+ mandatory = True,
+ doc = "The root package.json for the project. Used to get the versions of dependencies and peer-depedencies",
+ allow_single_file = ["package.json"],
+ ),
+ "base_package_json": attr.label(
+ mandatory = True,
+ doc = """A .json file to use to add additional properties to the generated package.
+ This can often be a 'package.json' and the entries/outputs/dependencies will be filled in later on.""",
+ allow_single_file = ["package.json"],
+ ),
+ "native_bundle": attr.string(doc = "The name for the native bundle if used"),
+ "placeholder_version": attr.string(default = "0.0.0-PLACEHOLDER", doc = "The version to use for the local dependencies in the workspace"),
+ "custom_entrypoints": attr.bool(default = False, doc = "If custom main/module/types entrypoints are specified and shouldn't be overwritten"),
+ "dependencies": attr.label_list(
+ doc = "The dependencies of the package. These will be added to the base package.json",
+ default = [],
+ providers = [JsInfo],
+ ),
+ "peer_dependencies": attr.label_list(
+ doc = "The peer dependencies of the package. These will be added to the base package.json",
+ default = [],
+ providers = [JsInfo],
+ ),
+ "substitutions": attr.string_dict(default = {}),
+ "_create_package_json": attr.label(
+ executable = True,
+ cfg = "exec",
+ default = "//javascript/private:create_package_json",
+ ),
+ }, **STAMP_ATTRS),
+)
diff --git a/javascript/private/tsconfig.json.tmpl b/javascript/private/tsconfig.json.tmpl
new file mode 100644
index 0000000..dff6937
--- /dev/null
+++ b/javascript/private/tsconfig.json.tmpl
@@ -0,0 +1,25 @@
+{
+ "include": ["src/**/*.ts", "src/**/*.tsx", "%PREFIX%typings/**/*", "%PREFIX%node_modules/@types/*"],
+ "exclude": ["**/__tests__/*", "*.test.*"],
+ "compilerOptions": {
+ "jsx": "react",
+ "emitDeclarationOnly": true,
+ "esModuleInterop": true,
+ "forceConsistentCasingInFileNames": true,
+ "strict": true,
+ "skipLibCheck": true,
+ "downlevelIteration": true,
+ "target": "ESNext",
+ "module": "commonjs",
+ "allowJs": false,
+ "moduleResolution": "node",
+ "sourceMap": true,
+ "declaration": true,
+ "declarationMap": true,
+ "skipDefaultLibCheck": true,
+ "noErrorTruncation": true,
+ "importHelpers": true,
+ "resolveJsonModule": true,
+ "lib": ["DOM", "ESNext"]
+ }
+}
diff --git a/javascript/private/tsup.bzl b/javascript/private/tsup.bzl
new file mode 100644
index 0000000..6290157
--- /dev/null
+++ b/javascript/private/tsup.bzl
@@ -0,0 +1,100 @@
+load("@aspect_bazel_lib//lib:directory_path.bzl", "directory_path")
+load("@aspect_rules_js//js:defs.bzl", "js_binary", "js_run_binary")
+load(":utils.bzl", "is_test_file")
+
+def tsup_build(
+ name,
+ srcs = [],
+ config = "tsup.config.ts",
+ data = ["//:tsup_config"],
+ node_modules = "//:node_modules",
+ substitutions = {
+ "__VERSION__": "{STABLE_VERSION}",
+ },
+ outs = None,
+ **kwargs):
+ """Run a vite test.
+
+ Args:
+ name: The name of the test.
+ srcs: Inputs to the module
+ config: The vite config target.
+ data: The list of data dependencies.
+ node_modules: The node_modules target.
+ substitutions: Substitutions to stamp during the build.
+ outs: Any defined outputs
+ **kwargs: Additional arguments to pass to the test.
+ """
+
+ tsup_cli_entry = "{}_tsup_entrypoint".format(name)
+ tsup_bin = "{}_tsup_bin".format(name)
+
+ directory_path(
+ name = tsup_cli_entry,
+ directory = "{}/tsup/dir".format(node_modules),
+ path = "dist/cli-node.js",
+ )
+
+ js_binary(
+ name = tsup_bin,
+ data = ["{}/tsup".format(node_modules)] + data,
+ entry_point = ":{}".format(tsup_cli_entry),
+ )
+
+ has_css_file = False
+
+ for f in srcs:
+ if is_test_file(f, [".css"]):
+ has_css_file = True
+
+ tsup_outs = outs
+
+ if tsup_outs == None:
+ tsup_outs = [
+ "dist/index.mjs",
+ "dist/index.mjs.map",
+ "dist/cjs/index.cjs",
+ "dist/cjs/index.cjs.map",
+ "dist/index.legacy-esm.js",
+ ]
+
+ if has_css_file:
+ tsup_outs.append("dist/index.css")
+
+ js_run_binary(
+ name = name,
+ chdir = native.package_name(),
+ tool = ":{}".format(tsup_bin),
+ stamp = -1,
+ args = [],
+ srcs = srcs + [config],
+ outs = kwargs.get("outs", tsup_outs),
+ env = dict(
+ {
+ "STAMP_SUBSTITUTIONS": json.encode(substitutions),
+ },
+ **kwargs.get("env", {})
+ ),
+ visibility = kwargs.get("visibility", []),
+ )
+
+def tsup_native_build(
+ name,
+ native_bundle,
+ srcs = [],
+ config = "tsup.config.ts",
+ data = ["//:tsup_config"],
+ node_modules = "//:node_modules",
+ **kwargs):
+ tsup_build(
+ name = name,
+ visibility = ["//visibility:public"],
+ srcs = srcs,
+ config = config,
+ data = data,
+ node_modules = node_modules,
+ env = {
+ "PLAYER_NATIVE_BUNDLE": native_bundle,
+ },
+ outs = ["dist/{}.native.js".format(native_bundle), "dist/{}.native.js.map".format(native_bundle)],
+ )
diff --git a/javascript/private/utils.bzl b/javascript/private/utils.bzl
new file mode 100644
index 0000000..945c005
--- /dev/null
+++ b/javascript/private/utils.bzl
@@ -0,0 +1,47 @@
+"""
+General utils for working in JS projects
+"""
+
+load("@aspect_rules_js//js:providers.bzl", "JsInfo")
+
+def filter_empty(things):
+ new_things = []
+ for f in things:
+ if f != None:
+ new_things.append(f)
+ return new_things
+
+def remove_duplicates(data):
+ filtered = []
+ for d in data:
+ if d in filtered:
+ continue
+ filtered.append(d)
+ return filtered
+
+def is_test_file(file, test_file_pattern):
+ for p in test_file_pattern:
+ if p in file:
+ return True
+ return False
+
+def filter_false(arr):
+ filtered = []
+ for f in arr:
+ if f:
+ filtered.append(f)
+
+ return filtered
+
+def include_exts(files, file_patterns):
+ return filter_false([f if is_test_file(f, file_patterns) else None for f in files])
+
+def get_js_npm_name(dep):
+ linked_list = dep[JsInfo].npm_linked_packages.to_list()
+ if len(linked_list) > 1:
+ fail("Package {} has more than one linked package".format(dep))
+
+ return linked_list[0].package
+
+def without_tests(files, test_file_pattern):
+ return filter_false([f if not is_test_file(f, test_file_pattern) else None for f in files])
diff --git a/javascript/private/vitest.bzl b/javascript/private/vitest.bzl
new file mode 100644
index 0000000..709c778
--- /dev/null
+++ b/javascript/private/vitest.bzl
@@ -0,0 +1,35 @@
+load("@aspect_bazel_lib//lib:directory_path.bzl", "directory_path")
+load("@aspect_rules_js//js:defs.bzl", "js_test")
+
+def vitest_test(
+ name,
+ config,
+ data = [],
+ node_modules = "//:node_modules",
+ **kwargs):
+ """Run a vite test.
+
+ Args:
+ name: The name of the test.
+ config: The vite config target.
+ data: The list of data dependencies.
+ node_modules: The node_modules target.
+ **kwargs: Additional arguments to pass to the test.
+ """
+
+ vitest_cli_entry = "{}_vitest_entrypoint".format(name)
+
+ directory_path(
+ name = vitest_cli_entry,
+ directory = "{}/vitest/dir".format(node_modules),
+ path = "vitest.mjs",
+ )
+
+ js_test(
+ name = name,
+ size = "small",
+ entry_point = ":{}".format(vitest_cli_entry),
+ args = ["run", "--color"],
+ data = data + [config],
+ **kwargs
+ )
diff --git a/javascript/rollup/BUILD b/javascript/rollup/BUILD
deleted file mode 100644
index ee00916..0000000
--- a/javascript/rollup/BUILD
+++ /dev/null
@@ -1,5 +0,0 @@
-package(default_visibility = ["//visibility:public"])
-
-exports_files([
- "rollup.config.template.js",
-])
diff --git a/javascript/rollup/rollup.config.template.js b/javascript/rollup/rollup.config.template.js
deleted file mode 100644
index 919bfb7..0000000
--- a/javascript/rollup/rollup.config.template.js
+++ /dev/null
@@ -1,66 +0,0 @@
-import path from 'path';
-import dts from 'rollup-plugin-dts'
-import esbuild from 'rollup-plugin-esbuild'
-import styles from "rollup-plugin-styles";
-import json from '@rollup/plugin-json';
-import image from '@rollup/plugin-image';
-
-const isBinBuild = "TMPL_build_target_type" === 'CLI';
-
-const bundle = config => ({
- ...config,
- input: 'TMPL_entry',
- external: id => !/^[./]/.test(id),
-})
-
-let builds = [];
-
-if (isBinBuild) {
- builds = [
- bundle({
- plugins: [esbuild()],
- output: [
- {
- file: path.join('TMPL_out_dir', 'TMPL_bin_name'),
- format: 'cjs',
- sourcemap: true
- }
- ]
- })
- ]
-} else {
- builds = [
- bundle({
- plugins: [esbuild(), styles({
- modules: true,
- }), json(), image()],
- output: [
- {
- file: path.join('TMPL_out_dir', 'index.cjs.js'),
- format: 'cjs',
- sourcemap: true,
- assetFileNames: "[name]-[hash][extname]",
- },
- {
- file: path.join('TMPL_out_dir', 'index.esm.js'),
- format: 'es',
- sourcemap: true,
- assetFileNames: "[name]-[hash][extname]",
- },
- ],
- }),
- bundle({
- plugins: [dts({
- compilerOptions: {
- paths: TMPL_ts_paths
- }
- })],
- output: {
- file: path.join('TMPL_out_dir', 'index.d.ts'),
- format: 'es',
- },
- }),
- ]
-}
-
-export default builds;
diff --git a/javascript/rollup/rollup_build.bzl b/javascript/rollup/rollup_build.bzl
deleted file mode 100644
index bdff80a..0000000
--- a/javascript/rollup/rollup_build.bzl
+++ /dev/null
@@ -1,104 +0,0 @@
-load("@bazel_skylib//lib:paths.bzl", "paths")
-load("@build_bazel_rules_nodejs//:providers.bzl", "JSModuleInfo", "node_modules_aspect", "run_node")
-load("@build_bazel_rules_nodejs//internal/linker:link_node_modules.bzl", "module_mappings_aspect")
-load("@rules_player//javascript:utils.bzl", "get_dep_files", "get_path_mappings")
-
-ROLLUP_ATTRS = {
- # Dependencies needed to build the pkg
- "data": attr.label_list(
- default = [],
- aspects = [module_mappings_aspect, node_modules_aspect],
- allow_files = True,
- ),
-
- # The entry file, used to calculate the name of the output src/index.ts -> dist/index.cjs.js
- "entry": attr.string(mandatory = True),
-
- # The output directory, used to calculate the output file
- "out_dir": attr.string(mandatory = True),
- "srcs": attr.label_list(default = [], allow_files = True),
- "_rollup": attr.label(default = Label("@npm//rollup/bin:rollup"), executable = True, cfg = "host"),
- "_rollup_config_template": attr.label(default = Label("//javascript/rollup:rollup.config.template.js"), allow_single_file = True),
-}
-
-ROLLUP_BIN_ATTRS = dict(ROLLUP_ATTRS, **{
- "bin_name": attr.string(default = "cli"),
-})
-
-def _rollup_build(ctx):
- is_bin_build = hasattr(ctx.attr, "bin_name")
- file_outputs = []
- output_group = None
-
- if is_bin_build:
- cjs_out = ctx.actions.declare_file(paths.join(ctx.attr.out_dir, "%s.js" % ctx.attr.bin_name))
- file_outputs = [cjs_out]
- output_group = OutputGroupInfo(
- cjs = depset([cjs_out]),
- )
-
- else:
- cjs_out = ctx.actions.declare_file(paths.join(ctx.attr.out_dir, "index.cjs.js"))
- esm_out = ctx.actions.declare_file(paths.join(ctx.attr.out_dir, "index.esm.js"))
- dts_out = ctx.actions.declare_file(paths.join(ctx.attr.out_dir, "index.d.ts"))
- file_outputs = [cjs_out, esm_out, dts_out]
- output_group = OutputGroupInfo(
- cjs = depset([cjs_out]),
- esm = depset([esm_out]),
- types = depset([dts_out]),
- )
-
- out_dir = paths.dirname(file_outputs[0].path)
- deps_inputs = get_dep_files(ctx.attr.data)
-
- rollup_config = ctx.actions.declare_file("rollup.config%s.js" % (".bin" if is_bin_build else ""))
- path_alias_mappings = get_path_mappings(ctx.attr.data, paths.dirname(rollup_config.path))
-
- ctx.actions.expand_template(
- output = rollup_config,
- template = ctx.file._rollup_config_template,
- substitutions = {
- "TMPL_build_target_type": "CLI" if is_bin_build else "LIB",
- "TMPL_entry": paths.join(ctx.label.package, ctx.attr.entry),
- "TMPL_out_dir": out_dir,
- "TMPL_bin_name": paths.basename(file_outputs[0].path),
- "TMPL_ts_paths": json.encode(path_alias_mappings),
- },
- )
-
- run_node(
- ctx,
- inputs = ctx.files.srcs + [rollup_config] + deps_inputs,
- outputs = file_outputs,
- arguments = [
- "--silent",
- "--preserveSymlinks",
- "-c",
- rollup_config.path,
- ],
- executable = "_rollup",
- mnemonic = "Rollup",
- )
-
- output_depset = depset(file_outputs)
-
- return [
- DefaultInfo(
- files = output_depset,
- ),
- JSModuleInfo(
- direct_sources = output_depset,
- sources = output_depset,
- ),
- output_group,
- ]
-
-rollup_build = rule(
- implementation = _rollup_build,
- attrs = ROLLUP_ATTRS,
-)
-
-rollup_bin_build = rule(
- implementation = _rollup_build,
- attrs = ROLLUP_BIN_ATTRS,
-)
diff --git a/javascript/utils.bzl b/javascript/utils.bzl
deleted file mode 100644
index ecb7bea..0000000
--- a/javascript/utils.bzl
+++ /dev/null
@@ -1,96 +0,0 @@
-load("@bazel_skylib//rules/private:copy_file_private.bzl", "copy_bash")
-load("@bazel_skylib//lib:paths.bzl", "paths")
-load("@build_bazel_rules_nodejs//:providers.bzl", "DeclarationInfo", "ExternalNpmPackageInfo", "JSEcmaScriptModuleInfo", "JSModuleInfo")
-load("@build_bazel_rules_nodejs//internal/linker:link_node_modules.bzl", "LinkerPackageMappingInfo")
-
-def filter_empty(things):
- new_things = []
- for f in things:
- if f != None:
- new_things.append(f)
- return new_things
-
-def get_relative_path(source, target):
- # Get a directory split of them
- source_split = source.split("/")
- target_split = target.split("/")
-
- path_prefix = ""
- for i in range(len(source_split)):
- if source_split[i] == target_split[i]:
- path_prefix = paths.join(path_prefix, source_split[i])
- else:
- break
-
- return paths.join("../" * len(paths.relativize(source, path_prefix).split("/")), paths.relativize(target, path_prefix))
-
-def get_dep_files(data):
- deps_depsets = []
- for dep in data:
- if JSEcmaScriptModuleInfo in dep:
- deps_depsets.append(dep[JSEcmaScriptModuleInfo].sources)
- if DeclarationInfo in dep:
- deps_depsets.append(dep[DeclarationInfo].transitive_declarations)
-
- if DefaultInfo in dep:
- deps_depsets.append(dep[DefaultInfo].data_runfiles.files)
-
- if JSModuleInfo in dep:
- deps_depsets.append(dep[JSModuleInfo].sources)
- elif hasattr(dep, "files"):
- deps_depsets.append(dep.files)
-
- # Also include files from npm deps as inputs.
- # These deps are identified by the ExternalNpmPackageInfo provider.
- if ExternalNpmPackageInfo in dep:
- deps_depsets.append(dep[ExternalNpmPackageInfo].sources)
-
- return depset(transitive = deps_depsets).to_list()
-
-def get_path_mappings(data, output_relative_dir):
- path_alias_mappings = dict()
-
- for dep in data:
- if LinkerPackageMappingInfo in dep:
- for key, value in dep[LinkerPackageMappingInfo].mappings.items():
- # key is of format "package_name:package_path"
- package_name = key.split(":")[0]
- path_alias_mappings[package_name] = [get_relative_path(output_relative_dir, value)]
-
-def copy_to_bin(ctx, srcs):
- outs = []
-
- for src in srcs:
- out = ctx.actions.declare_file(src.basename, sibling = src)
- copy_bash(ctx, src, out)
- outs.append(out)
-
- return outs
-
-def is_test_file(file, test_file_pattern):
- for p in test_file_pattern:
- if p in file:
- return True
- return False
-
-def filter_false(arr):
- filtered = []
- for f in arr:
- if f:
- filtered.append(f)
-
- return filtered
-
-def include_exts(files, file_patterns):
- return filter_false([f if is_test_file(f, file_patterns) else None for f in files])
-
-def without_tests(files, test_file_pattern):
- return filter_false([f if not is_test_file(f, test_file_pattern) else None for f in files])
-
-def remove_duplicates(data):
- filtered = []
- for d in data:
- if d in filtered:
- continue
- filtered.append(d)
- return filtered
\ No newline at end of file
diff --git a/javascript/workspace.bzl b/javascript/workspace.bzl
deleted file mode 100644
index ba38a25..0000000
--- a/javascript/workspace.bzl
+++ /dev/null
@@ -1,10 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
-load("//internal:maybe.bzl", "maybe")
-
-def javascript():
- maybe(
- http_archive,
- name = "build_bazel_rules_nodejs",
- sha256 = "3aa6296f453ddc784e1377e0811a59e1e6807da364f44b27856e34f5042043fe",
- urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/4.4.2/rules_nodejs-4.4.2.tar.gz"],
- )
diff --git a/junit5/BUILD b/junit5/BUILD
deleted file mode 100644
index e69de29..0000000
diff --git a/junit5/conf.bzl b/junit5/conf.bzl
deleted file mode 100644
index a252be6..0000000
--- a/junit5/conf.bzl
+++ /dev/null
@@ -1,5 +0,0 @@
-load("@junit//junit5-jupiter-starter-bazel:junit5.bzl", "junit_jupiter_java_repositories", "junit_platform_java_repositories")
-
-def junit5(juptier_version = "5.7.2", platform_version = "1.7.2"):
- junit_jupiter_java_repositories(version = juptier_version)
- junit_platform_java_repositories(version = platform_version)
diff --git a/junit5/workspace.bzl b/junit5/workspace.bzl
deleted file mode 100644
index f3a4191..0000000
--- a/junit5/workspace.bzl
+++ /dev/null
@@ -1,11 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
-load("//internal:maybe.bzl", "maybe")
-
-def junit5():
- maybe(
- git_repository,
- name = "junit",
- remote = "https://github.com/sugarmanz/junit5-samples",
- commit = "2617a5e6fb5b858894f1c9ede486498e70becf99",
- shallow_since = "1648584808 -0400"
- )
diff --git a/kotlin/BUILD b/kotlin/BUILD
index e69de29..ede7d99 100644
--- a/kotlin/BUILD
+++ b/kotlin/BUILD
@@ -0,0 +1,14 @@
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
+
+exports_files(["defs.bzl"])
+
+bzl_library(
+ name = "defs",
+ srcs = ["defs.bzl"],
+ visibility = ["//visibility:public"],
+ deps = [
+ "//kotlin/private:lint",
+ "//kotlin/private:distribution",
+ "//kotlin/private:kt_jvm"
+ ],
+)
\ No newline at end of file
diff --git a/kotlin/README.md b/kotlin/README.md
deleted file mode 100644
index 750e425..0000000
--- a/kotlin/README.md
+++ /dev/null
@@ -1,69 +0,0 @@
-# Kotlin Rules
-
-https://bazelbuild.github.io/rules_kotlin/kotlin.html
-
-## Define Kotlin rules
-
-### Loading default rules
-
-```python
-load("@rules_player//:workspace.bzl", "deps")
-deps()
-```
-
-### Loading rules from HTTP archive
-
-By default, the workspace declaration is configured to work with Player modules. You can override the location of the remote archive by specifying a `tag`, `sha`, `name`, or `baseUrl`:
-
-`$baseUrl/$tag/$name`
-
-```python
-load("@rules_player//kotlin:workspace.bzl", "kotlin")
-kotlin(
- # Defaults
- tag = "v1.7.1",
- sha256 = "fd92a98bd8a8f0e1cdcb490b93f5acef1f1727ed992571232d33de42395ca9b3",
- baseUrl = "https://github.com/bazelbuild/rules_kotlin/releases/download",
-)
-```
-
-### Loading rules from GIT repository
-
-```python
-load("@rules_player//kotlin:workspace.bzl", "kotlin_repository")
-kotlin_repository(
- remote = "https://github.com/bazelbuild/rules_kotlin.git",
- branch = "master",
-)
-
-load("@rules_player//kotlin:repository.bzl", "archive")
-archive()
-```
-
-### Loading rules manually
-
-If neither of those macros work for your use case, you can always declare the Kotlin ruleset repository yourself as shown in the Kotlin rules documentation:
-https://github.com/bazelbuild/rules_kotlin#workspace
-
-## Configure Kotlin repositories
-
-```python
-load("@rules_player//kotlin:conf.bzl", kotlin_conf = "kotlin")
-kotlin_conf()
-```
-
-## Configure Kotlin toolchain
-
-In order to compile Kotlin code, you must register a Kotlin toolchain, which can be done manually, or by registering the default toolchain:
-
-```python
-load("@io_bazel_rules_kotlin//kotlin:core.bzl", "kt_register_toolchains")
-kt_register_toolchains()
-```
-
-## Using JUnit 5
-
-```python
-load("@rules_player//junit5:conf.bzl", "junit5")
-junit5()
-```
diff --git a/kotlin/conf.bzl b/kotlin/conf.bzl
deleted file mode 100644
index f065f8b..0000000
--- a/kotlin/conf.bzl
+++ /dev/null
@@ -1,5 +0,0 @@
-load("@io_bazel_rules_kotlin//kotlin:repositories.bzl", "kotlin_repositories")
-
-def kotlin():
- kotlin_repositories()
-
\ No newline at end of file
diff --git a/kotlin/defs.bzl b/kotlin/defs.bzl
new file mode 100644
index 0000000..0bded77
--- /dev/null
+++ b/kotlin/defs.bzl
@@ -0,0 +1,13 @@
+"""
+Public API for Kotlin based project rules
+"""
+
+load("//kotlin/private:kt_jvm.bzl", _kt_jvm = "kt_jvm")
+load("//kotlin/private:distribution.bzl", _distribution = "distribution")
+load("//kotlin/private:lint.bzl", _lint = "lint")
+load("//kotlin/private:junit_test.bzl", _kt_jvm_junit5_test = "kt_jvm_junit5_test")
+
+kt_jvm = _kt_jvm
+distribution = _distribution
+lint = _lint
+kt_jvm_junit5_test = _kt_jvm_junit5_test
diff --git a/kotlin/example/.bazelrc b/kotlin/example/.bazelrc
new file mode 100644
index 0000000..0c36346
--- /dev/null
+++ b/kotlin/example/.bazelrc
@@ -0,0 +1 @@
+common --enable_bzlmod
\ No newline at end of file
diff --git a/kotlin/example/.bazelversion b/kotlin/example/.bazelversion
new file mode 100644
index 0000000..c0be8a7
--- /dev/null
+++ b/kotlin/example/.bazelversion
@@ -0,0 +1 @@
+6.4.0
\ No newline at end of file
diff --git a/kotlin/example/BUILD b/kotlin/example/BUILD
new file mode 100644
index 0000000..e0d49e1
--- /dev/null
+++ b/kotlin/example/BUILD
@@ -0,0 +1,11 @@
+load("@rules_player//kotlin:defs.bzl", "kt_jvm")
+
+kt_jvm(
+ name = "kt_lib",
+ main_srcs = ["lib.kt"],
+ test_srcs = ["libtest.kt"],
+ test_package = "com.intuit.bazel.kotlin",
+ test_deps = []
+)
+
+
diff --git a/kotlin/example/MODULE.bazel b/kotlin/example/MODULE.bazel
new file mode 100644
index 0000000..fc3b523
--- /dev/null
+++ b/kotlin/example/MODULE.bazel
@@ -0,0 +1,27 @@
+module(
+ name = "kotlin_example"
+)
+
+bazel_dep(name = "rules_player")
+local_path_override(module_name = "rules_player", path = "../..")
+
+bazel_dep(name = "rules_jvm_external", version = "5.3")
+maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
+
+maven.install(
+ artifacts = [
+ "org.junit.jupiter:junit-jupiter-api:5.7.2",
+ "org.junit.jupiter:junit-jupiter-params:5.7.2",
+ "org.junit.jupiter:junit-jupiter-engine:5.7.2",
+ "org.junit.platform:junit-platform-suite-api:1.7.2",
+ "org.junit.platform:junit-platform-console:1.7.2",
+ "org.junit.platform:junit-platform-launcher:1.7.2"
+ ],
+ fetch_sources = True,
+ repositories = [
+ "https://repo1.maven.org/maven2",
+ "https://maven.google.com/",
+ "https://plugins.gradle.org/m2/",
+ ]
+)
+use_repo(maven, "maven")
diff --git a/kotlin/example/WORKSPACE b/kotlin/example/WORKSPACE
new file mode 100644
index 0000000..22ea4a9
--- /dev/null
+++ b/kotlin/example/WORKSPACE
@@ -0,0 +1,3 @@
+workspace(
+ name = "kotlin_example",
+)
\ No newline at end of file
diff --git a/kotlin/examples/kotlin-repository/lib.kt b/kotlin/example/lib.kt
similarity index 55%
rename from kotlin/examples/kotlin-repository/lib.kt
rename to kotlin/example/lib.kt
index 5ecd8b2..cf5e13f 100644
--- a/kotlin/examples/kotlin-repository/lib.kt
+++ b/kotlin/example/lib.kt
@@ -1,3 +1,3 @@
package com.intuit.bazel.kotlin
-const val HELLO = "world"
+const val HELLO = "world"
\ No newline at end of file
diff --git a/kotlin/examples/kotlin-repository/lib.test.kt b/kotlin/example/libtest.kt
similarity index 60%
rename from kotlin/examples/kotlin-repository/lib.test.kt
rename to kotlin/example/libtest.kt
index 3561297..6917936 100644
--- a/kotlin/examples/kotlin-repository/lib.test.kt
+++ b/kotlin/example/libtest.kt
@@ -5,8 +5,8 @@ import org.junit.jupiter.api.Test
class Tests {
- @Test fun `test`() {
- Assertions.assertEquals("world", HELLO)
- }
+ @Test fun `test`() {
+ Assertions.assertEquals("world", HELLO)
+ }
-}
+}
\ No newline at end of file
diff --git a/kotlin/examples/kotlin-archive/BUILD b/kotlin/examples/kotlin-archive/BUILD
deleted file mode 100644
index c6daccb..0000000
--- a/kotlin/examples/kotlin-archive/BUILD
+++ /dev/null
@@ -1,7 +0,0 @@
-load("@rules_player//kotlin:build.bzl", "kt_jvm_library_and_test")
-kt_jvm_library_and_test(
- name = "lib",
- main_srcs = ["lib.kt"],
- test_srcs = ["lib.test.kt"],
- test_package = "com.intuit.bazel.kotlin"
-)
diff --git a/kotlin/examples/kotlin-archive/WORKSPACE b/kotlin/examples/kotlin-archive/WORKSPACE
deleted file mode 100644
index 96798fb..0000000
--- a/kotlin/examples/kotlin-archive/WORKSPACE
+++ /dev/null
@@ -1,23 +0,0 @@
-local_repository(
- name = "rules_player",
- path = "../../..",
-)
-
-load("@rules_player//kotlin:workspace.bzl", "kotlin")
-kotlin(
- tag = "v1.5.0",
- sha256 = "12d22a3d9cbcf00f2e2d8f0683ba87d3823cb8c7f6837568dd7e48846e023307",
- baseUrl = "https://github.com/bazelbuild/rules_kotlin/releases/download",
-)
-
-load("@rules_player//:workspace.bzl", "deps")
-deps()
-
-load("@rules_player//:conf.bzl", kotlin_conf = "kotlin")
-kotlin_conf()
-
-load("@io_bazel_rules_kotlin//kotlin:core.bzl", "kt_register_toolchains")
-kt_register_toolchains()
-
-load("@rules_player//junit5:conf.bzl", junit5 = "junit5")
-junit5()
diff --git a/kotlin/examples/kotlin-archive/lib.kt b/kotlin/examples/kotlin-archive/lib.kt
deleted file mode 100644
index 5ecd8b2..0000000
--- a/kotlin/examples/kotlin-archive/lib.kt
+++ /dev/null
@@ -1,3 +0,0 @@
-package com.intuit.bazel.kotlin
-
-const val HELLO = "world"
diff --git a/kotlin/examples/kotlin-archive/lib.test.kt b/kotlin/examples/kotlin-archive/lib.test.kt
deleted file mode 100644
index 3561297..0000000
--- a/kotlin/examples/kotlin-archive/lib.test.kt
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.intuit.bazel.kotlin
-
-import org.junit.jupiter.api.Assertions
-import org.junit.jupiter.api.Test
-
-class Tests {
-
- @Test fun `test`() {
- Assertions.assertEquals("world", HELLO)
- }
-
-}
diff --git a/kotlin/examples/kotlin-defaults/BUILD b/kotlin/examples/kotlin-defaults/BUILD
deleted file mode 100644
index c6daccb..0000000
--- a/kotlin/examples/kotlin-defaults/BUILD
+++ /dev/null
@@ -1,7 +0,0 @@
-load("@rules_player//kotlin:build.bzl", "kt_jvm_library_and_test")
-kt_jvm_library_and_test(
- name = "lib",
- main_srcs = ["lib.kt"],
- test_srcs = ["lib.test.kt"],
- test_package = "com.intuit.bazel.kotlin"
-)
diff --git a/kotlin/examples/kotlin-defaults/WORKSPACE b/kotlin/examples/kotlin-defaults/WORKSPACE
deleted file mode 100644
index 76a6664..0000000
--- a/kotlin/examples/kotlin-defaults/WORKSPACE
+++ /dev/null
@@ -1,16 +0,0 @@
-local_repository(
- name = "rules_player",
- path = "../../..",
-)
-
-load("@rules_player//:workspace.bzl", "deps")
-deps()
-
-load("@rules_player//:conf.bzl", "kotlin")
-kotlin()
-
-load("@io_bazel_rules_kotlin//kotlin:core.bzl", "kt_register_toolchains")
-kt_register_toolchains()
-
-load("@rules_player//junit5:conf.bzl", "junit5")
-junit5()
diff --git a/kotlin/examples/kotlin-defaults/lib.kt b/kotlin/examples/kotlin-defaults/lib.kt
deleted file mode 100644
index 5ecd8b2..0000000
--- a/kotlin/examples/kotlin-defaults/lib.kt
+++ /dev/null
@@ -1,3 +0,0 @@
-package com.intuit.bazel.kotlin
-
-const val HELLO = "world"
diff --git a/kotlin/examples/kotlin-defaults/lib.test.kt b/kotlin/examples/kotlin-defaults/lib.test.kt
deleted file mode 100644
index 3561297..0000000
--- a/kotlin/examples/kotlin-defaults/lib.test.kt
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.intuit.bazel.kotlin
-
-import org.junit.jupiter.api.Assertions
-import org.junit.jupiter.api.Test
-
-class Tests {
-
- @Test fun `test`() {
- Assertions.assertEquals("world", HELLO)
- }
-
-}
diff --git a/kotlin/examples/kotlin-repository/BUILD b/kotlin/examples/kotlin-repository/BUILD
deleted file mode 100644
index c6daccb..0000000
--- a/kotlin/examples/kotlin-repository/BUILD
+++ /dev/null
@@ -1,7 +0,0 @@
-load("@rules_player//kotlin:build.bzl", "kt_jvm_library_and_test")
-kt_jvm_library_and_test(
- name = "lib",
- main_srcs = ["lib.kt"],
- test_srcs = ["lib.test.kt"],
- test_package = "com.intuit.bazel.kotlin"
-)
diff --git a/kotlin/examples/kotlin-repository/WORKSPACE b/kotlin/examples/kotlin-repository/WORKSPACE
deleted file mode 100644
index 61ea665..0000000
--- a/kotlin/examples/kotlin-repository/WORKSPACE
+++ /dev/null
@@ -1,24 +0,0 @@
-local_repository(
- name = "rules_player",
- path = "../../..",
-)
-
-load("@rules_player//kotlin:workspace.bzl", "kotlin_repository")
-kotlin_repository(
- remote = "https://github.com/bazelbuild/rules_kotlin.git",
- # pre bzlmod flag in their .bazelrc
- commit = "6e3339770551881f63d657c1f7b8bbdcd3d23c2c",
- shallow_since = "1654891732 -0400"
-)
-
-load("@rules_player//kotlin:repository.bzl", "archive")
-archive()
-
-load("@rules_player//kotlin:conf.bzl", kotlin_conf = "kotlin")
-kotlin_conf()
-
-load("@io_bazel_rules_kotlin//kotlin:core.bzl", "kt_register_toolchains")
-kt_register_toolchains()
-
-load("@rules_player//junit5:conf.bzl", junit5 = "junit5")
-junit5()
diff --git a/kotlin/private/BUILD b/kotlin/private/BUILD
new file mode 100644
index 0000000..bd012e6
--- /dev/null
+++ b/kotlin/private/BUILD
@@ -0,0 +1,46 @@
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
+
+bzl_library(
+ name = "lint",
+ srcs = ["lint.bzl"],
+ visibility = [
+ "//kotlin:__subpackages__",
+ ],
+ deps = [
+ ":scope_name"
+ ]
+)
+
+bzl_library(
+ name = "distribution",
+ srcs = ["distribution.bzl"],
+ visibility = [
+ "//kotlin:__subpackages__",
+ ],
+ deps = [
+ ":scope_name",
+ "@rules_jvm_external//:defs.bzl",
+ ]
+)
+
+bzl_library(
+ name = "kt_jvm",
+ srcs = ["kt_jvm.bzl"],
+ visibility = [
+ "//kotlin:__subpackages__",
+ ],
+ deps = [
+ ":lint",
+ ":distribution",
+ ":kt_jvm_library_and_test.bzl",
+ ]
+)
+
+bzl_library(
+ name = "scope_name",
+ srcs = ["scope_name.bzl"],
+ visibility = [
+ "//kotlin:__subpackages__",
+ ],
+ deps = [],
+)
\ No newline at end of file
diff --git a/kotlin/private/distribution.bzl b/kotlin/private/distribution.bzl
new file mode 100644
index 0000000..0742506
--- /dev/null
+++ b/kotlin/private/distribution.bzl
@@ -0,0 +1,15 @@
+load("@rules_jvm_external//:defs.bzl", "maven_export")
+load(":scope_name.bzl", "scope_name")
+
+def distribution(
+ *,
+ name,
+ maven_coordinates,
+ lib_name = None,
+ **kwargs):
+ maven_export(
+ name = scope_name(name, "export"),
+ lib_name = lib_name if lib_name else name,
+ maven_coordinates = maven_coordinates,
+ **kwargs
+ )
diff --git a/kotlin/private/junit5.bzl b/kotlin/private/junit5.bzl
new file mode 100644
index 0000000..cf16b2b
--- /dev/null
+++ b/kotlin/private/junit5.bzl
@@ -0,0 +1,5 @@
+load("//kotlin/private:junit_test.bzl", "junit_jupiter_java_repositories", "junit_platform_java_repositories")
+
+def junit5(jupter_version = "5.7.2", platform_version = "1.7.2"):
+ junit_jupiter_java_repositories(version = jupter_version)
+ junit_platform_java_repositories(version = platform_version)
\ No newline at end of file
diff --git a/kotlin/private/junit_test.bzl b/kotlin/private/junit_test.bzl
new file mode 100644
index 0000000..d0aa8ef
--- /dev/null
+++ b/kotlin/private/junit_test.bzl
@@ -0,0 +1,144 @@
+load("@bazel_tools//tools/build_defs/repo:jvm.bzl", "jvm_maven_import_external")
+load("@rules_kotlin//kotlin:jvm.bzl", "kt_jvm_test")
+
+JUNIT_JUPITER_GROUP_ID = "org.junit.jupiter"
+JUNIT_JUPITER_ARTIFACT_ID_LIST = [
+ "junit-jupiter-api",
+ "junit-jupiter-engine",
+ "junit-jupiter-params",
+]
+
+JUNIT_PLATFORM_GROUP_ID = "org.junit.platform"
+JUNIT_PLATFORM_ARTIFACT_ID_LIST = [
+ "junit-platform-commons",
+ "junit-platform-console",
+ "junit-platform-engine",
+ "junit-platform-launcher",
+ "junit-platform-suite-api",
+]
+
+JUNIT_EXTRA_DEPENDENCIES = [
+ ("org.apiguardian", "apiguardian-api", "1.0.0"),
+ ("org.opentest4j", "opentest4j", "1.1.1"),
+]
+
+def junit_jupiter_java_repositories(
+ version = "5.7.2"):
+ """Imports dependencies for JUnit Jupiter"""
+ for artifact_id in JUNIT_JUPITER_ARTIFACT_ID_LIST:
+ jvm_maven_import_external(
+ name = _format_maven_jar_name(JUNIT_JUPITER_GROUP_ID, artifact_id),
+ artifact = "%s:%s:%s" % (
+ JUNIT_JUPITER_GROUP_ID,
+ artifact_id,
+ version,
+ ),
+ server_urls = ["https://repo1.maven.org/maven2"],
+ licenses = ["notice"], # EPL 2.0 License
+ )
+
+ for t in JUNIT_EXTRA_DEPENDENCIES:
+ jvm_maven_import_external(
+ name = _format_maven_jar_name(t[0], t[1]),
+ artifact = "%s:%s:%s" % t,
+ server_urls = ["https://repo1.maven.org/maven2"],
+ licenses = ["notice"], # EPL 2.0 License
+ )
+
+def junit_platform_java_repositories(
+ version = "1.7.2"):
+ """Imports dependencies for JUnit Platform"""
+ for artifact_id in JUNIT_PLATFORM_ARTIFACT_ID_LIST:
+ jvm_maven_import_external(
+ name = _format_maven_jar_name(JUNIT_PLATFORM_GROUP_ID, artifact_id),
+ artifact = "%s:%s:%s" % (
+ JUNIT_PLATFORM_GROUP_ID,
+ artifact_id,
+ version,
+ ),
+ server_urls = ["https://repo1.maven.org/maven2"],
+ licenses = ["notice"], # EPL 2.0 License
+ )
+
+def java_junit5_test(name, srcs, test_package, deps = [], runtime_deps = [], **kwargs):
+ FILTER_KWARGS = [
+ "main_class",
+ "use_testrunner",
+ "args",
+ ]
+
+ for arg in FILTER_KWARGS:
+ if arg in kwargs.keys():
+ kwargs.pop(arg)
+
+ junit_console_args = []
+ if test_package:
+ junit_console_args += ["--select-package", test_package]
+ else:
+ fail("must specify 'test_package'")
+
+ native.java_test(
+ name = name,
+ srcs = srcs,
+ use_testrunner = False,
+ main_class = "org.junit.platform.console.ConsoleLauncher",
+ args = junit_console_args,
+ deps = deps + [
+ _format_maven_jar_dep_name(JUNIT_JUPITER_GROUP_ID, artifact_id)
+ for artifact_id in JUNIT_JUPITER_ARTIFACT_ID_LIST
+ ] + [
+ _format_maven_jar_dep_name(JUNIT_PLATFORM_GROUP_ID, "junit-platform-suite-api"),
+ ] + [
+ _format_maven_jar_dep_name(t[0], t[1])
+ for t in JUNIT_EXTRA_DEPENDENCIES
+ ],
+ runtime_deps = (runtime_deps if runtime_deps else []) + [
+ _format_maven_jar_dep_name(JUNIT_PLATFORM_GROUP_ID, artifact_id)
+ for artifact_id in JUNIT_PLATFORM_ARTIFACT_ID_LIST
+ ],
+ **kwargs
+ )
+
+def kt_jvm_junit5_test(name, srcs, test_package, deps = [], runtime_deps = [], **kwargs):
+ FILTER_KWARGS = [
+ "main_class",
+ "use_testrunner",
+ "args",
+ ]
+
+ for arg in FILTER_KWARGS:
+ if arg in kwargs.keys():
+ kwargs.pop(arg)
+
+ junit_console_args = []
+ if test_package:
+ junit_console_args += ["--select-package", test_package]
+ else:
+ fail("must specify 'test_package'")
+
+ kt_jvm_test(
+ name = name,
+ srcs = srcs,
+ main_class = "org.junit.platform.console.ConsoleLauncher",
+ args = junit_console_args,
+ deps = deps + [
+ _format_maven_jar_dep_name(JUNIT_JUPITER_GROUP_ID, artifact_id)
+ for artifact_id in JUNIT_JUPITER_ARTIFACT_ID_LIST
+ ] + [
+ _format_maven_jar_dep_name(JUNIT_PLATFORM_GROUP_ID, "junit-platform-suite-api"),
+ ] + [
+ _format_maven_jar_dep_name(t[0], t[1])
+ for t in JUNIT_EXTRA_DEPENDENCIES
+ ],
+ runtime_deps = (runtime_deps if runtime_deps else []) + [
+ _format_maven_jar_dep_name(JUNIT_PLATFORM_GROUP_ID, artifact_id)
+ for artifact_id in JUNIT_PLATFORM_ARTIFACT_ID_LIST
+ ],
+ **kwargs
+ )
+
+def _format_maven_jar_name(group_id, artifact_id):
+ return ("%s_%s" % (group_id, artifact_id)).replace(".", "_").replace("-", "_")
+
+def _format_maven_jar_dep_name(group_id, artifact_id):
+ return "@maven//:%s" % _format_maven_jar_name(group_id, artifact_id)
\ No newline at end of file
diff --git a/kotlin/kt_jvm.bzl b/kotlin/private/kt_jvm.bzl
similarity index 99%
rename from kotlin/kt_jvm.bzl
rename to kotlin/private/kt_jvm.bzl
index d13a171..8797ddb 100644
--- a/kotlin/kt_jvm.bzl
+++ b/kotlin/private/kt_jvm.bzl
@@ -1,4 +1,4 @@
-load(":build.bzl", "kt_jvm_library_and_test")
+load(":kt_jvm_library_and_test.bzl", "kt_jvm_library_and_test")
load(":lint.bzl", "lint")
load(":distribution.bzl", "distribution")
diff --git a/kotlin/build.bzl b/kotlin/private/kt_jvm_library_and_test.bzl
similarity index 90%
rename from kotlin/build.bzl
rename to kotlin/private/kt_jvm_library_and_test.bzl
index 01fe4cb..22aa853 100644
--- a/kotlin/build.bzl
+++ b/kotlin/private/kt_jvm_library_and_test.bzl
@@ -1,6 +1,6 @@
-load("@io_bazel_rules_kotlin//kotlin:jvm.bzl", "kt_jvm_library")
-load("@junit//junit5-jupiter-starter-bazel:junit5.bzl", "kt_jvm_junit5_test")
-load("//internal:scope_name.bzl", "scope_name")
+load("@rules_kotlin//kotlin:jvm.bzl", "kt_jvm_library")
+load(":junit_test.bzl", "kt_jvm_junit5_test")
+load(":scope_name.bzl", "scope_name")
# No project specific defaults here
def kt_jvm_library_and_test(
@@ -71,4 +71,4 @@ def kt_jvm_library_and_test(
test_package = test_package,
deps = test_deps,
runtime_deps = test_runtime_deps,
- )
+ )
\ No newline at end of file
diff --git a/kotlin/lint.bzl b/kotlin/private/lint.bzl
similarity index 69%
rename from kotlin/lint.bzl
rename to kotlin/private/lint.bzl
index 640ad24..f540414 100644
--- a/kotlin/lint.bzl
+++ b/kotlin/private/lint.bzl
@@ -1,5 +1,5 @@
-load("@io_bazel_rules_kotlin//kotlin:lint.bzl", "ktlint_fix", "ktlint_test")
-load("//internal:scope_name.bzl", "scope_name")
+load("@rules_kotlin//kotlin:lint.bzl", "ktlint_fix", "ktlint_test")
+load(":scope_name.bzl", "scope_name")
def lint(
*,
@@ -18,5 +18,4 @@ def lint(
name = scope_name(name, "lint-fix"),
srcs = srcs,
config = lint_config,
- )
-
\ No newline at end of file
+ )
\ No newline at end of file
diff --git a/internal/scope_name.bzl b/kotlin/private/scope_name.bzl
similarity index 72%
rename from internal/scope_name.bzl
rename to kotlin/private/scope_name.bzl
index a67a1eb..97463a0 100644
--- a/internal/scope_name.bzl
+++ b/kotlin/private/scope_name.bzl
@@ -2,4 +2,4 @@ def scope_name(name, suffix):
if name == native.package_name().split("/")[-1]:
return suffix
- return "{}-{}".format(name, suffix)
+ return "{}-{}".format(name, suffix)
\ No newline at end of file
diff --git a/kotlin/repository.bzl b/kotlin/repository.bzl
deleted file mode 100644
index ce132a2..0000000
--- a/kotlin/repository.bzl
+++ /dev/null
@@ -1,7 +0,0 @@
-load("@io_bazel_rules_kotlin_repo//src/main/starlark/release_archive:repository.bzl", "archive_repository")
-
-def archive():
- archive_repository(
- name = "io_bazel_rules_kotlin",
- source_repository_name = "io_bazel_rules_kotlin_repo",
- )
diff --git a/kotlin/workspace.bzl b/kotlin/workspace.bzl
deleted file mode 100644
index 3eb8831..0000000
--- a/kotlin/workspace.bzl
+++ /dev/null
@@ -1,32 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
-load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
-load("//junit5:workspace.bzl", "junit5")
-load("//internal:maybe.bzl", "maybe")
-
-# Load Kotlin rules from remote artifact
-def kotlin(
- tag = "v1.7.1",
- sha256 = "fd92a98bd8a8f0e1cdcb490b93f5acef1f1727ed992571232d33de42395ca9b3",
- baseUrl = "https://github.com/bazelbuild/rules_kotlin/releases/download",
- name = "rules_kotlin_release.tgz",
-):
- maybe(
- http_archive,
- name = "io_bazel_rules_kotlin",
- urls = ["%s/%s/%s" % (baseUrl, tag, name)],
- sha256 = sha256,
- )
- junit5()
-
-# Load Kotlin rules from git
-def kotlin_repository(
- remote = "https://github.com/bazelbuild/rules_kotlin.git",
- **kwargs,
-):
- maybe(
- git_repository,
- name = "io_bazel_rules_kotlin_repo",
- remote = remote,
- **kwargs,
- )
- junit5()
diff --git a/maven/BUILD b/maven/BUILD
deleted file mode 100644
index e69de29..0000000
diff --git a/maven/parse_coordinates.bzl b/maven/parse_coordinates.bzl
deleted file mode 100644
index 0267b11..0000000
--- a/maven/parse_coordinates.bzl
+++ /dev/null
@@ -1,7 +0,0 @@
-load("@rules_jvm_external//:defs.bzl", "artifact")
-
-def parse_coordinates(maven):
- targets = []
- for coordinate in maven:
- targets.append(artifact(coordinate))
- return targets
diff --git a/maven/workspace.bzl b/maven/workspace.bzl
deleted file mode 100644
index bcd35c0..0000000
--- a/maven/workspace.bzl
+++ /dev/null
@@ -1,25 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
-load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
-load("//internal:maybe.bzl", "maybe")
-
-def maven(tag = "5.3", sha = "d31e369b854322ca5098ea12c69d7175ded971435e55c18dd9dd5f29cc5249ac"):
- maybe(
- http_archive,
- name = "rules_jvm_external",
- strip_prefix = "rules_jvm_external-%s" % tag,
- sha256 = sha,
- url = "https://github.com/bazelbuild/rules_jvm_external/archive/%s.zip" % tag,
- )
-
-# Load maven rules from git
-def maven_repository(
- remote = "https://github.com/sugarmanz/rules_jvm_external.git",
- branch = "maven-export-aar",
- **kwargs):
- maybe(
- git_repository,
- name = "rules_jvm_external",
- remote = remote,
- branch = branch,
- **kwargs
- )
diff --git a/player/BUILD b/player/BUILD
new file mode 100644
index 0000000..2d4d6eb
--- /dev/null
+++ b/player/BUILD
@@ -0,0 +1,12 @@
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
+
+exports_files(["defs.bzl"])
+
+bzl_library(
+ name = "defs",
+ srcs = ["defs.bzl"],
+ visibility = ["//visibility:public"],
+ deps = [
+ "//player/private:dsl",
+ ],
+)
diff --git a/player/README.md b/player/README.md
deleted file mode 100644
index 2cca878..0000000
--- a/player/README.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Player Specific Rules/Macros
-The rules in this folder are a bit more specific for player use-cases.
-
-
-## VSCE
-
-The VSCE rules aid with bundling, stamping, and publishing vscode extensions.
-
-```python
-load("@rules_player//player/vsce:index.bzl", "vsce")
-
-vsce(
- name = "vscode-ext",
- substitutions = {
- "__VERSION__": "{STABLE_VERSION}",
- "0.0.0-PLACEHOLDER": "{STABLE_VERSION}",
- "__GIT_COMMIT__": "{STABLE_GIT_COMMIT}",
- },
- data = [
- "package.json",
- ".vscodeignore"
- ] + glob(["syntaxes/*"])
-)
-```
-
-Then to build publish the extension:
-
-```sh
-bazel build //packages/vscode:vscode-ext
-bazel run //packages/vscode:vscode-ext.publish
-```
-
diff --git a/player/bundle/BUILD b/player/bundle/BUILD
deleted file mode 100644
index ffd0fb0..0000000
--- a/player/bundle/BUILD
+++ /dev/null
@@ -1 +0,0 @@
-package(default_visibility = ["//visibility:public"])
diff --git a/player/bundle/bundle.bzl b/player/bundle/bundle.bzl
deleted file mode 100644
index 41fa6e2..0000000
--- a/player/bundle/bundle.bzl
+++ /dev/null
@@ -1,48 +0,0 @@
-load("@npm//webpack-cli:index.bzl", _webpack = "webpack_cli")
-
-PROD = "prod"
-DEV = "dev"
-
-PRODUCTION = "production"
-DEVELOPMENT = "development"
-
-MODES = {
- PROD: PRODUCTION,
- DEV: DEVELOPMENT,
-}
-
-def webpack(name, dist, deps, mode_shorthand, visibility, bundle_name = None, bundle_entry = None, **kwargs):
- output_name = bundle_name if bundle_name != None else name
- _webpack(
- name = "%s_bundle_%s" % (name, mode_shorthand),
- outs = ["dist/%s.%s.js" % (bundle_name, mode_shorthand)],
- args = [
- "--mode %s" % MODES[mode_shorthand],
- bundle_entry if bundle_entry else "./$(RULEDIR)",
- "--config",
- "webpack.config.js",
- "-o",
- "./$@",
- ],
- data = dist + deps,
- visibility = visibility,
- **kwargs
- )
-
-"""
-Creates dev and prod bundles from cjs code
-"""
-
-def bundle(name, dist, deps, visibility, bundle_name = None, bundle_entry = None, **kwargs):
- """Wrapper to create dev and prod bundles from a ts_package"""
- webpack(name, dist, deps, DEV, visibility, bundle_name, bundle_entry, **kwargs)
- webpack(name, dist, deps, PROD, visibility, bundle_name, bundle_entry, **kwargs)
-
- native.filegroup(
- name = name,
- srcs = [
- "%s_bundle_prod" % name,
- "%s_bundle_dev" % name,
- ],
- visibility = visibility,
- )
diff --git a/player/bundle/workspace.bzl b/player/bundle/workspace.bzl
deleted file mode 100644
index 5a271d2..0000000
--- a/player/bundle/workspace.bzl
+++ /dev/null
@@ -1,4 +0,0 @@
-load("//javascript:workspace.bzl", "javascript")
-
-def bundle():
- javascript()
diff --git a/player/cli/BUILD b/player/cli/BUILD
deleted file mode 100644
index a26f925..0000000
--- a/player/cli/BUILD
+++ /dev/null
@@ -1 +0,0 @@
-package(default_visibility = ["//visibility:public"])
\ No newline at end of file
diff --git a/player/cli/workspace.bzl b/player/cli/workspace.bzl
deleted file mode 100644
index 5a271d2..0000000
--- a/player/cli/workspace.bzl
+++ /dev/null
@@ -1,4 +0,0 @@
-load("//javascript:workspace.bzl", "javascript")
-
-def bundle():
- javascript()
diff --git a/player/cli/xlr.bzl b/player/cli/xlr.bzl
deleted file mode 100644
index 2c110dd..0000000
--- a/player/cli/xlr.bzl
+++ /dev/null
@@ -1,80 +0,0 @@
-load("@bazel_skylib//lib:paths.bzl", "paths")
-load("@build_bazel_rules_nodejs//:providers.bzl", "JSModuleInfo", "node_modules_aspect", "run_node")
-load("@build_bazel_rules_nodejs//internal/linker:link_node_modules.bzl", "module_mappings_aspect")
-load("@rules_player//javascript:utils.bzl", "get_dep_files")
-
-XLR_COMPILE_ATTRS = {
- # Dependencies needed to build the pkg
- "data": attr.label_list(
- default = [],
- aspects = [module_mappings_aspect, node_modules_aspect],
- allow_files = True,
- ),
-
- # Files to compile to XLR
- "srcs": attr.label_list(default = [], allow_files = True),
-
- # What compilation mode should be used (plugin/types)
- "mode": attr.string(default = "plugin"),
-
- # Input Root
- "input_root": attr.string(default = "src"),
-
- # Output Directory
- "output_root": attr.string(default = "dist"),
-
- # Player CLI executable
- "_player_cli": attr.label(default = Label("@npm//@player-tools/cli/bin:player"), executable = True, cfg = "host"),
-}
-
-def _xlr_compile(ctx):
- xlr_output = ctx.actions.declare_directory(paths.join(ctx.attr.output_root, "xlr"))
- manifest_json = ctx.actions.declare_file(paths.join(ctx.attr.output_root, "xlr", "manifest.json"))
- manifest_js = ctx.actions.declare_file(paths.join(ctx.attr.output_root, "xlr", "manifest.js"))
- file_outputs = [manifest_json, manifest_js, xlr_output]
- output_group = OutputGroupInfo(
- json = depset([manifest_json]),
- js = depset([manifest_js]),
- xlr = depset([xlr_output])
- )
-
- deps_inputs = get_dep_files(ctx.attr.data)
- output_root = paths.dirname(xlr_output.path)
- in_dir = paths.join(ctx.label.package, ctx.attr.input_root)
-
- run_node(
- ctx,
- inputs = ctx.files.srcs + deps_inputs,
- outputs = file_outputs,
- arguments = [
- "xlr",
- "compile",
- "-m",
- ctx.attr.mode,
- "-o",
- output_root,
- "-i",
- in_dir,
- ],
- executable = "_player_cli",
- mnemonic = "PlayerCLI",
- )
-
- output_depset = depset(file_outputs)
-
- return [
- DefaultInfo(
- files = output_depset,
- ),
- JSModuleInfo(
- direct_sources = output_depset,
- sources = output_depset,
- ),
- output_group,
- ]
-
-
-xlr_compile = rule(
- implementation = _xlr_compile,
- attrs = XLR_COMPILE_ATTRS,
-)
\ No newline at end of file
diff --git a/player/defs.bzl b/player/defs.bzl
new file mode 100644
index 0000000..cc21e12
--- /dev/null
+++ b/player/defs.bzl
@@ -0,0 +1,14 @@
+"""
+Public API for player Bazel rules.
+"""
+
+load("//player/private:dsl.bzl", _compile = "compile")
+load("//player/private:xlr.bzl", _xlr_compile = "xlr_compile")
+load("//player/private:config.bzl", _create_base_config = "create_base_config")
+load("//player/private:js_xlr_pipeline.bzl", _js_xlr_pipeline = "js_xlr_pipeline")
+
+compile = _compile
+dsl_compile = _compile
+xlr_compile = _xlr_compile
+create_base_config = _create_base_config
+js_xlr_pipeline = _js_xlr_pipeline
diff --git a/player/private/BUILD b/player/private/BUILD
new file mode 100644
index 0000000..1a2b8c1
--- /dev/null
+++ b/player/private/BUILD
@@ -0,0 +1,23 @@
+load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
+
+bzl_library(
+ name = "dsl",
+ srcs = ["dsl.bzl"],
+ visibility = ["//player:__subpackages__"],
+)
+
+bzl_library(
+ name = "xlr",
+ srcs = ["xlr.bzl"],
+ visibility = ["//player:__subpackages__"],
+)
+
+bzl_library(
+ name = "config",
+ srcs = ["config.bzl"],
+ visibility = ["//player:__subpackages__"],
+)
+
+exports_files([
+ "player.config.js.template",
+])
diff --git a/player/private/config.bzl b/player/private/config.bzl
new file mode 100644
index 0000000..d44aecb
--- /dev/null
+++ b/player/private/config.bzl
@@ -0,0 +1,71 @@
+"""
+A rule for creating player cli configs
+"""
+
+load("@aspect_rules_js//js:providers.bzl", "JsInfo")
+
+_config_attrs = {
+ "plugins": attr.label_list(
+ default = [],
+ providers = [JsInfo],
+ allow_files = True,
+ allow_empty = True,
+ ),
+ "presets": attr.label_list(
+ default = [],
+ providers = [JsInfo],
+ allow_files = True,
+ allow_empty = True,
+ ),
+ "_config_template": attr.label(
+ allow_single_file = True,
+ default = Label("//player/private:player.config.js.template"),
+ ),
+}
+
+def _create_base_config_impl(ctx):
+ """
+ Implementation for player cli config
+ """
+
+ tmpl_plugins = []
+ tmpl_presets = []
+
+ for plugin in ctx.attr.plugins:
+ linked_list = plugin[JsInfo].npm_linked_packages.to_list()
+ if len(linked_list) > 1:
+ fail("Plugin {} has more than one linked package".format(plugin))
+
+ tmpl_plugins.append(linked_list[0].package)
+
+ for plugin in ctx.attr.presets:
+ linked_list = plugin[JsInfo].npm_linked_packages.to_list()
+ if len(linked_list) > 1:
+ fail("Plugin {} has more than one linked package".format(plugin))
+
+ tmpl_presets.append(linked_list[0].package)
+
+ output_file = ctx.actions.declare_file("{}.player.config.js".format(ctx.label.name))
+
+ ctx.actions.expand_template(
+ template = ctx.file._config_template,
+ output = output_file,
+ substitutions = {
+ "_TMPL_PLUGINS": json.encode(tmpl_plugins),
+ "_TMPL_PRESETS": json.encode(tmpl_presets),
+ },
+ )
+
+ output_sources = [output_file]
+ output_sources_depset = depset(output_sources)
+
+ return [
+ DefaultInfo(
+ files = output_sources_depset,
+ ),
+ ]
+
+create_base_config = rule(
+ implementation = _create_base_config_impl,
+ attrs = _config_attrs,
+)
diff --git a/player/private/dsl.bzl b/player/private/dsl.bzl
new file mode 100644
index 0000000..a8a9bc6
--- /dev/null
+++ b/player/private/dsl.bzl
@@ -0,0 +1,70 @@
+"""
+A rule for compiling player flows.
+"""
+
+load("@aspect_bazel_lib//lib:directory_path.bzl", "directory_path")
+load("@aspect_rules_js//js:defs.bzl", "js_binary", "js_run_binary", "js_test")
+load("@bazel_skylib//lib:paths.bzl", "paths")
+
+def compile(name, node_modules = "//:node_modules", srcs = None, input_dir = "src", output_dir = None, data = [], config = None, skip_test = False, **kwargs):
+ """Run the src or src_dir through the player compiler.
+ Args:
+ name: The name of the target.
+ srcs: The source files to compile.
+ node_modules: The node_modules target to use.
+ """
+
+ player_cli_entrypoint = "{}_entrypoint".format(name)
+
+ directory_path(
+ name = player_cli_entrypoint,
+ directory = "{}/@player-tools/cli/dir".format(node_modules),
+ path = "bin/run",
+ )
+
+ js_bin_name = "{}_binary".format(name)
+ js_test_bin_name = "{}_test_binary".format(name)
+
+ js_binary(
+ name = js_bin_name,
+ data = ["{}/@player-tools/cli".format(node_modules)],
+ entry_point = ":{}".format(player_cli_entrypoint),
+ )
+
+ output_dir = output_dir if output_dir else "{}_dist".format(name)
+ outputs = [paths.join(output_dir, paths.relativize(paths.replace_extension(src, ".json"), input_dir)) for src in srcs]
+
+ js_run_binary(
+ name = name,
+ tool = js_bin_name,
+ srcs = data + srcs + [config],
+ visibility = ["//:__subpackages__"],
+ args = [
+ "dsl",
+ "compile",
+ "--skip-validation",
+ "-o",
+ "{}/{}".format(native.package_name(), output_dir),
+ "-i",
+ "{}/{}".format(native.package_name(), input_dir),
+ "-c",
+ "$(rootpath {})".format(config),
+ ],
+ outs = outputs,
+ **kwargs
+ )
+
+ if skip_test != True:
+ js_test(
+ name = js_test_bin_name,
+ data = data + [":" + name, "{}/@player-tools/cli".format(node_modules), config],
+ entry_point = ":{}".format(player_cli_entrypoint),
+ args = [
+ "json",
+ "validate",
+ "-c",
+ "$(rootpath {})".format(config),
+ "-f",
+ "$(locations {})".format(":" + name),
+ ],
+ )
diff --git a/player/private/js_xlr_pipeline.bzl b/player/private/js_xlr_pipeline.bzl
new file mode 100644
index 0000000..d919e72
--- /dev/null
+++ b/player/private/js_xlr_pipeline.bzl
@@ -0,0 +1,34 @@
+load("//javascript:defs.bzl", "js_pipeline")
+load("xlr.bzl", "xlr_compile")
+
+def js_xlr_pipeline(name = None, xlr_mode = "plugin", xlr_input_dir = "src", srcs = None, **kwargs):
+ """A rule for compiling player flows with xlr mode.
+ Args:
+ name: The name of the target.
+ xlr_mode: The mode to use when compiling with XLR. Defaults to "plugin".
+ """
+
+ if name == None:
+ # name = package_name.split("/")[-1]
+ name = native.package_name().split("/")[-1]
+
+ if srcs == None:
+ srcs = native.glob(["src/**/*"])
+
+ xlr_compile(
+ name = name + "_xlr",
+ srcs = srcs,
+ mode = xlr_mode,
+ input_dir = xlr_input_dir,
+ data = [
+ "//:node_modules/dlv",
+ ] + kwargs.get("deps", []) + kwargs.get("peer_deps", []),
+ )
+
+ js_pipeline(
+ name = name,
+ include_packaging_targets = [
+ ":" + name + "_xlr",
+ ],
+ **kwargs
+ )
diff --git a/player/private/player.config.js.template b/player/private/player.config.js.template
new file mode 100644
index 0000000..c00c311
--- /dev/null
+++ b/player/private/player.config.js.template
@@ -0,0 +1,4 @@
+module.exports = {
+ "plugins": _TMPL_PLUGINS.map(r => require.resolve(r)),
+ "presets": _TMPL_PRESETS.map(r => require.resolve(r))
+}
\ No newline at end of file
diff --git a/player/private/xlr.bzl b/player/private/xlr.bzl
new file mode 100644
index 0000000..35b5cda
--- /dev/null
+++ b/player/private/xlr.bzl
@@ -0,0 +1,60 @@
+"""
+A rule for compiling player flows.
+"""
+
+load("@aspect_bazel_lib//lib:directory_path.bzl", "directory_path")
+load("@aspect_rules_js//js:defs.bzl", "js_binary", "js_run_binary")
+load("config.bzl", "create_base_config")
+load("@bazel_skylib//lib:paths.bzl", "paths")
+
+def xlr_compile(
+ name,
+ node_modules = "//:node_modules",
+ srcs = None,
+ data = [],
+ config = None,
+ input_dir = "src",
+ mode = "plugin",
+ **kwargs):
+ player_cli_entrypoint = "{}_entrypoint".format(name)
+
+ if (config == None):
+ create_base_config(
+ name = "{}_config".format(name),
+ )
+ config = ":{}_config".format(name)
+
+ directory_path(
+ name = player_cli_entrypoint,
+ directory = "{}/@player-tools/cli/dir".format(node_modules),
+ path = "bin/run",
+ )
+
+ js_bin_name = "{}_binary".format(name)
+
+ js_binary(
+ name = js_bin_name,
+ data = ["{}/@player-tools/cli".format(node_modules)],
+ entry_point = ":{}".format(player_cli_entrypoint),
+ )
+
+ js_run_binary(
+ name = name,
+ tool = js_bin_name,
+ srcs = data + srcs + [config],
+ visibility = ["//:__subpackages__"],
+ args = [
+ "xlr",
+ "compile",
+ "-o",
+ paths.join(native.package_name(), "dist"),
+ "-i",
+ paths.join(native.package_name(), input_dir),
+ "-c",
+ "$(rootpath {})".format(config),
+ "-m",
+ mode,
+ ],
+ out_dirs = [paths.join("dist", "xlr")],
+ **kwargs
+ )
diff --git a/player/vsce/BUILD b/player/vsce/BUILD
deleted file mode 100644
index 86eea19..0000000
--- a/player/vsce/BUILD
+++ /dev/null
@@ -1,12 +0,0 @@
-load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary")
-
-package(default_visibility = ["//visibility:public"])
-
-nodejs_binary(
- name = "vsce_stamp",
- entry_point = "vsce_stamp.js",
- data = [
- "@npm//extract-zip",
- "@npm//zip-folder"
- ]
-)
\ No newline at end of file
diff --git a/player/vsce/index.bzl b/player/vsce/index.bzl
deleted file mode 100644
index f6fbbc4..0000000
--- a/player/vsce/index.bzl
+++ /dev/null
@@ -1,47 +0,0 @@
-load("@npm//vsce:index.bzl", _vsce = "vsce")
-load(":vsce_stamp.bzl", "vsce_stamp")
-
-COMMON_ARGS = [
- "--no-git-tag-version",
- "--no-update-package-json",
- "--yarn"
-]
-
-def vsce(name, data, substitutions = {}):
- _package_segments = len(native.package_name().split("/"))
- # ../.. segments to re-relative paths from the chdir back to workspace root
- out_path = "/".join([".."] * _package_segments + ["$@"])
-
- default_target = ":%s" % name
- stamped_name = "%s_stamp" % name
- stamped_target = ":%s" % stamped_name
-
- _vsce(
- name = name,
- args = [
- "package",
- "--out",
- out_path,
- ] + COMMON_ARGS,
- chdir = native.package_name(),
- outs = ["%s.vsix" % name],
- data = data
- )
-
- vsce_stamp(
- name = stamped_name,
- vsix = default_target,
- substitutions = substitutions
- )
-
- _vsce(
- name = "%s.publish" % name,
- data = [
- stamped_target
- ],
- args = [
- "publish",
- "--packagePath",
- "$(location %s)" % stamped_target,
- ] + COMMON_ARGS
- )
diff --git a/player/vsce/vsce_stamp.bzl b/player/vsce/vsce_stamp.bzl
deleted file mode 100644
index 62e06ba..0000000
--- a/player/vsce/vsce_stamp.bzl
+++ /dev/null
@@ -1,50 +0,0 @@
-"""
-Module for stamping a vsix vscode-extension package
-"""
-load("@build_bazel_rules_nodejs//:providers.bzl", "run_node", "NODE_CONTEXT_ATTRS", "NodeContextInfo")
-load("@bazel_skylib//lib:paths.bzl", "paths")
-
-_VSCE_STAMP_JS = Label("//player/vsce:vsce_stamp")
-
-VSCE_STAMP_ATTRS = dict(NODE_CONTEXT_ATTRS, **{
- "vsix": attr.label( allow_single_file=True ),
- "substitutions": attr.string_dict(),
- "_vsce_stamp_js": attr.label(default=_VSCE_STAMP_JS, executable=True, cfg="host"),
-})
-
-def _vsce_stamp_impl(ctx):
- """
- A .vsix file is just a fancy zip. Unzip it, stamp the items, and repack
- """
- stamped_vsix = ctx.actions.declare_file("stamped_%s" % (paths.basename(ctx.file.vsix.path)))
-
- stamp_inputs = []
- stamp = ctx.attr.node_context_data[NodeContextInfo].stamp
-
- if stamp:
- stamp_inputs = [ctx.info_file]
-
- run_node(
- ctx,
- inputs = ctx.files.vsix + stamp_inputs,
- outputs = [stamped_vsix],
- arguments = [json.encode({
- "input_file": ctx.file.vsix.path,
- "output_file": stamped_vsix.path,
- "stamp": ctx.info_file.path if stamp else None,
- "substitutions": ctx.attr.substitutions,
- })],
- executable = "_vsce_stamp_js",
- mnemonic = "VSCEStamp",
- )
-
- return [
- DefaultInfo(
- files = depset([stamped_vsix])
- )
- ]
-
-vsce_stamp = rule(
- implementation = _vsce_stamp_impl,
- attrs = VSCE_STAMP_ATTRS,
-)
\ No newline at end of file
diff --git a/player/vsce/vsce_stamp.js b/player/vsce/vsce_stamp.js
deleted file mode 100644
index d90eedb..0000000
--- a/player/vsce/vsce_stamp.js
+++ /dev/null
@@ -1,97 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const extract = require("extract-zip");
-const zipFolder = require("zip-folder");
-
-async function handleSubstitutions(folderOrFile, substitutions) {
- if (Object.keys(substitutions).length === 0) {
- return;
- }
-
- if ((await fs.promises.stat(folderOrFile)).isDirectory()) {
- const files = await fs.promises.readdir(folderOrFile);
- for (const file of files) {
- await handleSubstitutions(path.join(folderOrFile, file), substitutions);
- }
-
- return;
- }
-
- let contents = await fs.promises.readFile(folderOrFile, "utf-8");
- const originalContents = contents;
- for (const key in substitutions) {
- const value = substitutions[key];
- contents = contents.replace(new RegExp(key, "g"), value);
- }
-
- if (contents !== originalContents) {
- await fs.promises.writeFile(folderOrFile, contents);
- }
-}
-
-const repackageVSIX = async (input_file, output_file, substitutions) => {
- const tempDir = path.join(__dirname, "temp");
- await fs.promises.mkdir(tempDir, { recursive: true });
-
- await extract(input_file, { dir: tempDir });
- await handleSubstitutions(tempDir, substitutions);
-
- await new Promise((resolve, reject) => {
- zipFolder(tempDir, output_file, (err) => {
- if (err) {
- return reject(err);
- }
-
- resolve();
- });
- });
-
- await fs.promises.rm(tempDir, { recursive: true });
-};
-
-const main = async ([config]) => {
- const { input_file, output_file, stamp, substitutions, version_key } = JSON.parse(config);
-
- // Don't do much if we don't have to stamp, just copy it over as is
- if (!stamp) {
- fs.copyFileSync(input_file, output_file);
- return;
- }
-
- // Grab all of the vars to stamp
- // Unzip the file
- // Replace what needs to be replaced
- // Rezip it to the new location
-
- const stampFile = fs.readFileSync(stamp, "utf-8");
-
- // TODO: Should share this as a common module
- stampFile.split("\n").forEach((line) => {
- const firstSpace = line.indexOf(" ");
- const varName = line.substring(0, firstSpace);
- let varVal = line.substring(firstSpace + 1);
-
- // Using the same match as https://github.com/bazelbuild/rules_nodejs/blob/stable/internal/pkg_npm/packager.js#L139
- if (varName.endsWith('_VERSION')) {
- // vscode doesn't let you have `-canary` suffixes
- varVal = varVal.replace(/[^\d.]/g, '');
- }
-
- // Swap out anything referencing the stamped file with the actual value
- Object.keys(substitutions).forEach((key) => {
- if (substitutions[key] === `{${varName}}`) {
- substitutions[key] = varVal;
- }
- });
- });
-
- await repackageVSIX(input_file, output_file, substitutions);
-};
-
-if (require.main === module) {
- try {
- process.exitCode = main(process.argv.slice(2));
- } catch (e) {
- console.error(process.argv[1], e);
- }
-}
diff --git a/player/vsce/workspace.bzl b/player/vsce/workspace.bzl
deleted file mode 100644
index 6b54f98..0000000
--- a/player/vsce/workspace.bzl
+++ /dev/null
@@ -1,4 +0,0 @@
-load("//javascript:workspace.bzl", "javascript")
-
-def vsce():
- javascript()
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
new file mode 100644
index 0000000..2e2eeb7
--- /dev/null
+++ b/pnpm-lock.yaml
@@ -0,0 +1,2090 @@
+lockfileVersion: '6.0'
+
+settings:
+ autoInstallPeers: true
+ excludeLinksFromLockfile: false
+
+devDependencies:
+ '@auto-it/git-tag':
+ specifier: ^10.37.1
+ version: registry.npmjs.org/@auto-it/git-tag@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ '@auto-it/released':
+ specifier: ^10.37.1
+ version: registry.npmjs.org/@auto-it/released@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ auto:
+ specifier: ^10.37.1
+ version: registry.npmjs.org/auto@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+
+packages:
+
+ registry.npmjs.org/@auto-it/bot-list@10.46.0:
+ resolution: {integrity: sha512-QkkBgQVi1g/1Tpxcs3Hm3zTzaaM0xjiIRt5xEA6TRM/ULdgEqY+Jk/w1fJZe9GVF+53mwRfqGtQeJirilMBH6g==, tarball: https://registry.npmjs.org/@auto-it/bot-list/-/bot-list-10.46.0.tgz}
+ name: '@auto-it/bot-list'
+ version: 10.46.0
+ engines: {node: '>=10.x'}
+ dev: true
+
+ registry.npmjs.org/@auto-it/core@10.46.0(@types/node@20.9.3)(typescript@5.3.2):
+ resolution: {integrity: sha512-68jWcUuQBFCjgUvEWa64ENeRPULFYiaFpo37H6SUuLcZ2XBD+Bt4Y0yqHWjs6F5g19S7pzOYe25SxWf+U0J4LQ==, tarball: https://registry.npmjs.org/@auto-it/core/-/core-10.46.0.tgz}
+ id: registry.npmjs.org/@auto-it/core/10.46.0
+ name: '@auto-it/core'
+ version: 10.46.0
+ peerDependencies:
+ '@types/node': '*'
+ typescript: '>=2.7'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
+ dependencies:
+ '@auto-it/bot-list': registry.npmjs.org/@auto-it/bot-list@10.46.0
+ '@endemolshinegroup/cosmiconfig-typescript-loader': registry.npmjs.org/@endemolshinegroup/cosmiconfig-typescript-loader@3.0.2(cosmiconfig@7.0.0)(typescript@5.3.2)
+ '@octokit/core': registry.npmjs.org/@octokit/core@3.6.0
+ '@octokit/plugin-enterprise-compatibility': registry.npmjs.org/@octokit/plugin-enterprise-compatibility@1.3.0
+ '@octokit/plugin-retry': registry.npmjs.org/@octokit/plugin-retry@3.0.9
+ '@octokit/plugin-throttling': registry.npmjs.org/@octokit/plugin-throttling@3.7.0(@octokit/core@3.6.0)
+ '@octokit/rest': registry.npmjs.org/@octokit/rest@18.12.0
+ '@types/node': registry.npmjs.org/@types/node@20.9.3
+ await-to-js: registry.npmjs.org/await-to-js@3.0.0
+ chalk: registry.npmjs.org/chalk@4.1.2
+ cosmiconfig: registry.npmjs.org/cosmiconfig@7.0.0
+ deepmerge: registry.npmjs.org/deepmerge@4.3.1
+ dotenv: registry.npmjs.org/dotenv@8.6.0
+ endent: registry.npmjs.org/endent@2.1.0
+ enquirer: registry.npmjs.org/enquirer@2.4.1
+ env-ci: registry.npmjs.org/env-ci@5.5.0
+ fast-glob: registry.npmjs.org/fast-glob@3.3.2
+ fp-ts: registry.npmjs.org/fp-ts@2.16.1
+ fromentries: registry.npmjs.org/fromentries@1.3.2
+ gitlog: registry.npmjs.org/gitlog@4.0.8
+ https-proxy-agent: registry.npmjs.org/https-proxy-agent@5.0.1
+ import-cwd: registry.npmjs.org/import-cwd@3.0.0
+ import-from: registry.npmjs.org/import-from@3.0.0
+ io-ts: registry.npmjs.org/io-ts@2.2.20(fp-ts@2.16.1)
+ lodash.chunk: registry.npmjs.org/lodash.chunk@4.2.0
+ log-symbols: registry.npmjs.org/log-symbols@4.1.0
+ node-fetch: registry.npmjs.org/node-fetch@2.6.7
+ parse-author: registry.npmjs.org/parse-author@2.0.0
+ parse-github-url: registry.npmjs.org/parse-github-url@1.0.2
+ pretty-ms: registry.npmjs.org/pretty-ms@7.0.1
+ requireg: registry.npmjs.org/requireg@0.2.2
+ semver: registry.npmjs.org/semver@7.5.4
+ signale: registry.npmjs.org/signale@1.4.0
+ tapable: registry.npmjs.org/tapable@2.2.1
+ terminal-link: registry.npmjs.org/terminal-link@2.1.1
+ tinycolor2: registry.npmjs.org/tinycolor2@1.6.0
+ ts-node: registry.npmjs.org/ts-node@10.9.1(@types/node@20.9.3)(typescript@5.3.2)
+ tslib: registry.npmjs.org/tslib@2.1.0
+ type-fest: registry.npmjs.org/type-fest@0.21.3
+ typescript: registry.npmjs.org/typescript@5.3.2
+ typescript-memoize: registry.npmjs.org/typescript-memoize@1.1.1
+ url-join: registry.npmjs.org/url-join@4.0.1
+ transitivePeerDependencies:
+ - '@swc/core'
+ - '@swc/wasm'
+ - encoding
+ - supports-color
+ dev: true
+
+ registry.npmjs.org/@auto-it/git-tag@10.46.0(@types/node@20.9.3)(typescript@5.3.2):
+ resolution: {integrity: sha512-2Yo+D8sa/2Zc6nbpWdus18EGYzVvsCTUVRfMYrbMjuE8YqBtv78KlGquLuVvPU1TTdiQTxN2UFTtQt7/66tsUQ==, tarball: https://registry.npmjs.org/@auto-it/git-tag/-/git-tag-10.46.0.tgz}
+ id: registry.npmjs.org/@auto-it/git-tag/10.46.0
+ name: '@auto-it/git-tag'
+ version: 10.46.0
+ dependencies:
+ '@auto-it/core': registry.npmjs.org/@auto-it/core@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ semver: registry.npmjs.org/semver@7.5.4
+ tslib: registry.npmjs.org/tslib@2.1.0
+ transitivePeerDependencies:
+ - '@swc/core'
+ - '@swc/wasm'
+ - '@types/node'
+ - encoding
+ - supports-color
+ - typescript
+ dev: true
+
+ registry.npmjs.org/@auto-it/npm@10.46.0(@types/node@20.9.3)(typescript@5.3.2):
+ resolution: {integrity: sha512-hvwXxRJE70ay4/CMEDtILZvefXqmo+jp/w8FEu4Bo1Kq96AREfH9cO+mgj1nPon5yg353SCcupGV3OyoZt18iw==, tarball: https://registry.npmjs.org/@auto-it/npm/-/npm-10.46.0.tgz}
+ id: registry.npmjs.org/@auto-it/npm/10.46.0
+ name: '@auto-it/npm'
+ version: 10.46.0
+ dependencies:
+ '@auto-it/core': registry.npmjs.org/@auto-it/core@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ '@auto-it/package-json-utils': registry.npmjs.org/@auto-it/package-json-utils@10.46.0
+ await-to-js: registry.npmjs.org/await-to-js@3.0.0
+ endent: registry.npmjs.org/endent@2.1.0
+ env-ci: registry.npmjs.org/env-ci@5.5.0
+ fp-ts: registry.npmjs.org/fp-ts@2.16.1
+ get-monorepo-packages: registry.npmjs.org/get-monorepo-packages@1.2.0
+ io-ts: registry.npmjs.org/io-ts@2.2.20(fp-ts@2.16.1)
+ registry-url: registry.npmjs.org/registry-url@5.1.0
+ semver: registry.npmjs.org/semver@7.5.4
+ tslib: registry.npmjs.org/tslib@2.1.0
+ typescript-memoize: registry.npmjs.org/typescript-memoize@1.1.1
+ url-join: registry.npmjs.org/url-join@4.0.1
+ user-home: registry.npmjs.org/user-home@2.0.0
+ transitivePeerDependencies:
+ - '@swc/core'
+ - '@swc/wasm'
+ - '@types/node'
+ - encoding
+ - supports-color
+ - typescript
+ dev: true
+
+ registry.npmjs.org/@auto-it/package-json-utils@10.46.0:
+ resolution: {integrity: sha512-dl0VW3oJ/JfyuXlVucLlsBaQH69GTkTXLSq9JZ723hT55/owcywDpSlD4YH158hm7Lv5CdHw2u3z60XUlqa6xQ==, tarball: https://registry.npmjs.org/@auto-it/package-json-utils/-/package-json-utils-10.46.0.tgz}
+ name: '@auto-it/package-json-utils'
+ version: 10.46.0
+ engines: {node: '>=10.x'}
+ dependencies:
+ parse-author: registry.npmjs.org/parse-author@2.0.0
+ parse-github-url: registry.npmjs.org/parse-github-url@1.0.2
+ dev: true
+
+ registry.npmjs.org/@auto-it/released@10.46.0(@types/node@20.9.3)(typescript@5.3.2):
+ resolution: {integrity: sha512-U0XYvkcPoO4c4WiJz6PQ8jUOMEH1EjxXRGyvaaZWfZOtr2vquvGDIAs6ntekURcNs75H780K49es18mTLgz9/g==, tarball: https://registry.npmjs.org/@auto-it/released/-/released-10.46.0.tgz}
+ id: registry.npmjs.org/@auto-it/released/10.46.0
+ name: '@auto-it/released'
+ version: 10.46.0
+ dependencies:
+ '@auto-it/bot-list': registry.npmjs.org/@auto-it/bot-list@10.46.0
+ '@auto-it/core': registry.npmjs.org/@auto-it/core@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ deepmerge: registry.npmjs.org/deepmerge@4.3.1
+ fp-ts: registry.npmjs.org/fp-ts@2.16.1
+ io-ts: registry.npmjs.org/io-ts@2.2.20(fp-ts@2.16.1)
+ tslib: registry.npmjs.org/tslib@2.1.0
+ transitivePeerDependencies:
+ - '@swc/core'
+ - '@swc/wasm'
+ - '@types/node'
+ - encoding
+ - supports-color
+ - typescript
+ dev: true
+
+ registry.npmjs.org/@auto-it/version-file@10.46.0(@types/node@20.9.3)(typescript@5.3.2):
+ resolution: {integrity: sha512-V5HEQyGHPCFzH8Fj7RlBebgZ83P0QYXpNTtzPF6az4NLoNvaeZmqkirhx7WEasggVvyfX56GlM6df5jwXXfi7g==, tarball: https://registry.npmjs.org/@auto-it/version-file/-/version-file-10.46.0.tgz}
+ id: registry.npmjs.org/@auto-it/version-file/10.46.0
+ name: '@auto-it/version-file'
+ version: 10.46.0
+ dependencies:
+ '@auto-it/core': registry.npmjs.org/@auto-it/core@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ fp-ts: registry.npmjs.org/fp-ts@2.16.1
+ io-ts: registry.npmjs.org/io-ts@2.2.20(fp-ts@2.16.1)
+ semver: registry.npmjs.org/semver@7.5.4
+ tslib: registry.npmjs.org/tslib@1.10.0
+ transitivePeerDependencies:
+ - '@swc/core'
+ - '@swc/wasm'
+ - '@types/node'
+ - encoding
+ - supports-color
+ - typescript
+ dev: true
+
+ registry.npmjs.org/@babel/code-frame@7.23.4:
+ resolution: {integrity: sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==, tarball: https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.4.tgz}
+ name: '@babel/code-frame'
+ version: 7.23.4
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/highlight': registry.npmjs.org/@babel/highlight@7.23.4
+ chalk: registry.npmjs.org/chalk@2.4.2
+ dev: true
+
+ registry.npmjs.org/@babel/helper-validator-identifier@7.22.20:
+ resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==, tarball: https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz}
+ name: '@babel/helper-validator-identifier'
+ version: 7.22.20
+ engines: {node: '>=6.9.0'}
+ dev: true
+
+ registry.npmjs.org/@babel/highlight@7.23.4:
+ resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==, tarball: https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz}
+ name: '@babel/highlight'
+ version: 7.23.4
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/helper-validator-identifier': registry.npmjs.org/@babel/helper-validator-identifier@7.22.20
+ chalk: registry.npmjs.org/chalk@2.4.2
+ js-tokens: registry.npmjs.org/js-tokens@4.0.0
+ dev: true
+
+ registry.npmjs.org/@cspotcode/source-map-support@0.8.1:
+ resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==, tarball: https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz}
+ name: '@cspotcode/source-map-support'
+ version: 0.8.1
+ engines: {node: '>=12'}
+ dependencies:
+ '@jridgewell/trace-mapping': registry.npmjs.org/@jridgewell/trace-mapping@0.3.9
+ dev: true
+
+ registry.npmjs.org/@endemolshinegroup/cosmiconfig-typescript-loader@3.0.2(cosmiconfig@7.0.0)(typescript@5.3.2):
+ resolution: {integrity: sha512-QRVtqJuS1mcT56oHpVegkKBlgtWjXw/gHNWO3eL9oyB5Sc7HBoc2OLG/nYpVfT/Jejvo3NUrD0Udk7XgoyDKkA==, tarball: https://registry.npmjs.org/@endemolshinegroup/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-3.0.2.tgz}
+ id: registry.npmjs.org/@endemolshinegroup/cosmiconfig-typescript-loader/3.0.2
+ name: '@endemolshinegroup/cosmiconfig-typescript-loader'
+ version: 3.0.2
+ engines: {node: '>=10.0.0'}
+ peerDependencies:
+ cosmiconfig: '>=6'
+ dependencies:
+ cosmiconfig: registry.npmjs.org/cosmiconfig@7.0.0
+ lodash.get: registry.npmjs.org/lodash.get@4.4.2
+ make-error: registry.npmjs.org/make-error@1.3.6
+ ts-node: registry.npmjs.org/ts-node@9.1.1(typescript@5.3.2)
+ tslib: registry.npmjs.org/tslib@2.1.0
+ transitivePeerDependencies:
+ - typescript
+ dev: true
+
+ registry.npmjs.org/@jridgewell/resolve-uri@3.1.1:
+ resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==, tarball: https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz}
+ name: '@jridgewell/resolve-uri'
+ version: 3.1.1
+ engines: {node: '>=6.0.0'}
+ dev: true
+
+ registry.npmjs.org/@jridgewell/sourcemap-codec@1.4.15:
+ resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==, tarball: https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz}
+ name: '@jridgewell/sourcemap-codec'
+ version: 1.4.15
+ dev: true
+
+ registry.npmjs.org/@jridgewell/trace-mapping@0.3.9:
+ resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==, tarball: https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz}
+ name: '@jridgewell/trace-mapping'
+ version: 0.3.9
+ dependencies:
+ '@jridgewell/resolve-uri': registry.npmjs.org/@jridgewell/resolve-uri@3.1.1
+ '@jridgewell/sourcemap-codec': registry.npmjs.org/@jridgewell/sourcemap-codec@1.4.15
+ dev: true
+
+ registry.npmjs.org/@nodelib/fs.scandir@2.1.5:
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, tarball: https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz}
+ name: '@nodelib/fs.scandir'
+ version: 2.1.5
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.stat': registry.npmjs.org/@nodelib/fs.stat@2.0.5
+ run-parallel: registry.npmjs.org/run-parallel@1.2.0
+ dev: true
+
+ registry.npmjs.org/@nodelib/fs.stat@2.0.5:
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, tarball: https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz}
+ name: '@nodelib/fs.stat'
+ version: 2.0.5
+ engines: {node: '>= 8'}
+ dev: true
+
+ registry.npmjs.org/@nodelib/fs.walk@1.2.8:
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, tarball: https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz}
+ name: '@nodelib/fs.walk'
+ version: 1.2.8
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.scandir': registry.npmjs.org/@nodelib/fs.scandir@2.1.5
+ fastq: registry.npmjs.org/fastq@1.15.0
+ dev: true
+
+ registry.npmjs.org/@octokit/auth-token@2.5.0:
+ resolution: {integrity: sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==, tarball: https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz}
+ name: '@octokit/auth-token'
+ version: 2.5.0
+ dependencies:
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ dev: true
+
+ registry.npmjs.org/@octokit/core@3.6.0:
+ resolution: {integrity: sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==, tarball: https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz}
+ name: '@octokit/core'
+ version: 3.6.0
+ dependencies:
+ '@octokit/auth-token': registry.npmjs.org/@octokit/auth-token@2.5.0
+ '@octokit/graphql': registry.npmjs.org/@octokit/graphql@4.8.0
+ '@octokit/request': registry.npmjs.org/@octokit/request@5.6.3
+ '@octokit/request-error': registry.npmjs.org/@octokit/request-error@2.1.0
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ before-after-hook: registry.npmjs.org/before-after-hook@2.2.3
+ universal-user-agent: registry.npmjs.org/universal-user-agent@6.0.1
+ transitivePeerDependencies:
+ - encoding
+ dev: true
+
+ registry.npmjs.org/@octokit/endpoint@6.0.12:
+ resolution: {integrity: sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==, tarball: https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz}
+ name: '@octokit/endpoint'
+ version: 6.0.12
+ dependencies:
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ is-plain-object: registry.npmjs.org/is-plain-object@5.0.0
+ universal-user-agent: registry.npmjs.org/universal-user-agent@6.0.1
+ dev: true
+
+ registry.npmjs.org/@octokit/graphql@4.8.0:
+ resolution: {integrity: sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==, tarball: https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz}
+ name: '@octokit/graphql'
+ version: 4.8.0
+ dependencies:
+ '@octokit/request': registry.npmjs.org/@octokit/request@5.6.3
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ universal-user-agent: registry.npmjs.org/universal-user-agent@6.0.1
+ transitivePeerDependencies:
+ - encoding
+ dev: true
+
+ registry.npmjs.org/@octokit/openapi-types@12.11.0:
+ resolution: {integrity: sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==, tarball: https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz}
+ name: '@octokit/openapi-types'
+ version: 12.11.0
+ dev: true
+
+ registry.npmjs.org/@octokit/plugin-enterprise-compatibility@1.3.0:
+ resolution: {integrity: sha512-h34sMGdEOER/OKrZJ55v26ntdHb9OPfR1fwOx6Q4qYyyhWA104o11h9tFxnS/l41gED6WEI41Vu2G2zHDVC5lQ==, tarball: https://registry.npmjs.org/@octokit/plugin-enterprise-compatibility/-/plugin-enterprise-compatibility-1.3.0.tgz}
+ name: '@octokit/plugin-enterprise-compatibility'
+ version: 1.3.0
+ dependencies:
+ '@octokit/request-error': registry.npmjs.org/@octokit/request-error@2.1.0
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ dev: true
+
+ registry.npmjs.org/@octokit/plugin-paginate-rest@2.21.3(@octokit/core@3.6.0):
+ resolution: {integrity: sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==, tarball: https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz}
+ id: registry.npmjs.org/@octokit/plugin-paginate-rest/2.21.3
+ name: '@octokit/plugin-paginate-rest'
+ version: 2.21.3
+ peerDependencies:
+ '@octokit/core': '>=2'
+ dependencies:
+ '@octokit/core': registry.npmjs.org/@octokit/core@3.6.0
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ dev: true
+
+ registry.npmjs.org/@octokit/plugin-request-log@1.0.4(@octokit/core@3.6.0):
+ resolution: {integrity: sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==, tarball: https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz}
+ id: registry.npmjs.org/@octokit/plugin-request-log/1.0.4
+ name: '@octokit/plugin-request-log'
+ version: 1.0.4
+ peerDependencies:
+ '@octokit/core': '>=3'
+ dependencies:
+ '@octokit/core': registry.npmjs.org/@octokit/core@3.6.0
+ dev: true
+
+ registry.npmjs.org/@octokit/plugin-rest-endpoint-methods@5.16.2(@octokit/core@3.6.0):
+ resolution: {integrity: sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==, tarball: https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz}
+ id: registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/5.16.2
+ name: '@octokit/plugin-rest-endpoint-methods'
+ version: 5.16.2
+ peerDependencies:
+ '@octokit/core': '>=3'
+ dependencies:
+ '@octokit/core': registry.npmjs.org/@octokit/core@3.6.0
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ deprecation: registry.npmjs.org/deprecation@2.3.1
+ dev: true
+
+ registry.npmjs.org/@octokit/plugin-retry@3.0.9:
+ resolution: {integrity: sha512-r+fArdP5+TG6l1Rv/C9hVoty6tldw6cE2pRHNGmFPdyfrc696R6JjrQ3d7HdVqGwuzfyrcaLAKD7K8TX8aehUQ==, tarball: https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-3.0.9.tgz}
+ name: '@octokit/plugin-retry'
+ version: 3.0.9
+ dependencies:
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ bottleneck: registry.npmjs.org/bottleneck@2.19.5
+ dev: true
+
+ registry.npmjs.org/@octokit/plugin-throttling@3.7.0(@octokit/core@3.6.0):
+ resolution: {integrity: sha512-qrKT1Yl/KuwGSC6/oHpLBot3ooC9rq0/ryDYBCpkRtoj+R8T47xTMDT6Tk2CxWopFota/8Pi/2SqArqwC0JPow==, tarball: https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-3.7.0.tgz}
+ id: registry.npmjs.org/@octokit/plugin-throttling/3.7.0
+ name: '@octokit/plugin-throttling'
+ version: 3.7.0
+ peerDependencies:
+ '@octokit/core': ^3.5.0
+ dependencies:
+ '@octokit/core': registry.npmjs.org/@octokit/core@3.6.0
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ bottleneck: registry.npmjs.org/bottleneck@2.19.5
+ dev: true
+
+ registry.npmjs.org/@octokit/request-error@2.1.0:
+ resolution: {integrity: sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==, tarball: https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz}
+ name: '@octokit/request-error'
+ version: 2.1.0
+ dependencies:
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ deprecation: registry.npmjs.org/deprecation@2.3.1
+ once: registry.npmjs.org/once@1.4.0
+ dev: true
+
+ registry.npmjs.org/@octokit/request@5.6.3:
+ resolution: {integrity: sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==, tarball: https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz}
+ name: '@octokit/request'
+ version: 5.6.3
+ dependencies:
+ '@octokit/endpoint': registry.npmjs.org/@octokit/endpoint@6.0.12
+ '@octokit/request-error': registry.npmjs.org/@octokit/request-error@2.1.0
+ '@octokit/types': registry.npmjs.org/@octokit/types@6.41.0
+ is-plain-object: registry.npmjs.org/is-plain-object@5.0.0
+ node-fetch: registry.npmjs.org/node-fetch@2.6.7
+ universal-user-agent: registry.npmjs.org/universal-user-agent@6.0.1
+ transitivePeerDependencies:
+ - encoding
+ dev: true
+
+ registry.npmjs.org/@octokit/rest@18.12.0:
+ resolution: {integrity: sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==, tarball: https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz}
+ name: '@octokit/rest'
+ version: 18.12.0
+ dependencies:
+ '@octokit/core': registry.npmjs.org/@octokit/core@3.6.0
+ '@octokit/plugin-paginate-rest': registry.npmjs.org/@octokit/plugin-paginate-rest@2.21.3(@octokit/core@3.6.0)
+ '@octokit/plugin-request-log': registry.npmjs.org/@octokit/plugin-request-log@1.0.4(@octokit/core@3.6.0)
+ '@octokit/plugin-rest-endpoint-methods': registry.npmjs.org/@octokit/plugin-rest-endpoint-methods@5.16.2(@octokit/core@3.6.0)
+ transitivePeerDependencies:
+ - encoding
+ dev: true
+
+ registry.npmjs.org/@octokit/types@6.41.0:
+ resolution: {integrity: sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==, tarball: https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz}
+ name: '@octokit/types'
+ version: 6.41.0
+ dependencies:
+ '@octokit/openapi-types': registry.npmjs.org/@octokit/openapi-types@12.11.0
+ dev: true
+
+ registry.npmjs.org/@tsconfig/node10@1.0.9:
+ resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==, tarball: https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz}
+ name: '@tsconfig/node10'
+ version: 1.0.9
+ dev: true
+
+ registry.npmjs.org/@tsconfig/node12@1.0.11:
+ resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==, tarball: https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz}
+ name: '@tsconfig/node12'
+ version: 1.0.11
+ dev: true
+
+ registry.npmjs.org/@tsconfig/node14@1.0.3:
+ resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==, tarball: https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz}
+ name: '@tsconfig/node14'
+ version: 1.0.3
+ dev: true
+
+ registry.npmjs.org/@tsconfig/node16@1.0.4:
+ resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==, tarball: https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz}
+ name: '@tsconfig/node16'
+ version: 1.0.4
+ dev: true
+
+ registry.npmjs.org/@types/command-line-args@5.2.3:
+ resolution: {integrity: sha512-uv0aG6R0Y8WHZLTamZwtfsDLVRnOa+n+n5rEvFWL5Na5gZ8V2Teab/duDPFzIIIhs9qizDpcavCusCLJZu62Kw==, tarball: https://registry.npmjs.org/@types/command-line-args/-/command-line-args-5.2.3.tgz}
+ name: '@types/command-line-args'
+ version: 5.2.3
+ dev: true
+
+ registry.npmjs.org/@types/command-line-usage@5.0.4:
+ resolution: {integrity: sha512-BwR5KP3Es/CSht0xqBcUXS3qCAUVXwpRKsV2+arxeb65atasuXG9LykC9Ab10Cw3s2raH92ZqOeILaQbsB2ACg==, tarball: https://registry.npmjs.org/@types/command-line-usage/-/command-line-usage-5.0.4.tgz}
+ name: '@types/command-line-usage'
+ version: 5.0.4
+ dev: true
+
+ registry.npmjs.org/@types/node@20.9.3:
+ resolution: {integrity: sha512-nk5wXLAXGBKfrhLB0cyHGbSqopS+nz0BUgZkUQqSHSSgdee0kssp1IAqlQOu333bW+gMNs2QREx7iynm19Abxw==, tarball: https://registry.npmjs.org/@types/node/-/node-20.9.3.tgz}
+ name: '@types/node'
+ version: 20.9.3
+ dependencies:
+ undici-types: registry.npmjs.org/undici-types@5.26.5
+ dev: true
+
+ registry.npmjs.org/@types/parse-json@4.0.2:
+ resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==, tarball: https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz}
+ name: '@types/parse-json'
+ version: 4.0.2
+ dev: true
+
+ registry.npmjs.org/acorn-walk@8.3.0:
+ resolution: {integrity: sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==, tarball: https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.0.tgz}
+ name: acorn-walk
+ version: 8.3.0
+ engines: {node: '>=0.4.0'}
+ dev: true
+
+ registry.npmjs.org/acorn@8.11.2:
+ resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==, tarball: https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz}
+ name: acorn
+ version: 8.11.2
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+ dev: true
+
+ registry.npmjs.org/agent-base@6.0.2:
+ resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==, tarball: https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz}
+ name: agent-base
+ version: 6.0.2
+ engines: {node: '>= 6.0.0'}
+ dependencies:
+ debug: registry.npmjs.org/debug@4.3.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmjs.org/ansi-colors@4.1.3:
+ resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==, tarball: https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz}
+ name: ansi-colors
+ version: 4.1.3
+ engines: {node: '>=6'}
+ dev: true
+
+ registry.npmjs.org/ansi-escapes@4.3.2:
+ resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==, tarball: https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz}
+ name: ansi-escapes
+ version: 4.3.2
+ engines: {node: '>=8'}
+ dependencies:
+ type-fest: registry.npmjs.org/type-fest@0.21.3
+ dev: true
+
+ registry.npmjs.org/ansi-regex@5.0.1:
+ resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, tarball: https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz}
+ name: ansi-regex
+ version: 5.0.1
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/ansi-styles@3.2.1:
+ resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==, tarball: https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz}
+ name: ansi-styles
+ version: 3.2.1
+ engines: {node: '>=4'}
+ dependencies:
+ color-convert: registry.npmjs.org/color-convert@1.9.3
+ dev: true
+
+ registry.npmjs.org/ansi-styles@4.3.0:
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, tarball: https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz}
+ name: ansi-styles
+ version: 4.3.0
+ engines: {node: '>=8'}
+ dependencies:
+ color-convert: registry.npmjs.org/color-convert@2.0.1
+ dev: true
+
+ registry.npmjs.org/arg@4.1.3:
+ resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==, tarball: https://registry.npmjs.org/arg/-/arg-4.1.3.tgz}
+ name: arg
+ version: 4.1.3
+ dev: true
+
+ registry.npmjs.org/array-back@3.1.0:
+ resolution: {integrity: sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==, tarball: https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz}
+ name: array-back
+ version: 3.1.0
+ engines: {node: '>=6'}
+ dev: true
+
+ registry.npmjs.org/array-back@4.0.2:
+ resolution: {integrity: sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==, tarball: https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz}
+ name: array-back
+ version: 4.0.2
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/array-union@1.0.2:
+ resolution: {integrity: sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==, tarball: https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz}
+ name: array-union
+ version: 1.0.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ array-uniq: registry.npmjs.org/array-uniq@1.0.3
+ dev: true
+
+ registry.npmjs.org/array-uniq@1.0.3:
+ resolution: {integrity: sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==, tarball: https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz}
+ name: array-uniq
+ version: 1.0.3
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/author-regex@1.0.0:
+ resolution: {integrity: sha512-KbWgR8wOYRAPekEmMXrYYdc7BRyhn2Ftk7KWfMUnQ43hFdojWEFRxhhRUm3/OFEdPa1r0KAvTTg9YQK57xTe0g==, tarball: https://registry.npmjs.org/author-regex/-/author-regex-1.0.0.tgz}
+ name: author-regex
+ version: 1.0.0
+ engines: {node: '>=0.8'}
+ dev: true
+
+ registry.npmjs.org/auto@10.46.0(@types/node@20.9.3)(typescript@5.3.2):
+ resolution: {integrity: sha512-LUsn5SWyM6Qdz2i1h4YyDpBYlOUQ0Z+ZcQhDTu8DLLoUuUP4cGf79MCdpRpM1LQVbkqZ2WWi8s/QM4it/FmRjw==, tarball: https://registry.npmjs.org/auto/-/auto-10.46.0.tgz}
+ id: registry.npmjs.org/auto/10.46.0
+ name: auto
+ version: 10.46.0
+ engines: {node: '>=10.x'}
+ hasBin: true
+ dependencies:
+ '@auto-it/core': registry.npmjs.org/@auto-it/core@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ '@auto-it/npm': registry.npmjs.org/@auto-it/npm@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ '@auto-it/released': registry.npmjs.org/@auto-it/released@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ '@auto-it/version-file': registry.npmjs.org/@auto-it/version-file@10.46.0(@types/node@20.9.3)(typescript@5.3.2)
+ await-to-js: registry.npmjs.org/await-to-js@3.0.0
+ chalk: registry.npmjs.org/chalk@4.1.2
+ command-line-application: registry.npmjs.org/command-line-application@0.10.1
+ endent: registry.npmjs.org/endent@2.1.0
+ module-alias: registry.npmjs.org/module-alias@2.2.3
+ signale: registry.npmjs.org/signale@1.4.0
+ terminal-link: registry.npmjs.org/terminal-link@2.1.1
+ tslib: registry.npmjs.org/tslib@2.1.0
+ transitivePeerDependencies:
+ - '@swc/core'
+ - '@swc/wasm'
+ - '@types/node'
+ - encoding
+ - supports-color
+ - typescript
+ dev: true
+
+ registry.npmjs.org/await-to-js@3.0.0:
+ resolution: {integrity: sha512-zJAaP9zxTcvTHRlejau3ZOY4V7SRpiByf3/dxx2uyKxxor19tpmpV2QRsTKikckwhaPmr2dVpxxMr7jOCYVp5g==, tarball: https://registry.npmjs.org/await-to-js/-/await-to-js-3.0.0.tgz}
+ name: await-to-js
+ version: 3.0.0
+ engines: {node: '>=6.0.0'}
+ dev: true
+
+ registry.npmjs.org/balanced-match@1.0.2:
+ resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, tarball: https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz}
+ name: balanced-match
+ version: 1.0.2
+ dev: true
+
+ registry.npmjs.org/before-after-hook@2.2.3:
+ resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==, tarball: https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz}
+ name: before-after-hook
+ version: 2.2.3
+ dev: true
+
+ registry.npmjs.org/bottleneck@2.19.5:
+ resolution: {integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==, tarball: https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz}
+ name: bottleneck
+ version: 2.19.5
+ dev: true
+
+ registry.npmjs.org/brace-expansion@1.1.11:
+ resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, tarball: https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz}
+ name: brace-expansion
+ version: 1.1.11
+ dependencies:
+ balanced-match: registry.npmjs.org/balanced-match@1.0.2
+ concat-map: registry.npmjs.org/concat-map@0.0.1
+ dev: true
+
+ registry.npmjs.org/braces@3.0.2:
+ resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==, tarball: https://registry.npmjs.org/braces/-/braces-3.0.2.tgz}
+ name: braces
+ version: 3.0.2
+ engines: {node: '>=8'}
+ dependencies:
+ fill-range: registry.npmjs.org/fill-range@7.0.1
+ dev: true
+
+ registry.npmjs.org/buffer-from@1.1.2:
+ resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==, tarball: https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz}
+ name: buffer-from
+ version: 1.1.2
+ dev: true
+
+ registry.npmjs.org/callsites@3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==, tarball: https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz}
+ name: callsites
+ version: 3.1.0
+ engines: {node: '>=6'}
+ dev: true
+
+ registry.npmjs.org/chalk@2.4.2:
+ resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, tarball: https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz}
+ name: chalk
+ version: 2.4.2
+ engines: {node: '>=4'}
+ dependencies:
+ ansi-styles: registry.npmjs.org/ansi-styles@3.2.1
+ escape-string-regexp: registry.npmjs.org/escape-string-regexp@1.0.5
+ supports-color: registry.npmjs.org/supports-color@5.5.0
+ dev: true
+
+ registry.npmjs.org/chalk@4.1.2:
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, tarball: https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz}
+ name: chalk
+ version: 4.1.2
+ engines: {node: '>=10'}
+ dependencies:
+ ansi-styles: registry.npmjs.org/ansi-styles@4.3.0
+ supports-color: registry.npmjs.org/supports-color@7.2.0
+ dev: true
+
+ registry.npmjs.org/color-convert@1.9.3:
+ resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==, tarball: https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz}
+ name: color-convert
+ version: 1.9.3
+ dependencies:
+ color-name: registry.npmjs.org/color-name@1.1.3
+ dev: true
+
+ registry.npmjs.org/color-convert@2.0.1:
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, tarball: https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz}
+ name: color-convert
+ version: 2.0.1
+ engines: {node: '>=7.0.0'}
+ dependencies:
+ color-name: registry.npmjs.org/color-name@1.1.4
+ dev: true
+
+ registry.npmjs.org/color-name@1.1.3:
+ resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==, tarball: https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz}
+ name: color-name
+ version: 1.1.3
+ dev: true
+
+ registry.npmjs.org/color-name@1.1.4:
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, tarball: https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz}
+ name: color-name
+ version: 1.1.4
+ dev: true
+
+ registry.npmjs.org/command-line-application@0.10.1:
+ resolution: {integrity: sha512-PWZ4nRkz09MbBRocqEe/Fil3RjTaMNqw0didl1n/i3flDcw/vecVfvsw3r+ZHhGs4BOuW7sk3cEYSdfM3Wv5/Q==, tarball: https://registry.npmjs.org/command-line-application/-/command-line-application-0.10.1.tgz}
+ name: command-line-application
+ version: 0.10.1
+ dependencies:
+ '@types/command-line-args': registry.npmjs.org/@types/command-line-args@5.2.3
+ '@types/command-line-usage': registry.npmjs.org/@types/command-line-usage@5.0.4
+ chalk: registry.npmjs.org/chalk@2.4.2
+ command-line-args: registry.npmjs.org/command-line-args@5.2.1
+ command-line-usage: registry.npmjs.org/command-line-usage@6.1.3
+ meant: registry.npmjs.org/meant@1.0.3
+ remove-markdown: registry.npmjs.org/remove-markdown@0.3.0
+ tslib: registry.npmjs.org/tslib@1.10.0
+ dev: true
+
+ registry.npmjs.org/command-line-args@5.2.1:
+ resolution: {integrity: sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==, tarball: https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz}
+ name: command-line-args
+ version: 5.2.1
+ engines: {node: '>=4.0.0'}
+ dependencies:
+ array-back: registry.npmjs.org/array-back@3.1.0
+ find-replace: registry.npmjs.org/find-replace@3.0.0
+ lodash.camelcase: registry.npmjs.org/lodash.camelcase@4.3.0
+ typical: registry.npmjs.org/typical@4.0.0
+ dev: true
+
+ registry.npmjs.org/command-line-usage@6.1.3:
+ resolution: {integrity: sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==, tarball: https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.3.tgz}
+ name: command-line-usage
+ version: 6.1.3
+ engines: {node: '>=8.0.0'}
+ dependencies:
+ array-back: registry.npmjs.org/array-back@4.0.2
+ chalk: registry.npmjs.org/chalk@2.4.2
+ table-layout: registry.npmjs.org/table-layout@1.0.2
+ typical: registry.npmjs.org/typical@5.2.0
+ dev: true
+
+ registry.npmjs.org/concat-map@0.0.1:
+ resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, tarball: https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz}
+ name: concat-map
+ version: 0.0.1
+ dev: true
+
+ registry.npmjs.org/cosmiconfig@7.0.0:
+ resolution: {integrity: sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==, tarball: https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz}
+ name: cosmiconfig
+ version: 7.0.0
+ engines: {node: '>=10'}
+ dependencies:
+ '@types/parse-json': registry.npmjs.org/@types/parse-json@4.0.2
+ import-fresh: registry.npmjs.org/import-fresh@3.3.0
+ parse-json: registry.npmjs.org/parse-json@5.2.0
+ path-type: registry.npmjs.org/path-type@4.0.0
+ yaml: registry.npmjs.org/yaml@1.10.2
+ dev: true
+
+ registry.npmjs.org/create-require@1.1.1:
+ resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==, tarball: https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz}
+ name: create-require
+ version: 1.1.1
+ dev: true
+
+ registry.npmjs.org/cross-spawn@7.0.3:
+ resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==, tarball: https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz}
+ name: cross-spawn
+ version: 7.0.3
+ engines: {node: '>= 8'}
+ dependencies:
+ path-key: registry.npmjs.org/path-key@3.1.1
+ shebang-command: registry.npmjs.org/shebang-command@2.0.0
+ which: registry.npmjs.org/which@2.0.2
+ dev: true
+
+ registry.npmjs.org/debug@4.3.4:
+ resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, tarball: https://registry.npmjs.org/debug/-/debug-4.3.4.tgz}
+ name: debug
+ version: 4.3.4
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: registry.npmjs.org/ms@2.1.2
+ dev: true
+
+ registry.npmjs.org/dedent@0.7.0:
+ resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==, tarball: https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz}
+ name: dedent
+ version: 0.7.0
+ dev: true
+
+ registry.npmjs.org/deep-extend@0.6.0:
+ resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==, tarball: https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz}
+ name: deep-extend
+ version: 0.6.0
+ engines: {node: '>=4.0.0'}
+ dev: true
+
+ registry.npmjs.org/deepmerge@4.3.1:
+ resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==, tarball: https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz}
+ name: deepmerge
+ version: 4.3.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/deprecation@2.3.1:
+ resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==, tarball: https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz}
+ name: deprecation
+ version: 2.3.1
+ dev: true
+
+ registry.npmjs.org/diff@4.0.2:
+ resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==, tarball: https://registry.npmjs.org/diff/-/diff-4.0.2.tgz}
+ name: diff
+ version: 4.0.2
+ engines: {node: '>=0.3.1'}
+ dev: true
+
+ registry.npmjs.org/dir-glob@2.2.2:
+ resolution: {integrity: sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==, tarball: https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz}
+ name: dir-glob
+ version: 2.2.2
+ engines: {node: '>=4'}
+ dependencies:
+ path-type: registry.npmjs.org/path-type@3.0.0
+ dev: true
+
+ registry.npmjs.org/dotenv@8.6.0:
+ resolution: {integrity: sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==, tarball: https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz}
+ name: dotenv
+ version: 8.6.0
+ engines: {node: '>=10'}
+ dev: true
+
+ registry.npmjs.org/endent@2.1.0:
+ resolution: {integrity: sha512-r8VyPX7XL8U01Xgnb1CjZ3XV+z90cXIJ9JPE/R9SEC9vpw2P6CfsRPJmp20DppC5N7ZAMCmjYkJIa744Iyg96w==, tarball: https://registry.npmjs.org/endent/-/endent-2.1.0.tgz}
+ name: endent
+ version: 2.1.0
+ dependencies:
+ dedent: registry.npmjs.org/dedent@0.7.0
+ fast-json-parse: registry.npmjs.org/fast-json-parse@1.0.3
+ objectorarray: registry.npmjs.org/objectorarray@1.0.5
+ dev: true
+
+ registry.npmjs.org/enquirer@2.4.1:
+ resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==, tarball: https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz}
+ name: enquirer
+ version: 2.4.1
+ engines: {node: '>=8.6'}
+ dependencies:
+ ansi-colors: registry.npmjs.org/ansi-colors@4.1.3
+ strip-ansi: registry.npmjs.org/strip-ansi@6.0.1
+ dev: true
+
+ registry.npmjs.org/env-ci@5.5.0:
+ resolution: {integrity: sha512-o0JdWIbOLP+WJKIUt36hz1ImQQFuN92nhsfTkHHap+J8CiI8WgGpH/a9jEGHh4/TU5BUUGjlnKXNoDb57+ne+A==, tarball: https://registry.npmjs.org/env-ci/-/env-ci-5.5.0.tgz}
+ name: env-ci
+ version: 5.5.0
+ engines: {node: '>=10.17'}
+ dependencies:
+ execa: registry.npmjs.org/execa@5.1.1
+ fromentries: registry.npmjs.org/fromentries@1.3.2
+ java-properties: registry.npmjs.org/java-properties@1.0.2
+ dev: true
+
+ registry.npmjs.org/error-ex@1.3.2:
+ resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==, tarball: https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz}
+ name: error-ex
+ version: 1.3.2
+ dependencies:
+ is-arrayish: registry.npmjs.org/is-arrayish@0.2.1
+ dev: true
+
+ registry.npmjs.org/escape-string-regexp@1.0.5:
+ resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, tarball: https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz}
+ name: escape-string-regexp
+ version: 1.0.5
+ engines: {node: '>=0.8.0'}
+ dev: true
+
+ registry.npmjs.org/execa@5.1.1:
+ resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==, tarball: https://registry.npmjs.org/execa/-/execa-5.1.1.tgz}
+ name: execa
+ version: 5.1.1
+ engines: {node: '>=10'}
+ dependencies:
+ cross-spawn: registry.npmjs.org/cross-spawn@7.0.3
+ get-stream: registry.npmjs.org/get-stream@6.0.1
+ human-signals: registry.npmjs.org/human-signals@2.1.0
+ is-stream: registry.npmjs.org/is-stream@2.0.1
+ merge-stream: registry.npmjs.org/merge-stream@2.0.0
+ npm-run-path: registry.npmjs.org/npm-run-path@4.0.1
+ onetime: registry.npmjs.org/onetime@5.1.2
+ signal-exit: registry.npmjs.org/signal-exit@3.0.7
+ strip-final-newline: registry.npmjs.org/strip-final-newline@2.0.0
+ dev: true
+
+ registry.npmjs.org/fast-glob@3.3.2:
+ resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==, tarball: https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz}
+ name: fast-glob
+ version: 3.3.2
+ engines: {node: '>=8.6.0'}
+ dependencies:
+ '@nodelib/fs.stat': registry.npmjs.org/@nodelib/fs.stat@2.0.5
+ '@nodelib/fs.walk': registry.npmjs.org/@nodelib/fs.walk@1.2.8
+ glob-parent: registry.npmjs.org/glob-parent@5.1.2
+ merge2: registry.npmjs.org/merge2@1.4.1
+ micromatch: registry.npmjs.org/micromatch@4.0.5
+ dev: true
+
+ registry.npmjs.org/fast-json-parse@1.0.3:
+ resolution: {integrity: sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==, tarball: https://registry.npmjs.org/fast-json-parse/-/fast-json-parse-1.0.3.tgz}
+ name: fast-json-parse
+ version: 1.0.3
+ dev: true
+
+ registry.npmjs.org/fastq@1.15.0:
+ resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==, tarball: https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz}
+ name: fastq
+ version: 1.15.0
+ dependencies:
+ reusify: registry.npmjs.org/reusify@1.0.4
+ dev: true
+
+ registry.npmjs.org/figures@2.0.0:
+ resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==, tarball: https://registry.npmjs.org/figures/-/figures-2.0.0.tgz}
+ name: figures
+ version: 2.0.0
+ engines: {node: '>=4'}
+ dependencies:
+ escape-string-regexp: registry.npmjs.org/escape-string-regexp@1.0.5
+ dev: true
+
+ registry.npmjs.org/fill-range@7.0.1:
+ resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, tarball: https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz}
+ name: fill-range
+ version: 7.0.1
+ engines: {node: '>=8'}
+ dependencies:
+ to-regex-range: registry.npmjs.org/to-regex-range@5.0.1
+ dev: true
+
+ registry.npmjs.org/find-replace@3.0.0:
+ resolution: {integrity: sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==, tarball: https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz}
+ name: find-replace
+ version: 3.0.0
+ engines: {node: '>=4.0.0'}
+ dependencies:
+ array-back: registry.npmjs.org/array-back@3.1.0
+ dev: true
+
+ registry.npmjs.org/find-up@2.1.0:
+ resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==, tarball: https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz}
+ name: find-up
+ version: 2.1.0
+ engines: {node: '>=4'}
+ dependencies:
+ locate-path: registry.npmjs.org/locate-path@2.0.0
+ dev: true
+
+ registry.npmjs.org/fp-ts@2.16.1:
+ resolution: {integrity: sha512-by7U5W8dkIzcvDofUcO42yl9JbnHTEDBrzu3pt5fKT+Z4Oy85I21K80EYJYdjQGC2qum4Vo55Ag57iiIK4FYuA==, tarball: https://registry.npmjs.org/fp-ts/-/fp-ts-2.16.1.tgz}
+ name: fp-ts
+ version: 2.16.1
+ dev: true
+
+ registry.npmjs.org/fromentries@1.3.2:
+ resolution: {integrity: sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==, tarball: https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz}
+ name: fromentries
+ version: 1.3.2
+ dev: true
+
+ registry.npmjs.org/fs.realpath@1.0.0:
+ resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, tarball: https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz}
+ name: fs.realpath
+ version: 1.0.0
+ dev: true
+
+ registry.npmjs.org/get-monorepo-packages@1.2.0:
+ resolution: {integrity: sha512-aDP6tH+eM3EuVSp3YyCutOcFS4Y9AhRRH9FAd+cjtR/g63Hx+DCXdKoP1ViRPUJz5wm+BOEXB4FhoffGHxJ7jQ==, tarball: https://registry.npmjs.org/get-monorepo-packages/-/get-monorepo-packages-1.2.0.tgz}
+ name: get-monorepo-packages
+ version: 1.2.0
+ dependencies:
+ globby: registry.npmjs.org/globby@7.1.1
+ load-json-file: registry.npmjs.org/load-json-file@4.0.0
+ dev: true
+
+ registry.npmjs.org/get-stream@6.0.1:
+ resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==, tarball: https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz}
+ name: get-stream
+ version: 6.0.1
+ engines: {node: '>=10'}
+ dev: true
+
+ registry.npmjs.org/gitlog@4.0.8:
+ resolution: {integrity: sha512-FcTLP7Rc0H1vWXD+J/aj5JS1uiCEBblcYXlcacRAT73N26OMYFFzrBXYmDozmWlV2K7zwK5PrH16/nuRNhqSlQ==, tarball: https://registry.npmjs.org/gitlog/-/gitlog-4.0.8.tgz}
+ name: gitlog
+ version: 4.0.8
+ engines: {node: '>= 10.x'}
+ dependencies:
+ debug: registry.npmjs.org/debug@4.3.4
+ tslib: registry.npmjs.org/tslib@2.6.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmjs.org/glob-parent@5.1.2:
+ resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, tarball: https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz}
+ name: glob-parent
+ version: 5.1.2
+ engines: {node: '>= 6'}
+ dependencies:
+ is-glob: registry.npmjs.org/is-glob@4.0.3
+ dev: true
+
+ registry.npmjs.org/glob@7.2.3:
+ resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==, tarball: https://registry.npmjs.org/glob/-/glob-7.2.3.tgz}
+ name: glob
+ version: 7.2.3
+ dependencies:
+ fs.realpath: registry.npmjs.org/fs.realpath@1.0.0
+ inflight: registry.npmjs.org/inflight@1.0.6
+ inherits: registry.npmjs.org/inherits@2.0.4
+ minimatch: registry.npmjs.org/minimatch@3.1.2
+ once: registry.npmjs.org/once@1.4.0
+ path-is-absolute: registry.npmjs.org/path-is-absolute@1.0.1
+ dev: true
+
+ registry.npmjs.org/globby@7.1.1:
+ resolution: {integrity: sha512-yANWAN2DUcBtuus5Cpd+SKROzXHs2iVXFZt/Ykrfz6SAXqacLX25NZpltE+39ceMexYF4TtEadjuSTw8+3wX4g==, tarball: https://registry.npmjs.org/globby/-/globby-7.1.1.tgz}
+ name: globby
+ version: 7.1.1
+ engines: {node: '>=4'}
+ dependencies:
+ array-union: registry.npmjs.org/array-union@1.0.2
+ dir-glob: registry.npmjs.org/dir-glob@2.2.2
+ glob: registry.npmjs.org/glob@7.2.3
+ ignore: registry.npmjs.org/ignore@3.3.10
+ pify: registry.npmjs.org/pify@3.0.0
+ slash: registry.npmjs.org/slash@1.0.0
+ dev: true
+
+ registry.npmjs.org/graceful-fs@4.2.11:
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==, tarball: https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz}
+ name: graceful-fs
+ version: 4.2.11
+ dev: true
+
+ registry.npmjs.org/has-flag@3.0.0:
+ resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==, tarball: https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz}
+ name: has-flag
+ version: 3.0.0
+ engines: {node: '>=4'}
+ dev: true
+
+ registry.npmjs.org/has-flag@4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, tarball: https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz}
+ name: has-flag
+ version: 4.0.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/https-proxy-agent@5.0.1:
+ resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==, tarball: https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz}
+ name: https-proxy-agent
+ version: 5.0.1
+ engines: {node: '>= 6'}
+ dependencies:
+ agent-base: registry.npmjs.org/agent-base@6.0.2
+ debug: registry.npmjs.org/debug@4.3.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmjs.org/human-signals@2.1.0:
+ resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==, tarball: https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz}
+ name: human-signals
+ version: 2.1.0
+ engines: {node: '>=10.17.0'}
+ dev: true
+
+ registry.npmjs.org/ignore@3.3.10:
+ resolution: {integrity: sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==, tarball: https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz}
+ name: ignore
+ version: 3.3.10
+ dev: true
+
+ registry.npmjs.org/import-cwd@3.0.0:
+ resolution: {integrity: sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==, tarball: https://registry.npmjs.org/import-cwd/-/import-cwd-3.0.0.tgz}
+ name: import-cwd
+ version: 3.0.0
+ engines: {node: '>=8'}
+ dependencies:
+ import-from: registry.npmjs.org/import-from@3.0.0
+ dev: true
+
+ registry.npmjs.org/import-fresh@3.3.0:
+ resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==, tarball: https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz}
+ name: import-fresh
+ version: 3.3.0
+ engines: {node: '>=6'}
+ dependencies:
+ parent-module: registry.npmjs.org/parent-module@1.0.1
+ resolve-from: registry.npmjs.org/resolve-from@4.0.0
+ dev: true
+
+ registry.npmjs.org/import-from@3.0.0:
+ resolution: {integrity: sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==, tarball: https://registry.npmjs.org/import-from/-/import-from-3.0.0.tgz}
+ name: import-from
+ version: 3.0.0
+ engines: {node: '>=8'}
+ dependencies:
+ resolve-from: registry.npmjs.org/resolve-from@5.0.0
+ dev: true
+
+ registry.npmjs.org/inflight@1.0.6:
+ resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, tarball: https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz}
+ name: inflight
+ version: 1.0.6
+ dependencies:
+ once: registry.npmjs.org/once@1.4.0
+ wrappy: registry.npmjs.org/wrappy@1.0.2
+ dev: true
+
+ registry.npmjs.org/inherits@2.0.4:
+ resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, tarball: https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz}
+ name: inherits
+ version: 2.0.4
+ dev: true
+
+ registry.npmjs.org/ini@1.3.8:
+ resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==, tarball: https://registry.npmjs.org/ini/-/ini-1.3.8.tgz}
+ name: ini
+ version: 1.3.8
+ dev: true
+
+ registry.npmjs.org/io-ts@2.2.20(fp-ts@2.16.1):
+ resolution: {integrity: sha512-Rq2BsYmtwS5vVttie4rqrOCIfHCS9TgpRLFpKQCM1wZBBRY9nWVGmEvm2FnDbSE2un1UE39DvFpTR5UL47YDcA==, tarball: https://registry.npmjs.org/io-ts/-/io-ts-2.2.20.tgz}
+ id: registry.npmjs.org/io-ts/2.2.20
+ name: io-ts
+ version: 2.2.20
+ peerDependencies:
+ fp-ts: ^2.5.0
+ dependencies:
+ fp-ts: registry.npmjs.org/fp-ts@2.16.1
+ dev: true
+
+ registry.npmjs.org/is-arrayish@0.2.1:
+ resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==, tarball: https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz}
+ name: is-arrayish
+ version: 0.2.1
+ dev: true
+
+ registry.npmjs.org/is-extglob@2.1.1:
+ resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, tarball: https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz}
+ name: is-extglob
+ version: 2.1.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/is-glob@4.0.3:
+ resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, tarball: https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz}
+ name: is-glob
+ version: 4.0.3
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-extglob: registry.npmjs.org/is-extglob@2.1.1
+ dev: true
+
+ registry.npmjs.org/is-number@7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, tarball: https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz}
+ name: is-number
+ version: 7.0.0
+ engines: {node: '>=0.12.0'}
+ dev: true
+
+ registry.npmjs.org/is-plain-object@5.0.0:
+ resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==, tarball: https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz}
+ name: is-plain-object
+ version: 5.0.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/is-stream@2.0.1:
+ resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==, tarball: https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz}
+ name: is-stream
+ version: 2.0.1
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/is-unicode-supported@0.1.0:
+ resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==, tarball: https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz}
+ name: is-unicode-supported
+ version: 0.1.0
+ engines: {node: '>=10'}
+ dev: true
+
+ registry.npmjs.org/isexe@2.0.0:
+ resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, tarball: https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz}
+ name: isexe
+ version: 2.0.0
+ dev: true
+
+ registry.npmjs.org/java-properties@1.0.2:
+ resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==, tarball: https://registry.npmjs.org/java-properties/-/java-properties-1.0.2.tgz}
+ name: java-properties
+ version: 1.0.2
+ engines: {node: '>= 0.6.0'}
+ dev: true
+
+ registry.npmjs.org/js-tokens@4.0.0:
+ resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==, tarball: https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz}
+ name: js-tokens
+ version: 4.0.0
+ dev: true
+
+ registry.npmjs.org/json-parse-better-errors@1.0.2:
+ resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==, tarball: https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz}
+ name: json-parse-better-errors
+ version: 1.0.2
+ dev: true
+
+ registry.npmjs.org/json-parse-even-better-errors@2.3.1:
+ resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==, tarball: https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz}
+ name: json-parse-even-better-errors
+ version: 2.3.1
+ dev: true
+
+ registry.npmjs.org/lines-and-columns@1.2.4:
+ resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==, tarball: https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz}
+ name: lines-and-columns
+ version: 1.2.4
+ dev: true
+
+ registry.npmjs.org/load-json-file@4.0.0:
+ resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==, tarball: https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz}
+ name: load-json-file
+ version: 4.0.0
+ engines: {node: '>=4'}
+ dependencies:
+ graceful-fs: registry.npmjs.org/graceful-fs@4.2.11
+ parse-json: registry.npmjs.org/parse-json@4.0.0
+ pify: registry.npmjs.org/pify@3.0.0
+ strip-bom: registry.npmjs.org/strip-bom@3.0.0
+ dev: true
+
+ registry.npmjs.org/locate-path@2.0.0:
+ resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==, tarball: https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz}
+ name: locate-path
+ version: 2.0.0
+ engines: {node: '>=4'}
+ dependencies:
+ p-locate: registry.npmjs.org/p-locate@2.0.0
+ path-exists: registry.npmjs.org/path-exists@3.0.0
+ dev: true
+
+ registry.npmjs.org/lodash.camelcase@4.3.0:
+ resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==, tarball: https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz}
+ name: lodash.camelcase
+ version: 4.3.0
+ dev: true
+
+ registry.npmjs.org/lodash.chunk@4.2.0:
+ resolution: {integrity: sha512-ZzydJKfUHJwHa+hF5X66zLFCBrWn5GeF28OHEr4WVWtNDXlQ/IjWKPBiikqKo2ne0+v6JgCgJ0GzJp8k8bHC7w==, tarball: https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz}
+ name: lodash.chunk
+ version: 4.2.0
+ dev: true
+
+ registry.npmjs.org/lodash.get@4.4.2:
+ resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==, tarball: https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz}
+ name: lodash.get
+ version: 4.4.2
+ dev: true
+
+ registry.npmjs.org/log-symbols@4.1.0:
+ resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==, tarball: https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz}
+ name: log-symbols
+ version: 4.1.0
+ engines: {node: '>=10'}
+ dependencies:
+ chalk: registry.npmjs.org/chalk@4.1.2
+ is-unicode-supported: registry.npmjs.org/is-unicode-supported@0.1.0
+ dev: true
+
+ registry.npmjs.org/lru-cache@6.0.0:
+ resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==, tarball: https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz}
+ name: lru-cache
+ version: 6.0.0
+ engines: {node: '>=10'}
+ dependencies:
+ yallist: registry.npmjs.org/yallist@4.0.0
+ dev: true
+
+ registry.npmjs.org/make-error@1.3.6:
+ resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, tarball: https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz}
+ name: make-error
+ version: 1.3.6
+ dev: true
+
+ registry.npmjs.org/meant@1.0.3:
+ resolution: {integrity: sha512-88ZRGcNxAq4EH38cQ4D85PM57pikCwS8Z99EWHODxN7KBY+UuPiqzRTtZzS8KTXO/ywSWbdjjJST2Hly/EQxLw==, tarball: https://registry.npmjs.org/meant/-/meant-1.0.3.tgz}
+ name: meant
+ version: 1.0.3
+ dev: true
+
+ registry.npmjs.org/merge-stream@2.0.0:
+ resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==, tarball: https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz}
+ name: merge-stream
+ version: 2.0.0
+ dev: true
+
+ registry.npmjs.org/merge2@1.4.1:
+ resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, tarball: https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz}
+ name: merge2
+ version: 1.4.1
+ engines: {node: '>= 8'}
+ dev: true
+
+ registry.npmjs.org/micromatch@4.0.5:
+ resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==, tarball: https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz}
+ name: micromatch
+ version: 4.0.5
+ engines: {node: '>=8.6'}
+ dependencies:
+ braces: registry.npmjs.org/braces@3.0.2
+ picomatch: registry.npmjs.org/picomatch@2.3.1
+ dev: true
+
+ registry.npmjs.org/mimic-fn@2.1.0:
+ resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, tarball: https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz}
+ name: mimic-fn
+ version: 2.1.0
+ engines: {node: '>=6'}
+ dev: true
+
+ registry.npmjs.org/minimatch@3.1.2:
+ resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, tarball: https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz}
+ name: minimatch
+ version: 3.1.2
+ dependencies:
+ brace-expansion: registry.npmjs.org/brace-expansion@1.1.11
+ dev: true
+
+ registry.npmjs.org/minimist@1.2.8:
+ resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==, tarball: https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz}
+ name: minimist
+ version: 1.2.8
+ dev: true
+
+ registry.npmjs.org/module-alias@2.2.3:
+ resolution: {integrity: sha512-23g5BFj4zdQL/b6tor7Ji+QY4pEfNH784BMslY9Qb0UnJWRAt+lQGLYmRaM0KDBwIG23ffEBELhZDP2rhi9f/Q==, tarball: https://registry.npmjs.org/module-alias/-/module-alias-2.2.3.tgz}
+ name: module-alias
+ version: 2.2.3
+ dev: true
+
+ registry.npmjs.org/ms@2.1.2:
+ resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, tarball: https://registry.npmjs.org/ms/-/ms-2.1.2.tgz}
+ name: ms
+ version: 2.1.2
+ dev: true
+
+ registry.npmjs.org/nested-error-stacks@2.0.1:
+ resolution: {integrity: sha512-SrQrok4CATudVzBS7coSz26QRSmlK9TzzoFbeKfcPBUFPjcQM9Rqvr/DlJkOrwI/0KcgvMub1n1g5Jt9EgRn4A==, tarball: https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.0.1.tgz}
+ name: nested-error-stacks
+ version: 2.0.1
+ dev: true
+
+ registry.npmjs.org/node-fetch@2.6.7:
+ resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==, tarball: https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz}
+ name: node-fetch
+ version: 2.6.7
+ engines: {node: 4.x || >=6.0.0}
+ peerDependencies:
+ encoding: ^0.1.0
+ peerDependenciesMeta:
+ encoding:
+ optional: true
+ dependencies:
+ whatwg-url: registry.npmjs.org/whatwg-url@5.0.0
+ dev: true
+
+ registry.npmjs.org/npm-run-path@4.0.1:
+ resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==, tarball: https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz}
+ name: npm-run-path
+ version: 4.0.1
+ engines: {node: '>=8'}
+ dependencies:
+ path-key: registry.npmjs.org/path-key@3.1.1
+ dev: true
+
+ registry.npmjs.org/objectorarray@1.0.5:
+ resolution: {integrity: sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg==, tarball: https://registry.npmjs.org/objectorarray/-/objectorarray-1.0.5.tgz}
+ name: objectorarray
+ version: 1.0.5
+ dev: true
+
+ registry.npmjs.org/once@1.4.0:
+ resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, tarball: https://registry.npmjs.org/once/-/once-1.4.0.tgz}
+ name: once
+ version: 1.4.0
+ dependencies:
+ wrappy: registry.npmjs.org/wrappy@1.0.2
+ dev: true
+
+ registry.npmjs.org/onetime@5.1.2:
+ resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==, tarball: https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz}
+ name: onetime
+ version: 5.1.2
+ engines: {node: '>=6'}
+ dependencies:
+ mimic-fn: registry.npmjs.org/mimic-fn@2.1.0
+ dev: true
+
+ registry.npmjs.org/os-homedir@1.0.2:
+ resolution: {integrity: sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==, tarball: https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz}
+ name: os-homedir
+ version: 1.0.2
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/p-limit@1.3.0:
+ resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==, tarball: https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz}
+ name: p-limit
+ version: 1.3.0
+ engines: {node: '>=4'}
+ dependencies:
+ p-try: registry.npmjs.org/p-try@1.0.0
+ dev: true
+
+ registry.npmjs.org/p-locate@2.0.0:
+ resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==, tarball: https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz}
+ name: p-locate
+ version: 2.0.0
+ engines: {node: '>=4'}
+ dependencies:
+ p-limit: registry.npmjs.org/p-limit@1.3.0
+ dev: true
+
+ registry.npmjs.org/p-try@1.0.0:
+ resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==, tarball: https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz}
+ name: p-try
+ version: 1.0.0
+ engines: {node: '>=4'}
+ dev: true
+
+ registry.npmjs.org/parent-module@1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==, tarball: https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz}
+ name: parent-module
+ version: 1.0.1
+ engines: {node: '>=6'}
+ dependencies:
+ callsites: registry.npmjs.org/callsites@3.1.0
+ dev: true
+
+ registry.npmjs.org/parse-author@2.0.0:
+ resolution: {integrity: sha512-yx5DfvkN8JsHL2xk2Os9oTia467qnvRgey4ahSm2X8epehBLx/gWLcy5KI+Y36ful5DzGbCS6RazqZGgy1gHNw==, tarball: https://registry.npmjs.org/parse-author/-/parse-author-2.0.0.tgz}
+ name: parse-author
+ version: 2.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ author-regex: registry.npmjs.org/author-regex@1.0.0
+ dev: true
+
+ registry.npmjs.org/parse-github-url@1.0.2:
+ resolution: {integrity: sha512-kgBf6avCbO3Cn6+RnzRGLkUsv4ZVqv/VfAYkRsyBcgkshNvVBkRn1FEZcW0Jb+npXQWm2vHPnnOqFteZxRRGNw==, tarball: https://registry.npmjs.org/parse-github-url/-/parse-github-url-1.0.2.tgz}
+ name: parse-github-url
+ version: 1.0.2
+ engines: {node: '>=0.10.0'}
+ hasBin: true
+ dev: true
+
+ registry.npmjs.org/parse-json@4.0.0:
+ resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==, tarball: https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz}
+ name: parse-json
+ version: 4.0.0
+ engines: {node: '>=4'}
+ dependencies:
+ error-ex: registry.npmjs.org/error-ex@1.3.2
+ json-parse-better-errors: registry.npmjs.org/json-parse-better-errors@1.0.2
+ dev: true
+
+ registry.npmjs.org/parse-json@5.2.0:
+ resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==, tarball: https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz}
+ name: parse-json
+ version: 5.2.0
+ engines: {node: '>=8'}
+ dependencies:
+ '@babel/code-frame': registry.npmjs.org/@babel/code-frame@7.23.4
+ error-ex: registry.npmjs.org/error-ex@1.3.2
+ json-parse-even-better-errors: registry.npmjs.org/json-parse-even-better-errors@2.3.1
+ lines-and-columns: registry.npmjs.org/lines-and-columns@1.2.4
+ dev: true
+
+ registry.npmjs.org/parse-ms@2.1.0:
+ resolution: {integrity: sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==, tarball: https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz}
+ name: parse-ms
+ version: 2.1.0
+ engines: {node: '>=6'}
+ dev: true
+
+ registry.npmjs.org/path-exists@3.0.0:
+ resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==, tarball: https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz}
+ name: path-exists
+ version: 3.0.0
+ engines: {node: '>=4'}
+ dev: true
+
+ registry.npmjs.org/path-is-absolute@1.0.1:
+ resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==, tarball: https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz}
+ name: path-is-absolute
+ version: 1.0.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/path-key@3.1.1:
+ resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==, tarball: https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz}
+ name: path-key
+ version: 3.1.1
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/path-parse@1.0.7:
+ resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, tarball: https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz}
+ name: path-parse
+ version: 1.0.7
+ dev: true
+
+ registry.npmjs.org/path-type@3.0.0:
+ resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==, tarball: https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz}
+ name: path-type
+ version: 3.0.0
+ engines: {node: '>=4'}
+ dependencies:
+ pify: registry.npmjs.org/pify@3.0.0
+ dev: true
+
+ registry.npmjs.org/path-type@4.0.0:
+ resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==, tarball: https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz}
+ name: path-type
+ version: 4.0.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/picomatch@2.3.1:
+ resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, tarball: https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz}
+ name: picomatch
+ version: 2.3.1
+ engines: {node: '>=8.6'}
+ dev: true
+
+ registry.npmjs.org/pify@3.0.0:
+ resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==, tarball: https://registry.npmjs.org/pify/-/pify-3.0.0.tgz}
+ name: pify
+ version: 3.0.0
+ engines: {node: '>=4'}
+ dev: true
+
+ registry.npmjs.org/pkg-conf@2.1.0:
+ resolution: {integrity: sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==, tarball: https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz}
+ name: pkg-conf
+ version: 2.1.0
+ engines: {node: '>=4'}
+ dependencies:
+ find-up: registry.npmjs.org/find-up@2.1.0
+ load-json-file: registry.npmjs.org/load-json-file@4.0.0
+ dev: true
+
+ registry.npmjs.org/pretty-ms@7.0.1:
+ resolution: {integrity: sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==, tarball: https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz}
+ name: pretty-ms
+ version: 7.0.1
+ engines: {node: '>=10'}
+ dependencies:
+ parse-ms: registry.npmjs.org/parse-ms@2.1.0
+ dev: true
+
+ registry.npmjs.org/queue-microtask@1.2.3:
+ resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, tarball: https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz}
+ name: queue-microtask
+ version: 1.2.3
+ dev: true
+
+ registry.npmjs.org/rc@1.2.8:
+ resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==, tarball: https://registry.npmjs.org/rc/-/rc-1.2.8.tgz}
+ name: rc
+ version: 1.2.8
+ hasBin: true
+ dependencies:
+ deep-extend: registry.npmjs.org/deep-extend@0.6.0
+ ini: registry.npmjs.org/ini@1.3.8
+ minimist: registry.npmjs.org/minimist@1.2.8
+ strip-json-comments: registry.npmjs.org/strip-json-comments@2.0.1
+ dev: true
+
+ registry.npmjs.org/reduce-flatten@2.0.0:
+ resolution: {integrity: sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==, tarball: https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-2.0.0.tgz}
+ name: reduce-flatten
+ version: 2.0.0
+ engines: {node: '>=6'}
+ dev: true
+
+ registry.npmjs.org/registry-url@5.1.0:
+ resolution: {integrity: sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==, tarball: https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz}
+ name: registry-url
+ version: 5.1.0
+ engines: {node: '>=8'}
+ dependencies:
+ rc: registry.npmjs.org/rc@1.2.8
+ dev: true
+
+ registry.npmjs.org/remove-markdown@0.3.0:
+ resolution: {integrity: sha512-5392eIuy1mhjM74739VunOlsOYKjsH82rQcTBlJ1bkICVC3dQ3ksQzTHh4jGHQFnM+1xzLzcFOMH+BofqXhroQ==, tarball: https://registry.npmjs.org/remove-markdown/-/remove-markdown-0.3.0.tgz}
+ name: remove-markdown
+ version: 0.3.0
+ dev: true
+
+ registry.npmjs.org/requireg@0.2.2:
+ resolution: {integrity: sha512-nYzyjnFcPNGR3lx9lwPPPnuQxv6JWEZd2Ci0u9opN7N5zUEPIhY/GbL3vMGOr2UXwEg9WwSyV9X9Y/kLFgPsOg==, tarball: https://registry.npmjs.org/requireg/-/requireg-0.2.2.tgz}
+ name: requireg
+ version: 0.2.2
+ engines: {node: '>= 4.0.0'}
+ dependencies:
+ nested-error-stacks: registry.npmjs.org/nested-error-stacks@2.0.1
+ rc: registry.npmjs.org/rc@1.2.8
+ resolve: registry.npmjs.org/resolve@1.7.1
+ dev: true
+
+ registry.npmjs.org/resolve-from@4.0.0:
+ resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==, tarball: https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz}
+ name: resolve-from
+ version: 4.0.0
+ engines: {node: '>=4'}
+ dev: true
+
+ registry.npmjs.org/resolve-from@5.0.0:
+ resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==, tarball: https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz}
+ name: resolve-from
+ version: 5.0.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/resolve@1.7.1:
+ resolution: {integrity: sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==, tarball: https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz}
+ name: resolve
+ version: 1.7.1
+ dependencies:
+ path-parse: registry.npmjs.org/path-parse@1.0.7
+ dev: true
+
+ registry.npmjs.org/reusify@1.0.4:
+ resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, tarball: https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz}
+ name: reusify
+ version: 1.0.4
+ engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/run-parallel@1.2.0:
+ resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, tarball: https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz}
+ name: run-parallel
+ version: 1.2.0
+ dependencies:
+ queue-microtask: registry.npmjs.org/queue-microtask@1.2.3
+ dev: true
+
+ registry.npmjs.org/semver@7.5.4:
+ resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==, tarball: https://registry.npmjs.org/semver/-/semver-7.5.4.tgz}
+ name: semver
+ version: 7.5.4
+ engines: {node: '>=10'}
+ hasBin: true
+ dependencies:
+ lru-cache: registry.npmjs.org/lru-cache@6.0.0
+ dev: true
+
+ registry.npmjs.org/shebang-command@2.0.0:
+ resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, tarball: https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz}
+ name: shebang-command
+ version: 2.0.0
+ engines: {node: '>=8'}
+ dependencies:
+ shebang-regex: registry.npmjs.org/shebang-regex@3.0.0
+ dev: true
+
+ registry.npmjs.org/shebang-regex@3.0.0:
+ resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, tarball: https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz}
+ name: shebang-regex
+ version: 3.0.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/signal-exit@3.0.7:
+ resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==, tarball: https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz}
+ name: signal-exit
+ version: 3.0.7
+ dev: true
+
+ registry.npmjs.org/signale@1.4.0:
+ resolution: {integrity: sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==, tarball: https://registry.npmjs.org/signale/-/signale-1.4.0.tgz}
+ name: signale
+ version: 1.4.0
+ engines: {node: '>=6'}
+ dependencies:
+ chalk: registry.npmjs.org/chalk@2.4.2
+ figures: registry.npmjs.org/figures@2.0.0
+ pkg-conf: registry.npmjs.org/pkg-conf@2.1.0
+ dev: true
+
+ registry.npmjs.org/slash@1.0.0:
+ resolution: {integrity: sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==, tarball: https://registry.npmjs.org/slash/-/slash-1.0.0.tgz}
+ name: slash
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/source-map-support@0.5.21:
+ resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==, tarball: https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz}
+ name: source-map-support
+ version: 0.5.21
+ dependencies:
+ buffer-from: registry.npmjs.org/buffer-from@1.1.2
+ source-map: registry.npmjs.org/source-map@0.6.1
+ dev: true
+
+ registry.npmjs.org/source-map@0.6.1:
+ resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, tarball: https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz}
+ name: source-map
+ version: 0.6.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/strip-ansi@6.0.1:
+ resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, tarball: https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz}
+ name: strip-ansi
+ version: 6.0.1
+ engines: {node: '>=8'}
+ dependencies:
+ ansi-regex: registry.npmjs.org/ansi-regex@5.0.1
+ dev: true
+
+ registry.npmjs.org/strip-bom@3.0.0:
+ resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==, tarball: https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz}
+ name: strip-bom
+ version: 3.0.0
+ engines: {node: '>=4'}
+ dev: true
+
+ registry.npmjs.org/strip-final-newline@2.0.0:
+ resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==, tarball: https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz}
+ name: strip-final-newline
+ version: 2.0.0
+ engines: {node: '>=6'}
+ dev: true
+
+ registry.npmjs.org/strip-json-comments@2.0.1:
+ resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==, tarball: https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz}
+ name: strip-json-comments
+ version: 2.0.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmjs.org/supports-color@5.5.0:
+ resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==, tarball: https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz}
+ name: supports-color
+ version: 5.5.0
+ engines: {node: '>=4'}
+ dependencies:
+ has-flag: registry.npmjs.org/has-flag@3.0.0
+ dev: true
+
+ registry.npmjs.org/supports-color@7.2.0:
+ resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, tarball: https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz}
+ name: supports-color
+ version: 7.2.0
+ engines: {node: '>=8'}
+ dependencies:
+ has-flag: registry.npmjs.org/has-flag@4.0.0
+ dev: true
+
+ registry.npmjs.org/supports-hyperlinks@2.3.0:
+ resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==, tarball: https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz}
+ name: supports-hyperlinks
+ version: 2.3.0
+ engines: {node: '>=8'}
+ dependencies:
+ has-flag: registry.npmjs.org/has-flag@4.0.0
+ supports-color: registry.npmjs.org/supports-color@7.2.0
+ dev: true
+
+ registry.npmjs.org/table-layout@1.0.2:
+ resolution: {integrity: sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==, tarball: https://registry.npmjs.org/table-layout/-/table-layout-1.0.2.tgz}
+ name: table-layout
+ version: 1.0.2
+ engines: {node: '>=8.0.0'}
+ dependencies:
+ array-back: registry.npmjs.org/array-back@4.0.2
+ deep-extend: registry.npmjs.org/deep-extend@0.6.0
+ typical: registry.npmjs.org/typical@5.2.0
+ wordwrapjs: registry.npmjs.org/wordwrapjs@4.0.1
+ dev: true
+
+ registry.npmjs.org/tapable@2.2.1:
+ resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==, tarball: https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz}
+ name: tapable
+ version: 2.2.1
+ engines: {node: '>=6'}
+ dev: true
+
+ registry.npmjs.org/terminal-link@2.1.1:
+ resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==, tarball: https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz}
+ name: terminal-link
+ version: 2.1.1
+ engines: {node: '>=8'}
+ dependencies:
+ ansi-escapes: registry.npmjs.org/ansi-escapes@4.3.2
+ supports-hyperlinks: registry.npmjs.org/supports-hyperlinks@2.3.0
+ dev: true
+
+ registry.npmjs.org/tinycolor2@1.6.0:
+ resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==, tarball: https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz}
+ name: tinycolor2
+ version: 1.6.0
+ dev: true
+
+ registry.npmjs.org/to-regex-range@5.0.1:
+ resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, tarball: https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz}
+ name: to-regex-range
+ version: 5.0.1
+ engines: {node: '>=8.0'}
+ dependencies:
+ is-number: registry.npmjs.org/is-number@7.0.0
+ dev: true
+
+ registry.npmjs.org/tr46@0.0.3:
+ resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==, tarball: https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz}
+ name: tr46
+ version: 0.0.3
+ dev: true
+
+ registry.npmjs.org/ts-node@10.9.1(@types/node@20.9.3)(typescript@5.3.2):
+ resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==, tarball: https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz}
+ id: registry.npmjs.org/ts-node/10.9.1
+ name: ts-node
+ version: 10.9.1
+ hasBin: true
+ peerDependencies:
+ '@swc/core': '>=1.2.50'
+ '@swc/wasm': '>=1.2.50'
+ '@types/node': '*'
+ typescript: '>=2.7'
+ peerDependenciesMeta:
+ '@swc/core':
+ optional: true
+ '@swc/wasm':
+ optional: true
+ dependencies:
+ '@cspotcode/source-map-support': registry.npmjs.org/@cspotcode/source-map-support@0.8.1
+ '@tsconfig/node10': registry.npmjs.org/@tsconfig/node10@1.0.9
+ '@tsconfig/node12': registry.npmjs.org/@tsconfig/node12@1.0.11
+ '@tsconfig/node14': registry.npmjs.org/@tsconfig/node14@1.0.3
+ '@tsconfig/node16': registry.npmjs.org/@tsconfig/node16@1.0.4
+ '@types/node': registry.npmjs.org/@types/node@20.9.3
+ acorn: registry.npmjs.org/acorn@8.11.2
+ acorn-walk: registry.npmjs.org/acorn-walk@8.3.0
+ arg: registry.npmjs.org/arg@4.1.3
+ create-require: registry.npmjs.org/create-require@1.1.1
+ diff: registry.npmjs.org/diff@4.0.2
+ make-error: registry.npmjs.org/make-error@1.3.6
+ typescript: registry.npmjs.org/typescript@5.3.2
+ v8-compile-cache-lib: registry.npmjs.org/v8-compile-cache-lib@3.0.1
+ yn: registry.npmjs.org/yn@3.1.1
+ dev: true
+
+ registry.npmjs.org/ts-node@9.1.1(typescript@5.3.2):
+ resolution: {integrity: sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==, tarball: https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz}
+ id: registry.npmjs.org/ts-node/9.1.1
+ name: ts-node
+ version: 9.1.1
+ engines: {node: '>=10.0.0'}
+ hasBin: true
+ peerDependencies:
+ typescript: '>=2.7'
+ dependencies:
+ arg: registry.npmjs.org/arg@4.1.3
+ create-require: registry.npmjs.org/create-require@1.1.1
+ diff: registry.npmjs.org/diff@4.0.2
+ make-error: registry.npmjs.org/make-error@1.3.6
+ source-map-support: registry.npmjs.org/source-map-support@0.5.21
+ typescript: registry.npmjs.org/typescript@5.3.2
+ yn: registry.npmjs.org/yn@3.1.1
+ dev: true
+
+ registry.npmjs.org/tslib@1.10.0:
+ resolution: {integrity: sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==, tarball: https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz}
+ name: tslib
+ version: 1.10.0
+ dev: true
+
+ registry.npmjs.org/tslib@2.1.0:
+ resolution: {integrity: sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==, tarball: https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz}
+ name: tslib
+ version: 2.1.0
+ dev: true
+
+ registry.npmjs.org/tslib@2.6.2:
+ resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==, tarball: https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz}
+ name: tslib
+ version: 2.6.2
+ dev: true
+
+ registry.npmjs.org/type-fest@0.21.3:
+ resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==, tarball: https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz}
+ name: type-fest
+ version: 0.21.3
+ engines: {node: '>=10'}
+ dev: true
+
+ registry.npmjs.org/typescript-memoize@1.1.1:
+ resolution: {integrity: sha512-GQ90TcKpIH4XxYTI2F98yEQYZgjNMOGPpOgdjIBhaLaWji5HPWlRnZ4AeA1hfBxtY7bCGDJsqDDHk/KaHOl5bA==, tarball: https://registry.npmjs.org/typescript-memoize/-/typescript-memoize-1.1.1.tgz}
+ name: typescript-memoize
+ version: 1.1.1
+ dev: true
+
+ registry.npmjs.org/typescript@5.3.2:
+ resolution: {integrity: sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==, tarball: https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz}
+ name: typescript
+ version: 5.3.2
+ engines: {node: '>=14.17'}
+ hasBin: true
+ dev: true
+
+ registry.npmjs.org/typical@4.0.0:
+ resolution: {integrity: sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==, tarball: https://registry.npmjs.org/typical/-/typical-4.0.0.tgz}
+ name: typical
+ version: 4.0.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/typical@5.2.0:
+ resolution: {integrity: sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==, tarball: https://registry.npmjs.org/typical/-/typical-5.2.0.tgz}
+ name: typical
+ version: 5.2.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmjs.org/undici-types@5.26.5:
+ resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==, tarball: https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz}
+ name: undici-types
+ version: 5.26.5
+ dev: true
+
+ registry.npmjs.org/universal-user-agent@6.0.1:
+ resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==, tarball: https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz}
+ name: universal-user-agent
+ version: 6.0.1
+ dev: true
+
+ registry.npmjs.org/url-join@4.0.1:
+ resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==, tarball: https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz}
+ name: url-join
+ version: 4.0.1
+ dev: true
+
+ registry.npmjs.org/user-home@2.0.0:
+ resolution: {integrity: sha512-KMWqdlOcjCYdtIJpicDSFBQ8nFwS2i9sslAd6f4+CBGcU4gist2REnr2fxj2YocvJFxSF3ZOHLYLVZnUxv4BZQ==, tarball: https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz}
+ name: user-home
+ version: 2.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ os-homedir: registry.npmjs.org/os-homedir@1.0.2
+ dev: true
+
+ registry.npmjs.org/v8-compile-cache-lib@3.0.1:
+ resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==, tarball: https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz}
+ name: v8-compile-cache-lib
+ version: 3.0.1
+ dev: true
+
+ registry.npmjs.org/webidl-conversions@3.0.1:
+ resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==, tarball: https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz}
+ name: webidl-conversions
+ version: 3.0.1
+ dev: true
+
+ registry.npmjs.org/whatwg-url@5.0.0:
+ resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==, tarball: https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz}
+ name: whatwg-url
+ version: 5.0.0
+ dependencies:
+ tr46: registry.npmjs.org/tr46@0.0.3
+ webidl-conversions: registry.npmjs.org/webidl-conversions@3.0.1
+ dev: true
+
+ registry.npmjs.org/which@2.0.2:
+ resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==, tarball: https://registry.npmjs.org/which/-/which-2.0.2.tgz}
+ name: which
+ version: 2.0.2
+ engines: {node: '>= 8'}
+ hasBin: true
+ dependencies:
+ isexe: registry.npmjs.org/isexe@2.0.0
+ dev: true
+
+ registry.npmjs.org/wordwrapjs@4.0.1:
+ resolution: {integrity: sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==, tarball: https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz}
+ name: wordwrapjs
+ version: 4.0.1
+ engines: {node: '>=8.0.0'}
+ dependencies:
+ reduce-flatten: registry.npmjs.org/reduce-flatten@2.0.0
+ typical: registry.npmjs.org/typical@5.2.0
+ dev: true
+
+ registry.npmjs.org/wrappy@1.0.2:
+ resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, tarball: https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz}
+ name: wrappy
+ version: 1.0.2
+ dev: true
+
+ registry.npmjs.org/yallist@4.0.0:
+ resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, tarball: https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz}
+ name: yallist
+ version: 4.0.0
+ dev: true
+
+ registry.npmjs.org/yaml@1.10.2:
+ resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==, tarball: https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz}
+ name: yaml
+ version: 1.10.2
+ engines: {node: '>= 6'}
+ dev: true
+
+ registry.npmjs.org/yn@3.1.1:
+ resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==, tarball: https://registry.npmjs.org/yn/-/yn-3.1.1.tgz}
+ name: yn
+ version: 3.1.1
+ engines: {node: '>=6'}
+ dev: true
diff --git a/swift/BUILD b/swift/BUILD
deleted file mode 100644
index e69de29..0000000
diff --git a/swift/conf.bzl b/swift/conf.bzl
deleted file mode 100644
index 0bb0c1c..0000000
--- a/swift/conf.bzl
+++ /dev/null
@@ -1,3 +0,0 @@
-load("//swift:rules_deps.bzl", "rules_deps")
-
-swift = rules_deps
diff --git a/swift/extra_deps.bzl b/swift/extra_deps.bzl
deleted file mode 100644
index c5204dd..0000000
--- a/swift/extra_deps.bzl
+++ /dev/null
@@ -1,7 +0,0 @@
-load(
- "@build_bazel_rules_swift//swift:extras.bzl",
- "swift_rules_extra_dependencies",
-)
-
-def extra_deps():
- swift_rules_extra_dependencies()
diff --git a/swift/rules_deps.bzl b/swift/rules_deps.bzl
deleted file mode 100644
index 696bd03..0000000
--- a/swift/rules_deps.bzl
+++ /dev/null
@@ -1,7 +0,0 @@
-load(
- "@build_bazel_rules_swift//swift:repositories.bzl",
- "swift_rules_dependencies",
-)
-
-def rules_deps():
- swift_rules_dependencies()
diff --git a/swift/workspace.bzl b/swift/workspace.bzl
deleted file mode 100644
index 59884e3..0000000
--- a/swift/workspace.bzl
+++ /dev/null
@@ -1,9 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
-load("//internal:maybe.bzl", "maybe")
-
-def swift():
- http_archive(
- name = "build_bazel_rules_swift",
- sha256 = "f872c0388808c3f8de67e0c6d39b0beac4a65d7e07eff3ced123d0b102046fb6",
- url = "https://github.com/bazelbuild/rules_swift/releases/download/0.21.0/rules_swift.0.21.0.tar.gz",
- )
diff --git a/workspace.bzl b/workspace.bzl
deleted file mode 100644
index 7a4a1e3..0000000
--- a/workspace.bzl
+++ /dev/null
@@ -1,23 +0,0 @@
-load("//android:workspace.bzl", "android")
-load("//apple:workspace.bzl", "apple")
-load("//bazel:workspace.bzl", "skylib")
-load("//cocoapods:workspace.bzl", "cocoapods")
-load("//distribution:workspace.bzl", "distribution")
-load("//junit5:workspace.bzl", "junit5")
-load("//kotlin:workspace.bzl", "kotlin")
-load("//maven:workspace.bzl", "maven_repository")
-load("//javascript:workspace.bzl", "javascript")
-
-def deps(
- android_api_version = None,
- android_build_tools_version = None
-):
- android(api_level = android_api_version, build_tools_version = android_build_tools_version)
- apple()
- skylib()
- distribution()
- junit5()
- kotlin()
- maven_repository()
- javascript()
- cocoapods()