diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..7957282
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,65 @@
+name: Package CI
+
+on:
+ pull_request:
+ push:
+ branches:
+ - master
+ workflow_dispatch:
+
+permissions:
+ contents: read
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
+ cancel-in-progress: true
+
+jobs:
+ package:
+ name: React Native package
+ runs-on: ubuntu-latest
+ timeout-minutes: 30
+ steps:
+ - name: Checkout
+ uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
+
+ - name: Set up Node 24.15.0
+ uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
+ with:
+ node-version: 24.15.0
+
+ - name: Install Corepack bootstrap
+ run: npm install --global corepack@0.36.0
+
+ - name: Enable pinned Yarn
+ run: |
+ corepack enable
+ yarn --version | grep -Fx '4.5.1'
+
+ - name: Resolve Yarn cache
+ id: yarn-cache
+ shell: bash
+ run: echo "path=$(yarn config get cacheFolder)" >> "$GITHUB_OUTPUT"
+
+ - name: Cache Yarn packages
+ uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
+ with:
+ path: ${{ steps.yarn-cache.outputs.path }}
+ key: yarn-${{ runner.os }}-node-24.15.0-${{ hashFiles('yarn.lock') }}
+ restore-keys: |
+ yarn-${{ runner.os }}-node-24.15.0-
+
+ - name: Install immutable dependencies
+ run: yarn install --immutable
+
+ - name: Run package release preflight
+ run: yarn release:check
+
+ - name: Upload informational Jest coverage
+ if: always()
+ uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
+ with:
+ name: react-native-awesome-button-coverage
+ path: coverage/
+ if-no-files-found: ignore
+ retention-days: 14
diff --git a/.gitignore b/.gitignore
index 5a6cf50..8b8d15f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -57,6 +57,9 @@ yarn-debug.log
yarn-error.log
.yarn/*
demo/.yarn/
+coverage/
+temp/
+*.tgz
# BUCK
buck-out/
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..ab16aaf
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,14 @@
+# Changelog
+
+## Unreleased
+
+- Added the typed `buttonStyle`, `containerStyle`, `faceHeight`, `autoWidth`, eventless `onLongPressAction`, accessibility text, and canonical `x` compatibility bridges without changing 3.1.0 legacy meanings.
+- Hardened callback freshness, cancellation, one-shot progress completion, teardown, Reduced Motion, large-text, RTL, and theme-transition ownership.
+- Added package-owned compatibility, lifecycle, sizing, accessibility, normalization, and theme regressions.
+- Added deterministic release preflight, API-report, documentation-coverage, package-shape, coverage, and CI configuration. These gates do not publish the package.
+- Preserved explicitly requested flat visual styling while disabled; disabled state still blocks activation.
+- Adopted the shared grapheme-aware text-transition timeline, per-frame native fit checks, 30% width/text choreography, constrained single-line fallback, stable accessibility identity, and Reduced Motion settlement.
+- Prevented non-scrambled auto-width growth from publishing a longer label before the face can fit it; shrink still swaps the shorter label before contracting.
+- Hardened final label settlement with conservative physical-pixel fit and a generation-matched native text/layout acknowledgement before stable wrapping resumes.
+
+See [MIGRATION.md](./MIGRATION.md) for compatibility details and deferred major-version debt.
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..a78fdf1
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,28 @@
+# Contributing
+
+## Toolchain
+
+- Node 24.15.0
+- Corepack 0.36.0 with Yarn 4.5.1
+- npm is used only to bootstrap Corepack and inspect the publication tarball;
+ Yarn remains the sole project dependency resolver
+
+Bootstrap the package root with:
+
+```sh
+npm install --global corepack@0.36.0
+corepack enable
+yarn install --immutable
+```
+
+Run the complete non-publishing package gate with:
+
+```sh
+yarn release:check
+```
+
+That command checks formatting, ESLint, TypeScript, package-owned Jest coverage, the built package, the reviewed API report, exported TSDoc coverage, and the npm tarball manifest. It never updates the API baseline or publishes.
+
+To review an intentional API change, run `yarn prepare` followed by `yarn api:report`, inspect `etc/react-native-awesome-button.api.md`, and update `CHANGELOG.md` plus `MIGRATION.md`. CI uses `yarn api:check` and never rewrites the report.
+
+Tests belong under `src/__tests__`. The Expo demo is a showcase and is not an automated package-test target. Physical-device accessibility, keyboard, RTL, large-text, and Reduced Motion checks remain manual runtime evidence.
diff --git a/MIGRATION.md b/MIGRATION.md
new file mode 100644
index 0000000..d23b3d2
--- /dev/null
+++ b/MIGRATION.md
@@ -0,0 +1,42 @@
+# Migration Guide
+
+## From 3.1.0 to the engineering-hardening bridge
+
+This pass preserves every 3.1.0 call site while exposing the shared Awesome Button vocabulary. It does not silently enable a new geometry mode.
+
+| Existing API | Bridge API | Current behavior | Future major intent |
+| ------------------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
+| Outer `style` | `containerStyle` | Both remain valid; `containerStyle` wins conflicts. | Rename the typed visual surface to `style` after removing the outer-style collision. |
+| `activityColor` | `buttonStyle.activityColor` | The typed field wins. | Remove the top-level alias. |
+| `activeOpacity` | `buttonStyle.activeOpacity` | The typed field wins. | Remove the top-level alias. |
+| `backgroundActive` | `buttonStyle.backgroundActive` | The typed field wins. | Remove the top-level alias. |
+| `backgroundColor` | `buttonStyle.backgroundColor` | The typed field wins. | Remove the top-level alias. |
+| `backgroundPlaceholder` | `buttonStyle.backgroundPlaceholder` | The typed field wins. | Remove the top-level alias. |
+| `backgroundProgress` | `buttonStyle.backgroundProgress` | The typed field wins. | Remove the top-level alias. |
+| `borderColor` | `buttonStyle.borderColor` | The typed field wins. | Remove the top-level alias. |
+| `borderRadius` | `buttonStyle.borderRadius` | The typed field wins. | Remove the top-level alias. |
+| `borderTopLeftRadius` | `buttonStyle.borderTopLeftRadius` | The typed field wins. | Remove the top-level alias. |
+| `borderTopRightRadius` | `buttonStyle.borderTopRightRadius` | The typed field wins. | Remove the top-level alias. |
+| `borderBottomLeftRadius` | `buttonStyle.borderBottomLeftRadius` | The typed field wins. | Remove the top-level alias. |
+| `borderBottomRightRadius` | `buttonStyle.borderBottomRightRadius` | The typed field wins. | Remove the top-level alias. |
+| `borderWidth` | `buttonStyle.borderWidth` | The typed field wins. | Remove the top-level alias. |
+| `paddingHorizontal` | `buttonStyle.paddingHorizontal` | The typed field wins. | Remove the top-level alias. |
+| `paddingTop` | `buttonStyle.paddingTop` | The typed field wins. | Remove the top-level alias. |
+| `paddingBottom` | `buttonStyle.paddingBottom` | The typed field wins. | Remove the top-level alias. |
+| `textFontFamily` | `buttonStyle.textFontFamily` | The typed field wins. | Remove the top-level alias. |
+| `textLineHeight` | `buttonStyle.textLineHeight` | The typed field wins. | Remove the top-level alias. |
+| `textSize` | `buttonStyle.textSize` | The typed field wins. | Remove the top-level alias. |
+| Stack-oriented `height` | `faceHeight` | `faceHeight` wins while `height` retains 3.1.0 geometry. | Make `height` mean face height. |
+| `width="auto"` | `autoWidth` on `ThemedButton` | An explicit `autoWidth` decision wins. | Keep one canonical sizing vocabulary. |
+| Eventful `onLongPress` | `onLongPressAction` | The eventless action wins and supports assistive activation; the legacy callback remains physical-only. | Make the eventless action canonical. |
+| `raiseLevel` | `buttonStyle.raiseAmount` | The typed field wins. | Remove `raiseLevel`. |
+| `borderLeftBottomRadius` | `buttonStyle.borderBottomLeftRadius` | The correctly named typed field wins. | Remove the misspelled alias. |
+| `backgroundDarker` | `buttonStyle.depthColor` | The typed field wins. | Remove the legacy alias. |
+| `backgroundShadow` | `buttonStyle.shadowColor` | The typed field wins. | Remove the legacy alias. |
+| `textColor` | `buttonStyle.foregroundColor` | The typed field wins. | Remove the legacy alias. |
+| `springRelease={false}` | Native spring release | The legacy non-spring path remains callable. | Use the native spring unconditionally. |
+| `twitter` | `x` | `twitter` remains callable; `AwesomeButtonVariant` accepts `x`. | Review removal only in a separately authorized major. |
+
+React Native still retains its 3.1.0 direct geometry defaults and 100 ms press fallback. Other governed ports use the neutral 140 ms fallback. This remains explicit cross-platform debt rather than an implicit behavior change.
+
+No package version or release is selected by this document. Review the checked-in API report and `CHANGELOG.md` before adopting the bridge.
diff --git a/PERFORMANCE.md b/PERFORMANCE.md
new file mode 100644
index 0000000..7b63f59
--- /dev/null
+++ b/PERFORMANCE.md
@@ -0,0 +1,17 @@
+# Performance Evidence
+
+Pass 5 treats performance evidence as informational. It does not establish a release threshold.
+
+The package-owned benchmark records React Profiler commit counts for a mounted button receiving rapid A → B → C callback, style, content, and size updates. It also verifies that unmount cleanup prevents post-removal progress and animation dispatch. Run it with:
+
+```sh
+yarn test performanceBaseline --runInBand
+```
+
+## Pass 5 local baseline
+
+Recorded on 2026-08-30 using a 14-core Apple M3 Max MacBook Pro with 36 GB memory, macOS 26.6.2 (25G83), arm64, Node 24.15.0, Yarn 4.5.1, React 18.2.0, and React Native 0.76.0. Jest ran serially in its package test/development transform environment; this is not an optimized application build or a device frame-rate measurement.
+
+After five unrecorded warm-up repetitions, 25 measured repetitions each mounted one core button, committed three rapid callback/style/content/height replacements, and unmounted it. React Profiler reported exactly eight commits per repetition. The wall-clock median was 2.679 ms with a median absolute deviation of 0.206 ms. Wall-clock values are retained only as local comparison evidence and are never asserted by CI. A second regression verifies that teardown cancels queued progress completion.
+
+A future performance change must retain the observable-behavior tests, rerun the same method on a declared host, and include before/after evidence. No README performance claim is authorized from this initial baseline.
diff --git a/README.md b/README.md
index 42ab0c2..f9b9573 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,8 @@
# React Native Awesome Button
-`@rcaferati/react-native-awesome-button` is the current npm package for this repo.
+`@rcaferati/react-native-awesome-button` brings the Awesome Button interaction,
+progress, sizing, and theme system to React Native with native `Pressable`,
+accessibility, and animation behavior.
The library exports:
@@ -9,22 +11,23 @@ The library exports:
- `getTheme`
- explicit TypeScript types such as `AwesomeButtonProps`, `ThemedButtonProps`, `ButtonWidth`, `ThemeName`, `ButtonVariant`, and `ButtonSize`
-|
|
|
|
-| --- | --- | --- |
+|
|
|
|
+| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-## Install
+## Live Demo
Try the live package demo on [expo.dev](https://snack.expo.dev/@rcaferati/react-native-awesome-button).
-[
](https://snack.expo.dev/@rcaferati/react-native-awesome-button)
+[
](https://snack.expo.dev/@rcaferati/react-native-awesome-button)
## Figma File
-Import the button visuals directly into your [Figma](https://www.figma.com/file/Ug8sNPzmevU3ZQus9Klu5aHq/react-awesome-button-theme-blue) project.
+Explore the shared Awesome Button visual system in the [Figma design file](https://www.figma.com/file/Ug8sNPzmevU3ZQus9Klu5aHq/react-awesome-button-theme-blue). The Figma file is a visual design reference; this package's documentation defines its behavior, accessibility, and public API contract.
-[
](https://www.figma.com/file/Ug8sNPzmevU3ZQus9Klu5aHq/react-awesome-button-theme-blue)
+[
](https://www.figma.com/file/Ug8sNPzmevU3ZQus9Klu5aHq/react-awesome-button-theme-blue)
+
+## Installation
-## Install
```bash
npm install @rcaferati/react-native-awesome-button
```
@@ -46,22 +49,27 @@ export function SaveButton() {
`AwesomeButton` supports both plain string labels and arbitrary React Native content.
-## Size Changes
+## Features
+
+### Size Changes
`animateSize` is enabled by default.
-- fixed-size `width` / `height` changes animate with `125ms cubic-bezier(0.3, 0.05, 0.2, 1)`
+- fixed-size changes animate with the package's 175 ms size transition
- auto-width string labels grow and shrink when their measured target width changes
- with `textTransition` plus auto width:
- - wider labels grow first, then animate text
- - narrower labels animate text first, then shrink
-- `animateSize={false}` keeps size changes instant
+ - wider labels start growing immediately and begin text at 30% of the text timeline
+ - narrower labels begin text immediately and start shrinking at 30%
+ - every transient grapheme frame is measured before it is shown, so an unconstrained auto-width label cannot wrap or clip
+- without `textTransition`, wider labels keep the fitting source visible until the target fits; the target remains clipped to one line until a matching native layout commit confirms physical-pixel fit, while narrower labels swap before width shrinks
+- fixed, stretch, and externally constrained transitions stay on one clipped line; stable labels regain normal wrapping after settlement
+- text scrambling uses Unicode grapheme clusters, metric-aware Latin pools, a 7 ms slot stagger, and a native frame clock
+- `animateSize={false}` settles target geometry before text begins; Reduced Motion settles both immediately
+- accessibility keeps exposing the stable target label rather than randomized visual frames
- fixed-to-auto and auto-to-fixed changes remain instant in `3.1.0`
```tsx
-import AwesomeButton, {
- ThemedButton,
-} from '@rcaferati/react-native-awesome-button';
+import { ThemedButton } from '@rcaferati/react-native-awesome-button';
export function SizeExample({
isLong,
@@ -74,8 +82,12 @@ export function SizeExample({
return (
<>
- {label}
- {label}
+
+ {label}
+
+
+ {label}
+
{size}
@@ -84,7 +96,7 @@ export function SizeExample({
}
```
-## Progress Buttons
+### Progress Buttons
When `progress` is enabled, `onPress` receives a `next` callback. Call it when your work is done to complete the progress animation and release the button.
@@ -107,7 +119,7 @@ export function SubmitButton() {
}
```
-## Themed Buttons
+### Themed Buttons
```tsx
import { ThemedButton } from '@rcaferati/react-native-awesome-button';
@@ -144,7 +156,7 @@ export function ThemeConfigExample() {
`getTheme()` safely falls back to the default `basic` theme if the provided index or name is invalid.
-## Before / After / Extra Content
+### Before / After / Extra Content
Use `before` and `after` for inline content that should animate with the label, and `extra` for content rendered behind the button body.
@@ -172,7 +184,7 @@ export function ButtonContentExample() {
}
```
-## Transparent Buttons
+### Transparent Buttons
`transparent` is supported on `ThemedButton`. It removes the visible shell layers while preserving the content, hit target, and active/progress feedback.
@@ -209,6 +221,7 @@ export function TransparentExample() {
- `danger`
- `disabled`
- `flat`
+- `x` (canonical request-only bridge)
- `twitter`
- `messenger`
- `facebook`
@@ -219,7 +232,15 @@ export function TransparentExample() {
- `pinterest`
- `youtube`
-Unknown variants fall back safely at runtime instead of crashing, but only the variants above are part of the typed built-in API.
+`x` is the canonical social request. The legacy closed `ButtonVariant` and
+`SocialButtonVariant` unions still contain `twitter` so exhaustive v3.1
+consumers remain source-compatible; `ThemedButtonProps.type` accepts the
+request-only `AwesomeButtonVariant` bridge, which adds `x`. A custom theme's
+optional `x` style wins for an `x` request and otherwise falls back to its
+required legacy `twitter` style. A `twitter` request continues to use the
+legacy key.
+
+Unknown variants fall back safely at runtime instead of crashing.
### Sizes
@@ -228,88 +249,178 @@ Unknown variants fall back safely at runtime instead of crashing, but only the v
- `medium`
- `large`
-## Selected Props
-
-The public prop surface is typed through `AwesomeButtonProps` and `ThemedButtonProps`.
-
-### AwesomeButton Props
-
-| Attribute | Type | Default | Description |
-| --- | --- | --- | --- |
-| `activityColor` | `string` | `#FFFFFF` | Activity indicator color shown during progress mode. |
-| `activeOpacity` | `number` | `1` | Opacity applied while the button is pressed. |
-| `animatedPlaceholder` | `boolean` | `true` | Enables the shimmer loop when the button has no `children`. |
-| `animateSize` | `boolean` | `true` | Animates fixed-size geometry changes and auto-width string-label changes. |
-| `backgroundActive` | `string` | `rgba(0, 0, 0, 0.15)` | Active overlay color rendered over the face while pressed. |
-| `backgroundColor` | `string` | `#c0c0c0` | Main front-face background color. |
-| `backgroundDarker` | `string` | `#9f9f9f` | Bottom-face background color used for the raised 3D effect. |
-| `backgroundPlaceholder` | `string` | `rgba(0, 0, 0, 0.15)` | Placeholder bar background color when the button is empty. |
-| `backgroundProgress` | `string` | `rgba(0, 0, 0, 0.15)` | Progress bar background color used during `progress` mode. |
-| `backgroundShadow` | `string` | `rgba(0, 0, 0, 0.15)` | Shadow layer background color. |
-| `before` | `ReactNode` | `null` | Content rendered before the main label inside the button face. |
-| `after` | `ReactNode` | `null` | Content rendered after the main label inside the button face. |
-| `extra` | `ReactNode` | `null` | Content rendered behind the active/content layers, useful for gradients and custom backgrounds. |
-| `children` | `ReactNode` | `null` | Button label or custom content. Plain string labels also support `textTransition`. |
-| `borderColor` | `string` | `undefined` | Front-face border color. |
-| `borderRadius` | `number` | `4` | Shared border radius applied to the button face and lower layers. |
-| `borderBottomLeftRadius` | `number` | `undefined` | Bottom-left radius override. |
-| `borderBottomRightRadius` | `number` | `undefined` | Bottom-right radius override. |
-| `borderTopLeftRadius` | `number` | `undefined` | Top-left radius override. |
-| `borderTopRightRadius` | `number` | `undefined` | Top-right radius override. |
-| `borderWidth` | `number` | `0` | Front-face border width. |
-| `dangerouslySetPressableProps` | `AwesomeButtonPressableProps` | `{}` | Escape hatch for extra `Pressable` props. Core `onPress`, `onPressIn`, and `onPressOut` remain owned by the component. |
-| `debouncedPressTime` | `number` | `0` | Debounces `onPress` in milliseconds. |
-| `disabled` | `boolean` | `false` | Disables interactions and marks the internal `Pressable` as disabled. |
-| `height` | `number` | `60` | Base button height before padding and raise-level adjustments. |
-| `hitSlop` | `PressableProps['hitSlop']` | `undefined` | Optional press target expansion. |
-| `paddingHorizontal` | `number` | `16` | Horizontal content padding. |
-| `paddingTop` | `number` | `0` | Additional top padding for the content row. |
-| `paddingBottom` | `number` | `0` | Additional bottom padding for the content row. |
-| `progress` | `boolean` | `false` | Enables the progress-button flow. `onPress` receives a `next` callback in this mode. |
-| `progressLoadingTime` | `number` | `3000` | Duration of the loading bar animation in progress mode. |
-| `showProgressBar` | `boolean` | `true` | Keeps the progress indicator visible while the button is in loading mode. |
-| `raiseLevel` | `number` | `4` | Vertical raise distance used to render the 3D depth effect. |
-| `springRelease` | `boolean` | `true` | Uses spring-based release animation instead of timing-based release. |
-| `stretch` | `boolean` | `false` | Makes the button fill the available horizontal space. |
-| `style` | `StyleProp` | `undefined` | Extra style applied to the outer animated container. |
-| `textColor` | `string` | `#FFFFFF` | Default label text color. |
-| `textFontFamily` | `string` | `undefined` | Optional font family for string labels. |
-| `textLineHeight` | `number` | `20` | Placeholder bar height and string label line-height baseline. |
-| `textSize` | `number` | `14` | Default font size for string labels. |
-| `textTransition` | `boolean` | `false` | Enables the built-in scramble/reveal animation for plain string labels. In auto-width mode, wider labels grow first and narrower labels shrink last. |
-| `width` | `number \| 'auto' \| null` | `null` | Fixed width, measured auto width (`null` / `'auto'`), or pair with `stretch` for full width. Auto-width string labels can now both grow and shrink. |
-| `onPress` | `(next?) => void` | `() => undefined` | Main press callback. In `progress` mode it receives the completion handler. |
-| `onLongPress` | `PressableProps['onLongPress']` | `undefined` | Native long-press callback forwarded to `Pressable`. |
-| `onPressIn` | `(event) => void` | `() => undefined` | Native press-in observer callback. |
-| `onPressOut` | `(event) => void` | `() => undefined` | Native press-out observer callback. |
-| `onPressedIn` | `() => void` | `() => undefined` | Fires after the internal press-in animation completes. |
-| `onPressedOut` | `() => void` | `() => undefined` | Fires after the internal release animation completes. |
-| `onProgressStart` | `() => void` | `() => undefined` | Fires when progress mode transitions into loading. |
-| `onProgressEnd` | `() => void` | `() => undefined` | Fires when progress mode finishes and the button releases. |
-
-### ThemedButton Additional Props
-
-| Attribute | Type | Default | Description |
-| --- | --- | --- | --- |
-| `config` | `ThemeDefinition` | `undefined` | Explicit theme object. When provided, it takes precedence over `name` and `index`. |
-| `flat` | `boolean` | `false` | Requests the `flat` theme variant when available. |
-| `index` | `number \| null` | `null` | Theme index used by `getTheme(index)` when `config` and `name` are not provided. |
-| `name` | `ThemeName \| null` | `null` | Named built-in theme selector. Falls back safely to `basic` if invalid. |
-| `size` | `ButtonSize` | `medium` | Built-in theme size preset: `icon`, `small`, `medium`, or `large`. |
-| `transparent` | `boolean` | `false` | Makes the visible shell layers transparent while keeping content, press, and progress feedback active. |
-| `type` | `ButtonVariant` | `primary` | Built-in variant to resolve from the selected theme. |
+## API Reference
+
+The tables below cover the primary consumer-facing props. The checked-in
+[API Extractor report](etc/react-native-awesome-button.api.md) and exported
+`AwesomeButtonProps` / `ThemedButtonProps` types are the complete public
+TypeScript reference.
+
+### AwesomeButton
+
+| Attribute | Type | Default | Description |
+| ------------------------------ | ------------------------------- | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| `activityColor` | `string` | `#FFFFFF` | Activity indicator color shown during progress mode. |
+| `activeOpacity` | `number` | `1` | Opacity applied while the button is pressed. |
+| `animatedPlaceholder` | `boolean` | `true` | Enables the shimmer loop when the button has no `children`. |
+| `animateSize` | `boolean` | `true` | Animates fixed-size geometry changes and auto-width string-label changes. |
+| `backgroundActive` | `string` | `rgba(0, 0, 0, 0.15)` | Active overlay color rendered over the face while pressed. |
+| `backgroundColor` | `string` | `#c0c0c0` | Main front-face background color. |
+| `backgroundDarker` | `string` | `#9f9f9f` | Bottom-face background color used for the raised 3D effect. |
+| `backgroundPlaceholder` | `string` | `rgba(0, 0, 0, 0.15)` | Placeholder bar background color when the button is empty. |
+| `backgroundProgress` | `string` | `rgba(0, 0, 0, 0.15)` | Progress bar background color used during `progress` mode. |
+| `backgroundShadow` | `string` | `rgba(0, 0, 0, 0.15)` | Shadow layer background color. |
+| `before` | `ReactNode` | `null` | Content rendered before the main label inside the button face. |
+| `after` | `ReactNode` | `null` | Content rendered after the main label inside the button face. |
+| `extra` | `ReactNode` | `null` | Content rendered behind the active/content layers, useful for gradients and custom backgrounds. |
+| `children` | `ReactNode` | `null` | Button label or custom content. Plain string labels also support `textTransition`. |
+| `borderColor` | `string` | `undefined` | Front-face border color. |
+| `borderRadius` | `number` | `4` | Shared border radius applied to the button face and lower layers. |
+| `borderBottomLeftRadius` | `number` | `undefined` | Bottom-left radius override. |
+| `borderBottomRightRadius` | `number` | `undefined` | Bottom-right radius override. |
+| `borderTopLeftRadius` | `number` | `undefined` | Top-left radius override. |
+| `borderTopRightRadius` | `number` | `undefined` | Top-right radius override. |
+| `borderWidth` | `number` | `0` | Front-face border width. |
+| `dangerouslySetPressableProps` | `AwesomeButtonPressableProps` | `{}` | Escape hatch for extra `Pressable` props. Core `onPress`, `onPressIn`, and `onPressOut` remain owned by the component. |
+| `debouncedPressTime` | `number` | `0` | Debounces `onPress` in milliseconds. |
+| `disabled` | `boolean` | `false` | Disables interactions and marks the internal `Pressable` as disabled. |
+| `height` | `number` | `60` | Legacy shell height before padding. Its moving face is the shell height minus the resolved raise amount. |
+| `faceHeight` | `number` | `undefined` | Canonical moving-face height bridge. Wins over legacy `height`. |
+| `hitSlop` | `PressableProps['hitSlop']` | `undefined` | Optional press target expansion. |
+| `paddingHorizontal` | `number` | `16` | Horizontal content padding. |
+| `paddingTop` | `number` | `0` | Additional top padding for the content row. |
+| `paddingBottom` | `number` | `0` | Additional bottom padding for the content row. |
+| `progress` | `boolean` | `false` | Enables the progress-button flow. `onPress` receives a `next` callback in this mode. |
+| `progressLoadingTime` | `number` | `3000` | Duration of the loading bar animation in progress mode. |
+| `showProgressBar` | `boolean` | `true` | Shows or hides the face progress layer. The spinner, busy state, callbacks, and completion handle remain active when false. |
+| `raiseLevel` | `number` | `4` | Vertical raise distance used to render the 3D depth effect. |
+| `springRelease` | `boolean` | `true` | Uses spring-based release animation instead of timing-based release. |
+| `stretch` | `boolean` | `false` | Makes the button fill the available horizontal space. |
+| `style` | `StyleProp` | `undefined` | Extra style applied to the outer animated container. |
+| `containerStyle` | `StyleProp` | `undefined` | Canonical outer layout style. Applied after legacy outer `style`. |
+| `buttonStyle` | `AwesomeButtonStyle` | `undefined` | Canonical visual bridge. Its fields win over legacy top-level visual aliases; `animationDuration` owns direct resolved-palette changes and `pressInAnimationDuration` overrides press-down timing. |
+| `textColor` | `string` | `#FFFFFF` | Default label text color. |
+| `textFontFamily` | `string` | `undefined` | Optional font family for string labels. |
+| `textLineHeight` | `number` | `20` | Placeholder bar height and the resolved line height applied to visible and measured string labels. |
+| `textSize` | `number` | `14` | Default font size for string labels. |
+| `textTransition` | `boolean` | `false` | Enables the measured, grapheme-aware scramble/reveal animation for nonempty string-label replacements. Transient frames are one line; Reduced Motion settles immediately. |
+| `width` | `number \| 'auto' \| null` | `null` | Fixed width, measured auto width (`null` / `'auto'`), or pair with `stretch` for full width. Auto-width string labels can now both grow and shrink. |
+| `onPress` | `(next?) => void` | `undefined` | Main press callback. In `progress` mode it receives the completion handler. |
+| `onLongPress` | `PressableProps['onLongPress']` | `undefined` | Deprecated physical-only callback that receives the real press event. |
+| `onLongPressAction` | `() => void` | `undefined` | Eventless physical and assistive long action. Wins over legacy eventful `onLongPress`. |
+| `accessibilityLabel` | `string \| undefined` | `undefined` | Spoken identity override; plain string children are inferred when absent. |
+| `accessibilityHint` | `string \| undefined` | `undefined` | Optional explanation for ordinary assistive activation. |
+| `accessibilityLongPressLabel` | `string \| undefined` | `undefined` | Optional name for the eventless assistive long action. |
+| `onPressIn` | `(event) => void` | `undefined` | Native press-in observer callback. |
+| `onPressOut` | `(event) => void` | `undefined` | Native press-out observer callback. |
+| `onPressedIn` | `() => void` | `undefined` | Fires after committed eligibility is revalidated and before press-down visual work starts. |
+| `onPressedOut` | `() => void` | `undefined` | Fires after the internal release animation completes. |
+| `onProgressStart` | `() => void` | `undefined` | Fires when progress mode transitions into loading. |
+| `onProgressEnd` | `() => void` | `undefined` | Fires when progress mode finishes and the button releases. |
+
+### ThemedButton
+
+`ThemedButton` accepts the `AwesomeButton` props plus these theme-resolution
+props.
+
+| Attribute | Type | Default | Description |
+| ------------- | ------------------------------ | ----------- | ------------------------------------------------------------------------------------------------------ |
+| `config` | `AwesomeButtonThemeDefinition` | `undefined` | Explicit theme object. When provided, it takes precedence over `name` and `index`. |
+| `flat` | `boolean` | `false` | Requests the `flat` theme variant when available, including while disabled. |
+| `index` | `number \| null` | `null` | Theme index used by `getTheme(index)` when `config` and `name` are not provided. |
+| `name` | `ThemeName \| null` | `null` | Named built-in theme selector. Falls back safely to `basic` if invalid. |
+| `size` | `ButtonSize` | `medium` | Built-in theme size preset: `icon`, `small`, `medium`, or `large`. |
+| `transparent` | `boolean` | `false` | Makes the visible shell layers transparent while keeping content, press, and progress feedback active. |
+| `autoWidth` | `boolean` | `undefined` | Canonical intrinsic-width decision. An explicit value wins over the legacy `width="auto"` sentinel. |
+| `type` | `AwesomeButtonVariant` | `primary` | Built-in variant request, including canonical `x`. |
+
+## Interaction and Lifecycle
+
+Physical presses, long presses, keyboard activation, and accessibility actions
+share one eligibility, debounce, and one-shot progress contract. Callback
+replacements committed before dispatch remain live; release and accepted
+progress-completion callbacks are captured when their transition begins.
+Disablement, placeholder entry, pointer cancellation, and unmount terminate an
+active gesture once without dispatching a stale activation.
+
+## Accessibility, Reduced Motion, and Numeric Validation
+
+The button exposes one native button element. Atomic accessibility activation
+shares debounce and progress ownership without fabricating held
+`onPressIn`/`onPressOut` callbacks. Disabled, busy, and placeholder states
+remove package activation actions. Custom content that does not provide a
+plain string should supply `accessibilityLabel`.
+
+Reduced Motion snaps package-owned press, release, style, size, text,
+placeholder, and progress presentation while preserving callback ordering,
+debounce, long-press thresholds, and progress completion ownership. A progress
+run keeps its spinner/content lifecycle; `showProgressBar={false}` omits only
+the traveling/static face layer.
+
+Numeric inputs never throw: non-finite optional values act as absent,
+non-finite required values use their declared defaults, negative geometry and
+durations clamp to zero, and opacity clamps to `[0, 1]`. Fixed width zero stays
+an explicit constrained width.
+
+## React Native Compatibility and Migration
+
+The compatibility bridge keeps v3.1 behavior callable while making the shared
+vocabulary available. Bridge fields win conflicts; no implicit parity mode
+changes legacy geometry or defaults.
+
+| Current field | Canonical replacement | Current behavior |
+| ------------------------- | ------------------------------------------ | -------------------------------------------------------------------------------------- |
+| outer `style` | `containerStyle` | Both remain; `containerStyle` wins. |
+| `buttonStyle` | future `style` | Typed canonical visual bridge; rename is deferred to a major. |
+| legacy `height` | `faceHeight` (future `height`) | Legacy stack geometry remains; `faceHeight` wins when supplied. |
+| `width="auto"` | `autoWidth={true}` | Sentinel remains; an explicit `autoWidth` decision wins. |
+| eventful `onLongPress` | `onLongPressAction` (future `onLongPress`) | Legacy callback is physical-only; the eventless bridge owns assistive long activation. |
+| `backgroundDarker` | `buttonStyle.depthColor` | Legacy alias remains at lower precedence. |
+| `backgroundShadow` | `buttonStyle.shadowColor` | Legacy alias remains at lower precedence. |
+| `textColor` | `buttonStyle.foregroundColor` | Legacy alias remains at lower precedence. |
+| `raiseLevel` | `buttonStyle.raiseAmount` | Legacy alias remains at lower precedence. |
+| `borderLeftBottomRadius` | `buttonStyle.borderBottomLeftRadius` | Misspelled alias remains at lower precedence. |
+| `activityColor` | `buttonStyle.activityColor` | Legacy alias remains at lower precedence. |
+| `activeOpacity` | `buttonStyle.activeOpacity` | Legacy alias remains at lower precedence. |
+| `backgroundActive` | `buttonStyle.backgroundActive` | Legacy alias remains at lower precedence. |
+| `backgroundColor` | `buttonStyle.backgroundColor` | Legacy alias remains at lower precedence. |
+| `backgroundPlaceholder` | `buttonStyle.backgroundPlaceholder` | Legacy alias remains at lower precedence. |
+| `backgroundProgress` | `buttonStyle.backgroundProgress` | Legacy alias remains at lower precedence. |
+| `borderColor` | `buttonStyle.borderColor` | Legacy alias remains at lower precedence. |
+| `borderRadius` | `buttonStyle.borderRadius` | Legacy alias remains at lower precedence. |
+| `borderTopLeftRadius` | `buttonStyle.borderTopLeftRadius` | Legacy alias remains at lower precedence. |
+| `borderTopRightRadius` | `buttonStyle.borderTopRightRadius` | Legacy alias remains at lower precedence. |
+| `borderBottomLeftRadius` | `buttonStyle.borderBottomLeftRadius` | Legacy alias remains at lower precedence. |
+| `borderBottomRightRadius` | `buttonStyle.borderBottomRightRadius` | Legacy alias remains at lower precedence. |
+| `borderWidth` | `buttonStyle.borderWidth` | Legacy alias remains at lower precedence. |
+| `paddingHorizontal` | `buttonStyle.paddingHorizontal` | Legacy alias remains at lower precedence. |
+| `paddingTop` | `buttonStyle.paddingTop` | Legacy alias remains at lower precedence. |
+| `paddingBottom` | `buttonStyle.paddingBottom` | Legacy alias remains at lower precedence. |
+| `textFontFamily` | `buttonStyle.textFontFamily` | Legacy alias remains at lower precedence. |
+| `textLineHeight` | `buttonStyle.textLineHeight` | Legacy alias remains at lower precedence. |
+| `textSize` | `buttonStyle.textSize` | Legacy alias remains at lower precedence. |
+| `springRelease` | native release spring | Both legacy values remain; the optional non-spring path is noncanonical debt. |
+| `twitter` | request-only `x` | Legacy closed unions/maps stay unchanged; removal requires a reviewed major migration. |
+
+React Native still has explicit cross-platform debt: its legacy outer `style`,
+legacy `height` meaning and default geometry, 100 ms press fallback when no
+bridge timing is supplied, and optional non-spring release behavior. This
+release does not claim complete family parity.
## Development
Root quality gates:
```bash
-yarn test
-yarn typescript
-yarn lint
-yarn prepare
+yarn release:check
```
+The aggregate checks formatting, ESLint, TypeScript, package-owned Jest tests
+with informational coverage, the built package, reviewed API report, exported
+TSDoc summaries, and the npm tarball shape. It does not publish or modify the
+API baseline. See [`CONTRIBUTING.md`](CONTRIBUTING.md),
+[`MIGRATION.md`](MIGRATION.md), and [`PERFORMANCE.md`](PERFORMANCE.md).
+
Demo app commands:
```bash
@@ -322,31 +433,36 @@ yarn demo:web
The Expo demo resolves `@rcaferati/react-native-awesome-button` to the local `src/` folder, so you can iterate on the library without publishing it first.
-## Demo
+## Demo Application
The `demo/` app is an Expo SDK 52 compatibility harness for:
-- common themed buttons across all registered themes
-- progress buttons
-- variant transition examples
-- text transition examples
-- size animation parity examples
-- empty placeholder states
-- flat button variants
-- before / after / icon content
-- auto-width and stretch examples
-- social variants
-- extra-content button compositions
+- the `Themed` tab, covering every registered theme, placeholder and flat
+ states, before/after/icon slots, auto-width, stretch, and extra content
+- the `Progress` tab, covering progress ownership and completion
+- the `Social` tab, covering every social visual variant
+- the `Size Changes` tab, covering variant, text, and geometry transitions
See [`demo/README.md`](./demo/README.md) for demo-specific instructions.
+## Awesome Button Family
+
+Awesome Button is maintained as four native packages that share product
+semantics while following each platform's implementation model:
+
+- [React Native Awesome Button](https://github.com/rcaferati/react-native-awesome-button)
+- [Flutter Awesome Button](https://github.com/rcaferati/flutter_awesome_button)
+- [Kotlin Awesome Button](https://github.com/rcaferati/kotlin-awesome-button)
+- [Swift Awesome Button](https://github.com/rcaferati/swift-awesome-button)
+
## Author
-**Rafael Caferati**
-Website: https://caferati.dev
-LinkedIn: https://linkedin.com/in/rcaferati
-Instagram: https://instagram.com/rcaferati
+Created and maintained by [Rafael Caferati](https://caferati.dev).
+
+- [GitHub](https://github.com/rcaferati)
+- [LinkedIn](https://linkedin.com/in/rcaferati)
+- [Instagram](https://instagram.com/rcaferati)
## License
-MIT.
+MIT. See [LICENSE](LICENSE).
diff --git a/api-extractor.json b/api-extractor.json
new file mode 100644
index 0000000..16d0f27
--- /dev/null
+++ b/api-extractor.json
@@ -0,0 +1,34 @@
+{
+ "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
+ "newlineKind": "lf",
+ "mainEntryPointFilePath": "/lib/typescript/src/index.d.ts",
+ "apiReport": {
+ "enabled": true,
+ "reportFolder": "/etc",
+ "reportTempFolder": "/temp/api-report"
+ },
+ "docModel": {
+ "enabled": true,
+ "apiJsonFilePath": "/temp/react-native-awesome-button.api.json"
+ },
+ "dtsRollup": {
+ "enabled": false
+ },
+ "messages": {
+ "compilerMessageReporting": {
+ "default": {
+ "logLevel": "error"
+ }
+ },
+ "extractorMessageReporting": {
+ "default": {
+ "logLevel": "error"
+ }
+ },
+ "tsdocMessageReporting": {
+ "default": {
+ "logLevel": "error"
+ }
+ }
+ }
+}
diff --git a/demo/THIRD_PARTY_NOTICES.md b/demo/THIRD_PARTY_NOTICES.md
new file mode 100644
index 0000000..d640115
--- /dev/null
+++ b/demo/THIRD_PARTY_NOTICES.md
@@ -0,0 +1,17 @@
+# Third-party notices
+
+## Font Awesome Free 7.3.1
+
+The demo vendors selected Font Awesome Free 7.3.1 SVG path geometry as checked-in React Native vector definitions. Representation changed only from SVG markup to React Native path data; the upstream paths and view boxes are unchanged.
+
+Font Awesome Free icons are licensed under CC BY 4.0:
+https://creativecommons.org/licenses/by/4.0/
+
+Upstream license:
+https://fontawesome.com/license/free
+
+Copyright (c) 2026 Fonticons, Inc. (https://fontawesome.com)
+
+The complete supplied Font Awesome Free license is retained at `src/icons/LICENSE.txt`.
+
+Brand names and logos are trademarks of their respective owners. They appear only to demonstrate button styling and do not imply endorsement by Fonticons, the trademark holders, or this project.
diff --git a/demo/metro.config.js b/demo/metro.config.js
index 8edbc1f..a8486ea 100644
--- a/demo/metro.config.js
+++ b/demo/metro.config.js
@@ -6,9 +6,14 @@ const pak = require('../package.json');
const root = path.resolve(__dirname, '..');
-const modules = Object.keys({
- ...pak.peerDependencies,
-});
+const modules = Array.from(
+ new Set([
+ ...Object.keys(pak.peerDependencies),
+ // Expo aliases `react-native` to this package for web. Source files live
+ // outside the demo root, so expose the alias target through Metro too.
+ 'react-native-web',
+ ])
+);
const defaultConfig = getDefaultConfig(__dirname);
diff --git a/demo/package.json b/demo/package.json
index 231f118..335e423 100644
--- a/demo/package.json
+++ b/demo/package.json
@@ -11,7 +11,7 @@
"start": "expo start"
},
"dependencies": {
- "@expo/vector-icons": "~14.0.4",
+ "@expo/metro-runtime": "~4.0.1",
"@react-navigation/bottom-tabs": "^7.15.9",
"@react-navigation/native": "^7.2.2",
"@react-navigation/native-stack": "^7.14.11",
diff --git a/demo/src/components/Example.tsx b/demo/src/components/Example.tsx
index 0f0f242..1f6576e 100644
--- a/demo/src/components/Example.tsx
+++ b/demo/src/components/Example.tsx
@@ -1,15 +1,15 @@
import React, { useEffect, useState } from 'react';
-import { StyleSheet, Text, View } from 'react-native';
+import { StyleSheet, View } from 'react-native';
import {
ThemedButton,
getTheme,
type ButtonVariant,
type ProgressCompletionHandler,
} from '@rcaferati/react-native-awesome-button';
-import { AntDesign } from '@expo/vector-icons';
import Container from './Container';
import Section from './Section';
import Character from './Character';
+import DemoIcon from '../icons/DemoIcon';
import type { ProgressDemoHandler, ThemeExampleProps } from '../types';
const TRANSITION_VARIANTS: ButtonVariant[] = [
@@ -168,10 +168,11 @@ export default function Example({ index }: ThemeExampleProps) {
style={styles.transitionIconButton}
type="flat"
size="icon"
+ accessibilityLabel="Cycle variant"
onPress={handleVariantTransitionPress}
>
-
@@ -193,10 +194,11 @@ export default function Example({ index }: ThemeExampleProps) {
style={styles.transitionIconButton}
type="flat"
size="icon"
+ accessibilityLabel="Cycle text"
onPress={handleTextTransitionPress}
>
-
@@ -280,12 +282,12 @@ export default function Example({ index }: ThemeExampleProps) {
style={styles.button}
type="primary"
size="medium"
+ buttonStyle={{ contentGap: 8 }}
before={
-
}
>
@@ -294,12 +296,12 @@ export default function Example({ index }: ThemeExampleProps) {
}
type="anchor"
@@ -314,12 +316,12 @@ export default function Example({ index }: ThemeExampleProps) {
style={styles.button}
type="danger"
size="medium"
+ buttonStyle={{ contentGap: 8 }}
before={
-
}
>
@@ -330,11 +332,12 @@ export default function Example({ index }: ThemeExampleProps) {
style={styles.button}
type="primary"
size="icon"
+ accessibilityLabel="Add"
>
-
-
-
@@ -425,8 +430,6 @@ const styles = StyleSheet.create({
marginTop: 8,
marginBottom: 8,
},
- iconLeft: { marginRight: 5 },
- iconRight: { marginLeft: 5 },
transitionControlRow: {
flexDirection: 'row',
alignItems: 'center',
diff --git a/demo/src/icons/DemoIcon.tsx b/demo/src/icons/DemoIcon.tsx
new file mode 100644
index 0000000..5a95e71
--- /dev/null
+++ b/demo/src/icons/DemoIcon.tsx
@@ -0,0 +1,29 @@
+import React from 'react';
+import Svg, { Path } from 'react-native-svg';
+import {
+ FONT_AWESOME_ICON_DATA,
+ type DemoIconName,
+} from './fontAwesomeIconData';
+
+type DemoIconProps = {
+ name: DemoIconName;
+ size: number;
+ color: string;
+};
+
+export default function DemoIcon({ name, size, color }: DemoIconProps) {
+ const icon = FONT_AWESOME_ICON_DATA[name];
+
+ return (
+
+ );
+}
diff --git a/demo/src/icons/LICENSE.txt b/demo/src/icons/LICENSE.txt
new file mode 100644
index 0000000..69403b2
--- /dev/null
+++ b/demo/src/icons/LICENSE.txt
@@ -0,0 +1,165 @@
+Fonticons, Inc. (https://fontawesome.com)
+
+--------------------------------------------------------------------------------
+
+Font Awesome Free License
+
+Font Awesome Free is free, open source, and GPL friendly. You can use it for
+commercial projects, open source projects, or really almost whatever you want.
+Full Font Awesome Free license: https://fontawesome.com/license/free.
+
+--------------------------------------------------------------------------------
+
+# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/)
+
+The Font Awesome Free download is licensed under a Creative Commons
+Attribution 4.0 International License and applies to all icons packaged
+as SVG and JS file types.
+
+--------------------------------------------------------------------------------
+
+# Fonts: SIL OFL 1.1 License
+
+In the Font Awesome Free download, the SIL OFL license applies to all icons
+packaged as web and desktop font files.
+
+Copyright (c) 2026 Fonticons, Inc. (https://fontawesome.com)
+with Reserved Font Name: "Font Awesome".
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is copied below, and is also available with a FAQ at:
+http://scripts.sil.org/OFL
+
+SIL OPEN FONT LICENSE
+Version 1.1 - 26 February 2007
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded,
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting — in part or in whole — any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.
+
+--------------------------------------------------------------------------------
+
+# Code: MIT License (https://opensource.org/licenses/MIT)
+
+In the Font Awesome Free download, the MIT license applies to all non-font and
+non-icon files.
+
+Copyright 2026 Fonticons, Inc.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in the
+Software without restriction, including without limitation the rights to use, copy,
+modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
+and to permit persons to whom the Software is furnished to do so, subject to the
+following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
+INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
+PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+--------------------------------------------------------------------------------
+
+# Attribution
+
+Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font
+Awesome Free files already contain embedded comments with sufficient
+attribution, so you shouldn't need to do anything additional when using these
+files normally.
+
+We've kept attribution comments terse, so we ask that you do not actively work
+to remove them from files, especially code. They're a great way for folks to
+learn about Font Awesome.
+
+--------------------------------------------------------------------------------
+
+# Brand Icons
+
+All brand icons are trademarks of their respective owners. The use of these
+trademarks does not indicate endorsement of the trademark holder by Font
+Awesome, nor vice versa. **Please do not use brand logos for any purpose except
+to represent the company, product, or service to which they refer.**
diff --git a/demo/src/icons/fontAwesomeIconData.ts b/demo/src/icons/fontAwesomeIconData.ts
new file mode 100644
index 0000000..be31998
--- /dev/null
+++ b/demo/src/icons/fontAwesomeIconData.ts
@@ -0,0 +1,140 @@
+export type DemoIconName =
+ | 'paintbrush'
+ | 'gauge'
+ | 'share-nodes'
+ | 'up-right-and-down-left-from-center'
+ | 'right-left'
+ | 'forward-step'
+ | 'bars'
+ | 'table-cells-large'
+ | 'trash-can'
+ | 'square-plus'
+ | 'user-plus'
+ | 'location-arrow'
+ | 'facebook-f'
+ | 'x-twitter'
+ | 'facebook-messenger'
+ | 'instagram'
+ | 'whatsapp'
+ | 'youtube'
+ | 'linkedin-in'
+ | 'pinterest-p';
+
+type DemoIconDefinition = Readonly<{
+ width: number;
+ height: number;
+ pathData: string;
+}>;
+
+function defineIcon(
+ width: number,
+ height: number,
+ pathData: string
+): DemoIconDefinition {
+ return Object.freeze({ width, height, pathData });
+}
+
+export const FONT_AWESOME_ICON_DATA: Readonly<
+ Record
+> = Object.freeze({
+ 'paintbrush': defineIcon(
+ 576,
+ 512,
+ 'M480.5 10.3L259.1 158c-29.1 19.4-47.6 50.9-50.6 85.3 62.3 12.8 111.4 61.9 124.3 124.3 34.5-3 65.9-21.5 85.3-50.6L565.7 95.5c6.7-10.1 10.3-21.9 10.3-34.1 0-33.9-27.5-61.4-61.4-61.4-12.1 0-24 3.6-34.1 10.3zM288 400c0-61.9-50.1-112-112-112S64 338.1 64 400c0 3.9 .2 7.8 .6 11.6 1.8 17.5-10.2 36.4-27.8 36.4L32 448c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0c61.9 0 112-50.1 112-112z'
+ ),
+ 'gauge': defineIcon(
+ 512,
+ 512,
+ 'M0 256a256 256 0 1 1 512 0 256 256 0 1 1 -512 0zm320 96c0-26.9-16.5-49.9-40-59.3L280 120c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 172.7c-23.5 9.5-40 32.5-40 59.3 0 35.3 28.7 64 64 64s64-28.7 64-64zM144 176a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm-16 80a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm288 32a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM400 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z'
+ ),
+ 'share-nodes': defineIcon(
+ 512,
+ 512,
+ 'M384 192c53 0 96-43 96-96s-43-96-96-96-96 43-96 96c0 5.4 .5 10.8 1.3 16L159.6 184.1c-16.9-15-39.2-24.1-63.6-24.1-53 0-96 43-96 96s43 96 96 96c24.4 0 46.6-9.1 63.6-24.1L289.3 400c-.9 5.2-1.3 10.5-1.3 16 0 53 43 96 96 96s96-43 96-96-43-96-96-96c-24.4 0-46.6 9.1-63.6 24.1L190.7 272c.9-5.2 1.3-10.5 1.3-16s-.5-10.8-1.3-16l129.7-72.1c16.9 15 39.2 24.1 63.6 24.1z'
+ ),
+ 'up-right-and-down-left-from-center': defineIcon(
+ 512,
+ 512,
+ 'M344 0L488 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39-87 87c-9.4 9.4-24.6 9.4-33.9 0l-32-32c-9.4-9.4-9.4-24.6 0-33.9l87-87-39-39c-6.9-6.9-8.9-17.2-5.2-26.2S334.3 0 344 0zM168 512L24 512c-13.3 0-24-10.7-24-24L0 344c0-9.7 5.8-18.5 14.8-22.2S34.1 320.2 41 327l39 39 87-87c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2S177.7 512 168 512z'
+ ),
+ 'right-left': defineIcon(
+ 512,
+ 512,
+ 'M502.6 150.6l-96 96c-9.2 9.2-22.9 11.9-34.9 6.9S352 236.9 352 224l0-64-320 0c-17.7 0-32-14.3-32-32S14.3 96 32 96l320 0 0-64c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l96 96c12.5 12.5 12.5 32.8 0 45.3zm-397.3 352l-96-96c-12.5-12.5-12.5-32.8 0-45.3l96-96c9.2-9.2 22.9-11.9 34.9-6.9S160 275.1 160 288l0 64 320 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-320 0 0 64c0 12.9-7.8 24.6-19.8 29.6s-25.7 2.2-34.9-6.9z'
+ ),
+ 'forward-step': defineIcon(
+ 384,
+ 512,
+ 'M21 36.8c12.9-7 28.7-6.3 41 1.8L320 208.1 320 64c0-17.7 14.3-32 32-32s32 14.3 32 32l0 384c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-144.1-258 169.6c-12.3 8.1-28 8.8-41 1.8S0 454.7 0 440L0 72C0 57.3 8.1 43.8 21 36.8z'
+ ),
+ 'bars': defineIcon(
+ 448,
+ 512,
+ 'M0 96C0 78.3 14.3 64 32 64l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 128C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 288c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32L32 448c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z'
+ ),
+ 'table-cells-large': defineIcon(
+ 448,
+ 512,
+ 'M384 96l-128 0 0 128 128 0 0-128zm64 128l0 192c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32l320 0c35.3 0 64 28.7 64 64l0 128zM64 288l0 128 128 0 0-128-128 0zm128-64l0-128-128 0 0 128 128 0zm64 64l0 128 128 0 0-128-128 0z'
+ ),
+ 'trash-can': defineIcon(
+ 448,
+ 512,
+ 'M136.7 5.9C141.1-7.2 153.3-16 167.1-16l113.9 0c13.8 0 26 8.8 30.4 21.9L320 32 416 32c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l96 0 8.7-26.1zM32 144l384 0 0 304c0 35.3-28.7 64-64 64L96 512c-35.3 0-64-28.7-64-64l0-304zm88 64c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24zm104 0c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24zm104 0c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24z'
+ ),
+ 'square-plus': defineIcon(
+ 448,
+ 512,
+ 'M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM200 344l0-64-64 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l64 0 0-64c0-13.3 10.7-24 24-24s24 10.7 24 24l0 64 64 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-64 0 0 64c0 13.3-10.7 24-24 24s-24-10.7-24-24z'
+ ),
+ 'user-plus': defineIcon(
+ 640,
+ 512,
+ 'M285.7 304c98.5 0 178.3 79.8 178.3 178.3 0 16.4-13.3 29.7-29.7 29.7L77.7 512C61.3 512 48 498.7 48 482.3 48 383.8 127.8 304 226.3 304l59.4 0zM528 80c13.3 0 24 10.7 24 24l0 48 48 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-48 0 0 48c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-48-48 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l48 0 0-48c0-13.3 10.7-24 24-24zM256 248a120 120 0 1 1 0-240 120 120 0 1 1 0 240z'
+ ),
+ 'location-arrow': defineIcon(
+ 512,
+ 512,
+ 'M477.9 75.5c4.5-11.8 1.7-25.2-7.2-34.1s-22.3-11.8-34.1-7.2l-416 160C7.9 199-.3 211.2 0 224.7s9.1 25.4 21.9 29.6l176.8 58.9 58.9 176.8c4.3 12.8 16.1 21.6 29.6 21.9s25.7-7.9 30.6-20.5l160-416z'
+ ),
+ 'facebook-f': defineIcon(
+ 320,
+ 512,
+ 'M80 299.3l0 212.7 116 0 0-212.7 86.5 0 18-97.8-104.5 0 0-34.6c0-51.7 20.3-71.5 72.7-71.5 16.3 0 29.4 .4 37 1.2l0-88.7C291.4 4 256.4 0 236.2 0 129.3 0 80 50.5 80 159.4l0 42.1-66 0 0 97.8 66 0z'
+ ),
+ 'x-twitter': defineIcon(
+ 448,
+ 512,
+ 'M357.2 48L427.8 48 273.6 224.2 455 464 313 464 201.7 318.6 74.5 464 3.8 464 168.7 275.5-5.2 48 140.4 48 240.9 180.9 357.2 48zM332.4 421.8l39.1 0-252.4-333.8-42 0 255.3 333.8z'
+ ),
+ 'facebook-messenger': defineIcon(
+ 512,
+ 512,
+ 'M256.6 8c-140 0-248.6 102.3-248.6 240.6 0 72.3 29.7 134.8 78.1 177.9 8.3 7.5 6.6 11.9 8 58.2 .1 3.2 1 6.4 2.6 9.2s3.9 5.2 6.7 6.9 5.9 2.8 9.1 3 6.5-.3 9.5-1.6C174.9 479 175.6 477.2 184.6 479.6 337.8 521.8 504 423.7 504 248.6 504 110.3 396.6 8 256.6 8zM405.8 193.1l-73 115.6c-2.8 4.3-6.4 8.1-10.6 11s-9.1 4.8-14.1 5.8-10.3 .8-15.3-.4-9.7-3.4-13.8-6.4l-58.1-43.5c-2.6-1.9-5.8-3-9-3s-6.4 1.1-9 3l-78.4 59.4c-10.5 7.9-24.2-4.6-17.1-15.7l73-115.6c2.8-4.3 6.4-8.1 10.6-11s9.1-4.8 14.1-5.8 10.3-.8 15.3 .4 9.7 3.4 13.9 6.4l58.1 43.5c2.6 1.9 5.8 3 9 3s6.4-1.1 9-3l78.4-59.4c10.4-8 24.1 4.5 17.1 15.6z'
+ ),
+ 'instagram': defineIcon(
+ 448,
+ 512,
+ 'M224.3 141a115 115 0 1 0 -.6 230 115 115 0 1 0 .6-230zm-.6 40.4a74.6 74.6 0 1 1 .6 149.2 74.6 74.6 0 1 1 -.6-149.2zm93.4-45.1a26.8 26.8 0 1 1 53.6 0 26.8 26.8 0 1 1 -53.6 0zm129.7 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM399 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z'
+ ),
+ 'whatsapp': defineIcon(
+ 448,
+ 512,
+ 'M380.9 97.1c-41.9-42-97.7-65.1-157-65.1-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480 117.7 449.1c32.4 17.7 68.9 27 106.1 27l.1 0c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1s56.2 81.2 56.1 130.5c0 101.8-84.9 184.6-186.6 184.6zM325.1 300.5c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8s-14.3 18-17.6 21.8c-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7 .9-6.9-.5-9.7s-12.5-30.1-17.1-41.2c-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2s-9.7 1.4-14.8 6.9c-5.1 5.6-19.4 19-19.4 46.3s19.9 53.7 22.6 57.4c2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4s4.6-24.1 3.2-26.4c-1.3-2.5-5-3.9-10.5-6.6z'
+ ),
+ 'youtube': defineIcon(
+ 576,
+ 512,
+ 'M549.7 124.1C543.5 100.4 524.9 81.8 501.4 75.5 458.9 64 288.1 64 288.1 64S117.3 64 74.7 75.5C51.2 81.8 32.7 100.4 26.4 124.1 15 167 15 256.4 15 256.4s0 89.4 11.4 132.3c6.3 23.6 24.8 41.5 48.3 47.8 42.6 11.5 213.4 11.5 213.4 11.5s170.8 0 213.4-11.5c23.5-6.3 42-24.2 48.3-47.8 11.4-42.9 11.4-132.3 11.4-132.3s0-89.4-11.4-132.3zM232.2 337.6l0-162.4 142.7 81.2-142.7 81.2z'
+ ),
+ 'linkedin-in': defineIcon(
+ 448,
+ 512,
+ 'M100.3 448l-92.9 0 0-299.1 92.9 0 0 299.1zM53.8 108.1C24.1 108.1 0 83.5 0 53.8 0 39.5 5.7 25.9 15.8 15.8s23.8-15.8 38-15.8 27.9 5.7 38 15.8 15.8 23.8 15.8 38c0 29.7-24.1 54.3-53.8 54.3zM447.9 448l-92.7 0 0-145.6c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7l0 148.1-92.8 0 0-299.1 89.1 0 0 40.8 1.3 0c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3l0 164.3-.1 0z'
+ ),
+ 'pinterest-p': defineIcon(
+ 384,
+ 512,
+ 'M204 6.5c-102.6 0-204 68.4-204 179.1 0 70.4 39.6 110.4 63.6 110.4 9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8 0-99.3-85.8-164.1-180-164.1z'
+ ),
+});
diff --git a/demo/src/screens/Progress.tsx b/demo/src/screens/Progress.tsx
index 5112d6b..ea1170d 100644
--- a/demo/src/screens/Progress.tsx
+++ b/demo/src/screens/Progress.tsx
@@ -6,7 +6,7 @@ import {
} from '@rcaferati/react-native-awesome-button';
import Container from '../components/Container';
import Section from '../components/Section';
-import { MaterialCommunityIcons } from '@expo/vector-icons';
+import DemoIcon from '../icons/DemoIcon';
import type { ProgressDemoHandler, ProgressScreenProps } from '../types';
export default function Progress({ navigation }: ProgressScreenProps) {
@@ -85,8 +85,9 @@ export default function Progress({ navigation }: ProgressScreenProps) {
raiseLevel={6}
borderRadius={60}
size="icon"
+ accessibilityLabel="Send"
>
-
+
-
+
diff --git a/demo/src/screens/Sizing.tsx b/demo/src/screens/Sizing.tsx
index 37383f4..4c40004 100644
--- a/demo/src/screens/Sizing.tsx
+++ b/demo/src/screens/Sizing.tsx
@@ -1,20 +1,47 @@
import React, { useEffect, useMemo, useState } from 'react';
import { StyleSheet, Text, View } from 'react-native';
-import AwesomeButton, {
- ThemedButton,
-} from '@rcaferati/react-native-awesome-button';
+import { ThemedButton } from '@rcaferati/react-native-awesome-button';
import Container from '../components/Container';
import Section from '../components/Section';
import type { SizingScreenProps } from '../types';
const THEME_SIZES = ['small', 'medium', 'large'] as const;
+const CONTROL_BUTTON_STYLE = {
+ activeOpacity: 0.6,
+ raiseAmount: 0,
+} as const;
+
+type TextDemoButtonProps = {
+ animateSize?: boolean;
+ label: string;
+ textTransition?: boolean;
+};
+
+function TextDemoButton({
+ animateSize = true,
+ label,
+ textTransition = false,
+}: TextDemoButtonProps) {
+ return (
+
+ {label}
+
+ );
+}
export default function Sizing({ navigation }: SizingScreenProps) {
const [isLongLabel, setIsLongLabel] = useState(false);
const [sizeIndex, setSizeIndex] = useState(1);
- const currentThemeSize = THEME_SIZES[sizeIndex];
- const autoWidthLabel = isLongLabel ? 'Open analytics dashboard' : 'Open';
+ const currentThemeSize = THEME_SIZES[sizeIndex] ?? THEME_SIZES[0];
+ const autoWidthLabel = isLongLabel ? 'View analytics dashboard' : 'Launch';
const currentThemeSizeLabel = useMemo(
() => currentThemeSize.charAt(0).toUpperCase() + currentThemeSize.slice(1),
@@ -32,87 +59,112 @@ export default function Sizing({ navigation }: SizingScreenProps) {
}, [navigation]);
return (
-
-
-
- Evaluates how the button reacts when a plain string label switches
- between short and long content.
-
- Animated with text transition
-
- {autoWidthLabel}
-
- Animated without text transition
- {autoWidthLabel}
- Instant opt-out
-
- {autoWidthLabel}
-
- setIsLongLabel((currentValue) => !currentValue)}
- >
- Toggle Label Length
-
-
-
-
-
- Evaluates how a themed button behaves when its built-in size preset
- changes between fixed widths.
-
- Animated
-
- {currentThemeSizeLabel}
-
- Instant opt-out
-
- {currentThemeSizeLabel}
-
-
- setSizeIndex((currentValue) => (currentValue + 1) % THEME_SIZES.length)
- }
- >
- Cycle Theme Size
-
-
+
+
+
+
+
+ Evaluates how the button reacts when a plain string label switches
+ between short and long content.
+
+ setIsLongLabel((currentValue) => !currentValue)}
+ size="small"
+ type="secondary"
+ >
+ Toggle Label Length
+
+
+ Animated with text transition
+
+
+
+ Animated without text transition
+
+
+ Instant opt-out
+
+
-
-
-
- This screen is the dedicated RN size-behavior reference for future
- parity work with the web packages.
-
+
+
+ Evaluates how a themed button behaves when its built-in size
+ preset changes between fixed widths.
+
+
+ setSizeIndex(
+ (currentValue) => (currentValue + 1) % THEME_SIZES.length
+ )
+ }
+ size="small"
+ type="secondary"
+ >
+ Cycle Theme Size
+
+
+ Animated with text transition
+
+
+ {currentThemeSizeLabel}
+
+
+ Animated without text transition
+
+
+ {currentThemeSizeLabel}
+
+ Instant opt-out
+
+ {currentThemeSizeLabel}
+
+
-
-
+
+
);
}
const styles = StyleSheet.create({
+ screen: {
+ flex: 1,
+ width: '100%',
+ backgroundColor: '#FFF',
+ },
+ content: {
+ width: '100%',
+ maxWidth: 520,
+ },
caption: {
color: '#5B6472',
fontSize: 13,
lineHeight: 20,
marginBottom: 10,
- maxWidth: 320,
},
variantLabel: {
color: '#6B7280',
@@ -127,22 +179,4 @@ const styles = StyleSheet.create({
marginTop: 8,
marginBottom: 8,
},
- controlButton: {
- marginTop: 8,
- marginBottom: 8,
- },
- scopeCard: {
- backgroundColor: '#EFF4FF',
- borderColor: '#D5E3FF',
- borderRadius: 14,
- borderWidth: 1,
- maxWidth: 320,
- paddingHorizontal: 14,
- paddingVertical: 12,
- },
- scopeText: {
- color: '#38507B',
- fontSize: 13,
- lineHeight: 19,
- },
});
diff --git a/demo/src/screens/Social.tsx b/demo/src/screens/Social.tsx
index 1c0eaf8..afdc492 100644
--- a/demo/src/screens/Social.tsx
+++ b/demo/src/screens/Social.tsx
@@ -6,11 +6,7 @@ import {
} from '@rcaferati/react-native-awesome-button';
import Container from '../components/Container';
import Section from '../components/Section';
-import {
- AntDesign,
- FontAwesome,
- MaterialCommunityIcons,
-} from '@expo/vector-icons';
+import DemoIcon from '../icons/DemoIcon';
import { LinearGradient } from 'expo-linear-gradient';
import type { ProgressDemoHandler, SocialScreenProps } from '../types';
@@ -46,32 +42,30 @@ export default function Social({ navigation }: SocialScreenProps) {
width={180}
borderRadius={50}
raiseLevel={8}
+ accessibilityLabel="Facebook"
+ buttonStyle={{ contentGap: 8 }}
>
-
+
Facebook
-
- Twitter
+
+ X
-
+
Messenger
-
+
Instagram
@@ -125,13 +113,9 @@ export default function Social({ navigation }: SocialScreenProps) {
width={60}
borderRadius={0}
raiseLevel={0}
+ accessibilityLabel="WhatsApp"
>
-
+
-
+
-
+
-
+
@@ -199,5 +171,4 @@ const styles = StyleSheet.create({
fontWeight: 'bold',
color: 'white',
},
- iconLeft: { marginRight: 8 },
});
diff --git a/demo/src/stack/RootStack.tsx b/demo/src/stack/RootStack.tsx
index bf0f4ee..e45b950 100644
--- a/demo/src/stack/RootStack.tsx
+++ b/demo/src/stack/RootStack.tsx
@@ -13,7 +13,7 @@ import ThemeScreen from '../screens/ThemeScreen';
import Sizing from '../screens/Sizing';
import Social from '../screens/Social';
import Progress from '../screens/Progress';
-import { Entypo, Ionicons, FontAwesome5 } from '@expo/vector-icons';
+import DemoIcon from '../icons/DemoIcon';
import type { DemoTabParamList, DemoThemeStackParamList } from '../types';
const Tab = createBottomTabNavigator();
@@ -141,23 +141,25 @@ function App() {
screenOptions={({ route }) => ({
tabBarIcon: ({ color }: { color: string }) => {
if (route.name === 'Themed Buttons') {
- return ;
+ return ;
}
if (route.name === 'Progress') {
- return ;
+ return ;
}
if (route.name === 'Sizing') {
return (
-
+
);
}
if (route.name === 'Social') {
- return (
-
- );
+ return ;
}
return null;
@@ -167,13 +169,17 @@ function App() {
})}
>
-
+
);
diff --git a/demo/tsconfig.json b/demo/tsconfig.json
index c3d67ed..548f3bf 100644
--- a/demo/tsconfig.json
+++ b/demo/tsconfig.json
@@ -2,5 +2,7 @@
"extends": "../tsconfig",
"compilerOptions": {
// Keep Expo from generating a separate tsconfig for the demo.
- }
+ },
+ "include": ["src/**/*.ts", "src/**/*.tsx"],
+ "exclude": ["node_modules"]
}
diff --git a/demo/yarn.lock b/demo/yarn.lock
index 70189ab..95aebbe 100644
--- a/demo/yarn.lock
+++ b/demo/yarn.lock
@@ -1794,6 +1794,15 @@ __metadata:
languageName: node
linkType: hard
+"@expo/metro-runtime@npm:~4.0.1":
+ version: 4.0.1
+ resolution: "@expo/metro-runtime@npm:4.0.1"
+ peerDependencies:
+ react-native: "*"
+ checksum: 10c0/bb50ce6143c153f9aa54185017366a3476f910867372271a29f7012355f9859576e128ac379924e7e86415ae4b5fac0687f751e0fbf85e201f00aed30671c29d
+ languageName: node
+ linkType: hard
+
"@expo/osascript@npm:^2.1.6":
version: 2.4.2
resolution: "@expo/osascript@npm:2.4.2"
@@ -7346,7 +7355,7 @@ __metadata:
resolution: "react-native-awesome-button-demo@workspace:."
dependencies:
"@babel/core": "npm:^7.20.0"
- "@expo/vector-icons": "npm:~14.0.4"
+ "@expo/metro-runtime": "npm:~4.0.1"
"@react-navigation/bottom-tabs": "npm:^7.15.9"
"@react-navigation/native": "npm:^7.2.2"
"@react-navigation/native-stack": "npm:^7.14.11"
diff --git a/etc/.gitkeep b/etc/.gitkeep
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/etc/.gitkeep
@@ -0,0 +1 @@
+
diff --git a/etc/react-native-awesome-button.api.md b/etc/react-native-awesome-button.api.md
new file mode 100644
index 0000000..d2765e4
--- /dev/null
+++ b/etc/react-native-awesome-button.api.md
@@ -0,0 +1,248 @@
+## API Report File for "@rcaferati/react-native-awesome-button"
+
+> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
+
+```ts
+
+import type { ColorValue } from 'react-native';
+import type { GestureResponderEvent } from 'react-native';
+import type { JSX as JSX_2 } from 'react';
+import type { PressableProps } from 'react-native';
+import type { ReactNode } from 'react';
+import type { StyleProp } from 'react-native';
+import type { ViewStyle } from 'react-native';
+
+// @public
+const AwesomeButton: (props: AwesomeButtonProps) => JSX_2.Element;
+export default AwesomeButton;
+
+// @public
+export type AwesomeButtonAnimationCurve = (value: number) => number;
+
+// @public
+export type AwesomeButtonOnPress = (next?: ProgressCompletionHandler) => void;
+
+// @public
+export type AwesomeButtonPressableProps = Omit;
+
+// @public
+export interface AwesomeButtonProps {
+ accessibilityHint?: string;
+ accessibilityLabel?: string;
+ accessibilityLongPressLabel?: string;
+ // @deprecated
+ activeOpacity?: number;
+ // @deprecated
+ activityColor?: string;
+ after?: ReactNode;
+ animatedPlaceholder?: boolean;
+ animateSize?: boolean;
+ // @deprecated
+ backgroundActive?: string;
+ // @deprecated
+ backgroundColor?: string;
+ // @deprecated
+ backgroundDarker?: string;
+ // @deprecated
+ backgroundPlaceholder?: string;
+ // @deprecated
+ backgroundProgress?: string;
+ // @deprecated
+ backgroundShadow?: string;
+ before?: ReactNode;
+ // @deprecated
+ borderBottomLeftRadius?: number;
+ // @deprecated
+ borderBottomRightRadius?: number;
+ // @deprecated
+ borderColor?: string;
+ // @deprecated
+ borderLeftBottomRadius?: number;
+ // @deprecated
+ borderRadius?: number;
+ // @deprecated
+ borderTopLeftRadius?: number;
+ // @deprecated
+ borderTopRightRadius?: number;
+ // @deprecated
+ borderWidth?: number;
+ buttonStyle?: AwesomeButtonStyle;
+ children?: ReactNode;
+ containerStyle?: StyleProp;
+ dangerouslySetPressableProps?: AwesomeButtonPressableProps;
+ debouncedPressTime?: number;
+ disabled?: boolean;
+ extra?: ReactNode;
+ faceHeight?: number;
+ // @deprecated
+ height?: number;
+ hitSlop?: PressableProps['hitSlop'];
+ // @deprecated
+ onLongPress?: PressableProps['onLongPress'];
+ onLongPressAction?: () => void;
+ onPress?: AwesomeButtonOnPress;
+ onPressedIn?: () => void;
+ onPressedOut?: () => void;
+ onPressIn?: (event: GestureResponderEvent) => void;
+ onPressOut?: (event: GestureResponderEvent) => void;
+ onProgressEnd?: () => void;
+ onProgressStart?: () => void;
+ // @deprecated
+ paddingBottom?: number;
+ // @deprecated
+ paddingHorizontal?: number;
+ // @deprecated
+ paddingTop?: number;
+ progress?: boolean;
+ progressLoadingTime?: number;
+ // @deprecated
+ raiseLevel?: number;
+ showProgressBar?: boolean;
+ // @deprecated
+ springRelease?: boolean;
+ stretch?: boolean;
+ // @deprecated
+ style?: StyleProp;
+ // @deprecated
+ textColor?: string;
+ // @deprecated
+ textFontFamily?: string;
+ // @deprecated
+ textLineHeight?: number;
+ // @deprecated
+ textSize?: number;
+ textTransition?: boolean;
+ width?: ButtonWidth;
+}
+
+// @public
+export type AwesomeButtonRegisteredThemeDefinition = Omit & {
+ buttons: AwesomeButtonThemeDefinitions;
+};
+
+// @public
+export interface AwesomeButtonStyle {
+ activeOpacity?: number;
+ activityColor?: ColorValue;
+ animationCurve?: AwesomeButtonAnimationCurve;
+ animationDuration?: number;
+ backgroundActive?: ColorValue;
+ backgroundColor?: ColorValue;
+ backgroundPlaceholder?: ColorValue;
+ backgroundProgress?: ColorValue;
+ borderBottomLeftRadius?: number;
+ borderBottomRightRadius?: number;
+ borderColor?: ColorValue;
+ borderRadius?: number;
+ borderTopLeftRadius?: number;
+ borderTopRightRadius?: number;
+ borderWidth?: number;
+ contentGap?: number;
+ depthColor?: ColorValue;
+ disabledBackgroundColor?: ColorValue;
+ disabledBorderColor?: ColorValue;
+ disabledDepthColor?: ColorValue;
+ disabledForegroundColor?: ColorValue;
+ disabledShadowColor?: ColorValue;
+ foregroundColor?: ColorValue;
+ paddingBottom?: number;
+ paddingHorizontal?: number;
+ paddingTop?: number;
+ pressedOverlayColor?: ColorValue;
+ pressInAnimationDuration?: number;
+ raiseAmount?: number;
+ shadowColor?: ColorValue;
+ textFontFamily?: string;
+ textLineHeight?: number;
+ textSize?: number;
+}
+
+// @public
+export type AwesomeButtonThemeDefinition = Omit & {
+ buttons: AwesomeButtonThemeDefinitions;
+};
+
+// @public
+export type AwesomeButtonThemeDefinitions = ThemeButtonDefinitions & Partial>;
+
+// @public
+export type AwesomeButtonVariant = ButtonVariant | 'x';
+
+// @public
+export type ButtonSize = 'icon' | 'small' | 'medium' | 'large';
+
+// @public @deprecated
+export type ButtonTypes = AwesomeButtonProps;
+
+// @public
+export type ButtonVariant = CoreButtonVariant | SocialButtonVariant;
+
+// @public
+export type ButtonWidth = number | 'auto' | null;
+
+// @public
+export type CoreButtonVariant = 'primary' | 'secondary' | 'anchor' | 'danger' | 'disabled' | 'flat';
+
+// @public
+export const getTheme: (index?: number | null, name?: ThemeName | null) => AwesomeButtonRegisteredThemeDefinition;
+
+// @public
+export type ProgressCompletionHandler = (callback?: () => void) => void;
+
+// @public
+export type RegisteredThemeDefinition = ThemeDefinition & {
+ name: ThemeName;
+ next: boolean;
+ prev: boolean;
+};
+
+// @public
+export type SocialButtonVariant = 'twitter' | 'messenger' | 'facebook' | 'github' | 'linkedin' | 'whatsapp' | 'reddit' | 'pinterest' | 'youtube';
+
+// @public
+export type ThemeButtonDefinitions = Record;
+
+// @public
+export type ThemeButtonStyle = Pick;
+
+// @public
+export const ThemedButton: (props: ThemedButtonProps) => JSX_2.Element;
+
+// @public
+export interface ThemedButtonProps extends AwesomeButtonProps {
+ autoWidth?: boolean;
+ config?: AwesomeButtonThemeDefinition;
+ flat?: boolean;
+ index?: number | null;
+ name?: ThemeName | null;
+ size?: ButtonSize;
+ transparent?: boolean;
+ type?: AwesomeButtonVariant;
+}
+
+// @public
+export type ThemeDefinition = {
+ title: string;
+ background: string;
+ color: string;
+ buttons: ThemeButtonDefinitions;
+ size: ThemeSizeDefinitions;
+};
+
+// @public
+export type ThemeName = 'basic' | 'bojack' | 'cartman' | 'mysterion' | 'c137' | 'rick' | 'summer' | 'bruce';
+
+// @public
+export type ThemeSizeDefinitions = Record;
+
+// @public
+export type ThemeSizeStyle = {
+ width: number;
+ height: number;
+ textSize?: number;
+ paddingHorizontal?: number;
+};
+
+// (No @packageDocumentation comment for this package)
+
+```
diff --git a/package-lock.json b/package-lock.json
deleted file mode 100644
index c974b35..0000000
--- a/package-lock.json
+++ /dev/null
@@ -1,17575 +0,0 @@
-{
- "name": "@rcaferati/react-native-awesome-button",
- "version": "3.1.0",
- "lockfileVersion": 3,
- "requires": true,
- "packages": {
- "": {
- "name": "@rcaferati/react-native-awesome-button",
- "version": "3.1.0",
- "license": "MIT",
- "dependencies": {
- "@rcaferati/wac": "1.2.0"
- },
- "devDependencies": {
- "@arkweid/lefthook": "^0.7.7",
- "@babel/core": "^7.28.5",
- "@babel/eslint-parser": "^7.18.2",
- "@babel/runtime": "^7.28.4",
- "@commitlint/config-conventional": "^17.0.2",
- "@react-native-community/eslint-config": "^3.0.2",
- "@react-native/babel-preset": "0.76.0",
- "@release-it/conventional-changelog": "^5.0.0",
- "@types/jest": "^29.5.12",
- "@types/lodash.debounce": "^4.0.7",
- "@types/react": "18.3.12",
- "commitlint": "^17.0.2",
- "eslint": "^8.4.1",
- "eslint-config-prettier": "^8.5.0",
- "eslint-plugin-prettier": "^4.0.0",
- "jest": "29.7.0",
- "lodash.debounce": "^4.0.8",
- "pod-install": "^0.1.0",
- "prettier": "^2.0.5",
- "react": "18.2.0",
- "react-native": "0.76.0",
- "react-native-builder-bob": "0.40.13",
- "react-test-renderer": "18.2.0",
- "release-it": "^15.0.0",
- "typescript": "5.6.3"
- },
- "peerDependencies": {
- "react": ">=18.2.0",
- "react-native": ">=0.76.0"
- }
- },
- "node_modules/@ark/schema": {
- "version": "0.56.0",
- "resolved": "https://registry.npmjs.org/@ark/schema/-/schema-0.56.0.tgz",
- "integrity": "sha512-ECg3hox/6Z/nLajxXqNhgPtNdHWC9zNsDyskwO28WinoFEnWow4IsERNz9AnXRhTZJnYIlAJ4uGn3nlLk65vZA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@ark/util": "0.56.0"
- }
- },
- "node_modules/@ark/util": {
- "version": "0.56.0",
- "resolved": "https://registry.npmjs.org/@ark/util/-/util-0.56.0.tgz",
- "integrity": "sha512-BghfRC8b9pNs3vBoDJhcta0/c1J1rsoS1+HgVUreMFPdhz/CRAKReAu57YEllNaSy98rWAdY1gE+gFup7OXpgA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@arkweid/lefthook": {
- "version": "0.7.7",
- "resolved": "https://registry.npmjs.org/@arkweid/lefthook/-/lefthook-0.7.7.tgz",
- "integrity": "sha512-Eq30OXKmjxIAIsTtbX2fcF3SNZIXS8yry1u8yty7PQFYRctx04rVlhOJCEB2UmfTh8T2vrOMC9IHHUvvo5zbaQ==",
- "cpu": [
- "x64",
- "arm64",
- "ia32"
- ],
- "deprecated": "@arkweid/lefthook has been renamed to @evilmartians/lefthook, please upgrade to it. You also can use @evilmartians/lefthook-installer",
- "dev": true,
- "hasInstallScript": true,
- "license": "MIT",
- "os": [
- "darwin",
- "linux",
- "win32"
- ],
- "bin": {
- "lefthook": "bin/index.js"
- }
- },
- "node_modules/@babel/code-frame": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz",
- "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-validator-identifier": "^7.28.5",
- "js-tokens": "^4.0.0",
- "picocolors": "^1.1.1"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/compat-data": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz",
- "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/core": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz",
- "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/code-frame": "^7.29.0",
- "@babel/generator": "^7.29.0",
- "@babel/helper-compilation-targets": "^7.28.6",
- "@babel/helper-module-transforms": "^7.28.6",
- "@babel/helpers": "^7.28.6",
- "@babel/parser": "^7.29.0",
- "@babel/template": "^7.28.6",
- "@babel/traverse": "^7.29.0",
- "@babel/types": "^7.29.0",
- "@jridgewell/remapping": "^2.3.5",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/babel"
- }
- },
- "node_modules/@babel/eslint-parser": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.28.6.tgz",
- "integrity": "sha512-QGmsKi2PBO/MHSQk+AAgA9R6OHQr+VqnniFE0eMWZcVcfBZoA2dKn2hUsl3Csg/Plt9opRUWdY7//VXsrIlEiA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1",
- "eslint-visitor-keys": "^2.1.0",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || >=14.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.11.0",
- "eslint": "^7.5.0 || ^8.0.0 || ^9.0.0"
- }
- },
- "node_modules/@babel/generator": {
- "version": "7.29.1",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz",
- "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/parser": "^7.29.0",
- "@babel/types": "^7.29.0",
- "@jridgewell/gen-mapping": "^0.3.12",
- "@jridgewell/trace-mapping": "^0.3.28",
- "jsesc": "^3.0.2"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-annotate-as-pure": {
- "version": "7.27.3",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz",
- "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/types": "^7.27.3"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-compilation-targets": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz",
- "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/compat-data": "^7.28.6",
- "@babel/helper-validator-option": "^7.27.1",
- "browserslist": "^4.24.0",
- "lru-cache": "^5.1.1",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-create-class-features-plugin": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.6.tgz",
- "integrity": "sha512-dTOdvsjnG3xNT9Y0AUg1wAl38y+4Rl4sf9caSQZOXdNqVn+H+HbbJ4IyyHaIqNR6SW9oJpA/RuRjsjCw2IdIow==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.27.3",
- "@babel/helper-member-expression-to-functions": "^7.28.5",
- "@babel/helper-optimise-call-expression": "^7.27.1",
- "@babel/helper-replace-supers": "^7.28.6",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1",
- "@babel/traverse": "^7.28.6",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-create-regexp-features-plugin": {
- "version": "7.28.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.28.5.tgz",
- "integrity": "sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.27.3",
- "regexpu-core": "^6.3.1",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-define-polyfill-provider": {
- "version": "0.6.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.8.tgz",
- "integrity": "sha512-47UwBLPpQi1NoWzLuHNjRoHlYXMwIJoBf7MFou6viC/sIHWYygpvr0B6IAyh5sBdA2nr2LPIRww8lfaUVQINBA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-compilation-targets": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6",
- "debug": "^4.4.3",
- "lodash.debounce": "^4.0.8",
- "resolve": "^1.22.11"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/@babel/helper-globals": {
- "version": "7.28.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz",
- "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-member-expression-to-functions": {
- "version": "7.28.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.28.5.tgz",
- "integrity": "sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/traverse": "^7.28.5",
- "@babel/types": "^7.28.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-module-imports": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz",
- "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/traverse": "^7.28.6",
- "@babel/types": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-module-transforms": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz",
- "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-module-imports": "^7.28.6",
- "@babel/helper-validator-identifier": "^7.28.5",
- "@babel/traverse": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-optimise-call-expression": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz",
- "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/types": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-plugin-utils": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz",
- "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-remap-async-to-generator": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz",
- "integrity": "sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.27.1",
- "@babel/helper-wrap-function": "^7.27.1",
- "@babel/traverse": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-replace-supers": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.28.6.tgz",
- "integrity": "sha512-mq8e+laIk94/yFec3DxSjCRD2Z0TAjhVbEJY3UQrlwVo15Lmt7C2wAUbK4bjnTs4APkwsYLTahXRraQXhb1WCg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-member-expression-to-functions": "^7.28.5",
- "@babel/helper-optimise-call-expression": "^7.27.1",
- "@babel/traverse": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz",
- "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/traverse": "^7.27.1",
- "@babel/types": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-string-parser": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz",
- "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-validator-identifier": {
- "version": "7.28.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz",
- "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-validator-option": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz",
- "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-wrap-function": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.28.6.tgz",
- "integrity": "sha512-z+PwLziMNBeSQJonizz2AGnndLsP2DeGHIxDAn+wdHOGuo4Fo1x1HBPPXeE9TAOPHNNWQKCSlA2VZyYyyibDnQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/template": "^7.28.6",
- "@babel/traverse": "^7.28.6",
- "@babel/types": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helpers": {
- "version": "7.29.2",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz",
- "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/template": "^7.28.6",
- "@babel/types": "^7.29.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/parser": {
- "version": "7.29.2",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz",
- "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/types": "^7.29.0"
- },
- "bin": {
- "parser": "bin/babel-parser.js"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": {
- "version": "7.28.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.28.5.tgz",
- "integrity": "sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/traverse": "^7.28.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz",
- "integrity": "sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz",
- "integrity": "sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz",
- "integrity": "sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1",
- "@babel/plugin-transform-optional-chaining": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.13.0"
- }
- },
- "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.28.6.tgz",
- "integrity": "sha512-a0aBScVTlNaiUe35UtfxAN7A/tehvvG4/ByO6+46VPKTRSlfnAFsgKy0FUh+qAkQrDTmhDkT+IBOKlOoMUxQ0g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/traverse": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-proposal-class-properties": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz",
- "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==",
- "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.18.6",
- "@babel/helper-plugin-utils": "^7.18.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-export-default-from": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.27.1.tgz",
- "integrity": "sha512-hjlsMBl1aJc5lp8MoCDEZCiYzlgdRAShOjAfRw6X+GlpLpUPU7c3XNLsKFZbQk/1cRzBlJ7CXg3xJAJMrFa1Uw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz",
- "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==",
- "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.18.6",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-optional-chaining": {
- "version": "7.21.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz",
- "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==",
- "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.20.2",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-proposal-private-property-in-object": {
- "version": "7.21.0-placeholder-for-preset-env.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz",
- "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-async-generators": {
- "version": "7.8.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
- "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-bigint": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
- "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-class-properties": {
- "version": "7.12.13",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
- "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.12.13"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-class-static-block": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
- "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-dynamic-import": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
- "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-export-default-from": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.28.6.tgz",
- "integrity": "sha512-Svlx1fjJFnNz0LZeUaybRukSxZI3KkpApUmIRzEdXC5k8ErTOz0OD0kNrICi5Vc3GlpP5ZCeRyRO+mfWTSz+iQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-flow": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.28.6.tgz",
- "integrity": "sha512-D+OrJumc9McXNEBI/JmFnc/0uCM2/Y3PEBG3gfV3QIYkKv5pvnpzFrl1kYCrcHJP8nOeFB/SHi1IHz29pNGuew==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-import-assertions": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.28.6.tgz",
- "integrity": "sha512-pSJUpFHdx9z5nqTSirOCMtYVP2wFgoWhP0p3g8ONK/4IHhLIBd0B9NYqAvIUAhq+OkhO4VM1tENCt0cjlsNShw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-import-attributes": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz",
- "integrity": "sha512-jiLC0ma9XkQT3TKJ9uYvlakm66Pamywo+qwL+oL8HJOvc6TWdZXVfhqJr8CCzbSGUAbDOzlGHJC1U+vRfLQDvw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-import-meta": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
- "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-json-strings": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
- "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-jsx": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.28.6.tgz",
- "integrity": "sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-logical-assignment-operators": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
- "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
- "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-numeric-separator": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
- "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-object-rest-spread": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
- "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-optional-catch-binding": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
- "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-optional-chaining": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
- "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-private-property-in-object": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
- "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-top-level-await": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
- "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-typescript": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.28.6.tgz",
- "integrity": "sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-syntax-unicode-sets-regex": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz",
- "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.18.6",
- "@babel/helper-plugin-utils": "^7.18.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-transform-arrow-functions": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz",
- "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-async-generator-functions": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.29.0.tgz",
- "integrity": "sha512-va0VdWro4zlBr2JsXC+ofCPB2iG12wPtVGTWFx2WLDOM3nYQZZIGP82qku2eW/JR83sD+k2k+CsNtyEbUqhU6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/helper-remap-async-to-generator": "^7.27.1",
- "@babel/traverse": "^7.29.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-async-to-generator": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.28.6.tgz",
- "integrity": "sha512-ilTRcmbuXjsMmcZ3HASTe4caH5Tpo93PkTxF9oG2VZsSWsahydmcEHhix9Ik122RcTnZnUzPbmux4wh1swfv7g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-module-imports": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/helper-remap-async-to-generator": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-block-scoped-functions": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz",
- "integrity": "sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-block-scoping": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.6.tgz",
- "integrity": "sha512-tt/7wOtBmwHPNMPu7ax4pdPz6shjFrmHDghvNC+FG9Qvj7D6mJcoRQIF5dy4njmxR941l6rgtvfSB2zX3VlUIw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-class-properties": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.28.6.tgz",
- "integrity": "sha512-dY2wS3I2G7D697VHndN91TJr8/AAfXQNt5ynCTI/MpxMsSzHp+52uNivYT5wCPax3whc47DR8Ba7cmlQMg24bw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-class-static-block": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.28.6.tgz",
- "integrity": "sha512-rfQ++ghVwTWTqQ7w8qyDxL1XGihjBss4CmTgGRCTAC9RIbhVpyp4fOeZtta0Lbf+dTNIVJer6ych2ibHwkZqsQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.12.0"
- }
- },
- "node_modules/@babel/plugin-transform-classes": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.6.tgz",
- "integrity": "sha512-EF5KONAqC5zAqT783iMGuM2ZtmEBy+mJMOKl2BCvPZ2lVrwvXnB6o+OBWCS+CoeCCpVRF2sA2RBKUxvT8tQT5Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.27.3",
- "@babel/helper-compilation-targets": "^7.28.6",
- "@babel/helper-globals": "^7.28.0",
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/helper-replace-supers": "^7.28.6",
- "@babel/traverse": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-computed-properties": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.28.6.tgz",
- "integrity": "sha512-bcc3k0ijhHbc2lEfpFHgx7eYw9KNXqOerKWfzbxEHUGKnS3sz9C4CNL9OiFN1297bDNfUiSO7DaLzbvHQQQ1BQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/template": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-destructuring": {
- "version": "7.28.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.5.tgz",
- "integrity": "sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/traverse": "^7.28.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-dotall-regex": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.28.6.tgz",
- "integrity": "sha512-SljjowuNKB7q5Oayv4FoPzeB74g3QgLt8IVJw9ADvWy3QnUb/01aw8I4AVv8wYnPvQz2GDDZ/g3GhcNyDBI4Bg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.28.5",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-duplicate-keys": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz",
- "integrity": "sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.29.0.tgz",
- "integrity": "sha512-zBPcW2lFGxdiD8PUnPwJjag2J9otbcLQzvbiOzDxpYXyCuYX9agOwMPGn1prVH0a4qzhCKu24rlH4c1f7yA8rw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.28.5",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-transform-dynamic-import": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz",
- "integrity": "sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-explicit-resource-management": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.6.tgz",
- "integrity": "sha512-Iao5Konzx2b6g7EPqTy40UZbcdXE126tTxVFr/nAIj+WItNxjKSYTEw3RC+A2/ZetmdJsgueL1KhaMCQHkLPIg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/plugin-transform-destructuring": "^7.28.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-exponentiation-operator": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.28.6.tgz",
- "integrity": "sha512-WitabqiGjV/vJ0aPOLSFfNY1u9U3R7W36B03r5I2KoNix+a3sOhJ3pKFB3R5It9/UiK78NiO0KE9P21cMhlPkw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-export-namespace-from": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz",
- "integrity": "sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-flow-strip-types": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.27.1.tgz",
- "integrity": "sha512-G5eDKsu50udECw7DL2AcsysXiQyB7Nfg521t2OAJ4tbfTJ27doHLeF/vlI1NZGlLdbb/v+ibvtL1YBQqYOwJGg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/plugin-syntax-flow": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-for-of": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz",
- "integrity": "sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-function-name": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz",
- "integrity": "sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-compilation-targets": "^7.27.1",
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/traverse": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-json-strings": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.28.6.tgz",
- "integrity": "sha512-Nr+hEN+0geQkzhbdgQVPoqr47lZbm+5fCUmO70722xJZd0Mvb59+33QLImGj6F+DkK3xgDi1YVysP8whD6FQAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-literals": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz",
- "integrity": "sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-logical-assignment-operators": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.28.6.tgz",
- "integrity": "sha512-+anKKair6gpi8VsM/95kmomGNMD0eLz1NQ8+Pfw5sAwWH9fGYXT50E55ZpV0pHUHWf6IUTWPM+f/7AAff+wr9A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-member-expression-literals": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz",
- "integrity": "sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-amd": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz",
- "integrity": "sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-module-transforms": "^7.27.1",
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-commonjs": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.28.6.tgz",
- "integrity": "sha512-jppVbf8IV9iWWwWTQIxJMAJCWBuuKx71475wHwYytrRGQ2CWiDvYlADQno3tcYpS/T2UUWFQp3nVtYfK/YBQrA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-module-transforms": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-systemjs": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.0.tgz",
- "integrity": "sha512-PrujnVFbOdUpw4UHiVwKvKRLMMic8+eC0CuNlxjsyZUiBjhFdPsewdXCkveh2KqBA9/waD0W1b4hXSOBQJezpQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-module-transforms": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/helper-validator-identifier": "^7.28.5",
- "@babel/traverse": "^7.29.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-modules-umd": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz",
- "integrity": "sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-module-transforms": "^7.27.1",
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-named-capturing-groups-regex": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.29.0.tgz",
- "integrity": "sha512-1CZQA5KNAD6ZYQLPw7oi5ewtDNxH/2vuCh+6SmvgDfhumForvs8a1o9n0UrEoBD8HU4djO2yWngTQlXl1NDVEQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.28.5",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-transform-new-target": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz",
- "integrity": "sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-nullish-coalescing-operator": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.28.6.tgz",
- "integrity": "sha512-3wKbRgmzYbw24mDJXT7N+ADXw8BC/imU9yo9c9X9NKaLF1fW+e5H1U5QjMUBe4Qo4Ox/o++IyUkl1sVCLgevKg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-numeric-separator": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.28.6.tgz",
- "integrity": "sha512-SJR8hPynj8outz+SlStQSwvziMN4+Bq99it4tMIf5/Caq+3iOc0JtKyse8puvyXkk3eFRIA5ID/XfunGgO5i6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-object-rest-spread": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.6.tgz",
- "integrity": "sha512-5rh+JR4JBC4pGkXLAcYdLHZjXudVxWMXbB6u6+E9lRL5TrGVbHt1TjxGbZ8CkmYw9zjkB7jutzOROArsqtncEA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-compilation-targets": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/plugin-transform-destructuring": "^7.28.5",
- "@babel/plugin-transform-parameters": "^7.27.7",
- "@babel/traverse": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-object-super": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz",
- "integrity": "sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/helper-replace-supers": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-optional-catch-binding": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.28.6.tgz",
- "integrity": "sha512-R8ja/Pyrv0OGAvAXQhSTmWyPJPml+0TMqXlO5w+AsMEiwb2fg3WkOvob7UxFSL3OIttFSGSRFKQsOhJ/X6HQdQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-optional-chaining": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.28.6.tgz",
- "integrity": "sha512-A4zobikRGJTsX9uqVFdafzGkqD30t26ck2LmOzAuLL8b2x6k3TIqRiT2xVvA9fNmFeTX484VpsdgmKNA0bS23w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-parameters": {
- "version": "7.27.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.7.tgz",
- "integrity": "sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-private-methods": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.28.6.tgz",
- "integrity": "sha512-piiuapX9CRv7+0st8lmuUlRSmX6mBcVeNQ1b4AYzJxfCMuBfB0vBXDiGSmm03pKJw1v6cZ8KSeM+oUnM6yAExg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-private-property-in-object": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.28.6.tgz",
- "integrity": "sha512-b97jvNSOb5+ehyQmBpmhOCiUC5oVK4PMnpRvO7+ymFBoqYjeDHIU9jnrNUuwHOiL9RpGDoKBpSViarV+BU+eVA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.27.3",
- "@babel/helper-create-class-features-plugin": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-property-literals": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz",
- "integrity": "sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-display-name": {
- "version": "7.28.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.28.0.tgz",
- "integrity": "sha512-D6Eujc2zMxKjfa4Zxl4GHMsmhKKZ9VpcqIchJLvwTxad9zWIYulwYItBovpDOoNLISpcZSXoDJ5gaGbQUDqViA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-jsx": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.28.6.tgz",
- "integrity": "sha512-61bxqhiRfAACulXSLd/GxqmAedUSrRZIu/cbaT18T1CetkTmtDN15it7i80ru4DVqRK1WMxQhXs+Lf9kajm5Ow==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.27.3",
- "@babel/helper-module-imports": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/plugin-syntax-jsx": "^7.28.6",
- "@babel/types": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-jsx-development": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.27.1.tgz",
- "integrity": "sha512-ykDdF5yI4f1WrAolLqeF3hmYU12j9ntLQl/AOG1HAS21jxyg1Q0/J/tpREuYLfatGdGmXp/3yS0ZA76kOlVq9Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/plugin-transform-react-jsx": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-jsx-self": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz",
- "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-jsx-source": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz",
- "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-react-pure-annotations": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz",
- "integrity": "sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.27.1",
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-regenerator": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.29.0.tgz",
- "integrity": "sha512-FijqlqMA7DmRdg/aINBSs04y8XNTYw/lr1gJ2WsmBnnaNw1iS43EPkJW+zK7z65auG3AWRFXWj+NcTQwYptUog==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-regexp-modifiers": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.28.6.tgz",
- "integrity": "sha512-QGWAepm9qxpaIs7UM9FvUSnCGlb8Ua1RhyM4/veAxLwt3gMat/LSGrZixyuj4I6+Kn9iwvqCyPTtbdxanYoWYg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.28.5",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-transform-reserved-words": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz",
- "integrity": "sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-runtime": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.29.0.tgz",
- "integrity": "sha512-jlaRT5dJtMaMCV6fAuLbsQMSwz/QkvaHOHOSXRitGGwSpR1blCY4KUKoyP2tYO8vJcqYe8cEj96cqSztv3uF9w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-module-imports": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6",
- "babel-plugin-polyfill-corejs2": "^0.4.14",
- "babel-plugin-polyfill-corejs3": "^0.13.0",
- "babel-plugin-polyfill-regenerator": "^0.6.5",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-shorthand-properties": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz",
- "integrity": "sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-spread": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.28.6.tgz",
- "integrity": "sha512-9U4QObUC0FtJl05AsUcodau/RWDytrU6uKgkxu09mLR9HLDAtUMoPuuskm5huQsoktmsYpI+bGmq+iapDcriKA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-sticky-regex": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz",
- "integrity": "sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-strict-mode": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-strict-mode/-/plugin-transform-strict-mode-7.27.1.tgz",
- "integrity": "sha512-cdA1TyX9NfOaV8PILyNSrzJxXnjk4UeAgSwSLDCepfOg9AlxCg5al0KWsFh0ZJRzp6k5gwpSlJ4auWT+gx46ig==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-template-literals": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz",
- "integrity": "sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-typeof-symbol": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz",
- "integrity": "sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-typescript": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.6.tgz",
- "integrity": "sha512-0YWL2RFxOqEm9Efk5PvreamxPME8OyY0wM5wh5lHjF+VtVhdneCWGzZeSqzOfiobVqQaNCd2z0tQvnI9DaPWPw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.27.3",
- "@babel/helper-create-class-features-plugin": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1",
- "@babel/plugin-syntax-typescript": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-escapes": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz",
- "integrity": "sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-property-regex": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.28.6.tgz",
- "integrity": "sha512-4Wlbdl/sIZjzi/8St0evF0gEZrgOswVO6aOzqxh1kDZOl9WmLrHq2HtGhnOJZmHZYKP8WZ1MDLCt5DAWwRo57A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.28.5",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-regex": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz",
- "integrity": "sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.27.1",
- "@babel/helper-plugin-utils": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/plugin-transform-unicode-sets-regex": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.28.6.tgz",
- "integrity": "sha512-/wHc/paTUmsDYN7SZkpWxogTOBNnlx7nBQYfy6JJlCT7G3mVhltk3e++N7zV0XfgGsrqBxd4rJQt9H16I21Y1Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.28.5",
- "@babel/helper-plugin-utils": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/preset-env": {
- "version": "7.29.2",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.29.2.tgz",
- "integrity": "sha512-DYD23veRYGvBFhcTY1iUvJnDNpuqNd/BzBwCvzOTKUnJjKg5kpUBh3/u9585Agdkgj+QuygG7jLfOPWMa2KVNw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/compat-data": "^7.29.0",
- "@babel/helper-compilation-targets": "^7.28.6",
- "@babel/helper-plugin-utils": "^7.28.6",
- "@babel/helper-validator-option": "^7.27.1",
- "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.28.5",
- "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1",
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1",
- "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.28.6",
- "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",
- "@babel/plugin-syntax-import-assertions": "^7.28.6",
- "@babel/plugin-syntax-import-attributes": "^7.28.6",
- "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6",
- "@babel/plugin-transform-arrow-functions": "^7.27.1",
- "@babel/plugin-transform-async-generator-functions": "^7.29.0",
- "@babel/plugin-transform-async-to-generator": "^7.28.6",
- "@babel/plugin-transform-block-scoped-functions": "^7.27.1",
- "@babel/plugin-transform-block-scoping": "^7.28.6",
- "@babel/plugin-transform-class-properties": "^7.28.6",
- "@babel/plugin-transform-class-static-block": "^7.28.6",
- "@babel/plugin-transform-classes": "^7.28.6",
- "@babel/plugin-transform-computed-properties": "^7.28.6",
- "@babel/plugin-transform-destructuring": "^7.28.5",
- "@babel/plugin-transform-dotall-regex": "^7.28.6",
- "@babel/plugin-transform-duplicate-keys": "^7.27.1",
- "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.29.0",
- "@babel/plugin-transform-dynamic-import": "^7.27.1",
- "@babel/plugin-transform-explicit-resource-management": "^7.28.6",
- "@babel/plugin-transform-exponentiation-operator": "^7.28.6",
- "@babel/plugin-transform-export-namespace-from": "^7.27.1",
- "@babel/plugin-transform-for-of": "^7.27.1",
- "@babel/plugin-transform-function-name": "^7.27.1",
- "@babel/plugin-transform-json-strings": "^7.28.6",
- "@babel/plugin-transform-literals": "^7.27.1",
- "@babel/plugin-transform-logical-assignment-operators": "^7.28.6",
- "@babel/plugin-transform-member-expression-literals": "^7.27.1",
- "@babel/plugin-transform-modules-amd": "^7.27.1",
- "@babel/plugin-transform-modules-commonjs": "^7.28.6",
- "@babel/plugin-transform-modules-systemjs": "^7.29.0",
- "@babel/plugin-transform-modules-umd": "^7.27.1",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.29.0",
- "@babel/plugin-transform-new-target": "^7.27.1",
- "@babel/plugin-transform-nullish-coalescing-operator": "^7.28.6",
- "@babel/plugin-transform-numeric-separator": "^7.28.6",
- "@babel/plugin-transform-object-rest-spread": "^7.28.6",
- "@babel/plugin-transform-object-super": "^7.27.1",
- "@babel/plugin-transform-optional-catch-binding": "^7.28.6",
- "@babel/plugin-transform-optional-chaining": "^7.28.6",
- "@babel/plugin-transform-parameters": "^7.27.7",
- "@babel/plugin-transform-private-methods": "^7.28.6",
- "@babel/plugin-transform-private-property-in-object": "^7.28.6",
- "@babel/plugin-transform-property-literals": "^7.27.1",
- "@babel/plugin-transform-regenerator": "^7.29.0",
- "@babel/plugin-transform-regexp-modifiers": "^7.28.6",
- "@babel/plugin-transform-reserved-words": "^7.27.1",
- "@babel/plugin-transform-shorthand-properties": "^7.27.1",
- "@babel/plugin-transform-spread": "^7.28.6",
- "@babel/plugin-transform-sticky-regex": "^7.27.1",
- "@babel/plugin-transform-template-literals": "^7.27.1",
- "@babel/plugin-transform-typeof-symbol": "^7.27.1",
- "@babel/plugin-transform-unicode-escapes": "^7.27.1",
- "@babel/plugin-transform-unicode-property-regex": "^7.28.6",
- "@babel/plugin-transform-unicode-regex": "^7.27.1",
- "@babel/plugin-transform-unicode-sets-regex": "^7.28.6",
- "@babel/preset-modules": "0.1.6-no-external-plugins",
- "babel-plugin-polyfill-corejs2": "^0.4.15",
- "babel-plugin-polyfill-corejs3": "^0.14.0",
- "babel-plugin-polyfill-regenerator": "^0.6.6",
- "core-js-compat": "^3.48.0",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/preset-env/node_modules/babel-plugin-polyfill-corejs3": {
- "version": "0.14.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.14.2.tgz",
- "integrity": "sha512-coWpDLJ410R781Npmn/SIBZEsAetR4xVi0SxLMXPaMO4lSf1MwnkGYMtkFxew0Dn8B3/CpbpYxN0JCgg8mn67g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.6.8",
- "core-js-compat": "^3.48.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/@babel/preset-flow": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.27.1.tgz",
- "integrity": "sha512-ez3a2it5Fn6P54W8QkbfIyyIbxlXvcxyWHHvno1Wg0Ej5eiJY5hBb8ExttoIOJJk7V2dZE6prP7iby5q2aQ0Lg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/helper-validator-option": "^7.27.1",
- "@babel/plugin-transform-flow-strip-types": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/preset-modules": {
- "version": "0.1.6-no-external-plugins",
- "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz",
- "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/types": "^7.4.4",
- "esutils": "^2.0.2"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/@babel/preset-react": {
- "version": "7.28.5",
- "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.28.5.tgz",
- "integrity": "sha512-Z3J8vhRq7CeLjdC58jLv4lnZ5RKFUJWqH5emvxmv9Hv3BD1T9R/Im713R4MTKwvFaV74ejZ3sM01LyEKk4ugNQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/helper-validator-option": "^7.27.1",
- "@babel/plugin-transform-react-display-name": "^7.28.0",
- "@babel/plugin-transform-react-jsx": "^7.27.1",
- "@babel/plugin-transform-react-jsx-development": "^7.27.1",
- "@babel/plugin-transform-react-pure-annotations": "^7.27.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/preset-typescript": {
- "version": "7.28.5",
- "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.28.5.tgz",
- "integrity": "sha512-+bQy5WOI2V6LJZpPVxY+yp66XdZ2yifu0Mc1aP5CQKgjn4QM5IN2i5fAZ4xKop47pr8rpVhiAeu+nDQa12C8+g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.27.1",
- "@babel/helper-validator-option": "^7.27.1",
- "@babel/plugin-syntax-jsx": "^7.27.1",
- "@babel/plugin-transform-modules-commonjs": "^7.27.1",
- "@babel/plugin-transform-typescript": "^7.28.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/register": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.28.6.tgz",
- "integrity": "sha512-pgcbbEl/dWQYb6L6Yew6F94rdwygfuv+vJ/tXfwIOYAfPB6TNWpXUMEtEq3YuTeHRdvMIhvz13bkT9CNaS+wqA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "clone-deep": "^4.0.1",
- "find-cache-dir": "^2.0.0",
- "make-dir": "^2.1.0",
- "pirates": "^4.0.6",
- "source-map-support": "^0.5.16"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/@babel/register/node_modules/make-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
- "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pify": "^4.0.1",
- "semver": "^5.6.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/@babel/register/node_modules/pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/@babel/register/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/@babel/register/node_modules/source-map-support": {
- "version": "0.5.21",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
- "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "node_modules/@babel/runtime": {
- "version": "7.29.2",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz",
- "integrity": "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/template": {
- "version": "7.28.6",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz",
- "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/code-frame": "^7.28.6",
- "@babel/parser": "^7.28.6",
- "@babel/types": "^7.28.6"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/traverse": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz",
- "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/code-frame": "^7.29.0",
- "@babel/generator": "^7.29.0",
- "@babel/helper-globals": "^7.28.0",
- "@babel/parser": "^7.29.0",
- "@babel/template": "^7.28.6",
- "@babel/types": "^7.29.0",
- "debug": "^4.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/traverse--for-generate-function-map": {
- "name": "@babel/traverse",
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz",
- "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/code-frame": "^7.29.0",
- "@babel/generator": "^7.29.0",
- "@babel/helper-globals": "^7.28.0",
- "@babel/parser": "^7.29.0",
- "@babel/template": "^7.28.6",
- "@babel/types": "^7.29.0",
- "debug": "^4.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/types": {
- "version": "7.29.0",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz",
- "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-string-parser": "^7.27.1",
- "@babel/helper-validator-identifier": "^7.28.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@bcoe/v8-coverage": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
- "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@commitlint/cli": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-17.8.1.tgz",
- "integrity": "sha512-ay+WbzQesE0Rv4EQKfNbSMiJJ12KdKTDzIt0tcK4k11FdsWmtwP0Kp1NWMOUswfIWo6Eb7p7Ln721Nx9FLNBjg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/format": "^17.8.1",
- "@commitlint/lint": "^17.8.1",
- "@commitlint/load": "^17.8.1",
- "@commitlint/read": "^17.8.1",
- "@commitlint/types": "^17.8.1",
- "execa": "^5.0.0",
- "lodash.isfunction": "^3.0.9",
- "resolve-from": "5.0.0",
- "resolve-global": "1.0.0",
- "yargs": "^17.0.0"
- },
- "bin": {
- "commitlint": "cli.js"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/config-conventional": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-17.8.1.tgz",
- "integrity": "sha512-NxCOHx1kgneig3VLauWJcDWS40DVjg7nKOpBEEK9E5fjJpQqLCilcnKkIIjdBH98kEO1q3NpE5NSrZ2kl/QGJg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "conventional-changelog-conventionalcommits": "^6.1.0"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/config-validator": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-17.8.1.tgz",
- "integrity": "sha512-UUgUC+sNiiMwkyiuIFR7JG2cfd9t/7MV8VB4TZ+q02ZFkHoduUS4tJGsCBWvBOGD9Btev6IecPMvlWUfJorkEA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/types": "^17.8.1",
- "ajv": "^8.11.0"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/ensure": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-17.8.1.tgz",
- "integrity": "sha512-xjafwKxid8s1K23NFpL8JNo6JnY/ysetKo8kegVM7c8vs+kWLP8VrQq+NbhgVlmCojhEDbzQKp4eRXSjVOGsow==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/types": "^17.8.1",
- "lodash.camelcase": "^4.3.0",
- "lodash.kebabcase": "^4.1.1",
- "lodash.snakecase": "^4.1.1",
- "lodash.startcase": "^4.4.0",
- "lodash.upperfirst": "^4.3.1"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/execute-rule": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-17.8.1.tgz",
- "integrity": "sha512-JHVupQeSdNI6xzA9SqMF+p/JjrHTcrJdI02PwesQIDCIGUrv04hicJgCcws5nzaoZbROapPs0s6zeVHoxpMwFQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/format": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-17.8.1.tgz",
- "integrity": "sha512-f3oMTyZ84M9ht7fb93wbCKmWxO5/kKSbwuYvS867duVomoOsgrgljkGGIztmT/srZnaiGbaK8+Wf8Ik2tSr5eg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/types": "^17.8.1",
- "chalk": "^4.1.0"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/is-ignored": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-17.8.1.tgz",
- "integrity": "sha512-UshMi4Ltb4ZlNn4F7WtSEugFDZmctzFpmbqvpyxD3la510J+PLcnyhf9chs7EryaRFJMdAKwsEKfNK0jL/QM4g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/types": "^17.8.1",
- "semver": "7.5.4"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/is-ignored/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@commitlint/is-ignored/node_modules/semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@commitlint/is-ignored/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/@commitlint/lint": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-17.8.1.tgz",
- "integrity": "sha512-aQUlwIR1/VMv2D4GXSk7PfL5hIaFSfy6hSHV94O8Y27T5q+DlDEgd/cZ4KmVI+MWKzFfCTiTuWqjfRSfdRllCA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/is-ignored": "^17.8.1",
- "@commitlint/parse": "^17.8.1",
- "@commitlint/rules": "^17.8.1",
- "@commitlint/types": "^17.8.1"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/load": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-17.8.1.tgz",
- "integrity": "sha512-iF4CL7KDFstP1kpVUkT8K2Wl17h2yx9VaR1ztTc8vzByWWcbO/WaKwxsnCOqow9tVAlzPfo1ywk9m2oJ9ucMqA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/config-validator": "^17.8.1",
- "@commitlint/execute-rule": "^17.8.1",
- "@commitlint/resolve-extends": "^17.8.1",
- "@commitlint/types": "^17.8.1",
- "@types/node": "20.5.1",
- "chalk": "^4.1.0",
- "cosmiconfig": "^8.0.0",
- "cosmiconfig-typescript-loader": "^4.0.0",
- "lodash.isplainobject": "^4.0.6",
- "lodash.merge": "^4.6.2",
- "lodash.uniq": "^4.5.0",
- "resolve-from": "^5.0.0",
- "ts-node": "^10.8.1",
- "typescript": "^4.6.4 || ^5.2.2"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/message": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-17.8.1.tgz",
- "integrity": "sha512-6bYL1GUQsD6bLhTH3QQty8pVFoETfFQlMn2Nzmz3AOLqRVfNNtXBaSY0dhZ0dM6A2MEq4+2d7L/2LP8TjqGRkA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/parse": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-17.8.1.tgz",
- "integrity": "sha512-/wLUickTo0rNpQgWwLPavTm7WbwkZoBy3X8PpkUmlSmQJyWQTj0m6bDjiykMaDt41qcUbfeFfaCvXfiR4EGnfw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/types": "^17.8.1",
- "conventional-changelog-angular": "^6.0.0",
- "conventional-commits-parser": "^4.0.0"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/read": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-17.8.1.tgz",
- "integrity": "sha512-Fd55Oaz9irzBESPCdMd8vWWgxsW3OWR99wOntBDHgf9h7Y6OOHjWEdS9Xzen1GFndqgyoaFplQS5y7KZe0kO2w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/top-level": "^17.8.1",
- "@commitlint/types": "^17.8.1",
- "fs-extra": "^11.0.0",
- "git-raw-commits": "^2.0.11",
- "minimist": "^1.2.6"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/resolve-extends": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-17.8.1.tgz",
- "integrity": "sha512-W/ryRoQ0TSVXqJrx5SGkaYuAaE/BUontL1j1HsKckvM6e5ZaG0M9126zcwL6peKSuIetJi7E87PRQF8O86EW0Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/config-validator": "^17.8.1",
- "@commitlint/types": "^17.8.1",
- "import-fresh": "^3.0.0",
- "lodash.mergewith": "^4.6.2",
- "resolve-from": "^5.0.0",
- "resolve-global": "^1.0.0"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/rules": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-17.8.1.tgz",
- "integrity": "sha512-2b7OdVbN7MTAt9U0vKOYKCDsOvESVXxQmrvuVUZ0rGFMCrCPJWWP1GJ7f0lAypbDAhaGb8zqtdOr47192LBrIA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/ensure": "^17.8.1",
- "@commitlint/message": "^17.8.1",
- "@commitlint/to-lines": "^17.8.1",
- "@commitlint/types": "^17.8.1",
- "execa": "^5.0.0"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/to-lines": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-17.8.1.tgz",
- "integrity": "sha512-LE0jb8CuR/mj6xJyrIk8VLz03OEzXFgLdivBytoooKO5xLt5yalc8Ma5guTWobw998sbR3ogDd+2jed03CFmJA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/top-level": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-17.8.1.tgz",
- "integrity": "sha512-l6+Z6rrNf5p333SHfEte6r+WkOxGlWK4bLuZKbtf/2TXRN+qhrvn1XE63VhD8Oe9oIHQ7F7W1nG2k/TJFhx2yA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "find-up": "^5.0.0"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@commitlint/types": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-17.8.1.tgz",
- "integrity": "sha512-PXDQXkAmiMEG162Bqdh9ChML/GJZo6vU+7F03ALKDK8zYc6SuAr47LjG7hGYRqUOz+WK0dU7bQ0xzuqFMdxzeQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chalk": "^4.1.0"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/@cspotcode/source-map-support": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
- "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/trace-mapping": "0.3.9"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.9",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
- "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/resolve-uri": "^3.0.3",
- "@jridgewell/sourcemap-codec": "^1.4.10"
- }
- },
- "node_modules/@eslint-community/eslint-utils": {
- "version": "4.9.1",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz",
- "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "eslint-visitor-keys": "^3.4.3"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- },
- "peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
- }
- },
- "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/@eslint-community/regexpp": {
- "version": "4.12.2",
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz",
- "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
- }
- },
- "node_modules/@eslint/eslintrc": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
- "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^9.6.0",
- "globals": "^13.19.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/ajv": {
- "version": "6.15.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz",
- "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@eslint/js": {
- "version": "8.57.1",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz",
- "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- }
- },
- "node_modules/@humanwhocodes/config-array": {
- "version": "0.13.0",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz",
- "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==",
- "deprecated": "Use @eslint/config-array instead",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "@humanwhocodes/object-schema": "^2.0.3",
- "debug": "^4.3.1",
- "minimatch": "^3.0.5"
- },
- "engines": {
- "node": ">=10.10.0"
- }
- },
- "node_modules/@humanwhocodes/module-importer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
- "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=12.22"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/nzakas"
- }
- },
- "node_modules/@humanwhocodes/object-schema": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
- "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
- "deprecated": "Use @eslint/object-schema instead",
- "dev": true,
- "license": "BSD-3-Clause"
- },
- "node_modules/@hutson/parse-repository-url": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz",
- "integrity": "sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@iarna/toml": {
- "version": "2.2.5",
- "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz",
- "integrity": "sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/@isaacs/ttlcache": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/@isaacs/ttlcache/-/ttlcache-1.4.1.tgz",
- "integrity": "sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@istanbuljs/load-nyc-config": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
- "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
- "dev": true,
- "license": "ISC",
- "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"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "sprintf-js": "~1.0.2"
- }
- },
- "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": {
- "version": "3.14.2",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz",
- "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@istanbuljs/schema": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.6.tgz",
- "integrity": "sha512-+Sg6GCR/wy1oSmQDFq4LQDAhm3ETKnorxN+y5nbLULOR3P0c14f2Wurzj3/xqPXtasLFfHd5iRFQ7AJt4KH2cw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@jest/console": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz",
- "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/core": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz",
- "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/console": "^29.7.0",
- "@jest/reporters": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.0.0",
- "ci-info": "^3.2.0",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.9",
- "jest-changed-files": "^29.7.0",
- "jest-config": "^29.7.0",
- "jest-haste-map": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-regex-util": "^29.6.3",
- "jest-resolve": "^29.7.0",
- "jest-resolve-dependencies": "^29.7.0",
- "jest-runner": "^29.7.0",
- "jest-runtime": "^29.7.0",
- "jest-snapshot": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "jest-watcher": "^29.7.0",
- "micromatch": "^4.0.4",
- "pretty-format": "^29.7.0",
- "slash": "^3.0.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/@jest/create-cache-key-function": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz",
- "integrity": "sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/types": "^29.6.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/environment": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz",
- "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/fake-timers": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "jest-mock": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/expect": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz",
- "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "expect": "^29.7.0",
- "jest-snapshot": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/expect-utils": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz",
- "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "jest-get-type": "^29.6.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/fake-timers": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz",
- "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@sinonjs/fake-timers": "^10.0.2",
- "@types/node": "*",
- "jest-message-util": "^29.7.0",
- "jest-mock": "^29.7.0",
- "jest-util": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/globals": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz",
- "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/environment": "^29.7.0",
- "@jest/expect": "^29.7.0",
- "@jest/types": "^29.6.3",
- "jest-mock": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/reporters": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz",
- "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@bcoe/v8-coverage": "^0.2.3",
- "@jest/console": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@jridgewell/trace-mapping": "^0.3.18",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "collect-v8-coverage": "^1.0.0",
- "exit": "^0.1.2",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.9",
- "istanbul-lib-coverage": "^3.0.0",
- "istanbul-lib-instrument": "^6.0.0",
- "istanbul-lib-report": "^3.0.0",
- "istanbul-lib-source-maps": "^4.0.0",
- "istanbul-reports": "^3.1.3",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-worker": "^29.7.0",
- "slash": "^3.0.0",
- "string-length": "^4.0.1",
- "strip-ansi": "^6.0.0",
- "v8-to-istanbul": "^9.0.1"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/@jest/schemas": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz",
- "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@sinclair/typebox": "^0.27.8"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/source-map": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz",
- "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/trace-mapping": "^0.3.18",
- "callsites": "^3.0.0",
- "graceful-fs": "^4.2.9"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/test-result": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz",
- "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/console": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "collect-v8-coverage": "^1.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/test-sequencer": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz",
- "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/test-result": "^29.7.0",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/transform": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz",
- "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.11.6",
- "@jest/types": "^29.6.3",
- "@jridgewell/trace-mapping": "^0.3.18",
- "babel-plugin-istanbul": "^6.1.1",
- "chalk": "^4.0.0",
- "convert-source-map": "^2.0.0",
- "fast-json-stable-stringify": "^2.1.0",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "jest-regex-util": "^29.6.3",
- "jest-util": "^29.7.0",
- "micromatch": "^4.0.4",
- "pirates": "^4.0.4",
- "slash": "^3.0.0",
- "write-file-atomic": "^4.0.2"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jest/types": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz",
- "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/schemas": "^29.6.3",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "@types/istanbul-reports": "^3.0.0",
- "@types/node": "*",
- "@types/yargs": "^17.0.8",
- "chalk": "^4.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.13",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
- "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/sourcemap-codec": "^1.5.0",
- "@jridgewell/trace-mapping": "^0.3.24"
- }
- },
- "node_modules/@jridgewell/remapping": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz",
- "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/gen-mapping": "^0.3.5",
- "@jridgewell/trace-mapping": "^0.3.24"
- }
- },
- "node_modules/@jridgewell/resolve-uri": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
- "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@jridgewell/source-map": {
- "version": "0.3.11",
- "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz",
- "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/gen-mapping": "^0.3.5",
- "@jridgewell/trace-mapping": "^0.3.25"
- }
- },
- "node_modules/@jridgewell/sourcemap-codec": {
- "version": "1.5.5",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz",
- "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.31",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz",
- "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/resolve-uri": "^3.1.0",
- "@jridgewell/sourcemap-codec": "^1.4.14"
- }
- },
- "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": {
- "version": "5.1.1-v1",
- "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz",
- "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "eslint-scope": "5.1.1"
- }
- },
- "node_modules/@nodelib/fs.scandir": {
- "version": "2.1.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@nodelib/fs.stat": "2.0.5",
- "run-parallel": "^1.1.9"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/@nodelib/fs.stat": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/@nodelib/fs.walk": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@nodelib/fs.scandir": "2.1.5",
- "fastq": "^1.6.0"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/@octokit/auth-token": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.4.tgz",
- "integrity": "sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/core": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.4.tgz",
- "integrity": "sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/auth-token": "^3.0.0",
- "@octokit/graphql": "^5.0.0",
- "@octokit/request": "^6.0.0",
- "@octokit/request-error": "^3.0.0",
- "@octokit/types": "^9.0.0",
- "before-after-hook": "^2.2.0",
- "universal-user-agent": "^6.0.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/endpoint": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.6.tgz",
- "integrity": "sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/types": "^9.0.0",
- "is-plain-object": "^5.0.0",
- "universal-user-agent": "^6.0.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/endpoint/node_modules/is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@octokit/graphql": {
- "version": "5.0.6",
- "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.6.tgz",
- "integrity": "sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/request": "^6.0.0",
- "@octokit/types": "^9.0.0",
- "universal-user-agent": "^6.0.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/openapi-types": {
- "version": "18.1.1",
- "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.1.1.tgz",
- "integrity": "sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@octokit/plugin-paginate-rest": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.1.2.tgz",
- "integrity": "sha512-qhrmtQeHU/IivxucOV1bbI/xZyC/iOBhclokv7Sut5vnejAIAEXVcGQeRpQlU39E0WwK9lNvJHphHri/DB6lbQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/tsconfig": "^1.0.2",
- "@octokit/types": "^9.2.3"
- },
- "engines": {
- "node": ">= 14"
- },
- "peerDependencies": {
- "@octokit/core": ">=4"
- }
- },
- "node_modules/@octokit/plugin-request-log": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz",
- "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==",
- "dev": true,
- "license": "MIT",
- "peerDependencies": {
- "@octokit/core": ">=3"
- }
- },
- "node_modules/@octokit/plugin-rest-endpoint-methods": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.2.3.tgz",
- "integrity": "sha512-I5Gml6kTAkzVlN7KCtjOM+Ruwe/rQppp0QU372K1GP7kNOYEKe8Xn5BW4sE62JAHdwpq95OQK/qGNyKQMUzVgA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/types": "^10.0.0"
- },
- "engines": {
- "node": ">= 14"
- },
- "peerDependencies": {
- "@octokit/core": ">=3"
- }
- },
- "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-10.0.0.tgz",
- "integrity": "sha512-Vm8IddVmhCgU1fxC1eyinpwqzXPEYu0NrYzD3YZjlGjyftdLBTeqNblRC0jmJmgxbJIsQlyogVeGnrNaaMVzIg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/openapi-types": "^18.0.0"
- }
- },
- "node_modules/@octokit/request": {
- "version": "6.2.8",
- "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.8.tgz",
- "integrity": "sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/endpoint": "^7.0.0",
- "@octokit/request-error": "^3.0.0",
- "@octokit/types": "^9.0.0",
- "is-plain-object": "^5.0.0",
- "node-fetch": "^2.6.7",
- "universal-user-agent": "^6.0.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/request-error": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz",
- "integrity": "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/types": "^9.0.0",
- "deprecation": "^2.0.0",
- "once": "^1.4.0"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/request/node_modules/is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@octokit/rest": {
- "version": "19.0.11",
- "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.11.tgz",
- "integrity": "sha512-m2a9VhaP5/tUw8FwfnW2ICXlXpLPIqxtg3XcAiGMLj/Xhw3RSBfZ8le/466ktO1Gcjr8oXudGnHhxV1TXJgFxw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/core": "^4.2.1",
- "@octokit/plugin-paginate-rest": "^6.1.2",
- "@octokit/plugin-request-log": "^1.0.4",
- "@octokit/plugin-rest-endpoint-methods": "^7.1.2"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/@octokit/tsconfig": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@octokit/tsconfig/-/tsconfig-1.0.2.tgz",
- "integrity": "sha512-I0vDR0rdtP8p2lGMzvsJzbhdOWy405HcGovrspJ8RRibHnyRgggUSNO5AIox5LmqiwmatHKYsvj6VGFHkqS7lA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@octokit/types": {
- "version": "9.3.2",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz",
- "integrity": "sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@octokit/openapi-types": "^18.0.0"
- }
- },
- "node_modules/@pnpm/config.env-replace": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz",
- "integrity": "sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12.22.0"
- }
- },
- "node_modules/@pnpm/network.ca-file": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz",
- "integrity": "sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "graceful-fs": "4.2.10"
- },
- "engines": {
- "node": ">=12.22.0"
- }
- },
- "node_modules/@pnpm/network.ca-file/node_modules/graceful-fs": {
- "version": "4.2.10",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
- "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/@pnpm/npm-conf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-3.0.2.tgz",
- "integrity": "sha512-h104Kh26rR8tm+a3Qkc5S4VLYint3FE48as7+/5oCEcKR2idC/pF1G6AhIXKI+eHPJa/3J9i5z0Al47IeGHPkA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@pnpm/config.env-replace": "^1.1.0",
- "@pnpm/network.ca-file": "^1.0.1",
- "config-chain": "^1.1.11"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@rcaferati/wac": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@rcaferati/wac/-/wac-1.2.0.tgz",
- "integrity": "sha512-JHhiFVmWQQl9/x+kPGbIFuLM8KzERlWTSF9pDRwlodabTGlGmvb1dJnHpj/EczeQmK04KWBot0LdMG1fc+lAGg==",
- "license": "MIT",
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/@react-native-community/eslint-config": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@react-native-community/eslint-config/-/eslint-config-3.2.0.tgz",
- "integrity": "sha512-ZjGvoeiBtCbd506hQqwjKmkWPgynGUoJspG8/MuV/EfKnkjCtBmeJvq2n+sWbWEvL9LWXDp2GJmPzmvU5RSvKQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.14.0",
- "@babel/eslint-parser": "^7.18.2",
- "@react-native-community/eslint-plugin": "^1.1.0",
- "@typescript-eslint/eslint-plugin": "^5.30.5",
- "@typescript-eslint/parser": "^5.30.5",
- "eslint-config-prettier": "^8.5.0",
- "eslint-plugin-eslint-comments": "^3.2.0",
- "eslint-plugin-ft-flow": "^2.0.1",
- "eslint-plugin-jest": "^26.5.3",
- "eslint-plugin-prettier": "^4.2.1",
- "eslint-plugin-react": "^7.30.1",
- "eslint-plugin-react-hooks": "^4.6.0",
- "eslint-plugin-react-native": "^4.0.0"
- },
- "peerDependencies": {
- "eslint": ">=8",
- "prettier": ">=2"
- }
- },
- "node_modules/@react-native-community/eslint-plugin": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/@react-native-community/eslint-plugin/-/eslint-plugin-1.3.0.tgz",
- "integrity": "sha512-+zDZ20NUnSWghj7Ku5aFphMzuM9JulqCW+aPXT6IfIXFbb8tzYTTOSeRFOtuekJ99ibW2fUCSsjuKNlwDIbHFg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@react-native/assets-registry": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.76.0.tgz",
- "integrity": "sha512-U8KLV+PC/cRIiDpb1VbeGuEfKq2riZZtNVLp1UOyKWfPbWWu8j6Fr95w7j+nglp41z70iBeF2OmCiVnRvtNklA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@react-native/babel-plugin-codegen": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.76.0.tgz",
- "integrity": "sha512-HOi45pqlZnCTeR4jJ/zK0FB12r08CI9O70uBjVUqmzvHIrWmL5FaEFp6BPVFOjjXtUsl3JZ2Mle7WpsAP2PQBA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@react-native/codegen": "0.76.0"
- },
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@react-native/babel-preset": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/babel-preset/-/babel-preset-0.76.0.tgz",
- "integrity": "sha512-HgQt4MyuWLcnrIglXn7GNPPVwtzZ4ffX+SUisdhmPtJCHuP8AOU3HsgOKLhqVfEGWTBlE4kbWoTmmLU87IJaOw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.25.2",
- "@babel/plugin-proposal-export-default-from": "^7.24.7",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
- "@babel/plugin-syntax-export-default-from": "^7.24.7",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-transform-arrow-functions": "^7.24.7",
- "@babel/plugin-transform-async-generator-functions": "^7.25.4",
- "@babel/plugin-transform-async-to-generator": "^7.24.7",
- "@babel/plugin-transform-block-scoping": "^7.25.0",
- "@babel/plugin-transform-class-properties": "^7.25.4",
- "@babel/plugin-transform-classes": "^7.25.4",
- "@babel/plugin-transform-computed-properties": "^7.24.7",
- "@babel/plugin-transform-destructuring": "^7.24.8",
- "@babel/plugin-transform-flow-strip-types": "^7.25.2",
- "@babel/plugin-transform-for-of": "^7.24.7",
- "@babel/plugin-transform-function-name": "^7.25.1",
- "@babel/plugin-transform-literals": "^7.25.2",
- "@babel/plugin-transform-logical-assignment-operators": "^7.24.7",
- "@babel/plugin-transform-modules-commonjs": "^7.24.8",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.7",
- "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.7",
- "@babel/plugin-transform-numeric-separator": "^7.24.7",
- "@babel/plugin-transform-object-rest-spread": "^7.24.7",
- "@babel/plugin-transform-optional-catch-binding": "^7.24.7",
- "@babel/plugin-transform-optional-chaining": "^7.24.8",
- "@babel/plugin-transform-parameters": "^7.24.7",
- "@babel/plugin-transform-private-methods": "^7.24.7",
- "@babel/plugin-transform-private-property-in-object": "^7.24.7",
- "@babel/plugin-transform-react-display-name": "^7.24.7",
- "@babel/plugin-transform-react-jsx": "^7.25.2",
- "@babel/plugin-transform-react-jsx-self": "^7.24.7",
- "@babel/plugin-transform-react-jsx-source": "^7.24.7",
- "@babel/plugin-transform-regenerator": "^7.24.7",
- "@babel/plugin-transform-runtime": "^7.24.7",
- "@babel/plugin-transform-shorthand-properties": "^7.24.7",
- "@babel/plugin-transform-spread": "^7.24.7",
- "@babel/plugin-transform-sticky-regex": "^7.24.7",
- "@babel/plugin-transform-typescript": "^7.25.2",
- "@babel/plugin-transform-unicode-regex": "^7.24.7",
- "@babel/template": "^7.25.0",
- "@react-native/babel-plugin-codegen": "0.76.0",
- "babel-plugin-syntax-hermes-parser": "^0.23.1",
- "babel-plugin-transform-flow-enums": "^0.0.2",
- "react-refresh": "^0.14.0"
- },
- "engines": {
- "node": ">=18"
- },
- "peerDependencies": {
- "@babel/core": "*"
- }
- },
- "node_modules/@react-native/codegen": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.76.0.tgz",
- "integrity": "sha512-x0zzK1rb7ZSIAeHRcRSjRo+VtLROjln1IKnQSPLEZEdyQfWNXqgiMk59E5hW7KE6I05upqfbf85PRAb5WndXdw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/parser": "^7.25.3",
- "glob": "^7.1.1",
- "hermes-parser": "0.23.1",
- "invariant": "^2.2.4",
- "jscodeshift": "^0.14.0",
- "mkdirp": "^0.5.1",
- "nullthrows": "^1.1.1",
- "yargs": "^17.6.2"
- },
- "engines": {
- "node": ">=18"
- },
- "peerDependencies": {
- "@babel/preset-env": "^7.1.6"
- }
- },
- "node_modules/@react-native/community-cli-plugin": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.76.0.tgz",
- "integrity": "sha512-JFU5kmo+lUf5vOsieJ/dGS71Z2+qV3leXbKW6p8cn5aVfupVmtz/uYcFVdGzEGIGJ3juorYOZjpG8Qz91FrUZw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@react-native/dev-middleware": "0.76.0",
- "@react-native/metro-babel-transformer": "0.76.0",
- "chalk": "^4.0.0",
- "execa": "^5.1.1",
- "invariant": "^2.2.4",
- "metro": "^0.81.0",
- "metro-config": "^0.81.0",
- "metro-core": "^0.81.0",
- "node-fetch": "^2.2.0",
- "readline": "^1.3.0"
- },
- "engines": {
- "node": ">=18"
- },
- "peerDependencies": {
- "@react-native-community/cli-server-api": "*"
- },
- "peerDependenciesMeta": {
- "@react-native-community/cli-server-api": {
- "optional": true
- }
- }
- },
- "node_modules/@react-native/debugger-frontend": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.76.0.tgz",
- "integrity": "sha512-v4J22ZN1/7BQYhYvnZYi2pzd87MmTCEnxtTiktaUOhmx3YSF47LGo1Q2UfUE5YOzoRftiJTXDKvzDbI/hqAzgg==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@react-native/dev-middleware": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.76.0.tgz",
- "integrity": "sha512-XvSnCDwCghWCVNtGpoF30xgA1EzxvlGsEyhJCUe0uLMDaaVxr/ZkgD3nZ+/l4cEm1qlrlcAZoGctnUgrzHiTaA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@isaacs/ttlcache": "^1.4.1",
- "@react-native/debugger-frontend": "0.76.0",
- "chrome-launcher": "^0.15.2",
- "chromium-edge-launcher": "^0.2.0",
- "connect": "^3.6.5",
- "debug": "^2.2.0",
- "nullthrows": "^1.1.1",
- "open": "^7.0.3",
- "selfsigned": "^2.4.1",
- "serve-static": "^1.13.1",
- "ws": "^6.2.3"
- },
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@react-native/dev-middleware/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/@react-native/dev-middleware/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@react-native/gradle-plugin": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.76.0.tgz",
- "integrity": "sha512-MhsAahV/Ju0Md1x79ljaDsNzzFY02TsDqxSfOS8vc4trZuM0imFf7VEBitOydNDTf9NqzAqJ9p8j7OSuxUEvLg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@react-native/js-polyfills": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.76.0.tgz",
- "integrity": "sha512-0UzEqvg85Bn0BpgNG80wzbiWvNypwdl64sbRs/sEvIDjzgq/tM+u3KoneSD5tP72BCydAqXFfepff3FZgImfbA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@react-native/metro-babel-transformer": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.76.0.tgz",
- "integrity": "sha512-aq0MrjaOxDitSqQbttBcOt+5tjemCabhEX2gGthy8cNeZokBa2raoHQInDo9iBBN1ePKDCwKGypyC8zKA5dksQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.25.2",
- "@react-native/babel-preset": "0.76.0",
- "hermes-parser": "0.23.1",
- "nullthrows": "^1.1.1"
- },
- "engines": {
- "node": ">=18"
- },
- "peerDependencies": {
- "@babel/core": "*"
- }
- },
- "node_modules/@react-native/normalize-colors": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.76.0.tgz",
- "integrity": "sha512-r+pjeIhzehb+bJUUUrztOQb+n6J9DeaLbF6waLgiHa5mFOiwP/4/iWS68inSZnnBtmXHkN2IYiMXzExx8hieWA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@react-native/virtualized-lists": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.76.0.tgz",
- "integrity": "sha512-WT3Xi1+ikmWWdbrv3xnl8wYxobj1+N5JfiOQx7o/tiGUCx8m12pf5tlutXByH2m7X8bAZ+BBcRuu1vwt7XaRhQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "invariant": "^2.2.4",
- "nullthrows": "^1.1.1"
- },
- "engines": {
- "node": ">=18"
- },
- "peerDependencies": {
- "@types/react": "^18.2.6",
- "react": "*",
- "react-native": "*"
- },
- "peerDependenciesMeta": {
- "@types/react": {
- "optional": true
- }
- }
- },
- "node_modules/@release-it/conventional-changelog": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/@release-it/conventional-changelog/-/conventional-changelog-5.1.1.tgz",
- "integrity": "sha512-QtbDBe36dQfzexAfDYrbLPvd5Cb5bMWmLcjcGhCOWBss7fe1/gCjoxDULVz+7N7G5Nu2UMeBwHcUp/w8RDh5VQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "concat-stream": "^2.0.0",
- "conventional-changelog": "^3.1.25",
- "conventional-recommended-bump": "^6.1.0",
- "semver": "7.3.8"
- },
- "engines": {
- "node": ">=14"
- },
- "peerDependencies": {
- "release-it": "^15.4.1"
- }
- },
- "node_modules/@release-it/conventional-changelog/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@release-it/conventional-changelog/node_modules/semver": {
- "version": "7.3.8",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
- "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@release-it/conventional-changelog/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/@sinclair/typebox": {
- "version": "0.27.10",
- "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.10.tgz",
- "integrity": "sha512-MTBk/3jGLNB2tVxv6uLlFh1iu64iYOQ2PbdOSK3NW8JZsmlaOh2q6sdtKowBhfw8QFLmYNzTW4/oK4uATIi6ZA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@sindresorhus/is": {
- "version": "5.6.0",
- "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-5.6.0.tgz",
- "integrity": "sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/is?sponsor=1"
- }
- },
- "node_modules/@sinonjs/commons": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
- "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "type-detect": "4.0.8"
- }
- },
- "node_modules/@sinonjs/fake-timers": {
- "version": "10.3.0",
- "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz",
- "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "@sinonjs/commons": "^3.0.0"
- }
- },
- "node_modules/@szmarczak/http-timer": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-5.0.1.tgz",
- "integrity": "sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "defer-to-connect": "^2.0.1"
- },
- "engines": {
- "node": ">=14.16"
- }
- },
- "node_modules/@tsconfig/node10": {
- "version": "1.0.12",
- "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.12.tgz",
- "integrity": "sha512-UCYBaeFvM11aU2y3YPZ//O5Rhj+xKyzy7mvcIoAjASbigy8mHMryP5cK7dgjlz2hWxh1g5pLw084E0a/wlUSFQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@tsconfig/node12": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz",
- "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@tsconfig/node14": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz",
- "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@tsconfig/node16": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz",
- "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/babel__core": {
- "version": "7.20.5",
- "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz",
- "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/parser": "^7.20.7",
- "@babel/types": "^7.20.7",
- "@types/babel__generator": "*",
- "@types/babel__template": "*",
- "@types/babel__traverse": "*"
- }
- },
- "node_modules/@types/babel__generator": {
- "version": "7.27.0",
- "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz",
- "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/types": "^7.0.0"
- }
- },
- "node_modules/@types/babel__template": {
- "version": "7.4.4",
- "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz",
- "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/parser": "^7.1.0",
- "@babel/types": "^7.0.0"
- }
- },
- "node_modules/@types/babel__traverse": {
- "version": "7.28.0",
- "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz",
- "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/types": "^7.28.2"
- }
- },
- "node_modules/@types/graceful-fs": {
- "version": "4.1.9",
- "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz",
- "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/node": "*"
- }
- },
- "node_modules/@types/http-cache-semantics": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz",
- "integrity": "sha512-L3LgimLHXtGkWikKnsPg0/VFx9OGZaC+eN1u4r+OB1XRqH3meBIAVC2zr1WdMH+RHmnRkqliQAOHNJ/E0j/e0Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/istanbul-lib-coverage": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz",
- "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/istanbul-lib-report": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz",
- "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/istanbul-lib-coverage": "*"
- }
- },
- "node_modules/@types/istanbul-reports": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz",
- "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/istanbul-lib-report": "*"
- }
- },
- "node_modules/@types/jest": {
- "version": "29.5.14",
- "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz",
- "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "expect": "^29.0.0",
- "pretty-format": "^29.0.0"
- }
- },
- "node_modules/@types/json-schema": {
- "version": "7.0.15",
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
- "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/lodash": {
- "version": "4.17.24",
- "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.24.tgz",
- "integrity": "sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/lodash.debounce": {
- "version": "4.0.9",
- "resolved": "https://registry.npmjs.org/@types/lodash.debounce/-/lodash.debounce-4.0.9.tgz",
- "integrity": "sha512-Ma5JcgTREwpLRwMM+XwBR7DaWe96nC38uCBDFKZWbNKD+osjVzdpnUSwBcqCptrp16sSOLBAUb50Car5I0TCsQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/lodash": "*"
- }
- },
- "node_modules/@types/minimist": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz",
- "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/node": {
- "version": "20.5.1",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.1.tgz",
- "integrity": "sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/node-forge": {
- "version": "1.3.14",
- "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.14.tgz",
- "integrity": "sha512-mhVF2BnD4BO+jtOp7z1CdzaK4mbuK0LLQYAvdOLqHTavxFNq4zA1EmYkpnFjP8HOUzedfQkRnp0E2ulSAYSzAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/node": "*"
- }
- },
- "node_modules/@types/normalize-package-data": {
- "version": "2.4.4",
- "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz",
- "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/prop-types": {
- "version": "15.7.15",
- "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz",
- "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/react": {
- "version": "18.3.12",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz",
- "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/prop-types": "*",
- "csstype": "^3.0.2"
- }
- },
- "node_modules/@types/semver": {
- "version": "7.7.1",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.1.tgz",
- "integrity": "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/stack-utils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz",
- "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/yargs": {
- "version": "17.0.35",
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz",
- "integrity": "sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/yargs-parser": "*"
- }
- },
- "node_modules/@types/yargs-parser": {
- "version": "21.0.3",
- "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz",
- "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@typescript-eslint/eslint-plugin": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz",
- "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@eslint-community/regexpp": "^4.4.0",
- "@typescript-eslint/scope-manager": "5.62.0",
- "@typescript-eslint/type-utils": "5.62.0",
- "@typescript-eslint/utils": "5.62.0",
- "debug": "^4.3.4",
- "graphemer": "^1.4.0",
- "ignore": "^5.2.0",
- "natural-compare-lite": "^1.4.0",
- "semver": "^7.3.7",
- "tsutils": "^3.21.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "@typescript-eslint/parser": "^5.0.0",
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@typescript-eslint/parser": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz",
- "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "@typescript-eslint/scope-manager": "5.62.0",
- "@typescript-eslint/types": "5.62.0",
- "@typescript-eslint/typescript-estree": "5.62.0",
- "debug": "^4.3.4"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/scope-manager": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz",
- "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@typescript-eslint/types": "5.62.0",
- "@typescript-eslint/visitor-keys": "5.62.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/type-utils": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz",
- "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@typescript-eslint/typescript-estree": "5.62.0",
- "@typescript-eslint/utils": "5.62.0",
- "debug": "^4.3.4",
- "tsutils": "^3.21.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "eslint": "*"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/types": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz",
- "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/typescript-estree": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz",
- "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "@typescript-eslint/types": "5.62.0",
- "@typescript-eslint/visitor-keys": "5.62.0",
- "debug": "^4.3.4",
- "globby": "^11.1.0",
- "is-glob": "^4.0.3",
- "semver": "^7.3.7",
- "tsutils": "^3.21.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@typescript-eslint/utils": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz",
- "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@types/json-schema": "^7.0.9",
- "@types/semver": "^7.3.12",
- "@typescript-eslint/scope-manager": "5.62.0",
- "@typescript-eslint/types": "5.62.0",
- "@typescript-eslint/typescript-estree": "5.62.0",
- "eslint-scope": "^5.1.1",
- "semver": "^7.3.7"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
- }
- },
- "node_modules/@typescript-eslint/utils/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@typescript-eslint/visitor-keys": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz",
- "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@typescript-eslint/types": "5.62.0",
- "eslint-visitor-keys": "^3.3.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/@ungap/structured-clone": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz",
- "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/abort-controller": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz",
- "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "event-target-shim": "^5.0.0"
- },
- "engines": {
- "node": ">=6.5"
- }
- },
- "node_modules/accepts": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
- "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-types": "~2.1.34",
- "negotiator": "0.6.3"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/acorn": {
- "version": "8.16.0",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz",
- "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "acorn": "bin/acorn"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/acorn-jsx": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
- "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
- "dev": true,
- "license": "MIT",
- "peerDependencies": {
- "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
- }
- },
- "node_modules/acorn-walk": {
- "version": "8.3.5",
- "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.5.tgz",
- "integrity": "sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "acorn": "^8.11.0"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/add-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz",
- "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/agent-base": {
- "version": "7.1.4",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz",
- "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/aggregate-error": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
- "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "clean-stack": "^2.0.0",
- "indent-string": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/ajv": {
- "version": "8.18.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz",
- "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fast-deep-equal": "^3.1.3",
- "fast-uri": "^3.0.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
- "node_modules/anser": {
- "version": "1.4.10",
- "resolved": "https://registry.npmjs.org/anser/-/anser-1.4.10.tgz",
- "integrity": "sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/ansi-align": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz",
- "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "string-width": "^4.1.0"
- }
- },
- "node_modules/ansi-escapes": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
- "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "type-fest": "^0.21.3"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/ansi-escapes/node_modules/type-fest": {
- "version": "0.21.3",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
- "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/ansi-regex": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
- "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/anymatch": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
- "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/arg": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz",
- "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
- "dev": true,
- "license": "Python-2.0"
- },
- "node_modules/arkregex": {
- "version": "0.0.5",
- "resolved": "https://registry.npmjs.org/arkregex/-/arkregex-0.0.5.tgz",
- "integrity": "sha512-ncYjBdLlh5/QnVsAA8De16Tc9EqmYM7y/WU9j+236KcyYNUXogpz3sC4ATIZYzzLxwI+0sEOaQLEmLmRleaEXw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@ark/util": "0.56.0"
- }
- },
- "node_modules/arktype": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/arktype/-/arktype-2.2.0.tgz",
- "integrity": "sha512-t54MZ7ti5BhOEvzEkgKnWvqj+UbDfWig+DHr5I34xatymPusKLS0lQpNJd8M6DzmIto2QGszHfNKoFIT8tMCZQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@ark/schema": "0.56.0",
- "@ark/util": "0.56.0",
- "arkregex": "0.0.5"
- }
- },
- "node_modules/array-buffer-byte-length": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz",
- "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "is-array-buffer": "^3.0.5"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array-ify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz",
- "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/array-includes": {
- "version": "3.1.9",
- "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz",
- "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.4",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.24.0",
- "es-object-atoms": "^1.1.1",
- "get-intrinsic": "^1.3.0",
- "is-string": "^1.1.1",
- "math-intrinsics": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
- "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/array.prototype.findlast": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz",
- "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.2",
- "es-errors": "^1.3.0",
- "es-object-atoms": "^1.0.0",
- "es-shim-unscopables": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array.prototype.flat": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz",
- "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.5",
- "es-shim-unscopables": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array.prototype.flatmap": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz",
- "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.5",
- "es-shim-unscopables": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array.prototype.map": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/array.prototype.map/-/array.prototype.map-1.0.8.tgz",
- "integrity": "sha512-YocPM7bYYu2hXGxWpb5vwZ8cMeudNHYtYBcUDY4Z1GWa53qcnQMWSl25jeBHNzitjl9HW2AWW4ro/S/nftUaOQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.3",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.6",
- "es-array-method-boxes-properly": "^1.0.0",
- "es-object-atoms": "^1.0.0",
- "is-string": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/array.prototype.tosorted": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz",
- "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.3",
- "es-errors": "^1.3.0",
- "es-shim-unscopables": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/arraybuffer.prototype.slice": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz",
- "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-buffer-byte-length": "^1.0.1",
- "call-bind": "^1.0.8",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.5",
- "es-errors": "^1.3.0",
- "get-intrinsic": "^1.2.6",
- "is-array-buffer": "^3.0.4"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/arrify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
- "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/asap": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
- "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/ast-types": {
- "version": "0.15.2",
- "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.15.2.tgz",
- "integrity": "sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tslib": "^2.0.1"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/async-function": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz",
- "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/async-limiter": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
- "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/async-retry": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz",
- "integrity": "sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "retry": "0.13.1"
- }
- },
- "node_modules/available-typed-arrays": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
- "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "possible-typed-array-names": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/babel-core": {
- "version": "7.0.0-bridge.0",
- "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz",
- "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==",
- "dev": true,
- "license": "MIT",
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/babel-jest": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz",
- "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/transform": "^29.7.0",
- "@types/babel__core": "^7.1.14",
- "babel-plugin-istanbul": "^6.1.1",
- "babel-preset-jest": "^29.6.3",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.8.0"
- }
- },
- "node_modules/babel-plugin-istanbul": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
- "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
- "dev": true,
- "license": "BSD-3-Clause",
- "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"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz",
- "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==",
- "dev": true,
- "license": "BSD-3-Clause",
- "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"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/babel-plugin-jest-hoist": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz",
- "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/template": "^7.3.3",
- "@babel/types": "^7.3.3",
- "@types/babel__core": "^7.1.14",
- "@types/babel__traverse": "^7.0.6"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/babel-plugin-polyfill-corejs2": {
- "version": "0.4.17",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.17.tgz",
- "integrity": "sha512-aTyf30K/rqAsNwN76zYrdtx8obu0E4KoUME29B1xj+B3WxgvWkp943vYQ+z8Mv3lw9xHXMHpvSPOBxzAkIa94w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/compat-data": "^7.28.6",
- "@babel/helper-define-polyfill-provider": "^0.6.8",
- "semver": "^6.3.1"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/babel-plugin-polyfill-corejs3": {
- "version": "0.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.13.0.tgz",
- "integrity": "sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.6.5",
- "core-js-compat": "^3.43.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/babel-plugin-polyfill-regenerator": {
- "version": "0.6.8",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.8.tgz",
- "integrity": "sha512-M762rNHfSF1EV3SLtnCJXFoQbbIIz0OyRwnCmV0KPC7qosSfCO0QLTSuJX3ayAebubhE6oYBAYPrBA5ljowaZg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.6.8"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/babel-plugin-syntax-hermes-parser": {
- "version": "0.23.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-hermes-parser/-/babel-plugin-syntax-hermes-parser-0.23.1.tgz",
- "integrity": "sha512-uNLD0tk2tLUjGFdmCk+u/3FEw2o+BAwW4g+z2QVlxJrzZYOOPADroEcNtTPt5lNiScctaUmnsTkVEnOwZUOLhA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hermes-parser": "0.23.1"
- }
- },
- "node_modules/babel-plugin-transform-flow-enums": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-enums/-/babel-plugin-transform-flow-enums-0.0.2.tgz",
- "integrity": "sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/plugin-syntax-flow": "^7.12.1"
- }
- },
- "node_modules/babel-preset-current-node-syntax": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz",
- "integrity": "sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-bigint": "^7.8.3",
- "@babel/plugin-syntax-class-properties": "^7.12.13",
- "@babel/plugin-syntax-class-static-block": "^7.14.5",
- "@babel/plugin-syntax-import-attributes": "^7.24.7",
- "@babel/plugin-syntax-import-meta": "^7.10.4",
- "@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"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0 || ^8.0.0-0"
- }
- },
- "node_modules/babel-preset-jest": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz",
- "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "babel-plugin-jest-hoist": "^29.6.3",
- "babel-preset-current-node-syntax": "^1.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/balanced-match": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/base64-js": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
- "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT"
- },
- "node_modules/baseline-browser-mapping": {
- "version": "2.10.21",
- "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.21.tgz",
- "integrity": "sha512-Q+rUQ7Uz8AHM7DEaNdwvfFCTq7a43lNTzuS94eiWqwyxfV/wJv+oUivef51T91mmRY4d4A1u9rcSvkeufCVXlA==",
- "dev": true,
- "license": "Apache-2.0",
- "bin": {
- "baseline-browser-mapping": "dist/cli.cjs"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/basic-ftp": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.3.0.tgz",
- "integrity": "sha512-5K9eNNn7ywHPsYnFwjKgYH8Hf8B5emh7JKcPaVjjrMJFQQwGpwowEnZNEtHs7DfR7hCZsmaK3VA4HUK0YarT+w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10.0.0"
- }
- },
- "node_modules/before-after-hook": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz",
- "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==",
- "dev": true,
- "license": "Apache-2.0"
- },
- "node_modules/big-integer": {
- "version": "1.6.52",
- "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz",
- "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==",
- "dev": true,
- "license": "Unlicense",
- "engines": {
- "node": ">=0.6"
- }
- },
- "node_modules/bl": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz",
- "integrity": "sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "buffer": "^6.0.3",
- "inherits": "^2.0.4",
- "readable-stream": "^3.4.0"
- }
- },
- "node_modules/boxen": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/boxen/-/boxen-7.1.1.tgz",
- "integrity": "sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-align": "^3.0.1",
- "camelcase": "^7.0.1",
- "chalk": "^5.2.0",
- "cli-boxes": "^3.0.0",
- "string-width": "^5.1.2",
- "type-fest": "^2.13.0",
- "widest-line": "^4.0.1",
- "wrap-ansi": "^8.1.0"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/boxen/node_modules/ansi-regex": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz",
- "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-regex?sponsor=1"
- }
- },
- "node_modules/boxen/node_modules/ansi-styles": {
- "version": "6.2.3",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz",
- "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/boxen/node_modules/camelcase": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-7.0.1.tgz",
- "integrity": "sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/boxen/node_modules/chalk": {
- "version": "5.6.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz",
- "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.17.0 || ^14.13 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/boxen/node_modules/emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/boxen/node_modules/string-width": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "eastasianwidth": "^0.2.0",
- "emoji-regex": "^9.2.2",
- "strip-ansi": "^7.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/boxen/node_modules/strip-ansi": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz",
- "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^6.2.2"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/strip-ansi?sponsor=1"
- }
- },
- "node_modules/boxen/node_modules/type-fest": {
- "version": "2.19.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz",
- "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=12.20"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/boxen/node_modules/wrap-ansi": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
- "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^6.1.0",
- "string-width": "^5.0.1",
- "strip-ansi": "^7.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/bplist-parser": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz",
- "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "big-integer": "^1.6.44"
- },
- "engines": {
- "node": ">= 5.10.0"
- }
- },
- "node_modules/brace-expansion": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz",
- "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/braces": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
- "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fill-range": "^7.1.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/browserslist": {
- "version": "4.28.2",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz",
- "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==",
- "dev": true,
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/browserslist"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "baseline-browser-mapping": "^2.10.12",
- "caniuse-lite": "^1.0.30001782",
- "electron-to-chromium": "^1.5.328",
- "node-releases": "^2.0.36",
- "update-browserslist-db": "^1.2.3"
- },
- "bin": {
- "browserslist": "cli.js"
- },
- "engines": {
- "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
- }
- },
- "node_modules/bser": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
- "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "node-int64": "^0.4.0"
- }
- },
- "node_modules/buffer": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
- "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.2.1"
- }
- },
- "node_modules/buffer-from": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
- "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/bundle-name": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz",
- "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "run-applescript": "^5.0.0"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/cacheable-lookup": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz",
- "integrity": "sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=14.16"
- }
- },
- "node_modules/cacheable-request": {
- "version": "10.2.14",
- "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-10.2.14.tgz",
- "integrity": "sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/http-cache-semantics": "^4.0.2",
- "get-stream": "^6.0.1",
- "http-cache-semantics": "^4.1.1",
- "keyv": "^4.5.3",
- "mimic-response": "^4.0.0",
- "normalize-url": "^8.0.0",
- "responselike": "^3.0.0"
- },
- "engines": {
- "node": ">=14.16"
- }
- },
- "node_modules/call-bind": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz",
- "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind-apply-helpers": "^1.0.2",
- "es-define-property": "^1.0.1",
- "get-intrinsic": "^1.3.0",
- "set-function-length": "^1.2.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/call-bind-apply-helpers": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
- "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "function-bind": "^1.1.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/call-bound": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
- "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind-apply-helpers": "^1.0.2",
- "get-intrinsic": "^1.3.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/caller-callsite": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz",
- "integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "callsites": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/caller-callsite/node_modules/callsites": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz",
- "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/caller-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz",
- "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "caller-callsite": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/camelcase-keys": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz",
- "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "camelcase": "^5.3.1",
- "map-obj": "^4.0.0",
- "quick-lru": "^4.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/caniuse-lite": {
- "version": "1.0.30001790",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001790.tgz",
- "integrity": "sha512-bOoxfJPyYo+ds6W0YfptaCWbFnJYjh2Y1Eow5lRv+vI2u8ganPZqNm1JwNh0t2ELQCqIWg4B3dWEusgAmsoyOw==",
- "dev": true,
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "license": "CC-BY-4.0"
- },
- "node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/char-regex": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz",
- "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/chardet": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
- "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/chrome-launcher": {
- "version": "0.15.2",
- "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-0.15.2.tgz",
- "integrity": "sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "@types/node": "*",
- "escape-string-regexp": "^4.0.0",
- "is-wsl": "^2.2.0",
- "lighthouse-logger": "^1.0.0"
- },
- "bin": {
- "print-chrome-path": "bin/print-chrome-path.js"
- },
- "engines": {
- "node": ">=12.13.0"
- }
- },
- "node_modules/chromium-edge-launcher": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/chromium-edge-launcher/-/chromium-edge-launcher-0.2.0.tgz",
- "integrity": "sha512-JfJjUnq25y9yg4FABRRVPmBGWPZZi+AQXT4mxupb67766/0UlhG8PAZCz6xzEMXTbW3CsSoE8PcCWA49n35mKg==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "@types/node": "*",
- "escape-string-regexp": "^4.0.0",
- "is-wsl": "^2.2.0",
- "lighthouse-logger": "^1.0.0",
- "mkdirp": "^1.0.4",
- "rimraf": "^3.0.2"
- }
- },
- "node_modules/chromium-edge-launcher/node_modules/mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/ci-info": {
- "version": "3.9.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz",
- "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/sibiraj-s"
- }
- ],
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cjs-module-lexer": {
- "version": "1.4.3",
- "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz",
- "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/clean-stack": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
- "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/cli-boxes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz",
- "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/cli-cursor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
- "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "restore-cursor": "^3.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cli-spinners": {
- "version": "2.9.2",
- "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz",
- "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/cli-width": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz",
- "integrity": "sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">= 12"
- }
- },
- "node_modules/cliui": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
- "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.1",
- "wrap-ansi": "^7.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/cliui/node_modules/wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/clone": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
- "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8"
- }
- },
- "node_modules/clone-deep": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
- "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.4",
- "kind-of": "^6.0.2",
- "shallow-clone": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/co": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
- "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "iojs": ">= 1.0.0",
- "node": ">= 0.12.0"
- }
- },
- "node_modules/collect-v8-coverage": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz",
- "integrity": "sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/commander": {
- "version": "12.1.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz",
- "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/commitlint": {
- "version": "17.8.1",
- "resolved": "https://registry.npmjs.org/commitlint/-/commitlint-17.8.1.tgz",
- "integrity": "sha512-X+VPJwZsQDeGj/DG1NsxhZEl+oMHKNC+1myZ/zauNDoo+7OuLHfTOUU1C1a4CjKW4b6T7NuoFcYfK0kRCjCtbA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@commitlint/cli": "^17.8.1",
- "@commitlint/types": "^17.8.1"
- },
- "bin": {
- "commitlint": "cli.js"
- },
- "engines": {
- "node": ">=v14"
- }
- },
- "node_modules/commondir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
- "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/compare-func": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz",
- "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-ify": "^1.0.0",
- "dot-prop": "^5.1.0"
- }
- },
- "node_modules/concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/concat-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz",
- "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==",
- "dev": true,
- "engines": [
- "node >= 6.0"
- ],
- "license": "MIT",
- "dependencies": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^3.0.2",
- "typedarray": "^0.0.6"
- }
- },
- "node_modules/config-chain": {
- "version": "1.1.13",
- "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz",
- "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ini": "^1.3.4",
- "proto-list": "~1.2.1"
- }
- },
- "node_modules/configstore": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/configstore/-/configstore-6.0.0.tgz",
- "integrity": "sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "dot-prop": "^6.0.1",
- "graceful-fs": "^4.2.6",
- "unique-string": "^3.0.0",
- "write-file-atomic": "^3.0.3",
- "xdg-basedir": "^5.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/yeoman/configstore?sponsor=1"
- }
- },
- "node_modules/configstore/node_modules/dot-prop": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz",
- "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-obj": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/configstore/node_modules/write-file-atomic": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
- "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "imurmurhash": "^0.1.4",
- "is-typedarray": "^1.0.0",
- "signal-exit": "^3.0.2",
- "typedarray-to-buffer": "^3.1.5"
- }
- },
- "node_modules/connect": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz",
- "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "2.6.9",
- "finalhandler": "1.1.2",
- "parseurl": "~1.3.3",
- "utils-merge": "1.0.1"
- },
- "engines": {
- "node": ">= 0.10.0"
- }
- },
- "node_modules/connect/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/connect/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/conventional-changelog": {
- "version": "3.1.25",
- "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-3.1.25.tgz",
- "integrity": "sha512-ryhi3fd1mKf3fSjbLXOfK2D06YwKNic1nC9mWqybBHdObPd8KJ2vjaXZfYj1U23t+V8T8n0d7gwnc9XbIdFbyQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "conventional-changelog-angular": "^5.0.12",
- "conventional-changelog-atom": "^2.0.8",
- "conventional-changelog-codemirror": "^2.0.8",
- "conventional-changelog-conventionalcommits": "^4.5.0",
- "conventional-changelog-core": "^4.2.1",
- "conventional-changelog-ember": "^2.0.9",
- "conventional-changelog-eslint": "^3.0.9",
- "conventional-changelog-express": "^2.0.6",
- "conventional-changelog-jquery": "^3.0.11",
- "conventional-changelog-jshint": "^2.0.9",
- "conventional-changelog-preset-loader": "^2.3.4"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-angular": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-6.0.0.tgz",
- "integrity": "sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "compare-func": "^2.0.0"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/conventional-changelog-atom": {
- "version": "2.0.8",
- "resolved": "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-2.0.8.tgz",
- "integrity": "sha512-xo6v46icsFTK3bb7dY/8m2qvc8sZemRgdqLb/bjpBsH2UyOS8rKNTgcb5025Hri6IpANPApbXMg15QLb1LJpBw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "q": "^1.5.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-codemirror": {
- "version": "2.0.8",
- "resolved": "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-2.0.8.tgz",
- "integrity": "sha512-z5DAsn3uj1Vfp7po3gpt2Boc+Bdwmw2++ZHa5Ak9k0UKsYAO5mH1UBTN0qSCuJZREIhX6WU4E1p3IW2oRCNzQw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "q": "^1.5.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-conventionalcommits": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-6.1.0.tgz",
- "integrity": "sha512-3cS3GEtR78zTfMzk0AizXKKIdN4OvSh7ibNz6/DPbhWWQu7LqE/8+/GqSodV+sywUR2gpJAdP/1JFf4XtN7Zpw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "compare-func": "^2.0.0"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/conventional-changelog-core": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz",
- "integrity": "sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "add-stream": "^1.0.0",
- "conventional-changelog-writer": "^5.0.0",
- "conventional-commits-parser": "^3.2.0",
- "dateformat": "^3.0.0",
- "get-pkg-repo": "^4.0.0",
- "git-raw-commits": "^2.0.8",
- "git-remote-origin-url": "^2.0.0",
- "git-semver-tags": "^4.1.1",
- "lodash": "^4.17.15",
- "normalize-package-data": "^3.0.0",
- "q": "^1.5.1",
- "read-pkg": "^3.0.0",
- "read-pkg-up": "^3.0.0",
- "through2": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-core/node_modules/conventional-commits-parser": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz",
- "integrity": "sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-text-path": "^1.0.1",
- "JSONStream": "^1.0.4",
- "lodash": "^4.17.15",
- "meow": "^8.0.0",
- "split2": "^3.0.0",
- "through2": "^4.0.0"
- },
- "bin": {
- "conventional-commits-parser": "cli.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-ember": {
- "version": "2.0.9",
- "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-2.0.9.tgz",
- "integrity": "sha512-ulzIReoZEvZCBDhcNYfDIsLTHzYHc7awh+eI44ZtV5cx6LVxLlVtEmcO+2/kGIHGtw+qVabJYjdI5cJOQgXh1A==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "q": "^1.5.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-eslint": {
- "version": "3.0.9",
- "resolved": "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.9.tgz",
- "integrity": "sha512-6NpUCMgU8qmWmyAMSZO5NrRd7rTgErjrm4VASam2u5jrZS0n38V7Y9CzTtLT2qwz5xEChDR4BduoWIr8TfwvXA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "q": "^1.5.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-express": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/conventional-changelog-express/-/conventional-changelog-express-2.0.6.tgz",
- "integrity": "sha512-SDez2f3iVJw6V563O3pRtNwXtQaSmEfTCaTBPCqn0oG0mfkq0rX4hHBq5P7De2MncoRixrALj3u3oQsNK+Q0pQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "q": "^1.5.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-jquery": {
- "version": "3.0.11",
- "resolved": "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-3.0.11.tgz",
- "integrity": "sha512-x8AWz5/Td55F7+o/9LQ6cQIPwrCjfJQ5Zmfqi8thwUEKHstEn4kTIofXub7plf1xvFA2TqhZlq7fy5OmV6BOMw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "q": "^1.5.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-jshint": {
- "version": "2.0.9",
- "resolved": "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.9.tgz",
- "integrity": "sha512-wMLdaIzq6TNnMHMy31hql02OEQ8nCQfExw1SE0hYL5KvU+JCTuPaDO+7JiogGT2gJAxiUGATdtYYfh+nT+6riA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "compare-func": "^2.0.0",
- "q": "^1.5.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-preset-loader": {
- "version": "2.3.4",
- "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz",
- "integrity": "sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog-writer": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-5.0.1.tgz",
- "integrity": "sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "conventional-commits-filter": "^2.0.7",
- "dateformat": "^3.0.0",
- "handlebars": "^4.7.7",
- "json-stringify-safe": "^5.0.1",
- "lodash": "^4.17.15",
- "meow": "^8.0.0",
- "semver": "^6.0.0",
- "split": "^1.0.0",
- "through2": "^4.0.0"
- },
- "bin": {
- "conventional-changelog-writer": "cli.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog/node_modules/conventional-changelog-angular": {
- "version": "5.0.13",
- "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz",
- "integrity": "sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "compare-func": "^2.0.0",
- "q": "^1.5.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-changelog/node_modules/conventional-changelog-conventionalcommits": {
- "version": "4.6.3",
- "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.3.tgz",
- "integrity": "sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "compare-func": "^2.0.0",
- "lodash": "^4.17.15",
- "q": "^1.5.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-commits-filter": {
- "version": "2.0.7",
- "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz",
- "integrity": "sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lodash.ismatch": "^4.4.0",
- "modify-values": "^1.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-commits-parser": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz",
- "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-text-path": "^1.0.1",
- "JSONStream": "^1.3.5",
- "meow": "^8.1.2",
- "split2": "^3.2.2"
- },
- "bin": {
- "conventional-commits-parser": "cli.js"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/conventional-recommended-bump": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz",
- "integrity": "sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "concat-stream": "^2.0.0",
- "conventional-changelog-preset-loader": "^2.3.4",
- "conventional-commits-filter": "^2.0.7",
- "conventional-commits-parser": "^3.2.0",
- "git-raw-commits": "^2.0.8",
- "git-semver-tags": "^4.1.1",
- "meow": "^8.0.0",
- "q": "^1.5.1"
- },
- "bin": {
- "conventional-recommended-bump": "cli.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/conventional-recommended-bump/node_modules/conventional-commits-parser": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz",
- "integrity": "sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-text-path": "^1.0.1",
- "JSONStream": "^1.0.4",
- "lodash": "^4.17.15",
- "meow": "^8.0.0",
- "split2": "^3.0.0",
- "through2": "^4.0.0"
- },
- "bin": {
- "conventional-commits-parser": "cli.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/core-js-compat": {
- "version": "3.49.0",
- "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.49.0.tgz",
- "integrity": "sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "browserslist": "^4.28.1"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/core-js"
- }
- },
- "node_modules/core-util-is": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
- "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/cosmiconfig": {
- "version": "8.3.6",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
- "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "import-fresh": "^3.3.0",
- "js-yaml": "^4.1.0",
- "parse-json": "^5.2.0",
- "path-type": "^4.0.0"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/d-fischer"
- },
- "peerDependencies": {
- "typescript": ">=4.9.5"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/cosmiconfig-typescript-loader": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.4.0.tgz",
- "integrity": "sha512-BabizFdC3wBHhbI4kJh0VkQP9GkBfoHPydD0COMce1nJ1kJAB3F2TmJ/I7diULBKtmEWSwEbuN/KDtgnmUUVmw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=v14.21.3"
- },
- "peerDependencies": {
- "@types/node": "*",
- "cosmiconfig": ">=7",
- "ts-node": ">=10",
- "typescript": ">=4"
- }
- },
- "node_modules/create-jest": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz",
- "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "chalk": "^4.0.0",
- "exit": "^0.1.2",
- "graceful-fs": "^4.2.9",
- "jest-config": "^29.7.0",
- "jest-util": "^29.7.0",
- "prompts": "^2.0.1"
- },
- "bin": {
- "create-jest": "bin/create-jest.js"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/create-require": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz",
- "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/cross-spawn": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
- "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "path-key": "^3.1.0",
- "shebang-command": "^2.0.0",
- "which": "^2.0.1"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/crypto-random-string": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz",
- "integrity": "sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "type-fest": "^1.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/crypto-random-string/node_modules/type-fest": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz",
- "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/csstype": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz",
- "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/dargs": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz",
- "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/data-uri-to-buffer": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz",
- "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/data-view-buffer": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz",
- "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "es-errors": "^1.3.0",
- "is-data-view": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/data-view-byte-length": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz",
- "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "es-errors": "^1.3.0",
- "is-data-view": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/inspect-js"
- }
- },
- "node_modules/data-view-byte-offset": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz",
- "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "es-errors": "^1.3.0",
- "is-data-view": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/dateformat": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz",
- "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "*"
- }
- },
- "node_modules/debug": {
- "version": "4.4.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
- "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "^2.1.3"
- },
- "engines": {
- "node": ">=6.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
- }
- },
- "node_modules/decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/decamelize-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz",
- "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "decamelize": "^1.1.0",
- "map-obj": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/decamelize-keys/node_modules/map-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
- "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/decompress-response": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz",
- "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mimic-response": "^3.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/decompress-response/node_modules/mimic-response": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz",
- "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/dedent": {
- "version": "1.7.2",
- "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.2.tgz",
- "integrity": "sha512-WzMx3mW98SN+zn3hgemf4OzdmyNhhhKz5Ay0pUfQiMQ3e1g+xmTJWp/pKdwKVXhdSkAEGIIzqeuWrL3mV/AXbA==",
- "dev": true,
- "license": "MIT",
- "peerDependencies": {
- "babel-plugin-macros": "^3.1.0"
- },
- "peerDependenciesMeta": {
- "babel-plugin-macros": {
- "optional": true
- }
- }
- },
- "node_modules/deep-extend": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
- "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4.0.0"
- }
- },
- "node_modules/deep-is": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
- "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/deepmerge": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
- "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/default-browser": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz",
- "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bundle-name": "^3.0.0",
- "default-browser-id": "^3.0.0",
- "execa": "^7.1.1",
- "titleize": "^3.0.0"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/default-browser-id": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz",
- "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bplist-parser": "^0.2.0",
- "untildify": "^4.0.0"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/default-browser/node_modules/execa": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz",
- "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cross-spawn": "^7.0.3",
- "get-stream": "^6.0.1",
- "human-signals": "^4.3.0",
- "is-stream": "^3.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^5.1.0",
- "onetime": "^6.0.0",
- "signal-exit": "^3.0.7",
- "strip-final-newline": "^3.0.0"
- },
- "engines": {
- "node": "^14.18.0 || ^16.14.0 || >=18.0.0"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/execa?sponsor=1"
- }
- },
- "node_modules/default-browser/node_modules/human-signals": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz",
- "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=14.18.0"
- }
- },
- "node_modules/default-browser/node_modules/is-stream": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/default-browser/node_modules/mimic-fn": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz",
- "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/default-browser/node_modules/npm-run-path": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz",
- "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "path-key": "^4.0.0"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/default-browser/node_modules/onetime": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz",
- "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mimic-fn": "^4.0.0"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/default-browser/node_modules/path-key": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz",
- "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/default-browser/node_modules/strip-final-newline": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz",
- "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/defaults": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz",
- "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "clone": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/defer-to-connect": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz",
- "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/define-data-property": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
- "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-define-property": "^1.0.0",
- "es-errors": "^1.3.0",
- "gopd": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/define-lazy-prop": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz",
- "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/define-properties": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
- "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "define-data-property": "^1.0.1",
- "has-property-descriptors": "^1.0.0",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/degenerator": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-4.0.4.tgz",
- "integrity": "sha512-MTZdZsuNxSBL92rsjx3VFWe57OpRlikyLbcx2B5Dmdv6oScqpMrvpY7zHLMymrUxo3U5+suPUMsNgW/+SZB1lg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ast-types": "^0.13.4",
- "escodegen": "^1.14.3",
- "esprima": "^4.0.1",
- "vm2": "^3.9.19"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/degenerator/node_modules/ast-types": {
- "version": "0.13.4",
- "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz",
- "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tslib": "^2.0.1"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/del": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz",
- "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "globby": "^11.0.1",
- "graceful-fs": "^4.2.4",
- "is-glob": "^4.0.1",
- "is-path-cwd": "^2.2.0",
- "is-path-inside": "^3.0.2",
- "p-map": "^4.0.0",
- "rimraf": "^3.0.2",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/depd": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
- "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/deprecation": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz",
- "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/destroy": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
- "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8",
- "npm": "1.2.8000 || >= 1.4.16"
- }
- },
- "node_modules/detect-newline": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
- "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/diff": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.4.tgz",
- "integrity": "sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.3.1"
- }
- },
- "node_modules/diff-sequences": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz",
- "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/dir-glob": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
- "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "path-type": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/dot-prop": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
- "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-obj": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/dunder-proto": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
- "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind-apply-helpers": "^1.0.1",
- "es-errors": "^1.3.0",
- "gopd": "^1.2.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/eastasianwidth": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
- "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/ee-first": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
- "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/electron-to-chromium": {
- "version": "1.5.344",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.344.tgz",
- "integrity": "sha512-4MxfbmNDm+KPh066EZy+eUnkcDPcZ35wNmOWzFuh/ijvHsve6kbLTLURy88uCNK5FbpN+yk2nQY6BYh1GEt+wg==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/emittery": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz",
- "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/emittery?sponsor=1"
- }
- },
- "node_modules/emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/encodeurl": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/end-of-stream": {
- "version": "1.4.5",
- "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz",
- "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "once": "^1.4.0"
- }
- },
- "node_modules/error-ex": {
- "version": "1.3.4",
- "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz",
- "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-arrayish": "^0.2.1"
- }
- },
- "node_modules/error-stack-parser": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz",
- "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "stackframe": "^1.3.4"
- }
- },
- "node_modules/es-abstract": {
- "version": "1.24.2",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.2.tgz",
- "integrity": "sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-buffer-byte-length": "^1.0.2",
- "arraybuffer.prototype.slice": "^1.0.4",
- "available-typed-arrays": "^1.0.7",
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.4",
- "data-view-buffer": "^1.0.2",
- "data-view-byte-length": "^1.0.2",
- "data-view-byte-offset": "^1.0.1",
- "es-define-property": "^1.0.1",
- "es-errors": "^1.3.0",
- "es-object-atoms": "^1.1.1",
- "es-set-tostringtag": "^2.1.0",
- "es-to-primitive": "^1.3.0",
- "function.prototype.name": "^1.1.8",
- "get-intrinsic": "^1.3.0",
- "get-proto": "^1.0.1",
- "get-symbol-description": "^1.1.0",
- "globalthis": "^1.0.4",
- "gopd": "^1.2.0",
- "has-property-descriptors": "^1.0.2",
- "has-proto": "^1.2.0",
- "has-symbols": "^1.1.0",
- "hasown": "^2.0.2",
- "internal-slot": "^1.1.0",
- "is-array-buffer": "^3.0.5",
- "is-callable": "^1.2.7",
- "is-data-view": "^1.0.2",
- "is-negative-zero": "^2.0.3",
- "is-regex": "^1.2.1",
- "is-set": "^2.0.3",
- "is-shared-array-buffer": "^1.0.4",
- "is-string": "^1.1.1",
- "is-typed-array": "^1.1.15",
- "is-weakref": "^1.1.1",
- "math-intrinsics": "^1.1.0",
- "object-inspect": "^1.13.4",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.7",
- "own-keys": "^1.0.1",
- "regexp.prototype.flags": "^1.5.4",
- "safe-array-concat": "^1.1.3",
- "safe-push-apply": "^1.0.0",
- "safe-regex-test": "^1.1.0",
- "set-proto": "^1.0.0",
- "stop-iteration-iterator": "^1.1.0",
- "string.prototype.trim": "^1.2.10",
- "string.prototype.trimend": "^1.0.9",
- "string.prototype.trimstart": "^1.0.8",
- "typed-array-buffer": "^1.0.3",
- "typed-array-byte-length": "^1.0.3",
- "typed-array-byte-offset": "^1.0.4",
- "typed-array-length": "^1.0.7",
- "unbox-primitive": "^1.1.0",
- "which-typed-array": "^1.1.19"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/es-array-method-boxes-properly": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz",
- "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/es-define-property": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
- "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-errors": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
- "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-get-iterator": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz",
- "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.1.3",
- "has-symbols": "^1.0.3",
- "is-arguments": "^1.1.1",
- "is-map": "^2.0.2",
- "is-set": "^2.0.2",
- "is-string": "^1.0.7",
- "isarray": "^2.0.5",
- "stop-iteration-iterator": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/es-iterator-helpers": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.3.2.tgz",
- "integrity": "sha512-HVLACW1TppGYjJ8H6/jqH/pqOtKRw6wMlrB23xfExmFWxFquAIWCmwoLsOyN96K4a5KbmOf5At9ZUO3GZbetAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.9",
- "call-bound": "^1.0.4",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.24.2",
- "es-errors": "^1.3.0",
- "es-set-tostringtag": "^2.1.0",
- "function-bind": "^1.1.2",
- "get-intrinsic": "^1.3.0",
- "globalthis": "^1.0.4",
- "gopd": "^1.2.0",
- "has-property-descriptors": "^1.0.2",
- "has-proto": "^1.2.0",
- "has-symbols": "^1.1.0",
- "internal-slot": "^1.1.0",
- "iterator.prototype": "^1.1.5",
- "math-intrinsics": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-object-atoms": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
- "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-set-tostringtag": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
- "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "get-intrinsic": "^1.2.6",
- "has-tostringtag": "^1.0.2",
- "hasown": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-shim-unscopables": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz",
- "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hasown": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-to-primitive": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz",
- "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-callable": "^1.2.7",
- "is-date-object": "^1.0.5",
- "is-symbol": "^1.0.4"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/escalade": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
- "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/escape-goat": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-4.0.0.tgz",
- "integrity": "sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/escape-html": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
- "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/escodegen": {
- "version": "1.14.3",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz",
- "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "esprima": "^4.0.1",
- "estraverse": "^4.2.0",
- "esutils": "^2.0.2",
- "optionator": "^0.8.1"
- },
- "bin": {
- "escodegen": "bin/escodegen.js",
- "esgenerate": "bin/esgenerate.js"
- },
- "engines": {
- "node": ">=4.0"
- },
- "optionalDependencies": {
- "source-map": "~0.6.1"
- }
- },
- "node_modules/escodegen/node_modules/estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/escodegen/node_modules/levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/escodegen/node_modules/optionator": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
- "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
- "dev": true,
- "license": "MIT",
- "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"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/escodegen/node_modules/prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==",
- "dev": true,
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/escodegen/node_modules/type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "prelude-ls": "~1.1.2"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/eslint": {
- "version": "8.57.1",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz",
- "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==",
- "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@eslint-community/regexpp": "^4.6.1",
- "@eslint/eslintrc": "^2.1.4",
- "@eslint/js": "8.57.1",
- "@humanwhocodes/config-array": "^0.13.0",
- "@humanwhocodes/module-importer": "^1.0.1",
- "@nodelib/fs.walk": "^1.2.8",
- "@ungap/structured-clone": "^1.2.0",
- "ajv": "^6.12.4",
- "chalk": "^4.0.0",
- "cross-spawn": "^7.0.2",
- "debug": "^4.3.2",
- "doctrine": "^3.0.0",
- "escape-string-regexp": "^4.0.0",
- "eslint-scope": "^7.2.2",
- "eslint-visitor-keys": "^3.4.3",
- "espree": "^9.6.1",
- "esquery": "^1.4.2",
- "esutils": "^2.0.2",
- "fast-deep-equal": "^3.1.3",
- "file-entry-cache": "^6.0.1",
- "find-up": "^5.0.0",
- "glob-parent": "^6.0.2",
- "globals": "^13.19.0",
- "graphemer": "^1.4.0",
- "ignore": "^5.2.0",
- "imurmurhash": "^0.1.4",
- "is-glob": "^4.0.0",
- "is-path-inside": "^3.0.3",
- "js-yaml": "^4.1.0",
- "json-stable-stringify-without-jsonify": "^1.0.1",
- "levn": "^0.4.1",
- "lodash.merge": "^4.6.2",
- "minimatch": "^3.1.2",
- "natural-compare": "^1.4.0",
- "optionator": "^0.9.3",
- "strip-ansi": "^6.0.1",
- "text-table": "^0.2.0"
- },
- "bin": {
- "eslint": "bin/eslint.js"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint-config-prettier": {
- "version": "8.10.2",
- "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.2.tgz",
- "integrity": "sha512-/IGJ6+Dka158JnP5n5YFMOszjDWrXggGz1LaK/guZq9vZTmniaKlHcsscvkAhn9y4U+BU3JuUdYvtAMcv30y4A==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "eslint-config-prettier": "bin/cli.js"
- },
- "peerDependencies": {
- "eslint": ">=7.0.0"
- }
- },
- "node_modules/eslint-plugin-eslint-comments": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz",
- "integrity": "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "escape-string-regexp": "^1.0.5",
- "ignore": "^5.0.5"
- },
- "engines": {
- "node": ">=6.5.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/mysticatea"
- },
- "peerDependencies": {
- "eslint": ">=4.19.1"
- }
- },
- "node_modules/eslint-plugin-eslint-comments/node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/eslint-plugin-ft-flow": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/eslint-plugin-ft-flow/-/eslint-plugin-ft-flow-2.0.3.tgz",
- "integrity": "sha512-Vbsd/b+LYA99jUbsL6viEUWShFaYQt2YQs3QN3f+aeszOhh2sgdcU0mjzDyD4yyBvMc8qy2uwvBBWfMzEX06tg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lodash": "^4.17.21",
- "string-natural-compare": "^3.0.1"
- },
- "engines": {
- "node": ">=12.22.0"
- },
- "peerDependencies": {
- "@babel/eslint-parser": "^7.12.0",
- "eslint": "^8.1.0"
- }
- },
- "node_modules/eslint-plugin-jest": {
- "version": "26.9.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.9.0.tgz",
- "integrity": "sha512-TWJxWGp1J628gxh2KhaH1H1paEdgE2J61BBF1I59c6xWeL5+D1BzMxGDN/nXAfX+aSkR5u80K+XhskK6Gwq9ng==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@typescript-eslint/utils": "^5.10.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "peerDependencies": {
- "@typescript-eslint/eslint-plugin": "^5.0.0",
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
- },
- "peerDependenciesMeta": {
- "@typescript-eslint/eslint-plugin": {
- "optional": true
- },
- "jest": {
- "optional": true
- }
- }
- },
- "node_modules/eslint-plugin-prettier": {
- "version": "4.2.5",
- "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.5.tgz",
- "integrity": "sha512-9Ni+xgemM2IWLq6aXEpP2+V/V30GeA/46Ar629vcMqVPodFFWC9skHu/D1phvuqtS8bJCFnNf01/qcmqYEwNfg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "prettier-linter-helpers": "^1.0.0"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "peerDependencies": {
- "eslint": ">=7.28.0",
- "prettier": ">=2.0.0"
- },
- "peerDependenciesMeta": {
- "eslint-config-prettier": {
- "optional": true
- }
- }
- },
- "node_modules/eslint-plugin-react": {
- "version": "7.37.5",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz",
- "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-includes": "^3.1.8",
- "array.prototype.findlast": "^1.2.5",
- "array.prototype.flatmap": "^1.3.3",
- "array.prototype.tosorted": "^1.1.4",
- "doctrine": "^2.1.0",
- "es-iterator-helpers": "^1.2.1",
- "estraverse": "^5.3.0",
- "hasown": "^2.0.2",
- "jsx-ast-utils": "^2.4.1 || ^3.0.0",
- "minimatch": "^3.1.2",
- "object.entries": "^1.1.9",
- "object.fromentries": "^2.0.8",
- "object.values": "^1.2.1",
- "prop-types": "^15.8.1",
- "resolve": "^2.0.0-next.5",
- "semver": "^6.3.1",
- "string.prototype.matchall": "^4.0.12",
- "string.prototype.repeat": "^1.0.0"
- },
- "engines": {
- "node": ">=4"
- },
- "peerDependencies": {
- "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7"
- }
- },
- "node_modules/eslint-plugin-react-hooks": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz",
- "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "peerDependencies": {
- "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0"
- }
- },
- "node_modules/eslint-plugin-react-native": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react-native/-/eslint-plugin-react-native-4.1.0.tgz",
- "integrity": "sha512-QLo7rzTBOl43FvVqDdq5Ql9IoElIuTdjrz9SKAXCvULvBoRZ44JGSkx9z4999ZusCsb4rK3gjS8gOGyeYqZv2Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "eslint-plugin-react-native-globals": "^0.1.1"
- },
- "peerDependencies": {
- "eslint": "^3.17.0 || ^4 || ^5 || ^6 || ^7 || ^8"
- }
- },
- "node_modules/eslint-plugin-react-native-globals": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react-native-globals/-/eslint-plugin-react-native-globals-0.1.2.tgz",
- "integrity": "sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/eslint-plugin-react/node_modules/doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/eslint-plugin-react/node_modules/resolve": {
- "version": "2.0.0-next.6",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.6.tgz",
- "integrity": "sha512-3JmVl5hMGtJ3kMmB3zi3DL25KfkCEyy3Tw7Gmw7z5w8M9WlwoPFnIvwChzu1+cF3iaK3sp18hhPz8ANeimdJfA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "is-core-module": "^2.16.1",
- "node-exports-info": "^1.6.0",
- "object-keys": "^1.1.1",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
- },
- "bin": {
- "resolve": "bin/resolve"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/eslint-scope": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "esrecurse": "^4.3.0",
- "estraverse": "^4.1.1"
- },
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/eslint-scope/node_modules/estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/eslint-visitor-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
- "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/eslint/node_modules/ajv": {
- "version": "6.15.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz",
- "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
- "node_modules/eslint/node_modules/eslint-scope": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
- "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "esrecurse": "^4.3.0",
- "estraverse": "^5.2.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint/node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint/node_modules/json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/espree": {
- "version": "9.6.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
- "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "acorn": "^8.9.0",
- "acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.4.1"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/espree/node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/esprima": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
- "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
- "dev": true,
- "license": "BSD-2-Clause",
- "bin": {
- "esparse": "bin/esparse.js",
- "esvalidate": "bin/esvalidate.js"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/esquery": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz",
- "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "estraverse": "^5.1.0"
- },
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/esrecurse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
- "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "estraverse": "^5.2.0"
- },
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/esutils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
- "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/etag": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
- "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/event-target-shim": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz",
- "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/execa": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
- "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
- "dev": true,
- "license": "MIT",
- "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"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/execa?sponsor=1"
- }
- },
- "node_modules/exit": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
- "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==",
- "dev": true,
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/expect": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz",
- "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/expect-utils": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "jest-matcher-utils": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/exponential-backoff": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz",
- "integrity": "sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==",
- "dev": true,
- "license": "Apache-2.0"
- },
- "node_modules/external-editor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
- "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chardet": "^0.7.0",
- "iconv-lite": "^0.4.24",
- "tmp": "^0.0.33"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/fast-diff": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz",
- "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==",
- "dev": true,
- "license": "Apache-2.0"
- },
- "node_modules/fast-glob": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz",
- "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==",
- "dev": true,
- "license": "MIT",
- "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.8"
- },
- "engines": {
- "node": ">=8.6.0"
- }
- },
- "node_modules/fast-glob/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/fast-json-stable-stringify": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
- "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/fast-uri": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz",
- "integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/fastify"
- },
- {
- "type": "opencollective",
- "url": "https://opencollective.com/fastify"
- }
- ],
- "license": "BSD-3-Clause"
- },
- "node_modules/fastq": {
- "version": "1.20.1",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz",
- "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "reusify": "^1.0.4"
- }
- },
- "node_modules/fb-watchman": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz",
- "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "bser": "2.1.1"
- }
- },
- "node_modules/fetch-blob": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz",
- "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/jimmywarting"
- },
- {
- "type": "paypal",
- "url": "https://paypal.me/jimmywarting"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "node-domexception": "^1.0.0",
- "web-streams-polyfill": "^3.0.3"
- },
- "engines": {
- "node": "^12.20 || >= 14.13"
- }
- },
- "node_modules/figures": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz",
- "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "escape-string-regexp": "^5.0.0",
- "is-unicode-supported": "^1.2.0"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/figures/node_modules/escape-string-regexp": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
- "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/file-entry-cache": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
- "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flat-cache": "^3.0.4"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/fill-range": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "to-regex-range": "^5.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/finalhandler": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz",
- "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "2.6.9",
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "on-finished": "~2.3.0",
- "parseurl": "~1.3.3",
- "statuses": "~1.5.0",
- "unpipe": "~1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/finalhandler/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/finalhandler/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/find-cache-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz",
- "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "commondir": "^1.0.1",
- "make-dir": "^2.0.0",
- "pkg-dir": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/find-cache-dir/node_modules/find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "locate-path": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/find-cache-dir/node_modules/locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/find-cache-dir/node_modules/make-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
- "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pify": "^4.0.1",
- "semver": "^5.6.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/find-cache-dir/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/find-cache-dir/node_modules/p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-limit": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/find-cache-dir/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/find-cache-dir/node_modules/pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/find-cache-dir/node_modules/pkg-dir": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
- "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "find-up": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/find-cache-dir/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/find-up": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
- "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "locate-path": "^6.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/flat-cache": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz",
- "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flatted": "^3.2.9",
- "keyv": "^4.5.3",
- "rimraf": "^3.0.2"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/flatted": {
- "version": "3.4.2",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz",
- "integrity": "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/flow-enums-runtime": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/flow-enums-runtime/-/flow-enums-runtime-0.0.6.tgz",
- "integrity": "sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/flow-parser": {
- "version": "0.311.0",
- "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.311.0.tgz",
- "integrity": "sha512-3tbmV0VdoFXdNqJjNksVLIksu78BvUMK5eAR5ZF1TAsV+wVu4jXipRpHKquDGhPRKrLl2DCafjRTV99jVMlMwQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/for-each": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz",
- "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-callable": "^1.2.7"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/form-data-encoder": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz",
- "integrity": "sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 14.17"
- }
- },
- "node_modules/formdata-polyfill": {
- "version": "4.0.10",
- "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz",
- "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fetch-blob": "^3.1.2"
- },
- "engines": {
- "node": ">=12.20.0"
- }
- },
- "node_modules/fresh": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
- "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/fs-extra": {
- "version": "11.3.4",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.4.tgz",
- "integrity": "sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- },
- "engines": {
- "node": ">=14.14"
- }
- },
- "node_modules/fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/fsevents": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
- "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
- "dev": true,
- "hasInstallScript": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
- }
- },
- "node_modules/function-bind": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
- "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/function.prototype.name": {
- "version": "1.1.8",
- "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz",
- "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.3",
- "define-properties": "^1.2.1",
- "functions-have-names": "^1.2.3",
- "hasown": "^2.0.2",
- "is-callable": "^1.2.7"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/functions-have-names": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
- "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/generator-function": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz",
- "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "6.* || 8.* || >= 10.*"
- }
- },
- "node_modules/get-intrinsic": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
- "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind-apply-helpers": "^1.0.2",
- "es-define-property": "^1.0.1",
- "es-errors": "^1.3.0",
- "es-object-atoms": "^1.1.1",
- "function-bind": "^1.1.2",
- "get-proto": "^1.0.1",
- "gopd": "^1.2.0",
- "has-symbols": "^1.1.0",
- "hasown": "^2.0.2",
- "math-intrinsics": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/get-package-type": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
- "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/get-pkg-repo": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz",
- "integrity": "sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@hutson/parse-repository-url": "^3.0.0",
- "hosted-git-info": "^4.0.0",
- "through2": "^2.0.0",
- "yargs": "^16.2.0"
- },
- "bin": {
- "get-pkg-repo": "src/cli.js"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/get-pkg-repo/node_modules/cliui": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
- "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^7.0.0"
- }
- },
- "node_modules/get-pkg-repo/node_modules/isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/get-pkg-repo/node_modules/readable-stream": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
- "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "node_modules/get-pkg-repo/node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/get-pkg-repo/node_modules/string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "safe-buffer": "~5.1.0"
- }
- },
- "node_modules/get-pkg-repo/node_modules/through2": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
- "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "~2.3.6",
- "xtend": "~4.0.1"
- }
- },
- "node_modules/get-pkg-repo/node_modules/wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/get-pkg-repo/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/get-proto": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
- "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "dunder-proto": "^1.0.1",
- "es-object-atoms": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/get-stream": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
- "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/get-symbol-description": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz",
- "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "es-errors": "^1.3.0",
- "get-intrinsic": "^1.2.6"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/get-uri": {
- "version": "6.0.5",
- "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.5.tgz",
- "integrity": "sha512-b1O07XYq8eRuVzBNgJLstU6FYc1tS6wnMtF1I1D9lE8LxZSOGZ7LhxN54yPP6mGw5f2CkXY2BQUL9Fx41qvcIg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "basic-ftp": "^5.0.2",
- "data-uri-to-buffer": "^6.0.2",
- "debug": "^4.3.4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/git-raw-commits": {
- "version": "2.0.11",
- "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz",
- "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==",
- "deprecated": "This package is no longer maintained. For the JavaScript API, please use @conventional-changelog/git-client instead.",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "dargs": "^7.0.0",
- "lodash": "^4.17.15",
- "meow": "^8.0.0",
- "split2": "^3.0.0",
- "through2": "^4.0.0"
- },
- "bin": {
- "git-raw-commits": "cli.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/git-remote-origin-url": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz",
- "integrity": "sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "gitconfiglocal": "^1.0.0",
- "pify": "^2.3.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/git-semver-tags": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-4.1.1.tgz",
- "integrity": "sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA==",
- "deprecated": "This package is no longer maintained. For the JavaScript API, please use @conventional-changelog/git-client instead.",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "meow": "^8.0.0",
- "semver": "^6.0.0"
- },
- "bin": {
- "git-semver-tags": "cli.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/git-up": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz",
- "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-ssh": "^1.4.0",
- "parse-url": "^8.1.0"
- }
- },
- "node_modules/git-url-parse": {
- "version": "13.1.0",
- "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-13.1.0.tgz",
- "integrity": "sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "git-up": "^7.0.0"
- }
- },
- "node_modules/gitconfiglocal": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz",
- "integrity": "sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==",
- "dev": true,
- "license": "BSD",
- "dependencies": {
- "ini": "^1.3.2"
- }
- },
- "node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.3"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/global-dirs": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz",
- "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ini": "^1.3.4"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/globals": {
- "version": "13.24.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
- "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "type-fest": "^0.20.2"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/globalthis": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz",
- "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "define-properties": "^1.2.1",
- "gopd": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/globby": {
- "version": "11.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
- "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-union": "^2.1.0",
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.2.9",
- "ignore": "^5.2.0",
- "merge2": "^1.4.1",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/gopd": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
- "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/got": {
- "version": "12.6.1",
- "resolved": "https://registry.npmjs.org/got/-/got-12.6.1.tgz",
- "integrity": "sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@sindresorhus/is": "^5.2.0",
- "@szmarczak/http-timer": "^5.0.1",
- "cacheable-lookup": "^7.0.0",
- "cacheable-request": "^10.2.8",
- "decompress-response": "^6.0.0",
- "form-data-encoder": "^2.1.2",
- "get-stream": "^6.0.1",
- "http2-wrapper": "^2.1.10",
- "lowercase-keys": "^3.0.0",
- "p-cancelable": "^3.0.0",
- "responselike": "^3.0.0"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/got?sponsor=1"
- }
- },
- "node_modules/graceful-fs": {
- "version": "4.2.11",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
- "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/graphemer": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
- "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/handlebars": {
- "version": "4.7.9",
- "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.9.tgz",
- "integrity": "sha512-4E71E0rpOaQuJR2A3xDZ+GM1HyWYv1clR58tC8emQNeQe3RH7MAzSbat+V0wG78LQBo6m6bzSG/L4pBuCsgnUQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "minimist": "^1.2.5",
- "neo-async": "^2.6.2",
- "source-map": "^0.6.1",
- "wordwrap": "^1.0.0"
- },
- "bin": {
- "handlebars": "bin/handlebars"
- },
- "engines": {
- "node": ">=0.4.7"
- },
- "optionalDependencies": {
- "uglify-js": "^3.1.4"
- }
- },
- "node_modules/hard-rejection": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz",
- "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/has-bigints": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz",
- "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/has-property-descriptors": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
- "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-define-property": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-proto": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz",
- "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "dunder-proto": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-symbols": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
- "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-tostringtag": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
- "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-symbols": "^1.0.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-yarn": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-3.0.0.tgz",
- "integrity": "sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/hasown": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz",
- "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "function-bind": "^1.1.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/hermes-estree": {
- "version": "0.23.1",
- "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.23.1.tgz",
- "integrity": "sha512-eT5MU3f5aVhTqsfIReZ6n41X5sYn4IdQL0nvz6yO+MMlPxw49aSARHLg/MSehQftyjnrE8X6bYregzSumqc6cg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/hermes-parser": {
- "version": "0.23.1",
- "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.23.1.tgz",
- "integrity": "sha512-oxl5h2DkFW83hT4DAUJorpah8ou4yvmweUzLJmmr6YV2cezduCdlil1AvU/a/xSsAFo4WUcNA4GoV5Bvq6JffA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hermes-estree": "0.23.1"
- }
- },
- "node_modules/hosted-git-info": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
- "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/hosted-git-info/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/hosted-git-info/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/html-escaper": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
- "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/http-cache-semantics": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz",
- "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==",
- "dev": true,
- "license": "BSD-2-Clause"
- },
- "node_modules/http-errors": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz",
- "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "depd": "~2.0.0",
- "inherits": "~2.0.4",
- "setprototypeof": "~1.2.0",
- "statuses": "~2.0.2",
- "toidentifier": "~1.0.1"
- },
- "engines": {
- "node": ">= 0.8"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/express"
- }
- },
- "node_modules/http-errors/node_modules/statuses": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz",
- "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/http-proxy-agent": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
- "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "agent-base": "^7.1.0",
- "debug": "^4.3.4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/http2-wrapper": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.1.tgz",
- "integrity": "sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "quick-lru": "^5.1.1",
- "resolve-alpn": "^1.2.0"
- },
- "engines": {
- "node": ">=10.19.0"
- }
- },
- "node_modules/http2-wrapper/node_modules/quick-lru": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
- "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/https-proxy-agent": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
- "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "agent-base": "^7.1.2",
- "debug": "4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/human-signals": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
- "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=10.17.0"
- }
- },
- "node_modules/iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/ieee754": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "BSD-3-Clause"
- },
- "node_modules/ignore": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
- "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/image-size": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz",
- "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "queue": "6.0.2"
- },
- "bin": {
- "image-size": "bin/image-size.js"
- },
- "engines": {
- "node": ">=16.x"
- }
- },
- "node_modules/import-fresh": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz",
- "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/import-fresh/node_modules/resolve-from": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/import-lazy": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz",
- "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/import-local": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz",
- "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pkg-dir": "^4.2.0",
- "resolve-cwd": "^3.0.0"
- },
- "bin": {
- "import-local-fixture": "fixtures/cli.js"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.19"
- }
- },
- "node_modules/indent-string": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
- "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
- "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
- "node_modules/inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/ini": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
- "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/inquirer": {
- "version": "9.2.6",
- "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.2.6.tgz",
- "integrity": "sha512-y71l237eJJKS4rl7sQcEUiMhrR0pB/ZnRMMTxLpjJhWL4hdWCT03a6jJnC1w6qIPSRZWEozuieGt3v7XaEJYFw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-escapes": "^4.3.2",
- "chalk": "^5.2.0",
- "cli-cursor": "^3.1.0",
- "cli-width": "^4.0.0",
- "external-editor": "^3.0.3",
- "figures": "^5.0.0",
- "lodash": "^4.17.21",
- "mute-stream": "1.0.0",
- "ora": "^5.4.1",
- "run-async": "^3.0.0",
- "rxjs": "^7.8.1",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1",
- "through": "^2.3.6",
- "wrap-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=14.18.0"
- }
- },
- "node_modules/inquirer/node_modules/bl": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
- "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "buffer": "^5.5.0",
- "inherits": "^2.0.4",
- "readable-stream": "^3.4.0"
- }
- },
- "node_modules/inquirer/node_modules/buffer": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
- "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.1.13"
- }
- },
- "node_modules/inquirer/node_modules/chalk": {
- "version": "5.6.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz",
- "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.17.0 || ^14.13 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/inquirer/node_modules/is-interactive": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz",
- "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/inquirer/node_modules/is-unicode-supported": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz",
- "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/inquirer/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/inquirer/node_modules/log-symbols/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/inquirer/node_modules/ora": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bl": "^4.1.0",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-spinners": "^2.5.0",
- "is-interactive": "^1.0.0",
- "is-unicode-supported": "^0.1.0",
- "log-symbols": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/inquirer/node_modules/ora/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/internal-slot": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz",
- "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "hasown": "^2.0.2",
- "side-channel": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/interpret": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz",
- "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/invariant": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
- "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "loose-envify": "^1.0.0"
- }
- },
- "node_modules/ip": {
- "version": "1.1.9",
- "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.9.tgz",
- "integrity": "sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/ip-address": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz",
- "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 12"
- }
- },
- "node_modules/is-absolute": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
- "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-relative": "^1.0.0",
- "is-windows": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-arguments": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz",
- "integrity": "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "has-tostringtag": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-array-buffer": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz",
- "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.3",
- "get-intrinsic": "^1.2.6"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-arrayish": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/is-async-function": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz",
- "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "async-function": "^1.0.0",
- "call-bound": "^1.0.3",
- "get-proto": "^1.0.1",
- "has-tostringtag": "^1.0.2",
- "safe-regex-test": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-bigint": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz",
- "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-bigints": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-boolean-object": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz",
- "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "has-tostringtag": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-callable": {
- "version": "1.2.7",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
- "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-ci": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz",
- "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ci-info": "^3.2.0"
- },
- "bin": {
- "is-ci": "bin.js"
- }
- },
- "node_modules/is-core-module": {
- "version": "2.16.1",
- "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz",
- "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hasown": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-data-view": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz",
- "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "get-intrinsic": "^1.2.6",
- "is-typed-array": "^1.1.13"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-date-object": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz",
- "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "has-tostringtag": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-directory": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz",
- "integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-docker": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
- "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "is-docker": "cli.js"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-finalizationregistry": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz",
- "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-generator-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz",
- "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/is-generator-function": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz",
- "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.4",
- "generator-function": "^2.0.0",
- "get-proto": "^1.0.1",
- "has-tostringtag": "^1.0.2",
- "safe-regex-test": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-git-dirty": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-git-dirty/-/is-git-dirty-2.0.2.tgz",
- "integrity": "sha512-U3YCo+GKR/rDsY7r0v/LBICbQwsx859tDQnAT+v0E/zCDeWbQ1TUt1FtyExeyik7VIJlYOLHCIifLdz71HDalg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "execa": "^4.0.3",
- "is-git-repository": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/is-git-dirty/node_modules/execa": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz",
- "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cross-spawn": "^7.0.0",
- "get-stream": "^5.0.0",
- "human-signals": "^1.1.1",
- "is-stream": "^2.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^4.0.0",
- "onetime": "^5.1.0",
- "signal-exit": "^3.0.2",
- "strip-final-newline": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/execa?sponsor=1"
- }
- },
- "node_modules/is-git-dirty/node_modules/get-stream": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
- "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pump": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-git-dirty/node_modules/human-signals": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
- "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=8.12.0"
- }
- },
- "node_modules/is-git-repository": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-git-repository/-/is-git-repository-2.0.0.tgz",
- "integrity": "sha512-HDO50CG5suIAcmqG4F1buqVXEZRPn+RaXIn9pFKq/947FBo2bCRwK7ZluEVZOy99a4IQyqsjbKEpAiOXCccOHQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "execa": "^4.0.3",
- "is-absolute": "^1.0.0"
- }
- },
- "node_modules/is-git-repository/node_modules/execa": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz",
- "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cross-spawn": "^7.0.0",
- "get-stream": "^5.0.0",
- "human-signals": "^1.1.1",
- "is-stream": "^2.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^4.0.0",
- "onetime": "^5.1.0",
- "signal-exit": "^3.0.2",
- "strip-final-newline": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/execa?sponsor=1"
- }
- },
- "node_modules/is-git-repository/node_modules/get-stream": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
- "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pump": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-git-repository/node_modules/human-signals": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
- "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=8.12.0"
- }
- },
- "node_modules/is-glob": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
- "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-extglob": "^2.1.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-inside-container": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz",
- "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-docker": "^3.0.0"
- },
- "bin": {
- "is-inside-container": "cli.js"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-inside-container/node_modules/is-docker": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz",
- "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "is-docker": "cli.js"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-installed-globally": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz",
- "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "global-dirs": "^3.0.0",
- "is-path-inside": "^3.0.2"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-installed-globally/node_modules/global-dirs": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz",
- "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ini": "2.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-installed-globally/node_modules/ini": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz",
- "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/is-interactive": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz",
- "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-map": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz",
- "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-negative-zero": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz",
- "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-npm": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-6.1.0.tgz",
- "integrity": "sha512-O2z4/kNgyjhQwVR1Wpkbfc19JIhggF97NZNCpWTnjH7kVcZMUrnut9XSN7txI7VdyIYk5ZatOq3zvSuWpU8hoA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.12.0"
- }
- },
- "node_modules/is-number-object": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz",
- "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "has-tostringtag": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-obj": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
- "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-path-cwd": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz",
- "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/is-path-inside": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
- "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-plain-obj": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
- "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-regex": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz",
- "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "gopd": "^1.2.0",
- "has-tostringtag": "^1.0.2",
- "hasown": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-relative": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
- "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-unc-path": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-set": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz",
- "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-shared-array-buffer": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz",
- "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-ssh": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.1.tgz",
- "integrity": "sha512-JNeu1wQsHjyHgn9NcWTaXq6zWSR6hqE0++zhfZlkFBbScNkyvxCdeV8sRkSBaeLKxmbpR21brail63ACNxJ0Tg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "protocols": "^2.0.1"
- }
- },
- "node_modules/is-stream": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
- "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-string": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz",
- "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "has-tostringtag": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-symbol": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz",
- "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "has-symbols": "^1.1.0",
- "safe-regex-test": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-text-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz",
- "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "text-extensions": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-typed-array": {
- "version": "1.1.15",
- "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz",
- "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "which-typed-array": "^1.1.16"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-typedarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
- "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/is-unc-path": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
- "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "unc-path-regex": "^0.1.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-unicode-supported": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz",
- "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-weakmap": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz",
- "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-weakref": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz",
- "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-weakset": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz",
- "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "get-intrinsic": "^1.2.6"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-windows": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
- "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-wsl": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
- "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-docker": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-yarn-global": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.4.1.tgz",
- "integrity": "sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/issue-parser": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/issue-parser/-/issue-parser-6.0.0.tgz",
- "integrity": "sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lodash.capitalize": "^4.2.1",
- "lodash.escaperegexp": "^4.1.2",
- "lodash.isplainobject": "^4.0.6",
- "lodash.isstring": "^4.0.1",
- "lodash.uniqby": "^4.7.0"
- },
- "engines": {
- "node": ">=10.13"
- }
- },
- "node_modules/istanbul-lib-coverage": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz",
- "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-instrument": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz",
- "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "@babel/core": "^7.23.9",
- "@babel/parser": "^7.23.9",
- "@istanbuljs/schema": "^0.1.3",
- "istanbul-lib-coverage": "^3.2.0",
- "semver": "^7.5.4"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/istanbul-lib-instrument/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/istanbul-lib-report": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz",
- "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "istanbul-lib-coverage": "^3.0.0",
- "make-dir": "^4.0.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/istanbul-lib-source-maps": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz",
- "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "debug": "^4.1.1",
- "istanbul-lib-coverage": "^3.0.0",
- "source-map": "^0.6.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/istanbul-reports": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz",
- "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "html-escaper": "^2.0.0",
- "istanbul-lib-report": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/iterate-iterator": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/iterate-iterator/-/iterate-iterator-1.0.2.tgz",
- "integrity": "sha512-t91HubM4ZDQ70M9wqp+pcNpu8OyJ9UAtXntT/Bcsvp5tZMnz9vRa+IunKXeI8AnfZMTv0jNuVEmGeLSMjVvfPw==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/iterate-value": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/iterate-value/-/iterate-value-1.0.2.tgz",
- "integrity": "sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-get-iterator": "^1.0.2",
- "iterate-iterator": "^1.0.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/iterator.prototype": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz",
- "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "define-data-property": "^1.1.4",
- "es-object-atoms": "^1.0.0",
- "get-intrinsic": "^1.2.6",
- "get-proto": "^1.0.0",
- "has-symbols": "^1.1.0",
- "set-function-name": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/jest": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz",
- "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/core": "^29.7.0",
- "@jest/types": "^29.6.3",
- "import-local": "^3.0.2",
- "jest-cli": "^29.7.0"
- },
- "bin": {
- "jest": "bin/jest.js"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/jest-changed-files": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz",
- "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "execa": "^5.0.0",
- "jest-util": "^29.7.0",
- "p-limit": "^3.1.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-circus": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz",
- "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/environment": "^29.7.0",
- "@jest/expect": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "co": "^4.6.0",
- "dedent": "^1.0.0",
- "is-generator-fn": "^2.0.0",
- "jest-each": "^29.7.0",
- "jest-matcher-utils": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-runtime": "^29.7.0",
- "jest-snapshot": "^29.7.0",
- "jest-util": "^29.7.0",
- "p-limit": "^3.1.0",
- "pretty-format": "^29.7.0",
- "pure-rand": "^6.0.0",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-cli": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz",
- "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/core": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/types": "^29.6.3",
- "chalk": "^4.0.0",
- "create-jest": "^29.7.0",
- "exit": "^0.1.2",
- "import-local": "^3.0.2",
- "jest-config": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "yargs": "^17.3.1"
- },
- "bin": {
- "jest": "bin/jest.js"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
- },
- "peerDependenciesMeta": {
- "node-notifier": {
- "optional": true
- }
- }
- },
- "node_modules/jest-config": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz",
- "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.11.6",
- "@jest/test-sequencer": "^29.7.0",
- "@jest/types": "^29.6.3",
- "babel-jest": "^29.7.0",
- "chalk": "^4.0.0",
- "ci-info": "^3.2.0",
- "deepmerge": "^4.2.2",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.9",
- "jest-circus": "^29.7.0",
- "jest-environment-node": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "jest-regex-util": "^29.6.3",
- "jest-resolve": "^29.7.0",
- "jest-runner": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "micromatch": "^4.0.4",
- "parse-json": "^5.2.0",
- "pretty-format": "^29.7.0",
- "slash": "^3.0.0",
- "strip-json-comments": "^3.1.1"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "peerDependencies": {
- "@types/node": "*",
- "ts-node": ">=9.0.0"
- },
- "peerDependenciesMeta": {
- "@types/node": {
- "optional": true
- },
- "ts-node": {
- "optional": true
- }
- }
- },
- "node_modules/jest-diff": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz",
- "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chalk": "^4.0.0",
- "diff-sequences": "^29.6.3",
- "jest-get-type": "^29.6.3",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-docblock": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz",
- "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "detect-newline": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-each": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz",
- "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "chalk": "^4.0.0",
- "jest-get-type": "^29.6.3",
- "jest-util": "^29.7.0",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-environment-node": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz",
- "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/environment": "^29.7.0",
- "@jest/fake-timers": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "jest-mock": "^29.7.0",
- "jest-util": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-get-type": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz",
- "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-haste-map": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz",
- "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@types/graceful-fs": "^4.1.3",
- "@types/node": "*",
- "anymatch": "^3.0.3",
- "fb-watchman": "^2.0.0",
- "graceful-fs": "^4.2.9",
- "jest-regex-util": "^29.6.3",
- "jest-util": "^29.7.0",
- "jest-worker": "^29.7.0",
- "micromatch": "^4.0.4",
- "walker": "^1.0.8"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- },
- "optionalDependencies": {
- "fsevents": "^2.3.2"
- }
- },
- "node_modules/jest-leak-detector": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz",
- "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "jest-get-type": "^29.6.3",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-matcher-utils": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz",
- "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chalk": "^4.0.0",
- "jest-diff": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-message-util": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz",
- "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/code-frame": "^7.12.13",
- "@jest/types": "^29.6.3",
- "@types/stack-utils": "^2.0.0",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "micromatch": "^4.0.4",
- "pretty-format": "^29.7.0",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-mock": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz",
- "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "jest-util": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-pnp-resolver": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz",
- "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- },
- "peerDependencies": {
- "jest-resolve": "*"
- },
- "peerDependenciesMeta": {
- "jest-resolve": {
- "optional": true
- }
- }
- },
- "node_modules/jest-regex-util": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz",
- "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-resolve": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz",
- "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "jest-pnp-resolver": "^1.2.2",
- "jest-util": "^29.7.0",
- "jest-validate": "^29.7.0",
- "resolve": "^1.20.0",
- "resolve.exports": "^2.0.0",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-resolve-dependencies": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz",
- "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "jest-regex-util": "^29.6.3",
- "jest-snapshot": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-runner": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz",
- "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/console": "^29.7.0",
- "@jest/environment": "^29.7.0",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "emittery": "^0.13.1",
- "graceful-fs": "^4.2.9",
- "jest-docblock": "^29.7.0",
- "jest-environment-node": "^29.7.0",
- "jest-haste-map": "^29.7.0",
- "jest-leak-detector": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-resolve": "^29.7.0",
- "jest-runtime": "^29.7.0",
- "jest-util": "^29.7.0",
- "jest-watcher": "^29.7.0",
- "jest-worker": "^29.7.0",
- "p-limit": "^3.1.0",
- "source-map-support": "0.5.13"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-runtime": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz",
- "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/environment": "^29.7.0",
- "@jest/fake-timers": "^29.7.0",
- "@jest/globals": "^29.7.0",
- "@jest/source-map": "^29.6.3",
- "@jest/test-result": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "cjs-module-lexer": "^1.0.0",
- "collect-v8-coverage": "^1.0.0",
- "glob": "^7.1.3",
- "graceful-fs": "^4.2.9",
- "jest-haste-map": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-mock": "^29.7.0",
- "jest-regex-util": "^29.6.3",
- "jest-resolve": "^29.7.0",
- "jest-snapshot": "^29.7.0",
- "jest-util": "^29.7.0",
- "slash": "^3.0.0",
- "strip-bom": "^4.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-snapshot": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz",
- "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.11.6",
- "@babel/generator": "^7.7.2",
- "@babel/plugin-syntax-jsx": "^7.7.2",
- "@babel/plugin-syntax-typescript": "^7.7.2",
- "@babel/types": "^7.3.3",
- "@jest/expect-utils": "^29.7.0",
- "@jest/transform": "^29.7.0",
- "@jest/types": "^29.6.3",
- "babel-preset-current-node-syntax": "^1.0.0",
- "chalk": "^4.0.0",
- "expect": "^29.7.0",
- "graceful-fs": "^4.2.9",
- "jest-diff": "^29.7.0",
- "jest-get-type": "^29.6.3",
- "jest-matcher-utils": "^29.7.0",
- "jest-message-util": "^29.7.0",
- "jest-util": "^29.7.0",
- "natural-compare": "^1.4.0",
- "pretty-format": "^29.7.0",
- "semver": "^7.5.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-snapshot/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/jest-util": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz",
- "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "chalk": "^4.0.0",
- "ci-info": "^3.2.0",
- "graceful-fs": "^4.2.9",
- "picomatch": "^2.2.3"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-validate": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz",
- "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/types": "^29.6.3",
- "camelcase": "^6.2.0",
- "chalk": "^4.0.0",
- "jest-get-type": "^29.6.3",
- "leven": "^3.1.0",
- "pretty-format": "^29.7.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-validate/node_modules/camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/jest-watcher": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz",
- "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/test-result": "^29.7.0",
- "@jest/types": "^29.6.3",
- "@types/node": "*",
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.0.0",
- "emittery": "^0.13.1",
- "jest-util": "^29.7.0",
- "string-length": "^4.0.1"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-worker": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz",
- "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/node": "*",
- "jest-util": "^29.7.0",
- "merge-stream": "^2.0.0",
- "supports-color": "^8.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/jest-worker/node_modules/supports-color": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/supports-color?sponsor=1"
- }
- },
- "node_modules/js-tokens": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/js-yaml": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
- "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/jsc-android": {
- "version": "250231.0.0",
- "resolved": "https://registry.npmjs.org/jsc-android/-/jsc-android-250231.0.0.tgz",
- "integrity": "sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw==",
- "dev": true,
- "license": "BSD-2-Clause"
- },
- "node_modules/jsc-safe-url": {
- "version": "0.2.4",
- "resolved": "https://registry.npmjs.org/jsc-safe-url/-/jsc-safe-url-0.2.4.tgz",
- "integrity": "sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q==",
- "dev": true,
- "license": "0BSD"
- },
- "node_modules/jscodeshift": {
- "version": "0.14.0",
- "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.14.0.tgz",
- "integrity": "sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.13.16",
- "@babel/parser": "^7.13.16",
- "@babel/plugin-proposal-class-properties": "^7.13.0",
- "@babel/plugin-proposal-nullish-coalescing-operator": "^7.13.8",
- "@babel/plugin-proposal-optional-chaining": "^7.13.12",
- "@babel/plugin-transform-modules-commonjs": "^7.13.8",
- "@babel/preset-flow": "^7.13.13",
- "@babel/preset-typescript": "^7.13.0",
- "@babel/register": "^7.13.16",
- "babel-core": "^7.0.0-bridge.0",
- "chalk": "^4.1.2",
- "flow-parser": "0.*",
- "graceful-fs": "^4.2.4",
- "micromatch": "^4.0.4",
- "neo-async": "^2.5.0",
- "node-dir": "^0.1.17",
- "recast": "^0.21.0",
- "temp": "^0.8.4",
- "write-file-atomic": "^2.3.0"
- },
- "bin": {
- "jscodeshift": "bin/jscodeshift.js"
- },
- "peerDependencies": {
- "@babel/preset-env": "^7.1.6"
- }
- },
- "node_modules/jscodeshift/node_modules/write-file-atomic": {
- "version": "2.4.3",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz",
- "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "graceful-fs": "^4.1.11",
- "imurmurhash": "^0.1.4",
- "signal-exit": "^3.0.2"
- }
- },
- "node_modules/jsesc": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
- "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "jsesc": "bin/jsesc"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/json-buffer": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
- "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/json-parse-better-errors": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
- "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/json-stable-stringify-without-jsonify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
- "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/json-stringify-safe": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/json5": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
- "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "json5": "lib/cli.js"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/jsonfile": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.1.tgz",
- "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "universalify": "^2.0.0"
- },
- "optionalDependencies": {
- "graceful-fs": "^4.1.6"
- }
- },
- "node_modules/jsonparse": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
- "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==",
- "dev": true,
- "engines": [
- "node >= 0.2.0"
- ],
- "license": "MIT"
- },
- "node_modules/JSONStream": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
- "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
- "dev": true,
- "license": "(MIT OR Apache-2.0)",
- "dependencies": {
- "jsonparse": "^1.2.0",
- "through": ">=2.2.7 <3"
- },
- "bin": {
- "JSONStream": "bin.js"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/jsx-ast-utils": {
- "version": "3.3.5",
- "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz",
- "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-includes": "^3.1.6",
- "array.prototype.flat": "^1.3.1",
- "object.assign": "^4.1.4",
- "object.values": "^1.1.6"
- },
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/keyv": {
- "version": "4.5.4",
- "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
- "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "json-buffer": "3.0.1"
- }
- },
- "node_modules/kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/kleur": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
- "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/latest-version": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-7.0.0.tgz",
- "integrity": "sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "package-json": "^8.1.0"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/leven": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
- "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/levn": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
- "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "prelude-ls": "^1.2.1",
- "type-check": "~0.4.0"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/lighthouse-logger": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz",
- "integrity": "sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "debug": "^2.6.9",
- "marky": "^1.2.2"
- }
- },
- "node_modules/lighthouse-logger/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/lighthouse-logger/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lines-and-columns": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
- "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/load-json-file": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
- "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "graceful-fs": "^4.1.2",
- "parse-json": "^4.0.0",
- "pify": "^3.0.0",
- "strip-bom": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/load-json-file/node_modules/parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "error-ex": "^1.3.1",
- "json-parse-better-errors": "^1.0.1"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/load-json-file/node_modules/pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/load-json-file/node_modules/strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/locate-path": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
- "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-locate": "^5.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/lodash": {
- "version": "4.18.1",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz",
- "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.camelcase": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz",
- "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.capitalize": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/lodash.capitalize/-/lodash.capitalize-4.2.1.tgz",
- "integrity": "sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.debounce": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
- "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.escaperegexp": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz",
- "integrity": "sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.isfunction": {
- "version": "3.0.9",
- "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz",
- "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.ismatch": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz",
- "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.isplainobject": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
- "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.isstring": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz",
- "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.kebabcase": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz",
- "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.merge": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.mergewith": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz",
- "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.snakecase": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz",
- "integrity": "sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.startcase": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz",
- "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.throttle": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz",
- "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.uniq": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz",
- "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.uniqby": {
- "version": "4.7.0",
- "resolved": "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz",
- "integrity": "sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.upperfirst": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz",
- "integrity": "sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/log-symbols": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-5.1.0.tgz",
- "integrity": "sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chalk": "^5.0.0",
- "is-unicode-supported": "^1.1.0"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/log-symbols/node_modules/chalk": {
- "version": "5.6.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz",
- "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.17.0 || ^14.13 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/loose-envify": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
- "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "js-tokens": "^3.0.0 || ^4.0.0"
- },
- "bin": {
- "loose-envify": "cli.js"
- }
- },
- "node_modules/lowercase-keys": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz",
- "integrity": "sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/lru-cache": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
- "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "yallist": "^3.0.2"
- }
- },
- "node_modules/macos-release": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-3.4.0.tgz",
- "integrity": "sha512-wpGPwyg/xrSp4H4Db4xYSeAr6+cFQGHfspHzDUdYxswDnUW0L5Ov63UuJiSr8NMSpyaChO4u1n0MXUvVPtrN6A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/make-dir": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz",
- "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "semver": "^7.5.3"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/make-dir/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/make-error": {
- "version": "1.3.6",
- "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz",
- "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/makeerror": {
- "version": "1.0.12",
- "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz",
- "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "tmpl": "1.0.5"
- }
- },
- "node_modules/map-obj": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz",
- "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/marky": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/marky/-/marky-1.3.0.tgz",
- "integrity": "sha512-ocnPZQLNpvbedwTy9kNrQEsknEfgvcLMvOtz3sFeWApDq1MXH1TqkCIx58xlpESsfwQOnuBO9beyQuNGzVvuhQ==",
- "dev": true,
- "license": "Apache-2.0"
- },
- "node_modules/math-intrinsics": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
- "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/memoize-one": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz",
- "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/meow": {
- "version": "8.1.2",
- "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz",
- "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/minimist": "^1.2.0",
- "camelcase-keys": "^6.2.2",
- "decamelize-keys": "^1.1.0",
- "hard-rejection": "^2.1.0",
- "minimist-options": "4.1.0",
- "normalize-package-data": "^3.0.0",
- "read-pkg-up": "^7.0.1",
- "redent": "^3.0.0",
- "trim-newlines": "^3.0.0",
- "type-fest": "^0.18.0",
- "yargs-parser": "^20.2.3"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/meow/node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/meow/node_modules/hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/meow/node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/meow/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/meow/node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/meow/node_modules/read-pkg": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
- "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/normalize-package-data": "^2.4.0",
- "normalize-package-data": "^2.5.0",
- "parse-json": "^5.0.0",
- "type-fest": "^0.6.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/meow/node_modules/read-pkg-up": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
- "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "find-up": "^4.1.0",
- "read-pkg": "^5.2.0",
- "type-fest": "^0.8.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
- "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
- "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/meow/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/meow/node_modules/type-fest": {
- "version": "0.18.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz",
- "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/merge-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
- "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/merge2": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
- "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/metro": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro/-/metro-0.81.5.tgz",
- "integrity": "sha512-YpFF0DDDpDVygeca2mAn7K0+us+XKmiGk4rIYMz/CRdjFoCGqAei/IQSpV0UrGfQbToSugpMQeQJveaWSH88Hg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/code-frame": "^7.24.7",
- "@babel/core": "^7.25.2",
- "@babel/generator": "^7.25.0",
- "@babel/parser": "^7.25.3",
- "@babel/template": "^7.25.0",
- "@babel/traverse": "^7.25.3",
- "@babel/types": "^7.25.2",
- "accepts": "^1.3.7",
- "chalk": "^4.0.0",
- "ci-info": "^2.0.0",
- "connect": "^3.6.5",
- "debug": "^2.2.0",
- "error-stack-parser": "^2.0.6",
- "flow-enums-runtime": "^0.0.6",
- "graceful-fs": "^4.2.4",
- "hermes-parser": "0.25.1",
- "image-size": "^1.0.2",
- "invariant": "^2.2.4",
- "jest-worker": "^29.7.0",
- "jsc-safe-url": "^0.2.2",
- "lodash.throttle": "^4.1.1",
- "metro-babel-transformer": "0.81.5",
- "metro-cache": "0.81.5",
- "metro-cache-key": "0.81.5",
- "metro-config": "0.81.5",
- "metro-core": "0.81.5",
- "metro-file-map": "0.81.5",
- "metro-resolver": "0.81.5",
- "metro-runtime": "0.81.5",
- "metro-source-map": "0.81.5",
- "metro-symbolicate": "0.81.5",
- "metro-transform-plugins": "0.81.5",
- "metro-transform-worker": "0.81.5",
- "mime-types": "^2.1.27",
- "nullthrows": "^1.1.1",
- "serialize-error": "^2.1.0",
- "source-map": "^0.5.6",
- "throat": "^5.0.0",
- "ws": "^7.5.10",
- "yargs": "^17.6.2"
- },
- "bin": {
- "metro": "src/cli.js"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-babel-transformer": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.81.5.tgz",
- "integrity": "sha512-oKCQuajU5srm+ZdDcFg86pG/U8hkSjBlkyFjz380SZ4TTIiI5F+OQB830i53D8hmqmcosa4wR/pnKv8y4Q3dLw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.25.2",
- "flow-enums-runtime": "^0.0.6",
- "hermes-parser": "0.25.1",
- "nullthrows": "^1.1.1"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-babel-transformer/node_modules/hermes-estree": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz",
- "integrity": "sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/metro-babel-transformer/node_modules/hermes-parser": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz",
- "integrity": "sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hermes-estree": "0.25.1"
- }
- },
- "node_modules/metro-cache": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.81.5.tgz",
- "integrity": "sha512-wOsXuEgmZMZ5DMPoz1pEDerjJ11AuMy9JifH4yNW7NmWS0ghCRqvDxk13LsElzLshey8C+my/tmXauXZ3OqZgg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "exponential-backoff": "^3.1.1",
- "flow-enums-runtime": "^0.0.6",
- "metro-core": "0.81.5"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-cache-key": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.81.5.tgz",
- "integrity": "sha512-lGWnGVm1UwO8faRZ+LXQUesZSmP1LOg14OVR+KNPBip8kbMECbQJ8c10nGesw28uQT7AE0lwQThZPXlxDyCLKQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flow-enums-runtime": "^0.0.6"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-config": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.81.5.tgz",
- "integrity": "sha512-oDRAzUvj6RNRxratFdcVAqtAsg+T3qcKrGdqGZFUdwzlFJdHGR9Z413sW583uD2ynsuOjA2QB6US8FdwiBdNKg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "connect": "^3.6.5",
- "cosmiconfig": "^5.0.5",
- "flow-enums-runtime": "^0.0.6",
- "jest-validate": "^29.7.0",
- "metro": "0.81.5",
- "metro-cache": "0.81.5",
- "metro-core": "0.81.5",
- "metro-runtime": "0.81.5"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-config/node_modules/argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "sprintf-js": "~1.0.2"
- }
- },
- "node_modules/metro-config/node_modules/cosmiconfig": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz",
- "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "import-fresh": "^2.0.0",
- "is-directory": "^0.3.1",
- "js-yaml": "^3.13.1",
- "parse-json": "^4.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/metro-config/node_modules/import-fresh": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz",
- "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "caller-path": "^2.0.0",
- "resolve-from": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/metro-config/node_modules/js-yaml": {
- "version": "3.14.2",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz",
- "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/metro-config/node_modules/parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "error-ex": "^1.3.1",
- "json-parse-better-errors": "^1.0.1"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/metro-config/node_modules/resolve-from": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
- "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/metro-core": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.81.5.tgz",
- "integrity": "sha512-+2R0c8ByfV2N7CH5wpdIajCWa8escUFd8TukfoXyBq/vb6yTCsznoA25FhNXJ+MC/cz1L447Zj3vdUfCXIZBwg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flow-enums-runtime": "^0.0.6",
- "lodash.throttle": "^4.1.1",
- "metro-resolver": "0.81.5"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-file-map": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.81.5.tgz",
- "integrity": "sha512-mW1PKyiO3qZvjeeVjj1brhkmIotObA3/9jdbY1fQQYvEWM6Ml7bN/oJCRDGn2+bJRlG+J8pwyJ+DgdrM4BsKyg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "^2.2.0",
- "fb-watchman": "^2.0.0",
- "flow-enums-runtime": "^0.0.6",
- "graceful-fs": "^4.2.4",
- "invariant": "^2.2.4",
- "jest-worker": "^29.7.0",
- "micromatch": "^4.0.4",
- "nullthrows": "^1.1.1",
- "walker": "^1.0.7"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-file-map/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/metro-file-map/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/metro-minify-terser": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.81.5.tgz",
- "integrity": "sha512-/mn4AxjANnsSS3/Bb+zA1G5yIS5xygbbz/OuPaJYs0CPcZCaWt66D+65j4Ft/nJkffUxcwE9mk4ubpkl3rjgtw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flow-enums-runtime": "^0.0.6",
- "terser": "^5.15.0"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-resolver": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.81.5.tgz",
- "integrity": "sha512-6BX8Nq3g3go3FxcyXkVbWe7IgctjDTk6D9flq+P201DfHHQ28J+DWFpVelFcrNTn4tIfbP/Bw7u/0g2BGmeXfQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flow-enums-runtime": "^0.0.6"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-runtime": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.81.5.tgz",
- "integrity": "sha512-M/Gf71ictUKP9+77dV/y8XlAWg7xl76uhU7ggYFUwEdOHHWPG6gLBr1iiK0BmTjPFH8yRo/xyqMli4s3oGorPQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/runtime": "^7.25.0",
- "flow-enums-runtime": "^0.0.6"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-source-map": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.81.5.tgz",
- "integrity": "sha512-Jz+CjvCKLNbJZYJTBeN3Kq9kIJf6b61MoLBdaOQZJ5Ajhw6Pf95Nn21XwA8BwfUYgajsi6IXsp/dTZsYJbN00Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/traverse": "^7.25.3",
- "@babel/traverse--for-generate-function-map": "npm:@babel/traverse@^7.25.3",
- "@babel/types": "^7.25.2",
- "flow-enums-runtime": "^0.0.6",
- "invariant": "^2.2.4",
- "metro-symbolicate": "0.81.5",
- "nullthrows": "^1.1.1",
- "ob1": "0.81.5",
- "source-map": "^0.5.6",
- "vlq": "^1.0.0"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-source-map/node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/metro-symbolicate": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.81.5.tgz",
- "integrity": "sha512-X3HV3n3D6FuTE11UWFICqHbFMdTavfO48nXsSpnNGFkUZBexffu0Xd+fYKp+DJLNaQr3S+lAs8q9CgtDTlRRuA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flow-enums-runtime": "^0.0.6",
- "invariant": "^2.2.4",
- "metro-source-map": "0.81.5",
- "nullthrows": "^1.1.1",
- "source-map": "^0.5.6",
- "vlq": "^1.0.0"
- },
- "bin": {
- "metro-symbolicate": "src/index.js"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-symbolicate/node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/metro-transform-plugins": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.81.5.tgz",
- "integrity": "sha512-MmHhVx/1dJC94FN7m3oHgv5uOjKH8EX8pBeu1pnPMxbJrx6ZuIejO0k84zTSaQTZ8RxX1wqwzWBpXAWPjEX8mA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.25.2",
- "@babel/generator": "^7.25.0",
- "@babel/template": "^7.25.0",
- "@babel/traverse": "^7.25.3",
- "flow-enums-runtime": "^0.0.6",
- "nullthrows": "^1.1.1"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro-transform-worker": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.81.5.tgz",
- "integrity": "sha512-lUFyWVHa7lZFRSLJEv+m4jH8WrR5gU7VIjUlg4XmxQfV8ngY4V10ARKynLhMYPeQGl7Qvf+Ayg0eCZ272YZ4Mg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.25.2",
- "@babel/generator": "^7.25.0",
- "@babel/parser": "^7.25.3",
- "@babel/types": "^7.25.2",
- "flow-enums-runtime": "^0.0.6",
- "metro": "0.81.5",
- "metro-babel-transformer": "0.81.5",
- "metro-cache": "0.81.5",
- "metro-cache-key": "0.81.5",
- "metro-minify-terser": "0.81.5",
- "metro-source-map": "0.81.5",
- "metro-transform-plugins": "0.81.5",
- "nullthrows": "^1.1.1"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/metro/node_modules/ci-info": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
- "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/metro/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/metro/node_modules/hermes-estree": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz",
- "integrity": "sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/metro/node_modules/hermes-parser": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz",
- "integrity": "sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hermes-estree": "0.25.1"
- }
- },
- "node_modules/metro/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/metro/node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/metro/node_modules/ws": {
- "version": "7.5.10",
- "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz",
- "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.3.0"
- },
- "peerDependencies": {
- "bufferutil": "^4.0.1",
- "utf-8-validate": "^5.0.2"
- },
- "peerDependenciesMeta": {
- "bufferutil": {
- "optional": true
- },
- "utf-8-validate": {
- "optional": true
- }
- }
- },
- "node_modules/micromatch": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
- "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "braces": "^3.0.3",
- "picomatch": "^2.3.1"
- },
- "engines": {
- "node": ">=8.6"
- }
- },
- "node_modules/mime": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
- "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "mime": "cli.js"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mimic-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
- "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/mimic-response": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz",
- "integrity": "sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/min-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
- "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/minimatch": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
- "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/minimist": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
- "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/minimist-options": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz",
- "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "arrify": "^1.0.1",
- "is-plain-obj": "^1.1.0",
- "kind-of": "^6.0.3"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/mkdirp": {
- "version": "0.5.6",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
- "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "minimist": "^1.2.6"
- },
- "bin": {
- "mkdirp": "bin/cmd.js"
- }
- },
- "node_modules/modify-values": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz",
- "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/mute-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz",
- "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
- }
- },
- "node_modules/natural-compare": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
- "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/natural-compare-lite": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz",
- "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/negotiator": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
- "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/neo-async": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
- "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/netmask": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.1.1.tgz",
- "integrity": "sha512-eonl3sLUha+S1GzTPxychyhnUzKyeQkZ7jLjKrBagJgPla13F+uQ71HgpFefyHgqrjEbCPkDArxYsjY8/+gLKA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4.0"
- }
- },
- "node_modules/new-github-release-url": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/new-github-release-url/-/new-github-release-url-2.0.0.tgz",
- "integrity": "sha512-NHDDGYudnvRutt/VhKFlX26IotXe1w0cmkDm6JGquh5bz/bDTw0LufSmH/GxTjEdpHEO+bVKFTwdrcGa/9XlKQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "type-fest": "^2.5.1"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/new-github-release-url/node_modules/type-fest": {
- "version": "2.19.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz",
- "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=12.20"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/node-dir": {
- "version": "0.1.17",
- "resolved": "https://registry.npmjs.org/node-dir/-/node-dir-0.1.17.tgz",
- "integrity": "sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "minimatch": "^3.0.2"
- },
- "engines": {
- "node": ">= 0.10.5"
- }
- },
- "node_modules/node-domexception": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
- "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==",
- "deprecated": "Use your platform's native DOMException instead",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/jimmywarting"
- },
- {
- "type": "github",
- "url": "https://paypal.me/jimmywarting"
- }
- ],
- "license": "MIT",
- "engines": {
- "node": ">=10.5.0"
- }
- },
- "node_modules/node-exports-info": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/node-exports-info/-/node-exports-info-1.6.0.tgz",
- "integrity": "sha512-pyFS63ptit/P5WqUkt+UUfe+4oevH+bFeIiPPdfb0pFeYEu/1ELnJu5l+5EcTKYL5M7zaAa7S8ddywgXypqKCw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array.prototype.flatmap": "^1.3.3",
- "es-errors": "^1.3.0",
- "object.entries": "^1.1.9",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/node-fetch": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz",
- "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "whatwg-url": "^5.0.0"
- },
- "engines": {
- "node": "4.x || >=6.0.0"
- },
- "peerDependencies": {
- "encoding": "^0.1.0"
- },
- "peerDependenciesMeta": {
- "encoding": {
- "optional": true
- }
- }
- },
- "node_modules/node-forge": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.4.0.tgz",
- "integrity": "sha512-LarFH0+6VfriEhqMMcLX2F7SwSXeWwnEAJEsYm5QKWchiVYVvJyV9v7UDvUv+w5HO23ZpQTXDv/GxdDdMyOuoQ==",
- "dev": true,
- "license": "(BSD-3-Clause OR GPL-2.0)",
- "engines": {
- "node": ">= 6.13.0"
- }
- },
- "node_modules/node-int64": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
- "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/node-releases": {
- "version": "2.0.38",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.38.tgz",
- "integrity": "sha512-3qT/88Y3FbH/Kx4szpQQ4HzUbVrHPKTLVpVocKiLfoYvw9XSGOX2FmD2d6DrXbVYyAQTF2HeF6My8jmzx7/CRw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/normalize-package-data": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz",
- "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "hosted-git-info": "^4.0.1",
- "is-core-module": "^2.5.0",
- "semver": "^7.3.4",
- "validate-npm-package-license": "^3.0.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/normalize-package-data/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/normalize-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/normalize-url": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-8.1.1.tgz",
- "integrity": "sha512-JYc0DPlpGWB40kH5g07gGTrYuMqV653k3uBKY6uITPWds3M0ov3GaWGp9lbE3Bzngx8+XkfzgvASb9vk9JDFXQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/npm-run-path": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
- "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "path-key": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/nullthrows": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz",
- "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/ob1": {
- "version": "0.81.5",
- "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.81.5.tgz",
- "integrity": "sha512-iNpbeXPLmaiT9I5g16gFFFjsF3sGxLpYG2EGP3dfFB4z+l9X60mp/yRzStHhMtuNt8qmf7Ww80nOPQHngHhnIQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flow-enums-runtime": "^0.0.6"
- },
- "engines": {
- "node": ">=18.18"
- }
- },
- "node_modules/object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object-inspect": {
- "version": "1.13.4",
- "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
- "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/object.assign": {
- "version": "4.1.7",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz",
- "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.3",
- "define-properties": "^1.2.1",
- "es-object-atoms": "^1.0.0",
- "has-symbols": "^1.1.0",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object.entries": {
- "version": "1.1.9",
- "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz",
- "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.4",
- "define-properties": "^1.2.1",
- "es-object-atoms": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/object.fromentries": {
- "version": "2.0.8",
- "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz",
- "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.2",
- "es-object-atoms": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object.values": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz",
- "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.3",
- "define-properties": "^1.2.1",
- "es-object-atoms": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/on-finished": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
- "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ee-first": "1.1.1"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "wrappy": "1"
- }
- },
- "node_modules/onetime": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
- "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mimic-fn": "^2.1.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/open": {
- "version": "7.4.2",
- "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz",
- "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-docker": "^2.0.0",
- "is-wsl": "^2.1.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/optionator": {
- "version": "0.9.4",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz",
- "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==",
- "dev": true,
- "license": "MIT",
- "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.5"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/ora": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/ora/-/ora-6.3.1.tgz",
- "integrity": "sha512-ERAyNnZOfqM+Ao3RAvIXkYh5joP220yf59gVe2X/cI6SiCxIdi4c9HZKZD8R6q/RDXEje1THBju6iExiSsgJaQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chalk": "^5.0.0",
- "cli-cursor": "^4.0.0",
- "cli-spinners": "^2.6.1",
- "is-interactive": "^2.0.0",
- "is-unicode-supported": "^1.1.0",
- "log-symbols": "^5.1.0",
- "stdin-discarder": "^0.1.0",
- "strip-ansi": "^7.0.1",
- "wcwidth": "^1.0.1"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/ora/node_modules/ansi-regex": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz",
- "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-regex?sponsor=1"
- }
- },
- "node_modules/ora/node_modules/chalk": {
- "version": "5.6.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz",
- "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.17.0 || ^14.13 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/ora/node_modules/cli-cursor": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz",
- "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "restore-cursor": "^4.0.0"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/ora/node_modules/restore-cursor": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz",
- "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "onetime": "^5.1.0",
- "signal-exit": "^3.0.2"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/ora/node_modules/strip-ansi": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz",
- "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^6.2.2"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/strip-ansi?sponsor=1"
- }
- },
- "node_modules/os-name": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/os-name/-/os-name-5.1.0.tgz",
- "integrity": "sha512-YEIoAnM6zFmzw3PQ201gCVCIWbXNyKObGlVvpAVvraAeOHnlYVKFssbA/riRX5R40WA6kKrZ7Dr7dWzO3nKSeQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "macos-release": "^3.1.0",
- "windows-release": "^5.0.1"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/os-tmpdir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
- "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/own-keys": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz",
- "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "get-intrinsic": "^1.2.6",
- "object-keys": "^1.1.1",
- "safe-push-apply": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/p-cancelable": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz",
- "integrity": "sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12.20"
- }
- },
- "node_modules/p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "yocto-queue": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/p-locate": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
- "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-limit": "^3.0.2"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/p-map": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz",
- "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "aggregate-error": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/p-try": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/pac-proxy-agent": {
- "version": "6.0.4",
- "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-6.0.4.tgz",
- "integrity": "sha512-FbJYeusBOZNe6bmrC2/+r/HljwExryon16lNKEU82gWiwIPMCEktUPSEAcTkO9K3jd/YPGuX/azZel1ltmo6nQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "agent-base": "^7.0.2",
- "debug": "^4.3.4",
- "get-uri": "^6.0.1",
- "http-proxy-agent": "^7.0.0",
- "https-proxy-agent": "^7.0.0",
- "pac-resolver": "^6.0.1",
- "socks-proxy-agent": "^8.0.1"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/pac-resolver": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-6.0.2.tgz",
- "integrity": "sha512-EQpuJ2ifOjpZY5sg1Q1ZeAxvtLwR7Mj3RgY8cysPGbsRu3RBXyJFWxnMus9PScjxya/0LzvVDxNh/gl0eXBU4w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "degenerator": "^4.0.4",
- "ip": "^1.1.8",
- "netmask": "^2.0.2"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/package-json": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/package-json/-/package-json-8.1.1.tgz",
- "integrity": "sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "got": "^12.1.0",
- "registry-auth-token": "^5.0.1",
- "registry-url": "^6.0.0",
- "semver": "^7.3.7"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/package-json/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "callsites": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/parse-json": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
- "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/code-frame": "^7.0.0",
- "error-ex": "^1.3.1",
- "json-parse-even-better-errors": "^2.3.0",
- "lines-and-columns": "^1.1.6"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/parse-path": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.1.0.tgz",
- "integrity": "sha512-EuCycjZtfPcjWk7KTksnJ5xPMvWGA/6i4zrLYhRG0hGvC3GPU/jGUj3Cy+ZR0v30duV3e23R95T1lE2+lsndSw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "protocols": "^2.0.0"
- }
- },
- "node_modules/parse-url": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz",
- "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "parse-path": "^7.0.0"
- }
- },
- "node_modules/parseurl": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
- "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/path-key": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
- "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/path-parse": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/picocolors": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
- "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/picomatch": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz",
- "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
- "node_modules/pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/pirates": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz",
- "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "find-up": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/pkg-dir/node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/pkg-dir/node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/pkg-dir/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/pkg-dir/node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/pod-install": {
- "version": "0.1.39",
- "resolved": "https://registry.npmjs.org/pod-install/-/pod-install-0.1.39.tgz",
- "integrity": "sha512-0kVvdLYe0CtfJEr+ISvTMxAEB0UF4JMRToPjuu9xAAq1mEqA2Ql5u7uLWX1m45BMM+7NfU4LnBbnfNjmQE9GCw==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "pod-install": "build/index.js"
- }
- },
- "node_modules/possible-typed-array-names": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz",
- "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/prelude-ls": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
- "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/prettier": {
- "version": "2.8.8",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
- "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "prettier": "bin-prettier.js"
- },
- "engines": {
- "node": ">=10.13.0"
- },
- "funding": {
- "url": "https://github.com/prettier/prettier?sponsor=1"
- }
- },
- "node_modules/prettier-linter-helpers": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.1.tgz",
- "integrity": "sha512-SxToR7P8Y2lWmv/kTzVLC1t/GDI2WGjMwNhLLE9qtH8Q13C+aEmuRlzDst4Up4s0Wc8sF2M+J57iB3cMLqftfg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fast-diff": "^1.1.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/pretty-format": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz",
- "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/schemas": "^29.6.3",
- "ansi-styles": "^5.0.0",
- "react-is": "^18.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/pretty-format/node_modules/ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/process-nextick-args": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
- "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/promise": {
- "version": "8.3.0",
- "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz",
- "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "asap": "~2.0.6"
- }
- },
- "node_modules/promise.allsettled": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/promise.allsettled/-/promise.allsettled-1.0.6.tgz",
- "integrity": "sha512-22wJUOD3zswWFqgwjNHa1965LvqTX87WPu/lreY2KSd7SVcERfuZ4GfUaOnJNnvtoIv2yXT/W00YIGMetXtFXg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array.prototype.map": "^1.0.5",
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.4",
- "es-abstract": "^1.20.4",
- "get-intrinsic": "^1.1.3",
- "iterate-value": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/prompts": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz",
- "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "kleur": "^3.0.3",
- "sisteransi": "^1.0.5"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/prop-types": {
- "version": "15.8.1",
- "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
- "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "loose-envify": "^1.4.0",
- "object-assign": "^4.1.1",
- "react-is": "^16.13.1"
- }
- },
- "node_modules/prop-types/node_modules/react-is": {
- "version": "16.13.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/proto-list": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz",
- "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/protocols": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.2.tgz",
- "integrity": "sha512-hHVTzba3wboROl0/aWRRG9dMytgH6ow//STBZh43l/wQgmMhYhOFi0EHWAPtoCz9IAUymsyP0TSBHkhgMEGNnQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/proxy-agent": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.2.1.tgz",
- "integrity": "sha512-OIbBKlRAT+ycCm6wAYIzMwPejzRtjy8F3QiDX0eKOA3e4pe3U9F/IvzcHP42bmgQxVv97juG+J8/gx+JIeCX/Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "agent-base": "^7.0.2",
- "debug": "^4.3.4",
- "http-proxy-agent": "^7.0.0",
- "https-proxy-agent": "^7.0.0",
- "lru-cache": "^7.14.1",
- "pac-proxy-agent": "^6.0.3",
- "proxy-from-env": "^1.1.0",
- "socks-proxy-agent": "^8.0.1"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/proxy-agent/node_modules/lru-cache": {
- "version": "7.18.3",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
- "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/proxy-from-env": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
- "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/pump": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.4.tgz",
- "integrity": "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "end-of-stream": "^1.1.0",
- "once": "^1.3.1"
- }
- },
- "node_modules/punycode": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
- "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/pupa": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/pupa/-/pupa-3.3.0.tgz",
- "integrity": "sha512-LjgDO2zPtoXP2wJpDjZrGdojii1uqO0cnwKoIoUzkfS98HDmbeiGmYiXo3lXeFlq2xvne1QFQhwYXSUCLKtEuA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "escape-goat": "^4.0.0"
- },
- "engines": {
- "node": ">=12.20"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/pure-rand": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz",
- "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==",
- "dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://github.com/sponsors/dubzzz"
- },
- {
- "type": "opencollective",
- "url": "https://opencollective.com/fast-check"
- }
- ],
- "license": "MIT"
- },
- "node_modules/q": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
- "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==",
- "deprecated": "You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other.\n\n(For a CapTP with native promises, see @endo/eventual-send and @endo/captp)",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.6.0",
- "teleport": ">=0.2.0"
- }
- },
- "node_modules/queue": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz",
- "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "~2.0.3"
- }
- },
- "node_modules/queue-microtask": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
- "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT"
- },
- "node_modules/quick-lru": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz",
- "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/range-parser": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
- "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/rc": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz",
- "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
- "dev": true,
- "license": "(BSD-2-Clause OR MIT OR Apache-2.0)",
- "dependencies": {
- "deep-extend": "^0.6.0",
- "ini": "~1.3.0",
- "minimist": "^1.2.0",
- "strip-json-comments": "~2.0.1"
- },
- "bin": {
- "rc": "cli.js"
- }
- },
- "node_modules/rc/node_modules/strip-json-comments": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
- "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/react": {
- "version": "18.2.0",
- "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz",
- "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "loose-envify": "^1.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/react-devtools-core": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-5.3.2.tgz",
- "integrity": "sha512-crr9HkVrDiJ0A4zot89oS0Cgv0Oa4OG1Em4jit3P3ZxZSKPMYyMjfwMqgcJna9o625g8oN87rBm8SWWrSTBZxg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "shell-quote": "^1.6.1",
- "ws": "^7"
- }
- },
- "node_modules/react-devtools-core/node_modules/ws": {
- "version": "7.5.10",
- "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz",
- "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.3.0"
- },
- "peerDependencies": {
- "bufferutil": "^4.0.1",
- "utf-8-validate": "^5.0.2"
- },
- "peerDependenciesMeta": {
- "bufferutil": {
- "optional": true
- },
- "utf-8-validate": {
- "optional": true
- }
- }
- },
- "node_modules/react-is": {
- "version": "18.3.1",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz",
- "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/react-native": {
- "version": "0.76.0",
- "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.76.0.tgz",
- "integrity": "sha512-isbLzmY7fhhLdN/oss4jlRHeDmEShuTYsp1Zq93UM0/JssQK4g+2Ub4mHdhxDFm2LN+0ryBgVJK1nO7l93cfsA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jest/create-cache-key-function": "^29.6.3",
- "@react-native/assets-registry": "0.76.0",
- "@react-native/codegen": "0.76.0",
- "@react-native/community-cli-plugin": "0.76.0",
- "@react-native/gradle-plugin": "0.76.0",
- "@react-native/js-polyfills": "0.76.0",
- "@react-native/normalize-colors": "0.76.0",
- "@react-native/virtualized-lists": "0.76.0",
- "abort-controller": "^3.0.0",
- "anser": "^1.4.9",
- "ansi-regex": "^5.0.0",
- "babel-jest": "^29.7.0",
- "babel-plugin-syntax-hermes-parser": "^0.23.1",
- "base64-js": "^1.5.1",
- "chalk": "^4.0.0",
- "commander": "^12.0.0",
- "event-target-shim": "^5.0.1",
- "flow-enums-runtime": "^0.0.6",
- "glob": "^7.1.1",
- "invariant": "^2.2.4",
- "jest-environment-node": "^29.6.3",
- "jsc-android": "^250231.0.0",
- "memoize-one": "^5.0.0",
- "metro-runtime": "^0.81.0",
- "metro-source-map": "^0.81.0",
- "mkdirp": "^0.5.1",
- "nullthrows": "^1.1.1",
- "pretty-format": "^29.7.0",
- "promise": "^8.3.0",
- "react-devtools-core": "^5.3.1",
- "react-refresh": "^0.14.0",
- "regenerator-runtime": "^0.13.2",
- "scheduler": "0.24.0-canary-efb381bbf-20230505",
- "semver": "^7.1.3",
- "stacktrace-parser": "^0.1.10",
- "whatwg-fetch": "^3.0.0",
- "ws": "^6.2.3",
- "yargs": "^17.6.2"
- },
- "bin": {
- "react-native": "cli.js"
- },
- "engines": {
- "node": ">=18"
- },
- "peerDependencies": {
- "@types/react": "^18.2.6",
- "react": "^18.2.0"
- },
- "peerDependenciesMeta": {
- "@types/react": {
- "optional": true
- }
- }
- },
- "node_modules/react-native-builder-bob": {
- "version": "0.40.13",
- "resolved": "https://registry.npmjs.org/react-native-builder-bob/-/react-native-builder-bob-0.40.13.tgz",
- "integrity": "sha512-CtucAJ5PMLH3GPNlg3TB5rb3UPot6VjkD9T8Uhz/AAWit/DmWll0zG33ZZeka69E2569saAjShDz3IKAoYGFtA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/core": "^7.25.2",
- "@babel/plugin-transform-flow-strip-types": "^7.26.5",
- "@babel/plugin-transform-strict-mode": "^7.24.7",
- "@babel/preset-env": "^7.25.2",
- "@babel/preset-react": "^7.24.7",
- "@babel/preset-typescript": "^7.24.7",
- "arktype": "^2.1.15",
- "babel-plugin-syntax-hermes-parser": "^0.28.0",
- "browserslist": "^4.20.4",
- "cross-spawn": "^7.0.3",
- "dedent": "^0.7.0",
- "del": "^6.1.1",
- "escape-string-regexp": "^4.0.0",
- "fs-extra": "^10.1.0",
- "glob": "^8.0.3",
- "is-git-dirty": "^2.0.1",
- "json5": "^2.2.1",
- "kleur": "^4.1.4",
- "prompts": "^2.4.2",
- "react-native-monorepo-config": "^0.1.8",
- "which": "^2.0.2",
- "yargs": "^17.5.1"
- },
- "bin": {
- "bob": "bin/bob"
- },
- "engines": {
- "node": "^20.19.0 || ^22.12.0 || >= 23.4.0"
- }
- },
- "node_modules/react-native-builder-bob/node_modules/babel-plugin-syntax-hermes-parser": {
- "version": "0.28.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-hermes-parser/-/babel-plugin-syntax-hermes-parser-0.28.1.tgz",
- "integrity": "sha512-meT17DOuUElMNsL5LZN56d+KBp22hb0EfxWfuPUeoSi54e40v1W4C2V36P75FpsH9fVEfDKpw5Nnkahc8haSsQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hermes-parser": "0.28.1"
- }
- },
- "node_modules/react-native-builder-bob/node_modules/brace-expansion": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz",
- "integrity": "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/react-native-builder-bob/node_modules/dedent": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
- "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/react-native-builder-bob/node_modules/fs-extra": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
- "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/react-native-builder-bob/node_modules/glob": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
- "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
- "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^5.0.1",
- "once": "^1.3.0"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/react-native-builder-bob/node_modules/hermes-estree": {
- "version": "0.28.1",
- "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.28.1.tgz",
- "integrity": "sha512-w3nxl/RGM7LBae0v8LH2o36+8VqwOZGv9rX1wyoWT6YaKZLqpJZ0YQ5P0LVr3tuRpf7vCx0iIG4i/VmBJejxTQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/react-native-builder-bob/node_modules/hermes-parser": {
- "version": "0.28.1",
- "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.28.1.tgz",
- "integrity": "sha512-nf8o+hE8g7UJWParnccljHumE9Vlq8F7MqIdeahl+4x0tvCUJYRrT0L7h0MMg/X9YJmkNwsfbaNNrzPtFXOscg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hermes-estree": "0.28.1"
- }
- },
- "node_modules/react-native-builder-bob/node_modules/kleur": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
- "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/react-native-builder-bob/node_modules/minimatch": {
- "version": "5.1.9",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz",
- "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/react-native-monorepo-config": {
- "version": "0.1.10",
- "resolved": "https://registry.npmjs.org/react-native-monorepo-config/-/react-native-monorepo-config-0.1.10.tgz",
- "integrity": "sha512-v0rlaLZiCUg95Mpw6xNRQce5k9yio0qscKjNQaPtFYMNL75YugS2UPUItIPLIRbZubK+s2/LRzBjX+mdyUgh4g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "escape-string-regexp": "^5.0.0",
- "fast-glob": "^3.3.3"
- }
- },
- "node_modules/react-native-monorepo-config/node_modules/escape-string-regexp": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
- "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/react-native/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/react-refresh": {
- "version": "0.14.2",
- "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz",
- "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/react-shallow-renderer": {
- "version": "16.15.0",
- "resolved": "https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.15.0.tgz",
- "integrity": "sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "object-assign": "^4.1.1",
- "react-is": "^16.12.0 || ^17.0.0 || ^18.0.0"
- },
- "peerDependencies": {
- "react": "^16.0.0 || ^17.0.0 || ^18.0.0"
- }
- },
- "node_modules/react-test-renderer": {
- "version": "18.2.0",
- "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-18.2.0.tgz",
- "integrity": "sha512-JWD+aQ0lh2gvh4NM3bBM42Kx+XybOxCpgYK7F8ugAlpaTSnWsX+39Z4XkOykGZAHrjwwTZT3x3KxswVWxHPUqA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "react-is": "^18.2.0",
- "react-shallow-renderer": "^16.15.0",
- "scheduler": "^0.23.0"
- },
- "peerDependencies": {
- "react": "^18.2.0"
- }
- },
- "node_modules/react-test-renderer/node_modules/scheduler": {
- "version": "0.23.2",
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz",
- "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "loose-envify": "^1.1.0"
- }
- },
- "node_modules/read-pkg": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
- "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "load-json-file": "^4.0.0",
- "normalize-package-data": "^2.3.2",
- "path-type": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz",
- "integrity": "sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "find-up": "^2.0.0",
- "read-pkg": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "locate-path": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-try": "^1.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-limit": "^1.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg-up/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/read-pkg/node_modules/normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "node_modules/read-pkg/node_modules/path-type": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
- "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pify": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/read-pkg/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/readline": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/readline/-/readline-1.3.0.tgz",
- "integrity": "sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==",
- "dev": true,
- "license": "BSD"
- },
- "node_modules/recast": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/recast/-/recast-0.21.5.tgz",
- "integrity": "sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ast-types": "0.15.2",
- "esprima": "~4.0.0",
- "source-map": "~0.6.1",
- "tslib": "^2.0.1"
- },
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/rechoir": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
- "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==",
- "dev": true,
- "dependencies": {
- "resolve": "^1.1.6"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/redent": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz",
- "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "indent-string": "^4.0.0",
- "strip-indent": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/reflect.getprototypeof": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz",
- "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.9",
- "es-errors": "^1.3.0",
- "es-object-atoms": "^1.0.0",
- "get-intrinsic": "^1.2.7",
- "get-proto": "^1.0.1",
- "which-builtin-type": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/regenerate": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
- "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/regenerate-unicode-properties": {
- "version": "10.2.2",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.2.tgz",
- "integrity": "sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "regenerate": "^1.4.2"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/regenerator-runtime": {
- "version": "0.13.11",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
- "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/regexp.prototype.flags": {
- "version": "1.5.4",
- "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz",
- "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "define-properties": "^1.2.1",
- "es-errors": "^1.3.0",
- "get-proto": "^1.0.1",
- "gopd": "^1.2.0",
- "set-function-name": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/regexpu-core": {
- "version": "6.4.0",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.4.0.tgz",
- "integrity": "sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "regenerate": "^1.4.2",
- "regenerate-unicode-properties": "^10.2.2",
- "regjsgen": "^0.8.0",
- "regjsparser": "^0.13.0",
- "unicode-match-property-ecmascript": "^2.0.0",
- "unicode-match-property-value-ecmascript": "^2.2.1"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/registry-auth-token": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.1.1.tgz",
- "integrity": "sha512-P7B4+jq8DeD2nMsAcdfaqHbssgHtZ7Z5+++a5ask90fvmJ8p5je4mOa+wzu+DB4vQ5tdJV/xywY+UnVFeQLV5Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@pnpm/npm-conf": "^3.0.2"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/registry-url": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-6.0.1.tgz",
- "integrity": "sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "rc": "1.2.8"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/regjsgen": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz",
- "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/regjsparser": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.1.tgz",
- "integrity": "sha512-dLsljMd9sqwRkby8zhO1gSg3PnJIBFid8f4CQj/sXx+7cKx+E7u0PKhZ+U4wmhx7EfmtvnA318oVaIkAB1lRJw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "jsesc": "~3.1.0"
- },
- "bin": {
- "regjsparser": "bin/parser"
- }
- },
- "node_modules/release-it": {
- "version": "15.11.0",
- "resolved": "https://registry.npmjs.org/release-it/-/release-it-15.11.0.tgz",
- "integrity": "sha512-lZwoGEnKYKwGnfxxlA7vtR7vvozPrOSsIgQaHO4bgQ5ARbG3IA6Dmo0IVusv6nR1KmnjH70QIeNAgsWs6Ji/tw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@iarna/toml": "2.2.5",
- "@octokit/rest": "19.0.11",
- "async-retry": "1.3.3",
- "chalk": "5.2.0",
- "cosmiconfig": "8.1.3",
- "execa": "7.1.1",
- "git-url-parse": "13.1.0",
- "globby": "13.1.4",
- "got": "12.6.1",
- "inquirer": "9.2.6",
- "is-ci": "3.0.1",
- "issue-parser": "6.0.0",
- "lodash": "4.17.21",
- "mime-types": "2.1.35",
- "new-github-release-url": "2.0.0",
- "node-fetch": "3.3.1",
- "open": "9.1.0",
- "ora": "6.3.1",
- "os-name": "5.1.0",
- "promise.allsettled": "1.0.6",
- "proxy-agent": "6.2.1",
- "semver": "7.5.1",
- "shelljs": "0.8.5",
- "update-notifier": "6.0.2",
- "url-join": "5.0.0",
- "wildcard-match": "5.1.2",
- "yargs-parser": "21.1.1"
- },
- "bin": {
- "release-it": "bin/release-it.js"
- },
- "engines": {
- "node": ">=14.9"
- }
- },
- "node_modules/release-it/node_modules/chalk": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
- "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.17.0 || ^14.13 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/release-it/node_modules/cosmiconfig": {
- "version": "8.1.3",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.1.3.tgz",
- "integrity": "sha512-/UkO2JKI18b5jVMJUp0lvKFMpa/Gye+ZgZjKD+DGEN9y7NRcf/nK1A0sp67ONmKtnDCNMS44E6jrk0Yc3bDuUw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "parse-json": "^5.0.0",
- "path-type": "^4.0.0"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/d-fischer"
- }
- },
- "node_modules/release-it/node_modules/data-uri-to-buffer": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz",
- "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 12"
- }
- },
- "node_modules/release-it/node_modules/execa": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/execa/-/execa-7.1.1.tgz",
- "integrity": "sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cross-spawn": "^7.0.3",
- "get-stream": "^6.0.1",
- "human-signals": "^4.3.0",
- "is-stream": "^3.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^5.1.0",
- "onetime": "^6.0.0",
- "signal-exit": "^3.0.7",
- "strip-final-newline": "^3.0.0"
- },
- "engines": {
- "node": "^14.18.0 || ^16.14.0 || >=18.0.0"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/execa?sponsor=1"
- }
- },
- "node_modules/release-it/node_modules/globby": {
- "version": "13.1.4",
- "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.4.tgz",
- "integrity": "sha512-iui/IiiW+QrJ1X1hKH5qwlMQyv34wJAYwH1vrf8b9kBA4sNiif3gKsMHa+BrdnOpEudWjpotfa7LrTzB1ERS/g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.2.11",
- "ignore": "^5.2.0",
- "merge2": "^1.4.1",
- "slash": "^4.0.0"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/release-it/node_modules/human-signals": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz",
- "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=14.18.0"
- }
- },
- "node_modules/release-it/node_modules/is-stream": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
- "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/release-it/node_modules/lodash": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
- "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/release-it/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/release-it/node_modules/mimic-fn": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz",
- "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/release-it/node_modules/node-fetch": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.1.tgz",
- "integrity": "sha512-cRVc/kyto/7E5shrWca1Wsea4y6tL9iYJE5FBCius3JQfb/4P4I295PfhgbJQBLTx6lATE4z+wK0rPM4VS2uow==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "data-uri-to-buffer": "^4.0.0",
- "fetch-blob": "^3.1.4",
- "formdata-polyfill": "^4.0.10"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/node-fetch"
- }
- },
- "node_modules/release-it/node_modules/npm-run-path": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz",
- "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "path-key": "^4.0.0"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/release-it/node_modules/onetime": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz",
- "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mimic-fn": "^4.0.0"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/release-it/node_modules/open": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz",
- "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "default-browser": "^4.0.0",
- "define-lazy-prop": "^3.0.0",
- "is-inside-container": "^1.0.0",
- "is-wsl": "^2.2.0"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/release-it/node_modules/path-key": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz",
- "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/release-it/node_modules/semver": {
- "version": "7.5.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz",
- "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/release-it/node_modules/slash": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
- "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/release-it/node_modules/strip-final-newline": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz",
- "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/release-it/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/release-it/node_modules/yargs-parser": {
- "version": "21.1.1",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
- "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/require-from-string": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
- "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/resolve": {
- "version": "1.22.12",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz",
- "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "is-core-module": "^2.16.1",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
- },
- "bin": {
- "resolve": "bin/resolve"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/resolve-alpn": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz",
- "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/resolve-cwd": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
- "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "resolve-from": "^5.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/resolve-global": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz",
- "integrity": "sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "global-dirs": "^0.1.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/resolve.exports": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz",
- "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/responselike": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/responselike/-/responselike-3.0.0.tgz",
- "integrity": "sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lowercase-keys": "^3.0.0"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/restore-cursor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
- "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "onetime": "^5.1.0",
- "signal-exit": "^3.0.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/retry": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
- "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/reusify": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz",
- "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "iojs": ">=1.0.0",
- "node": ">=0.10.0"
- }
- },
- "node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "deprecated": "Rimraf versions prior to v4 are no longer supported",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/run-applescript": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz",
- "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "execa": "^5.0.0"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/run-async": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz",
- "integrity": "sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.12.0"
- }
- },
- "node_modules/run-parallel": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
- "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "queue-microtask": "^1.2.2"
- }
- },
- "node_modules/rxjs": {
- "version": "7.8.2",
- "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz",
- "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "tslib": "^2.1.0"
- }
- },
- "node_modules/safe-array-concat": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.4.tgz",
- "integrity": "sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.9",
- "call-bound": "^1.0.4",
- "get-intrinsic": "^1.3.0",
- "has-symbols": "^1.1.0",
- "isarray": "^2.0.5"
- },
- "engines": {
- "node": ">=0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/safe-buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT"
- },
- "node_modules/safe-push-apply": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz",
- "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "isarray": "^2.0.5"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/safe-regex-test": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz",
- "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "es-errors": "^1.3.0",
- "is-regex": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/scheduler": {
- "version": "0.24.0-canary-efb381bbf-20230505",
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.24.0-canary-efb381bbf-20230505.tgz",
- "integrity": "sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "loose-envify": "^1.1.0"
- }
- },
- "node_modules/selfsigned": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz",
- "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/node-forge": "^1.3.0",
- "node-forge": "^1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/semver-diff": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-4.0.0.tgz",
- "integrity": "sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "semver": "^7.3.5"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/semver-diff/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/send": {
- "version": "0.19.2",
- "resolved": "https://registry.npmjs.org/send/-/send-0.19.2.tgz",
- "integrity": "sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "2.6.9",
- "depd": "2.0.0",
- "destroy": "1.2.0",
- "encodeurl": "~2.0.0",
- "escape-html": "~1.0.3",
- "etag": "~1.8.1",
- "fresh": "~0.5.2",
- "http-errors": "~2.0.1",
- "mime": "1.6.0",
- "ms": "2.1.3",
- "on-finished": "~2.4.1",
- "range-parser": "~1.2.1",
- "statuses": "~2.0.2"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/send/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/send/node_modules/debug/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/send/node_modules/encodeurl": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
- "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/send/node_modules/on-finished": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
- "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ee-first": "1.1.1"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/send/node_modules/statuses": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz",
- "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/serialize-error": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz",
- "integrity": "sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/serve-static": {
- "version": "1.16.3",
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.3.tgz",
- "integrity": "sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "encodeurl": "~2.0.0",
- "escape-html": "~1.0.3",
- "parseurl": "~1.3.3",
- "send": "~0.19.1"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/serve-static/node_modules/encodeurl": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
- "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/set-function-length": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz",
- "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "define-data-property": "^1.1.4",
- "es-errors": "^1.3.0",
- "function-bind": "^1.1.2",
- "get-intrinsic": "^1.2.4",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/set-function-name": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz",
- "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "define-data-property": "^1.1.4",
- "es-errors": "^1.3.0",
- "functions-have-names": "^1.2.3",
- "has-property-descriptors": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/set-proto": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz",
- "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "dunder-proto": "^1.0.1",
- "es-errors": "^1.3.0",
- "es-object-atoms": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/setprototypeof": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
- "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/shallow-clone": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
- "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "kind-of": "^6.0.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/shebang-command": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
- "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "shebang-regex": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/shebang-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
- "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/shell-quote": {
- "version": "1.8.3",
- "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz",
- "integrity": "sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/shelljs": {
- "version": "0.8.5",
- "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz",
- "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "glob": "^7.0.0",
- "interpret": "^1.0.0",
- "rechoir": "^0.6.2"
- },
- "bin": {
- "shjs": "bin/shjs"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/side-channel": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
- "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "object-inspect": "^1.13.3",
- "side-channel-list": "^1.0.0",
- "side-channel-map": "^1.0.1",
- "side-channel-weakmap": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/side-channel-list": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
- "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "object-inspect": "^1.13.4"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/side-channel-map": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
- "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "es-errors": "^1.3.0",
- "get-intrinsic": "^1.2.5",
- "object-inspect": "^1.13.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/side-channel-weakmap": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
- "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "es-errors": "^1.3.0",
- "get-intrinsic": "^1.2.5",
- "object-inspect": "^1.13.3",
- "side-channel-map": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/signal-exit": {
- "version": "3.0.7",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
- "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/sisteransi": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
- "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/smart-buffer": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
- "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 6.0.0",
- "npm": ">= 3.0.0"
- }
- },
- "node_modules/socks": {
- "version": "2.8.7",
- "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz",
- "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ip-address": "^10.0.1",
- "smart-buffer": "^4.2.0"
- },
- "engines": {
- "node": ">= 10.0.0",
- "npm": ">= 3.0.0"
- }
- },
- "node_modules/socks-proxy-agent": {
- "version": "8.0.5",
- "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz",
- "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "agent-base": "^7.1.2",
- "debug": "^4.3.4",
- "socks": "^2.8.3"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/source-map-support": {
- "version": "0.5.13",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz",
- "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "node_modules/spdx-correct": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz",
- "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "spdx-expression-parse": "^3.0.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "node_modules/spdx-exceptions": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz",
- "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==",
- "dev": true,
- "license": "CC-BY-3.0"
- },
- "node_modules/spdx-expression-parse": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
- "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "spdx-exceptions": "^2.1.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "node_modules/spdx-license-ids": {
- "version": "3.0.23",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.23.tgz",
- "integrity": "sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==",
- "dev": true,
- "license": "CC0-1.0"
- },
- "node_modules/split": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
- "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "through": "2"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/split2": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz",
- "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "readable-stream": "^3.0.0"
- }
- },
- "node_modules/sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
- "dev": true,
- "license": "BSD-3-Clause"
- },
- "node_modules/stack-utils": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz",
- "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "escape-string-regexp": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/stack-utils/node_modules/escape-string-regexp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
- "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/stackframe": {
- "version": "1.3.4",
- "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz",
- "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/stacktrace-parser": {
- "version": "0.1.11",
- "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.11.tgz",
- "integrity": "sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "type-fest": "^0.7.1"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/stacktrace-parser/node_modules/type-fest": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz",
- "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/statuses": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
- "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/stdin-discarder": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.1.0.tgz",
- "integrity": "sha512-xhV7w8S+bUwlPTb4bAOUQhv8/cSS5offJuX8GQGq32ONF0ZtDWKfkdomM3HMRA+LhX6um/FZ0COqlwsjD53LeQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bl": "^5.0.0"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/stop-iteration-iterator": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz",
- "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "internal-slot": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/string_decoder": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
- "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "safe-buffer": "~5.2.0"
- }
- },
- "node_modules/string-length": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz",
- "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "char-regex": "^1.0.2",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/string-natural-compare": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/string-natural-compare/-/string-natural-compare-3.0.1.tgz",
- "integrity": "sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/string.prototype.matchall": {
- "version": "4.0.12",
- "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz",
- "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.3",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.6",
- "es-errors": "^1.3.0",
- "es-object-atoms": "^1.0.0",
- "get-intrinsic": "^1.2.6",
- "gopd": "^1.2.0",
- "has-symbols": "^1.1.0",
- "internal-slot": "^1.1.0",
- "regexp.prototype.flags": "^1.5.3",
- "set-function-name": "^2.0.2",
- "side-channel": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/string.prototype.repeat": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz",
- "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "define-properties": "^1.1.3",
- "es-abstract": "^1.17.5"
- }
- },
- "node_modules/string.prototype.trim": {
- "version": "1.2.10",
- "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz",
- "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.2",
- "define-data-property": "^1.1.4",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.5",
- "es-object-atoms": "^1.0.0",
- "has-property-descriptors": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/string.prototype.trimend": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz",
- "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.2",
- "define-properties": "^1.2.1",
- "es-object-atoms": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/string.prototype.trimstart": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz",
- "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-object-atoms": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/strip-ansi": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
- "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^5.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/strip-bom": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
- "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/strip-final-newline": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
- "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/strip-indent": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
- "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "min-indent": "^1.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/strip-json-comments": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/supports-preserve-symlinks-flag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
- "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/temp": {
- "version": "0.8.4",
- "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.4.tgz",
- "integrity": "sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "rimraf": "~2.6.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/temp/node_modules/rimraf": {
- "version": "2.6.3",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
- "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
- "deprecated": "Rimraf versions prior to v4 are no longer supported",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- }
- },
- "node_modules/terser": {
- "version": "5.46.2",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.2.tgz",
- "integrity": "sha512-uxfo9fPcSgLDYob/w1FuL0c99MWiJDnv+5qXSQc5+Ki5NjVNsYi66INnMFBjf6uFz6OnX12piJQPF4IpjJTNTw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "@jridgewell/source-map": "^0.3.3",
- "acorn": "^8.15.0",
- "commander": "^2.20.0",
- "source-map-support": "~0.5.20"
- },
- "bin": {
- "terser": "bin/terser"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/terser/node_modules/commander": {
- "version": "2.20.3",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
- "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/terser/node_modules/source-map-support": {
- "version": "0.5.21",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
- "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "node_modules/test-exclude": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
- "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "@istanbuljs/schema": "^0.1.2",
- "glob": "^7.1.4",
- "minimatch": "^3.0.4"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/text-extensions": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz",
- "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/throat": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz",
- "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/through": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
- "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/through2": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz",
- "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "3"
- }
- },
- "node_modules/titleize": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz",
- "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/tmp": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "os-tmpdir": "~1.0.2"
- },
- "engines": {
- "node": ">=0.6.0"
- }
- },
- "node_modules/tmpl": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz",
- "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==",
- "dev": true,
- "license": "BSD-3-Clause"
- },
- "node_modules/to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-number": "^7.0.0"
- },
- "engines": {
- "node": ">=8.0"
- }
- },
- "node_modules/toidentifier": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
- "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.6"
- }
- },
- "node_modules/tr46": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
- "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/trim-newlines": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz",
- "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/ts-node": {
- "version": "10.9.2",
- "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz",
- "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@cspotcode/source-map-support": "^0.8.0",
- "@tsconfig/node10": "^1.0.7",
- "@tsconfig/node12": "^1.0.7",
- "@tsconfig/node14": "^1.0.0",
- "@tsconfig/node16": "^1.0.2",
- "acorn": "^8.4.1",
- "acorn-walk": "^8.1.1",
- "arg": "^4.1.0",
- "create-require": "^1.1.0",
- "diff": "^4.0.1",
- "make-error": "^1.1.1",
- "v8-compile-cache-lib": "^3.0.1",
- "yn": "3.1.1"
- },
- "bin": {
- "ts-node": "dist/bin.js",
- "ts-node-cwd": "dist/bin-cwd.js",
- "ts-node-esm": "dist/bin-esm.js",
- "ts-node-script": "dist/bin-script.js",
- "ts-node-transpile-only": "dist/bin-transpile.js",
- "ts-script": "dist/bin-script-deprecated.js"
- },
- "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
- }
- }
- },
- "node_modules/tslib": {
- "version": "2.8.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
- "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
- "dev": true,
- "license": "0BSD"
- },
- "node_modules/tsutils": {
- "version": "3.21.0",
- "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
- "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tslib": "^1.8.1"
- },
- "engines": {
- "node": ">= 6"
- },
- "peerDependencies": {
- "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
- }
- },
- "node_modules/tsutils/node_modules/tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "license": "0BSD"
- },
- "node_modules/type-check": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
- "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "prelude-ls": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/type-detect": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
- "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/typed-array-buffer": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz",
- "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "es-errors": "^1.3.0",
- "is-typed-array": "^1.1.14"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/typed-array-byte-length": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz",
- "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.8",
- "for-each": "^0.3.3",
- "gopd": "^1.2.0",
- "has-proto": "^1.2.0",
- "is-typed-array": "^1.1.14"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/typed-array-byte-offset": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz",
- "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "available-typed-arrays": "^1.0.7",
- "call-bind": "^1.0.8",
- "for-each": "^0.3.3",
- "gopd": "^1.2.0",
- "has-proto": "^1.2.0",
- "is-typed-array": "^1.1.15",
- "reflect.getprototypeof": "^1.0.9"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/typed-array-length": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz",
- "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "for-each": "^0.3.3",
- "gopd": "^1.0.1",
- "is-typed-array": "^1.1.13",
- "possible-typed-array-names": "^1.0.0",
- "reflect.getprototypeof": "^1.0.6"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/typedarray": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
- "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/typedarray-to-buffer": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
- "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-typedarray": "^1.0.0"
- }
- },
- "node_modules/typescript": {
- "version": "5.6.3",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz",
- "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==",
- "dev": true,
- "license": "Apache-2.0",
- "bin": {
- "tsc": "bin/tsc",
- "tsserver": "bin/tsserver"
- },
- "engines": {
- "node": ">=14.17"
- }
- },
- "node_modules/uglify-js": {
- "version": "3.19.3",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz",
- "integrity": "sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==",
- "dev": true,
- "license": "BSD-2-Clause",
- "optional": true,
- "bin": {
- "uglifyjs": "bin/uglifyjs"
- },
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/unbox-primitive": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz",
- "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.3",
- "has-bigints": "^1.0.2",
- "has-symbols": "^1.1.0",
- "which-boxed-primitive": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/unc-path-regex": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
- "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/unicode-canonical-property-names-ecmascript": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz",
- "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-match-property-ecmascript": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz",
- "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "unicode-canonical-property-names-ecmascript": "^2.0.0",
- "unicode-property-aliases-ecmascript": "^2.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-match-property-value-ecmascript": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz",
- "integrity": "sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-property-aliases-ecmascript": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz",
- "integrity": "sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unique-string": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz",
- "integrity": "sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "crypto-random-string": "^4.0.0"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/universal-user-agent": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz",
- "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/universalify": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
- "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 10.0.0"
- }
- },
- "node_modules/unpipe": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
- "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/untildify": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz",
- "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/update-browserslist-db": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz",
- "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==",
- "dev": true,
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/browserslist"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "escalade": "^3.2.0",
- "picocolors": "^1.1.1"
- },
- "bin": {
- "update-browserslist-db": "cli.js"
- },
- "peerDependencies": {
- "browserslist": ">= 4.21.0"
- }
- },
- "node_modules/update-notifier": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-6.0.2.tgz",
- "integrity": "sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "boxen": "^7.0.0",
- "chalk": "^5.0.1",
- "configstore": "^6.0.0",
- "has-yarn": "^3.0.0",
- "import-lazy": "^4.0.0",
- "is-ci": "^3.0.1",
- "is-installed-globally": "^0.4.0",
- "is-npm": "^6.0.0",
- "is-yarn-global": "^0.4.0",
- "latest-version": "^7.0.0",
- "pupa": "^3.1.0",
- "semver": "^7.3.7",
- "semver-diff": "^4.0.0",
- "xdg-basedir": "^5.1.0"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/yeoman/update-notifier?sponsor=1"
- }
- },
- "node_modules/update-notifier/node_modules/chalk": {
- "version": "5.6.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz",
- "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.17.0 || ^14.13 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/update-notifier/node_modules/semver": {
- "version": "7.7.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
- "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/uri-js": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
- "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "punycode": "^2.1.0"
- }
- },
- "node_modules/url-join": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz",
- "integrity": "sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- }
- },
- "node_modules/util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/utils-merge": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
- "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4.0"
- }
- },
- "node_modules/v8-compile-cache-lib": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz",
- "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/v8-to-istanbul": {
- "version": "9.3.0",
- "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz",
- "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "@jridgewell/trace-mapping": "^0.3.12",
- "@types/istanbul-lib-coverage": "^2.0.1",
- "convert-source-map": "^2.0.0"
- },
- "engines": {
- "node": ">=10.12.0"
- }
- },
- "node_modules/validate-npm-package-license": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
- "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "spdx-correct": "^3.0.0",
- "spdx-expression-parse": "^3.0.0"
- }
- },
- "node_modules/vlq": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/vlq/-/vlq-1.0.1.tgz",
- "integrity": "sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/vm2": {
- "version": "3.10.5",
- "resolved": "https://registry.npmjs.org/vm2/-/vm2-3.10.5.tgz",
- "integrity": "sha512-3P/2QDccVFBcujfCOeP8vVNuGfuBJHEuvGR8eMmI10p/iwLL2UwF5PDaNaoOS2pRGQEDmJRyeEcc8kmm2Z59RA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "acorn": "^8.15.0",
- "acorn-walk": "^8.3.4"
- },
- "bin": {
- "vm2": "bin/vm2"
- },
- "engines": {
- "node": ">=6.0"
- }
- },
- "node_modules/walker": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz",
- "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "makeerror": "1.0.12"
- }
- },
- "node_modules/wcwidth": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
- "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "defaults": "^1.0.3"
- }
- },
- "node_modules/web-streams-polyfill": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz",
- "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/webidl-conversions": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
- "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
- "dev": true,
- "license": "BSD-2-Clause"
- },
- "node_modules/whatwg-fetch": {
- "version": "3.6.20",
- "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz",
- "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/whatwg-url": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
- "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tr46": "~0.0.3",
- "webidl-conversions": "^3.0.0"
- }
- },
- "node_modules/which": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
- "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "isexe": "^2.0.0"
- },
- "bin": {
- "node-which": "bin/node-which"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/which-boxed-primitive": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz",
- "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-bigint": "^1.1.0",
- "is-boolean-object": "^1.2.1",
- "is-number-object": "^1.1.1",
- "is-string": "^1.1.1",
- "is-symbol": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/which-builtin-type": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz",
- "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bound": "^1.0.2",
- "function.prototype.name": "^1.1.6",
- "has-tostringtag": "^1.0.2",
- "is-async-function": "^2.0.0",
- "is-date-object": "^1.1.0",
- "is-finalizationregistry": "^1.1.0",
- "is-generator-function": "^1.0.10",
- "is-regex": "^1.2.1",
- "is-weakref": "^1.0.2",
- "isarray": "^2.0.5",
- "which-boxed-primitive": "^1.1.0",
- "which-collection": "^1.0.2",
- "which-typed-array": "^1.1.16"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/which-collection": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz",
- "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-map": "^2.0.3",
- "is-set": "^2.0.3",
- "is-weakmap": "^2.0.2",
- "is-weakset": "^2.0.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/which-typed-array": {
- "version": "1.1.20",
- "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.20.tgz",
- "integrity": "sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "available-typed-arrays": "^1.0.7",
- "call-bind": "^1.0.8",
- "call-bound": "^1.0.4",
- "for-each": "^0.3.5",
- "get-proto": "^1.0.1",
- "gopd": "^1.2.0",
- "has-tostringtag": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/widest-line": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz",
- "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "string-width": "^5.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/widest-line/node_modules/ansi-regex": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz",
- "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-regex?sponsor=1"
- }
- },
- "node_modules/widest-line/node_modules/emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/widest-line/node_modules/string-width": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "eastasianwidth": "^0.2.0",
- "emoji-regex": "^9.2.2",
- "strip-ansi": "^7.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/widest-line/node_modules/strip-ansi": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz",
- "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^6.2.2"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/strip-ansi?sponsor=1"
- }
- },
- "node_modules/wildcard-match": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/wildcard-match/-/wildcard-match-5.1.2.tgz",
- "integrity": "sha512-qNXwI591Z88c8bWxp+yjV60Ch4F8Riawe3iGxbzquhy8Xs9m+0+SLFBGb/0yCTIDElawtaImC37fYZ+dr32KqQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/windows-release": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-5.1.1.tgz",
- "integrity": "sha512-NMD00arvqcq2nwqc5Q6KtrSRHK+fVD31erE5FEMahAw5PmVCgD7MUXodq3pdZSUkqA9Cda2iWx6s1XYwiJWRmw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "execa": "^5.1.1"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/word-wrap": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
- "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/wordwrap": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
- "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/write-file-atomic": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz",
- "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^3.0.7"
- },
- "engines": {
- "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
- }
- },
- "node_modules/ws": {
- "version": "6.2.3",
- "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.3.tgz",
- "integrity": "sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "async-limiter": "~1.0.0"
- }
- },
- "node_modules/xdg-basedir": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-5.1.0.tgz",
- "integrity": "sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/xtend": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
- "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.4"
- }
- },
- "node_modules/y18n": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
- "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/yallist": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
- "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/yargs": {
- "version": "17.7.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
- "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cliui": "^8.0.1",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.3",
- "y18n": "^5.0.5",
- "yargs-parser": "^21.1.1"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/yargs-parser": {
- "version": "20.2.9",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
- "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/yargs/node_modules/yargs-parser": {
- "version": "21.1.1",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
- "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/yn": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz",
- "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/yocto-queue": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
- "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- }
- }
-}
diff --git a/package.json b/package.json
index 9c9a0e7..e425fad 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,7 @@
{
"name": "@rcaferati/react-native-awesome-button",
"version": "3.1.0",
+ "packageManager": "yarn@4.5.1",
"description": "React Native button component that renders a 60fps animated set of progress-enabled 3D buttons.",
"main": "lib/commonjs/index",
"module": "lib/module/index",
@@ -10,15 +11,23 @@
"files": [
"src",
"lib",
+ "CHANGELOG.md",
+ "MIGRATION.md",
"!**/__tests__",
"!**/__fixtures__",
"!**/__mocks__"
],
"scripts": {
+ "format:check": "prettier --check \"src/**/*.{ts,tsx}\" \"scripts/**/*.{js,ts}\" \"*.{json,md}\"",
"test": "node -r ./scripts/jest-node-compat.js ./node_modules/jest/bin/jest.js --watchman=false",
"typescript": "tsc --noEmit",
"lint": "eslint \"src/**/*.{ts,tsx}\" \"scripts/**/*.ts\"",
"prepare": "bob build",
+ "api:report": "api-extractor run --local",
+ "api:check": "api-extractor run",
+ "api:docs": "node scripts/check-api-docs.js",
+ "pack:check": "node scripts/check-pack.js",
+ "release:check": "yarn format:check && yarn lint && yarn typescript && yarn test --runInBand --coverage && yarn prepare && yarn api:check && yarn api:docs && yarn pack:check",
"release": "release-it",
"demo": "yarn --cwd demo start",
"demo:android": "yarn --cwd demo android",
@@ -50,7 +59,8 @@
"registry": "https://registry.npmjs.org/"
},
"dependencies": {
- "@rcaferati/wac": "1.2.0"
+ "@rcaferati/wac": "1.2.0",
+ "graphemer": "1.4.0"
},
"devDependencies": {
"@arkweid/lefthook": "^0.7.7",
@@ -58,6 +68,7 @@
"@babel/eslint-parser": "^7.18.2",
"@babel/runtime": "^7.28.4",
"@commitlint/config-conventional": "^17.0.2",
+ "@microsoft/api-extractor": "7.59.0",
"@react-native-community/eslint-config": "^3.0.2",
"@react-native/babel-preset": "0.76.0",
"@release-it/conventional-changelog": "^5.0.0",
diff --git a/scripts/check-api-docs.js b/scripts/check-api-docs.js
new file mode 100644
index 0000000..4872272
--- /dev/null
+++ b/scripts/check-api-docs.js
@@ -0,0 +1,67 @@
+'use strict';
+
+const fs = require('node:fs');
+const path = require('node:path');
+
+const projectRoot = path.resolve(__dirname, '..');
+const docModelPath = path.join(
+ projectRoot,
+ 'temp',
+ 'react-native-awesome-button.api.json'
+);
+
+if (!fs.existsSync(docModelPath)) {
+ throw new Error(
+ `API doc model is missing at ${docModelPath}. Run yarn api:check first.`
+ );
+}
+
+const model = JSON.parse(fs.readFileSync(docModelPath, 'utf8'));
+const missing = [];
+
+function hasSummary(item) {
+ if (typeof item.docComment !== 'string') {
+ return false;
+ }
+
+ const summary = item.docComment
+ .split(
+ /\n\s*@(?:alpha|beta|deprecated|internal|public|remarks|returns|see)\b/u,
+ 1
+ )[0]
+ .replace(/\\\[/gu, '[')
+ .replace(/\\\]/gu, ']')
+ .trim();
+ return summary.length > 0;
+}
+
+function visit(item, parentName = '') {
+ const name = item.name || item.displayName || item.kind || '';
+ const qualifiedName = parentName ? `${parentName}.${name}` : name;
+ const isUserApi =
+ item.kind !== 'Package' &&
+ item.kind !== 'EntryPoint' &&
+ item.kind !== 'Model' &&
+ !item.isProtected &&
+ !item.isPrivate;
+
+ if (isUserApi && !hasSummary(item)) {
+ missing.push(`${item.kind}: ${qualifiedName}`);
+ }
+
+ for (const member of item.members || []) {
+ visit(member, qualifiedName);
+ }
+}
+
+visit(model);
+
+if (missing.length > 0) {
+ throw new Error(
+ `Exported API items without a non-empty TSDoc summary:\n${missing
+ .map((item) => `- ${item}`)
+ .join('\n')}`
+ );
+}
+
+console.log('All exported API items have non-empty TSDoc summaries.');
diff --git a/scripts/check-pack.js b/scripts/check-pack.js
new file mode 100644
index 0000000..1c649a3
--- /dev/null
+++ b/scripts/check-pack.js
@@ -0,0 +1,80 @@
+'use strict';
+
+const { execFileSync } = require('node:child_process');
+const fs = require('node:fs');
+const os = require('node:os');
+const path = require('node:path');
+
+const projectRoot = path.resolve(__dirname, '..');
+const temporaryRoot = fs.mkdtempSync(
+ path.join(os.tmpdir(), 'awesome-button-npm-pack-')
+);
+let output;
+try {
+ output = execFileSync(
+ 'npm',
+ ['pack', '--dry-run', '--json', '--ignore-scripts'],
+ {
+ cwd: projectRoot,
+ env: {
+ ...process.env,
+ npm_config_cache: path.join(temporaryRoot, 'npm-cache'),
+ },
+ encoding: 'utf8',
+ }
+ );
+} finally {
+ fs.rmSync(temporaryRoot, { recursive: true, force: true });
+}
+const reports = JSON.parse(output);
+const report = reports[0];
+
+if (!report || !Array.isArray(report.files)) {
+ throw new Error('npm pack did not return a package file manifest.');
+}
+
+const files = report.files.map(({ path }) => path).sort();
+const required = [
+ 'CHANGELOG.md',
+ 'LICENSE',
+ 'MIGRATION.md',
+ 'README.md',
+ 'lib/commonjs/index.js',
+ 'lib/module/index.js',
+ 'lib/typescript/src/index.d.ts',
+ 'package.json',
+];
+const missing = required.filter(
+ (requiredPath) => !files.includes(requiredPath)
+);
+const forbidden = files.filter((file) => {
+ const segments = file.split('/');
+ return (
+ segments.includes('__tests__') ||
+ segments.includes('__fixtures__') ||
+ segments.includes('__mocks__') ||
+ segments.includes('demo') ||
+ segments.includes('example') ||
+ segments.includes('examples') ||
+ segments.includes('coverage') ||
+ segments.includes('node_modules') ||
+ segments.includes('temp') ||
+ file.endsWith('.api.json')
+ );
+});
+
+if (missing.length > 0 || forbidden.length > 0) {
+ throw new Error(
+ [
+ missing.length > 0 ? `Missing required files: ${missing.join(', ')}` : '',
+ forbidden.length > 0
+ ? `Forbidden package files: ${forbidden.join(', ')}`
+ : '',
+ ]
+ .filter(Boolean)
+ .join('\n')
+ );
+}
+
+console.log(files.join('\n'));
+console.log(`Validated ${files.length} npm package files.`);
diff --git a/src/Button.tsx b/src/Button.tsx
index fbdb40a..6acc738 100644
--- a/src/Button.tsx
+++ b/src/Button.tsx
@@ -1,18 +1,12 @@
import React, { useMemo, useRef } from 'react';
import {
- ActivityIndicator,
Animated,
- Pressable,
- PressableProps,
- Text,
- View,
+ I18nManager,
+ Platform,
+ useWindowDimensions,
} from 'react-native';
-import { getStyles, styles } from './styles';
import usePressProgressController from './usePressProgressController';
-import useButtonSizeBehavior, {
- getHiddenMeasurementContainerStyle,
- getHiddenMeasurementTextStyle,
-} from './useButtonSizeBehavior';
+import useButtonSizeBehavior from './useButtonSizeBehavior';
import {
ANIMATED_TIMING_LOADING,
DEFAULT_ACTIVITY_COLOR,
@@ -32,39 +26,32 @@ import {
DEFAULT_TEXT_SIZE,
DEFAULT_WIDTH,
} from './constants';
-import Placeholder from './Placeholder';
import type { AwesomeButtonProps } from './types';
+import useReducedMotion from './useReducedMotion';
+import useResolvedStyleTransition from './useResolvedStyleTransition';
+import ButtonInteractionSurface from './button/ButtonInteractionSurface';
+import ButtonVisualLayers from './button/ButtonVisualLayers';
+import { normalizeButtonInputs } from './button/normalizeButtonInputs';
+import { resolveButtonPresentationTargets } from './button/resolveButtonPresentationTargets';
/**
+ * Compatibility alias for the core Awesome Button props.
+ *
* @deprecated Use AwesomeButtonProps instead.
+ * @public
*/
export type ButtonTypes = AwesomeButtonProps;
-const getMergedAccessibilityState = (
- accessibilityState: PressableProps['accessibilityState'],
- {
- busy,
- disabled,
- }: {
- busy: boolean;
- disabled: boolean;
- }
-) => {
- const nextState = {
- ...accessibilityState,
- };
-
- if (disabled || nextState.disabled !== undefined) {
- nextState.disabled = Boolean(disabled || nextState.disabled);
- }
-
- if (busy || nextState.busy !== undefined) {
- nextState.busy = Boolean(busy || nextState.busy);
- }
-
- return Object.keys(nextState).length > 0 ? nextState : undefined;
+type AwesomeButtonInternalProps = AwesomeButtonProps & {
+ /** The themed owner already supplies interpolated style frames. */
+ __styleFramesArePreInterpolated?: boolean;
};
+/**
+ * Renders the core animated Awesome Button interaction surface.
+ *
+ * @public
+ */
const AwesomeButton = ({
activityColor = DEFAULT_ACTIVITY_COLOR,
activeOpacity = DEFAULT_ACTIVE_OPACITY,
@@ -80,6 +67,7 @@ const AwesomeButton = ({
borderRadius = DEFAULT_BORDER_RADIUS,
borderBottomLeftRadius,
borderBottomRightRadius,
+ borderLeftBottomRadius,
borderTopLeftRadius,
borderTopRightRadius,
borderWidth = DEFAULT_BORDER_WIDTH,
@@ -87,18 +75,25 @@ const AwesomeButton = ({
before = null,
after = null,
disabled = false,
+ buttonStyle,
+ containerStyle,
+ faceHeight,
height = DEFAULT_HEIGHT,
hitSlop,
debouncedPressTime = DEFAULT_DEBOUNCED_PRESS_TIME,
paddingHorizontal = DEFAULT_HORIZONTAL_PADDING,
- onPress = () => undefined,
- onPressIn = () => undefined,
- onPressedIn = () => undefined,
- onPressOut = () => undefined,
- onPressedOut = () => undefined,
- onProgressStart = () => undefined,
- onProgressEnd = () => undefined,
+ onPress,
+ onPressIn,
+ onPressedIn,
+ onPressOut,
+ onPressedOut,
+ onProgressStart,
+ onProgressEnd,
onLongPress,
+ onLongPressAction,
+ accessibilityLabel,
+ accessibilityHint,
+ accessibilityLongPressLabel,
dangerouslySetPressableProps = {},
progress = false,
showProgressBar = true,
@@ -116,8 +111,139 @@ const AwesomeButton = ({
textFontFamily,
width: rawWidth = DEFAULT_WIDTH,
extra = null,
-}: AwesomeButtonProps) => {
- const width = rawWidth === 'auto' ? null : rawWidth;
+ __styleFramesArePreInterpolated = false,
+}: AwesomeButtonInternalProps) => {
+ const reduceMotion = useReducedMotion();
+ const { fontScale } = useWindowDimensions();
+ const hasRenderableChildren = React.Children.toArray(children).length > 0;
+ const hasPrimitiveTextChild =
+ typeof children === 'string' || typeof children === 'number';
+ const normalizedInputs = normalizeButtonInputs({
+ activeOpacity,
+ borderBottomLeftRadius,
+ borderBottomRightRadius,
+ borderLeftBottomRadius,
+ borderRadius,
+ borderTopLeftRadius,
+ borderTopRightRadius,
+ borderWidth,
+ buttonStyle,
+ debouncedPressTime,
+ faceHeight,
+ fontScale,
+ hasPrimitiveTextChild,
+ height,
+ paddingBottom,
+ paddingHorizontal,
+ paddingTop,
+ progressLoadingTime,
+ raiseLevel,
+ textLineHeight,
+ textSize,
+ width: rawWidth,
+ });
+ const presentationTargets = resolveButtonPresentationTargets({
+ activityColor,
+ backgroundActive,
+ backgroundColor,
+ backgroundDarker,
+ backgroundPlaceholder,
+ backgroundProgress,
+ backgroundShadow,
+ borderColor,
+ buttonStyle,
+ disabled,
+ normalized: normalizedInputs,
+ platform: Platform.OS,
+ textColor,
+ textFontFamily,
+ });
+ const {
+ activeOpacity: resolvedActiveOpacity,
+ animationDuration: resolvedAnimationDuration,
+ debouncedPressTime: resolvedDebouncedPressTime,
+ pressInAnimationDuration: resolvedPressInAnimationDuration,
+ progressLoadingTime: resolvedProgressLoadingTime,
+ } = presentationTargets.interaction;
+ const {
+ height: resolvedGeometryHeight,
+ paddingBottom: normalizedPaddingBottom,
+ paddingHorizontal: normalizedPaddingHorizontal,
+ paddingTop: normalizedPaddingTop,
+ raiseAmount: normalizedRaiseAmount,
+ width,
+ } = presentationTargets.geometry;
+ const {
+ textFontFamily: resolvedTextFontFamily,
+ textLineHeight: normalizedTextLineHeight,
+ } = presentationTargets.content;
+ const { minimumTarget } = presentationTargets.accessibility;
+ const target = presentationTargets.palette;
+ const targetPalette = useMemo(
+ () => ({
+ activityColor: target.activityColor,
+ backgroundActive: target.backgroundActive,
+ backgroundColor: target.backgroundColor,
+ backgroundDarker: target.backgroundDarker,
+ backgroundPlaceholder: target.backgroundPlaceholder,
+ backgroundProgress: target.backgroundProgress,
+ backgroundShadow: target.backgroundShadow,
+ borderColor: target.borderColor,
+ borderRadius: target.borderRadius,
+ borderBottomLeftRadius: target.borderBottomLeftRadius,
+ borderBottomRightRadius: target.borderBottomRightRadius,
+ borderTopLeftRadius: target.borderTopLeftRadius,
+ borderTopRightRadius: target.borderTopRightRadius,
+ borderWidth: target.borderWidth,
+ contentGap: target.contentGap,
+ textColor: target.textColor,
+ textSize: target.textSize,
+ }),
+ [
+ target.activityColor,
+ target.backgroundActive,
+ target.backgroundColor,
+ target.backgroundDarker,
+ target.backgroundPlaceholder,
+ target.backgroundProgress,
+ target.backgroundShadow,
+ target.borderColor,
+ target.borderRadius,
+ target.borderBottomLeftRadius,
+ target.borderBottomRightRadius,
+ target.borderTopLeftRadius,
+ target.borderTopRightRadius,
+ target.borderWidth,
+ target.contentGap,
+ target.textColor,
+ target.textSize,
+ ]
+ );
+ const {
+ activityColor: resolvedActivityColor,
+ backgroundActive: resolvedBackgroundActive,
+ backgroundColor: resolvedBackgroundColor,
+ backgroundDarker: resolvedBackgroundDarker,
+ backgroundPlaceholder: resolvedBackgroundPlaceholder,
+ backgroundProgress: resolvedBackgroundProgress,
+ backgroundShadow: resolvedBackgroundShadow,
+ borderColor: resolvedBorderColor,
+ borderRadius: resolvedBorderRadius,
+ borderBottomLeftRadius: resolvedBorderBottomLeftRadius,
+ borderBottomRightRadius: resolvedBorderBottomRightRadius,
+ borderTopLeftRadius: resolvedBorderTopLeftRadius,
+ borderTopRightRadius: resolvedBorderTopRightRadius,
+ borderWidth: resolvedBorderWidth,
+ contentGap: resolvedContentGap,
+ textColor: resolvedTextColor,
+ textSize: resolvedTextSize,
+ } = useResolvedStyleTransition({
+ target: targetPalette,
+ duration: resolvedAnimationDuration ?? 140,
+ curve: buttonStyle?.animationCurve,
+ reduceMotion,
+ skipAnimation: __styleFramesArePreInterpolated,
+ });
const loadingOpacity = useRef(new Animated.Value(1)).current;
const textOpacity = useRef(new Animated.Value(1)).current;
const activityOpacity = useRef(new Animated.Value(0)).current;
@@ -127,14 +253,45 @@ const AwesomeButton = ({
const animatedOpacity = useRef(
new Animated.Value(width === null && stretch !== true ? 0 : 1)
).current;
+ const textMeasurementSignature = useMemo(
+ () =>
+ JSON.stringify([
+ fontScale,
+ I18nManager.isRTL,
+ normalizedPaddingBottom,
+ normalizedPaddingHorizontal,
+ normalizedPaddingTop,
+ resolvedBorderWidth,
+ resolvedContentGap ?? 0,
+ resolvedTextFontFamily ?? null,
+ normalizedTextLineHeight,
+ resolvedTextSize,
+ ]),
+ [
+ fontScale,
+ normalizedPaddingBottom,
+ normalizedPaddingHorizontal,
+ normalizedPaddingTop,
+ normalizedTextLineHeight,
+ resolvedBorderWidth,
+ resolvedContentGap,
+ resolvedTextFontFamily,
+ resolvedTextSize,
+ ]
+ );
const {
+ alignTextLogicalLeading,
displayedText,
- hiddenMeasurementKey,
- hiddenMeasurementText,
+ measurementRequest,
+ onAfterLayout,
+ onBeforeLayout,
onHiddenMeasurementLayout,
onVisibleContentLayout,
+ onVisibleTextLayout,
resolvedWidth,
sizeAnimatedStyles,
+ transientTextFrame,
+ visibleTextPublicationId,
} = useButtonSizeBehavior({
after,
animatedOpacity,
@@ -142,385 +299,137 @@ const AwesomeButton = ({
before,
children,
extra,
- height,
- paddingBottom,
- paddingTop,
- raiseLevel,
+ height: resolvedGeometryHeight,
+ measurementSignature: textMeasurementSignature,
+ paddingBottom: normalizedPaddingBottom,
+ paddingTop: normalizedPaddingTop,
+ raiseLevel: normalizedRaiseAmount,
+ reduceMotion,
stretch,
textTransition,
width,
});
- const { activity, handlePress, handlePressIn, handlePressOut } =
- usePressProgressController({
- activeOpacity,
- animatedActive,
- animatedLoading,
- animatedOpacity,
- animatedValue,
- activityOpacity,
- disabled,
- hasChildren: Boolean(children),
- loadingOpacity,
- onPress,
- onPressIn,
- onPressOut,
- onPressedIn,
- onPressedOut,
- onProgressEnd,
- onProgressStart,
- progress,
- progressLoadingTime,
- springRelease,
- textOpacity,
- debouncedPressTime,
- });
-
const {
- accessibilityRole: dangerousAccessibilityRole,
- accessibilityState: dangerousAccessibilityState,
- children: _ignoredDangerousChildren,
- hitSlop: dangerousHitSlop,
- onLongPress: _ignoredDangerousOnLongPress,
- onPress: _ignoredDangerousOnPress,
- onPressIn: _ignoredDangerousOnPressIn,
- onPressOut: _ignoredDangerousOnPressOut,
- ...safePressableProps
- } = dangerouslySetPressableProps as PressableProps & {
- children?: React.ReactNode;
- };
- const dynamicStyles = useMemo(
- () =>
- getStyles({
- backgroundActive,
- backgroundColor,
- backgroundDarker,
- backgroundPlaceholder,
- backgroundProgress,
- backgroundShadow,
- borderColor,
- borderRadius,
- borderBottomLeftRadius,
- borderBottomRightRadius,
- borderTopLeftRadius,
- borderTopRightRadius,
- borderWidth,
- height,
- paddingBottom,
- paddingHorizontal,
- paddingTop,
- raiseLevel,
- stateWidth: width === null && stretch !== true ? resolvedWidth : null,
- stretch,
- textColor,
- textFontFamily,
- textLineHeight,
- textSize,
- width,
- }),
- [
- backgroundActive,
- backgroundColor,
- backgroundDarker,
- backgroundPlaceholder,
- backgroundProgress,
- backgroundShadow,
- borderColor,
- borderRadius,
- borderBottomLeftRadius,
- borderBottomRightRadius,
- borderTopLeftRadius,
- borderTopRightRadius,
- borderWidth,
- height,
- paddingBottom,
- paddingHorizontal,
- paddingTop,
- raiseLevel,
- resolvedWidth,
- stretch,
- textColor,
- textFontFamily,
- textLineHeight,
- textSize,
- width,
- ]
- );
-
- const animatedValues = useMemo(() => {
- const offsetWidth = resolvedWidth ? resolvedWidth * -1 : 0;
-
- return {
- animatedActivity: {
- opacity: activityOpacity,
- transform: [
- {
- scale: activityOpacity,
- },
- ],
- },
- animatedActive: {
- opacity: animatedActive,
- },
- animatedContainer: {
- opacity: animatedOpacity,
- },
- animatedContent: {
- transform: [
- {
- translateY: animatedValue.interpolate({
- inputRange: [0, 1],
- outputRange: [0, raiseLevel],
- }),
- },
- ],
- },
- animatedProgress: {
- opacity: loadingOpacity,
- transform: [
- {
- translateX: animatedLoading.interpolate({
- inputRange: [0, 1],
- outputRange: [offsetWidth, 0],
- }),
- },
- ],
- },
- animatedShadow: {
- transform: [
- {
- translateY: animatedValue.interpolate({
- inputRange: [0, 1],
- outputRange: [0, -raiseLevel / 2],
- }),
- },
- ],
- },
- };
- }, [
- activityOpacity,
+ activity,
+ handleAtomicLongPress,
+ handlePress,
+ handlePressIn,
+ handlePressOut,
+ } = usePressProgressController({
+ activeOpacity: resolvedActiveOpacity,
animatedActive,
animatedLoading,
animatedOpacity,
animatedValue,
+ activityOpacity,
+ animationCurve: buttonStyle?.animationCurve,
+ animationDuration: resolvedAnimationDuration,
+ debouncedPressTime: resolvedDebouncedPressTime,
+ delayLongPress: dangerouslySetPressableProps.delayLongPress,
+ disabled,
+ hasChildren: hasRenderableChildren,
loadingOpacity,
- resolvedWidth,
- raiseLevel,
- ]);
-
- const renderActivity = useMemo(() => {
- if (activity === false) {
- return null;
- }
-
- return (
- <>
- {showProgressBar === true ? (
-
- ) : null}
-
-
-
- >
- );
- }, [
- activity,
- activityColor,
- animatedValues.animatedActivity,
- animatedValues.animatedProgress,
- dynamicStyles.progress,
+ onLongPress,
+ onLongPressAction,
+ onPress,
+ onPressIn,
+ onPressOut,
+ onPressedIn,
+ onPressedOut,
+ onProgressEnd,
+ onProgressStart,
+ pressInAnimationDuration: resolvedPressInAnimationDuration,
+ progress,
+ progressLoadingTime: resolvedProgressLoadingTime,
+ reduceMotion,
showProgressBar,
- ]);
-
- const animatedStyles = useMemo(
- () => ({
- opacity: textOpacity,
- transform: [
- {
- scale: textOpacity,
- },
- ],
- }),
- [textOpacity]
- );
-
- const hiddenMeasurementContainerStyle = useMemo(
- () =>
- getHiddenMeasurementContainerStyle({
- borderWidth,
- paddingBottom,
- paddingHorizontal,
- paddingTop,
- }),
- [borderWidth, paddingBottom, paddingHorizontal, paddingTop]
- );
-
- const hiddenMeasurementTextStyle = useMemo(
- () =>
- getHiddenMeasurementTextStyle({
- textColor,
- textFontFamily,
- textLineHeight,
- textSize,
- }),
- [textColor, textFontFamily, textLineHeight, textSize]
- );
-
- const renderContent = useMemo(() => {
- if (!children) {
- return (
-
- );
- }
-
- const content =
- typeof children === 'string' ? (
-
- {displayedText ?? children}
-
- ) : (
- children
- );
-
- return (
-
- {before}
- {content}
- {after}
-
- );
- }, [
- after,
- animatedPlaceholder,
- animatedStyles,
- before,
- children,
- displayedText,
- dynamicStyles.container__placeholder,
- dynamicStyles.container__text,
- dynamicStyles.container__view,
- ]);
-
- const pressableHitSlop = hitSlop ?? dangerousHitSlop;
- const accessibilityRole = dangerousAccessibilityRole ?? 'button';
- const suppressProgressDarkening =
- progress === true && activity === true && showProgressBar === false;
- const accessibilityState = useMemo(
- () =>
- getMergedAccessibilityState(dangerousAccessibilityState, {
- busy: activity,
- disabled,
- }),
- [activity, dangerousAccessibilityState, disabled]
- );
+ springRelease,
+ textOpacity,
+ });
return (
-
-
-
-
-
-
- {extra}
-
- {renderContent}
- {renderActivity}
-
-
- {hiddenMeasurementText !== null ? (
-
-
- {hiddenMeasurementText}
-
-
- ) : null}
-
-
+ {children}
+
+
);
};
diff --git a/src/__tests__/__snapshots__/index.test.js.snap b/src/__tests__/__snapshots__/index.test.js.snap
index 0e38a77..70b7dfd 100644
--- a/src/__tests__/__snapshots__/index.test.js.snap
+++ b/src/__tests__/__snapshots__/index.test.js.snap
@@ -2,12 +2,13 @@
exports[`AwesomeButton should render 1`] = `
-
+
+
+
+
-
+ testID="aws-btn-bottom"
+ />
-
+
+
+
+
+ >
+
+
+
@@ -197,12 +257,14 @@ exports[`AwesomeButton should render 1`] = `
exports[`AwesomeButton should render a default text children 1`] = `
-
+
+
+
+
-
+ testID="aws-btn-bottom"
+ />
-
-
- Default
-
+
+
+
+
+
+ Default
+
+
+
-
-
-
- Default
-
+
+
+
+ Default
+
+
+
+
diff --git a/src/__tests__/buttonResolution.test.ts b/src/__tests__/buttonResolution.test.ts
new file mode 100644
index 0000000..6c9fd76
--- /dev/null
+++ b/src/__tests__/buttonResolution.test.ts
@@ -0,0 +1,215 @@
+import {
+ ANIMATED_TIMING_LOADING,
+ DEFAULT_ACTIVE_OPACITY,
+ DEFAULT_BACKGROUND_ACTIVE,
+ DEFAULT_BACKGROUND_COLOR,
+ DEFAULT_BACKGROUND_DARKER,
+ DEFAULT_BACKGROUND_SHADOW,
+ DEFAULT_BORDER_RADIUS,
+ DEFAULT_BORDER_WIDTH,
+ DEFAULT_DEBOUNCED_PRESS_TIME,
+ DEFAULT_HEIGHT,
+ DEFAULT_HORIZONTAL_PADDING,
+ DEFAULT_LINE_HEIGHT,
+ DEFAULT_RAISE_LEVEL,
+ DEFAULT_TEXT_SIZE,
+} from '../constants';
+import { normalizeButtonInputs } from '../button/normalizeButtonInputs';
+import { resolveButtonPresentationTargets } from '../button/resolveButtonPresentationTargets';
+
+const normalize = (
+ overrides: Partial[0]> = {}
+) =>
+ normalizeButtonInputs({
+ activeOpacity: DEFAULT_ACTIVE_OPACITY,
+ borderRadius: DEFAULT_BORDER_RADIUS,
+ borderWidth: DEFAULT_BORDER_WIDTH,
+ debouncedPressTime: DEFAULT_DEBOUNCED_PRESS_TIME,
+ fontScale: 1,
+ hasPrimitiveTextChild: true,
+ height: DEFAULT_HEIGHT,
+ paddingBottom: 0,
+ paddingHorizontal: DEFAULT_HORIZONTAL_PADDING,
+ paddingTop: 0,
+ progressLoadingTime: ANIMATED_TIMING_LOADING,
+ raiseLevel: DEFAULT_RAISE_LEVEL,
+ textLineHeight: DEFAULT_LINE_HEIGHT,
+ textSize: DEFAULT_TEXT_SIZE,
+ width: null,
+ ...overrides,
+ });
+
+const resolve = (
+ overrides: Partial<
+ Parameters[0]
+ > = {}
+) =>
+ resolveButtonPresentationTargets({
+ activityColor: '#fff',
+ backgroundActive: DEFAULT_BACKGROUND_ACTIVE,
+ backgroundColor: DEFAULT_BACKGROUND_COLOR,
+ backgroundDarker: DEFAULT_BACKGROUND_DARKER,
+ backgroundPlaceholder: DEFAULT_BACKGROUND_SHADOW,
+ backgroundProgress: DEFAULT_BACKGROUND_SHADOW,
+ backgroundShadow: DEFAULT_BACKGROUND_SHADOW,
+ disabled: false,
+ normalized: normalize(),
+ platform: 'ios',
+ textColor: '#fff',
+ ...overrides,
+ });
+
+describe('button input and presentation resolution', () => {
+ it('preserves the package defaults', () => {
+ expect(normalize()).toEqual({
+ activeOpacity: 1,
+ animationDuration: undefined,
+ borderBottomLeftRadius: undefined,
+ borderBottomRightRadius: undefined,
+ borderRadius: 4,
+ borderTopLeftRadius: undefined,
+ borderTopRightRadius: undefined,
+ borderWidth: 0,
+ contentGap: undefined,
+ debouncedPressTime: 0,
+ geometryHeight: 60,
+ paddingBottom: 0,
+ paddingHorizontal: 16,
+ paddingTop: 0,
+ pressInAnimationDuration: undefined,
+ progressLoadingTime: 3000,
+ raiseAmount: 4,
+ textLineHeight: 20,
+ textSize: 14,
+ width: null,
+ });
+ });
+
+ it('preserves face-height bridging and large-text growth', () => {
+ expect(
+ normalize({
+ buttonStyle: {
+ paddingBottom: 3,
+ paddingTop: 2,
+ raiseAmount: 6,
+ },
+ faceHeight: 50,
+ }).geometryHeight
+ ).toBe(51);
+
+ expect(
+ normalize({
+ fontScale: 2,
+ height: 10,
+ }).geometryHeight
+ ).toBe(44);
+ });
+
+ it('normalizes unsafe values and preserves canonical precedence', () => {
+ expect(
+ normalize({
+ activeOpacity: -1,
+ borderBottomLeftRadius: 8,
+ borderBottomRightRadius: -2,
+ borderLeftBottomRadius: 7,
+ borderRadius: Number.NaN,
+ borderTopLeftRadius: 9,
+ borderTopRightRadius: Number.POSITIVE_INFINITY,
+ borderWidth: -3,
+ buttonStyle: {
+ activeOpacity: Number.POSITIVE_INFINITY,
+ animationDuration: Number.NaN,
+ borderBottomLeftRadius: 12,
+ contentGap: -4,
+ paddingHorizontal: -5,
+ pressInAnimationDuration: -8,
+ textSize: -10,
+ },
+ debouncedPressTime: -1,
+ height: Number.NaN,
+ progressLoadingTime: Number.POSITIVE_INFINITY,
+ width: -20,
+ })
+ ).toMatchObject({
+ activeOpacity: 0,
+ animationDuration: undefined,
+ borderBottomLeftRadius: 12,
+ borderBottomRightRadius: 0,
+ borderRadius: 4,
+ borderTopLeftRadius: 9,
+ borderTopRightRadius: undefined,
+ borderWidth: 0,
+ contentGap: 0,
+ debouncedPressTime: 0,
+ geometryHeight: 60,
+ paddingHorizontal: 0,
+ pressInAnimationDuration: 0,
+ progressLoadingTime: 3000,
+ textSize: 0,
+ width: 0,
+ });
+
+ expect(
+ normalize({
+ borderBottomLeftRadius: undefined,
+ borderLeftBottomRadius: 7,
+ }).borderBottomLeftRadius
+ ).toBe(7);
+ });
+
+ it('preserves disabled and explicit visual precedence', () => {
+ const targets = resolve({
+ borderColor: '#legacy-border',
+ buttonStyle: {
+ activityColor: '#activity',
+ backgroundActive: '#active',
+ backgroundColor: '#base',
+ backgroundPlaceholder: '#placeholder',
+ backgroundProgress: '#progress',
+ borderColor: '#border',
+ depthColor: '#depth',
+ disabledBackgroundColor: '#disabled-base',
+ disabledBorderColor: '#disabled-border',
+ disabledDepthColor: '#disabled-depth',
+ disabledForegroundColor: '#disabled-text',
+ disabledShadowColor: '#disabled-shadow',
+ foregroundColor: '#text',
+ shadowColor: '#shadow',
+ textFontFamily: 'Inter',
+ },
+ disabled: true,
+ platform: 'android',
+ textFontFamily: 'Legacy',
+ });
+
+ expect(targets.accessibility.minimumTarget).toBe(48);
+ expect(targets.content.textFontFamily).toBe('Inter');
+ expect(targets.palette).toMatchObject({
+ activityColor: '#activity',
+ backgroundActive: '#active',
+ backgroundColor: '#disabled-base',
+ backgroundDarker: '#disabled-depth',
+ backgroundPlaceholder: '#placeholder',
+ backgroundProgress: '#progress',
+ backgroundShadow: '#disabled-shadow',
+ borderColor: '#disabled-border',
+ textColor: '#disabled-text',
+ });
+ });
+
+ it('uses pressed-overlay fallback without overriding backgroundActive', () => {
+ expect(
+ resolve({
+ buttonStyle: { pressedOverlayColor: '#overlay' },
+ }).palette.backgroundActive
+ ).toBe('#overlay');
+ expect(
+ resolve({
+ buttonStyle: {
+ backgroundActive: '#active',
+ pressedOverlayColor: '#overlay',
+ },
+ }).palette.backgroundActive
+ ).toBe('#active');
+ });
+});
diff --git a/src/__tests__/index.test.js b/src/__tests__/index.test.js
index b1a907e..8ead3b3 100644
--- a/src/__tests__/index.test.js
+++ b/src/__tests__/index.test.js
@@ -1,4 +1,5 @@
import React from 'react';
+import { Animated } from 'react-native';
import renderer, { act } from 'react-test-renderer';
import AwesomeButton from '../Button';
@@ -52,6 +53,7 @@ describe('AwesomeButton', () => {
const element = component.root.findByProps({ testID: 'aws-btn-bottom' });
expect(element.props.style[1].height).toBe(height - raiseLevel);
+ expect(element.type).toBe(Animated.View);
expect(element.props.testID).toBe('aws-btn-bottom');
});
@@ -115,21 +117,32 @@ describe('AwesomeButton', () => {
);
});
- const container = component.root.findByProps({ testID: 'aws-btn-content-2' });
- const hiddenMeasure = component.root.findByProps({
- testID: 'aws-btn-hidden-measure',
+ const container = component.root.findByProps({
+ testID: 'aws-btn-content-2',
});
-
expect(container.props.style[1].width).toBeUndefined();
act(() => {
- hiddenMeasure.props.onLayout({
- nativeEvent: {
- layout: {
- width: 132,
+ component.root
+ .findByProps({ testID: 'aws-btn-hidden-measure' })
+ .props.onLayout({
+ nativeEvent: {
+ layout: {
+ width: 132,
+ },
+ },
+ });
+ });
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-hidden-measure' })
+ .props.onLayout({
+ nativeEvent: {
+ layout: {
+ width: 132,
+ },
},
- },
- });
+ });
});
expect(
diff --git a/src/__tests__/interactions.test.js b/src/__tests__/interactions.test.js
index d715fa3..ab28deb 100644
--- a/src/__tests__/interactions.test.js
+++ b/src/__tests__/interactions.test.js
@@ -1,5 +1,5 @@
import React from 'react';
-import { ActivityIndicator, StyleSheet } from 'react-native';
+import { AccessibilityInfo, ActivityIndicator, StyleSheet } from 'react-native';
import renderer, { act } from 'react-test-renderer';
import AwesomeButton from '../Button';
@@ -154,6 +154,7 @@ describe('AwesomeButton interactions', () => {
});
await act(async () => {
+ pressable.props.onPressIn(createPressEvent());
pressable.props.onPressOut(createPressEvent());
});
@@ -356,7 +357,7 @@ describe('AwesomeButton interactions', () => {
expect(onPressedOut).toHaveBeenCalledTimes(1);
});
- it('releases a canceled progress touch after the fallback frame', async () => {
+ it('releases a canceled progress touch after the owned press-out boundary', async () => {
const onPressedOut = jest.fn();
let timestamp = 0;
@@ -368,7 +369,12 @@ describe('AwesomeButton interactions', () => {
global.cancelAnimationFrame = (handle) => clearTimeout(handle);
const component = renderer.create(
- undefined} onPressedOut={onPressedOut}>
+ undefined}
+ onPressedOut={onPressedOut}
+ >
Progress
);
@@ -385,7 +391,7 @@ describe('AwesomeButton interactions', () => {
expect(onPressedOut).not.toHaveBeenCalled();
await act(async () => {
- jest.advanceTimersByTime(16);
+ jest.advanceTimersByTime(48);
await flushMicrotasks();
});
@@ -394,11 +400,7 @@ describe('AwesomeButton interactions', () => {
it('showProgressBar false keeps only the activity indicator during progress', async () => {
const component = renderer.create(
- undefined}
- >
+ undefined}>
Progress
);
@@ -415,9 +417,7 @@ describe('AwesomeButton interactions', () => {
expect(
component.root.findAllByProps({ testID: 'aws-btn-progress' })
).toHaveLength(0);
- expect(
- component.root.findAllByType(ActivityIndicator)
- ).toHaveLength(1);
+ expect(component.root.findAllByType(ActivityIndicator)).toHaveLength(1);
const activeBackground = component.root.findByProps({
testID: 'aws-btn-active-background',
@@ -558,6 +558,151 @@ describe('AwesomeButton interactions', () => {
).not.toBe(true);
});
+ it('routes held-progress cancellation through one owned release', async () => {
+ const onPressedOut = jest.fn();
+ const onProgressEnd = jest.fn();
+ const springCallbacks = [];
+
+ mockedHelpers.animateSpring.mockImplementation(() => ({
+ start: (callback) => {
+ springCallbacks.push(callback);
+ },
+ stop: jest.fn(),
+ }));
+
+ try {
+ function Wrapper() {
+ const [disabled, setDisabled] = React.useState(false);
+ return (
+ setDisabled(true)}
+ onPressedOut={onPressedOut}
+ onProgressEnd={onProgressEnd}
+ >
+ Progress
+
+ );
+ }
+
+ const component = renderer.create();
+ const pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ await act(async () => {
+ pressable.props.onPressIn(createPressEvent());
+ await flushMicrotasks();
+ pressable.props.onPress();
+ await flushMicrotasks();
+ });
+
+ expect(springCallbacks).toHaveLength(2);
+
+ await act(async () => {
+ springCallbacks.forEach((callback) => callback?.({ finished: true }));
+ await flushMicrotasks();
+ });
+
+ expect(onPressedOut).toHaveBeenCalledTimes(1);
+ expect(onProgressEnd).toHaveBeenCalledTimes(1);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-view' }).props
+ .accessibilityState?.busy
+ ).not.toBe(true);
+ } finally {
+ mockedHelpers.animateSpring.mockImplementation(
+ defaultAnimateSpringImplementation
+ );
+ }
+ });
+
+ it('settles an in-flight progress release when Reduced Motion is enabled', async () => {
+ const completion = jest.fn();
+ const onPressedOut = jest.fn();
+ const onProgressEnd = jest.fn();
+ const springCallbacks = [];
+ let finishProgress;
+ let reduceMotionListener;
+ let timestamp = 0;
+ global.requestAnimationFrame = (callback) =>
+ setTimeout(() => {
+ timestamp += 16;
+ callback(timestamp);
+ }, 16);
+ global.cancelAnimationFrame = (handle) => clearTimeout(handle);
+ const accessibilityListenerSpy = jest
+ .spyOn(AccessibilityInfo, 'addEventListener')
+ .mockImplementation((eventName, listener) => {
+ if (eventName === 'reduceMotionChanged') {
+ reduceMotionListener = listener;
+ }
+ return { remove: jest.fn() };
+ });
+
+ mockedHelpers.animateSpring.mockImplementation(() => ({
+ start: (callback) => {
+ springCallbacks.push(callback);
+ },
+ stop: jest.fn(),
+ }));
+
+ try {
+ const component = renderer.create(
+ {
+ finishProgress = next;
+ }}
+ onPressedOut={onPressedOut}
+ onProgressEnd={onProgressEnd}
+ >
+ Progress
+
+ );
+ const pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ await act(async () => {
+ pressable.props.onPressIn(createPressEvent());
+ pressable.props.onPressOut(createPressEvent());
+ pressable.props.onPress();
+ jest.advanceTimersByTime(48);
+ await flushMicrotasks();
+ });
+ await act(async () => {
+ finishProgress(completion);
+ jest.advanceTimersByTime(16);
+ await flushMicrotasks();
+ });
+
+ expect(springCallbacks).toHaveLength(2);
+ expect(completion).not.toHaveBeenCalled();
+
+ await act(async () => {
+ reduceMotionListener(true);
+ await flushMicrotasks();
+ });
+
+ expect(onPressedOut).toHaveBeenCalledTimes(1);
+ expect(completion).toHaveBeenCalledTimes(1);
+ expect(onProgressEnd).toHaveBeenCalledTimes(1);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-view' }).props
+ .accessibilityState?.busy
+ ).not.toBe(true);
+ } finally {
+ accessibilityListenerSpy.mockRestore();
+ mockedHelpers.animateSpring.mockImplementation(
+ defaultAnimateSpringImplementation
+ );
+ }
+ });
+
it('does not emit duplicate release callbacks when progress is interrupted by press-out', async () => {
const onPressedOut = jest.fn();
const onPress = jest.fn((next) => next && next());
@@ -571,11 +716,7 @@ describe('AwesomeButton interactions', () => {
global.cancelAnimationFrame = (handle) => clearTimeout(handle);
const component = renderer.create(
-
+
Progress
);
@@ -673,7 +814,7 @@ describe('AwesomeButton interactions', () => {
});
expect(onPress).toHaveBeenCalledTimes(2);
- expect(lockedAnimation.stop).toHaveBeenCalled();
+ expect(lockedAnimation.start).toBeDefined();
} finally {
mockedHelpers.animateSpring.mockImplementation(
defaultAnimateSpringImplementation
@@ -769,8 +910,7 @@ describe('AwesomeButton interactions', () => {
});
expect(onPress).toHaveBeenCalledTimes(2);
- expect(springAnimations[0].stop).toHaveBeenCalled();
- expect(springAnimations[1].stop).toHaveBeenCalled();
+ expect(springAnimations).toHaveLength(2);
expect(onPressedOut).toHaveBeenCalledTimes(0);
await act(async () => {
@@ -787,7 +927,7 @@ describe('AwesomeButton interactions', () => {
}
});
- it('starts non-progress release immediately on press-out without waiting a frame', async () => {
+ it('starts non-progress release after the press-out observer boundary', async () => {
let timestamp = 0;
global.requestAnimationFrame = (callback) =>
@@ -816,6 +956,13 @@ describe('AwesomeButton interactions', () => {
await flushMicrotasks();
});
+ expect(mockedHelpers.animateTiming).not.toHaveBeenCalled();
+
+ await act(async () => {
+ jest.advanceTimersByTime(48);
+ await flushMicrotasks();
+ });
+
expect(mockedHelpers.animateTiming).toHaveBeenCalled();
});
@@ -883,6 +1030,8 @@ describe('AwesomeButton interactions', () => {
await act(async () => {
pressable.props.onPressIn(createPressEvent());
pressable.props.onPressOut(createPressEvent());
+ jest.advanceTimersByTime(48);
+ await flushMicrotasks();
pressable.props.onPressIn(createPressEvent());
await flushMicrotasks();
});
diff --git a/src/__tests__/pass4Bridge.test.js b/src/__tests__/pass4Bridge.test.js
new file mode 100644
index 0000000..d075adf
--- /dev/null
+++ b/src/__tests__/pass4Bridge.test.js
@@ -0,0 +1,840 @@
+import React, { useState } from 'react';
+import { AccessibilityInfo, StyleSheet } from 'react-native';
+import renderer, { act } from 'react-test-renderer';
+import AwesomeButton from '../Button';
+import ThemedButton from '../themed/ThemedButton';
+import getTheme from '../themed/themes';
+
+jest.mock('../helpers', () => {
+ const actualHelpers = jest.requireActual('../helpers');
+ const createAnimation = () => ({
+ start: (callback) => callback && callback({ finished: true }),
+ stop: jest.fn(),
+ });
+ return {
+ ...actualHelpers,
+ animateElastic: jest.fn(() => createAnimation()),
+ animateSpring: jest.fn(() => createAnimation()),
+ animateTiming: jest.fn(() => createAnimation()),
+ };
+});
+
+const createPressEvent = () => ({ nativeEvent: {}, persist: jest.fn() });
+const flush = async () => Promise.resolve();
+
+describe('Pass 4 React Native bridge', () => {
+ const originalRequestAnimationFrame = global.requestAnimationFrame;
+ const originalCancelAnimationFrame = global.cancelAnimationFrame;
+
+ beforeEach(() => {
+ jest.useFakeTimers();
+ global.requestAnimationFrame = (callback) =>
+ setTimeout(() => callback(Date.now()), 16);
+ global.cancelAnimationFrame = (handle) => clearTimeout(handle);
+ });
+
+ afterEach(async () => {
+ await act(async () => {
+ jest.runOnlyPendingTimers();
+ await flush();
+ });
+ jest.restoreAllMocks();
+ jest.useRealTimers();
+ global.requestAnimationFrame = originalRequestAnimationFrame;
+ global.cancelAnimationFrame = originalCancelAnimationFrame;
+ });
+
+ it('uses the latest callback for an event not yet dispatched', async () => {
+ const callbackA = jest.fn();
+ const callbackB = jest.fn();
+ const component = renderer.create(
+ Tap
+ );
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPress();
+
+ act(() => {
+ component.update(Tap);
+ });
+ await act(async () => {
+ jest.advanceTimersByTime(48);
+ await flush();
+ });
+
+ expect(callbackA).not.toHaveBeenCalled();
+ expect(callbackB).toHaveBeenCalledTimes(1);
+ });
+
+ it('treats numeric zero as renderable content and keeps activation eligible', async () => {
+ const onPress = jest.fn();
+ const component = renderer.create(
+ {0}
+ );
+
+ expect(
+ component.root.findAllByProps({
+ testID: 'aws-btn-content-placeholder',
+ })
+ ).toHaveLength(0);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-view' }).props
+ .disabled
+ ).toBe(false);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .children
+ ).toBe(0);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-view' }).props
+ .accessibilityLabel
+ ).toBe('0');
+
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPress();
+ });
+ await act(async () => {
+ jest.advanceTimersByTime(48);
+ await flush();
+ });
+
+ expect(onPress).toHaveBeenCalledTimes(1);
+ });
+
+ it('revalidates after onPressIn before committing onPressedIn', async () => {
+ const onPressedIn = jest.fn();
+ function Harness() {
+ const [disabled, setDisabled] = useState(false);
+ return (
+ undefined}
+ onPressIn={() => setDisabled(true)}
+ onPressedIn={onPressedIn}
+ >
+ Tap
+
+ );
+ }
+ const component = renderer.create();
+
+ await act(async () => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPressIn(createPressEvent());
+ await flush();
+ });
+
+ expect(onPressedIn).not.toHaveBeenCalled();
+ });
+
+ it('cancels the gesture when onPressedIn commits disablement', async () => {
+ const onPress = jest.fn();
+ function Harness() {
+ const [disabled, setDisabled] = useState(false);
+ return (
+ setDisabled(true)}
+ >
+ Tap
+
+ );
+ }
+ const component = renderer.create();
+ const pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ await act(async () => {
+ pressable.props.onPressIn(createPressEvent());
+ await flush();
+ pressable.props.onPressOut(createPressEvent());
+ pressable.props.onPress();
+ jest.runAllTimers();
+ await flush();
+ });
+
+ expect(onPress).not.toHaveBeenCalled();
+ });
+
+ it('does not revive a cancelled gesture after the button is re-enabled', async () => {
+ const onPress = jest.fn();
+ let setDisabled;
+ function Harness() {
+ const [disabled, updateDisabled] = useState(false);
+ setDisabled = updateDisabled;
+ return (
+
+ Tap
+
+ );
+ }
+ const component = renderer.create();
+ let pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ await act(async () => {
+ pressable.props.onPressIn(createPressEvent());
+ await flush();
+ });
+ act(() => setDisabled(true));
+ act(() => setDisabled(false));
+ pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+ act(() => pressable.props.onPress());
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ });
+
+ expect(onPress).not.toHaveBeenCalled();
+
+ pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+ act(() => {
+ pressable.props.onPressIn(createPressEvent());
+ pressable.props.onPressOut(createPressEvent());
+ pressable.props.onPress();
+ });
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ });
+
+ expect(onPress).toHaveBeenCalledTimes(1);
+ });
+
+ it('stops post-release callbacks when onPressOut tears the view down', async () => {
+ const onPressedOut = jest.fn();
+ let component;
+ component = renderer.create(
+ undefined}
+ onPressOut={() => component.unmount()}
+ onPressedOut={onPressedOut}
+ >
+ Tap
+
+ );
+ const pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+ act(() => {
+ pressable.props.onPressIn(createPressEvent());
+ pressable.props.onPressOut(createPressEvent());
+ });
+ await act(async () => {
+ jest.advanceTimersByTime(48);
+ await flush();
+ });
+
+ expect(onPressedOut).not.toHaveBeenCalled();
+ });
+
+ it('captures progress completion callbacks and stops after teardown', async () => {
+ const onProgressEnd = jest.fn();
+ let component;
+ component = renderer.create(
+ next?.(() => component.unmount())}
+ onProgressEnd={onProgressEnd}
+ >
+ Save
+
+ );
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPress();
+ });
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ jest.runAllTimers();
+ });
+
+ expect(onProgressEnd).not.toHaveBeenCalled();
+ });
+
+ it('keeps progress completion dependencies captured when next is accepted', async () => {
+ const completion = jest.fn();
+ const progressEndA = jest.fn();
+ const progressEndB = jest.fn();
+ let finishProgress;
+ const component = renderer.create(
+ {
+ finishProgress = next;
+ }}
+ onProgressEnd={progressEndA}
+ >
+ Save
+
+ );
+
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPress();
+ });
+ await act(async () => {
+ jest.advanceTimersByTime(48);
+ await flush();
+ });
+
+ act(() => {
+ finishProgress(completion);
+ component.update(
+ undefined}
+ onProgressEnd={progressEndB}
+ >
+ Save
+
+ );
+ });
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ jest.runAllTimers();
+ await flush();
+ });
+
+ expect(completion).toHaveBeenCalledTimes(1);
+ expect(progressEndA).toHaveBeenCalledTimes(1);
+ expect(progressEndB).not.toHaveBeenCalled();
+ });
+
+ it('keeps the release callback captured at physical press-out', async () => {
+ const pressedOutA = jest.fn();
+ const pressedOutB = jest.fn();
+ const component = renderer.create(
+ Tap
+ );
+ const pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ act(() => {
+ pressable.props.onPressIn(createPressEvent());
+ pressable.props.onPressOut(createPressEvent());
+ component.update(
+ Tap
+ );
+ });
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ });
+
+ expect(pressedOutA).toHaveBeenCalledTimes(1);
+ expect(pressedOutB).not.toHaveBeenCalled();
+ });
+
+ it('keeps atomic progress free of fabricated physical release callbacks', async () => {
+ const order = [];
+ const component = renderer.create(
+ next?.(() => order.push('completion'))}
+ onPressedOut={() => order.push('pressed-out')}
+ onProgressEnd={() => order.push('progress-end')}
+ >
+ Save
+
+ );
+
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPress();
+ });
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ jest.runAllTimers();
+ await flush();
+ });
+
+ expect(order).toEqual(['completion', 'progress-end']);
+ });
+
+ it('settles a held progress release before completion callbacks', async () => {
+ const order = [];
+ const component = renderer.create(
+ next?.(() => order.push('completion'))}
+ onPressedOut={() => order.push('pressed-out')}
+ onProgressEnd={() => order.push('progress-end')}
+ >
+ Save
+
+ );
+ const pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ act(() => {
+ pressable.props.onPressIn(createPressEvent());
+ pressable.props.onPressOut(createPressEvent());
+ pressable.props.onPress();
+ });
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ jest.runAllTimers();
+ await flush();
+ });
+
+ expect(order).toEqual(['pressed-out', 'completion', 'progress-end']);
+ });
+
+ it('rolls back an atomic delivered progress run without physical callbacks', async () => {
+ const onPressedOut = jest.fn();
+ const onProgressEnd = jest.fn();
+ function Harness() {
+ const [disabled, setDisabled] = useState(false);
+ return (
+ setDisabled(true)}
+ onPressedOut={onPressedOut}
+ onProgressEnd={onProgressEnd}
+ >
+ Save
+
+ );
+ }
+ const component = renderer.create();
+
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPress();
+ });
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ jest.runAllTimers();
+ await flush();
+ });
+
+ expect(onPressedOut).not.toHaveBeenCalled();
+ expect(onProgressEnd).toHaveBeenCalledTimes(1);
+ });
+
+ it('uses the replacement long action but permanently disarms remove-then-add', () => {
+ const actionA = jest.fn();
+ const actionB = jest.fn();
+ const ordinary = jest.fn();
+ const component = renderer.create(
+
+ Hold
+
+ );
+ let pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ act(() => {
+ pressable.props.onPressIn(createPressEvent());
+ component.update(
+
+ Hold
+
+ );
+ });
+ act(() => jest.advanceTimersByTime(500));
+ expect(actionA).not.toHaveBeenCalled();
+ expect(actionB).toHaveBeenCalledTimes(1);
+
+ pressable = component.root.findByProps({ testID: 'aws-btn-content-view' });
+ act(() => pressable.props.onPressOut(createPressEvent()));
+ act(() => {
+ pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+ pressable.props.onPressIn(createPressEvent());
+ component.update(Hold);
+ });
+ act(() => {
+ component.update(
+
+ Hold
+
+ );
+ });
+ act(() => jest.advanceTimersByTime(500));
+ expect(actionB).toHaveBeenCalledTimes(1);
+ });
+
+ it('defers a newly added long-press action until the next gesture', () => {
+ const action = jest.fn();
+ const component = renderer.create(Hold);
+ let pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ act(() => {
+ pressable.props.onPressIn(createPressEvent());
+ component.update(
+ Hold
+ );
+ jest.advanceTimersByTime(500);
+ pressable.props.onPressOut(createPressEvent());
+ });
+
+ expect(action).not.toHaveBeenCalled();
+
+ pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+ act(() => {
+ pressable.props.onPressIn(createPressEvent());
+ jest.advanceTimersByTime(500);
+ });
+
+ expect(action).toHaveBeenCalledTimes(1);
+ });
+
+ it('keeps an ordinary hold activatable when no long-press handler exists', async () => {
+ const onPress = jest.fn();
+ const component = renderer.create(
+ Hold
+ );
+ const pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ act(() => {
+ pressable.props.onPressIn(createPressEvent());
+ jest.advanceTimersByTime(1000);
+ pressable.props.onPressOut(createPressEvent());
+ pressable.props.onPress();
+ });
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ });
+
+ expect(onPress).toHaveBeenCalledTimes(1);
+ });
+
+ it('cancels an owned long-press timer on unmount', () => {
+ const action = jest.fn();
+ const component = renderer.create(
+ Hold
+ );
+
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPressIn(createPressEvent());
+ component.unmount();
+ });
+ act(() => {
+ jest.advanceTimersByTime(500);
+ });
+
+ expect(action).not.toHaveBeenCalled();
+ });
+
+ it('keeps legacy long press physical-only and routes atomic long to the bridge', () => {
+ const legacy = jest.fn();
+ const canonical = jest.fn();
+ const component = renderer.create(
+
+ Hold
+
+ );
+ const pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ act(() => {
+ pressable.props.onAccessibilityAction({
+ nativeEvent: { actionName: 'longpress' },
+ });
+ });
+ expect(canonical).toHaveBeenCalledTimes(1);
+ expect(legacy).not.toHaveBeenCalled();
+ });
+
+ it('reserves activate for Pressable and merges unowned consumer actions', async () => {
+ const consumer = jest.fn();
+ const onPress = jest.fn();
+ const component = renderer.create(
+ undefined}
+ dangerouslySetPressableProps={{
+ accessibilityActions: [
+ { name: 'activate', label: 'Wrong' },
+ { name: 'magic', label: 'Magic' },
+ ],
+ onAccessibilityAction: consumer,
+ }}
+ >
+ Tap
+
+ );
+ const pressable = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ });
+
+ expect(
+ pressable.props.accessibilityActions.filter(
+ (action) => action.name === 'activate'
+ )
+ ).toHaveLength(0);
+ expect(
+ pressable.props.accessibilityActions.some(
+ (action) => action.name === 'magic'
+ )
+ ).toBe(true);
+ act(() => {
+ pressable.props.onAccessibilityAction({
+ nativeEvent: { actionName: 'activate' },
+ });
+ pressable.props.onAccessibilityAction({
+ nativeEvent: { actionName: 'magic' },
+ });
+ pressable.props.onPress();
+ });
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ });
+ expect(consumer).toHaveBeenCalledTimes(1);
+ expect(onPress).toHaveBeenCalledTimes(1);
+ });
+
+ it('applies bridge precedence and normalizes unsafe numeric values', () => {
+ const component = renderer.create(
+
+ Tap
+
+ );
+ const face = StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-text' }).props.style
+ );
+ const content = StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-content' }).props.style
+ );
+ const outer = StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-content-2' }).props.style
+ );
+
+ expect(face.backgroundColor).toBe('blue');
+ expect(face.borderWidth).toBe(0);
+ expect(content.height).toBe(40);
+ expect(outer.margin).toBe(2);
+ });
+
+ it('treats non-finite optional bridge values as absent', () => {
+ const component = renderer.create(
+
+ Safe fallback
+
+ );
+ const face = StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-text' }).props.style
+ );
+ const text = StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props.style
+ );
+
+ expect(face.borderRadius).toBe(22);
+ expect(text.fontSize).toBe(17);
+ });
+
+ it('uses animationDuration for direct resolved-style changes', async () => {
+ const component = renderer.create(
+
+ Styled
+
+ );
+
+ act(() => {
+ component.update(
+
+ Styled
+
+ );
+ });
+ await act(async () => {
+ jest.advanceTimersByTime(80);
+ await flush();
+ });
+ const midpoint = StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-text' }).props.style
+ ).backgroundColor;
+ expect(midpoint).not.toBe('#000000');
+ expect(midpoint).not.toBe('#ffffff');
+
+ await act(async () => {
+ jest.runAllTimers();
+ await flush();
+ });
+ expect(
+ StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-text' }).props.style
+ ).backgroundColor
+ ).toBe('#ffffff');
+ });
+
+ it('resolves x overrides independently from legacy twitter requests', () => {
+ const base = getTheme(0);
+ const config = {
+ ...base,
+ buttons: {
+ ...base.buttons,
+ twitter: { ...base.buttons.twitter, backgroundColor: 'orange' },
+ x: { ...base.buttons.twitter, backgroundColor: 'black' },
+ },
+ };
+ const component = renderer.create(
+
+ X
+
+ );
+ expect(
+ StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-text' }).props.style
+ ).backgroundColor
+ ).toBe('black');
+
+ act(() => {
+ component.update(
+
+ Twitter
+
+ );
+ });
+ expect(
+ StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-text' }).props.style
+ ).backgroundColor
+ ).toBe('orange');
+ });
+
+ it('resolves themed dimensions as explicit then variant then size', () => {
+ const base = getTheme(0);
+ const config = {
+ ...base,
+ buttons: {
+ ...base.buttons,
+ primary: {
+ ...base.buttons.primary,
+ height: 73,
+ width: 181,
+ textSize: 19,
+ },
+ },
+ size: {
+ ...base.size,
+ medium: {
+ ...base.size.medium,
+ height: 41,
+ width: 121,
+ textSize: 11,
+ },
+ },
+ };
+ const component = renderer.create(
+ Variant
+ );
+
+ expect(component.root.findByType(AwesomeButton).props.height).toBe(73);
+ expect(
+ StyleSheet.flatten(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .style
+ ).fontSize
+ ).toBe(19);
+
+ act(() => {
+ component.update(
+
+ Explicit
+
+ );
+ });
+ expect(component.root.findByType(AwesomeButton).props.height).toBe(88);
+
+ act(() => {
+ component.update(
+
+ Invalid explicit values
+
+ );
+ });
+ expect(component.root.findByType(AwesomeButton).props.height).toBe(73);
+ expect(component.root.findByType(AwesomeButton).props.width).toBe(181);
+ });
+
+ it('snaps progress to a static full-face layer under Reduced Motion', async () => {
+ jest
+ .spyOn(AccessibilityInfo, 'isReduceMotionEnabled')
+ .mockResolvedValue(true);
+ const component = renderer.create(
+ undefined}>
+ Save
+
+ );
+ await act(async () => flush());
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPress();
+ });
+ const progress = component.root.findByProps({ testID: 'aws-btn-progress' });
+ const transform = StyleSheet.flatten(progress.parent.props.style)
+ .transform[0].translateX;
+ expect(
+ typeof transform.__getValue === 'function'
+ ? transform.__getValue()
+ : transform
+ ).toBe(0);
+ });
+});
diff --git a/src/__tests__/pass4Compatibility.test.ts b/src/__tests__/pass4Compatibility.test.ts
new file mode 100644
index 0000000..10a00a9
--- /dev/null
+++ b/src/__tests__/pass4Compatibility.test.ts
@@ -0,0 +1,54 @@
+import {
+ getTheme,
+ type AwesomeButtonThemeDefinitions,
+ type AwesomeButtonVariant,
+ type ButtonVariant,
+ type ThemeButtonDefinitions,
+ type ThemeDefinition,
+} from '..';
+
+const legacyButtons: ThemeButtonDefinitions = getTheme(0).buttons;
+const legacyTheme: ThemeDefinition = {
+ title: 'Legacy v3.1 theme',
+ background: '#000000',
+ color: '#ffffff',
+ buttons: legacyButtons,
+ size: getTheme(0).size,
+};
+const bridgeButtons: AwesomeButtonThemeDefinitions = {
+ ...legacyButtons,
+ x: { backgroundColor: '#000000' },
+};
+
+const exhaustLegacyVariant = (variant: ButtonVariant): string => {
+ switch (variant) {
+ case 'primary':
+ case 'secondary':
+ case 'anchor':
+ case 'danger':
+ case 'disabled':
+ case 'flat':
+ case 'twitter':
+ case 'messenger':
+ case 'facebook':
+ case 'github':
+ case 'linkedin':
+ case 'whatsapp':
+ case 'reddit':
+ case 'pinterest':
+ case 'youtube':
+ return variant;
+ default: {
+ const neverVariant: never = variant;
+ return neverVariant;
+ }
+ }
+};
+
+test('legacy closed types stay valid while the request bridge accepts x', () => {
+ const request: AwesomeButtonVariant = 'x';
+ expect(legacyTheme.buttons.twitter).toBeDefined();
+ expect(bridgeButtons.x).toBeDefined();
+ expect(request).toBe('x');
+ expect(exhaustLegacyVariant('twitter')).toBe('twitter');
+});
diff --git a/src/__tests__/performanceBaseline.test.js b/src/__tests__/performanceBaseline.test.js
new file mode 100644
index 0000000..db20fb3
--- /dev/null
+++ b/src/__tests__/performanceBaseline.test.js
@@ -0,0 +1,153 @@
+import React, { Profiler } from 'react';
+import renderer, { act } from 'react-test-renderer';
+import AwesomeButton from '../Button';
+
+let mockDeferAnimations = false;
+
+jest.mock('../helpers', () => {
+ const actualHelpers = jest.requireActual('../helpers');
+ const createAnimation = () => {
+ let timer = null;
+ return {
+ start: (callback) => {
+ if (mockDeferAnimations) {
+ timer = setTimeout(() => callback?.({ finished: true }), 1);
+ } else {
+ callback?.({ finished: true });
+ }
+ },
+ stop: jest.fn(() => {
+ if (timer !== null) {
+ clearTimeout(timer);
+ }
+ }),
+ };
+ };
+ return {
+ ...actualHelpers,
+ animateElastic: jest.fn(() => createAnimation()),
+ animateSpring: jest.fn(() => createAnimation()),
+ animateTiming: jest.fn(() => createAnimation()),
+ };
+});
+
+const WARM_UP_REPETITIONS = 5;
+const MEASURED_REPETITIONS = 25;
+
+const median = (values) => {
+ const sorted = [...values].sort((left, right) => left - right);
+ return sorted[Math.floor(sorted.length / 2)];
+};
+
+const runUpdateSequence = () => {
+ let commits = 0;
+ const onRender = () => {
+ commits += 1;
+ };
+ const startedAt = process.hrtime.bigint();
+ let component;
+
+ act(() => {
+ component = renderer.create(
+
+ undefined}
+ >
+ A
+
+
+ );
+ });
+
+ for (const [label, color, height] of [
+ ['B', '#222222', 52],
+ ['C', '#333333', 56],
+ ['D', '#444444', 60],
+ ]) {
+ act(() => {
+ component.update(
+
+ label}
+ >
+ {label}
+
+
+ );
+ });
+ }
+
+ act(() => component.unmount());
+ const durationMs = Number(process.hrtime.bigint() - startedAt) / 1_000_000;
+ return { commits, durationMs };
+};
+
+describe('package performance baseline', () => {
+ it('records deterministic profiler commits for rapid configuration updates', () => {
+ for (let index = 0; index < WARM_UP_REPETITIONS; index += 1) {
+ runUpdateSequence();
+ }
+
+ const samples = Array.from(
+ { length: MEASURED_REPETITIONS },
+ runUpdateSequence
+ );
+ const durations = samples.map(({ durationMs }) => durationMs);
+ const medianDuration = median(durations);
+ const medianAbsoluteDeviation = median(
+ durations.map((duration) => Math.abs(duration - medianDuration))
+ );
+
+ expect(new Set(samples.map(({ commits }) => commits))).toEqual(
+ new Set([8])
+ );
+ expect(durations.every(Number.isFinite)).toBe(true);
+
+ console.info(
+ JSON.stringify({
+ benchmark: 'rapid-configuration-updates',
+ warmUpRepetitions: WARM_UP_REPETITIONS,
+ measuredRepetitions: MEASURED_REPETITIONS,
+ commitsPerRepetition: 8,
+ medianDurationMs: Number(medianDuration.toFixed(3)),
+ medianAbsoluteDeviationMs: Number(medianAbsoluteDeviation.toFixed(3)),
+ })
+ );
+ });
+
+ it('does not dispatch accepted progress completion after teardown', () => {
+ jest.useFakeTimers();
+ mockDeferAnimations = true;
+ const completion = jest.fn();
+ let component;
+
+ act(() => {
+ component = renderer.create(
+ next?.(completion)}
+ >
+ Save
+
+ );
+ });
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-view' })
+ .props.onPress();
+ component.unmount();
+ });
+ act(() => {
+ jest.runAllTimers();
+ });
+
+ expect(completion).not.toHaveBeenCalled();
+ mockDeferAnimations = false;
+ jest.useRealTimers();
+ });
+});
diff --git a/src/__tests__/sizeBehavior.test.js b/src/__tests__/sizeBehavior.test.js
index af56d0b..44233fc 100644
--- a/src/__tests__/sizeBehavior.test.js
+++ b/src/__tests__/sizeBehavior.test.js
@@ -1,6 +1,11 @@
import React from 'react';
+import { Text } from 'react-native';
import renderer, { act } from 'react-test-renderer';
import AwesomeButton from '../Button';
+import {
+ hasPhysicalPixelFit,
+ roundRequiredWidthToPhysicalPixel,
+} from '../size/useAutoWidthTextCoordinator';
import ThemedButton from '../themed/ThemedButton';
const isAnimatedValue = (value) =>
@@ -39,6 +44,9 @@ const createComponent = (element) => {
const getContainerStyles = (component) =>
component.root.findByProps({ testID: 'aws-btn-content-2' }).props.style;
+const getLayerStyles = (component, testID) =>
+ component.root.findByProps({ testID }).props.style;
+
const getRenderedText = (component) =>
component.root.findByProps({ testID: 'aws-btn-content-text' }).props.children;
@@ -58,6 +66,24 @@ const measureHiddenWidth = (component, width) => {
});
};
+const layoutVisibleFace = (component, width) => {
+ act(() => {
+ component.root.findByProps({ testID: 'aws-btn-text' }).props.onLayout({
+ nativeEvent: { layout: { width } },
+ });
+ });
+};
+
+const acknowledgeVisibleText = (component) => {
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-text' })
+ .props.onTextLayout({
+ nativeEvent: { lines: [{}] },
+ });
+ });
+};
+
describe('AwesomeButton size behavior', () => {
let restoreAnimationFrame;
@@ -74,13 +100,28 @@ describe('AwesomeButton size behavior', () => {
restoreAnimationFrame();
});
- it('defaults animateSize to true for fixed-size updates', () => {
+ it.each([1, 2, 3])(
+ 'requires a full physical-pixel fit at %sx scale',
+ (scale) => {
+ expect(hasPhysicalPixelFit(100, 100 - 1 / scale, scale)).toBe(false);
+ expect(hasPhysicalPixelFit(100, 100, scale)).toBe(true);
+ expect(
+ roundRequiredWidthToPhysicalPixel(100 + 0.1 / scale, scale)
+ ).toBeCloseTo(100 + 1 / scale, 8);
+ }
+ );
+
+ it('keeps committed geometry attached across fixed-size updates', () => {
const component = createComponent(
Fixed
);
+ const initialCommittedStyle = getContainerStyles(component)[3];
+
+ expect(initialCommittedStyle).toEqual({ height: 60, width: 120 });
+
act(() => {
component.update(
@@ -90,12 +131,33 @@ describe('AwesomeButton size behavior', () => {
});
const animatedStyle = getContainerStyles(component).find(
- (style) => style && (isAnimatedValue(style.width) || isAnimatedValue(style.height))
+ (style) =>
+ style && (isAnimatedValue(style.width) || isAnimatedValue(style.height))
);
expect(animatedStyle).toBeDefined();
expect(isAnimatedValue(animatedStyle.width)).toBe(true);
expect(isAnimatedValue(animatedStyle.height)).toBe(true);
+ expect(animatedStyle.width.__getValue()).toBe(120);
+ expect(animatedStyle.height.__getValue()).toBe(60);
+
+ const depthAnimatedStyle = getLayerStyles(component, 'aws-btn-bottom').find(
+ (style) => style && isAnimatedValue(style.width)
+ );
+ const faceAnimatedStyle = getLayerStyles(component, 'aws-btn-content').find(
+ (style) => style && isAnimatedValue(style.width)
+ );
+
+ expect(depthAnimatedStyle.width).toBe(animatedStyle.width);
+ expect(faceAnimatedStyle.width).toBe(animatedStyle.width);
+
+ act(() => {
+ jest.runAllTimers();
+ });
+
+ const settledAnimatedStyle = getContainerStyles(component)[3];
+
+ expect(settledAnimatedStyle).toEqual({ height: 72, width: 200 });
});
it('keeps fixed-size changes instant when animateSize is disabled', () => {
@@ -113,14 +175,52 @@ describe('AwesomeButton size behavior', () => {
);
});
- expect(getContainerStyles(component).find((style) => style && isAnimatedValue(style.width))).toBeUndefined();
+ expect(
+ getContainerStyles(component).find(
+ (style) => style && isAnimatedValue(style.width)
+ )
+ ).toBeUndefined();
expect(getContainerStyles(component)[1].width).toBe(200);
expect(getContainerStyles(component)[1].height).toBe(72);
});
- it('grows first and shrinks last for auto-width string labels with no text transition', () => {
+ it('snaps an in-flight fixed-size transition when animation is disabled', () => {
+ const component = createComponent(
+ Fixed
+ );
+
+ act(() => {
+ component.update(Fixed);
+ });
+ expect(
+ getContainerStyles(component).some(
+ (style) => style && isAnimatedValue(style.width)
+ )
+ ).toBe(true);
+
+ act(() => {
+ component.update(
+
+ Fixed
+
+ );
+ });
+
+ expect(
+ getContainerStyles(component).some(
+ (style) => style && isAnimatedValue(style.width)
+ )
+ ).toBe(false);
+ expect(
+ getContainerStyles(component).some((style) => style?.width === 200)
+ ).toBe(true);
+ });
+
+ it('fit-gates growth and swaps before shrink without text transition', () => {
const component = createComponent(Open);
measureHiddenWidth(component, 76);
+ measureHiddenWidth(component, 76);
+ layoutVisibleFace(component, 76);
act(() => {
component.update(Open analytics dashboard);
@@ -128,12 +228,44 @@ describe('AwesomeButton size behavior', () => {
measureHiddenWidth(component, 212);
expect(getRenderedText(component)).toBe('Open');
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBe(1);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-view' }).props
+ .accessibilityLabel
+ ).toBe('Open analytics dashboard');
act(() => {
- jest.runAllTimers();
+ jest.advanceTimersByTime(96);
+ });
+
+ expect(getRenderedText(component)).toBe('Open');
+
+ layoutVisibleFace(component, 212);
+ act(() => {
+ jest.advanceTimersByTime(128);
});
expect(getRenderedText(component)).toBe('Open analytics dashboard');
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBe(1);
+
+ layoutVisibleFace(component, 211.75);
+ acknowledgeVisibleText(component);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBe(1);
+
+ layoutVisibleFace(component, 212);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBeUndefined();
act(() => {
component.update(Open);
@@ -141,6 +273,11 @@ describe('AwesomeButton size behavior', () => {
measureHiddenWidth(component, 76);
expect(getRenderedText(component)).toBe('Open');
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBe(1);
+ acknowledgeVisibleText(component);
act(() => {
jest.runAllTimers();
@@ -149,6 +286,221 @@ describe('AwesomeButton size behavior', () => {
expect(getRenderedText(component)).toBe('Open');
});
+ it('suppresses a stale pending growth handoff after replacement', () => {
+ const component = createComponent(Open);
+ measureHiddenWidth(component, 76);
+ measureHiddenWidth(component, 76);
+ layoutVisibleFace(component, 76);
+
+ act(() => {
+ component.update(Open analytics dashboard);
+ });
+ measureHiddenWidth(component, 212);
+ expect(getRenderedText(component)).toBe('Open');
+
+ act(() => {
+ component.update(Save report);
+ });
+ measureHiddenWidth(component, 132);
+ layoutVisibleFace(component, 132);
+
+ act(() => {
+ jest.advanceTimersByTime(256);
+ });
+
+ expect(getRenderedText(component)).toBe('Save report');
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBe(1);
+ acknowledgeVisibleText(component);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBeUndefined();
+ });
+
+ it('rejects a stale native target acknowledgement after replacement', () => {
+ const component = createComponent(Open);
+ measureHiddenWidth(component, 76);
+ measureHiddenWidth(component, 76);
+ layoutVisibleFace(component, 76);
+
+ act(() => {
+ component.update(Open analytics dashboard);
+ });
+ measureHiddenWidth(component, 212);
+ layoutVisibleFace(component, 212);
+ act(() => {
+ jest.advanceTimersByTime(256);
+ });
+ const staleAcknowledgement = component.root.findByProps({
+ testID: 'aws-btn-content-text',
+ }).props.onTextLayout;
+
+ act(() => {
+ component.update(Save report);
+ });
+ measureHiddenWidth(component, 132);
+ expect(getRenderedText(component)).toBe('Save report');
+
+ act(() => {
+ staleAcknowledgement({ nativeEvent: { lines: [{}] } });
+ });
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBe(1);
+
+ acknowledgeVisibleText(component);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBeUndefined();
+ });
+
+ it('measures auto-width text on an unconstrained hidden horizontal axis', () => {
+ const component = createComponent(
+
+ Open
+
+ );
+ const viewport = component.root.findByProps({
+ testID: 'aws-btn-hidden-measure-viewport',
+ });
+ const measurement = component.root.findByProps({
+ testID: 'aws-btn-hidden-measure',
+ });
+ const measurementText = component.root.findByProps({
+ testID: 'aws-btn-hidden-measure-text',
+ });
+
+ expect(viewport.props).toEqual(
+ expect.objectContaining({
+ accessible: false,
+ accessibilityElementsHidden: true,
+ horizontal: true,
+ importantForAccessibility: 'no-hide-descendants',
+ pointerEvents: 'none',
+ scrollEnabled: false,
+ showsHorizontalScrollIndicator: false,
+ })
+ );
+ expect(viewport.props.style).toEqual(
+ expect.objectContaining({ opacity: 0, position: 'absolute' })
+ );
+ expect(measurement.props.style).toEqual(
+ expect.objectContaining({
+ borderWidth: 2,
+ flexDirection: 'row',
+ paddingHorizontal: 20,
+ })
+ );
+ expect(measurement.props.style).not.toEqual(
+ expect.objectContaining({ position: 'absolute' })
+ );
+ expect(measurementText.props).toEqual(
+ expect.objectContaining({
+ allowFontScaling: true,
+ children: 'Open',
+ })
+ );
+ expect(measurementText.props.style).toEqual(
+ expect.objectContaining({
+ fontFamily: 'Example Font',
+ fontSize: 16,
+ fontWeight: 'bold',
+ lineHeight: 24,
+ })
+ );
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props.style
+ ).toEqual(
+ expect.arrayContaining([expect.objectContaining({ lineHeight: 24 })])
+ );
+
+ measureHiddenWidth(component, 84);
+
+ act(() => {
+ component.update(
+
+ Open analytics dashboard
+
+ );
+ });
+
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-hidden-measure-text' })
+ .props.children
+ ).toBe('Open analytics dashboard');
+ });
+
+ it('measures auxiliary slots once and reuses numeric widths in hidden rows', () => {
+ const component = createComponent(
+ Before}
+ after={After}
+ extra={Extra}
+ width="auto"
+ >
+ Open
+
+ );
+
+ expect(
+ component.root.findAllByProps({ testID: 'aws-btn-hidden-measure' })
+ ).toHaveLength(0);
+
+ act(() => {
+ component.root
+ .findByProps({ testID: 'before-slot' })
+ .parent.props.onLayout({
+ nativeEvent: { layout: { width: 18 } },
+ });
+ component.root
+ .findByProps({ testID: 'after-slot' })
+ .parent.props.onLayout({
+ nativeEvent: { layout: { width: 24 } },
+ });
+ });
+
+ const measurement = component.root.findByProps({
+ testID: 'aws-btn-hidden-measure',
+ });
+ expect(measurement.props.style).toEqual(
+ expect.objectContaining({ gap: 6 })
+ );
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-hidden-measure-before' })
+ .props.style
+ ).toEqual({ width: 18 });
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-hidden-measure-after' })
+ .props.style
+ ).toEqual({ width: 24 });
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-hidden-measure-before' })
+ .props.children
+ ).toBeUndefined();
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-hidden-measure-after' })
+ .props.children
+ ).toBeUndefined();
+ });
+
it('keeps auto-width changes instant when animateSize is disabled', () => {
const component = createComponent(
Open
@@ -166,7 +518,91 @@ describe('AwesomeButton size behavior', () => {
measureHiddenWidth(component, 212);
expect(getRenderedText(component)).toBe('Open analytics dashboard');
- expect(getContainerStyles(component).find((style) => style && isAnimatedValue(style.width))).toBeUndefined();
+ expect(
+ getContainerStyles(component).find(
+ (style) => style && isAnimatedValue(style.width)
+ )
+ ).toBeUndefined();
+ });
+
+ it.each([
+ ['fixed', { width: 160 }],
+ ['stretch', { stretch: true }],
+ ])(
+ 'remeasures unchanged primitive text when switching from %s to auto width',
+ (_mode, initialProps) => {
+ const component = createComponent(
+ Open
+ );
+
+ act(() => {
+ component.update(Open);
+ });
+
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-hidden-measure' })
+ ).toBeDefined();
+
+ measureHiddenWidth(component, 84);
+ measureHiddenWidth(component, 84);
+
+ expect(
+ getContainerStyles(component).some((style) => style?.width === 84)
+ ).toBe(true);
+ }
+ );
+
+ it('assigns stretch width to both the interaction surface and visual layers', () => {
+ const component = createComponent(
+ Full width
+ );
+ const interactionStyle = component.root.findByProps({
+ testID: 'aws-btn-content-view',
+ }).props.style;
+ const interactionStyles =
+ typeof interactionStyle === 'function'
+ ? interactionStyle({ pressed: false })
+ : interactionStyle;
+
+ expect(interactionStyles).toEqual(
+ expect.arrayContaining([expect.objectContaining({ width: '100%' })])
+ );
+ expect(getContainerStyles(component)).toEqual(
+ expect.arrayContaining([expect.objectContaining({ width: '100%' })])
+ );
+ });
+
+ it('remeasures changing custom content through the visible layout owner', () => {
+ const component = createComponent(
+
+ Compact
+
+ );
+ let content = component.root.findByProps({ testID: 'aws-btn-text' });
+
+ act(() => {
+ content.props.onLayout({ nativeEvent: { layout: { width: 92 } } });
+ });
+ expect(
+ getContainerStyles(component).some((style) => style?.width === 92)
+ ).toBe(true);
+
+ act(() => {
+ component.update(
+
+ A much wider custom label
+
+ );
+ });
+ content = component.root.findByProps({ testID: 'aws-btn-text' });
+ act(() => {
+ content.props.onLayout({ nativeEvent: { layout: { width: 188 } } });
+ jest.runAllTimers();
+ });
+
+ expect(
+ getContainerStyles(component).some((style) => style?.width === 188)
+ ).toBe(true);
});
it('animates themed size changes when animateSize is enabled and snaps them when disabled', () => {
@@ -186,7 +622,9 @@ describe('AwesomeButton size behavior', () => {
expect(
getContainerStyles(animatedComponent).find(
- (style) => style && (isAnimatedValue(style.width) || isAnimatedValue(style.height))
+ (style) =>
+ style &&
+ (isAnimatedValue(style.width) || isAnimatedValue(style.height))
)
).toBeDefined();
@@ -206,7 +644,9 @@ describe('AwesomeButton size behavior', () => {
expect(
getContainerStyles(instantComponent).find(
- (style) => style && (isAnimatedValue(style.width) || isAnimatedValue(style.height))
+ (style) =>
+ style &&
+ (isAnimatedValue(style.width) || isAnimatedValue(style.height))
)
).toBeUndefined();
});
diff --git a/src/__tests__/textTransition.test.js b/src/__tests__/textTransition.test.js
index 23c975a..672bd62 100644
--- a/src/__tests__/textTransition.test.js
+++ b/src/__tests__/textTransition.test.js
@@ -1,13 +1,17 @@
import React from 'react';
-import { Text } from 'react-native';
+import { AccessibilityInfo, StyleSheet, Text } from 'react-native';
import renderer, { act } from 'react-test-renderer';
import AwesomeButton from '../Button';
import {
buildTextTransitionFrame,
+ buildTextTransitionFrameWithStagger,
getRandomTransitionCharacter,
+ getTextTransitionCharset,
+ getTextTransitionCollapseMs,
getTextTransitionRandomizeStartMs,
getTextTransitionTimeline,
runTextTransition,
+ splitTextGraphemes,
} from '../textTransition';
jest.mock('../helpers', () => {
@@ -38,6 +42,57 @@ const createButton = (element) => {
return component;
};
+const measureHiddenText = (component, width = 200) => {
+ const measurements = component.root.findAllByProps({
+ testID: 'aws-btn-hidden-measure',
+ });
+ if (measurements.length === 0) return false;
+
+ act(() => {
+ measurements[0].props.onLayout({
+ nativeEvent: { layout: { width } },
+ });
+ });
+
+ return true;
+};
+
+const layoutVisibleFace = (component, width) => {
+ act(() => {
+ component.root.findByProps({ testID: 'aws-btn-text' }).props.onLayout({
+ nativeEvent: { layout: { width } },
+ });
+ });
+};
+
+const acknowledgeVisibleText = (component) => {
+ act(() => {
+ component.root
+ .findByProps({ testID: 'aws-btn-content-text' })
+ .props.onTextLayout({
+ nativeEvent: { lines: [{}] },
+ });
+ });
+};
+
+const settleInitialAutoLabel = (component, width) => {
+ expect(measureHiddenText(component, width)).toBe(true);
+ expect(measureHiddenText(component, width)).toBe(true);
+ layoutVisibleFace(component, width);
+};
+
+const getRenderedWidth = (component) => {
+ const style = component.root.findByProps({
+ testID: 'aws-btn-content-2',
+ }).props.style;
+ const animatedStyle = style.find(
+ (entry) => entry?.width && typeof entry.width.__getValue === 'function'
+ );
+ return animatedStyle
+ ? animatedStyle.width.__getValue()
+ : StyleSheet.flatten(style).width;
+};
+
const installAnimationFrameMock = () => {
const originalRequestAnimationFrame = global.requestAnimationFrame;
const originalCancelAnimationFrame = global.cancelAnimationFrame;
@@ -70,49 +125,76 @@ describe('text transition helpers', () => {
restoreAnimationFrame();
});
- it('preserves spaces while scrambling and uses the correct character pools', () => {
+ it('uses the exact canonical pools and preserves unsupported graphemes', () => {
+ const lowercasePools = ['iljtfr', 'acesuvxznhok', 'mwdbpqgy'];
+ expect([...lowercasePools.join('')].sort().join('')).toBe(
+ [...'abcdefghijklmnopqrstuvwxyz'].sort().join('')
+ );
+ expect(new Set(lowercasePools.join('')).size).toBe(26);
+ expect(getTextTransitionCharset('k')).toBe('acesuvxznhok');
+ expect(getTextTransitionCharset('K')).toBe('ACESUVXZNHOK');
expect(buildTextTransitionFrame('A a0#', 'B b1?', 20, () => 0.5)[1]).toBe(
' '
);
- expect(getRandomTransitionCharacter('A', () => 0.4)).toMatch(/[A-Z]/);
- expect(getRandomTransitionCharacter('z', () => 0.4)).toMatch(/[a-z]/);
+ expect(getRandomTransitionCharacter('A', () => 0.4)).toMatch(
+ /[ACESUVXZNHOK]/
+ );
+ expect(getRandomTransitionCharacter('z', () => 0.4)).toMatch(
+ /[acesuvxznhok]/
+ );
expect(getRandomTransitionCharacter('4', () => 0.4)).toMatch(/[0-9]/);
expect(getRandomTransitionCharacter('#', () => 0.4)).toMatch(/[#%&^+=-]/);
+ ['é', 'e\u0301', '?', 'م', 'ש', '👨👩👧👦'].forEach((grapheme) => {
+ expect(getRandomTransitionCharacter(grapheme, () => 0.4)).toBe(grapheme);
+ });
});
- it('randomizes current slots first, expands, then collapses left-to-right', () => {
+ it('indexes Unicode grapheme clusters rather than UTF-16 code units', () => {
+ expect(splitTextGraphemes('e\u0301👨👩👧👦🇧🇷')).toEqual(['e\u0301', '👨👩👧👦', '🇧🇷']);
+ expect(getTextTransitionTimeline('🙂', '👨👩👧👦🇧🇷').targetLength).toBe(2);
+ });
+
+ it('uses the 7 ms timeline and logical growth collapse ordering', () => {
const timeline = getTextTransitionTimeline('hello', 'welcome2');
- expect(timeline.lastSourceRandomizeStartMs).toBe(20);
- expect(timeline.lastRandomizeStartMs).toBe(35);
- expect(timeline.collapseStartMs).toBe(45);
- expect(getTextTransitionRandomizeStartMs(4, 5, 8)).toBe(20);
- expect(getTextTransitionRandomizeStartMs(5, 5, 8)).toBe(25);
- expect(getTextTransitionRandomizeStartMs(7, 5, 8)).toBe(35);
+ expect(timeline.lastSourceRandomizeStartMs).toBe(28);
+ expect(timeline.lastRandomizeStartMs).toBe(49);
+ expect(timeline.collapseStartMs).toBe(59);
+ expect(timeline.totalDurationMs).toBe(108);
+ expect(getTextTransitionRandomizeStartMs(4, 5, 8)).toBe(28);
+ expect(getTextTransitionRandomizeStartMs(5, 5, 8)).toBe(35);
+ expect(getTextTransitionRandomizeStartMs(7, 5, 8)).toBe(49);
- expect(buildTextTransitionFrame('hello', 'welcome2', 24, () => 0)).toHaveLength(
- 5
- );
- expect(buildTextTransitionFrame('hello', 'welcome2', 25, () => 0)).toHaveLength(
- 6
- );
- expect(buildTextTransitionFrame('hello', 'welcome2', 35, () => 0)).toHaveLength(
- 8
- );
- expect(buildTextTransitionFrame('hello', 'welcome2', 44, () => 0)[0]).not.toBe(
- 'w'
- );
- expect(buildTextTransitionFrame('hello', 'welcome2', 45, () => 0)[0]).toBe(
+ expect(
+ buildTextTransitionFrame('hello', 'welcome2', 34, () => 0)
+ ).toHaveLength(5);
+ expect(
+ buildTextTransitionFrame('hello', 'welcome2', 35, () => 0)
+ ).toHaveLength(6);
+ expect(
+ buildTextTransitionFrame('hello', 'welcome2', 49, () => 0)
+ ).toHaveLength(8);
+ expect(
+ buildTextTransitionFrame('hello', 'welcome2', 58, () => 0)[0]
+ ).not.toBe('w');
+ expect(buildTextTransitionFrame('hello', 'welcome2', 59, () => 0)[0]).toBe(
'w'
);
});
- it('keeps trailing source slots until they collapse when the target is shorter', () => {
+ it('removes trailing shrink slots before resolving retained slots', () => {
const timeline = getTextTransitionTimeline('welcome2', 'go');
- expect(timeline.collapseStartMs).toBe(45);
- expect(buildTextTransitionFrame('welcome2', 'go', 32, () => 0)).toHaveLength(8);
- expect(buildTextTransitionFrame('welcome2', 'go', 54, () => 0)).toHaveLength(8);
+ expect(timeline.collapseStartMs).toBe(59);
+ expect(getTextTransitionCollapseMs(7, timeline)).toBe(59);
+ expect(getTextTransitionCollapseMs(6, timeline)).toBe(66);
+ expect(getTextTransitionCollapseMs(0, timeline)).toBe(101);
+ expect(
+ buildTextTransitionFrame('welcome2', 'go', 58, () => 0)
+ ).toHaveLength(8);
+ expect(
+ buildTextTransitionFrame('welcome2', 'go', 59, () => 0)
+ ).toHaveLength(7);
expect(
buildTextTransitionFrame(
'welcome2',
@@ -123,6 +205,20 @@ describe('text transition helpers', () => {
).toBe('go');
});
+ it('supports a zero stagger without division or scheduling failure', () => {
+ const timeline = getTextTransitionTimeline('Save', 'Open', 0);
+ expect(timeline.collapseStartMs).toBe(10);
+ expect(timeline.totalDurationMs).toBe(10);
+ expect(
+ buildTextTransitionFrameWithStagger({
+ fromText: 'Save',
+ targetText: 'Open',
+ elapsedMs: 10,
+ slotStaggerMs: 0,
+ })
+ ).toBe('Open');
+ });
+
it('stops a running transition when interrupted', () => {
const updates = [];
const transition = runTextTransition({
@@ -194,19 +290,46 @@ describe('AwesomeButton textTransition', () => {
);
});
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-view' }).props
+ .accessibilityLabel
+ ).toBe('Mission#42');
+
act(() => {
jest.advanceTimersByTime(48);
});
+ expect(measureHiddenText(component)).toBe(true);
expect(getRenderedText(component)).not.toBe('Go#3');
expect(getRenderedText(component)).not.toBe('Mission#42');
- expect(getRenderedText(component)).toHaveLength(7);
+ expect(
+ splitTextGraphemes(getRenderedText(component)).length
+ ).toBeGreaterThan(4);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ ).toEqual(
+ expect.objectContaining({
+ accessible: false,
+ ellipsizeMode: 'clip',
+ numberOfLines: 1,
+ })
+ );
act(() => {
jest.runAllTimers();
});
+ expect(measureHiddenText(component)).toBe(true);
expect(getRenderedText(component)).toBe('Mission#42');
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBe(1);
+ acknowledgeVisibleText(component);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBeUndefined();
});
it('does not hard truncate shorter targets before the collapse phase finishes', () => {
@@ -227,14 +350,233 @@ describe('AwesomeButton textTransition', () => {
act(() => {
jest.advanceTimersByTime(48);
});
+ expect(measureHiddenText(component)).toBe(true);
expect(getRenderedText(component)).toHaveLength(10);
+ expect(
+ component.root.findAll(
+ (node) =>
+ StyleSheet.flatten(node.props.style)?.justifyContent === 'flex-start'
+ ).length
+ ).toBeGreaterThan(0);
act(() => {
jest.runAllTimers();
});
+ expect(measureHiddenText(component)).toBe(true);
expect(getRenderedText(component)).toBe('Go#3');
+ acknowledgeVisibleText(component);
+ expect(
+ component.root.findAll(
+ (node) =>
+ StyleSheet.flatten(node.props.style)?.justifyContent === 'flex-start'
+ )
+ ).toHaveLength(0);
+ });
+
+ it('holds an auto-width candidate until the rendered face can fit it', () => {
+ const component = createButton(
+
+ Go
+
+ );
+ settleInitialAutoLabel(component, 80);
+
+ act(() => {
+ component.update(
+
+ Mission
+
+ );
+ });
+ expect(measureHiddenText(component, 160)).toBe(true);
+
+ act(() => {
+ jest.advanceTimersByTime(48);
+ });
+ expect(
+ component.root.findAllByProps({ testID: 'aws-btn-hidden-measure-text' })
+ ).toHaveLength(0);
+ act(() => {
+ jest.advanceTimersByTime(16);
+ });
+ const candidate = component.root.findByProps({
+ testID: 'aws-btn-hidden-measure-text',
+ }).props.children;
+ expect(measureHiddenText(component, 120)).toBe(true);
+ expect(getRenderedText(component)).toBe('Go');
+
+ layoutVisibleFace(component, 160);
+ act(() => {
+ jest.advanceTimersByTime(64);
+ });
+
+ expect(getRenderedText(component)).toBe(candidate);
+ });
+
+ it('rejects an obsolete native measurement after target replacement', () => {
+ const component = createButton(
+
+ Alpha
+
+ );
+
+ act(() => {
+ component.update(
+
+ Bravo
+
+ );
+ });
+ act(() => {
+ jest.advanceTimersByTime(16);
+ });
+ const obsoleteOnLayout = component.root.findByProps({
+ testID: 'aws-btn-hidden-measure',
+ }).props.onLayout;
+
+ act(() => {
+ component.update(
+
+ Charlie
+
+ );
+ });
+ act(() => {
+ obsoleteOnLayout({
+ nativeEvent: { layout: { width: 999 } },
+ });
+ });
+ act(() => {
+ jest.advanceTimersByTime(16);
+ });
+
+ expect(getRenderedText(component)).toBe('Alpha');
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-hidden-measure-text' })
+ .props.children
+ ).not.toBe('Bravo');
+
+ expect(measureHiddenText(component)).toBe(true);
+ act(() => {
+ jest.runAllTimers();
+ });
+ expect(measureHiddenText(component)).toBe(true);
+ expect(getRenderedText(component)).toBe('Charlie');
+ });
+
+ it('settles auto geometry before text when animateSize is disabled', () => {
+ const component = createButton(
+
+ Go
+
+ );
+ settleInitialAutoLabel(component, 80);
+
+ act(() => {
+ component.update(
+
+ Mission
+
+ );
+ });
+ expect(measureHiddenText(component, 160)).toBe(true);
+
+ expect(getRenderedWidth(component)).toBe(160);
+ expect(getRenderedText(component)).toBe('Go');
+ layoutVisibleFace(component, 160);
+
+ act(() => {
+ jest.advanceTimersByTime(16);
+ });
+ expect(measureHiddenText(component, 150)).toBe(true);
+ expect(getRenderedText(component)).not.toBe('Go');
+ });
+
+ it('never renders a shrinking auto width below the accepted frame floor', () => {
+ const component = createButton(
+
+ Mission
+
+ );
+ settleInitialAutoLabel(component, 200);
+
+ act(() => {
+ component.update(
+
+ Go
+
+ );
+ });
+ expect(measureHiddenText(component, 80)).toBe(true);
+ act(() => {
+ jest.advanceTimersByTime(16);
+ });
+ expect(measureHiddenText(component, 190)).toBe(true);
+
+ act(() => {
+ jest.advanceTimersByTime(160);
+ });
+ expect(getRenderedWidth(component)).toBeGreaterThanOrEqual(190);
+
+ act(() => {
+ jest.runAllTimers();
+ });
+ expect(measureHiddenText(component, 80)).toBe(true);
+ expect(getRenderedText(component)).toBe('Go');
+ acknowledgeVisibleText(component);
+ expect(getRenderedWidth(component)).toBe(80);
+ });
+
+ it('uses clipped single-line fallback after an auto width is externally constrained', () => {
+ const component = createButton(
+
+ Go
+
+ );
+ settleInitialAutoLabel(component, 80);
+
+ act(() => {
+ component.update(
+
+ Mission control
+
+ );
+ });
+ expect(measureHiddenText(component, 240)).toBe(true);
+ act(() => {
+ jest.advanceTimersByTime(96);
+ });
+ const constrainedCandidate = component.root.findByProps({
+ testID: 'aws-btn-hidden-measure-text',
+ }).props.children;
+ expect(measureHiddenText(component, 210)).toBe(true);
+ expect(getRenderedText(component)).toBe('Go');
+
+ act(() => {
+ jest.runAllTimers();
+ });
+ layoutVisibleFace(component, 160);
+
+ expect(getRenderedText(component)).toBe(constrainedCandidate);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ ).toEqual(
+ expect.objectContaining({ ellipsizeMode: 'clip', numberOfLines: 1 })
+ );
+
+ expect(measureHiddenText(component, 240)).toBe(true);
+ expect(getRenderedText(component)).toBe('Mission control');
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBe(1);
+ acknowledgeVisibleText(component);
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBeUndefined();
});
it('keeps unchanged labels stable and swaps non-transition labels only after the width phase they require', () => {
@@ -326,6 +668,7 @@ describe('AwesomeButton textTransition', () => {
act(() => {
jest.advanceTimersByTime(48);
});
+ expect(measureHiddenText(component)).toBe(true);
const midTransitionText = getRenderedText(component);
@@ -340,14 +683,125 @@ describe('AwesomeButton textTransition', () => {
act(() => {
jest.advanceTimersByTime(16);
});
+ expect(measureHiddenText(component)).toBe(true);
- expect(midTransitionText).toHaveLength(7);
- expect(getRenderedText(component)).toHaveLength(7);
+ expect(splitTextGraphemes(midTransitionText).length).toBeGreaterThan(4);
+ expect(splitTextGraphemes(getRenderedText(component))).toHaveLength(
+ splitTextGraphemes(midTransitionText).length
+ );
act(() => {
jest.runAllTimers();
});
+ expect(measureHiddenText(component)).toBe(true);
expect(getRenderedText(component)).toBe('Go#3');
});
+
+ it('restores the fitting source when textTransition is disabled mid-growth', () => {
+ const random = jest.spyOn(Math, 'random').mockReturnValue(0.25);
+ const component = createButton(
+ Open
+ );
+ settleInitialAutoLabel(component, 76);
+
+ act(() => {
+ component.update(
+ Open analytics dashboard
+ );
+ });
+ expect(measureHiddenText(component, 212)).toBe(true);
+ let publishedTransient = false;
+ for (let frame = 0; frame < 12 && !publishedTransient; frame += 1) {
+ act(() => {
+ jest.advanceTimersByTime(16);
+ });
+ measureHiddenText(component, 70);
+ const rendered = getRenderedText(component);
+ publishedTransient =
+ rendered !== 'Open' && rendered !== 'Open analytics dashboard';
+ }
+ expect(publishedTransient).toBe(true);
+ expect(getRenderedText(component)).not.toBe('Open');
+ expect(getRenderedText(component)).not.toBe('Open analytics dashboard');
+
+ act(() => {
+ component.update(Open analytics dashboard);
+ });
+ expect(getRenderedText(component)).toBe('Open');
+ expect(measureHiddenText(component, 212)).toBe(true);
+
+ act(() => {
+ jest.runAllTimers();
+ });
+ layoutVisibleFace(component, 212);
+ expect(getRenderedText(component)).toBe('Open analytics dashboard');
+ acknowledgeVisibleText(component);
+ random.mockRestore();
+ });
+
+ it('settles without random frames when Reduced Motion is enabled initially', async () => {
+ jest
+ .spyOn(AccessibilityInfo, 'isReduceMotionEnabled')
+ .mockResolvedValue(true);
+ const component = createButton(
+
+ Alpha
+
+ );
+ await act(async () => Promise.resolve());
+
+ act(() => {
+ component.update(
+
+ Bravo
+
+ );
+ });
+
+ expect(getRenderedText(component)).toBe('Bravo');
+ expect(
+ component.root.findByProps({ testID: 'aws-btn-content-text' }).props
+ .numberOfLines
+ ).toBeUndefined();
+ });
+
+ it('invalidates an active generation when Reduced Motion changes', async () => {
+ let reduceMotionListener;
+ jest
+ .spyOn(AccessibilityInfo, 'isReduceMotionEnabled')
+ .mockResolvedValue(false);
+ jest
+ .spyOn(AccessibilityInfo, 'addEventListener')
+ .mockImplementation((_eventName, listener) => {
+ reduceMotionListener = listener;
+ return { remove: jest.fn() };
+ });
+ const component = createButton(
+
+ Alpha
+
+ );
+ await act(async () => Promise.resolve());
+
+ act(() => {
+ component.update(
+
+ Charlie
+
+ );
+ });
+ act(() => {
+ jest.advanceTimersByTime(32);
+ });
+ expect(measureHiddenText(component)).toBe(true);
+ expect(getRenderedText(component)).not.toBe('Charlie');
+
+ act(() => {
+ reduceMotionListener(true);
+ });
+
+ expect(getRenderedText(component)).toBe('Charlie');
+ expect(jest.getTimerCount()).toBe(0);
+ });
});
diff --git a/src/__tests__/themes.test.js b/src/__tests__/themes.test.js
index b3b1ca9..421f613 100644
--- a/src/__tests__/themes.test.js
+++ b/src/__tests__/themes.test.js
@@ -6,7 +6,10 @@ import {
interpolateThemeButtonStyle,
default as blendColors,
} from '../themed/colors';
-import { areThemeButtonStylesEqual } from '../themed/resolution';
+import {
+ areThemeButtonStylesEqual,
+ resolveButtonType,
+} from '../themed/resolution';
import getTheme from '../themed/themes';
import { runTimedTransition } from '../themed/transition';
@@ -42,6 +45,7 @@ const EXPECTED_VARIANTS = [
'secondary',
'twitter',
'whatsapp',
+ 'x',
'youtube',
];
@@ -97,11 +101,7 @@ describe('theme helpers', () => {
it('interpolates colors across hex and rgba values', () => {
expect(interpolateColors('#000000', '#ffffff', 0.5)).toBe('#808080');
expect(
- interpolateColors(
- 'rgba(0, 0, 0, 0.2)',
- 'rgba(255, 255, 255, 0.8)',
- 0.5
- )
+ interpolateColors('rgba(0, 0, 0, 0.2)', 'rgba(255, 255, 255, 0.8)', 0.5)
).toBe('rgba(128, 128, 128, 0.5)');
});
@@ -169,6 +169,24 @@ describe('theme helpers', () => {
expect(getTheme(null, 'does-not-exist').name).toBe('basic');
});
+ it('keeps explicitly requested flat styling while disabled', () => {
+ const theme = getTheme(0);
+
+ expect(resolveButtonType(theme, true, true, 'anchor')).toBe('flat');
+ expect(resolveButtonType(theme, true, false, 'flat')).toBe('flat');
+ expect(resolveButtonType(theme, true, false, 'anchor')).toBe('disabled');
+ });
+
+ it('renders a disabled flat themed button without depth paint', () => {
+ const component = createThemedButton(
+
+ Flat disabled
+
+ );
+
+ expect(getBottomBackground(component)).toBe('rgba(0, 0, 0, 0)');
+ });
+
it('exposes the exact registered themes, variants, and sizes', () => {
EXPECTED_THEME_NAMES.forEach((themeName, index) => {
const theme = getTheme(index, themeName);
@@ -189,6 +207,17 @@ describe('theme helpers', () => {
expect(getFaceBackground(component)).toBe('#4688C5');
});
+ it('falls back to package defaults when both requested and primary styles are absent', () => {
+ const basic = getTheme(0);
+ const component = createThemedButton(
+
+ Fallback
+
+ );
+
+ expect(getFaceBackground(component)).toBe('#c0c0c0');
+ });
+
it('makes themed transparent buttons visually transparent while keeping feedback layers', () => {
const component = createThemedButton(
Transparent
@@ -231,6 +260,29 @@ describe('theme helpers', () => {
expect(getFaceBackground(component)).toBe('#FFF');
});
+ it('leaves direct themed style changes to animationDuration when no theme transition owns the frames', () => {
+ const component = createThemedButton(
+
+ Styled
+
+ );
+ runTimedTransition.mockClear();
+
+ act(() => {
+ component.update(
+
+ Styled
+
+ );
+ });
+
+ expect(getLatestTransitionOptions()).toMatchObject({ duration: 480 });
+ });
+
it('updates text and face colors through the transition lifecycle', () => {
const component = createThemedButton(
Animated
diff --git a/src/button/ButtonInteractionSurface.tsx b/src/button/ButtonInteractionSurface.tsx
new file mode 100644
index 0000000..5f40438
--- /dev/null
+++ b/src/button/ButtonInteractionSurface.tsx
@@ -0,0 +1,192 @@
+import React, { useCallback, useMemo, type ReactNode } from 'react';
+import {
+ Platform,
+ Pressable,
+ type AccessibilityActionEvent,
+ type GestureResponderEvent,
+ type PressableProps,
+} from 'react-native';
+import { getLongPressAccessibilityLabel } from '../localization';
+import { styles } from '../styles';
+import type { AwesomeButtonPressableProps } from '../types';
+
+const getMergedAccessibilityState = (
+ accessibilityState: PressableProps['accessibilityState'],
+ {
+ busy,
+ disabled,
+ }: {
+ busy: boolean;
+ disabled: boolean;
+ }
+) => {
+ const nextState = {
+ ...accessibilityState,
+ };
+
+ if (disabled || nextState.disabled !== undefined) {
+ nextState.disabled = Boolean(disabled || nextState.disabled);
+ }
+
+ if (busy || nextState.busy !== undefined) {
+ nextState.busy = Boolean(busy || nextState.busy);
+ }
+
+ return Object.keys(nextState).length > 0 ? nextState : undefined;
+};
+
+type ButtonInteractionSurfaceProps = {
+ accessibilityHint?: string;
+ accessibilityLabel?: string;
+ accessibilityLongPressLabel?: string;
+ activity: boolean;
+ children: ReactNode;
+ dangerouslySetPressableProps: AwesomeButtonPressableProps;
+ disabled: boolean;
+ fallbackAccessibilityLabel?: string;
+ hasAccessibleLongPress: boolean;
+ hasRenderableChildren: boolean;
+ hitSlop?: PressableProps['hitSlop'];
+ minimumTarget: number;
+ onAtomicLongPress: () => void;
+ onPress: () => void;
+ onPressIn: (event: GestureResponderEvent) => void;
+ onPressOut: (event: GestureResponderEvent) => void;
+ stretch: boolean;
+};
+
+const ButtonInteractionSurface = ({
+ accessibilityHint,
+ accessibilityLabel,
+ accessibilityLongPressLabel,
+ activity,
+ children,
+ dangerouslySetPressableProps,
+ disabled,
+ fallbackAccessibilityLabel,
+ hasAccessibleLongPress,
+ hasRenderableChildren,
+ hitSlop,
+ minimumTarget,
+ onAtomicLongPress,
+ onPress,
+ onPressIn,
+ onPressOut,
+ stretch,
+}: ButtonInteractionSurfaceProps) => {
+ const {
+ accessibilityActions: dangerousAccessibilityActions,
+ accessibilityHint: dangerousAccessibilityHint,
+ accessibilityLabel: dangerousAccessibilityLabel,
+ accessibilityRole: dangerousAccessibilityRole,
+ accessibilityState: dangerousAccessibilityState,
+ children: _ignoredDangerousChildren,
+ hitSlop: dangerousHitSlop,
+ onLongPress: _ignoredDangerousOnLongPress,
+ onAccessibilityAction: dangerousOnAccessibilityAction,
+ onPress: _ignoredDangerousOnPress,
+ onPressIn: _ignoredDangerousOnPressIn,
+ onPressOut: _ignoredDangerousOnPressOut,
+ style: dangerousPressableStyle,
+ ...safePressableProps
+ } = dangerouslySetPressableProps as PressableProps & {
+ children?: ReactNode;
+ };
+ const pressableHitSlop = hitSlop ?? dangerousHitSlop;
+ const accessibilityRole = dangerousAccessibilityRole ?? 'button';
+ const effectiveDisabled = disabled || activity || !hasRenderableChildren;
+ const effectiveAccessibilityLabel =
+ accessibilityLabel ??
+ dangerousAccessibilityLabel ??
+ fallbackAccessibilityLabel;
+ const effectiveAccessibilityHint =
+ accessibilityHint ?? dangerousAccessibilityHint;
+ const longAccessibilityActionName =
+ Platform.OS === 'ios' ? 'awesome-button-long-press' : 'longpress';
+ const accessibilityActions = useMemo(() => {
+ const reservedNames = new Set([
+ 'activate',
+ 'longpress',
+ 'awesome-button-long-press',
+ ]);
+ const consumerActions = (dangerousAccessibilityActions ?? []).filter(
+ (action) => !reservedNames.has(action.name)
+ );
+ const ownedActions: Array<{ name: string; label?: string }> = [];
+
+ if (!effectiveDisabled && hasAccessibleLongPress) {
+ ownedActions.push({
+ name: longAccessibilityActionName,
+ label:
+ accessibilityLongPressLabel ??
+ (Platform.OS === 'ios'
+ ? getLongPressAccessibilityLabel()
+ : undefined),
+ });
+ }
+
+ return [...consumerActions, ...ownedActions];
+ }, [
+ accessibilityLongPressLabel,
+ dangerousAccessibilityActions,
+ effectiveDisabled,
+ hasAccessibleLongPress,
+ longAccessibilityActionName,
+ ]);
+ const onAccessibilityAction = useCallback(
+ (event: AccessibilityActionEvent) => {
+ const actionName = event.nativeEvent.actionName;
+ if (actionName === 'activate') {
+ return;
+ }
+ if (
+ actionName === 'longpress' ||
+ actionName === 'awesome-button-long-press'
+ ) {
+ onAtomicLongPress();
+ return;
+ }
+ dangerousOnAccessibilityAction?.(event);
+ },
+ [dangerousOnAccessibilityAction, onAtomicLongPress]
+ );
+ const accessibilityState = useMemo(
+ () =>
+ getMergedAccessibilityState(dangerousAccessibilityState, {
+ busy: activity,
+ disabled: effectiveDisabled,
+ }),
+ [activity, dangerousAccessibilityState, effectiveDisabled]
+ );
+
+ return (
+ [
+ typeof dangerousPressableStyle === 'function'
+ ? dangerousPressableStyle(state)
+ : dangerousPressableStyle,
+ ...(stretch ? [styles.stretchTarget] : []),
+ styles.minimumTarget,
+ { minHeight: minimumTarget, minWidth: minimumTarget },
+ ]}
+ >
+ {children}
+
+ );
+};
+
+export default ButtonInteractionSurface;
diff --git a/src/button/ButtonVisualLayers.tsx b/src/button/ButtonVisualLayers.tsx
new file mode 100644
index 0000000..6e5b26a
--- /dev/null
+++ b/src/button/ButtonVisualLayers.tsx
@@ -0,0 +1,531 @@
+import React, { useMemo, type ReactNode } from 'react';
+import {
+ ActivityIndicator,
+ Animated,
+ I18nManager,
+ ScrollView,
+ Text,
+ View,
+ type ColorValue,
+ type LayoutChangeEvent,
+ type NativeSyntheticEvent,
+ type StyleProp,
+ type TextLayoutEventData,
+ type ViewStyle,
+} from 'react-native';
+import Placeholder from '../Placeholder';
+import type { HiddenMeasurementRequest } from '../size/useAutoWidthTextCoordinator';
+import { getStyles, styles } from '../styles';
+import {
+ getHiddenMeasurementContainerStyle,
+ getHiddenMeasurementTextStyle,
+ type SizeAnimatedStyles,
+} from '../useButtonSizeBehavior';
+
+type ButtonVisualLayersProps = {
+ activity: boolean;
+ activityColor: ColorValue;
+ activityOpacity: Animated.Value;
+ after: ReactNode;
+ alignTextLogicalLeading: boolean;
+ animatedActive: Animated.Value;
+ animatedLoading: Animated.Value;
+ animatedOpacity: Animated.Value;
+ animatedPlaceholder: boolean;
+ animatedValue: Animated.Value;
+ backgroundActive: ColorValue;
+ backgroundColor: ColorValue;
+ backgroundDarker: ColorValue;
+ backgroundPlaceholder: ColorValue;
+ backgroundProgress: ColorValue;
+ backgroundShadow: ColorValue;
+ before: ReactNode;
+ borderBottomLeftRadius?: number;
+ borderBottomRightRadius?: number;
+ borderColor?: ColorValue;
+ borderRadius: number;
+ borderTopLeftRadius?: number;
+ borderTopRightRadius?: number;
+ borderWidth: number;
+ children: ReactNode;
+ containerStyle?: StyleProp;
+ contentGap?: number;
+ displayedText: string | null;
+ extra: ReactNode;
+ hasPrimitiveTextChild: boolean;
+ hasRenderableChildren: boolean;
+ height: number;
+ measurementRequest: HiddenMeasurementRequest | null;
+ loadingOpacity: Animated.Value;
+ onAfterLayout: (event: LayoutChangeEvent) => void;
+ onBeforeLayout: (event: LayoutChangeEvent) => void;
+ onHiddenMeasurementLayout: (
+ request: HiddenMeasurementRequest,
+ event: LayoutChangeEvent
+ ) => void;
+ onVisibleContentLayout: (event: LayoutChangeEvent) => void;
+ onVisibleTextLayout: (
+ publicationId: number,
+ event: NativeSyntheticEvent
+ ) => void;
+ paddingBottom: number;
+ paddingHorizontal: number;
+ paddingTop: number;
+ progress: boolean;
+ raiseAmount: number;
+ reduceMotion: boolean;
+ resolvedWidth: number | null;
+ showProgressBar: boolean;
+ sizeAnimatedStyles: SizeAnimatedStyles;
+ stretch: boolean;
+ style?: StyleProp;
+ textColor: ColorValue;
+ textFontFamily?: string;
+ textLineHeight: number;
+ textOpacity: Animated.Value;
+ textSize: number;
+ transientTextFrame: boolean;
+ visibleTextPublicationId: number;
+ width: number | null;
+};
+
+const ButtonVisualLayers = ({
+ activity,
+ activityColor,
+ activityOpacity,
+ after,
+ alignTextLogicalLeading,
+ animatedActive,
+ animatedLoading,
+ animatedOpacity,
+ animatedPlaceholder,
+ animatedValue,
+ backgroundActive,
+ backgroundColor,
+ backgroundDarker,
+ backgroundPlaceholder,
+ backgroundProgress,
+ backgroundShadow,
+ before,
+ borderBottomLeftRadius,
+ borderBottomRightRadius,
+ borderColor,
+ borderRadius,
+ borderTopLeftRadius,
+ borderTopRightRadius,
+ borderWidth,
+ children,
+ containerStyle,
+ contentGap,
+ displayedText,
+ extra,
+ hasPrimitiveTextChild,
+ hasRenderableChildren,
+ height,
+ measurementRequest,
+ loadingOpacity,
+ onAfterLayout,
+ onBeforeLayout,
+ onHiddenMeasurementLayout,
+ onVisibleContentLayout,
+ onVisibleTextLayout,
+ paddingBottom,
+ paddingHorizontal,
+ paddingTop,
+ progress,
+ raiseAmount,
+ reduceMotion,
+ resolvedWidth,
+ showProgressBar,
+ sizeAnimatedStyles,
+ stretch,
+ style,
+ textColor,
+ textFontFamily,
+ textLineHeight,
+ textOpacity,
+ textSize,
+ transientTextFrame,
+ visibleTextPublicationId,
+ width,
+}: ButtonVisualLayersProps) => {
+ const dynamicStyles = useMemo(
+ () =>
+ getStyles({
+ backgroundActive,
+ backgroundColor,
+ backgroundDarker,
+ backgroundPlaceholder,
+ backgroundProgress,
+ backgroundShadow,
+ borderColor,
+ borderRadius,
+ borderBottomLeftRadius,
+ borderBottomRightRadius,
+ borderTopLeftRadius,
+ borderTopRightRadius,
+ borderWidth,
+ contentGap,
+ height,
+ paddingBottom,
+ paddingHorizontal,
+ paddingTop,
+ raiseLevel: raiseAmount,
+ stateWidth: width === null && stretch !== true ? resolvedWidth : null,
+ stretch,
+ textColor,
+ textFontFamily,
+ textLineHeight,
+ textSize,
+ width,
+ }),
+ [
+ backgroundActive,
+ backgroundColor,
+ backgroundDarker,
+ backgroundPlaceholder,
+ backgroundProgress,
+ backgroundShadow,
+ borderBottomLeftRadius,
+ borderBottomRightRadius,
+ borderColor,
+ borderRadius,
+ borderTopLeftRadius,
+ borderTopRightRadius,
+ borderWidth,
+ contentGap,
+ height,
+ paddingBottom,
+ paddingHorizontal,
+ paddingTop,
+ raiseAmount,
+ resolvedWidth,
+ stretch,
+ textColor,
+ textFontFamily,
+ textLineHeight,
+ textSize,
+ width,
+ ]
+ );
+ const animatedValues = useMemo(() => {
+ const offsetWidth = resolvedWidth
+ ? resolvedWidth * (I18nManager.isRTL ? 1 : -1)
+ : 0;
+
+ return {
+ animatedActivity: {
+ opacity: activityOpacity,
+ transform: [{ scale: activityOpacity }],
+ },
+ animatedActive: { opacity: animatedActive },
+ animatedContainer: { opacity: animatedOpacity },
+ animatedContent: {
+ transform: [
+ {
+ translateY: animatedValue.interpolate({
+ inputRange: [0, 1],
+ outputRange: [0, raiseAmount],
+ }),
+ },
+ ],
+ },
+ animatedProgress: {
+ opacity: loadingOpacity,
+ transform: [
+ {
+ translateX: animatedLoading.interpolate({
+ inputRange: [0, 1],
+ outputRange: [offsetWidth, 0],
+ }),
+ },
+ ],
+ },
+ animatedShadow: {
+ transform: [
+ {
+ translateY: animatedValue.interpolate({
+ inputRange: [0, 1],
+ outputRange: [0, -raiseAmount / 2],
+ }),
+ },
+ ],
+ },
+ };
+ }, [
+ activityOpacity,
+ animatedActive,
+ animatedLoading,
+ animatedOpacity,
+ animatedValue,
+ loadingOpacity,
+ raiseAmount,
+ resolvedWidth,
+ ]);
+ const animatedTextStyle = useMemo(
+ () => ({
+ opacity: textOpacity,
+ transform: [{ scale: textOpacity }],
+ }),
+ [textOpacity]
+ );
+ const hiddenMeasurementContainerStyle = useMemo(
+ () =>
+ getHiddenMeasurementContainerStyle({
+ borderWidth,
+ contentGap,
+ paddingBottom,
+ paddingHorizontal,
+ paddingTop,
+ }),
+ [borderWidth, contentGap, paddingBottom, paddingHorizontal, paddingTop]
+ );
+ const hiddenMeasurementTextStyle = useMemo(
+ () =>
+ getHiddenMeasurementTextStyle({
+ textColor,
+ textFontFamily,
+ textLineHeight,
+ textSize,
+ }),
+ [textColor, textFontFamily, textLineHeight, textSize]
+ );
+ const renderActivity = useMemo(() => {
+ if (!activity) return null;
+
+ return (
+ <>
+ {showProgressBar ? (
+
+
+
+ ) : null}
+
+
+
+ >
+ );
+ }, [
+ activity,
+ activityColor,
+ animatedValues.animatedActivity,
+ animatedValues.animatedProgress,
+ dynamicStyles.progress,
+ showProgressBar,
+ sizeAnimatedStyles.progress,
+ ]);
+ const renderContent = useMemo(() => {
+ if (!hasRenderableChildren) {
+ return (
+
+ );
+ }
+
+ const content = hasPrimitiveTextChild ? (
+
+ onVisibleTextLayout(visibleTextPublicationId, event)
+ }
+ >
+ {typeof children === 'string' ? displayedText ?? children : children}
+
+ ) : (
+ children
+ );
+
+ return (
+
+ {before !== null && before !== undefined ? (
+
+ {before}
+
+ ) : null}
+ {content}
+ {after !== null && after !== undefined ? (
+
+ {after}
+
+ ) : null}
+
+ );
+ }, [
+ after,
+ alignTextLogicalLeading,
+ animatedPlaceholder,
+ animatedTextStyle,
+ before,
+ children,
+ displayedText,
+ dynamicStyles.container__placeholder,
+ dynamicStyles.container__text,
+ dynamicStyles.container__view,
+ hasPrimitiveTextChild,
+ hasRenderableChildren,
+ onAfterLayout,
+ onBeforeLayout,
+ onVisibleTextLayout,
+ reduceMotion,
+ transientTextFrame,
+ visibleTextPublicationId,
+ ]);
+ const suppressProgressDarkening = progress && activity && !showProgressBar;
+
+ return (
+
+
+
+
+
+
+
+
+
+ {extra}
+
+
+
+ {renderContent}
+ {renderActivity}
+
+
+
+ {measurementRequest !== null ? (
+
+
+ onHiddenMeasurementLayout(measurementRequest, event)
+ }
+ >
+ {measurementRequest.hasBefore ? (
+
+ ) : null}
+
+ {measurementRequest.text}
+
+ {measurementRequest.hasAfter ? (
+
+ ) : null}
+
+
+ ) : null}
+
+
+ );
+};
+
+export default ButtonVisualLayers;
diff --git a/src/button/normalizeButtonInputs.ts b/src/button/normalizeButtonInputs.ts
new file mode 100644
index 0000000..c7d283b
--- /dev/null
+++ b/src/button/normalizeButtonInputs.ts
@@ -0,0 +1,179 @@
+import {
+ ANIMATED_TIMING_LOADING,
+ DEFAULT_ACTIVE_OPACITY,
+ DEFAULT_BORDER_RADIUS,
+ DEFAULT_BORDER_WIDTH,
+ DEFAULT_DEBOUNCED_PRESS_TIME,
+ DEFAULT_HEIGHT,
+ DEFAULT_HORIZONTAL_PADDING,
+ DEFAULT_LINE_HEIGHT,
+ DEFAULT_RAISE_LEVEL,
+ DEFAULT_TEXT_SIZE,
+ DEFAULT_WIDTH,
+} from '../constants';
+import {
+ normalizeNonNegative,
+ normalizeOpacity,
+ normalizeOptionalNonNegative,
+ normalizeOptionalNumber,
+} from '../normalization';
+import type { AwesomeButtonStyle, ButtonWidth } from '../types';
+
+type NormalizeButtonInputsOptions = {
+ activeOpacity: number;
+ borderBottomLeftRadius?: number;
+ borderBottomRightRadius?: number;
+ borderLeftBottomRadius?: number;
+ borderRadius: number;
+ borderTopLeftRadius?: number;
+ borderTopRightRadius?: number;
+ borderWidth: number;
+ buttonStyle?: AwesomeButtonStyle;
+ debouncedPressTime: number;
+ faceHeight?: number;
+ fontScale: number;
+ hasPrimitiveTextChild: boolean;
+ height: number;
+ paddingBottom: number;
+ paddingHorizontal: number;
+ paddingTop: number;
+ progressLoadingTime: number;
+ raiseLevel: number;
+ textLineHeight: number;
+ textSize: number;
+ width: ButtonWidth;
+};
+
+export type NormalizedButtonInputs = {
+ activeOpacity: number;
+ animationDuration?: number;
+ borderBottomLeftRadius?: number;
+ borderBottomRightRadius?: number;
+ borderRadius: number;
+ borderTopLeftRadius?: number;
+ borderTopRightRadius?: number;
+ borderWidth: number;
+ contentGap?: number;
+ debouncedPressTime: number;
+ geometryHeight: number;
+ paddingBottom: number;
+ paddingHorizontal: number;
+ paddingTop: number;
+ pressInAnimationDuration?: number;
+ progressLoadingTime: number;
+ raiseAmount: number;
+ textLineHeight: number;
+ textSize: number;
+ width: number | null;
+};
+
+export const normalizeButtonInputs = ({
+ activeOpacity,
+ borderBottomLeftRadius,
+ borderBottomRightRadius,
+ borderLeftBottomRadius,
+ borderRadius,
+ borderTopLeftRadius,
+ borderTopRightRadius,
+ borderWidth,
+ buttonStyle,
+ debouncedPressTime,
+ faceHeight,
+ fontScale,
+ hasPrimitiveTextChild,
+ height,
+ paddingBottom,
+ paddingHorizontal,
+ paddingTop,
+ progressLoadingTime,
+ raiseLevel,
+ textLineHeight,
+ textSize,
+ width,
+}: NormalizeButtonInputsOptions): NormalizedButtonInputs => {
+ const normalizedLegacyHeight = normalizeNonNegative(height, DEFAULT_HEIGHT);
+ const normalizedFaceHeight = normalizeOptionalNonNegative(faceHeight);
+ const normalizedPaddingHorizontal =
+ normalizeOptionalNonNegative(buttonStyle?.paddingHorizontal) ??
+ normalizeNonNegative(paddingHorizontal, DEFAULT_HORIZONTAL_PADDING);
+ const normalizedPaddingTop =
+ normalizeOptionalNonNegative(buttonStyle?.paddingTop) ??
+ normalizeNonNegative(paddingTop, 0);
+ const normalizedPaddingBottom =
+ normalizeOptionalNonNegative(buttonStyle?.paddingBottom) ??
+ normalizeNonNegative(paddingBottom, 0);
+ const normalizedRaiseAmount =
+ normalizeOptionalNonNegative(buttonStyle?.raiseAmount) ??
+ normalizeNonNegative(raiseLevel, DEFAULT_RAISE_LEVEL);
+ const normalizedTextLineHeight =
+ normalizeOptionalNonNegative(buttonStyle?.textLineHeight) ??
+ normalizeNonNegative(textLineHeight, DEFAULT_LINE_HEIGHT);
+ const bridgeGeometryHeight =
+ normalizedFaceHeight === undefined
+ ? normalizedLegacyHeight
+ : Math.max(
+ 0,
+ normalizedFaceHeight +
+ normalizedRaiseAmount -
+ normalizedPaddingTop -
+ normalizedPaddingBottom
+ );
+ const accessibilityGrowthHeight =
+ hasPrimitiveTextChild && fontScale > 1
+ ? normalizedTextLineHeight * fontScale + normalizedRaiseAmount
+ : 0;
+
+ return {
+ activeOpacity: normalizeOpacity(
+ normalizeOptionalNumber(buttonStyle?.activeOpacity) ?? activeOpacity,
+ DEFAULT_ACTIVE_OPACITY
+ ),
+ animationDuration: normalizeOptionalNonNegative(
+ buttonStyle?.animationDuration
+ ),
+ borderBottomLeftRadius:
+ normalizeOptionalNonNegative(buttonStyle?.borderBottomLeftRadius) ??
+ normalizeOptionalNonNegative(borderBottomLeftRadius) ??
+ normalizeOptionalNonNegative(borderLeftBottomRadius),
+ borderBottomRightRadius:
+ normalizeOptionalNonNegative(buttonStyle?.borderBottomRightRadius) ??
+ normalizeOptionalNonNegative(borderBottomRightRadius),
+ borderRadius:
+ normalizeOptionalNonNegative(buttonStyle?.borderRadius) ??
+ normalizeNonNegative(borderRadius, DEFAULT_BORDER_RADIUS),
+ borderTopLeftRadius:
+ normalizeOptionalNonNegative(buttonStyle?.borderTopLeftRadius) ??
+ normalizeOptionalNonNegative(borderTopLeftRadius),
+ borderTopRightRadius:
+ normalizeOptionalNonNegative(buttonStyle?.borderTopRightRadius) ??
+ normalizeOptionalNonNegative(borderTopRightRadius),
+ borderWidth:
+ normalizeOptionalNonNegative(buttonStyle?.borderWidth) ??
+ normalizeNonNegative(borderWidth, DEFAULT_BORDER_WIDTH),
+ contentGap: normalizeOptionalNonNegative(buttonStyle?.contentGap),
+ debouncedPressTime: normalizeNonNegative(
+ debouncedPressTime,
+ DEFAULT_DEBOUNCED_PRESS_TIME
+ ),
+ geometryHeight: Math.max(bridgeGeometryHeight, accessibilityGrowthHeight),
+ paddingBottom: normalizedPaddingBottom,
+ paddingHorizontal: normalizedPaddingHorizontal,
+ paddingTop: normalizedPaddingTop,
+ pressInAnimationDuration: normalizeOptionalNonNegative(
+ buttonStyle?.pressInAnimationDuration
+ ),
+ progressLoadingTime: normalizeNonNegative(
+ progressLoadingTime,
+ ANIMATED_TIMING_LOADING
+ ),
+ raiseAmount: normalizedRaiseAmount,
+ textLineHeight: normalizedTextLineHeight,
+ textSize:
+ normalizeOptionalNonNegative(buttonStyle?.textSize) ??
+ normalizeNonNegative(textSize, DEFAULT_TEXT_SIZE),
+ width:
+ width === 'auto' || width === null
+ ? null
+ : normalizeOptionalNonNegative(width) ?? DEFAULT_WIDTH,
+ };
+};
diff --git a/src/button/resolveButtonPresentationTargets.ts b/src/button/resolveButtonPresentationTargets.ts
new file mode 100644
index 0000000..81edf01
--- /dev/null
+++ b/src/button/resolveButtonPresentationTargets.ts
@@ -0,0 +1,130 @@
+import type { ColorValue } from 'react-native';
+import type { ResolvedStylePalette } from '../useResolvedStyleTransition';
+import type { AwesomeButtonStyle } from '../types';
+import type { NormalizedButtonInputs } from './normalizeButtonInputs';
+
+type ResolveButtonPresentationTargetsOptions = {
+ activityColor: ColorValue;
+ backgroundActive: ColorValue;
+ backgroundColor: ColorValue;
+ backgroundDarker: ColorValue;
+ backgroundPlaceholder: ColorValue;
+ backgroundProgress: ColorValue;
+ backgroundShadow: ColorValue;
+ borderColor?: ColorValue;
+ buttonStyle?: AwesomeButtonStyle;
+ disabled: boolean;
+ normalized: NormalizedButtonInputs;
+ platform: string;
+ textColor: ColorValue;
+ textFontFamily?: string;
+};
+
+export type ButtonPresentationTargets = {
+ accessibility: {
+ minimumTarget: number;
+ };
+ content: {
+ textFontFamily?: string;
+ textLineHeight: number;
+ };
+ geometry: {
+ height: number;
+ paddingBottom: number;
+ paddingHorizontal: number;
+ paddingTop: number;
+ raiseAmount: number;
+ width: number | null;
+ };
+ interaction: {
+ activeOpacity: number;
+ animationDuration?: number;
+ debouncedPressTime: number;
+ pressInAnimationDuration?: number;
+ progressLoadingTime: number;
+ };
+ palette: ResolvedStylePalette;
+};
+
+export const resolveButtonPresentationTargets = ({
+ activityColor,
+ backgroundActive,
+ backgroundColor,
+ backgroundDarker,
+ backgroundPlaceholder,
+ backgroundProgress,
+ backgroundShadow,
+ borderColor,
+ buttonStyle,
+ disabled,
+ normalized,
+ platform,
+ textColor,
+ textFontFamily,
+}: ResolveButtonPresentationTargetsOptions): ButtonPresentationTargets => ({
+ accessibility: {
+ minimumTarget: platform === 'android' ? 48 : 44,
+ },
+ content: {
+ textFontFamily: buttonStyle?.textFontFamily ?? textFontFamily,
+ textLineHeight: normalized.textLineHeight,
+ },
+ geometry: {
+ height: normalized.geometryHeight,
+ paddingBottom: normalized.paddingBottom,
+ paddingHorizontal: normalized.paddingHorizontal,
+ paddingTop: normalized.paddingTop,
+ raiseAmount: normalized.raiseAmount,
+ width: normalized.width,
+ },
+ interaction: {
+ activeOpacity: normalized.activeOpacity,
+ animationDuration: normalized.animationDuration,
+ debouncedPressTime: normalized.debouncedPressTime,
+ pressInAnimationDuration: normalized.pressInAnimationDuration,
+ progressLoadingTime: normalized.progressLoadingTime,
+ },
+ palette: {
+ activityColor: buttonStyle?.activityColor ?? activityColor,
+ backgroundActive:
+ buttonStyle?.backgroundActive ??
+ buttonStyle?.pressedOverlayColor ??
+ backgroundActive,
+ backgroundColor: disabled
+ ? buttonStyle?.disabledBackgroundColor ??
+ buttonStyle?.backgroundColor ??
+ backgroundColor
+ : buttonStyle?.backgroundColor ?? backgroundColor,
+ backgroundDarker: disabled
+ ? buttonStyle?.disabledDepthColor ??
+ buttonStyle?.depthColor ??
+ backgroundDarker
+ : buttonStyle?.depthColor ?? backgroundDarker,
+ backgroundPlaceholder:
+ buttonStyle?.backgroundPlaceholder ?? backgroundPlaceholder,
+ backgroundProgress: buttonStyle?.backgroundProgress ?? backgroundProgress,
+ backgroundShadow: disabled
+ ? buttonStyle?.disabledShadowColor ??
+ buttonStyle?.shadowColor ??
+ backgroundShadow
+ : buttonStyle?.shadowColor ?? backgroundShadow,
+ borderBottomLeftRadius: normalized.borderBottomLeftRadius,
+ borderBottomRightRadius: normalized.borderBottomRightRadius,
+ borderColor: disabled
+ ? buttonStyle?.disabledBorderColor ??
+ buttonStyle?.borderColor ??
+ borderColor
+ : buttonStyle?.borderColor ?? borderColor,
+ borderRadius: normalized.borderRadius,
+ borderTopLeftRadius: normalized.borderTopLeftRadius,
+ borderTopRightRadius: normalized.borderTopRightRadius,
+ borderWidth: normalized.borderWidth,
+ contentGap: normalized.contentGap,
+ textColor: disabled
+ ? buttonStyle?.disabledForegroundColor ??
+ buttonStyle?.foregroundColor ??
+ textColor
+ : buttonStyle?.foregroundColor ?? textColor,
+ textSize: normalized.textSize,
+ },
+});
diff --git a/src/index.ts b/src/index.ts
index ea8bed7..70400b3 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,14 +1,30 @@
import Button from './Button';
import Themed from './themed/ThemedButton';
import themes from './themed/themes';
+import type { JSX } from 'react';
+import type {
+ AwesomeButtonProps,
+ AwesomeButtonRegisteredThemeDefinition,
+ ThemeName,
+ ThemedButtonProps,
+} from './types';
export type {
+ AwesomeButtonAnimationCurve,
AwesomeButtonOnPress,
AwesomeButtonPressableProps,
AwesomeButtonProps,
+ AwesomeButtonStyle,
+ AwesomeButtonThemeDefinition,
+ AwesomeButtonThemeDefinitions,
+ AwesomeButtonRegisteredThemeDefinition,
+ AwesomeButtonVariant,
ButtonSize,
ButtonVariant,
+ ButtonWidth,
+ CoreButtonVariant,
ProgressCompletionHandler,
RegisteredThemeDefinition,
+ SocialButtonVariant,
ThemeButtonDefinitions,
ThemeButtonStyle,
ThemeDefinition,
@@ -19,7 +35,27 @@ export type {
} from './types';
export type { ButtonTypes } from './Button';
-export const ThemedButton = Themed;
-export const getTheme = themes;
+/**
+ * Theme-aware Awesome Button component.
+ *
+ * @public
+ */
+export const ThemedButton: (props: ThemedButtonProps) => JSX.Element = Themed;
+/**
+ * Resolves a registered theme by index or name.
+ *
+ * @public
+ */
+export const getTheme: (
+ index?: number | null,
+ name?: ThemeName | null
+) => AwesomeButtonRegisteredThemeDefinition = themes;
+
+/**
+ * Core Awesome Button component.
+ *
+ * @public
+ */
+const AwesomeButton: (props: AwesomeButtonProps) => JSX.Element = Button;
-export default Button;
+export default AwesomeButton;
diff --git a/src/interaction/contracts.ts b/src/interaction/contracts.ts
new file mode 100644
index 0000000..775256f
--- /dev/null
+++ b/src/interaction/contracts.ts
@@ -0,0 +1,42 @@
+import type { GestureResponderEvent, PressableProps } from 'react-native';
+import type {
+ AwesomeButtonAnimationCurve,
+ AwesomeButtonOnPress,
+} from '../types';
+
+export type PressProgressLiveDependencies = {
+ activeOpacity: number;
+ animationCurve?: AwesomeButtonAnimationCurve;
+ animationDuration?: number;
+ debouncedPressTime?: number;
+ delayLongPress?: PressableProps['delayLongPress'];
+ disabled: boolean;
+ hasChildren: boolean;
+ onLongPress?: PressableProps['onLongPress'];
+ onLongPressAction?: () => void;
+ onPress?: AwesomeButtonOnPress;
+ onPressIn?: (event: GestureResponderEvent) => void;
+ onPressOut?: (event: GestureResponderEvent) => void;
+ onPressedIn?: () => void;
+ onPressedOut?: () => void;
+ onProgressEnd?: () => void;
+ onProgressStart?: () => void;
+ pressInAnimationDuration?: number;
+ progress: boolean;
+ progressLoadingTime: number;
+ reduceMotion: boolean;
+ showProgressBar: boolean;
+ springRelease: boolean;
+};
+
+export type ProgressReleaseRequest = {
+ generation: number;
+ onPressedOutSnapshot?: () => void;
+ onSettled: () => void;
+ physicalLifecycle: boolean;
+};
+
+export type ProgressOwnership = {
+ generation: number;
+ next: (completion?: () => void) => void;
+};
diff --git a/src/interaction/useGestureReleaseOwner.ts b/src/interaction/useGestureReleaseOwner.ts
new file mode 100644
index 0000000..52ad477
--- /dev/null
+++ b/src/interaction/useGestureReleaseOwner.ts
@@ -0,0 +1,585 @@
+import { useCallback, useEffect, useLayoutEffect, useRef } from 'react';
+import { Animated, Easing, type GestureResponderEvent } from 'react-native';
+import {
+ ANIMATED_TIMING_OFF,
+ DEFAULT_DEBOUNCED_PRESS_TIME,
+} from '../constants';
+import { cancelFrame, requestFrame } from '../frameLoop';
+import { animateSpring, animateTiming } from '../helpers';
+import { normalizeNonNegative } from '../normalization';
+import type { PressProgressLiveDependencies } from './contracts';
+
+type GestureDisposition = 'armed' | 'blocked' | 'long';
+
+type ActiveGesture = {
+ disposition: GestureDisposition;
+ id: number;
+};
+
+type UseGestureReleaseOwnerOptions = {
+ animatedActive: Animated.Value;
+ animatedOpacity: Animated.Value;
+ animatedValue: Animated.Value;
+ getBusy: () => boolean;
+ getLive: () => PressProgressLiveDependencies;
+ isMounted: () => boolean;
+ requestActivation: (physicalLifecycle: boolean) => boolean;
+};
+
+const useGestureReleaseOwner = ({
+ animatedActive,
+ animatedOpacity,
+ animatedValue,
+ getBusy,
+ getLive,
+ isMounted,
+ requestActivation,
+}: UseGestureReleaseOwnerOptions) => {
+ const gestureSequenceRef = useRef(0);
+ const activeGestureRef = useRef(null);
+ const releasedGestureRef = useRef(null);
+ const pressedRef = useRef(false);
+ const releasingRef = useRef(false);
+ const releaseGenerationRef = useRef(0);
+ const lastAcceptedAtRef = useRef(null);
+ const releaseSnapshotRef = useRef<(() => void) | undefined>(undefined);
+ const releaseContinuationRef = useRef<(() => void) | undefined>(undefined);
+ const pressAnimationRef = useRef(null);
+ const releaseAnimationRef = useRef(null);
+ const releasedDispositionFrameRef = useRef | null>(null);
+ const activationFrameOneRef = useRef | null>(
+ null
+ );
+ const activationFrameTwoRef = useRef | null>(
+ null
+ );
+ const activationFrameThreeRef = useRef | null>(null);
+ const pressOutFrameOneRef = useRef | null>(
+ null
+ );
+ const pressOutFrameTwoRef = useRef | null>(
+ null
+ );
+ const pressOutFrameThreeRef = useRef | null>(
+ null
+ );
+ const longPressGestureActiveRef = useRef(false);
+ const longPressArmedRef = useRef(false);
+ const longPressDisarmedRef = useRef(false);
+ const longPressTimerRef = useRef | null>(null);
+
+ const clearLongPressTimer = useCallback(() => {
+ if (longPressTimerRef.current !== null) {
+ clearTimeout(longPressTimerRef.current);
+ longPressTimerRef.current = null;
+ }
+ }, []);
+
+ const isStructurallyEligible = useCallback(() => {
+ const live = getLive();
+ return isMounted() && !live.disabled && live.hasChildren && !getBusy();
+ }, [getBusy, getLive, isMounted]);
+
+ const stopOwnedWork = useCallback(() => {
+ releaseGenerationRef.current += 1;
+ pressAnimationRef.current?.stop();
+ releaseAnimationRef.current?.stop();
+ pressAnimationRef.current = null;
+ releaseAnimationRef.current = null;
+ clearLongPressTimer();
+ cancelFrame(releasedDispositionFrameRef.current);
+ cancelFrame(activationFrameOneRef.current);
+ cancelFrame(activationFrameTwoRef.current);
+ cancelFrame(activationFrameThreeRef.current);
+ cancelFrame(pressOutFrameOneRef.current);
+ cancelFrame(pressOutFrameTwoRef.current);
+ cancelFrame(pressOutFrameThreeRef.current);
+ releasedDispositionFrameRef.current = null;
+ activationFrameOneRef.current = null;
+ activationFrameTwoRef.current = null;
+ activationFrameThreeRef.current = null;
+ pressOutFrameOneRef.current = null;
+ pressOutFrameTwoRef.current = null;
+ pressOutFrameThreeRef.current = null;
+ releaseSnapshotRef.current = undefined;
+ releaseContinuationRef.current = undefined;
+ }, [clearLongPressTimer]);
+
+ const settlePressVisuals = useCallback(() => {
+ animatedActive.setValue(0);
+ animatedValue.setValue(0);
+ animatedOpacity.setValue(1);
+ pressedRef.current = false;
+ releasingRef.current = false;
+ }, [animatedActive, animatedOpacity, animatedValue]);
+
+ const finishRelease = useCallback(
+ (
+ generation: number,
+ snapshot: (() => void) | undefined,
+ continuation: (() => void) | undefined
+ ) => {
+ if (!isMounted() || releaseGenerationRef.current !== generation) return;
+ releasingRef.current = false;
+ releaseAnimationRef.current = null;
+ pressedRef.current = false;
+ releaseSnapshotRef.current = undefined;
+ releaseContinuationRef.current = undefined;
+ snapshot?.();
+ if (!isMounted() || releaseGenerationRef.current !== generation) return;
+ continuation?.();
+ },
+ [isMounted]
+ );
+
+ const beginRelease = useCallback(
+ (onPressedOutSnapshot?: () => void, continuation?: () => void) => {
+ if (!isMounted() || releasingRef.current) return false;
+ pressAnimationRef.current?.stop();
+ pressAnimationRef.current = null;
+ releasingRef.current = true;
+ releaseGenerationRef.current += 1;
+ const generation = releaseGenerationRef.current;
+ releaseSnapshotRef.current = onPressedOutSnapshot;
+ releaseContinuationRef.current = continuation;
+ const live = getLive();
+
+ if (live.reduceMotion) {
+ settlePressVisuals();
+ finishRelease(generation, onPressedOutSnapshot, continuation);
+ return true;
+ }
+
+ const animation = live.springRelease
+ ? Animated.parallel([
+ animateSpring({ variable: animatedActive, toValue: 0 }),
+ animateSpring({ variable: animatedValue, toValue: 0 }),
+ animateTiming({ variable: animatedOpacity, toValue: 1 }),
+ ])
+ : Animated.parallel([
+ animateTiming({
+ variable: animatedActive,
+ toValue: 0,
+ duration: ANIMATED_TIMING_OFF,
+ }),
+ animateTiming({
+ variable: animatedValue,
+ toValue: 0,
+ duration: ANIMATED_TIMING_OFF,
+ }),
+ animateTiming({ variable: animatedOpacity, toValue: 1 }),
+ ]);
+ releaseAnimationRef.current = animation;
+ animation.start(({ finished }) => {
+ if (
+ finished &&
+ releaseAnimationRef.current === animation &&
+ releaseGenerationRef.current === generation
+ ) {
+ finishRelease(generation, onPressedOutSnapshot, continuation);
+ }
+ });
+ return true;
+ },
+ [
+ animatedActive,
+ animatedOpacity,
+ animatedValue,
+ finishRelease,
+ getLive,
+ isMounted,
+ settlePressVisuals,
+ ]
+ );
+
+ const cancelActiveGesture = useCallback(() => {
+ const active = activeGestureRef.current;
+ if (active === null) return;
+ activeGestureRef.current = null;
+ releasedGestureRef.current =
+ active.disposition === 'long' ? 'long' : 'blocked';
+ cancelFrame(releasedDispositionFrameRef.current);
+ releasedDispositionFrameRef.current = null;
+ clearLongPressTimer();
+ longPressDisarmedRef.current = true;
+ if (pressedRef.current && !getBusy()) {
+ beginRelease(getLive().onPressedOut);
+ }
+ }, [beginRelease, clearLongPressTimer, getBusy, getLive]);
+
+ const commitPressedState = useCallback(
+ (gestureId: number) => {
+ if (
+ activeGestureRef.current?.id !== gestureId ||
+ !isStructurallyEligible()
+ ) {
+ return false;
+ }
+ pressedRef.current = true;
+ return true;
+ },
+ [isStructurallyEligible]
+ );
+
+ const beginPressVisual = useCallback(
+ (gestureId: number) => {
+ if (
+ activeGestureRef.current?.id !== gestureId ||
+ !isStructurallyEligible()
+ ) {
+ return;
+ }
+ releaseGenerationRef.current += 1;
+ releaseAnimationRef.current?.stop();
+ releaseAnimationRef.current = null;
+ releasingRef.current = false;
+ const live = getLive();
+ const duration = live.reduceMotion
+ ? 0
+ : live.pressInAnimationDuration ??
+ live.animationDuration ??
+ ANIMATED_TIMING_OFF;
+ if (duration === 0) {
+ animatedValue.setValue(1);
+ animatedActive.setValue(1);
+ animatedOpacity.setValue(live.progress ? 1 : live.activeOpacity);
+ return;
+ }
+ const easing = live.animationCurve ?? Easing.out(Easing.cubic);
+ const animation = Animated.parallel([
+ animateTiming({
+ variable: animatedValue,
+ toValue: 1,
+ duration,
+ easing,
+ }),
+ animateTiming({
+ variable: animatedActive,
+ toValue: 1,
+ duration,
+ easing,
+ }),
+ animateTiming({
+ variable: animatedOpacity,
+ toValue: live.progress ? 1 : live.activeOpacity,
+ duration,
+ easing,
+ }),
+ ]);
+ pressAnimationRef.current = animation;
+ animation.start(({ finished }) => {
+ if (finished && pressAnimationRef.current === animation) {
+ pressAnimationRef.current = null;
+ }
+ });
+ },
+ [
+ animatedActive,
+ animatedOpacity,
+ animatedValue,
+ getLive,
+ isStructurallyEligible,
+ ]
+ );
+
+ const dispatchPhysicalLongPress = useCallback(
+ (event: GestureResponderEvent) => {
+ const active = activeGestureRef.current;
+ if (
+ active === null ||
+ active.disposition !== 'armed' ||
+ !longPressGestureActiveRef.current ||
+ !longPressArmedRef.current ||
+ longPressDisarmedRef.current ||
+ !isStructurallyEligible()
+ ) {
+ return;
+ }
+ const live = getLive();
+ if (live.onLongPressAction !== undefined) {
+ live.onLongPressAction();
+ } else if (live.onLongPress != null) {
+ live.onLongPress(event);
+ } else {
+ return;
+ }
+ active.disposition = 'long';
+ if (!isMounted() || !isStructurallyEligible()) cancelActiveGesture();
+ },
+ [cancelActiveGesture, getLive, isMounted, isStructurallyEligible]
+ );
+
+ const handlePressIn = useCallback(
+ (event: GestureResponderEvent) => {
+ clearLongPressTimer();
+ const liveAtStart = getLive();
+ const hasLongPress =
+ liveAtStart.onLongPressAction !== undefined ||
+ liveAtStart.onLongPress !== undefined;
+ longPressGestureActiveRef.current = true;
+ longPressArmedRef.current = hasLongPress;
+ longPressDisarmedRef.current = !hasLongPress;
+ event.persist?.();
+
+ if (!isStructurallyEligible()) {
+ releasedGestureRef.current = 'blocked';
+ return;
+ }
+ gestureSequenceRef.current += 1;
+ const gestureId = gestureSequenceRef.current;
+ activeGestureRef.current = { id: gestureId, disposition: 'armed' };
+ releasedGestureRef.current = null;
+ liveAtStart.onPressIn?.(event);
+ if (!commitPressedState(gestureId)) {
+ cancelActiveGesture();
+ return;
+ }
+ Promise.resolve().then(() => {
+ if (!isMounted()) return;
+ if (
+ activeGestureRef.current?.id !== gestureId ||
+ !isStructurallyEligible()
+ ) {
+ cancelActiveGesture();
+ return;
+ }
+ getLive().onPressedIn?.();
+ if (
+ activeGestureRef.current?.id !== gestureId ||
+ !isStructurallyEligible()
+ ) {
+ cancelActiveGesture();
+ return;
+ }
+ beginPressVisual(gestureId);
+ });
+
+ if (hasLongPress && isStructurallyEligible()) {
+ const delay = normalizeNonNegative(liveAtStart.delayLongPress, 500);
+ longPressTimerRef.current = setTimeout(() => {
+ longPressTimerRef.current = null;
+ dispatchPhysicalLongPress(event);
+ }, delay);
+ }
+ },
+ [
+ beginPressVisual,
+ cancelActiveGesture,
+ clearLongPressTimer,
+ commitPressedState,
+ dispatchPhysicalLongPress,
+ getLive,
+ isMounted,
+ isStructurallyEligible,
+ ]
+ );
+
+ const rememberReleasedDisposition = useCallback(
+ (disposition: GestureDisposition) => {
+ releasedGestureRef.current = disposition;
+ cancelFrame(releasedDispositionFrameRef.current);
+ releasedDispositionFrameRef.current = requestFrame(() => {
+ releasedDispositionFrameRef.current = null;
+ releasedGestureRef.current = null;
+ });
+ },
+ []
+ );
+
+ const handlePressOut = useCallback(
+ (event: GestureResponderEvent) => {
+ clearLongPressTimer();
+ const active = activeGestureRef.current;
+ if (active === null) {
+ longPressGestureActiveRef.current = false;
+ longPressArmedRef.current = false;
+ return;
+ }
+ activeGestureRef.current = null;
+ rememberReleasedDisposition(active.disposition);
+ const onPressedOutSnapshot = getLive().onPressedOut;
+ event.persist?.();
+ pressOutFrameOneRef.current = requestFrame(() => {
+ pressOutFrameOneRef.current = null;
+ pressOutFrameTwoRef.current = requestFrame(() => {
+ pressOutFrameTwoRef.current = null;
+ pressOutFrameThreeRef.current = requestFrame(() => {
+ pressOutFrameThreeRef.current = null;
+ if (!isMounted()) return;
+ getLive().onPressOut?.(event);
+ Promise.resolve().then(() => {
+ if (!isMounted()) return;
+ if (getLive().progress && active.disposition === 'armed') {
+ if (!getBusy() && pressedRef.current) {
+ beginRelease(onPressedOutSnapshot);
+ }
+ return;
+ }
+ if (pressedRef.current) beginRelease(onPressedOutSnapshot);
+ });
+ });
+ });
+ });
+ longPressGestureActiveRef.current = false;
+ longPressArmedRef.current = false;
+ },
+ [
+ beginRelease,
+ clearLongPressTimer,
+ getBusy,
+ getLive,
+ isMounted,
+ rememberReleasedDisposition,
+ ]
+ );
+
+ const handlePress = useCallback(() => {
+ cancelFrame(releasedDispositionFrameRef.current);
+ releasedDispositionFrameRef.current = null;
+ const disposition = releasedGestureRef.current;
+ releasedGestureRef.current = null;
+ if (disposition === 'blocked' || disposition === 'long') return;
+ const physicalLifecycle =
+ disposition !== null || activeGestureRef.current !== null;
+ if (activeGestureRef.current !== null && !getLive().progress) {
+ activeGestureRef.current = null;
+ if (pressedRef.current) beginRelease(getLive().onPressedOut);
+ }
+ requestActivation(physicalLifecycle);
+ }, [beginRelease, getLive, requestActivation]);
+
+ const handleAtomicPress = useCallback(
+ () => requestActivation(false),
+ [requestActivation]
+ );
+
+ const handleAtomicLongPress = useCallback(() => {
+ const callback = getLive().onLongPressAction;
+ if (!isStructurallyEligible() || callback === undefined) return false;
+ callback();
+ return true;
+ }, [getLive, isStructurallyEligible]);
+
+ const acceptDebounce = useCallback(() => {
+ const duration = Math.max(
+ 0,
+ getLive().debouncedPressTime ?? DEFAULT_DEBOUNCED_PRESS_TIME
+ );
+ const now = Date.now();
+ if (
+ duration > 0 &&
+ lastAcceptedAtRef.current !== null &&
+ now - lastAcceptedAtRef.current < duration
+ ) {
+ return false;
+ }
+ lastAcceptedAtRef.current = now;
+ return true;
+ }, [getLive]);
+
+ const deferActivation = useCallback(
+ (callback: () => void) => {
+ activationFrameOneRef.current = requestFrame(() => {
+ activationFrameOneRef.current = null;
+ activationFrameTwoRef.current = requestFrame(() => {
+ activationFrameTwoRef.current = null;
+ activationFrameThreeRef.current = requestFrame(() => {
+ activationFrameThreeRef.current = null;
+ if (isMounted()) callback();
+ });
+ });
+ });
+ },
+ [isMounted]
+ );
+
+ const releaseForProgress = useCallback(
+ ({
+ onPressedOutSnapshot,
+ onSettled,
+ physicalLifecycle,
+ }: {
+ onPressedOutSnapshot?: () => void;
+ onSettled: () => void;
+ physicalLifecycle: boolean;
+ }) => {
+ if (physicalLifecycle && pressedRef.current) {
+ beginRelease(onPressedOutSnapshot, onSettled);
+ } else {
+ settlePressVisuals();
+ onSettled();
+ }
+ },
+ [beginRelease, settlePressVisuals]
+ );
+
+ useLayoutEffect(() => {
+ const live = getLive();
+ if (
+ longPressGestureActiveRef.current &&
+ live.onLongPressAction === undefined &&
+ live.onLongPress === undefined
+ ) {
+ longPressDisarmedRef.current = true;
+ clearLongPressTimer();
+ }
+ });
+
+ useEffect(() => {
+ const live = getLive();
+ if (live.disabled || !live.hasChildren) cancelActiveGesture();
+ });
+
+ useEffect(() => {
+ const live = getLive();
+ if (!live.reduceMotion) return;
+ pressAnimationRef.current?.stop();
+ releaseAnimationRef.current?.stop();
+ if (releasingRef.current) {
+ const generation = releaseGenerationRef.current;
+ const snapshot = releaseSnapshotRef.current;
+ const continuation = releaseContinuationRef.current;
+ settlePressVisuals();
+ finishRelease(generation, snapshot, continuation);
+ return;
+ }
+ if (getBusy()) return;
+ if (pressedRef.current) {
+ animatedValue.setValue(1);
+ animatedActive.setValue(1);
+ animatedOpacity.setValue(live.progress ? 1 : live.activeOpacity);
+ } else {
+ settlePressVisuals();
+ }
+ });
+
+ useLayoutEffect(
+ () => () => {
+ activeGestureRef.current = null;
+ releasedGestureRef.current = null;
+ longPressGestureActiveRef.current = false;
+ longPressArmedRef.current = false;
+ longPressDisarmedRef.current = true;
+ stopOwnedWork();
+ },
+ [stopOwnedWork]
+ );
+
+ return {
+ acceptDebounce,
+ deferActivation,
+ handleAtomicLongPress,
+ handleAtomicPress,
+ handlePress,
+ handlePressIn,
+ handlePressOut,
+ isStructurallyEligible,
+ releaseForProgress,
+ };
+};
+
+export default useGestureReleaseOwner;
diff --git a/src/interaction/useProgressOwner.ts b/src/interaction/useProgressOwner.ts
new file mode 100644
index 0000000..e814236
--- /dev/null
+++ b/src/interaction/useProgressOwner.ts
@@ -0,0 +1,295 @@
+import {
+ useCallback,
+ useEffect,
+ useLayoutEffect,
+ useRef,
+ useState,
+} from 'react';
+import { Animated, Easing } from 'react-native';
+import { cancelFrame, requestFrame } from '../frameLoop';
+import { animateElastic, animateTiming } from '../helpers';
+import type {
+ PressProgressLiveDependencies,
+ ProgressOwnership,
+ ProgressReleaseRequest,
+} from './contracts';
+
+type ProgressRun = {
+ activationDelivered: boolean;
+ completionClaimed: boolean;
+ completionSnapshot?: () => void;
+ generation: number;
+ onProgressEndSnapshot?: () => void;
+ physicalLifecycle: boolean;
+};
+
+type UseProgressOwnerOptions = {
+ activityOpacity: Animated.Value;
+ animatedLoading: Animated.Value;
+ getLive: () => PressProgressLiveDependencies;
+ isMounted: () => boolean;
+ loadingOpacity: Animated.Value;
+ requestRelease: (request: ProgressReleaseRequest) => void;
+ textOpacity: Animated.Value;
+};
+
+const useProgressOwner = ({
+ activityOpacity,
+ animatedLoading,
+ getLive,
+ isMounted,
+ loadingOpacity,
+ requestRelease,
+ textOpacity,
+}: UseProgressOwnerOptions) => {
+ const [activity, setActivity] = useState(false);
+ const busyRef = useRef(false);
+ const sequenceRef = useRef(0);
+ const runRef = useRef(null);
+ const animationRef = useRef(null);
+ const completionFrameRef = useRef | null>(
+ null
+ );
+
+ const owns = useCallback(
+ (generation: number) => runRef.current?.generation === generation,
+ []
+ );
+ const isBusy = useCallback(() => busyRef.current, []);
+
+ const clearProgressVisuals = useCallback(() => {
+ animatedLoading.setValue(0);
+ loadingOpacity.setValue(0);
+ textOpacity.setValue(1);
+ activityOpacity.setValue(0);
+ }, [activityOpacity, animatedLoading, loadingOpacity, textOpacity]);
+
+ const completeAfterRelease = useCallback(
+ (run: ProgressRun) => {
+ if (!isMounted() || runRef.current !== run) return;
+ busyRef.current = false;
+ setActivity(false);
+ run.completionSnapshot?.();
+ Promise.resolve().then(() => {
+ if (!isMounted() || runRef.current !== run) return;
+ run.onProgressEndSnapshot?.();
+ if (!isMounted() || runRef.current !== run) return;
+ runRef.current = null;
+ });
+ },
+ [isMounted]
+ );
+
+ const requestFinalRelease = useCallback(
+ (run: ProgressRun, onSettled: () => void) => {
+ if (!isMounted() || runRef.current !== run) return;
+ requestRelease({
+ generation: run.generation,
+ onPressedOutSnapshot: getLive().onPressedOut,
+ onSettled,
+ physicalLifecycle: run.physicalLifecycle,
+ });
+ },
+ [getLive, isMounted, requestRelease]
+ );
+
+ const finishProgress = useCallback(
+ (run: ProgressRun) => {
+ if (!isMounted() || runRef.current !== run) return;
+ const beginFinalRelease = () =>
+ requestFinalRelease(run, () => completeAfterRelease(run));
+ const live = getLive();
+ animationRef.current?.stop();
+ if (live.reduceMotion) {
+ animatedLoading.setValue(live.showProgressBar ? 1 : 0);
+ loadingOpacity.setValue(0);
+ textOpacity.setValue(1);
+ activityOpacity.setValue(0);
+ beginFinalRelease();
+ return;
+ }
+ const animation = Animated.sequence([
+ animateTiming({ variable: animatedLoading, toValue: 1, duration: 120 }),
+ Animated.parallel([
+ animateElastic({ variable: textOpacity, toValue: 1 }),
+ animateElastic({ variable: activityOpacity, toValue: 0 }),
+ animateTiming({
+ variable: loadingOpacity,
+ toValue: 0,
+ delay: 120,
+ duration: 160,
+ }),
+ ]),
+ ]);
+ animationRef.current = animation;
+ animation.start(({ finished }) => {
+ if (finished && animationRef.current === animation) {
+ animationRef.current = null;
+ beginFinalRelease();
+ }
+ });
+ },
+ [
+ activityOpacity,
+ animatedLoading,
+ completeAfterRelease,
+ getLive,
+ isMounted,
+ loadingOpacity,
+ requestFinalRelease,
+ textOpacity,
+ ]
+ );
+
+ const abort = useCallback(
+ (generation: number) => {
+ const run = runRef.current;
+ if (
+ run === null ||
+ run.generation !== generation ||
+ run.completionClaimed
+ ) {
+ return;
+ }
+ run.completionClaimed = true;
+ const onProgressEndSnapshot = getLive().onProgressEnd;
+ animationRef.current?.stop();
+ animationRef.current = null;
+ clearProgressVisuals();
+ requestFinalRelease(run, () => {
+ if (!isMounted() || runRef.current !== run) return;
+ busyRef.current = false;
+ setActivity(false);
+ onProgressEndSnapshot?.();
+ if (!isMounted() || runRef.current !== run) return;
+ runRef.current = null;
+ });
+ },
+ [clearProgressVisuals, getLive, isMounted, requestFinalRelease]
+ );
+
+ const begin = useCallback(
+ (physicalLifecycle: boolean): ProgressOwnership | null => {
+ sequenceRef.current += 1;
+ const run: ProgressRun = {
+ activationDelivered: false,
+ completionClaimed: false,
+ generation: sequenceRef.current,
+ physicalLifecycle,
+ };
+ runRef.current = run;
+ busyRef.current = true;
+ setActivity(true);
+ getLive().onProgressStart?.();
+ if (!isMounted() || runRef.current !== run) return null;
+ if (getLive().disabled || !getLive().hasChildren) {
+ abort(run.generation);
+ return null;
+ }
+ const live = getLive();
+ if (live.reduceMotion) {
+ animatedLoading.setValue(live.showProgressBar ? 1 : 0);
+ loadingOpacity.setValue(live.showProgressBar ? 1 : 0);
+ textOpacity.setValue(0);
+ activityOpacity.setValue(1);
+ } else {
+ animatedLoading.setValue(0);
+ loadingOpacity.setValue(1);
+ const animation = Animated.parallel([
+ animateTiming({
+ variable: animatedLoading,
+ toValue: 1,
+ duration: live.progressLoadingTime,
+ easing: Easing.linear,
+ }),
+ animateElastic({ variable: textOpacity, toValue: 0 }),
+ animateElastic({ variable: activityOpacity, toValue: 1 }),
+ ]);
+ animationRef.current = animation;
+ animation.start();
+ }
+
+ const next = (completion?: () => void) => {
+ if (!isMounted() || runRef.current !== run || run.completionClaimed) {
+ return;
+ }
+ run.completionClaimed = true;
+ run.completionSnapshot = completion;
+ run.onProgressEndSnapshot = getLive().onProgressEnd;
+ completionFrameRef.current = requestFrame(() => {
+ completionFrameRef.current = null;
+ finishProgress(run);
+ });
+ };
+ return { generation: run.generation, next };
+ },
+ [
+ abort,
+ activityOpacity,
+ animatedLoading,
+ finishProgress,
+ getLive,
+ isMounted,
+ loadingOpacity,
+ textOpacity,
+ ]
+ );
+
+ const markActivationDelivered = useCallback((generation: number) => {
+ if (runRef.current?.generation === generation) {
+ runRef.current.activationDelivered = true;
+ }
+ }, []);
+
+ useEffect(() => {
+ const run = runRef.current;
+ const live = getLive();
+ if (
+ run !== null &&
+ run.activationDelivered &&
+ !run.completionClaimed &&
+ (live.disabled || !live.hasChildren)
+ ) {
+ abort(run.generation);
+ }
+ });
+
+ useEffect(() => {
+ const live = getLive();
+ if (!live.reduceMotion) return;
+ animationRef.current?.stop();
+ animationRef.current = null;
+ if (busyRef.current) {
+ animatedLoading.setValue(live.showProgressBar ? 1 : 0);
+ loadingOpacity.setValue(live.showProgressBar ? 1 : 0);
+ textOpacity.setValue(0);
+ activityOpacity.setValue(1);
+ } else {
+ clearProgressVisuals();
+ }
+ });
+
+ useLayoutEffect(
+ () => () => {
+ sequenceRef.current += 1;
+ runRef.current = null;
+ busyRef.current = false;
+ animationRef.current?.stop();
+ animationRef.current = null;
+ cancelFrame(completionFrameRef.current);
+ completionFrameRef.current = null;
+ },
+ []
+ );
+
+ return {
+ abort,
+ activity,
+ begin,
+ isBusy,
+ markActivationDelivered,
+ owns,
+ };
+};
+
+export default useProgressOwner;
diff --git a/src/localization.ts b/src/localization.ts
new file mode 100644
index 0000000..b6a3d41
--- /dev/null
+++ b/src/localization.ts
@@ -0,0 +1,31 @@
+type AwesomeButtonStrings = {
+ longPressAction: string;
+};
+
+const stringsByLanguage: Record = {
+ de: { longPressAction: 'Lange drücken' },
+ en: { longPressAction: 'Long press' },
+ es: { longPressAction: 'Mantener pulsado' },
+ fr: { longPressAction: 'Appui prolongé' },
+ it: { longPressAction: 'Pressione prolungata' },
+ ja: { longPressAction: '長押し' },
+ ko: { longPressAction: '길게 누르기' },
+ pt: { longPressAction: 'Manter pressionado' },
+ zh: { longPressAction: '长按' },
+};
+
+const resolveLanguage = () => {
+ try {
+ const locale = Intl.DateTimeFormat().resolvedOptions().locale;
+ return locale.split(/[-_]/, 1)[0]?.toLowerCase() ?? 'en';
+ } catch {
+ return 'en';
+ }
+};
+
+/** Package-owned fallback for iOS custom accessibility actions. */
+const getLongPressAccessibilityLabel = () =>
+ (stringsByLanguage[resolveLanguage()] ?? stringsByLanguage.en)!
+ .longPressAction;
+
+export { getLongPressAccessibilityLabel };
diff --git a/src/normalization.ts b/src/normalization.ts
new file mode 100644
index 0000000..256f729
--- /dev/null
+++ b/src/normalization.ts
@@ -0,0 +1,26 @@
+export const normalizeOptionalNumber = (
+ value: number | null | undefined
+): number | undefined =>
+ typeof value === 'number' && Number.isFinite(value) ? value : undefined;
+
+export const normalizeRequiredNumber = (
+ value: number | null | undefined,
+ fallback: number
+): number => normalizeOptionalNumber(value) ?? fallback;
+
+export const normalizeNonNegative = (
+ value: number | null | undefined,
+ fallback: number
+): number => Math.max(0, normalizeRequiredNumber(value, fallback));
+
+export const normalizeOptionalNonNegative = (
+ value: number | null | undefined
+): number | undefined => {
+ const normalized = normalizeOptionalNumber(value);
+ return normalized === undefined ? undefined : Math.max(0, normalized);
+};
+
+export const normalizeOpacity = (
+ value: number | null | undefined,
+ fallback: number
+): number => Math.min(1, Math.max(0, normalizeRequiredNumber(value, fallback)));
diff --git a/src/size/contracts.ts b/src/size/contracts.ts
new file mode 100644
index 0000000..4ac15a5
--- /dev/null
+++ b/src/size/contracts.ts
@@ -0,0 +1,66 @@
+import type { ButtonWidth } from '../types';
+
+export type WidthMode = 'auto' | 'fixed' | 'stretch';
+
+export type HeightDimensions = {
+ container: number;
+ face: number;
+ shadow: number;
+};
+
+export const BUTTON_SIZE_ANIMATION_DURATION_MS = 175;
+
+export type WidthCommandPort = {
+ animateTo: (nextWidth: number, onComplete?: () => void) => void;
+ animateTextTransitionTo: (
+ nextWidth: number,
+ options: {
+ durationMs: number;
+ floor: () => number | null;
+ onComplete?: () => void;
+ onProgress?: (progress: number) => void;
+ }
+ ) => void;
+ cancel: () => void;
+ getCurrent: () => number | null;
+ setImmediately: (nextWidth: number | null) => void;
+ snapshot: (callback: (value: number | null) => void) => void;
+};
+
+export const getWidthMode = (
+ width: ButtonWidth,
+ stretch?: boolean
+): WidthMode => {
+ if (stretch === true) return 'stretch';
+ if (width === null) return 'auto';
+ return 'fixed';
+};
+
+export const getHeightDimensions = (
+ height: number,
+ paddingTop: number,
+ paddingBottom: number,
+ raiseLevel: number
+): HeightDimensions => ({
+ container: height + paddingTop + paddingBottom,
+ face: height + paddingTop + paddingBottom - raiseLevel,
+ shadow: height - raiseLevel,
+});
+
+export const areHeightDimensionsEqual = (
+ currentValue: HeightDimensions,
+ nextValue: HeightDimensions
+) =>
+ currentValue.container === nextValue.container &&
+ currentValue.face === nextValue.face &&
+ currentValue.shadow === nextValue.shadow;
+
+export const getAutoWidthTextFlow = (
+ currentWidth: number | null,
+ nextWidth: number
+) => {
+ if (currentWidth === null) return 'initial';
+ if (Math.abs(currentWidth - nextWidth) <= 0.5) return 'text-only';
+ if (nextWidth > currentWidth) return 'grow-first';
+ return 'shrink-last';
+};
diff --git a/src/size/useAutoWidthTextCoordinator.ts b/src/size/useAutoWidthTextCoordinator.ts
new file mode 100644
index 0000000..df18874
--- /dev/null
+++ b/src/size/useAutoWidthTextCoordinator.ts
@@ -0,0 +1,1092 @@
+import {
+ Children,
+ useCallback,
+ useEffect,
+ useLayoutEffect,
+ useRef,
+ useState,
+ type ReactNode,
+} from 'react';
+import {
+ Animated,
+ PixelRatio,
+ type LayoutChangeEvent,
+ type NativeSyntheticEvent,
+ type TextLayoutEventData,
+} from 'react-native';
+import { getFrameTimestamp } from '../frameLoop';
+import {
+ getTextTransitionTimeline,
+ runTextTransition,
+ type TextTransitionTimeline,
+} from '../textTransition';
+import {
+ BUTTON_SIZE_ANIMATION_DURATION_MS,
+ getAutoWidthTextFlow,
+ type WidthCommandPort,
+ type WidthMode,
+} from './contracts';
+
+const PHASE_LEAD = 0.3;
+
+type TextMeasurementKind = 'source' | 'target' | 'candidate';
+
+export type HiddenMeasurementRequest = {
+ generation: number;
+ requestId: number;
+ metricRevision: number;
+ kind: TextMeasurementKind;
+ text: string;
+ beforeWidth: number;
+ afterWidth: number;
+ hasBefore: boolean;
+ hasAfter: boolean;
+};
+
+type HeldCandidate = {
+ generation: number;
+ metricRevision: number;
+ text: string;
+ requiredWidth: number;
+};
+
+type PendingTransition = {
+ generation: number;
+ sourceText: string;
+ targetText: string;
+ sourceWidth: number | null;
+};
+
+type PendingTargetCommit = {
+ generation: number;
+ publicationId: number;
+ metricRevision: number;
+ text: string;
+ requiredWidth: number;
+ publishedLayoutRevision: number;
+ acknowledgedLayoutRevision: number | null;
+};
+
+type UseAutoWidthTextCoordinatorOptions = {
+ after: ReactNode;
+ animatedOpacity: Animated.Value;
+ animateSize: boolean;
+ before: ReactNode;
+ children: ReactNode;
+ extra: ReactNode;
+ measurementSignature: string;
+ reduceMotion: boolean;
+ textTransition: boolean;
+ widthCommands: WidthCommandPort;
+ widthMode: WidthMode;
+};
+
+const isNonEmptyString = (value: ReactNode): value is string =>
+ typeof value === 'string' && value.length > 0;
+
+const physicalPixelScale = () => {
+ const scale = PixelRatio.get();
+ return Number.isFinite(scale) && scale > 0 ? scale : 1;
+};
+
+export const roundRequiredWidthToPhysicalPixel = (
+ width: number,
+ scale = physicalPixelScale()
+) => {
+ const safeScale = Number.isFinite(scale) && scale > 0 ? scale : 1;
+ return Math.ceil(width * safeScale) / safeScale;
+};
+
+export const hasPhysicalPixelFit = (
+ requiredWidth: number,
+ availableWidth: number,
+ scale = physicalPixelScale()
+) => {
+ const safeScale = Number.isFinite(scale) && scale > 0 ? scale : 1;
+ const requiredPixels = Math.ceil(requiredWidth * safeScale);
+ const availablePixels = Math.floor(availableWidth * safeScale);
+ return availablePixels >= requiredPixels;
+};
+
+const useAutoWidthTextCoordinator = ({
+ after,
+ animatedOpacity,
+ animateSize,
+ before,
+ children,
+ extra: _extra,
+ measurementSignature,
+ reduceMotion,
+ textTransition,
+ widthCommands,
+ widthMode,
+}: UseAutoWidthTextCoordinatorOptions) => {
+ const stringChildren = isNonEmptyString(children) ? children : null;
+ const hasBefore = Children.toArray(before).length > 0;
+ const hasAfter = Children.toArray(after).length > 0;
+ const [displayedText, setDisplayedText] = useState(
+ stringChildren
+ );
+ const [measurementRequest, setMeasurementRequest] =
+ useState(null);
+ const [transientTextFrame, setTransientTextFrame] = useState(false);
+ const [alignTextLogicalLeading, setAlignTextLogicalLeading] = useState(false);
+ const [visibleTextPublicationId, setVisibleTextPublicationId] = useState(0);
+
+ const mountedRef = useRef(true);
+ const didInitializeRef = useRef(false);
+ const generationRef = useRef(0);
+ const requestSequenceRef = useRef(0);
+ const publicationSequenceRef = useRef(0);
+ const metricRevisionRef = useRef(0);
+ const measurementSignatureRef = useRef(measurementSignature);
+ const widthModeRef = useRef(widthMode);
+ const beforePresentRef = useRef(hasBefore);
+ const afterPresentRef = useRef(hasAfter);
+ const beforeWidthRef = useRef(hasBefore ? null : 0);
+ const afterWidthRef = useRef(hasAfter ? null : 0);
+ const displayedTextRef = useRef(stringChildren);
+ const targetTextRef = useRef(stringChildren);
+ const transitionSourceTextRef = useRef(null);
+ const displayedFrameWidthRef = useRef(null);
+ const displayedFrameMetricRevisionRef = useRef(null);
+ const targetWidthRef = useRef(null);
+ const availableWidthRef = useRef(null);
+ const layoutRevisionRef = useRef(0);
+ const externallyConstrainedRef = useRef(false);
+ const requestRef = useRef(null);
+ const deferredMeasurementRef = useRef<{
+ kind: TextMeasurementKind;
+ text: string;
+ } | null>(null);
+ const pendingTransitionRef = useRef(null);
+ const pendingTargetCommitRef = useRef(null);
+ const heldCandidateRef = useRef(null);
+ const latestCandidateRef = useRef(null);
+ const refreshPendingRef = useRef(false);
+ const transitionRef = useRef<{ stop: () => void } | null>(null);
+ const timelineRef = useRef(null);
+ const activeFlowRef =
+ useRef>('initial');
+ const transitionStartedRef = useRef(false);
+ const textEngineCompleteRef = useRef(false);
+ const textPhaseCompleteRef = useRef(false);
+ const widthPhaseCompleteRef = useRef(true);
+ const growthTextPendingRef = useRef(false);
+ const shrinkWidthPendingRef = useRef(false);
+ const widthPhaseStartedAtRef = useRef(null);
+ const widthPhaseDurationRef = useRef(0);
+ const liveConfigRef = useRef({
+ animateSize,
+ reduceMotion,
+ textTransition,
+ widthMode,
+ });
+ const previousBehaviorRef = useRef({
+ animateSize,
+ reduceMotion,
+ textTransition,
+ widthMode,
+ });
+
+ useLayoutEffect(() => {
+ liveConfigRef.current = {
+ animateSize,
+ reduceMotion,
+ textTransition,
+ widthMode,
+ };
+ widthModeRef.current = widthMode;
+ }, [animateSize, reduceMotion, textTransition, widthMode]);
+
+ const syncDisplayedText = useCallback((value: string | null) => {
+ displayedTextRef.current = value;
+ setDisplayedText((current) => (current === value ? current : value));
+ }, []);
+
+ const syncRequest = useCallback((value: HiddenMeasurementRequest | null) => {
+ requestRef.current = value;
+ setMeasurementRequest((current) =>
+ current?.requestId === value?.requestId ? current : value
+ );
+ }, []);
+
+ const stopTextEngine = useCallback(() => {
+ transitionRef.current?.stop();
+ transitionRef.current = null;
+ }, []);
+
+ const finishIfSettled = useCallback(() => {
+ if (
+ !transitionStartedRef.current ||
+ !textPhaseCompleteRef.current ||
+ !widthPhaseCompleteRef.current ||
+ pendingTargetCommitRef.current !== null
+ ) {
+ return;
+ }
+ transitionStartedRef.current = false;
+ pendingTransitionRef.current = null;
+ timelineRef.current = null;
+ transitionSourceTextRef.current = null;
+ activeFlowRef.current = 'initial';
+ growthTextPendingRef.current = false;
+ shrinkWidthPendingRef.current = false;
+ heldCandidateRef.current = null;
+ setTransientTextFrame(false);
+ setAlignTextLogicalLeading(false);
+ displayedFrameWidthRef.current = targetWidthRef.current;
+ displayedFrameMetricRevisionRef.current = metricRevisionRef.current;
+ }, []);
+
+ const auxiliaryMetricsReady = useCallback(
+ () => beforeWidthRef.current !== null && afterWidthRef.current !== null,
+ []
+ );
+
+ const requestMeasurement = useCallback(
+ (kind: TextMeasurementKind, text: string) => {
+ if (!mountedRef.current || !text) return;
+ if (!auxiliaryMetricsReady()) {
+ deferredMeasurementRef.current = { kind, text };
+ return;
+ }
+ requestSequenceRef.current += 1;
+ const request: HiddenMeasurementRequest = {
+ generation: generationRef.current,
+ requestId: requestSequenceRef.current,
+ metricRevision: metricRevisionRef.current,
+ kind,
+ text,
+ beforeWidth: beforeWidthRef.current ?? 0,
+ afterWidth: afterWidthRef.current ?? 0,
+ hasBefore: beforePresentRef.current,
+ hasAfter: afterPresentRef.current,
+ };
+ deferredMeasurementRef.current = null;
+ syncRequest(request);
+ },
+ [auxiliaryMetricsReady, syncRequest]
+ );
+
+ const currentAvailableWidth = useCallback(() => {
+ const rendered = widthCommands.getCurrent();
+ const actual = availableWidthRef.current;
+ if (rendered === null) return actual;
+ if (actual === null) return rendered;
+ return Math.min(rendered, actual);
+ }, [widthCommands]);
+
+ const isConstrainedFallback = useCallback(() => {
+ if (widthModeRef.current !== 'auto') return true;
+ return externallyConstrainedRef.current;
+ }, []);
+
+ const settlePendingTargetCommit = useCallback(() => {
+ const pending = pendingTargetCommitRef.current;
+ if (
+ pending === null ||
+ !mountedRef.current ||
+ pending.generation !== generationRef.current ||
+ pending.metricRevision !== metricRevisionRef.current ||
+ pending.text !== targetTextRef.current ||
+ pending.acknowledgedLayoutRevision === null ||
+ pending.acknowledgedLayoutRevision < pending.publishedLayoutRevision
+ ) {
+ return false;
+ }
+ const availableWidth = currentAvailableWidth();
+ const fits =
+ availableWidth !== null &&
+ hasPhysicalPixelFit(pending.requiredWidth, availableWidth);
+ if (!fits && !isConstrainedFallback()) return false;
+
+ pendingTargetCommitRef.current = null;
+ textPhaseCompleteRef.current = true;
+ setTransientTextFrame(false);
+ if (
+ activeFlowRef.current === 'shrink-last' &&
+ widthPhaseCompleteRef.current &&
+ targetWidthRef.current !== null
+ ) {
+ widthCommands.setImmediately(targetWidthRef.current);
+ }
+ finishIfSettled();
+ return true;
+ }, [
+ currentAvailableWidth,
+ finishIfSettled,
+ isConstrainedFallback,
+ widthCommands,
+ ]);
+
+ const retryHeldCandidateRef = useRef<() => void>(() => undefined);
+ const markWidthComplete = useCallback(() => {
+ widthPhaseCompleteRef.current = true;
+ widthPhaseStartedAtRef.current = null;
+ retryHeldCandidateRef.current();
+ finishIfSettled();
+ }, [finishIfSettled]);
+
+ const startTransitionWidth = useCallback(
+ (
+ generation: number,
+ targetWidth: number,
+ durationMs: number,
+ onProgress?: (progress: number) => void
+ ) => {
+ if (!mountedRef.current || generationRef.current !== generation) return;
+ widthPhaseCompleteRef.current = false;
+ widthPhaseStartedAtRef.current = getFrameTimestamp();
+ widthPhaseDurationRef.current = durationMs;
+ widthCommands.animateTextTransitionTo(targetWidth, {
+ durationMs,
+ floor: () =>
+ activeFlowRef.current === 'shrink-last'
+ ? displayedFrameWidthRef.current
+ : null,
+ onProgress: (progress) => {
+ if (!mountedRef.current || generationRef.current !== generation) {
+ return;
+ }
+ onProgress?.(progress);
+ },
+ onComplete: () => {
+ if (!mountedRef.current || generationRef.current !== generation) {
+ return;
+ }
+ markWidthComplete();
+ },
+ });
+ },
+ [markWidthComplete, widthCommands]
+ );
+
+ const acceptCandidate = useCallback(
+ (candidate: HeldCandidate) => {
+ if (
+ !mountedRef.current ||
+ candidate.generation !== generationRef.current ||
+ candidate.metricRevision !== metricRevisionRef.current
+ ) {
+ return false;
+ }
+ const availableWidth = currentAvailableWidth();
+ const fits =
+ availableWidth !== null &&
+ hasPhysicalPixelFit(candidate.requiredWidth, availableWidth);
+ if (!fits && !isConstrainedFallback()) {
+ heldCandidateRef.current = candidate;
+ return false;
+ }
+
+ heldCandidateRef.current = null;
+ displayedFrameWidthRef.current = candidate.requiredWidth;
+ displayedFrameMetricRevisionRef.current = candidate.metricRevision;
+ syncDisplayedText(candidate.text);
+ const isFinal =
+ textEngineCompleteRef.current &&
+ candidate.text === targetTextRef.current;
+ if (isFinal) {
+ publicationSequenceRef.current += 1;
+ const publicationId = publicationSequenceRef.current;
+ pendingTargetCommitRef.current = {
+ generation: candidate.generation,
+ publicationId,
+ metricRevision: candidate.metricRevision,
+ text: candidate.text,
+ requiredWidth: candidate.requiredWidth,
+ publishedLayoutRevision: layoutRevisionRef.current,
+ acknowledgedLayoutRevision: null,
+ };
+ textPhaseCompleteRef.current = false;
+ setVisibleTextPublicationId(publicationId);
+ setTransientTextFrame(true);
+ } else {
+ setTransientTextFrame(true);
+ }
+ return true;
+ },
+ [currentAvailableWidth, isConstrainedFallback, syncDisplayedText]
+ );
+
+ const retryHeldCandidate = useCallback(() => {
+ const candidate = heldCandidateRef.current;
+ if (candidate !== null) acceptCandidate(candidate);
+ }, [acceptCandidate]);
+ retryHeldCandidateRef.current = retryHeldCandidate;
+
+ const startTextPhaseRef = useRef<
+ (generation: number, sourceText: string, targetText: string) => void
+ >(() => undefined);
+
+ const startTextPhase = useCallback(
+ (generation: number, sourceText: string, targetText: string) => {
+ if (
+ !mountedRef.current ||
+ generationRef.current !== generation ||
+ transitionRef.current !== null
+ ) {
+ return;
+ }
+ const config = liveConfigRef.current;
+ if (config.reduceMotion || !config.textTransition) {
+ textEngineCompleteRef.current = true;
+ requestMeasurement('candidate', targetText);
+ return;
+ }
+ transitionRef.current = runTextTransition({
+ fromText: sourceText,
+ targetText,
+ onTick: (elapsedMs, timeline) => {
+ if (!mountedRef.current || generationRef.current !== generation)
+ return;
+ if (
+ shrinkWidthPendingRef.current &&
+ elapsedMs >= timeline.totalDurationMs * PHASE_LEAD
+ ) {
+ shrinkWidthPendingRef.current = false;
+ const targetWidth = targetWidthRef.current;
+ if (targetWidth !== null) {
+ startTransitionWidth(
+ generation,
+ targetWidth,
+ timeline.totalDurationMs
+ );
+ } else {
+ markWidthComplete();
+ }
+ }
+ },
+ onUpdate: (value) => {
+ if (!mountedRef.current || generationRef.current !== generation)
+ return;
+ latestCandidateRef.current = value;
+ if (refreshPendingRef.current) return;
+ requestMeasurement('candidate', value);
+ },
+ onComplete: () => {
+ if (!mountedRef.current || generationRef.current !== generation)
+ return;
+ transitionRef.current = null;
+ textEngineCompleteRef.current = true;
+ requestMeasurement('candidate', targetText);
+ },
+ });
+ },
+ [markWidthComplete, requestMeasurement, startTransitionWidth]
+ );
+ startTextPhaseRef.current = startTextPhase;
+
+ const startMeasuredTransition = useCallback(
+ (pending: PendingTransition, targetWidth: number) => {
+ if (!mountedRef.current || pending.generation !== generationRef.current) {
+ return;
+ }
+ const sourceWidth = pending.sourceWidth ?? widthCommands.getCurrent();
+ const timeline = getTextTransitionTimeline(
+ pending.sourceText,
+ pending.targetText
+ );
+ const flow =
+ widthModeRef.current === 'auto'
+ ? getAutoWidthTextFlow(sourceWidth, targetWidth)
+ : 'text-only';
+ timelineRef.current = timeline;
+ transitionSourceTextRef.current = pending.sourceText;
+ activeFlowRef.current = flow;
+ targetWidthRef.current = targetWidth;
+ displayedFrameWidthRef.current = sourceWidth;
+ displayedFrameMetricRevisionRef.current = metricRevisionRef.current;
+ transitionStartedRef.current = true;
+ textEngineCompleteRef.current = false;
+ textPhaseCompleteRef.current = false;
+ widthPhaseCompleteRef.current =
+ widthModeRef.current !== 'auto' || flow === 'text-only';
+ growthTextPendingRef.current = false;
+ shrinkWidthPendingRef.current = false;
+ setTransientTextFrame(true);
+ setAlignTextLogicalLeading(
+ flow === 'shrink-last' ||
+ (widthModeRef.current !== 'auto' &&
+ timeline.targetLength < timeline.sourceLength)
+ );
+ animatedOpacity.setValue(1);
+
+ const config = liveConfigRef.current;
+ if (widthModeRef.current !== 'auto' || !config.animateSize) {
+ if (widthModeRef.current === 'auto') {
+ widthCommands.setImmediately(targetWidth);
+ }
+ widthPhaseCompleteRef.current = true;
+ startTextPhaseRef.current(
+ pending.generation,
+ pending.sourceText,
+ pending.targetText
+ );
+ return;
+ }
+
+ if (flow === 'initial') {
+ widthCommands.setImmediately(targetWidth);
+ widthPhaseCompleteRef.current = true;
+ startTextPhaseRef.current(
+ pending.generation,
+ pending.sourceText,
+ pending.targetText
+ );
+ } else if (flow === 'text-only') {
+ const availableWidth = currentAvailableWidth();
+ if (
+ availableWidth === null ||
+ !hasPhysicalPixelFit(targetWidth, availableWidth)
+ ) {
+ widthCommands.setImmediately(targetWidth);
+ }
+ startTextPhaseRef.current(
+ pending.generation,
+ pending.sourceText,
+ pending.targetText
+ );
+ } else if (flow === 'grow-first') {
+ growthTextPendingRef.current = true;
+ startTransitionWidth(
+ pending.generation,
+ targetWidth,
+ timeline.totalDurationMs,
+ (progress) => {
+ if (growthTextPendingRef.current && progress >= PHASE_LEAD) {
+ growthTextPendingRef.current = false;
+ startTextPhaseRef.current(
+ pending.generation,
+ pending.sourceText,
+ pending.targetText
+ );
+ }
+ retryHeldCandidate();
+ }
+ );
+ } else {
+ shrinkWidthPendingRef.current = true;
+ startTextPhaseRef.current(
+ pending.generation,
+ pending.sourceText,
+ pending.targetText
+ );
+ }
+ },
+ [
+ animatedOpacity,
+ currentAvailableWidth,
+ retryHeldCandidate,
+ startTransitionWidth,
+ widthCommands,
+ ]
+ );
+
+ const settleMeasuredTarget = useCallback(
+ (targetText: string, targetWidth: number) => {
+ targetWidthRef.current = targetWidth;
+ displayedFrameWidthRef.current = targetWidth;
+ displayedFrameMetricRevisionRef.current = metricRevisionRef.current;
+ animatedOpacity.setValue(1);
+ if (widthModeRef.current === 'auto') {
+ if (
+ widthCommands.getCurrent() === null ||
+ !liveConfigRef.current.animateSize ||
+ liveConfigRef.current.reduceMotion
+ ) {
+ widthCommands.setImmediately(targetWidth);
+ } else {
+ widthCommands.animateTo(targetWidth);
+ }
+ }
+ syncDisplayedText(targetText);
+ setTransientTextFrame(false);
+ setAlignTextLogicalLeading(false);
+ },
+ [animatedOpacity, syncDisplayedText, widthCommands]
+ );
+
+ const startMeasuredAtomicHandoff = useCallback(
+ (pending: PendingTransition, targetWidth: number) => {
+ if (!mountedRef.current || pending.generation !== generationRef.current) {
+ return;
+ }
+ const sourceWidth = pending.sourceWidth ?? widthCommands.getCurrent();
+ const flow = getAutoWidthTextFlow(sourceWidth, targetWidth);
+ transitionSourceTextRef.current = pending.sourceText;
+ targetWidthRef.current = targetWidth;
+ displayedFrameWidthRef.current = sourceWidth;
+ displayedFrameMetricRevisionRef.current = metricRevisionRef.current;
+ latestCandidateRef.current = pending.targetText;
+
+ const config = liveConfigRef.current;
+ if (flow === 'initial' || !config.animateSize || config.reduceMotion) {
+ settleMeasuredTarget(pending.targetText, targetWidth);
+ pendingTransitionRef.current = null;
+ return;
+ }
+
+ activeFlowRef.current = flow;
+ transitionStartedRef.current = true;
+ textEngineCompleteRef.current = true;
+ textPhaseCompleteRef.current = false;
+ widthPhaseCompleteRef.current = false;
+ growthTextPendingRef.current = false;
+ shrinkWidthPendingRef.current = false;
+ setTransientTextFrame(true);
+ setAlignTextLogicalLeading(false);
+ animatedOpacity.setValue(1);
+
+ const targetCandidate: HeldCandidate = {
+ generation: pending.generation,
+ metricRevision: metricRevisionRef.current,
+ text: pending.targetText,
+ requiredWidth: targetWidth,
+ };
+ acceptCandidate(targetCandidate);
+
+ startTransitionWidth(
+ pending.generation,
+ targetWidth,
+ BUTTON_SIZE_ANIMATION_DURATION_MS,
+ flow === 'grow-first' ? retryHeldCandidate : undefined
+ );
+ },
+ [
+ acceptCandidate,
+ animatedOpacity,
+ retryHeldCandidate,
+ settleMeasuredTarget,
+ startTransitionWidth,
+ widthCommands,
+ ]
+ );
+
+ const retargetActiveWidth = useCallback(
+ (targetWidth: number) => {
+ if (!transitionStartedRef.current || widthModeRef.current !== 'auto') {
+ return;
+ }
+ targetWidthRef.current = targetWidth;
+ if (widthPhaseCompleteRef.current) {
+ widthCommands.setImmediately(targetWidth);
+ return;
+ }
+ const startedAt = widthPhaseStartedAtRef.current;
+ if (startedAt === null) return;
+ const elapsed = Math.max(0, getFrameTimestamp() - startedAt);
+ const remaining = Math.max(0, widthPhaseDurationRef.current - elapsed);
+ startTransitionWidth(
+ generationRef.current,
+ targetWidth,
+ remaining,
+ activeFlowRef.current === 'grow-first'
+ ? (progress) => {
+ if (growthTextPendingRef.current && progress >= PHASE_LEAD) {
+ growthTextPendingRef.current = false;
+ const pending = pendingTransitionRef.current;
+ if (pending !== null) {
+ startTextPhaseRef.current(
+ pending.generation,
+ pending.sourceText,
+ pending.targetText
+ );
+ }
+ }
+ retryHeldCandidate();
+ }
+ : undefined
+ );
+ },
+ [retryHeldCandidate, startTransitionWidth, widthCommands]
+ );
+
+ const handleHiddenMeasurementLayout = useCallback(
+ (request: HiddenMeasurementRequest, event: LayoutChangeEvent) => {
+ const current = requestRef.current;
+ const measuredWidth = event.nativeEvent.layout.width;
+ if (
+ !mountedRef.current ||
+ current === null ||
+ current.requestId !== request.requestId ||
+ current.generation !== request.generation ||
+ current.metricRevision !== request.metricRevision ||
+ request.generation !== generationRef.current ||
+ request.metricRevision !== metricRevisionRef.current ||
+ !Number.isFinite(measuredWidth) ||
+ measuredWidth < 0
+ ) {
+ return;
+ }
+ const requiredWidth = roundRequiredWidthToPhysicalPixel(measuredWidth);
+ syncRequest(null);
+
+ if (request.kind === 'source') {
+ displayedFrameWidthRef.current = requiredWidth;
+ displayedFrameMetricRevisionRef.current = request.metricRevision;
+ const pending = pendingTransitionRef.current;
+ if (pending !== null && pending.generation === request.generation) {
+ pending.sourceWidth = requiredWidth;
+ requestMeasurement('target', pending.targetText);
+ }
+ return;
+ }
+
+ if (request.kind === 'target') {
+ targetWidthRef.current = requiredWidth;
+ const pending = pendingTransitionRef.current;
+ if (refreshPendingRef.current && transitionStartedRef.current) {
+ refreshPendingRef.current = false;
+ retargetActiveWidth(requiredWidth);
+ const latest = latestCandidateRef.current;
+ if (latest !== null) requestMeasurement('candidate', latest);
+ return;
+ }
+ if (pending === null || pending.generation !== request.generation) {
+ return;
+ }
+ const shouldAnimate =
+ liveConfigRef.current.textTransition &&
+ !liveConfigRef.current.reduceMotion &&
+ pending.sourceText.length > 0 &&
+ pending.targetText.length > 0 &&
+ pending.sourceText !== pending.targetText;
+ if (!shouldAnimate) {
+ startMeasuredAtomicHandoff(pending, requiredWidth);
+ return;
+ }
+ startMeasuredTransition(pending, requiredWidth);
+ return;
+ }
+
+ acceptCandidate({
+ generation: request.generation,
+ metricRevision: request.metricRevision,
+ text: request.text,
+ requiredWidth,
+ });
+ },
+ [
+ acceptCandidate,
+ requestMeasurement,
+ retargetActiveWidth,
+ startMeasuredAtomicHandoff,
+ startMeasuredTransition,
+ syncRequest,
+ ]
+ );
+
+ const beginCurrentTarget = useCallback(
+ (targetText: string | null) => {
+ const generation = generationRef.current;
+ const sourceText = displayedTextRef.current;
+ targetTextRef.current = targetText;
+ latestCandidateRef.current = null;
+ heldCandidateRef.current = null;
+ targetWidthRef.current = null;
+
+ if (targetText === null) {
+ pendingTransitionRef.current = null;
+ syncDisplayedText(null);
+ setTransientTextFrame(false);
+ setAlignTextLogicalLeading(false);
+ if (widthModeRef.current === 'auto') widthCommands.setImmediately(null);
+ return;
+ }
+
+ if (sourceText === null || sourceText === targetText) {
+ syncDisplayedText(targetText);
+ } else {
+ setTransientTextFrame(
+ liveConfigRef.current.textTransition &&
+ !liveConfigRef.current.reduceMotion
+ );
+ }
+
+ if (widthModeRef.current !== 'auto') {
+ if (
+ sourceText !== null &&
+ sourceText !== targetText &&
+ liveConfigRef.current.textTransition &&
+ !liveConfigRef.current.reduceMotion
+ ) {
+ const pending = {
+ generation,
+ sourceText,
+ targetText,
+ sourceWidth: currentAvailableWidth(),
+ };
+ pendingTransitionRef.current = pending;
+ startMeasuredTransition(pending, currentAvailableWidth() ?? 0);
+ } else {
+ syncDisplayedText(targetText);
+ setTransientTextFrame(false);
+ }
+ return;
+ }
+
+ const pending: PendingTransition = {
+ generation,
+ sourceText: sourceText ?? targetText,
+ targetText,
+ sourceWidth:
+ displayedFrameMetricRevisionRef.current === metricRevisionRef.current
+ ? displayedFrameWidthRef.current
+ : null,
+ };
+ pendingTransitionRef.current = pending;
+ if (pending.sourceWidth === null) {
+ requestMeasurement('source', pending.sourceText);
+ } else {
+ requestMeasurement('target', targetText);
+ }
+ },
+ [
+ currentAvailableWidth,
+ requestMeasurement,
+ startMeasuredTransition,
+ syncDisplayedText,
+ widthCommands,
+ ]
+ );
+
+ const invalidateTransition = useCallback(() => {
+ generationRef.current += 1;
+ stopTextEngine();
+ syncRequest(null);
+ deferredMeasurementRef.current = null;
+ pendingTransitionRef.current = null;
+ pendingTargetCommitRef.current = null;
+ heldCandidateRef.current = null;
+ latestCandidateRef.current = null;
+ refreshPendingRef.current = false;
+ transitionStartedRef.current = false;
+ textEngineCompleteRef.current = false;
+ textPhaseCompleteRef.current = false;
+ widthPhaseCompleteRef.current = true;
+ growthTextPendingRef.current = false;
+ shrinkWidthPendingRef.current = false;
+ widthPhaseStartedAtRef.current = null;
+ timelineRef.current = null;
+ transitionSourceTextRef.current = null;
+ externallyConstrainedRef.current = false;
+ widthCommands.cancel();
+ }, [stopTextEngine, syncRequest, widthCommands]);
+
+ const refreshMeasurements = useCallback(() => {
+ if (!mountedRef.current) return;
+ metricRevisionRef.current += 1;
+ displayedFrameMetricRevisionRef.current = null;
+ heldCandidateRef.current = null;
+ syncRequest(null);
+ const target = targetTextRef.current;
+ const displayed = displayedTextRef.current;
+ if (target === null || displayed === null) return;
+ if (transitionStartedRef.current) {
+ refreshPendingRef.current = true;
+ const pending = pendingTransitionRef.current;
+ if (pending !== null) pending.sourceWidth = null;
+ requestMeasurement('source', displayed);
+ return;
+ }
+ pendingTransitionRef.current = {
+ generation: generationRef.current,
+ sourceText: displayed,
+ targetText: target,
+ sourceWidth: null,
+ };
+ requestMeasurement('source', displayed);
+ }, [requestMeasurement, syncRequest]);
+
+ useLayoutEffect(() => {
+ if (measurementSignatureRef.current === measurementSignature) return;
+ measurementSignatureRef.current = measurementSignature;
+ refreshMeasurements();
+ }, [measurementSignature, refreshMeasurements]);
+
+ useLayoutEffect(() => {
+ const beforeChanged = beforePresentRef.current !== hasBefore;
+ const afterChanged = afterPresentRef.current !== hasAfter;
+ if (!beforeChanged && !afterChanged) return;
+ beforePresentRef.current = hasBefore;
+ afterPresentRef.current = hasAfter;
+ beforeWidthRef.current = hasBefore ? null : 0;
+ afterWidthRef.current = hasAfter ? null : 0;
+ refreshMeasurements();
+ }, [hasAfter, hasBefore, refreshMeasurements]);
+
+ useLayoutEffect(() => {
+ const previousBehavior = previousBehaviorRef.current;
+ const behaviorChanged =
+ previousBehavior.animateSize !== animateSize ||
+ previousBehavior.reduceMotion !== reduceMotion ||
+ previousBehavior.textTransition !== textTransition ||
+ previousBehavior.widthMode !== widthMode;
+ previousBehaviorRef.current = {
+ animateSize,
+ reduceMotion,
+ textTransition,
+ widthMode,
+ };
+ if (!didInitializeRef.current) {
+ didInitializeRef.current = true;
+ targetTextRef.current = stringChildren;
+ beginCurrentTarget(stringChildren);
+ return;
+ }
+ if (stringChildren === targetTextRef.current) {
+ if (behaviorChanged) {
+ const fittingSource = transitionSourceTextRef.current;
+ const isEndingScramble =
+ previousBehavior.textTransition &&
+ !previousBehavior.reduceMotion &&
+ (!textTransition || reduceMotion) &&
+ fittingSource !== null;
+ const replacementFrame =
+ isEndingScramble && activeFlowRef.current === 'grow-first'
+ ? fittingSource
+ : isEndingScramble
+ ? stringChildren
+ : null;
+ invalidateTransition();
+ if (replacementFrame !== null) {
+ syncDisplayedText(replacementFrame);
+ }
+ beginCurrentTarget(stringChildren);
+ }
+ return;
+ }
+ invalidateTransition();
+ beginCurrentTarget(stringChildren);
+ }, [
+ beginCurrentTarget,
+ invalidateTransition,
+ syncDisplayedText,
+ animateSize,
+ reduceMotion,
+ stringChildren,
+ textTransition,
+ widthMode,
+ ]);
+
+ const onVisibleContentLayout = useCallback(
+ (event: LayoutChangeEvent) => {
+ const nextWidth = event.nativeEvent.layout.width;
+ if (!Number.isFinite(nextWidth) || nextWidth < 0) return;
+ availableWidthRef.current = nextWidth;
+ layoutRevisionRef.current += 1;
+ const commanded = widthCommands.getCurrent();
+ if (widthModeRef.current !== 'auto') {
+ externallyConstrainedRef.current = false;
+ } else if (
+ transitionStartedRef.current &&
+ widthPhaseCompleteRef.current
+ ) {
+ externallyConstrainedRef.current =
+ commanded !== null &&
+ !hasPhysicalPixelFit(commanded, nextWidth) &&
+ Math.abs(commanded - nextWidth) > 0.5;
+ } else {
+ externallyConstrainedRef.current = false;
+ }
+ retryHeldCandidate();
+ settlePendingTargetCommit();
+
+ if (stringChildren !== null || widthModeRef.current !== 'auto') return;
+ animatedOpacity.setValue(1);
+ if (
+ commanded === null ||
+ !liveConfigRef.current.animateSize ||
+ liveConfigRef.current.reduceMotion
+ ) {
+ widthCommands.setImmediately(nextWidth);
+ } else {
+ widthCommands.animateTo(nextWidth);
+ }
+ },
+ [
+ animatedOpacity,
+ retryHeldCandidate,
+ settlePendingTargetCommit,
+ stringChildren,
+ widthCommands,
+ ]
+ );
+
+ const onVisibleTextLayout = useCallback(
+ (
+ publicationId: number,
+ _event: NativeSyntheticEvent
+ ) => {
+ const pending = pendingTargetCommitRef.current;
+ if (
+ pending === null ||
+ pending.publicationId !== publicationId ||
+ pending.generation !== generationRef.current ||
+ pending.metricRevision !== metricRevisionRef.current ||
+ pending.text !== displayedTextRef.current
+ ) {
+ return;
+ }
+ pending.acknowledgedLayoutRevision = layoutRevisionRef.current;
+ settlePendingTargetCommit();
+ },
+ [settlePendingTargetCommit]
+ );
+
+ const handleAuxiliaryLayout = useCallback(
+ (kind: 'before' | 'after', event: LayoutChangeEvent) => {
+ const width = event.nativeEvent.layout.width;
+ if (!Number.isFinite(width) || width < 0) return;
+ const ref = kind === 'before' ? beforeWidthRef : afterWidthRef;
+ if (ref.current !== null && Math.abs(ref.current - width) < 0.001) return;
+ const wasReady = auxiliaryMetricsReady();
+ ref.current = width;
+ const isReady = auxiliaryMetricsReady();
+ if (wasReady && isReady) {
+ refreshMeasurements();
+ return;
+ }
+ if (isReady) {
+ const deferred = deferredMeasurementRef.current;
+ if (deferred !== null) {
+ requestMeasurement(deferred.kind, deferred.text);
+ }
+ }
+ },
+ [auxiliaryMetricsReady, refreshMeasurements, requestMeasurement]
+ );
+
+ useEffect(
+ () => () => {
+ mountedRef.current = false;
+ generationRef.current += 1;
+ stopTextEngine();
+ requestRef.current = null;
+ deferredMeasurementRef.current = null;
+ heldCandidateRef.current = null;
+ pendingTargetCommitRef.current = null;
+ widthCommands.cancel();
+ },
+ [stopTextEngine, widthCommands]
+ );
+
+ return {
+ alignTextLogicalLeading,
+ displayedText,
+ measurementRequest,
+ onAfterLayout: (event: LayoutChangeEvent) =>
+ handleAuxiliaryLayout('after', event),
+ onBeforeLayout: (event: LayoutChangeEvent) =>
+ handleAuxiliaryLayout('before', event),
+ onHiddenMeasurementLayout: handleHiddenMeasurementLayout,
+ onVisibleContentLayout,
+ onVisibleTextLayout,
+ transientTextFrame,
+ visibleTextPublicationId,
+ };
+};
+
+export default useAutoWidthTextCoordinator;
diff --git a/src/size/useButtonHeightOwner.ts b/src/size/useButtonHeightOwner.ts
new file mode 100644
index 0000000..eea87d8
--- /dev/null
+++ b/src/size/useButtonHeightOwner.ts
@@ -0,0 +1,215 @@
+import {
+ useCallback,
+ useEffect,
+ useLayoutEffect,
+ useRef,
+ useState,
+} from 'react';
+import { Animated, Easing } from 'react-native';
+import {
+ areHeightDimensionsEqual,
+ type HeightDimensions,
+ type WidthMode,
+} from './contracts';
+
+const SIZE_ANIMATION_DURATION = 175;
+const SIZE_ANIMATION_EASING = Easing.bezier(0.3, 0.05, 0.2, 1);
+
+type UseButtonHeightOwnerOptions = {
+ animateSize: boolean;
+ dimensions: HeightDimensions;
+ reduceMotion: boolean;
+ widthMode: WidthMode;
+};
+
+const useButtonHeightOwner = ({
+ animateSize,
+ dimensions,
+ reduceMotion,
+ widthMode,
+}: UseButtonHeightOwnerOptions) => {
+ const [isAnimating, setIsAnimating] = useState(false);
+ const [renderedDimensions, setRenderedDimensions] = useState(dimensions);
+ const currentRef = useRef(dimensions);
+ const animationRef = useRef(null);
+ const animationTokenRef = useRef(0);
+ const isAnimatingRef = useRef(false);
+ const didInitializeRef = useRef(false);
+ const widthModeRef = useRef(widthMode);
+ const animatedContainerHeight = useRef(
+ new Animated.Value(dimensions.container)
+ ).current;
+ const animatedFaceHeight = useRef(
+ new Animated.Value(dimensions.face)
+ ).current;
+ const animatedShadowHeight = useRef(
+ new Animated.Value(dimensions.shadow)
+ ).current;
+
+ const setAnimatingFlag = useCallback((value: boolean) => {
+ isAnimatingRef.current = value;
+ setIsAnimating(value);
+ }, []);
+
+ const snapshot = useCallback(
+ (callback: (value: HeightDimensions) => void) => {
+ if (!isAnimatingRef.current) {
+ callback(currentRef.current);
+ return;
+ }
+
+ animatedContainerHeight.stopAnimation((containerValue) => {
+ animatedFaceHeight.stopAnimation((faceValue) => {
+ animatedShadowHeight.stopAnimation((shadowValue) => {
+ animationRef.current?.stop();
+ animationRef.current = null;
+ setAnimatingFlag(false);
+ const resolvedDimensions = {
+ container:
+ typeof containerValue === 'number'
+ ? containerValue
+ : currentRef.current.container,
+ face:
+ typeof faceValue === 'number'
+ ? faceValue
+ : currentRef.current.face,
+ shadow:
+ typeof shadowValue === 'number'
+ ? shadowValue
+ : currentRef.current.shadow,
+ };
+ setRenderedDimensions(resolvedDimensions);
+ callback(resolvedDimensions);
+ });
+ });
+ });
+ },
+ [
+ animatedContainerHeight,
+ animatedFaceHeight,
+ animatedShadowHeight,
+ setAnimatingFlag,
+ ]
+ );
+
+ const setImmediately = useCallback(
+ (next: HeightDimensions) => {
+ animationTokenRef.current += 1;
+ animationRef.current?.stop();
+ animationRef.current = null;
+ setAnimatingFlag(false);
+ currentRef.current = next;
+ setRenderedDimensions((current) =>
+ areHeightDimensionsEqual(current, next) ? current : next
+ );
+ animatedContainerHeight.setValue(next.container);
+ animatedFaceHeight.setValue(next.face);
+ animatedShadowHeight.setValue(next.shadow);
+ },
+ [
+ animatedContainerHeight,
+ animatedFaceHeight,
+ animatedShadowHeight,
+ setAnimatingFlag,
+ ]
+ );
+
+ const animateTo = useCallback(
+ (next: HeightDimensions) => {
+ if (
+ !animateSize ||
+ reduceMotion ||
+ areHeightDimensionsEqual(currentRef.current, next)
+ ) {
+ setImmediately(next);
+ return;
+ }
+
+ snapshot((current) => {
+ if (areHeightDimensionsEqual(current, next)) {
+ setImmediately(next);
+ return;
+ }
+ animationTokenRef.current += 1;
+ const animationToken = animationTokenRef.current;
+ currentRef.current = next;
+ setRenderedDimensions(next);
+ animatedContainerHeight.setValue(current.container);
+ animatedFaceHeight.setValue(current.face);
+ animatedShadowHeight.setValue(current.shadow);
+ setAnimatingFlag(true);
+ const animation = Animated.parallel([
+ Animated.timing(animatedContainerHeight, {
+ duration: SIZE_ANIMATION_DURATION,
+ easing: SIZE_ANIMATION_EASING,
+ toValue: next.container,
+ useNativeDriver: false,
+ }),
+ Animated.timing(animatedFaceHeight, {
+ duration: SIZE_ANIMATION_DURATION,
+ easing: SIZE_ANIMATION_EASING,
+ toValue: next.face,
+ useNativeDriver: false,
+ }),
+ Animated.timing(animatedShadowHeight, {
+ duration: SIZE_ANIMATION_DURATION,
+ easing: SIZE_ANIMATION_EASING,
+ toValue: next.shadow,
+ useNativeDriver: false,
+ }),
+ ]);
+ animationRef.current = animation;
+ animation.start(({ finished }) => {
+ if (!finished || animationTokenRef.current !== animationToken) return;
+ animationRef.current = null;
+ setAnimatingFlag(false);
+ currentRef.current = next;
+ });
+ });
+ },
+ [
+ animateSize,
+ animatedContainerHeight,
+ animatedFaceHeight,
+ animatedShadowHeight,
+ reduceMotion,
+ setAnimatingFlag,
+ setImmediately,
+ snapshot,
+ ]
+ );
+
+ useLayoutEffect(() => {
+ const previousWidthMode = widthModeRef.current;
+ widthModeRef.current = widthMode;
+ if (!didInitializeRef.current) {
+ didInitializeRef.current = true;
+ setImmediately(dimensions);
+ return;
+ }
+ if (previousWidthMode !== widthMode) {
+ setImmediately(dimensions);
+ return;
+ }
+ animateTo(dimensions);
+ }, [animateTo, dimensions, setImmediately, widthMode]);
+
+ useEffect(
+ () => () => {
+ animationTokenRef.current += 1;
+ animationRef.current?.stop();
+ animationRef.current = null;
+ },
+ []
+ );
+
+ return {
+ animatedContainerHeight,
+ animatedFaceHeight,
+ animatedShadowHeight,
+ isAnimating,
+ renderedDimensions,
+ };
+};
+
+export default useButtonHeightOwner;
diff --git a/src/size/useButtonWidthOwner.ts b/src/size/useButtonWidthOwner.ts
new file mode 100644
index 0000000..4131c30
--- /dev/null
+++ b/src/size/useButtonWidthOwner.ts
@@ -0,0 +1,337 @@
+import {
+ useCallback,
+ useEffect,
+ useLayoutEffect,
+ useMemo,
+ useRef,
+ useState,
+} from 'react';
+import { Animated, Easing } from 'react-native';
+import { cancelFrame, requestFrame, type FrameHandle } from '../frameLoop';
+import type { ButtonWidth } from '../types';
+import {
+ BUTTON_SIZE_ANIMATION_DURATION_MS,
+ getWidthMode,
+ type WidthCommandPort,
+ type WidthMode,
+} from './contracts';
+
+const SIZE_ANIMATION_EASING = Easing.bezier(0.3, 0.05, 0.2, 1);
+
+type UseButtonWidthOwnerOptions = {
+ animateSize: boolean;
+ animatedOpacity: Animated.Value;
+ reduceMotion: boolean;
+ stretch?: boolean;
+ width: ButtonWidth;
+};
+
+const useButtonWidthOwner = ({
+ animateSize,
+ animatedOpacity,
+ reduceMotion,
+ stretch,
+ width,
+}: UseButtonWidthOwnerOptions) => {
+ const widthMode = getWidthMode(width, stretch);
+ const initialWidth =
+ widthMode === 'fixed' && typeof width === 'number' ? width : null;
+ const [stateWidth, setStateWidth] = useState(initialWidth);
+ const [isAnimating, setIsAnimating] = useState(false);
+ const modeRef = useRef(widthMode);
+ const currentValueRef = useRef(initialWidth);
+ const animationRef = useRef(null);
+ const frameRef = useRef(null);
+ const animationTokenRef = useRef(0);
+ const isAnimatingRef = useRef(false);
+ const didInitializeRef = useRef(false);
+ const mountedRef = useRef(true);
+ const liveRef = useRef({ animateSize, reduceMotion });
+ const animatedWidth = useRef(new Animated.Value(initialWidth ?? 0)).current;
+
+ useLayoutEffect(() => {
+ liveRef.current = { animateSize, reduceMotion };
+ }, [animateSize, reduceMotion]);
+
+ const setAnimatingFlag = useCallback((value: boolean) => {
+ isAnimatingRef.current = value;
+ if (mountedRef.current) setIsAnimating(value);
+ }, []);
+
+ const cancelOwnedAnimation = useCallback(() => {
+ animationTokenRef.current += 1;
+ animationRef.current?.stop();
+ animationRef.current = null;
+ cancelFrame(frameRef.current);
+ frameRef.current = null;
+ setAnimatingFlag(false);
+ }, [setAnimatingFlag]);
+
+ const syncStateWidth = useCallback((value: number | null) => {
+ currentValueRef.current = value;
+ if (mountedRef.current) {
+ setStateWidth((currentValue) =>
+ currentValue === value ? currentValue : value
+ );
+ }
+ }, []);
+
+ const snapshot = useCallback(
+ (callback: (value: number | null) => void) => {
+ if (!isAnimatingRef.current) {
+ callback(currentValueRef.current);
+ return;
+ }
+
+ animatedWidth.stopAnimation((value) => {
+ cancelOwnedAnimation();
+ const resolvedValue =
+ typeof value === 'number' ? value : currentValueRef.current;
+ syncStateWidth(resolvedValue);
+ callback(resolvedValue);
+ });
+ },
+ [animatedWidth, cancelOwnedAnimation, syncStateWidth]
+ );
+
+ const setImmediately = useCallback(
+ (nextWidth: number | null) => {
+ cancelOwnedAnimation();
+ if (nextWidth !== null) animatedWidth.setValue(nextWidth);
+ syncStateWidth(nextWidth);
+ },
+ [animatedWidth, cancelOwnedAnimation, syncStateWidth]
+ );
+
+ const animateTo = useCallback(
+ (nextWidth: number, onComplete?: () => void) => {
+ const live = liveRef.current;
+ if (
+ !live.animateSize ||
+ live.reduceMotion ||
+ currentValueRef.current === null ||
+ currentValueRef.current === nextWidth
+ ) {
+ setImmediately(nextWidth);
+ onComplete?.();
+ return;
+ }
+
+ snapshot((snapshotWidth) => {
+ if (snapshotWidth === null || snapshotWidth === nextWidth) {
+ setImmediately(nextWidth);
+ onComplete?.();
+ return;
+ }
+
+ animationTokenRef.current += 1;
+ const animationToken = animationTokenRef.current;
+ animatedWidth.setValue(snapshotWidth);
+ syncStateWidth(nextWidth);
+ setAnimatingFlag(true);
+ const animation = Animated.timing(animatedWidth, {
+ duration: BUTTON_SIZE_ANIMATION_DURATION_MS,
+ easing: SIZE_ANIMATION_EASING,
+ toValue: nextWidth,
+ useNativeDriver: false,
+ });
+ animationRef.current = animation;
+ animation.start(({ finished }) => {
+ if (!finished || animationTokenRef.current !== animationToken) return;
+ animationRef.current = null;
+ setAnimatingFlag(false);
+ syncStateWidth(nextWidth);
+ onComplete?.();
+ });
+ });
+ },
+ [animatedWidth, setAnimatingFlag, setImmediately, snapshot, syncStateWidth]
+ );
+
+ const animateTextTransitionTo = useCallback(
+ (
+ nextWidth: number,
+ {
+ durationMs,
+ floor,
+ onComplete,
+ onProgress,
+ }: {
+ durationMs: number;
+ floor: () => number | null;
+ onComplete?: () => void;
+ onProgress?: (progress: number) => void;
+ }
+ ) => {
+ const live = liveRef.current;
+ const normalizedDuration = Number.isFinite(durationMs)
+ ? Math.max(0, durationMs)
+ : 0;
+ if (
+ !live.animateSize ||
+ live.reduceMotion ||
+ currentValueRef.current === null ||
+ normalizedDuration === 0
+ ) {
+ setImmediately(nextWidth);
+ onProgress?.(1);
+ onComplete?.();
+ return;
+ }
+
+ snapshot((snapshotWidth) => {
+ if (snapshotWidth === null) {
+ setImmediately(nextWidth);
+ onProgress?.(1);
+ onComplete?.();
+ return;
+ }
+
+ cancelOwnedAnimation();
+ const animationToken = animationTokenRef.current;
+ const fromWidth = snapshotWidth;
+ let startTimestamp: number | null = null;
+ setStateWidth(nextWidth);
+ currentValueRef.current = fromWidth;
+ animatedWidth.setValue(fromWidth);
+ setAnimatingFlag(true);
+
+ const tick = (timestamp: number) => {
+ if (animationTokenRef.current !== animationToken) return;
+ if (startTimestamp === null) startTimestamp = timestamp;
+ const elapsed = Math.max(0, timestamp - startTimestamp);
+ const progress = Math.min(1, elapsed / normalizedDuration);
+ const easedProgress = SIZE_ANIMATION_EASING(progress);
+ const nominal = fromWidth + (nextWidth - fromWidth) * easedProgress;
+ const currentFloor = floor();
+ const rendered =
+ currentFloor === null ? nominal : Math.max(nominal, currentFloor);
+ currentValueRef.current = rendered;
+ animatedWidth.setValue(rendered);
+ onProgress?.(progress);
+
+ if (animationTokenRef.current !== animationToken) return;
+ if (progress >= 1) {
+ frameRef.current = null;
+ setAnimatingFlag(false);
+ const finalFloor = floor();
+ const finalWidth =
+ finalFloor === null ? nextWidth : Math.max(nextWidth, finalFloor);
+ animatedWidth.setValue(finalWidth);
+ syncStateWidth(finalWidth);
+ onComplete?.();
+ return;
+ }
+ frameRef.current = requestFrame(tick);
+ };
+
+ frameRef.current = requestFrame(tick);
+ });
+ },
+ [
+ animatedWidth,
+ cancelOwnedAnimation,
+ setAnimatingFlag,
+ setImmediately,
+ snapshot,
+ syncStateWidth,
+ ]
+ );
+
+ const getCurrent = useCallback(() => currentValueRef.current, []);
+ const cancel = useCallback(() => {
+ if (!isAnimatingRef.current) {
+ cancelOwnedAnimation();
+ return;
+ }
+ animatedWidth.stopAnimation((value) => {
+ cancelOwnedAnimation();
+ if (typeof value === 'number') {
+ animatedWidth.setValue(value);
+ syncStateWidth(value);
+ }
+ });
+ }, [animatedWidth, cancelOwnedAnimation, syncStateWidth]);
+ const commands = useMemo(
+ () => ({
+ animateTextTransitionTo,
+ animateTo,
+ cancel,
+ getCurrent,
+ setImmediately,
+ snapshot,
+ }),
+ [
+ animateTextTransitionTo,
+ animateTo,
+ cancel,
+ getCurrent,
+ setImmediately,
+ snapshot,
+ ]
+ );
+
+ useLayoutEffect(() => {
+ const previousMode = modeRef.current;
+ modeRef.current = widthMode;
+
+ if (!didInitializeRef.current) {
+ didInitializeRef.current = true;
+ if (widthMode === 'fixed' && typeof width === 'number') {
+ setImmediately(width);
+ } else if (widthMode === 'auto') {
+ setImmediately(null);
+ }
+ return;
+ }
+
+ if (previousMode !== widthMode) {
+ if (widthMode === 'fixed' && typeof width === 'number') {
+ animatedOpacity.setValue(1);
+ setImmediately(width);
+ } else if (widthMode === 'stretch') {
+ animatedOpacity.setValue(1);
+ setImmediately(null);
+ } else {
+ animatedOpacity.setValue(0);
+ setImmediately(null);
+ }
+ return;
+ }
+
+ if (widthMode === 'fixed' && typeof width === 'number') animateTo(width);
+ }, [animateTo, animatedOpacity, setImmediately, width, widthMode]);
+
+ useLayoutEffect(() => {
+ if (
+ widthMode !== 'fixed' ||
+ typeof width !== 'number' ||
+ (animateSize && !reduceMotion)
+ ) {
+ return;
+ }
+ setImmediately(width);
+ }, [animateSize, reduceMotion, setImmediately, width, widthMode]);
+
+ useEffect(
+ () => () => {
+ mountedRef.current = false;
+ animationTokenRef.current += 1;
+ animationRef.current?.stop();
+ animationRef.current = null;
+ cancelFrame(frameRef.current);
+ frameRef.current = null;
+ },
+ []
+ );
+
+ return {
+ animatedWidth,
+ commands,
+ isAnimating,
+ resolvedWidth: stateWidth,
+ widthMode,
+ };
+};
+
+export default useButtonWidthOwner;
diff --git a/src/styles.ts b/src/styles.ts
index 35e1e46..8010fbe 100644
--- a/src/styles.ts
+++ b/src/styles.ts
@@ -1,14 +1,14 @@
-import { StyleSheet, ViewStyle } from 'react-native';
+import { StyleSheet, type ColorValue, type ViewStyle } from 'react-native';
import type { ButtonWidth } from './types';
type DynamicStyles = {
- backgroundActive?: string;
- backgroundColor?: string;
- backgroundDarker?: string;
- backgroundPlaceholder?: string;
- backgroundProgress?: string;
- backgroundShadow?: string;
- borderColor?: string;
+ backgroundActive?: ColorValue;
+ backgroundColor?: ColorValue;
+ backgroundDarker?: ColorValue;
+ backgroundPlaceholder?: ColorValue;
+ backgroundProgress?: ColorValue;
+ backgroundShadow?: ColorValue;
+ borderColor?: ColorValue;
borderRadius?: number;
borderBottomLeftRadius?: number;
borderBottomRightRadius?: number;
@@ -19,10 +19,11 @@ type DynamicStyles = {
paddingHorizontal: number;
paddingTop: number;
paddingBottom: number;
+ contentGap?: number;
raiseLevel: number;
stretch?: boolean;
textFontFamily?: string;
- textColor?: string;
+ textColor?: ColorValue;
textLineHeight?: number;
textSize?: number;
width?: ButtonWidth;
@@ -45,6 +46,7 @@ export const getStyles = ({
borderWidth,
height,
paddingBottom,
+ contentGap,
paddingHorizontal,
paddingTop,
raiseLevel,
@@ -89,6 +91,7 @@ export const getStyles = ({
color: textColor,
fontSize: textSize,
fontFamily: textFontFamily,
+ lineHeight: textLineHeight,
},
container__placeholder: {
height: textLineHeight,
@@ -98,6 +101,7 @@ export const getStyles = ({
paddingBottom,
paddingTop,
paddingHorizontal,
+ gap: contentGap,
},
shadow: {
bottom: -raiseLevel / 2,
@@ -134,6 +138,23 @@ export const getStyles = ({
};
export const styles = StyleSheet.create({
+ stretchTarget: {
+ width: '100%',
+ },
+ minimumTarget: {
+ alignItems: 'center',
+ justifyContent: 'center',
+ },
+ activeBackgroundSuppressed: {
+ opacity: 0,
+ },
+ hiddenMeasurementViewport: {
+ ...StyleSheet.absoluteFillObject,
+ opacity: 0,
+ },
+ motionLayer: {
+ ...StyleSheet.absoluteFillObject,
+ },
container: {
backgroundColor: 'transparent',
zIndex: 10,
@@ -149,6 +170,9 @@ export const styles = StyleSheet.create({
alignItems: 'center',
justifyContent: 'center',
},
+ container__viewLogicalLeading: {
+ justifyContent: 'flex-start',
+ },
container__placeholder: {
width: '55%',
overflow: 'hidden',
diff --git a/src/textTransition.ts b/src/textTransition.ts
index 5651a75..a3edc76 100644
--- a/src/textTransition.ts
+++ b/src/textTransition.ts
@@ -1,3 +1,4 @@
+import Graphemer from 'graphemer';
import { cancelFrame, requestFrame, type FrameHandle } from './frameLoop';
type TextTransitionOptions = {
@@ -5,7 +6,9 @@ type TextTransitionOptions = {
targetText: string;
onUpdate: (value: string) => void;
onComplete?: () => void;
+ onTick?: (elapsedMs: number, timeline: TextTransitionTimeline) => void;
random?: () => number;
+ slotStaggerMs?: number;
};
type TextTransitionController = {
@@ -16,101 +19,76 @@ type TextTransitionTimeline = {
sourceLength: number;
targetLength: number;
maxLength: number;
+ slotStaggerMs: number;
lastSourceRandomizeStartMs: number;
lastRandomizeStartMs: number;
collapseStartMs: number;
totalDurationMs: number;
};
-const LOWERCASE_LETTERS = 'abcdefghijklmnopqrstuvwxyz';
-const UPPERCASE_LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
+const graphemeSplitter = new Graphemer();
+
+const NARROW_LOWERCASE_LETTERS = 'iljtfr';
+const AVERAGE_LOWERCASE_LETTERS = 'acesuvxznhok';
+const WIDE_LOWERCASE_LETTERS = 'mwdbpqgy';
+const NARROW_UPPERCASE_LETTERS = NARROW_LOWERCASE_LETTERS.toUpperCase();
+const AVERAGE_UPPERCASE_LETTERS = AVERAGE_LOWERCASE_LETTERS.toUpperCase();
+const WIDE_UPPERCASE_LETTERS = WIDE_LOWERCASE_LETTERS.toUpperCase();
const DIGITS = '0123456789';
const SYMBOLS = '#%&^+=-';
-export const TEXT_TRANSITION_RANDOMIZE_START_STAGGER_MS = 5;
-export const TEXT_TRANSITION_EXPAND_STAGGER_MS = 5;
+export const TEXT_TRANSITION_SLOT_STAGGER_MS = 7;
+export const TEXT_TRANSITION_RANDOMIZE_START_STAGGER_MS =
+ TEXT_TRANSITION_SLOT_STAGGER_MS;
+export const TEXT_TRANSITION_EXPAND_STAGGER_MS =
+ TEXT_TRANSITION_SLOT_STAGGER_MS;
export const TEXT_TRANSITION_POST_RANDOMIZE_HOLD_MS = 10;
-export const TEXT_TRANSITION_COLLAPSE_STAGGER_MS = 10;
+export const TEXT_TRANSITION_COLLAPSE_STAGGER_MS =
+ TEXT_TRANSITION_SLOT_STAGGER_MS;
export const TEXT_TRANSITION_REFRESH_MS = 16;
-const isWhitespace = (character: string) => /\s/.test(character);
-const isDigit = (character: string) => /\d/.test(character);
-const isUppercaseLetter = (character: string) =>
- character.toUpperCase() === character &&
- character.toLowerCase() !== character;
-const isLowercaseLetter = (character: string) =>
- character.toLowerCase() === character &&
- character.toUpperCase() !== character;
+const normalizeSlotStaggerMs = (value: number) =>
+ Number.isFinite(value) ? Math.max(0, Math.round(value)) : 0;
-export const getTextTransitionRandomizeStartMs = (
- index: number,
- sourceLength: number,
- targetLength: number
-) => {
- if (index < sourceLength) {
- return index * TEXT_TRANSITION_RANDOMIZE_START_STAGGER_MS;
- }
-
- if (index < targetLength) {
- const lastSourceStartMs =
- sourceLength > 0
- ? (sourceLength - 1) * TEXT_TRANSITION_RANDOMIZE_START_STAGGER_MS
- : 0;
-
- return (
- lastSourceStartMs +
- (index - sourceLength + 1) * TEXT_TRANSITION_EXPAND_STAGGER_MS
- );
- }
+export const splitTextGraphemes = (value: string) =>
+ graphemeSplitter.splitGraphemes(value);
- return null;
-};
+const isWhitespace = (grapheme: string) => /^\s+$/u.test(grapheme);
-const getLastRandomizeStartMs = (
+export const getTextTransitionRandomizeStartMs = (
+ index: number,
sourceLength: number,
- targetLength: number
+ targetLength: number,
+ slotStaggerMs = TEXT_TRANSITION_SLOT_STAGGER_MS
) => {
- const maxLength = Math.max(sourceLength, targetLength);
-
- if (maxLength === 0) {
- return 0;
+ if (index < 0 || index >= Math.max(sourceLength, targetLength)) {
+ return null;
}
-
- return (
- getTextTransitionRandomizeStartMs(
- maxLength - 1,
- sourceLength,
- targetLength
- ) ?? 0
- );
+ return index * normalizeSlotStaggerMs(slotStaggerMs);
};
export const getTextTransitionTimeline = (
fromText: string,
- targetText: string
+ targetText: string,
+ slotStaggerMs = TEXT_TRANSITION_SLOT_STAGGER_MS
): TextTransitionTimeline => {
- const sourceLength = fromText.length;
- const targetLength = targetText.length;
+ const sourceLength = splitTextGraphemes(fromText).length;
+ const targetLength = splitTextGraphemes(targetText).length;
const maxLength = Math.max(sourceLength, targetLength);
+ const stagger = normalizeSlotStaggerMs(slotStaggerMs);
const lastSourceRandomizeStartMs =
- sourceLength > 0
- ? (sourceLength - 1) * TEXT_TRANSITION_RANDOMIZE_START_STAGGER_MS
- : 0;
- const lastRandomizeStartMs = getLastRandomizeStartMs(
- sourceLength,
- targetLength
- );
+ sourceLength > 0 ? (sourceLength - 1) * stagger : 0;
+ const lastRandomizeStartMs = maxLength > 0 ? (maxLength - 1) * stagger : 0;
const collapseStartMs =
lastRandomizeStartMs + TEXT_TRANSITION_POST_RANDOMIZE_HOLD_MS;
const totalDurationMs =
- maxLength === 0
- ? 0
- : collapseStartMs + (maxLength - 1) * TEXT_TRANSITION_COLLAPSE_STAGGER_MS;
+ maxLength === 0 ? 0 : collapseStartMs + (maxLength - 1) * stagger;
return {
sourceLength,
targetLength,
maxLength,
+ slotStaggerMs: stagger,
lastSourceRandomizeStartMs,
lastRandomizeStartMs,
collapseStartMs,
@@ -118,42 +96,87 @@ export const getTextTransitionTimeline = (
};
};
-export const getTextTransitionCharset = (character: string) => {
- if (isWhitespace(character)) {
- return null;
- }
+const getCollapseOrder = (index: number, timeline: TextTransitionTimeline) => {
+ if (timeline.targetLength >= timeline.sourceLength) return index;
- if (isDigit(character)) {
- return DIGITS;
+ const extraCount = timeline.sourceLength - timeline.targetLength;
+ if (index >= timeline.targetLength) {
+ return Math.max(0, timeline.sourceLength - 1 - index);
}
+ return extraCount + index;
+};
- if (isUppercaseLetter(character)) {
- return UPPERCASE_LETTERS;
+export const getTextTransitionCollapseMs = (
+ index: number,
+ timeline: TextTransitionTimeline
+) =>
+ timeline.collapseStartMs +
+ getCollapseOrder(index, timeline) * timeline.slotStaggerMs;
+
+export const getTextTransitionCharset = (grapheme: string) => {
+ if (isWhitespace(grapheme)) return null;
+ if (grapheme.length === 1 && DIGITS.includes(grapheme)) return DIGITS;
+ if (grapheme.length === 1 && SYMBOLS.includes(grapheme)) return SYMBOLS;
+ if (NARROW_LOWERCASE_LETTERS.includes(grapheme)) {
+ return NARROW_LOWERCASE_LETTERS;
}
-
- if (isLowercaseLetter(character)) {
- return LOWERCASE_LETTERS;
+ if (AVERAGE_LOWERCASE_LETTERS.includes(grapheme)) {
+ return AVERAGE_LOWERCASE_LETTERS;
}
-
- return SYMBOLS;
+ if (WIDE_LOWERCASE_LETTERS.includes(grapheme)) {
+ return WIDE_LOWERCASE_LETTERS;
+ }
+ if (NARROW_UPPERCASE_LETTERS.includes(grapheme)) {
+ return NARROW_UPPERCASE_LETTERS;
+ }
+ if (AVERAGE_UPPERCASE_LETTERS.includes(grapheme)) {
+ return AVERAGE_UPPERCASE_LETTERS;
+ }
+ if (WIDE_UPPERCASE_LETTERS.includes(grapheme)) {
+ return WIDE_UPPERCASE_LETTERS;
+ }
+ return null;
};
export const getRandomTransitionCharacter = (
- character: string,
+ grapheme: string,
random: () => number = Math.random
) => {
- const charset = getTextTransitionCharset(character);
+ const charset = getTextTransitionCharset(grapheme);
+ if (!charset) return grapheme;
+
+ const randomValue = random();
+ const safeValue = Number.isFinite(randomValue)
+ ? Math.max(0, Math.min(0.9999999999999999, randomValue))
+ : 0;
+ return charset.charAt(Math.floor(safeValue * charset.length));
+};
- if (!charset) {
- return character;
+const buildFrame = (
+ source: string[],
+ target: string[],
+ timeline: TextTransitionTimeline,
+ elapsedMs: number,
+ random: () => number
+) => {
+ if (source.length === 0 || source.join('') === target.join('')) {
+ return target.join('');
}
+ const elapsed = Math.max(0, elapsedMs);
+ if (elapsed >= timeline.totalDurationMs) return target.join('');
- const index = Math.min(
- charset.length - 1,
- Math.floor(random() * charset.length)
- );
+ return Array.from({ length: timeline.maxLength }, (_, index) => {
+ const randomizeStartMs = index * timeline.slotStaggerMs;
+ const collapseMs = getTextTransitionCollapseMs(index, timeline);
+ const sourceCharacter = source[index] ?? '';
+ const targetCharacter = target[index] ?? '';
+ const randomSourceCharacter =
+ index < source.length ? sourceCharacter : targetCharacter;
- return charset.charAt(index);
+ if (elapsed < randomizeStartMs) return sourceCharacter;
+ if (elapsed >= collapseMs) return targetCharacter;
+ return getRandomTransitionCharacter(randomSourceCharacter, random);
+ }).join('');
};
export const buildTextTransitionFrame = (
@@ -162,43 +185,39 @@ export const buildTextTransitionFrame = (
elapsedMs: number,
random: () => number = Math.random
) => {
- if (!fromText) {
- return targetText;
- }
-
- if (fromText === targetText) {
- return targetText;
- }
-
- const timeline = getTextTransitionTimeline(fromText, targetText);
-
- if (elapsedMs >= timeline.totalDurationMs) {
- return targetText;
- }
-
- return Array.from({ length: timeline.maxLength }, (_, index) => {
- const randomizeStartMs = getTextTransitionRandomizeStartMs(
- index,
- timeline.sourceLength,
- timeline.targetLength
- );
- const collapseMs =
- timeline.collapseStartMs + index * TEXT_TRANSITION_COLLAPSE_STAGGER_MS;
- const sourceCharacter = fromText.charAt(index) ?? '';
- const targetCharacter = targetText.charAt(index) ?? '';
- const randomSourceCharacter =
- index >= timeline.sourceLength ? targetCharacter : sourceCharacter;
-
- if (randomizeStartMs === null || elapsedMs < randomizeStartMs) {
- return sourceCharacter;
- }
-
- if (elapsedMs >= collapseMs) {
- return targetCharacter;
- }
+ const source = splitTextGraphemes(fromText);
+ const target = splitTextGraphemes(targetText);
+ return buildFrame(
+ source,
+ target,
+ getTextTransitionTimeline(fromText, targetText),
+ elapsedMs,
+ random
+ );
+};
- return getRandomTransitionCharacter(randomSourceCharacter, random);
- }).join('');
+export const buildTextTransitionFrameWithStagger = ({
+ fromText,
+ targetText,
+ elapsedMs,
+ slotStaggerMs,
+ random = Math.random,
+}: {
+ fromText: string;
+ targetText: string;
+ elapsedMs: number;
+ slotStaggerMs: number;
+ random?: () => number;
+}) => {
+ const source = splitTextGraphemes(fromText);
+ const target = splitTextGraphemes(targetText);
+ return buildFrame(
+ source,
+ target,
+ getTextTransitionTimeline(fromText, targetText, slotStaggerMs),
+ elapsedMs,
+ random
+ );
};
export const runTextTransition = ({
@@ -206,57 +225,59 @@ export const runTextTransition = ({
targetText,
onUpdate,
onComplete,
+ onTick,
random = Math.random,
+ slotStaggerMs = TEXT_TRANSITION_SLOT_STAGGER_MS,
}: TextTransitionOptions): TextTransitionController => {
- const timeline = getTextTransitionTimeline(fromText, targetText);
+ const source = splitTextGraphemes(fromText);
+ const target = splitTextGraphemes(targetText);
+ const timeline = getTextTransitionTimeline(
+ fromText,
+ targetText,
+ slotStaggerMs
+ );
if (!fromText || !targetText || fromText === targetText) {
onUpdate(targetText);
onComplete?.();
-
- return {
- stop: () => undefined,
- };
+ return { stop: () => undefined };
}
let frameHandle: FrameHandle | null = null;
let startTimestamp: number | null = null;
let lastPublishedValue: string | null = null;
+ let stopped = false;
const tick = (timestamp: number) => {
- if (startTimestamp === null) {
- startTimestamp = timestamp;
- }
+ if (stopped) return;
+ if (startTimestamp === null) startTimestamp = timestamp;
const elapsedMs = Math.min(
timeline.totalDurationMs,
- timestamp - startTimestamp
- );
- const nextValue = buildTextTransitionFrame(
- fromText,
- targetText,
- elapsedMs,
- random
+ Math.max(0, timestamp - startTimestamp)
);
+ onTick?.(elapsedMs, timeline);
+ if (stopped) return;
+ const nextValue = buildFrame(source, target, timeline, elapsedMs, random);
if (nextValue !== lastPublishedValue) {
lastPublishedValue = nextValue;
onUpdate(nextValue);
}
+ if (stopped) return;
if (elapsedMs >= timeline.totalDurationMs) {
frameHandle = null;
onComplete?.();
return;
}
-
frameHandle = requestFrame(tick);
};
frameHandle = requestFrame(tick);
-
return {
stop: () => {
+ stopped = true;
cancelFrame(frameHandle);
frameHandle = null;
},
diff --git a/src/themed/ThemedButton.tsx b/src/themed/ThemedButton.tsx
index 36af95d..e8dea94 100644
--- a/src/themed/ThemedButton.tsx
+++ b/src/themed/ThemedButton.tsx
@@ -1,6 +1,7 @@
import React, {
useCallback,
useEffect,
+ useLayoutEffect,
useMemo,
useRef,
useState,
@@ -9,9 +10,9 @@ import { Easing } from 'react-native';
import AwesomeButton from '../Button';
import { ANIMATED_TIMING_IN } from '../constants';
import type {
- ButtonVariant,
+ AwesomeButtonThemeDefinition,
+ AwesomeButtonVariant,
ThemeButtonStyle,
- ThemeDefinition,
ThemedButtonProps,
} from '../types';
import { interpolateThemeButtonStyle } from './colors';
@@ -24,9 +25,12 @@ import {
} from './resolution';
import { runTimedTransition } from './transition';
import getTheme from './themes';
+import useReducedMotion from '../useReducedMotion';
+import { normalizeOptionalNonNegative } from '../normalization';
const TYPE_TRANSITION_EASING = Easing.out(Easing.cubic);
+/** Renders a theme-resolved Awesome Button while preserving the core contract. */
function ThemedButton({
disabled,
index = null,
@@ -35,16 +39,25 @@ function ThemedButton({
name = null,
transparent = false,
type = 'primary',
+ autoWidth,
+ stretch = false,
+ width,
+ height,
+ faceHeight,
size = 'medium',
...extra
}: ThemedButtonProps) {
+ const reduceMotion = useReducedMotion();
const transitionControllerRef = useRef<{
stop: () => void;
} | null>(null);
+ const snapStyleFrameRef = useRef(false);
const mountedRef = useRef(false);
- const previousConfigRef = useRef(undefined);
+ const previousConfigRef = useRef(
+ undefined
+ );
const previousThemeSourceDescriptorRef = useRef(null);
- const previousButtonTypeRef = useRef(null);
+ const previousButtonTypeRef = useRef(null);
const previousTransparentRef = useRef(null);
const theme = useMemo(
@@ -59,8 +72,14 @@ function ThemedButton({
() => getThemeSourceDescriptor(index, name, config),
[index, name, config]
);
- const buttonStyles = theme.buttons[buttonType];
- const sizeStyles = theme.size[size] || theme.size.medium;
+ const buttonStyles = useMemo(
+ () => theme.buttons[buttonType] ?? theme.buttons.primary ?? {},
+ [theme, buttonType]
+ );
+ const sizeStyles = useMemo(
+ () => theme.size[size] || theme.size.medium,
+ [theme, size]
+ );
const transparentStyles = transparent ? TRANSPARENT_STYLES : undefined;
const resolvedButtonStyles = useMemo(
() => ({
@@ -85,19 +104,26 @@ function ThemedButton({
}, []);
const updateDisplayedPalette = useCallback(
- (nextPalette: ThemeButtonStyle) => {
- if (areThemeButtonStylesEqual(displayedPaletteRef.current, nextPalette)) {
+ (nextPalette: ThemeButtonStyle, forceRender = false) => {
+ if (
+ !forceRender &&
+ areThemeButtonStylesEqual(displayedPaletteRef.current, nextPalette)
+ ) {
return;
}
displayedPaletteRef.current = nextPalette;
- setDisplayedPalette(nextPalette);
+ setDisplayedPalette(forceRender ? { ...nextPalette } : nextPalette);
},
[]
);
useEffect(() => () => stopTransition(), [stopTransition]);
+ useLayoutEffect(() => {
+ snapStyleFrameRef.current = false;
+ });
+
useEffect(() => {
const previousConfig = previousConfigRef.current;
const previousThemeSourceDescriptor =
@@ -110,6 +136,7 @@ function ThemedButton({
previousThemeSourceDescriptor === themeSourceDescriptor;
const shouldAnimate =
mountedRef.current &&
+ !reduceMotion &&
sameThemeSource &&
previousTransparent === transparent &&
previousButtonType !== null &&
@@ -117,6 +144,11 @@ function ThemedButton({
if (!shouldAnimate) {
stopTransition();
+ if (
+ !areThemeButtonStylesEqual(displayedPaletteRef.current, targetPalette)
+ ) {
+ snapStyleFrameRef.current = true;
+ }
updateDisplayedPalette(targetPalette);
} else {
const startPalette = displayedPaletteRef.current;
@@ -139,8 +171,12 @@ function ThemedButton({
updateDisplayedPalette(nextPalette);
},
onComplete: () => {
+ // The last update and completion may be batched into one React
+ // commit. Force one final wrapper-owned frame so the inner button
+ // cannot start a second animation from the preceding palette.
+ snapStyleFrameRef.current = true;
transitionControllerRef.current = null;
- updateDisplayedPalette(targetPalette);
+ updateDisplayedPalette(targetPalette, true);
},
});
}
@@ -158,21 +194,72 @@ function ThemedButton({
targetPalette,
themeSourceDescriptor,
transparent,
+ reduceMotion,
updateDisplayedPalette,
]);
- const resolvedAwesomeButtonProps = useMemo(
- () => ({
+ const resolvedAwesomeButtonProps = useMemo(() => {
+ const explicitNumericWidth =
+ typeof width === 'number'
+ ? normalizeOptionalNonNegative(width)
+ : undefined;
+ const variantWidth =
+ typeof resolvedButtonStyles.width === 'number'
+ ? normalizeOptionalNonNegative(resolvedButtonStyles.width)
+ : undefined;
+ const sizeWidth = normalizeOptionalNonNegative(sizeStyles.width);
+ const resolvedHeight =
+ normalizeOptionalNonNegative(height) ??
+ normalizeOptionalNonNegative(resolvedButtonStyles.height) ??
+ normalizeOptionalNonNegative(sizeStyles.height);
+ let resolvedWidth: number | 'auto' | null | undefined;
+
+ if (stretch) {
+ resolvedWidth = explicitNumericWidth;
+ } else if (explicitNumericWidth !== undefined) {
+ resolvedWidth = explicitNumericWidth;
+ } else if (autoWidth === true) {
+ resolvedWidth = null;
+ } else if (autoWidth === false) {
+ resolvedWidth = variantWidth ?? sizeWidth;
+ } else if (width === 'auto') {
+ resolvedWidth = 'auto';
+ } else {
+ resolvedWidth = variantWidth ?? sizeWidth;
+ }
+
+ return {
+ ...sizeStyles,
...resolvedButtonStyles,
...displayedPalette,
- ...sizeStyles,
disabled,
...extra,
- }),
- [disabled, displayedPalette, extra, resolvedButtonStyles, sizeStyles]
- );
+ faceHeight: normalizeOptionalNonNegative(faceHeight),
+ height: resolvedHeight,
+ stretch,
+ width: resolvedWidth,
+ };
+ }, [
+ autoWidth,
+ disabled,
+ displayedPalette,
+ extra,
+ faceHeight,
+ height,
+ resolvedButtonStyles,
+ sizeStyles,
+ stretch,
+ width,
+ ]);
- return ;
+ return (
+
+ );
}
export default ThemedButton;
diff --git a/src/themed/resolution.ts b/src/themed/resolution.ts
index bfb391a..cb97a82 100644
--- a/src/themed/resolution.ts
+++ b/src/themed/resolution.ts
@@ -7,9 +7,9 @@ import {
DEFAULT_TEXT_COLOR,
} from '../constants';
import type {
- ButtonVariant,
+ AwesomeButtonThemeDefinition,
+ AwesomeButtonVariant,
ThemeButtonStyle,
- ThemeDefinition,
ThemeName,
} from '../types';
@@ -49,12 +49,20 @@ const TRANSPARENT_STYLES: ThemeButtonStyle = {
};
const resolveButtonType = (
- theme: ThemeDefinition,
+ theme: AwesomeButtonThemeDefinition,
disabled: boolean | undefined,
flat: boolean,
- type: ButtonVariant
+ type: AwesomeButtonVariant
) => {
- const requestedType = disabled ? 'disabled' : flat === true ? 'flat' : type;
+ const flatRequested = flat === true || type === 'flat';
+ const requestedType = flatRequested ? 'flat' : disabled ? 'disabled' : type;
+
+ if (requestedType === 'x') {
+ if (Object.prototype.hasOwnProperty.call(theme.buttons, 'x')) return 'x';
+ if (Object.prototype.hasOwnProperty.call(theme.buttons, 'twitter')) {
+ return 'twitter';
+ }
+ }
return Object.prototype.hasOwnProperty.call(theme.buttons, requestedType)
? requestedType
@@ -64,7 +72,7 @@ const resolveButtonType = (
const getThemeSourceDescriptor = (
index: number | null,
name: ThemeName | null,
- config?: ThemeDefinition
+ config?: AwesomeButtonThemeDefinition
) => {
if (config) {
return 'config';
diff --git a/src/themed/themes.ts b/src/themed/themes.ts
index 60a91e1..401cead 100644
--- a/src/themed/themes.ts
+++ b/src/themed/themes.ts
@@ -7,7 +7,7 @@ import summer from './summer';
import rick from './rick';
import basic from './basic';
import type {
- RegisteredThemeDefinition,
+ AwesomeButtonRegisteredThemeDefinition,
ThemeDefinition,
ThemeName,
} from '../types';
@@ -29,20 +29,27 @@ const getThemeKeys = (): ThemeName[] => Object.keys(themes) as ThemeName[];
const getThemeByIndex = (
index: number | null = 0
-): RegisteredThemeDefinition => {
+): AwesomeButtonRegisteredThemeDefinition => {
const keys = getThemeKeys();
const safeIndex = index === null || !keys[index] ? 0 : index;
const themeName = keys[safeIndex] ?? DEFAULT_THEME_NAME;
+ const selectedTheme = themes[themeName];
return {
- ...themes[themeName],
+ ...selectedTheme,
+ buttons: {
+ ...selectedTheme.buttons,
+ x: selectedTheme.buttons.twitter,
+ },
next: !!keys[safeIndex + 1],
prev: !!keys[safeIndex - 1],
name: themeName,
};
};
-const getThemeByName = (name: string): RegisteredThemeDefinition => {
+const getThemeByName = (
+ name: string
+): AwesomeButtonRegisteredThemeDefinition => {
const keys = getThemeKeys();
const index = keys.findIndex((key) => key === name);
if (index === -1) {
@@ -51,14 +58,15 @@ const getThemeByName = (name: string): RegisteredThemeDefinition => {
return getThemeByIndex(index);
};
+/** Resolves a built-in Awesome Button theme by index or stable theme name. */
function getTheme(
index?: number | null,
name?: ThemeName | null
-): RegisteredThemeDefinition;
+): AwesomeButtonRegisteredThemeDefinition;
function getTheme(
index: number | null = 0,
name: string | null = null
-): RegisteredThemeDefinition {
+): AwesomeButtonRegisteredThemeDefinition {
if (name) {
return getThemeByName(name);
}
diff --git a/src/types.ts b/src/types.ts
index cae4036..b65e291 100644
--- a/src/types.ts
+++ b/src/types.ts
@@ -1,76 +1,267 @@
import type { ReactNode } from 'react';
import type {
+ ColorValue,
GestureResponderEvent,
PressableProps,
StyleProp,
ViewStyle,
} from 'react-native';
+/**
+ * Maps normalized animation progress to eased progress.
+ *
+ * @public
+ */
+export type AwesomeButtonAnimationCurve = (value: number) => number;
+
+/**
+ * Canonical visual and motion overrides for an Awesome Button face.
+ *
+ * @public
+ */
+export interface AwesomeButtonStyle {
+ /** Idle face background color. */
+ backgroundColor?: ColorValue;
+ /** Pressed face background color. */
+ backgroundActive?: ColorValue;
+ /** Placeholder face background color. */
+ backgroundPlaceholder?: ColorValue;
+ /** Progress face background color. */
+ backgroundProgress?: ColorValue;
+ /** Color of the visible lower depth layer. */
+ depthColor?: ColorValue;
+ /** Color of the outer shadow layer. */
+ shadowColor?: ColorValue;
+ /** Color of the progress activity indicator. */
+ activityColor?: ColorValue;
+ /** Optional overlay color shown while pressed. */
+ pressedOverlayColor?: ColorValue;
+ /** Foreground color used by text content. */
+ foregroundColor?: ColorValue;
+ /** Face background color while disabled. */
+ disabledBackgroundColor?: ColorValue;
+ /** Depth-layer color while disabled. */
+ disabledDepthColor?: ColorValue;
+ /** Shadow color while disabled. */
+ disabledShadowColor?: ColorValue;
+ /** Foreground color while disabled. */
+ disabledForegroundColor?: ColorValue;
+ /** Border color while disabled. */
+ disabledBorderColor?: ColorValue;
+ /** Opacity applied to the pressed face. */
+ activeOpacity?: number;
+ /** Label font size in density-independent pixels. */
+ textSize?: number;
+ /** Label line height in density-independent pixels. */
+ textLineHeight?: number;
+ /** Label font-family name. */
+ textFontFamily?: string;
+ /** Radius applied to every corner unless a physical-corner override is set. */
+ borderRadius?: number;
+ /** Physical top-left corner radius. */
+ borderTopLeftRadius?: number;
+ /** Physical top-right corner radius. */
+ borderTopRightRadius?: number;
+ /** Physical bottom-left corner radius. */
+ borderBottomLeftRadius?: number;
+ /** Physical bottom-right corner radius. */
+ borderBottomRightRadius?: number;
+ /** Border width in density-independent pixels. */
+ borderWidth?: number;
+ /** Border color. */
+ borderColor?: ColorValue;
+ /** Horizontal content padding in density-independent pixels. */
+ paddingHorizontal?: number;
+ /** Top content padding in density-independent pixels. */
+ paddingTop?: number;
+ /** Bottom content padding in density-independent pixels. */
+ paddingBottom?: number;
+ /** Height of the visible depth layer in density-independent pixels. */
+ raiseAmount?: number;
+ /** Spacing between auxiliary slots and the label in density-independent pixels. */
+ contentGap?: number;
+ /** General style-transition duration in milliseconds. */
+ animationDuration?: number;
+ /** Press-down transition duration in milliseconds. */
+ pressInAnimationDuration?: number;
+ /** Easing curve used for timing-based visual transitions. */
+ animationCurve?: AwesomeButtonAnimationCurve;
+}
+
+/**
+ * Function supplied to `onPress` for completing an accepted progress handle.
+ *
+ * @public
+ */
export type ProgressCompletionHandler = (callback?: () => void) => void;
+/**
+ * Callback dispatched for an accepted activation.
+ *
+ * @public
+ */
export type AwesomeButtonOnPress = (next?: ProgressCompletionHandler) => void;
+/**
+ * Native Pressable props that may be forwarded without replacing owned interactions.
+ *
+ * @public
+ */
export type AwesomeButtonPressableProps = Omit<
PressableProps,
'children' | 'onLongPress' | 'onPress' | 'onPressIn' | 'onPressOut'
>;
+/**
+ * Explicit width, intrinsic-width request, or legacy null width.
+ *
+ * @public
+ */
export type ButtonWidth = number | 'auto' | null;
+/**
+ * Public configuration and event callbacks for the core Awesome Button.
+ *
+ * @public
+ */
export interface AwesomeButtonProps {
+ /** Legacy activity-indicator color override. @deprecated Move this override into `buttonStyle.activityColor`. */
activityColor?: string;
+ /** Legacy pressed-opacity override. @deprecated Move this override into `buttonStyle.activeOpacity`. */
activeOpacity?: number;
+ /** Whether placeholder entry and exit may animate. */
animatedPlaceholder?: boolean;
+ /** Whether content-driven size changes may animate. */
animateSize?: boolean;
+ /** Legacy pressed-background override. @deprecated Move this override into `buttonStyle.backgroundActive`. */
backgroundActive?: string;
+ /** Legacy idle-background override. @deprecated Move this override into `buttonStyle.backgroundColor`. */
backgroundColor?: string;
+ /** Legacy depth-color override. @deprecated Use `buttonStyle.depthColor`. */
backgroundDarker?: string;
+ /** Legacy placeholder-background override. @deprecated Move this override into `buttonStyle.backgroundPlaceholder`. */
backgroundPlaceholder?: string;
+ /** Legacy progress-background override. @deprecated Move this override into `buttonStyle.backgroundProgress`. */
backgroundProgress?: string;
+ /** Legacy shadow-color override. @deprecated Use `buttonStyle.shadowColor`. */
backgroundShadow?: string;
+ /** Legacy border-color override. @deprecated Move this override into `buttonStyle.borderColor`. */
borderColor?: string;
+ /** Legacy all-corner radius override. @deprecated Move this override into `buttonStyle.borderRadius`. */
borderRadius?: number;
+ /** Legacy bottom-left radius override. @deprecated Move this override into `buttonStyle.borderBottomLeftRadius`. */
borderBottomLeftRadius?: number;
+ /** Legacy bottom-right radius override. @deprecated Move this override into `buttonStyle.borderBottomRightRadius`. */
borderBottomRightRadius?: number;
+ /** Legacy top-left radius override. @deprecated Move this override into `buttonStyle.borderTopLeftRadius`. */
borderTopLeftRadius?: number;
+ /** Legacy top-right radius override. @deprecated Move this override into `buttonStyle.borderTopRightRadius`. */
borderTopRightRadius?: number;
+ /** Minimum interval between accepted activations in milliseconds. */
debouncedPressTime?: number;
+ /** Legacy misspelled bottom-left radius override. @deprecated Use `buttonStyle.borderBottomLeftRadius`. */
borderLeftBottomRadius?: number;
+ /** Legacy border-width override. @deprecated Move this override into `buttonStyle.borderWidth`. */
borderWidth?: number;
+ /** Delay before automatic progress completion in milliseconds. */
progressLoadingTime?: number;
+ /** Whether busy state renders the animated progress layer. */
showProgressBar?: boolean;
+ /** Overlay slot that does not participate in intrinsic-width measurement. */
extra?: ReactNode;
+ /** Whether activation and pointer ownership are disabled. */
disabled?: boolean;
+ /** Canonical visual overrides. This bridge is planned to become `style` in a future major. */
+ buttonStyle?: AwesomeButtonStyle;
+ /** Outer layout style. Takes precedence over the legacy outer `style`. */
+ containerStyle?: StyleProp;
+ /** Canonical moving-face height. Takes precedence over legacy `height`. */
+ faceHeight?: number;
+ /**
+ * Legacy geometry-height override.
+ *
+ * @deprecated Use `faceHeight` until the next major makes `height` canonical
+ * face height.
+ */
height?: number;
+ /** Native Pressable hit-target expansion. */
hitSlop?: PressableProps['hitSlop'];
+ /** Legacy horizontal-padding override. @deprecated Move this override into `buttonStyle.paddingHorizontal`. */
paddingHorizontal?: number;
+ /** Legacy top-padding override. @deprecated Move this override into `buttonStyle.paddingTop`. */
paddingTop?: number;
+ /** Whether the button is externally controlled in busy state. */
progress?: boolean;
+ /** Content rendered before the primary label. */
before?: ReactNode;
+ /** Additional safe native Pressable props. */
dangerouslySetPressableProps?: AwesomeButtonPressableProps;
+ /** Content rendered after the primary label. */
after?: ReactNode;
+ /** Legacy bottom-padding override. @deprecated Move this override into `buttonStyle.paddingBottom`. */
paddingBottom?: number;
+ /** Legacy depth-height override. @deprecated Use `buttonStyle.raiseAmount`. */
raiseLevel?: number;
+ /** Legacy release-mode switch. @deprecated Release is planned to use the native spring unconditionally in a future major. */
springRelease?: boolean;
+ /** Whether the outer container fills the available horizontal space. */
stretch?: boolean;
+ /**
+ * Legacy outer-container style.
+ *
+ * @deprecated Use `containerStyle`.
+ */
style?: StyleProp;
+ /** Legacy font-family override. @deprecated Move this override into `buttonStyle.textFontFamily`. */
textFontFamily?: string;
+ /** Legacy foreground-color override. @deprecated Use `buttonStyle.foregroundColor`. */
textColor?: string;
+ /** Legacy line-height override. @deprecated Move this override into `buttonStyle.textLineHeight`. */
textLineHeight?: number;
+ /** Legacy font-size override. @deprecated Move this override into `buttonStyle.textSize`. */
textSize?: number;
+ /** Whether distinct nonempty string labels use the measured, grapheme-aware visual transition. */
textTransition?: boolean;
+ /** Requested button width in density-independent pixels or intrinsic mode. */
width?: ButtonWidth;
+ /** Primary button content. */
children?: ReactNode;
+ /** Activation callback, optionally receiving a one-shot progress completion handle. */
onPress?: AwesomeButtonOnPress;
+ /**
+ * Legacy physical-only long-press callback with the native event.
+ *
+ * @deprecated Use `onLongPressAction`. This callback remains physical-only
+ * because its real `GestureResponderEvent` cannot be fabricated safely.
+ */
onLongPress?: PressableProps['onLongPress'];
+ /** Accessible and physical long-press action without a synthetic event. */
+ onLongPressAction?: () => void;
+ /** Accessible name announced for the button. */
+ accessibilityLabel?: string;
+ /** Optional accessibility hint describing the activation result. */
+ accessibilityHint?: string;
+ /** Localized accessibility action name for long press. */
+ accessibilityLongPressLabel?: string;
+ /** Native press-in callback dispatched at physical pointer entry. */
onPressIn?: (event: GestureResponderEvent) => void;
+ /** Native press-out callback dispatched after terminal ownership is claimed. */
onPressOut?: (event: GestureResponderEvent) => void;
+ /** Logical callback dispatched synchronously after pressed state is committed. */
onPressedIn?: () => void;
+ /** Logical callback dispatched when the release transition settles. */
onPressedOut?: () => void;
+ /** Callback dispatched when accepted progress begins. */
onProgressStart?: () => void;
+ /** Callback dispatched when accepted progress completion settles. */
onProgressEnd?: () => void;
}
+/**
+ * Identifier of a built-in visual theme.
+ *
+ * @public
+ */
export type ThemeName =
| 'basic'
| 'bojack'
@@ -81,6 +272,11 @@ export type ThemeName =
| 'summer'
| 'bruce';
+/**
+ * Core semantic button variant supported by every built-in theme.
+ *
+ * @public
+ */
export type CoreButtonVariant =
| 'primary'
| 'secondary'
@@ -89,6 +285,11 @@ export type CoreButtonVariant =
| 'disabled'
| 'flat';
+/**
+ * Legacy social button variants supported by built-in themes.
+ *
+ * @public
+ */
export type SocialButtonVariant =
| 'twitter'
| 'messenger'
@@ -100,10 +301,32 @@ export type SocialButtonVariant =
| 'pinterest'
| 'youtube';
+/**
+ * Closed legacy union of core and social theme variants.
+ *
+ * @public
+ */
export type ButtonVariant = CoreButtonVariant | SocialButtonVariant;
+/**
+ * Request-only compatibility bridge. The legacy closed union stays unchanged.
+ *
+ * @public
+ */
+export type AwesomeButtonVariant = ButtonVariant | 'x';
+
+/**
+ * Named size preset exposed by the themed wrapper.
+ *
+ * @public
+ */
export type ButtonSize = 'icon' | 'small' | 'medium' | 'large';
+/**
+ * Legacy theme button fields accepted by published theme definitions.
+ *
+ * @public
+ */
export type ThemeButtonStyle = Pick<
AwesomeButtonProps,
| 'activityColor'
@@ -132,37 +355,119 @@ export type ThemeButtonStyle = Pick<
| 'width'
>;
+/**
+ * Geometry and typography values for one named theme size.
+ *
+ * @public
+ */
export type ThemeSizeStyle = {
+ /** Preset width in density-independent pixels. */
width: number;
+ /** Preset face height in density-independent pixels. */
height: number;
+ /** Optional preset font size in density-independent pixels. */
textSize?: number;
+ /** Optional preset horizontal padding in density-independent pixels. */
paddingHorizontal?: number;
};
+/**
+ * Complete legacy style map for every legacy button variant.
+ *
+ * @public
+ */
export type ThemeButtonDefinitions = Record;
+/**
+ * Theme style map that may additionally define the canonical `x` variant.
+ *
+ * @public
+ */
+export type AwesomeButtonThemeDefinitions = ThemeButtonDefinitions &
+ Partial>;
+
+/**
+ * Complete size map for every named button size.
+ *
+ * @public
+ */
export type ThemeSizeDefinitions = Record;
+/**
+ * Legacy shape of an Awesome Button theme.
+ *
+ * @public
+ */
export type ThemeDefinition = {
+ /** Human-readable theme title. */
title: string;
+ /** Theme showcase background color. */
background: string;
+ /** Theme showcase foreground color. */
color: string;
+ /** Styles for every legacy button variant. */
buttons: ThemeButtonDefinitions;
+ /** Geometry and typography for every size preset. */
size: ThemeSizeDefinitions;
};
+/**
+ * Theme definition that may provide the canonical `x` social variant.
+ *
+ * @public
+ */
+export type AwesomeButtonThemeDefinition = Omit & {
+ /** Styles for every legacy variant plus an optional canonical `x` style. */
+ buttons: AwesomeButtonThemeDefinitions;
+};
+
+/**
+ * Registered theme returned by `getTheme`, including canonical `x` support.
+ *
+ * @public
+ */
+export type AwesomeButtonRegisteredThemeDefinition = Omit<
+ RegisteredThemeDefinition,
+ 'buttons'
+> & {
+ /** Styles for every legacy variant plus the canonical `x` style. */
+ buttons: AwesomeButtonThemeDefinitions;
+};
+
+/**
+ * Built-in theme definition with navigation metadata.
+ *
+ * @public
+ */
export type RegisteredThemeDefinition = ThemeDefinition & {
+ /** Stable built-in theme name. */
name: ThemeName;
+ /** Whether another registered theme follows this one. */
next: boolean;
+ /** Whether another registered theme precedes this one. */
prev: boolean;
};
+/**
+ * Public configuration for the themed Awesome Button wrapper.
+ *
+ * @public
+ */
export interface ThemedButtonProps extends AwesomeButtonProps {
- config?: ThemeDefinition;
+ /** Custom theme definition used instead of a registered theme. */
+ config?: AwesomeButtonThemeDefinition;
+ /** Whether the wrapper requests intrinsic width when no explicit width is set. */
+ autoWidth?: boolean;
+ /** Whether the flat visual variant is requested, including while disabled. */
flat?: boolean;
+ /** Optional registered-theme index. */
index?: number | null;
+ /** Optional registered-theme name. */
name?: ThemeName | null;
+ /** Named size preset. */
size?: ButtonSize;
+ /** Whether the themed face and depth colors are made transparent. */
transparent?: boolean;
- type?: ButtonVariant;
+ /** Semantic or social theme variant; `flat` stays visually flat while disabled. */
+ type?: AwesomeButtonVariant;
}
diff --git a/src/useButtonSizeBehavior.ts b/src/useButtonSizeBehavior.ts
index 6084786..88d4023 100644
--- a/src/useButtonSizeBehavior.ts
+++ b/src/useButtonSizeBehavior.ts
@@ -1,39 +1,22 @@
-import {
- useCallback,
- useEffect,
- useMemo,
- useRef,
- useState,
- type ReactNode,
-} from 'react';
+import { useMemo, type ReactNode } from 'react';
import {
Animated,
- Easing,
+ type ColorValue,
type LayoutChangeEvent,
+ type NativeSyntheticEvent,
type StyleProp,
+ type TextLayoutEventData,
type TextStyle,
type ViewStyle,
} from 'react-native';
-import { runTextTransition } from './textTransition';
+import { getAutoWidthTextFlow, getHeightDimensions } from './size/contracts';
+import useAutoWidthTextCoordinator from './size/useAutoWidthTextCoordinator';
+import type { HiddenMeasurementRequest } from './size/useAutoWidthTextCoordinator';
+import useButtonHeightOwner from './size/useButtonHeightOwner';
+import useButtonWidthOwner from './size/useButtonWidthOwner';
import type { ButtonWidth } from './types';
-const SIZE_ANIMATION_DURATION = 125;
-const SIZE_ANIMATION_EASING = Easing.bezier(0.3, 0.05, 0.2, 1);
-
-type WidthMode = 'auto' | 'fixed' | 'stretch';
-
-type HeightDimensions = {
- container: number;
- face: number;
- shadow: number;
-};
-
-type HiddenMeasurementRequest = {
- id: number;
- text: string;
-};
-
-type SizeAnimatedStyles = {
+export type SizeAnimatedStyles = {
container: StyleProp | null;
shadow: StyleProp | null;
bottom: StyleProp | null;
@@ -42,59 +25,6 @@ type SizeAnimatedStyles = {
activeBackground: StyleProp | null;
};
-const isNonEmptyString = (value: ReactNode): value is string =>
- typeof value === 'string' && value.length > 0;
-
-const getWidthMode = (width: ButtonWidth, stretch?: boolean): WidthMode => {
- if (stretch === true) {
- return 'stretch';
- }
-
- if (width === null) {
- return 'auto';
- }
-
- return 'fixed';
-};
-
-const getHeightDimensions = (
- height: number,
- paddingTop: number,
- paddingBottom: number,
- raiseLevel: number
-): HeightDimensions => ({
- container: height + paddingTop + paddingBottom,
- face: height + paddingTop + paddingBottom - raiseLevel,
- shadow: height - raiseLevel,
-});
-
-const areHeightDimensionsEqual = (
- currentValue: HeightDimensions,
- nextValue: HeightDimensions
-) =>
- currentValue.container === nextValue.container &&
- currentValue.face === nextValue.face &&
- currentValue.shadow === nextValue.shadow;
-
-export const getAutoWidthTextFlow = (
- currentWidth: number | null,
- nextWidth: number
-) => {
- if (currentWidth === null) {
- return 'initial';
- }
-
- if (currentWidth === nextWidth) {
- return 'text-only';
- }
-
- if (nextWidth > currentWidth) {
- return 'grow-first';
- }
-
- return 'shrink-last';
-};
-
type UseButtonSizeBehaviorParams = {
animateSize?: boolean;
animatedOpacity: Animated.Value;
@@ -103,22 +33,35 @@ type UseButtonSizeBehaviorParams = {
children: ReactNode;
extra?: ReactNode;
height: number;
+ measurementSignature: string;
paddingBottom: number;
paddingTop: number;
raiseLevel: number;
+ reduceMotion?: boolean;
stretch?: boolean;
textTransition?: boolean;
width: ButtonWidth;
};
type UseButtonSizeBehaviorResult = {
+ alignTextLogicalLeading: boolean;
displayedText: string | null;
- hiddenMeasurementKey: string | null;
- hiddenMeasurementText: string | null;
- onHiddenMeasurementLayout: (event: LayoutChangeEvent) => void;
+ measurementRequest: HiddenMeasurementRequest | null;
+ onAfterLayout: (event: LayoutChangeEvent) => void;
+ onBeforeLayout: (event: LayoutChangeEvent) => void;
+ onHiddenMeasurementLayout: (
+ request: HiddenMeasurementRequest,
+ event: LayoutChangeEvent
+ ) => void;
onVisibleContentLayout: (event: LayoutChangeEvent) => void;
+ onVisibleTextLayout: (
+ publicationId: number,
+ event: NativeSyntheticEvent
+ ) => void;
resolvedWidth: number | null;
sizeAnimatedStyles: SizeAnimatedStyles;
+ transientTextFrame: boolean;
+ visibleTextPublicationId: number;
};
const useButtonSizeBehavior = ({
@@ -129,708 +72,124 @@ const useButtonSizeBehavior = ({
children,
extra = null,
height,
+ measurementSignature,
paddingBottom,
paddingTop,
raiseLevel,
+ reduceMotion = false,
stretch,
textTransition = false,
width,
}: UseButtonSizeBehaviorParams): UseButtonSizeBehaviorResult => {
- const stringChildren = isNonEmptyString(children) ? children : null;
- const widthMode = getWidthMode(width, stretch);
- const canChoreographAutoWidthText =
- widthMode === 'auto' &&
- stringChildren !== null &&
- before === null &&
- after === null &&
- extra === null;
- const initialHiddenMeasurementRequest =
- canChoreographAutoWidthText && stringChildren !== null
- ? {
- id: 0,
- text: stringChildren,
- }
- : null;
- const [displayedText, setDisplayedText] = useState(
- stringChildren
- );
- const [stateWidth, setStateWidth] = useState(
- widthMode === 'fixed' && typeof width === 'number' ? width : null
- );
- const [hiddenMeasurementRequest, setHiddenMeasurementRequest] =
- useState(initialHiddenMeasurementRequest);
- const displayedTextRef = useRef(stringChildren);
- const currentTargetTextRef = useRef(stringChildren);
- const widthModeRef = useRef(widthMode);
- const currentWidthValueRef = useRef(
- widthMode === 'fixed' && typeof width === 'number' ? width : null
- );
- const currentHeightDimensionsRef = useRef(
- getHeightDimensions(height, paddingTop, paddingBottom, raiseLevel)
- );
- const textTransitionControllerRef = useRef<{
- stop: () => void;
- } | null>(null);
- const widthAnimationRef = useRef(null);
- const heightAnimationRef = useRef(null);
- const widthAnimationTokenRef = useRef(0);
- const heightAnimationTokenRef = useRef(0);
- const hiddenMeasurementRequestRef = useRef(
- initialHiddenMeasurementRequest
- );
- const textRunIdRef = useRef(0);
- const didInitializeTextRef = useRef(false);
- const didInitializeSizeRef = useRef(false);
- const isWidthAnimatingRef = useRef(false);
- const isHeightAnimatingRef = useRef(false);
- const [isWidthAnimating, setIsWidthAnimating] = useState(false);
- const [isHeightAnimating, setIsHeightAnimating] = useState(false);
- const animatedWidth = useRef(
- new Animated.Value(
- widthMode === 'fixed' && typeof width === 'number' ? width : 0
- )
- ).current;
- const animatedContainerHeight = useRef(
- new Animated.Value(currentHeightDimensionsRef.current.container)
- ).current;
- const animatedFaceHeight = useRef(
- new Animated.Value(currentHeightDimensionsRef.current.face)
- ).current;
- const animatedShadowHeight = useRef(
- new Animated.Value(currentHeightDimensionsRef.current.shadow)
- ).current;
-
- const setWidthAnimatingFlag = useCallback((value: boolean) => {
- isWidthAnimatingRef.current = value;
- setIsWidthAnimating(value);
- }, []);
-
- const setHeightAnimatingFlag = useCallback((value: boolean) => {
- isHeightAnimatingRef.current = value;
- setIsHeightAnimating(value);
- }, []);
-
- const syncDisplayedText = useCallback((value: string | null) => {
- displayedTextRef.current = value;
- setDisplayedText((currentValue) =>
- currentValue === value ? currentValue : value
- );
- }, []);
-
- const stopTextTransition = useCallback(() => {
- if (textTransitionControllerRef.current !== null) {
- textTransitionControllerRef.current.stop();
- textTransitionControllerRef.current = null;
- }
- }, []);
-
- const syncStateWidth = useCallback((value: number | null) => {
- currentWidthValueRef.current = value;
-
- if (widthModeRef.current === 'auto') {
- setStateWidth((currentValue) =>
- currentValue === value ? currentValue : value
- );
- }
- }, []);
-
- const snapshotWidthAnimation = useCallback(
- (callback: (value: number | null) => void) => {
- if (isWidthAnimatingRef.current !== true) {
- callback(currentWidthValueRef.current);
- return;
- }
-
- animatedWidth.stopAnimation((value) => {
- widthAnimationRef.current?.stop();
- widthAnimationRef.current = null;
- setWidthAnimatingFlag(false);
- const resolvedValue =
- typeof value === 'number' ? value : currentWidthValueRef.current;
-
- syncStateWidth(resolvedValue);
- callback(resolvedValue);
- });
- },
- [animatedWidth, setWidthAnimatingFlag, syncStateWidth]
- );
-
- const setWidthImmediately = useCallback(
- (nextWidth: number | null) => {
- widthAnimationTokenRef.current += 1;
- widthAnimationRef.current?.stop();
- widthAnimationRef.current = null;
- setWidthAnimatingFlag(false);
-
- if (nextWidth !== null) {
- animatedWidth.setValue(nextWidth);
- }
-
- syncStateWidth(nextWidth);
- },
- [animatedWidth, setWidthAnimatingFlag, syncStateWidth]
- );
-
- const animateWidthTo = useCallback(
- (nextWidth: number, onComplete?: () => void) => {
- if (
- animateSize !== true ||
- currentWidthValueRef.current === null ||
- currentWidthValueRef.current === nextWidth
- ) {
- setWidthImmediately(nextWidth);
- onComplete?.();
- return;
- }
-
- snapshotWidthAnimation((snapshotWidth) => {
- if (snapshotWidth === null || snapshotWidth === nextWidth) {
- setWidthImmediately(nextWidth);
- onComplete?.();
- return;
- }
-
- widthAnimationTokenRef.current += 1;
- const animationToken = widthAnimationTokenRef.current;
-
- animatedWidth.setValue(snapshotWidth);
- syncStateWidth(nextWidth);
- setWidthAnimatingFlag(true);
-
- const animation = Animated.timing(animatedWidth, {
- duration: SIZE_ANIMATION_DURATION,
- easing: SIZE_ANIMATION_EASING,
- toValue: nextWidth,
- useNativeDriver: false,
- });
-
- widthAnimationRef.current = animation;
- animation.start(({ finished }) => {
- if (
- finished !== true ||
- widthAnimationTokenRef.current !== animationToken
- ) {
- return;
- }
-
- widthAnimationRef.current = null;
- setWidthAnimatingFlag(false);
- syncStateWidth(nextWidth);
- onComplete?.();
- });
- });
- },
- [
- animateSize,
- animatedWidth,
- setWidthAnimatingFlag,
- setWidthImmediately,
- snapshotWidthAnimation,
- syncStateWidth,
- ]
- );
-
- const snapshotHeightAnimation = useCallback(
- (callback: (value: HeightDimensions) => void) => {
- if (isHeightAnimatingRef.current !== true) {
- callback(currentHeightDimensionsRef.current);
- return;
- }
-
- animatedContainerHeight.stopAnimation((containerValue) => {
- animatedFaceHeight.stopAnimation((faceValue) => {
- animatedShadowHeight.stopAnimation((shadowValue) => {
- heightAnimationRef.current?.stop();
- heightAnimationRef.current = null;
- setHeightAnimatingFlag(false);
-
- const nextSnapshot = {
- container:
- typeof containerValue === 'number'
- ? containerValue
- : currentHeightDimensionsRef.current.container,
- face:
- typeof faceValue === 'number'
- ? faceValue
- : currentHeightDimensionsRef.current.face,
- shadow:
- typeof shadowValue === 'number'
- ? shadowValue
- : currentHeightDimensionsRef.current.shadow,
- };
-
- callback(nextSnapshot);
- });
- });
- });
- },
- [
- animatedContainerHeight,
- animatedFaceHeight,
- animatedShadowHeight,
- setHeightAnimatingFlag,
- ]
- );
-
- const setHeightImmediately = useCallback(
- (nextDimensions: HeightDimensions) => {
- heightAnimationTokenRef.current += 1;
- heightAnimationRef.current?.stop();
- heightAnimationRef.current = null;
- setHeightAnimatingFlag(false);
- currentHeightDimensionsRef.current = nextDimensions;
- animatedContainerHeight.setValue(nextDimensions.container);
- animatedFaceHeight.setValue(nextDimensions.face);
- animatedShadowHeight.setValue(nextDimensions.shadow);
- },
- [
- animatedContainerHeight,
- animatedFaceHeight,
- animatedShadowHeight,
- setHeightAnimatingFlag,
- ]
- );
-
- const animateHeightTo = useCallback(
- (nextDimensions: HeightDimensions) => {
- if (
- animateSize !== true ||
- areHeightDimensionsEqual(
- currentHeightDimensionsRef.current,
- nextDimensions
- )
- ) {
- setHeightImmediately(nextDimensions);
- return;
- }
-
- snapshotHeightAnimation((snapshot) => {
- if (areHeightDimensionsEqual(snapshot, nextDimensions)) {
- setHeightImmediately(nextDimensions);
- return;
- }
-
- heightAnimationTokenRef.current += 1;
- const animationToken = heightAnimationTokenRef.current;
- currentHeightDimensionsRef.current = nextDimensions;
- animatedContainerHeight.setValue(snapshot.container);
- animatedFaceHeight.setValue(snapshot.face);
- animatedShadowHeight.setValue(snapshot.shadow);
- setHeightAnimatingFlag(true);
-
- const animation = Animated.parallel([
- Animated.timing(animatedContainerHeight, {
- duration: SIZE_ANIMATION_DURATION,
- easing: SIZE_ANIMATION_EASING,
- toValue: nextDimensions.container,
- useNativeDriver: false,
- }),
- Animated.timing(animatedFaceHeight, {
- duration: SIZE_ANIMATION_DURATION,
- easing: SIZE_ANIMATION_EASING,
- toValue: nextDimensions.face,
- useNativeDriver: false,
- }),
- Animated.timing(animatedShadowHeight, {
- duration: SIZE_ANIMATION_DURATION,
- easing: SIZE_ANIMATION_EASING,
- toValue: nextDimensions.shadow,
- useNativeDriver: false,
- }),
- ]);
-
- heightAnimationRef.current = animation;
- animation.start(({ finished }) => {
- if (
- finished !== true ||
- heightAnimationTokenRef.current !== animationToken
- ) {
- return;
- }
-
- heightAnimationRef.current = null;
- setHeightAnimatingFlag(false);
- currentHeightDimensionsRef.current = nextDimensions;
- });
- });
- },
- [
- animateSize,
- animatedContainerHeight,
- animatedFaceHeight,
- animatedShadowHeight,
- setHeightAnimatingFlag,
- setHeightImmediately,
- snapshotHeightAnimation,
- ]
- );
-
- const runTextPhase = useCallback(
- (nextRunId: number, targetText: string | null, onComplete?: () => void) => {
- stopTextTransition();
-
- if (
- textTransition !== true ||
- !isNonEmptyString(targetText) ||
- !isNonEmptyString(displayedTextRef.current) ||
- displayedTextRef.current === targetText
- ) {
- syncDisplayedText(targetText);
- onComplete?.();
- return;
- }
-
- const fromText = displayedTextRef.current;
-
- textTransitionControllerRef.current = runTextTransition({
- fromText,
- targetText,
- onUpdate: syncDisplayedText,
- onComplete: () => {
- textTransitionControllerRef.current = null;
-
- if (textRunIdRef.current !== nextRunId) {
- return;
- }
-
- syncDisplayedText(targetText);
- onComplete?.();
- },
- });
- },
- [stopTextTransition, syncDisplayedText, textTransition]
- );
-
- const requestHiddenMeasurement = useCallback((text: string) => {
- const nextRequest = {
- id: textRunIdRef.current,
- text,
- };
-
- hiddenMeasurementRequestRef.current = nextRequest;
- setHiddenMeasurementRequest((currentValue) => {
- if (
- currentValue !== null &&
- currentValue.id === nextRequest.id &&
- currentValue.text === nextRequest.text
- ) {
- return currentValue;
- }
-
- return nextRequest;
- });
- }, []);
-
- const onHiddenMeasurementLayout = useCallback(
- (event: LayoutChangeEvent) => {
- const request = hiddenMeasurementRequestRef.current;
-
- if (request === null) {
- return;
- }
-
- hiddenMeasurementRequestRef.current = null;
- setHiddenMeasurementRequest(null);
-
- const nextWidth = event.nativeEvent.layout.width;
- const flow = getAutoWidthTextFlow(
- currentWidthValueRef.current,
- nextWidth
- );
- const requestId = request.id;
-
- if (textRunIdRef.current !== requestId) {
- return;
- }
-
- animatedOpacity.setValue(1);
-
- if (flow === 'initial') {
- setWidthImmediately(nextWidth);
- syncDisplayedText(request.text);
- return;
- }
-
- if (flow === 'text-only') {
- runTextPhase(requestId, request.text);
- return;
- }
-
- if (flow === 'grow-first') {
- animateWidthTo(nextWidth, () => {
- if (textRunIdRef.current !== requestId) {
- return;
- }
-
- runTextPhase(requestId, request.text);
- });
- return;
- }
-
- runTextPhase(requestId, request.text, () => {
- if (textRunIdRef.current !== requestId) {
- return;
- }
-
- animateWidthTo(nextWidth);
- });
- },
- [
- animateWidthTo,
- animatedOpacity,
- runTextPhase,
- setWidthImmediately,
- syncDisplayedText,
- ]
- );
-
- const onVisibleContentLayout = useCallback(
- (event: LayoutChangeEvent) => {
- if (
- widthModeRef.current !== 'auto' ||
- canChoreographAutoWidthText === true
- ) {
- return;
- }
-
- const nextWidth = event.nativeEvent.layout.width;
-
- animatedOpacity.setValue(1);
-
- if (currentWidthValueRef.current === null || animateSize !== true) {
- setWidthImmediately(nextWidth);
- return;
- }
-
- animateWidthTo(nextWidth);
- },
- [
- animateSize,
- animateWidthTo,
- animatedOpacity,
- canChoreographAutoWidthText,
- setWidthImmediately,
- ]
- );
-
- useEffect(() => {
- const nextHeightDimensions = getHeightDimensions(
- height,
- paddingTop,
- paddingBottom,
- raiseLevel
- );
- const previousWidthMode = widthModeRef.current;
-
- widthModeRef.current = widthMode;
-
- if (didInitializeSizeRef.current !== true) {
- didInitializeSizeRef.current = true;
- currentHeightDimensionsRef.current = nextHeightDimensions;
- setHeightImmediately(nextHeightDimensions);
-
- if (widthMode === 'fixed' && typeof width === 'number') {
- setWidthImmediately(width);
- } else if (widthMode === 'auto') {
- setWidthImmediately(null);
- }
-
- return;
- }
-
- if (previousWidthMode !== widthMode) {
- stopTextTransition();
- textRunIdRef.current += 1;
- setHeightImmediately(nextHeightDimensions);
-
- if (widthMode === 'fixed' && typeof width === 'number') {
- animatedOpacity.setValue(1);
- setWidthImmediately(width);
- } else if (widthMode === 'stretch') {
- animatedOpacity.setValue(1);
- setWidthImmediately(null);
- } else {
- animatedOpacity.setValue(0);
- setWidthImmediately(null);
- }
-
- return;
- }
-
- if (widthMode === 'fixed' && typeof width === 'number') {
- animateWidthTo(width);
- }
-
- animateHeightTo(nextHeightDimensions);
- }, [
- animateHeightTo,
- animateWidthTo,
+ const widthOwner = useButtonWidthOwner({
+ animateSize,
animatedOpacity,
- height,
- paddingBottom,
- paddingTop,
- raiseLevel,
- setHeightImmediately,
- setWidthImmediately,
- stopTextTransition,
+ reduceMotion,
+ stretch,
width,
- widthMode,
- ]);
-
- useEffect(() => {
- const nextText = stringChildren;
- const nextRunId = textRunIdRef.current + 1;
-
- if (didInitializeTextRef.current !== true) {
- didInitializeTextRef.current = true;
- currentTargetTextRef.current = nextText;
- textRunIdRef.current = nextRunId;
- syncDisplayedText(nextText);
-
- if (canChoreographAutoWidthText === true && nextText !== null) {
- requestHiddenMeasurement(nextText);
- }
-
- return;
- }
-
- if (nextText === currentTargetTextRef.current) {
- return;
- }
-
- currentTargetTextRef.current = nextText;
- textRunIdRef.current = nextRunId;
- stopTextTransition();
-
- if (canChoreographAutoWidthText === true && nextText !== null) {
- snapshotWidthAnimation(() => {
- requestHiddenMeasurement(nextText);
- });
- return;
- }
-
- hiddenMeasurementRequestRef.current = null;
- setHiddenMeasurementRequest(null);
- runTextPhase(nextRunId, nextText);
- }, [
- canChoreographAutoWidthText,
- requestHiddenMeasurement,
- runTextPhase,
- snapshotWidthAnimation,
- stopTextTransition,
- stringChildren,
- syncDisplayedText,
- ]);
-
- useEffect(() => {
- if (canChoreographAutoWidthText === true) {
- return;
- }
-
- hiddenMeasurementRequestRef.current = null;
- setHiddenMeasurementRequest(null);
- }, [canChoreographAutoWidthText]);
-
- useEffect(
- () => () => {
- stopTextTransition();
- widthAnimationRef.current?.stop();
- heightAnimationRef.current?.stop();
- },
- [stopTextTransition]
- );
-
+ });
+ const heightDimensions = useMemo(
+ () => getHeightDimensions(height, paddingTop, paddingBottom, raiseLevel),
+ [height, paddingBottom, paddingTop, raiseLevel]
+ );
+ const heightOwner = useButtonHeightOwner({
+ animateSize,
+ dimensions: heightDimensions,
+ reduceMotion,
+ widthMode: widthOwner.widthMode,
+ });
+ const textCoordinator = useAutoWidthTextCoordinator({
+ after,
+ animatedOpacity,
+ animateSize,
+ before,
+ children,
+ extra,
+ measurementSignature,
+ reduceMotion,
+ textTransition,
+ widthCommands: widthOwner.commands,
+ widthMode: widthOwner.widthMode,
+ });
+ const preservesFixedWidth =
+ animateSize && !reduceMotion && widthOwner.widthMode === 'fixed';
+ const usesAnimatedWidth =
+ animateSize &&
+ !reduceMotion &&
+ widthOwner.widthMode !== 'stretch' &&
+ widthOwner.isAnimating;
+ const usesWidthOverride = preservesFixedWidth || usesAnimatedWidth;
+ const preservesHeight = animateSize && !reduceMotion;
+ const widthOverride = usesAnimatedWidth
+ ? widthOwner.animatedWidth
+ : widthOwner.resolvedWidth;
+ const containerHeightOverride = heightOwner.isAnimating
+ ? heightOwner.animatedContainerHeight
+ : heightOwner.renderedDimensions.container;
+ const faceHeightOverride = heightOwner.isAnimating
+ ? heightOwner.animatedFaceHeight
+ : heightOwner.renderedDimensions.face;
+ const shadowHeightOverride = heightOwner.isAnimating
+ ? heightOwner.animatedShadowHeight
+ : heightOwner.renderedDimensions.shadow;
const sizeAnimatedStyles = useMemo(
() => ({
container:
- isWidthAnimating === true || isHeightAnimating === true
- ? {
- ...(isWidthAnimating === true && widthMode !== 'stretch'
- ? { width: animatedWidth }
- : null),
- ...(isHeightAnimating === true
- ? { height: animatedContainerHeight }
- : null),
- }
- : null,
- shadow:
- isHeightAnimating === true
+ usesWidthOverride || preservesHeight
? {
- height: animatedShadowHeight,
+ ...(usesWidthOverride ? { width: widthOverride } : null),
+ ...(preservesHeight ? { height: containerHeightOverride } : null),
}
: null,
+ shadow: preservesHeight ? { height: shadowHeightOverride } : null,
bottom:
- isWidthAnimating === true || isHeightAnimating === true
+ usesWidthOverride || preservesHeight
? {
- ...(isWidthAnimating === true && widthMode !== 'stretch'
- ? { width: animatedWidth }
- : null),
- ...(isHeightAnimating === true
- ? { height: animatedFaceHeight }
- : null),
+ ...(usesWidthOverride ? { width: widthOverride } : null),
+ ...(preservesHeight ? { height: faceHeightOverride } : null),
}
: null,
progress:
- isWidthAnimating === true || isHeightAnimating === true
+ usesWidthOverride || preservesHeight
? {
- ...(isWidthAnimating === true && widthMode !== 'stretch'
- ? { width: animatedWidth }
- : null),
- ...(isHeightAnimating === true
- ? { height: animatedFaceHeight }
- : null),
+ ...(usesWidthOverride ? { width: widthOverride } : null),
+ ...(preservesHeight ? { height: faceHeightOverride } : null),
}
: null,
content:
- isWidthAnimating === true || isHeightAnimating === true
+ usesWidthOverride || preservesHeight
? {
- ...(isWidthAnimating === true && widthMode !== 'stretch'
- ? { width: animatedWidth }
- : null),
- ...(isHeightAnimating === true
- ? { height: animatedFaceHeight }
- : null),
+ ...(usesWidthOverride ? { width: widthOverride } : null),
+ ...(preservesHeight ? { height: faceHeightOverride } : null),
}
: null,
activeBackground:
- isWidthAnimating === true || isHeightAnimating === true
+ usesWidthOverride || preservesHeight
? {
- ...(isWidthAnimating === true && widthMode !== 'stretch'
- ? { width: animatedWidth }
- : null),
- ...(isHeightAnimating === true
- ? { height: animatedFaceHeight }
- : null),
+ ...(usesWidthOverride ? { width: widthOverride } : null),
+ ...(preservesHeight ? { height: faceHeightOverride } : null),
}
: null,
}),
[
- animatedContainerHeight,
- animatedFaceHeight,
- animatedShadowHeight,
- animatedWidth,
- isHeightAnimating,
- isWidthAnimating,
- widthMode,
+ containerHeightOverride,
+ faceHeightOverride,
+ preservesHeight,
+ shadowHeightOverride,
+ usesWidthOverride,
+ widthOverride,
]
);
return {
- displayedText,
- hiddenMeasurementKey:
- hiddenMeasurementRequest !== null
- ? `aws-btn-hidden-measure-${hiddenMeasurementRequest.id}`
- : null,
- hiddenMeasurementText: hiddenMeasurementRequest?.text ?? null,
- onHiddenMeasurementLayout,
- onVisibleContentLayout,
- resolvedWidth:
- widthMode === 'fixed' && typeof width === 'number' ? width : stateWidth,
+ ...textCoordinator,
+ resolvedWidth: widthOwner.resolvedWidth,
sizeAnimatedStyles,
};
};
export default useButtonSizeBehavior;
+export { getAutoWidthTextFlow };
export const getHiddenMeasurementTextStyle = ({
textColor,
@@ -838,7 +197,7 @@ export const getHiddenMeasurementTextStyle = ({
textLineHeight,
textSize,
}: {
- textColor?: string;
+ textColor?: ColorValue;
textFontFamily?: string;
textLineHeight?: number;
textSize?: number;
@@ -853,21 +212,22 @@ export const getHiddenMeasurementTextStyle = ({
export const getHiddenMeasurementContainerStyle = ({
borderWidth,
+ contentGap,
paddingBottom,
paddingHorizontal,
paddingTop,
}: {
borderWidth: number;
+ contentGap?: number;
paddingBottom: number;
paddingHorizontal: number;
paddingTop: number;
}): StyleProp => ({
alignSelf: 'flex-start',
borderWidth,
+ gap: contentGap,
flexDirection: 'row',
- opacity: 0,
paddingBottom,
paddingHorizontal,
paddingTop,
- position: 'absolute',
});
diff --git a/src/useButtonTextTransition.ts b/src/useButtonTextTransition.ts
deleted file mode 100644
index 927552e..0000000
--- a/src/useButtonTextTransition.ts
+++ /dev/null
@@ -1,107 +0,0 @@
-import {
- useCallback,
- useEffect,
- useRef,
- useState,
- type ReactNode,
-} from 'react';
-import { runTextTransition } from './textTransition';
-
-const useButtonTextTransition = ({
- children,
- textTransition,
-}: {
- children: ReactNode;
- textTransition?: boolean;
-}) => {
- const textTransitionControllerRef = useRef<{
- stop: () => void;
- } | null>(null);
- const didMountTextTransitionRef = useRef(false);
- const stringChildren = typeof children === 'string' ? children : null;
- const displayedTextRef = useRef(stringChildren);
- const currentTextTargetRef = useRef(stringChildren);
- const [displayedText, setDisplayedText] = useState(
- stringChildren
- );
-
- const stopTextTransition = useCallback(() => {
- if (textTransitionControllerRef.current !== null) {
- textTransitionControllerRef.current.stop();
- textTransitionControllerRef.current = null;
- }
- }, []);
-
- const updateDisplayedText = useCallback((value: string | null) => {
- displayedTextRef.current = value;
- setDisplayedText((currentValue) =>
- currentValue === value ? currentValue : value
- );
- }, []);
-
- useEffect(() => () => stopTextTransition(), [stopTextTransition]);
-
- useEffect(() => {
- const nextText = stringChildren;
- const previousTarget = currentTextTargetRef.current;
- const previousDisplayedText = displayedTextRef.current;
- const previousText = previousDisplayedText ?? previousTarget;
- const hasMounted = didMountTextTransitionRef.current;
- const canAnimate =
- hasMounted &&
- textTransition === true &&
- typeof nextText === 'string' &&
- nextText.length > 0 &&
- typeof previousText === 'string' &&
- previousText.length > 0 &&
- nextText !== previousTarget;
-
- if (!hasMounted) {
- didMountTextTransitionRef.current = true;
- currentTextTargetRef.current = nextText;
- updateDisplayedText(nextText);
- return;
- }
-
- if (
- textTransition === false ||
- nextText === null ||
- nextText.length === 0
- ) {
- stopTextTransition();
- currentTextTargetRef.current = nextText;
- updateDisplayedText(nextText);
- return;
- }
-
- if (nextText === previousTarget) {
- return;
- }
-
- if (!canAnimate) {
- stopTextTransition();
- currentTextTargetRef.current = nextText;
- updateDisplayedText(nextText);
- return;
- }
-
- stopTextTransition();
- currentTextTargetRef.current = nextText;
- textTransitionControllerRef.current = runTextTransition({
- fromText: previousText ?? nextText,
- targetText: nextText,
- onUpdate: updateDisplayedText,
- onComplete: () => {
- textTransitionControllerRef.current = null;
- updateDisplayedText(nextText);
- },
- });
- }, [stopTextTransition, stringChildren, textTransition, updateDisplayedText]);
-
- return {
- displayedText,
- stringChildren,
- };
-};
-
-export default useButtonTextTransition;
diff --git a/src/usePressProgressController.ts b/src/usePressProgressController.ts
index af9c67d..a697c5b 100644
--- a/src/usePressProgressController.ts
+++ b/src/usePressProgressController.ts
@@ -1,748 +1,186 @@
-import {
- useCallback,
- useEffect,
- useLayoutEffect,
- useMemo,
- useRef,
- useState,
-} from 'react';
-import { Animated, type GestureResponderEvent } from 'react-native';
-import { frameThrower } from '@rcaferati/wac';
-import debounce from 'lodash.debounce';
-import { animateElastic, animateSpring, animateTiming } from './helpers';
-import { cancelFrame, requestFrame } from './frameLoop';
-import { ANIMATED_TIMING_OFF, DEFAULT_DEBOUNCED_PRESS_TIME } from './constants';
-import type { AwesomeButtonOnPress, ProgressCompletionHandler } from './types';
-
-// WAC's frameThrower waits "future frames" plus one extra layout hop,
-// so 1 gives us roughly two animation frames before running onPress.
-const PRESS_ACTION_FRAME_THROW = 2;
-const PRESS_OUT_OBSERVER_FRAME_THROW = 2;
-
-type PressProgressControllerOptions = {
- activeOpacity: number;
+import { useCallback, useLayoutEffect, useRef } from 'react';
+import { Animated } from 'react-native';
+import type {
+ PressProgressLiveDependencies,
+ ProgressReleaseRequest,
+} from './interaction/contracts';
+import useGestureReleaseOwner from './interaction/useGestureReleaseOwner';
+import useProgressOwner from './interaction/useProgressOwner';
+
+type PressProgressControllerOptions = PressProgressLiveDependencies & {
animatedActive: Animated.Value;
animatedLoading: Animated.Value;
animatedOpacity: Animated.Value;
animatedValue: Animated.Value;
activityOpacity: Animated.Value;
- disabled: boolean;
- hasChildren: boolean;
loadingOpacity: Animated.Value;
- onPress: AwesomeButtonOnPress;
- onPressIn: (event: GestureResponderEvent) => void;
- onPressOut: (event: GestureResponderEvent) => void;
- onPressedIn: () => void;
- onPressedOut: () => void;
- onProgressEnd: () => void;
- onProgressStart: () => void;
- progress: boolean;
- progressLoadingTime: number;
- springRelease: boolean;
textOpacity: Animated.Value;
- debouncedPressTime?: number;
};
-type DebouncedPressHandler = AwesomeButtonOnPress & {
- cancel?: () => void;
-};
-
-type PressGestureDisposition = 'idle' | 'armed' | 'blocked';
-
-const usePressProgressController = ({
- activeOpacity,
- animatedActive,
- animatedLoading,
- animatedOpacity,
- animatedValue,
- activityOpacity,
- disabled,
- hasChildren,
- loadingOpacity,
- onPress,
- onPressIn,
- onPressOut,
- onPressedIn,
- onPressedOut,
- onProgressEnd,
- onProgressStart,
- progress,
- progressLoadingTime,
- springRelease,
- textOpacity,
- debouncedPressTime = DEFAULT_DEBOUNCED_PRESS_TIME,
-}: PressProgressControllerOptions) => {
- const [activity, setActivity] = useState(false);
- const progressing = useRef(false);
- const pressed = useRef(false);
- const releasing = useRef(false);
- const gestureIdRef = useRef(0);
- const activeGestureIdRef = useRef(null);
- const pressingGestureIdRef = useRef(null);
- const pressedGestureIdRef = useRef(null);
- const releaseRequestedForGestureIdRef = useRef(null);
- const progressEndFrameRef = useRef | null>(
- null
+const usePressProgressController = (
+ options: PressProgressControllerOptions
+) => {
+ const {
+ animatedActive,
+ animatedLoading,
+ animatedOpacity,
+ animatedValue,
+ activityOpacity,
+ loadingOpacity,
+ textOpacity,
+ } = options;
+ const liveRef = useRef(options);
+ const mountedRef = useRef(true);
+ const activationRouterRef = useRef<(physicalLifecycle: boolean) => boolean>(
+ () => false
);
- const progressReleaseFrameRef = useRef | null>(null);
- const releasedGestureClearTimeoutRef = useRef | null>(null);
- const progressStartFrameRef = useRef | null>(
- null
+ const releaseRouterRef = useRef<(request: ProgressReleaseRequest) => void>(
+ () => undefined
);
- const activeGestureDispositionRef = useRef('idle');
- const releasedGestureDispositionRef = useRef('idle');
- const pressActionLifecycleTokenRef = useRef(0);
- const pressOutObserverLifecycleTokenRef = useRef(0);
- const pressAnimationTokenRef = useRef(0);
- const releaseAnimationTokenRef = useRef(0);
- const pressAnimation = useRef(null);
- const releaseAnimationRef = useRef(null);
- const progressLoadingAnimationRef =
- useRef(null);
- const progressContentOutAnimationRef =
- useRef(null);
- const progressStartedRef = useRef(false);
- const nonProgressReleaseReconcileFrameRef = useRef | null>(null);
- const onPressRef = useRef(onPress);
- const onPressOutRef = useRef(onPressOut);
- const disabledRef = useRef(disabled);
- const hasChildrenRef = useRef(hasChildren);
+ const busyRouterRef = useRef<() => boolean>(() => false);
useLayoutEffect(() => {
- onPressRef.current = onPress;
- onPressOutRef.current = onPressOut;
- disabledRef.current = disabled;
- hasChildrenRef.current = hasChildren;
+ liveRef.current = options;
});
- const debouncedPress = useMemo(() => {
- if (debouncedPressTime === 0) {
- return (next) => onPressRef.current(next);
- }
-
- const handler = debounce(
- (next?: ProgressCompletionHandler) => onPressRef.current(next),
- debouncedPressTime,
- {
- trailing: false,
- leading: true,
- }
- );
-
- return handler as DebouncedPressHandler;
- }, [debouncedPressTime]);
- const debouncedPressRef = useRef(debouncedPress);
-
- useLayoutEffect(() => {
- debouncedPressRef.current = debouncedPress;
- }, [debouncedPress]);
-
- const stopProgressStartAnimations = useCallback(() => {
- progressLoadingAnimationRef.current?.stop();
- progressContentOutAnimationRef.current?.stop();
- progressLoadingAnimationRef.current = null;
- progressContentOutAnimationRef.current = null;
- }, []);
-
- const cancelPendingFrames = useCallback(() => {
- cancelFrame(progressEndFrameRef.current);
- cancelFrame(progressReleaseFrameRef.current);
- clearTimeout(releasedGestureClearTimeoutRef.current ?? undefined);
- cancelFrame(progressStartFrameRef.current);
- cancelFrame(nonProgressReleaseReconcileFrameRef.current);
- stopProgressStartAnimations();
- progressEndFrameRef.current = null;
- progressReleaseFrameRef.current = null;
- releasedGestureClearTimeoutRef.current = null;
- progressStartFrameRef.current = null;
- nonProgressReleaseReconcileFrameRef.current = null;
- activeGestureDispositionRef.current = 'idle';
- releasedGestureDispositionRef.current = 'idle';
- progressStartedRef.current = false;
- activeGestureIdRef.current = null;
- pressingGestureIdRef.current = null;
- pressedGestureIdRef.current = null;
- releaseRequestedForGestureIdRef.current = null;
- pressActionLifecycleTokenRef.current += 1;
- pressOutObserverLifecycleTokenRef.current += 1;
- pressAnimationTokenRef.current += 1;
- releaseAnimationTokenRef.current += 1;
- }, [stopProgressStartAnimations]);
-
- useEffect(() => {
- return () => {
- cancelPendingFrames();
- pressAnimation.current?.stop();
- releaseAnimationRef.current?.stop();
- debouncedPressRef.current.cancel?.();
- };
- }, [cancelPendingFrames]);
-
- const animatePressIn = useCallback(
- (gestureId: number) => {
- pressAnimationTokenRef.current += 1;
- const animationToken = pressAnimationTokenRef.current;
- pressAnimation.current?.stop();
- pressingGestureIdRef.current = gestureId;
- pressedGestureIdRef.current = null;
- pressed.current = false;
- pressAnimation.current = Animated.parallel([
- animateTiming({
- variable: animatedValue,
- toValue: 1,
- duration: ANIMATED_TIMING_OFF,
- }),
- animateTiming({
- variable: animatedActive,
- toValue: 1,
- duration: ANIMATED_TIMING_OFF,
- }),
- animateTiming({
- variable: animatedOpacity,
- toValue: progress ? 1 : activeOpacity,
- duration: ANIMATED_TIMING_OFF,
- }),
- ]);
-
- pressAnimation.current.start(() => {
- if (
- pressAnimationTokenRef.current !== animationToken ||
- activeGestureIdRef.current !== gestureId ||
- pressingGestureIdRef.current !== gestureId
- ) {
- return;
- }
- pressingGestureIdRef.current = null;
- pressedGestureIdRef.current = gestureId;
- pressed.current = true;
- onPressedIn();
- });
+ useLayoutEffect(
+ () => () => {
+ mountedRef.current = false;
+ activationRouterRef.current = () => false;
+ releaseRouterRef.current = () => undefined;
+ busyRouterRef.current = () => false;
},
- [
- activeOpacity,
- animatedActive,
- animatedOpacity,
- animatedValue,
- onPressedIn,
- progress,
- ]
+ []
);
- const animateLoadingStart = useCallback(() => {
- progressLoadingAnimationRef.current?.stop();
- animatedLoading.setValue(0);
- const animation = animateTiming({
- variable: animatedLoading,
- toValue: 1,
- duration: progressLoadingTime,
- });
-
- progressLoadingAnimationRef.current = animation;
- animation.start(() => {
- if (progressLoadingAnimationRef.current === animation) {
- progressLoadingAnimationRef.current = null;
- }
- });
- }, [animatedLoading, progressLoadingTime]);
-
- const animateContentOut = useCallback(() => {
- progressContentOutAnimationRef.current?.stop();
- const animation = Animated.parallel([
- animateTiming({
- variable: loadingOpacity,
- toValue: 1,
- }),
- animateElastic({
- variable: textOpacity,
- toValue: 0,
- }),
- animateElastic({
- variable: activityOpacity,
- toValue: 1,
- }),
- ]);
-
- progressContentOutAnimationRef.current = animation;
- animation.start(() => {
- if (progressContentOutAnimationRef.current === animation) {
- progressContentOutAnimationRef.current = null;
- }
- });
- }, [activityOpacity, loadingOpacity, textOpacity]);
-
- const animateRelease = useCallback(
- (releaseGestureId: number | null, callback?: () => void) => {
- if (releasing.current === true) {
- return;
- }
-
- releaseAnimationTokenRef.current += 1;
- const animationToken = releaseAnimationTokenRef.current;
- releasing.current = true;
- pressAnimation.current?.stop();
- pressingGestureIdRef.current = null;
- pressedGestureIdRef.current = null;
- pressed.current = false;
-
- const finishRelease = () => {
- if (
- releasing.current === false ||
- releaseAnimationTokenRef.current !== animationToken
- ) {
- return;
- }
-
- releasing.current = false;
- releaseAnimationRef.current = null;
- pressed.current = false;
- pressingGestureIdRef.current = null;
- pressedGestureIdRef.current = null;
- if (
- releaseGestureId === null ||
- releaseRequestedForGestureIdRef.current === releaseGestureId
- ) {
- releaseRequestedForGestureIdRef.current = null;
- }
- callback?.();
- onPressedOut();
- };
-
- const releaseAnimation =
- springRelease === true
- ? Animated.parallel([
- animateSpring({
- variable: animatedActive,
- toValue: 0,
- }),
- animateSpring({
- variable: animatedValue,
- toValue: 0,
- }),
- animateTiming({
- variable: animatedOpacity,
- toValue: 1,
- }),
- ])
- : Animated.parallel([
- animateTiming({
- variable: animatedActive,
- toValue: 0,
- duration: ANIMATED_TIMING_OFF,
- }),
- animateTiming({
- variable: animatedValue,
- toValue: 0,
- duration: ANIMATED_TIMING_OFF,
- }),
- animateTiming({
- variable: animatedOpacity,
- toValue: 1,
- }),
- ]);
-
- releaseAnimationRef.current = releaseAnimation;
- releaseAnimation.start(finishRelease);
- },
- [
- animatedActive,
- animatedOpacity,
- animatedValue,
- onPressedOut,
- springRelease,
- ]
+ const getLive = useCallback(() => liveRef.current, []);
+ const isMounted = useCallback(() => mountedRef.current, []);
+ const getBusy = useCallback(() => busyRouterRef.current(), []);
+ const requestActivation = useCallback(
+ (physicalLifecycle: boolean) =>
+ activationRouterRef.current(physicalLifecycle),
+ []
);
-
- const interruptRelease = useCallback(() => {
- if (releasing.current !== true) {
- return;
- }
-
- releaseAnimationTokenRef.current += 1;
- releaseAnimationRef.current?.stop();
- releaseAnimationRef.current = null;
- releasing.current = false;
- pressed.current = false;
- }, []);
-
- const requestNonProgressReleaseReconcile = useCallback(() => {
- if (progress === true) {
- return;
- }
-
- cancelFrame(nonProgressReleaseReconcileFrameRef.current);
- nonProgressReleaseReconcileFrameRef.current = requestFrame(() => {
- nonProgressReleaseReconcileFrameRef.current = null;
-
- if (
- progressing.current === true ||
- progressStartedRef.current === true ||
- activeGestureIdRef.current !== null ||
- releasing.current === true
- ) {
- return;
- }
-
- const releaseGestureId = releaseRequestedForGestureIdRef.current;
- const hasVisualPress =
- pressingGestureIdRef.current !== null ||
- pressedGestureIdRef.current !== null ||
- pressed.current === true;
-
- if (releaseGestureId === null && hasVisualPress === false) {
- return;
- }
-
- animateRelease(
- releaseGestureId ??
- pressedGestureIdRef.current ??
- pressingGestureIdRef.current ??
- gestureIdRef.current
- );
- });
- }, [animateRelease, progress]);
-
- const animateProgressEnd = useCallback(
- (callback) => {
- if (progress !== true) {
- callback?.();
- return;
- }
-
- cancelFrame(progressEndFrameRef.current);
- stopProgressStartAnimations();
- progressEndFrameRef.current = requestFrame(() => {
- progressEndFrameRef.current = null;
- animateTiming({
- variable: animatedLoading,
- toValue: 1,
- }).start(() => {
- Animated.parallel([
- animateElastic({
- variable: textOpacity,
- toValue: 1,
- }),
- animateElastic({
- variable: activityOpacity,
- toValue: 0,
- }),
- animateTiming({
- variable: loadingOpacity,
- toValue: 0,
- delay: 100,
- }),
- ]).start(() => {
- animateRelease(null, () => {
- progressing.current = false;
- progressStartedRef.current = false;
- setActivity(false);
- callback?.();
- onProgressEnd();
- });
- });
- });
- });
- },
- [
- activityOpacity,
- animateRelease,
- animatedLoading,
- loadingOpacity,
- onProgressEnd,
- progress,
- textOpacity,
- stopProgressStartAnimations,
- ]
+ const requestRelease = useCallback(
+ (request: ProgressReleaseRequest) => releaseRouterRef.current(request),
+ []
);
- const startProgress = useCallback(() => {
- progressing.current = true;
- progressStartedRef.current = true;
- onProgressStart();
- setActivity(true);
- animateLoadingStart();
- animateContentOut();
- }, [animateContentOut, animateLoadingStart, onProgressStart]);
-
- const scheduleProgressFallbackRelease = useCallback(() => {
- cancelFrame(progressReleaseFrameRef.current);
- progressReleaseFrameRef.current = requestFrame(() => {
- progressReleaseFrameRef.current = null;
-
- if (progressing.current === true || progressStartedRef.current === true) {
- return;
- }
-
- animateRelease(null);
- });
- }, [animateRelease]);
-
- const rollbackProgressPress = useCallback(() => {
- if (
- progressStartFrameRef.current !== null &&
- progressStartedRef.current !== true
- ) {
- cancelFrame(progressStartFrameRef.current);
- progressStartFrameRef.current = null;
- progressing.current = false;
- progressStartedRef.current = false;
- return;
- }
-
- stopProgressStartAnimations();
- progressStartFrameRef.current = null;
- progressStartedRef.current = false;
- progressing.current = false;
- animatedLoading.setValue(0);
- textOpacity.setValue(1);
- activityOpacity.setValue(0);
- loadingOpacity.setValue(0);
- setActivity(false);
- animateRelease(null, () => {
- onProgressEnd();
- });
- }, [
+ const gestureOwner = useGestureReleaseOwner({
+ animatedActive,
+ animatedOpacity,
+ animatedValue,
+ getBusy,
+ getLive,
+ isMounted,
+ requestActivation,
+ });
+ const progressOwner = useProgressOwner({
activityOpacity,
- animateRelease,
animatedLoading,
+ getLive,
+ isMounted,
loadingOpacity,
- onProgressEnd,
- stopProgressStartAnimations,
+ requestRelease,
textOpacity,
- ]);
-
- const setActiveGestureDisposition = useCallback(
- (disposition: PressGestureDisposition) => {
- clearTimeout(releasedGestureClearTimeoutRef.current ?? undefined);
- releasedGestureClearTimeoutRef.current = null;
- releasedGestureDispositionRef.current = 'idle';
- activeGestureDispositionRef.current = disposition;
- },
- []
- );
-
- const consumeGestureDisposition = useCallback(() => {
- const disposition =
- releasedGestureDispositionRef.current !== 'idle'
- ? releasedGestureDispositionRef.current
- : activeGestureDispositionRef.current;
-
- activeGestureDispositionRef.current = 'idle';
- releasedGestureDispositionRef.current = 'idle';
- clearTimeout(releasedGestureClearTimeoutRef.current ?? undefined);
- releasedGestureClearTimeoutRef.current = null;
-
- return disposition;
- }, []);
-
- const finalizeGestureDisposition = useCallback(() => {
- const disposition = activeGestureDispositionRef.current;
-
- if (disposition === 'idle') {
- return;
- }
-
- activeGestureDispositionRef.current = 'idle';
- releasedGestureDispositionRef.current = disposition;
- clearTimeout(releasedGestureClearTimeoutRef.current ?? undefined);
- releasedGestureClearTimeoutRef.current = setTimeout(() => {
- releasedGestureClearTimeoutRef.current = null;
- releasedGestureDispositionRef.current = 'idle';
- }, 0);
- }, []);
-
- const invokePressAction = useCallback(
- (next?: ProgressCompletionHandler, onAbort?: () => void) => {
- const lifecycleToken = pressActionLifecycleTokenRef.current;
-
- frameThrower(PRESS_ACTION_FRAME_THROW).then(() => {
- if (pressActionLifecycleTokenRef.current !== lifecycleToken) {
- return;
- }
-
- if (disabledRef.current === true || hasChildrenRef.current === false) {
- onAbort?.();
- return;
- }
-
- debouncedPress(next);
- });
- },
- [debouncedPress]
- );
-
- const invokePressOutObserver = useCallback((event: GestureResponderEvent) => {
- event.persist?.();
- const lifecycleToken = pressOutObserverLifecycleTokenRef.current;
-
- frameThrower(PRESS_OUT_OBSERVER_FRAME_THROW).then(() => {
- if (pressOutObserverLifecycleTokenRef.current !== lifecycleToken) {
- return;
- }
-
- if (disabledRef.current === true || hasChildrenRef.current === false) {
- return;
- }
-
- onPressOutRef.current(event);
- });
- }, []);
-
- const handlePress = useCallback(() => {
- const gestureDisposition = consumeGestureDisposition();
-
- if (gestureDisposition === 'blocked') {
- return;
- }
-
- if (gestureDisposition === 'idle' && releasing.current === true) {
- return;
- }
-
- if (
- disabled === true ||
- hasChildren === false ||
- progressing.current === true
- ) {
- return;
- }
-
- if (progress === true) {
- cancelFrame(progressReleaseFrameRef.current);
- progressReleaseFrameRef.current = null;
- progressing.current = true;
- cancelFrame(progressStartFrameRef.current);
- progressStartFrameRef.current = requestFrame(() => {
- progressStartFrameRef.current = null;
- startProgress();
- });
- invokePressAction(animateProgressEnd, rollbackProgressPress);
- return;
- }
-
- if (activeGestureIdRef.current !== null) {
- releaseRequestedForGestureIdRef.current = activeGestureIdRef.current;
- activeGestureIdRef.current = null;
- requestNonProgressReleaseReconcile();
- }
-
- invokePressAction();
- }, [
- consumeGestureDisposition,
- animateProgressEnd,
- disabled,
- hasChildren,
- invokePressAction,
- progress,
- requestNonProgressReleaseReconcile,
- rollbackProgressPress,
- startProgress,
- ]);
-
- const handlePressIn = useCallback(
- (event: GestureResponderEvent) => {
- cancelFrame(progressReleaseFrameRef.current);
- progressReleaseFrameRef.current = null;
- cancelFrame(nonProgressReleaseReconcileFrameRef.current);
- nonProgressReleaseReconcileFrameRef.current = null;
-
+ });
+ const {
+ acceptDebounce,
+ deferActivation,
+ handleAtomicLongPress,
+ handleAtomicPress,
+ handlePress,
+ handlePressIn,
+ handlePressOut,
+ isStructurallyEligible,
+ releaseForProgress,
+ } = gestureOwner;
+ const {
+ abort: abortProgress,
+ activity,
+ begin: beginProgress,
+ isBusy,
+ markActivationDelivered,
+ owns: ownsProgress,
+ } = progressOwner;
+
+ const dispatchOrdinaryActivation = useCallback(
+ (physicalLifecycle: boolean) => {
+ const live = getLive();
if (
- disabled !== true &&
- hasChildren === true &&
- releasing.current === true &&
- progressing.current === false &&
- pressed.current === false
+ !isStructurallyEligible() ||
+ live.onPress === undefined ||
+ !acceptDebounce()
) {
- interruptRelease();
+ return false;
}
- if (
- disabled === true ||
- hasChildren === false ||
- progressing.current === true
- ) {
- if (progressing.current === true) {
- setActiveGestureDisposition('blocked');
+ const progressOwnership = live.progress
+ ? beginProgress(physicalLifecycle)
+ : null;
+ if (live.progress && progressOwnership === null) return false;
+ deferActivation(() => {
+ const current = getLive();
+ if (
+ !isMounted() ||
+ current.disabled ||
+ !current.hasChildren ||
+ current.onPress === undefined
+ ) {
+ if (progressOwnership !== null) {
+ abortProgress(progressOwnership.generation);
+ }
+ return;
}
- return;
- }
-
- setActiveGestureDisposition('armed');
- gestureIdRef.current += 1;
- activeGestureIdRef.current = gestureIdRef.current;
- releaseRequestedForGestureIdRef.current = null;
- onPressIn(event);
- animatePressIn(gestureIdRef.current);
+ if (progressOwnership !== null) {
+ current.onPress(progressOwnership.next);
+ if (ownsProgress(progressOwnership.generation)) {
+ markActivationDelivered(progressOwnership.generation);
+ }
+ } else {
+ current.onPress();
+ }
+ });
+ return true;
},
[
- animatePressIn,
- disabled,
- hasChildren,
- interruptRelease,
- onPressIn,
- setActiveGestureDisposition,
+ abortProgress,
+ acceptDebounce,
+ beginProgress,
+ deferActivation,
+ getLive,
+ isMounted,
+ isStructurallyEligible,
+ markActivationDelivered,
+ ownsProgress,
]
);
- const handlePressOut = useCallback(
- (event: GestureResponderEvent) => {
- if (disabled === true || hasChildren === false) {
- return;
- }
-
- const releaseGestureId =
- activeGestureIdRef.current ??
- (gestureIdRef.current > 0 ? gestureIdRef.current : null);
-
- activeGestureIdRef.current = null;
- invokePressOutObserver(event);
- finalizeGestureDisposition();
-
- if (releasing.current === true) {
- if (progress !== true && releaseGestureId !== null) {
- releaseRequestedForGestureIdRef.current = releaseGestureId;
- requestNonProgressReleaseReconcile();
- }
- return;
- }
-
- if (progress === true && progressing.current === true) {
- return;
- }
-
- if (progress === true) {
- scheduleProgressFallbackRelease();
- return;
- }
-
- if (releaseGestureId === null) {
- requestNonProgressReleaseReconcile();
- return;
- }
-
- releaseRequestedForGestureIdRef.current = releaseGestureId;
- animateRelease(releaseGestureId);
+ const routeProgressRelease = useCallback(
+ (request: ProgressReleaseRequest) => {
+ if (!ownsProgress(request.generation)) return;
+ releaseForProgress({
+ onPressedOutSnapshot: request.onPressedOutSnapshot,
+ onSettled: () => {
+ if (ownsProgress(request.generation)) request.onSettled();
+ },
+ physicalLifecycle: request.physicalLifecycle,
+ });
},
- [
- animateRelease,
- disabled,
- finalizeGestureDisposition,
- hasChildren,
- invokePressOutObserver,
- progress,
- requestNonProgressReleaseReconcile,
- scheduleProgressFallbackRelease,
- ]
+ [ownsProgress, releaseForProgress]
);
+ useLayoutEffect(() => {
+ activationRouterRef.current = dispatchOrdinaryActivation;
+ releaseRouterRef.current = routeProgressRelease;
+ busyRouterRef.current = isBusy;
+ }, [dispatchOrdinaryActivation, isBusy, routeProgressRelease]);
+
return {
activity,
+ handleAtomicLongPress,
+ handleAtomicPress,
handlePress,
handlePressIn,
handlePressOut,
diff --git a/src/useReducedMotion.ts b/src/useReducedMotion.ts
new file mode 100644
index 0000000..2b9a041
--- /dev/null
+++ b/src/useReducedMotion.ts
@@ -0,0 +1,36 @@
+import { useCallback, useEffect, useRef, useState } from 'react';
+import { AccessibilityInfo } from 'react-native';
+
+const useReducedMotion = () => {
+ const [reduceMotion, setReduceMotion] = useState(false);
+ const reduceMotionRef = useRef(false);
+ const updateReduceMotion = useCallback((enabled: boolean) => {
+ if (reduceMotionRef.current === enabled) return;
+ reduceMotionRef.current = enabled;
+ setReduceMotion(enabled);
+ }, []);
+
+ useEffect(() => {
+ let mounted = true;
+
+ AccessibilityInfo.isReduceMotionEnabled()
+ .then((enabled) => {
+ if (mounted) updateReduceMotion(enabled);
+ })
+ .catch(() => undefined);
+
+ const subscription = AccessibilityInfo.addEventListener(
+ 'reduceMotionChanged',
+ updateReduceMotion
+ );
+
+ return () => {
+ mounted = false;
+ subscription.remove();
+ };
+ }, [updateReduceMotion]);
+
+ return reduceMotion;
+};
+
+export default useReducedMotion;
diff --git a/src/useResolvedStyleTransition.ts b/src/useResolvedStyleTransition.ts
new file mode 100644
index 0000000..ea15483
--- /dev/null
+++ b/src/useResolvedStyleTransition.ts
@@ -0,0 +1,170 @@
+import { useEffect, useRef, useState } from 'react';
+import { Easing, type ColorValue } from 'react-native';
+import { interpolateColors } from './themed/colors';
+import { runTimedTransition } from './themed/transition';
+import type { AwesomeButtonAnimationCurve } from './types';
+
+type ResolvedStylePalette = {
+ activityColor: ColorValue;
+ backgroundActive: ColorValue;
+ backgroundColor: ColorValue;
+ backgroundDarker: ColorValue;
+ backgroundPlaceholder: ColorValue;
+ backgroundProgress: ColorValue;
+ backgroundShadow: ColorValue;
+ borderColor?: ColorValue;
+ borderRadius: number;
+ borderBottomLeftRadius?: number;
+ borderBottomRightRadius?: number;
+ borderTopLeftRadius?: number;
+ borderTopRightRadius?: number;
+ borderWidth: number;
+ contentGap?: number;
+ textColor: ColorValue;
+ textSize: number;
+};
+
+const interpolateColorValue = (
+ from: ColorValue | undefined,
+ to: ColorValue | undefined,
+ progress: number
+) => {
+ if (typeof from !== 'string' || typeof to !== 'string') return to;
+ return interpolateColors(from, to, progress) ?? to;
+};
+
+const interpolatePalette = (
+ from: ResolvedStylePalette,
+ to: ResolvedStylePalette,
+ progress: number
+): ResolvedStylePalette => {
+ const interpolateNumber = (
+ fromValue: number | undefined,
+ toValue: number | undefined
+ ) => {
+ if (fromValue === undefined || toValue === undefined) return toValue;
+ return fromValue + (toValue - fromValue) * progress;
+ };
+
+ return {
+ activityColor: interpolateColorValue(
+ from.activityColor,
+ to.activityColor,
+ progress
+ )!,
+ backgroundActive: interpolateColorValue(
+ from.backgroundActive,
+ to.backgroundActive,
+ progress
+ )!,
+ backgroundColor: interpolateColorValue(
+ from.backgroundColor,
+ to.backgroundColor,
+ progress
+ )!,
+ backgroundDarker: interpolateColorValue(
+ from.backgroundDarker,
+ to.backgroundDarker,
+ progress
+ )!,
+ backgroundPlaceholder: interpolateColorValue(
+ from.backgroundPlaceholder,
+ to.backgroundPlaceholder,
+ progress
+ )!,
+ backgroundProgress: interpolateColorValue(
+ from.backgroundProgress,
+ to.backgroundProgress,
+ progress
+ )!,
+ backgroundShadow: interpolateColorValue(
+ from.backgroundShadow,
+ to.backgroundShadow,
+ progress
+ )!,
+ borderColor: interpolateColorValue(
+ from.borderColor,
+ to.borderColor,
+ progress
+ ),
+ borderRadius: interpolateNumber(from.borderRadius, to.borderRadius)!,
+ borderBottomLeftRadius: interpolateNumber(
+ from.borderBottomLeftRadius,
+ to.borderBottomLeftRadius
+ ),
+ borderBottomRightRadius: interpolateNumber(
+ from.borderBottomRightRadius,
+ to.borderBottomRightRadius
+ ),
+ borderTopLeftRadius: interpolateNumber(
+ from.borderTopLeftRadius,
+ to.borderTopLeftRadius
+ ),
+ borderTopRightRadius: interpolateNumber(
+ from.borderTopRightRadius,
+ to.borderTopRightRadius
+ ),
+ borderWidth: interpolateNumber(from.borderWidth, to.borderWidth)!,
+ contentGap: interpolateNumber(from.contentGap, to.contentGap),
+ textColor: interpolateColorValue(from.textColor, to.textColor, progress)!,
+ textSize: interpolateNumber(from.textSize, to.textSize)!,
+ };
+};
+
+const palettesEqual = (
+ left: ResolvedStylePalette,
+ right: ResolvedStylePalette
+) =>
+ Object.keys(left).every(
+ (key) =>
+ left[key as keyof ResolvedStylePalette] ===
+ right[key as keyof ResolvedStylePalette]
+ );
+
+const useResolvedStyleTransition = ({
+ target,
+ duration,
+ curve,
+ reduceMotion,
+ skipAnimation,
+}: {
+ target: ResolvedStylePalette;
+ duration: number;
+ curve?: AwesomeButtonAnimationCurve;
+ reduceMotion: boolean;
+ skipAnimation: boolean;
+}) => {
+ const [displayed, setDisplayed] = useState(target);
+ const displayedRef = useRef(target);
+
+ useEffect(() => {
+ if (palettesEqual(displayedRef.current, target)) return undefined;
+ if (skipAnimation || reduceMotion || duration === 0) {
+ displayedRef.current = target;
+ setDisplayed(target);
+ return undefined;
+ }
+
+ const from = displayedRef.current;
+ const transition = runTimedTransition({
+ duration,
+ easing: curve ?? Easing.out(Easing.cubic),
+ onUpdate: (progress) => {
+ const next = interpolatePalette(from, target, progress);
+ displayedRef.current = next;
+ setDisplayed(next);
+ },
+ onComplete: () => {
+ displayedRef.current = target;
+ setDisplayed(target);
+ },
+ });
+
+ return transition.stop;
+ }, [curve, duration, reduceMotion, skipAnimation, target]);
+
+ return displayed;
+};
+
+export default useResolvedStyleTransition;
+export type { ResolvedStylePalette };
diff --git a/tsconfig.build.json b/tsconfig.build.json
index 7cf287a..1bd44d9 100644
--- a/tsconfig.build.json
+++ b/tsconfig.build.json
@@ -1,4 +1,12 @@
{
"extends": "./tsconfig",
- "exclude": ["demo", "example", "lib", "node_modules", "scripts"]
+ "compilerOptions": {
+ "rootDir": "."
+ },
+ "include": ["src/**/*.ts", "src/**/*.tsx"],
+ "exclude": [
+ "src/**/__fixtures__/**",
+ "src/**/__mocks__/**",
+ "src/**/__tests__/**"
+ ]
}
diff --git a/yarn.lock b/yarn.lock
index e3ba244..7ca3c92 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1,9227 +1,12472 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@ark/schema@0.56.0":
- version "0.56.0"
- resolved "https://registry.npmjs.org/@ark/schema/-/schema-0.56.0.tgz"
- integrity sha512-ECg3hox/6Z/nLajxXqNhgPtNdHWC9zNsDyskwO28WinoFEnWow4IsERNz9AnXRhTZJnYIlAJ4uGn3nlLk65vZA==
- dependencies:
- "@ark/util" "0.56.0"
-
-"@ark/util@0.56.0":
- version "0.56.0"
- resolved "https://registry.npmjs.org/@ark/util/-/util-0.56.0.tgz"
- integrity sha512-BghfRC8b9pNs3vBoDJhcta0/c1J1rsoS1+HgVUreMFPdhz/CRAKReAu57YEllNaSy98rWAdY1gE+gFup7OXpgA==
-
-"@arkweid/lefthook@^0.7.7":
- version "0.7.7"
- resolved "https://registry.npmjs.org/@arkweid/lefthook/-/lefthook-0.7.7.tgz"
- integrity sha512-Eq30OXKmjxIAIsTtbX2fcF3SNZIXS8yry1u8yty7PQFYRctx04rVlhOJCEB2UmfTh8T2vrOMC9IHHUvvo5zbaQ==
-
-"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.24.7", "@babel/code-frame@^7.28.6", "@babel/code-frame@^7.29.0":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz"
- integrity sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==
- dependencies:
- "@babel/helper-validator-identifier" "^7.28.5"
- js-tokens "^4.0.0"
- picocolors "^1.1.1"
-
-"@babel/compat-data@^7.28.6", "@babel/compat-data@^7.29.0":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz"
- integrity sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==
-
-"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.13.16", "@babel/core@^7.14.0", "@babel/core@^7.23.9", "@babel/core@^7.25.2", "@babel/core@^7.28.5":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz"
- integrity sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==
- dependencies:
- "@babel/code-frame" "^7.29.0"
- "@babel/generator" "^7.29.0"
- "@babel/helper-compilation-targets" "^7.28.6"
- "@babel/helper-module-transforms" "^7.28.6"
- "@babel/helpers" "^7.28.6"
- "@babel/parser" "^7.29.0"
- "@babel/template" "^7.28.6"
- "@babel/traverse" "^7.29.0"
- "@babel/types" "^7.29.0"
- "@jridgewell/remapping" "^2.3.5"
- convert-source-map "^2.0.0"
- debug "^4.1.0"
- gensync "^1.0.0-beta.2"
- json5 "^2.2.3"
- semver "^6.3.1"
-
-"@babel/eslint-parser@^7.18.2":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.28.6.tgz"
- integrity sha512-QGmsKi2PBO/MHSQk+AAgA9R6OHQr+VqnniFE0eMWZcVcfBZoA2dKn2hUsl3Csg/Plt9opRUWdY7//VXsrIlEiA==
- dependencies:
- "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1"
- eslint-visitor-keys "^2.1.0"
- semver "^6.3.1"
-
-"@babel/generator@^7.25.0", "@babel/generator@^7.29.0", "@babel/generator@^7.7.2":
- version "7.29.1"
- resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz"
- integrity sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==
- dependencies:
- "@babel/parser" "^7.29.0"
- "@babel/types" "^7.29.0"
- "@jridgewell/gen-mapping" "^0.3.12"
- "@jridgewell/trace-mapping" "^0.3.28"
- jsesc "^3.0.2"
-
-"@babel/helper-annotate-as-pure@^7.27.1", "@babel/helper-annotate-as-pure@^7.27.3":
- version "7.27.3"
- resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz"
- integrity sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==
- dependencies:
- "@babel/types" "^7.27.3"
-
-"@babel/helper-compilation-targets@^7.27.1", "@babel/helper-compilation-targets@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz"
- integrity sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==
- dependencies:
- "@babel/compat-data" "^7.28.6"
- "@babel/helper-validator-option" "^7.27.1"
- browserslist "^4.24.0"
- lru-cache "^5.1.1"
- semver "^6.3.1"
-
-"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.6.tgz"
- integrity sha512-dTOdvsjnG3xNT9Y0AUg1wAl38y+4Rl4sf9caSQZOXdNqVn+H+HbbJ4IyyHaIqNR6SW9oJpA/RuRjsjCw2IdIow==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.27.3"
- "@babel/helper-member-expression-to-functions" "^7.28.5"
- "@babel/helper-optimise-call-expression" "^7.27.1"
- "@babel/helper-replace-supers" "^7.28.6"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
- "@babel/traverse" "^7.28.6"
- semver "^6.3.1"
-
-"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.27.1", "@babel/helper-create-regexp-features-plugin@^7.28.5":
- version "7.28.5"
- resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.28.5.tgz"
- integrity sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.27.3"
- regexpu-core "^6.3.1"
- semver "^6.3.1"
-
-"@babel/helper-define-polyfill-provider@^0.6.5", "@babel/helper-define-polyfill-provider@^0.6.8":
- version "0.6.8"
- resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.8.tgz"
- integrity sha512-47UwBLPpQi1NoWzLuHNjRoHlYXMwIJoBf7MFou6viC/sIHWYygpvr0B6IAyh5sBdA2nr2LPIRww8lfaUVQINBA==
- dependencies:
- "@babel/helper-compilation-targets" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
- debug "^4.4.3"
- lodash.debounce "^4.0.8"
- resolve "^1.22.11"
-
-"@babel/helper-globals@^7.28.0":
- version "7.28.0"
- resolved "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz"
- integrity sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==
-
-"@babel/helper-member-expression-to-functions@^7.28.5":
- version "7.28.5"
- resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.28.5.tgz"
- integrity sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==
- dependencies:
- "@babel/traverse" "^7.28.5"
- "@babel/types" "^7.28.5"
-
-"@babel/helper-module-imports@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz"
- integrity sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==
- dependencies:
- "@babel/traverse" "^7.28.6"
- "@babel/types" "^7.28.6"
-
-"@babel/helper-module-transforms@^7.27.1", "@babel/helper-module-transforms@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz"
- integrity sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==
- dependencies:
- "@babel/helper-module-imports" "^7.28.6"
- "@babel/helper-validator-identifier" "^7.28.5"
- "@babel/traverse" "^7.28.6"
-
-"@babel/helper-optimise-call-expression@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz"
- integrity sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==
- dependencies:
- "@babel/types" "^7.27.1"
-
-"@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.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.27.1", "@babel/helper-plugin-utils@^7.28.6", "@babel/helper-plugin-utils@^7.8.0":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz"
- integrity sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==
-
-"@babel/helper-remap-async-to-generator@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz"
- integrity sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.27.1"
- "@babel/helper-wrap-function" "^7.27.1"
- "@babel/traverse" "^7.27.1"
-
-"@babel/helper-replace-supers@^7.27.1", "@babel/helper-replace-supers@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.28.6.tgz"
- integrity sha512-mq8e+laIk94/yFec3DxSjCRD2Z0TAjhVbEJY3UQrlwVo15Lmt7C2wAUbK4bjnTs4APkwsYLTahXRraQXhb1WCg==
- dependencies:
- "@babel/helper-member-expression-to-functions" "^7.28.5"
- "@babel/helper-optimise-call-expression" "^7.27.1"
- "@babel/traverse" "^7.28.6"
-
-"@babel/helper-skip-transparent-expression-wrappers@^7.20.0", "@babel/helper-skip-transparent-expression-wrappers@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz"
- integrity sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==
- dependencies:
- "@babel/traverse" "^7.27.1"
- "@babel/types" "^7.27.1"
-
-"@babel/helper-string-parser@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz"
- integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==
-
-"@babel/helper-validator-identifier@^7.28.5":
- version "7.28.5"
- resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz"
- integrity sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==
-
-"@babel/helper-validator-option@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz"
- integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==
-
-"@babel/helper-wrap-function@^7.27.1":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.28.6.tgz"
- integrity sha512-z+PwLziMNBeSQJonizz2AGnndLsP2DeGHIxDAn+wdHOGuo4Fo1x1HBPPXeE9TAOPHNNWQKCSlA2VZyYyyibDnQ==
- dependencies:
- "@babel/template" "^7.28.6"
- "@babel/traverse" "^7.28.6"
- "@babel/types" "^7.28.6"
-
-"@babel/helpers@^7.28.6":
- version "7.29.2"
- resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz"
- integrity sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==
- dependencies:
- "@babel/template" "^7.28.6"
- "@babel/types" "^7.29.0"
-
-"@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.25.3", "@babel/parser@^7.28.6", "@babel/parser@^7.29.0":
- version "7.29.2"
- resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz"
- integrity sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==
- dependencies:
- "@babel/types" "^7.29.0"
-
-"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.28.5":
- version "7.28.5"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.28.5.tgz"
- integrity sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/traverse" "^7.28.5"
-
-"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz"
- integrity sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz"
- integrity sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz"
- integrity sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
- "@babel/plugin-transform-optional-chaining" "^7.27.1"
-
-"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.28.6.tgz"
- integrity sha512-a0aBScVTlNaiUe35UtfxAN7A/tehvvG4/ByO6+46VPKTRSlfnAFsgKy0FUh+qAkQrDTmhDkT+IBOKlOoMUxQ0g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/traverse" "^7.28.6"
-
-"@babel/plugin-proposal-class-properties@^7.13.0":
- version "7.18.6"
- resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz"
- integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
-
-"@babel/plugin-proposal-export-default-from@^7.24.7":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.27.1.tgz"
- integrity sha512-hjlsMBl1aJc5lp8MoCDEZCiYzlgdRAShOjAfRw6X+GlpLpUPU7c3XNLsKFZbQk/1cRzBlJ7CXg3xJAJMrFa1Uw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8":
- version "7.18.6"
- resolved "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz"
- integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
-
-"@babel/plugin-proposal-optional-chaining@^7.13.12":
- version "7.21.0"
- resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz"
- integrity sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.20.2"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
-
-"@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2":
- version "7.21.0-placeholder-for-preset-env.2"
- resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz"
- integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==
-
-"@babel/plugin-syntax-async-generators@^7.8.4":
- version "7.8.4"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz"
- 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.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz"
- integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-class-properties@^7.12.13":
- version "7.12.13"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz"
- 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.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz"
- 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.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz"
- integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-export-default-from@^7.24.7":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.28.6.tgz"
- integrity sha512-Svlx1fjJFnNz0LZeUaybRukSxZI3KkpApUmIRzEdXC5k8ErTOz0OD0kNrICi5Vc3GlpP5ZCeRyRO+mfWTSz+iQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-syntax-flow@^7.12.1", "@babel/plugin-syntax-flow@^7.27.1":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.28.6.tgz"
- integrity sha512-D+OrJumc9McXNEBI/JmFnc/0uCM2/Y3PEBG3gfV3QIYkKv5pvnpzFrl1kYCrcHJP8nOeFB/SHi1IHz29pNGuew==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-syntax-import-assertions@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.28.6.tgz"
- integrity sha512-pSJUpFHdx9z5nqTSirOCMtYVP2wFgoWhP0p3g8ONK/4IHhLIBd0B9NYqAvIUAhq+OkhO4VM1tENCt0cjlsNShw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-syntax-import-attributes@^7.24.7", "@babel/plugin-syntax-import-attributes@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz"
- integrity sha512-jiLC0ma9XkQT3TKJ9uYvlakm66Pamywo+qwL+oL8HJOvc6TWdZXVfhqJr8CCzbSGUAbDOzlGHJC1U+vRfLQDvw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-syntax-import-meta@^7.10.4":
- version "7.10.4"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz"
- 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.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz"
- integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-jsx@^7.27.1", "@babel/plugin-syntax-jsx@^7.28.6", "@babel/plugin-syntax-jsx@^7.7.2":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.28.6.tgz"
- integrity sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-syntax-logical-assignment-operators@^7.10.4":
- version "7.10.4"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz"
- 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.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz"
- integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-numeric-separator@^7.10.4":
- version "7.10.4"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz"
- 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.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz"
- 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.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz"
- 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.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz"
- 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.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz"
- integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-top-level-await@^7.14.5":
- version "7.14.5"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz"
- integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-typescript@^7.28.6", "@babel/plugin-syntax-typescript@^7.7.2":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.28.6.tgz"
- integrity sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-syntax-unicode-sets-regex@^7.18.6":
- version "7.18.6"
- resolved "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz"
- integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
-
-"@babel/plugin-transform-arrow-functions@^7.24.7", "@babel/plugin-transform-arrow-functions@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz"
- integrity sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-async-generator-functions@^7.25.4", "@babel/plugin-transform-async-generator-functions@^7.29.0":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.29.0.tgz"
- integrity sha512-va0VdWro4zlBr2JsXC+ofCPB2iG12wPtVGTWFx2WLDOM3nYQZZIGP82qku2eW/JR83sD+k2k+CsNtyEbUqhU6w==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/helper-remap-async-to-generator" "^7.27.1"
- "@babel/traverse" "^7.29.0"
-
-"@babel/plugin-transform-async-to-generator@^7.24.7", "@babel/plugin-transform-async-to-generator@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.28.6.tgz"
- integrity sha512-ilTRcmbuXjsMmcZ3HASTe4caH5Tpo93PkTxF9oG2VZsSWsahydmcEHhix9Ik122RcTnZnUzPbmux4wh1swfv7g==
- dependencies:
- "@babel/helper-module-imports" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/helper-remap-async-to-generator" "^7.27.1"
-
-"@babel/plugin-transform-block-scoped-functions@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz"
- integrity sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-block-scoping@^7.25.0", "@babel/plugin-transform-block-scoping@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.6.tgz"
- integrity sha512-tt/7wOtBmwHPNMPu7ax4pdPz6shjFrmHDghvNC+FG9Qvj7D6mJcoRQIF5dy4njmxR941l6rgtvfSB2zX3VlUIw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-class-properties@^7.25.4", "@babel/plugin-transform-class-properties@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.28.6.tgz"
- integrity sha512-dY2wS3I2G7D697VHndN91TJr8/AAfXQNt5ynCTI/MpxMsSzHp+52uNivYT5wCPax3whc47DR8Ba7cmlQMg24bw==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-class-static-block@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.28.6.tgz"
- integrity sha512-rfQ++ghVwTWTqQ7w8qyDxL1XGihjBss4CmTgGRCTAC9RIbhVpyp4fOeZtta0Lbf+dTNIVJer6ych2ibHwkZqsQ==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-classes@^7.25.4", "@babel/plugin-transform-classes@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.6.tgz"
- integrity sha512-EF5KONAqC5zAqT783iMGuM2ZtmEBy+mJMOKl2BCvPZ2lVrwvXnB6o+OBWCS+CoeCCpVRF2sA2RBKUxvT8tQT5Q==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.27.3"
- "@babel/helper-compilation-targets" "^7.28.6"
- "@babel/helper-globals" "^7.28.0"
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/helper-replace-supers" "^7.28.6"
- "@babel/traverse" "^7.28.6"
-
-"@babel/plugin-transform-computed-properties@^7.24.7", "@babel/plugin-transform-computed-properties@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.28.6.tgz"
- integrity sha512-bcc3k0ijhHbc2lEfpFHgx7eYw9KNXqOerKWfzbxEHUGKnS3sz9C4CNL9OiFN1297bDNfUiSO7DaLzbvHQQQ1BQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/template" "^7.28.6"
-
-"@babel/plugin-transform-destructuring@^7.24.8", "@babel/plugin-transform-destructuring@^7.28.5":
- version "7.28.5"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.5.tgz"
- integrity sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/traverse" "^7.28.5"
-
-"@babel/plugin-transform-dotall-regex@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.28.6.tgz"
- integrity sha512-SljjowuNKB7q5Oayv4FoPzeB74g3QgLt8IVJw9ADvWy3QnUb/01aw8I4AVv8wYnPvQz2GDDZ/g3GhcNyDBI4Bg==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.28.5"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-duplicate-keys@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz"
- integrity sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.29.0":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.29.0.tgz"
- integrity sha512-zBPcW2lFGxdiD8PUnPwJjag2J9otbcLQzvbiOzDxpYXyCuYX9agOwMPGn1prVH0a4qzhCKu24rlH4c1f7yA8rw==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.28.5"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-dynamic-import@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz"
- integrity sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-explicit-resource-management@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.6.tgz"
- integrity sha512-Iao5Konzx2b6g7EPqTy40UZbcdXE126tTxVFr/nAIj+WItNxjKSYTEw3RC+A2/ZetmdJsgueL1KhaMCQHkLPIg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/plugin-transform-destructuring" "^7.28.5"
-
-"@babel/plugin-transform-exponentiation-operator@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.28.6.tgz"
- integrity sha512-WitabqiGjV/vJ0aPOLSFfNY1u9U3R7W36B03r5I2KoNix+a3sOhJ3pKFB3R5It9/UiK78NiO0KE9P21cMhlPkw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-export-namespace-from@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz"
- integrity sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-flow-strip-types@^7.25.2", "@babel/plugin-transform-flow-strip-types@^7.26.5", "@babel/plugin-transform-flow-strip-types@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.27.1.tgz"
- integrity sha512-G5eDKsu50udECw7DL2AcsysXiQyB7Nfg521t2OAJ4tbfTJ27doHLeF/vlI1NZGlLdbb/v+ibvtL1YBQqYOwJGg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/plugin-syntax-flow" "^7.27.1"
-
-"@babel/plugin-transform-for-of@^7.24.7", "@babel/plugin-transform-for-of@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz"
- integrity sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
-
-"@babel/plugin-transform-function-name@^7.25.1", "@babel/plugin-transform-function-name@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz"
- integrity sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==
- dependencies:
- "@babel/helper-compilation-targets" "^7.27.1"
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/traverse" "^7.27.1"
-
-"@babel/plugin-transform-json-strings@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.28.6.tgz"
- integrity sha512-Nr+hEN+0geQkzhbdgQVPoqr47lZbm+5fCUmO70722xJZd0Mvb59+33QLImGj6F+DkK3xgDi1YVysP8whD6FQAw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-literals@^7.25.2", "@babel/plugin-transform-literals@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz"
- integrity sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-logical-assignment-operators@^7.24.7", "@babel/plugin-transform-logical-assignment-operators@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.28.6.tgz"
- integrity sha512-+anKKair6gpi8VsM/95kmomGNMD0eLz1NQ8+Pfw5sAwWH9fGYXT50E55ZpV0pHUHWf6IUTWPM+f/7AAff+wr9A==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-member-expression-literals@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz"
- integrity sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-modules-amd@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz"
- integrity sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==
- dependencies:
- "@babel/helper-module-transforms" "^7.27.1"
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.24.8", "@babel/plugin-transform-modules-commonjs@^7.27.1", "@babel/plugin-transform-modules-commonjs@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.28.6.tgz"
- integrity sha512-jppVbf8IV9iWWwWTQIxJMAJCWBuuKx71475wHwYytrRGQ2CWiDvYlADQno3tcYpS/T2UUWFQp3nVtYfK/YBQrA==
- dependencies:
- "@babel/helper-module-transforms" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-modules-systemjs@^7.29.0":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.0.tgz"
- integrity sha512-PrujnVFbOdUpw4UHiVwKvKRLMMic8+eC0CuNlxjsyZUiBjhFdPsewdXCkveh2KqBA9/waD0W1b4hXSOBQJezpQ==
- dependencies:
- "@babel/helper-module-transforms" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/helper-validator-identifier" "^7.28.5"
- "@babel/traverse" "^7.29.0"
-
-"@babel/plugin-transform-modules-umd@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz"
- integrity sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==
- dependencies:
- "@babel/helper-module-transforms" "^7.27.1"
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-named-capturing-groups-regex@^7.24.7", "@babel/plugin-transform-named-capturing-groups-regex@^7.29.0":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.29.0.tgz"
- integrity sha512-1CZQA5KNAD6ZYQLPw7oi5ewtDNxH/2vuCh+6SmvgDfhumForvs8a1o9n0UrEoBD8HU4djO2yWngTQlXl1NDVEQ==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.28.5"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-new-target@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz"
- integrity sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-nullish-coalescing-operator@^7.24.7", "@babel/plugin-transform-nullish-coalescing-operator@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.28.6.tgz"
- integrity sha512-3wKbRgmzYbw24mDJXT7N+ADXw8BC/imU9yo9c9X9NKaLF1fW+e5H1U5QjMUBe4Qo4Ox/o++IyUkl1sVCLgevKg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-numeric-separator@^7.24.7", "@babel/plugin-transform-numeric-separator@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.28.6.tgz"
- integrity sha512-SJR8hPynj8outz+SlStQSwvziMN4+Bq99it4tMIf5/Caq+3iOc0JtKyse8puvyXkk3eFRIA5ID/XfunGgO5i6w==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-object-rest-spread@^7.24.7", "@babel/plugin-transform-object-rest-spread@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.6.tgz"
- integrity sha512-5rh+JR4JBC4pGkXLAcYdLHZjXudVxWMXbB6u6+E9lRL5TrGVbHt1TjxGbZ8CkmYw9zjkB7jutzOROArsqtncEA==
- dependencies:
- "@babel/helper-compilation-targets" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/plugin-transform-destructuring" "^7.28.5"
- "@babel/plugin-transform-parameters" "^7.27.7"
- "@babel/traverse" "^7.28.6"
-
-"@babel/plugin-transform-object-super@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz"
- integrity sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/helper-replace-supers" "^7.27.1"
-
-"@babel/plugin-transform-optional-catch-binding@^7.24.7", "@babel/plugin-transform-optional-catch-binding@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.28.6.tgz"
- integrity sha512-R8ja/Pyrv0OGAvAXQhSTmWyPJPml+0TMqXlO5w+AsMEiwb2fg3WkOvob7UxFSL3OIttFSGSRFKQsOhJ/X6HQdQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-optional-chaining@^7.24.8", "@babel/plugin-transform-optional-chaining@^7.27.1", "@babel/plugin-transform-optional-chaining@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.28.6.tgz"
- integrity sha512-A4zobikRGJTsX9uqVFdafzGkqD30t26ck2LmOzAuLL8b2x6k3TIqRiT2xVvA9fNmFeTX484VpsdgmKNA0bS23w==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
-
-"@babel/plugin-transform-parameters@^7.24.7", "@babel/plugin-transform-parameters@^7.27.7":
- version "7.27.7"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.7.tgz"
- integrity sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-private-methods@^7.24.7", "@babel/plugin-transform-private-methods@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.28.6.tgz"
- integrity sha512-piiuapX9CRv7+0st8lmuUlRSmX6mBcVeNQ1b4AYzJxfCMuBfB0vBXDiGSmm03pKJw1v6cZ8KSeM+oUnM6yAExg==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-private-property-in-object@^7.24.7", "@babel/plugin-transform-private-property-in-object@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.28.6.tgz"
- integrity sha512-b97jvNSOb5+ehyQmBpmhOCiUC5oVK4PMnpRvO7+ymFBoqYjeDHIU9jnrNUuwHOiL9RpGDoKBpSViarV+BU+eVA==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.27.3"
- "@babel/helper-create-class-features-plugin" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-property-literals@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz"
- integrity sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-react-display-name@^7.24.7", "@babel/plugin-transform-react-display-name@^7.28.0":
- version "7.28.0"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.28.0.tgz"
- integrity sha512-D6Eujc2zMxKjfa4Zxl4GHMsmhKKZ9VpcqIchJLvwTxad9zWIYulwYItBovpDOoNLISpcZSXoDJ5gaGbQUDqViA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-react-jsx-development@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.27.1.tgz"
- integrity sha512-ykDdF5yI4f1WrAolLqeF3hmYU12j9ntLQl/AOG1HAS21jxyg1Q0/J/tpREuYLfatGdGmXp/3yS0ZA76kOlVq9Q==
- dependencies:
- "@babel/plugin-transform-react-jsx" "^7.27.1"
-
-"@babel/plugin-transform-react-jsx-self@^7.24.7":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz"
- integrity sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-react-jsx-source@^7.24.7":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz"
- integrity sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-react-jsx@^7.25.2", "@babel/plugin-transform-react-jsx@^7.27.1":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.28.6.tgz"
- integrity sha512-61bxqhiRfAACulXSLd/GxqmAedUSrRZIu/cbaT18T1CetkTmtDN15it7i80ru4DVqRK1WMxQhXs+Lf9kajm5Ow==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.27.3"
- "@babel/helper-module-imports" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/plugin-syntax-jsx" "^7.28.6"
- "@babel/types" "^7.28.6"
-
-"@babel/plugin-transform-react-pure-annotations@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz"
- integrity sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.27.1"
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-regenerator@^7.24.7", "@babel/plugin-transform-regenerator@^7.29.0":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.29.0.tgz"
- integrity sha512-FijqlqMA7DmRdg/aINBSs04y8XNTYw/lr1gJ2WsmBnnaNw1iS43EPkJW+zK7z65auG3AWRFXWj+NcTQwYptUog==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-regexp-modifiers@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.28.6.tgz"
- integrity sha512-QGWAepm9qxpaIs7UM9FvUSnCGlb8Ua1RhyM4/veAxLwt3gMat/LSGrZixyuj4I6+Kn9iwvqCyPTtbdxanYoWYg==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.28.5"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-reserved-words@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz"
- integrity sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-runtime@^7.24.7":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.29.0.tgz"
- integrity sha512-jlaRT5dJtMaMCV6fAuLbsQMSwz/QkvaHOHOSXRitGGwSpR1blCY4KUKoyP2tYO8vJcqYe8cEj96cqSztv3uF9w==
- dependencies:
- "@babel/helper-module-imports" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
- babel-plugin-polyfill-corejs2 "^0.4.14"
- babel-plugin-polyfill-corejs3 "^0.13.0"
- babel-plugin-polyfill-regenerator "^0.6.5"
- semver "^6.3.1"
-
-"@babel/plugin-transform-shorthand-properties@^7.24.7", "@babel/plugin-transform-shorthand-properties@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz"
- integrity sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-spread@^7.24.7", "@babel/plugin-transform-spread@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.28.6.tgz"
- integrity sha512-9U4QObUC0FtJl05AsUcodau/RWDytrU6uKgkxu09mLR9HLDAtUMoPuuskm5huQsoktmsYpI+bGmq+iapDcriKA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
-
-"@babel/plugin-transform-sticky-regex@^7.24.7", "@babel/plugin-transform-sticky-regex@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz"
- integrity sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-strict-mode@^7.24.7":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-strict-mode/-/plugin-transform-strict-mode-7.27.1.tgz"
- integrity sha512-cdA1TyX9NfOaV8PILyNSrzJxXnjk4UeAgSwSLDCepfOg9AlxCg5al0KWsFh0ZJRzp6k5gwpSlJ4auWT+gx46ig==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-template-literals@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz"
- integrity sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-typeof-symbol@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz"
- integrity sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-typescript@^7.25.2", "@babel/plugin-transform-typescript@^7.28.5":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.6.tgz"
- integrity sha512-0YWL2RFxOqEm9Efk5PvreamxPME8OyY0wM5wh5lHjF+VtVhdneCWGzZeSqzOfiobVqQaNCd2z0tQvnI9DaPWPw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.27.3"
- "@babel/helper-create-class-features-plugin" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
- "@babel/plugin-syntax-typescript" "^7.28.6"
-
-"@babel/plugin-transform-unicode-escapes@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz"
- integrity sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-unicode-property-regex@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.28.6.tgz"
- integrity sha512-4Wlbdl/sIZjzi/8St0evF0gEZrgOswVO6aOzqxh1kDZOl9WmLrHq2HtGhnOJZmHZYKP8WZ1MDLCt5DAWwRo57A==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.28.5"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/plugin-transform-unicode-regex@^7.24.7", "@babel/plugin-transform-unicode-regex@^7.27.1":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz"
- integrity sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.27.1"
- "@babel/helper-plugin-utils" "^7.27.1"
-
-"@babel/plugin-transform-unicode-sets-regex@^7.28.6":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.28.6.tgz"
- integrity sha512-/wHc/paTUmsDYN7SZkpWxogTOBNnlx7nBQYfy6JJlCT7G3mVhltk3e++N7zV0XfgGsrqBxd4rJQt9H16I21Y1Q==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.28.5"
- "@babel/helper-plugin-utils" "^7.28.6"
-
-"@babel/preset-env@^7.25.2":
- version "7.29.2"
- resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.29.2.tgz"
- integrity sha512-DYD23veRYGvBFhcTY1iUvJnDNpuqNd/BzBwCvzOTKUnJjKg5kpUBh3/u9585Agdkgj+QuygG7jLfOPWMa2KVNw==
- dependencies:
- "@babel/compat-data" "^7.29.0"
- "@babel/helper-compilation-targets" "^7.28.6"
- "@babel/helper-plugin-utils" "^7.28.6"
- "@babel/helper-validator-option" "^7.27.1"
- "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.28.5"
- "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.27.1"
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.27.1"
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.27.1"
- "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.28.6"
- "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2"
- "@babel/plugin-syntax-import-assertions" "^7.28.6"
- "@babel/plugin-syntax-import-attributes" "^7.28.6"
- "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6"
- "@babel/plugin-transform-arrow-functions" "^7.27.1"
- "@babel/plugin-transform-async-generator-functions" "^7.29.0"
- "@babel/plugin-transform-async-to-generator" "^7.28.6"
- "@babel/plugin-transform-block-scoped-functions" "^7.27.1"
- "@babel/plugin-transform-block-scoping" "^7.28.6"
- "@babel/plugin-transform-class-properties" "^7.28.6"
- "@babel/plugin-transform-class-static-block" "^7.28.6"
- "@babel/plugin-transform-classes" "^7.28.6"
- "@babel/plugin-transform-computed-properties" "^7.28.6"
- "@babel/plugin-transform-destructuring" "^7.28.5"
- "@babel/plugin-transform-dotall-regex" "^7.28.6"
- "@babel/plugin-transform-duplicate-keys" "^7.27.1"
- "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.29.0"
- "@babel/plugin-transform-dynamic-import" "^7.27.1"
- "@babel/plugin-transform-explicit-resource-management" "^7.28.6"
- "@babel/plugin-transform-exponentiation-operator" "^7.28.6"
- "@babel/plugin-transform-export-namespace-from" "^7.27.1"
- "@babel/plugin-transform-for-of" "^7.27.1"
- "@babel/plugin-transform-function-name" "^7.27.1"
- "@babel/plugin-transform-json-strings" "^7.28.6"
- "@babel/plugin-transform-literals" "^7.27.1"
- "@babel/plugin-transform-logical-assignment-operators" "^7.28.6"
- "@babel/plugin-transform-member-expression-literals" "^7.27.1"
- "@babel/plugin-transform-modules-amd" "^7.27.1"
- "@babel/plugin-transform-modules-commonjs" "^7.28.6"
- "@babel/plugin-transform-modules-systemjs" "^7.29.0"
- "@babel/plugin-transform-modules-umd" "^7.27.1"
- "@babel/plugin-transform-named-capturing-groups-regex" "^7.29.0"
- "@babel/plugin-transform-new-target" "^7.27.1"
- "@babel/plugin-transform-nullish-coalescing-operator" "^7.28.6"
- "@babel/plugin-transform-numeric-separator" "^7.28.6"
- "@babel/plugin-transform-object-rest-spread" "^7.28.6"
- "@babel/plugin-transform-object-super" "^7.27.1"
- "@babel/plugin-transform-optional-catch-binding" "^7.28.6"
- "@babel/plugin-transform-optional-chaining" "^7.28.6"
- "@babel/plugin-transform-parameters" "^7.27.7"
- "@babel/plugin-transform-private-methods" "^7.28.6"
- "@babel/plugin-transform-private-property-in-object" "^7.28.6"
- "@babel/plugin-transform-property-literals" "^7.27.1"
- "@babel/plugin-transform-regenerator" "^7.29.0"
- "@babel/plugin-transform-regexp-modifiers" "^7.28.6"
- "@babel/plugin-transform-reserved-words" "^7.27.1"
- "@babel/plugin-transform-shorthand-properties" "^7.27.1"
- "@babel/plugin-transform-spread" "^7.28.6"
- "@babel/plugin-transform-sticky-regex" "^7.27.1"
- "@babel/plugin-transform-template-literals" "^7.27.1"
- "@babel/plugin-transform-typeof-symbol" "^7.27.1"
- "@babel/plugin-transform-unicode-escapes" "^7.27.1"
- "@babel/plugin-transform-unicode-property-regex" "^7.28.6"
- "@babel/plugin-transform-unicode-regex" "^7.27.1"
- "@babel/plugin-transform-unicode-sets-regex" "^7.28.6"
- "@babel/preset-modules" "0.1.6-no-external-plugins"
- babel-plugin-polyfill-corejs2 "^0.4.15"
- babel-plugin-polyfill-corejs3 "^0.14.0"
- babel-plugin-polyfill-regenerator "^0.6.6"
- core-js-compat "^3.48.0"
- semver "^6.3.1"
-
-"@babel/preset-flow@^7.13.13":
- version "7.27.1"
- resolved "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.27.1.tgz"
- integrity sha512-ez3a2it5Fn6P54W8QkbfIyyIbxlXvcxyWHHvno1Wg0Ej5eiJY5hBb8ExttoIOJJk7V2dZE6prP7iby5q2aQ0Lg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/helper-validator-option" "^7.27.1"
- "@babel/plugin-transform-flow-strip-types" "^7.27.1"
-
-"@babel/preset-modules@0.1.6-no-external-plugins":
- version "0.1.6-no-external-plugins"
- resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz"
- integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/types" "^7.4.4"
- esutils "^2.0.2"
-
-"@babel/preset-react@^7.24.7":
- version "7.28.5"
- resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.28.5.tgz"
- integrity sha512-Z3J8vhRq7CeLjdC58jLv4lnZ5RKFUJWqH5emvxmv9Hv3BD1T9R/Im713R4MTKwvFaV74ejZ3sM01LyEKk4ugNQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/helper-validator-option" "^7.27.1"
- "@babel/plugin-transform-react-display-name" "^7.28.0"
- "@babel/plugin-transform-react-jsx" "^7.27.1"
- "@babel/plugin-transform-react-jsx-development" "^7.27.1"
- "@babel/plugin-transform-react-pure-annotations" "^7.27.1"
-
-"@babel/preset-typescript@^7.13.0", "@babel/preset-typescript@^7.24.7":
- version "7.28.5"
- resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.28.5.tgz"
- integrity sha512-+bQy5WOI2V6LJZpPVxY+yp66XdZ2yifu0Mc1aP5CQKgjn4QM5IN2i5fAZ4xKop47pr8rpVhiAeu+nDQa12C8+g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.27.1"
- "@babel/helper-validator-option" "^7.27.1"
- "@babel/plugin-syntax-jsx" "^7.27.1"
- "@babel/plugin-transform-modules-commonjs" "^7.27.1"
- "@babel/plugin-transform-typescript" "^7.28.5"
-
-"@babel/register@^7.13.16":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/register/-/register-7.28.6.tgz"
- integrity sha512-pgcbbEl/dWQYb6L6Yew6F94rdwygfuv+vJ/tXfwIOYAfPB6TNWpXUMEtEq3YuTeHRdvMIhvz13bkT9CNaS+wqA==
- dependencies:
- clone-deep "^4.0.1"
- find-cache-dir "^2.0.0"
- make-dir "^2.1.0"
- pirates "^4.0.6"
- source-map-support "^0.5.16"
-
-"@babel/runtime@^7.25.0", "@babel/runtime@^7.28.4":
- version "7.29.2"
- resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz"
- integrity sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==
-
-"@babel/template@^7.25.0", "@babel/template@^7.28.6", "@babel/template@^7.3.3":
- version "7.28.6"
- resolved "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz"
- integrity sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==
- dependencies:
- "@babel/code-frame" "^7.28.6"
- "@babel/parser" "^7.28.6"
- "@babel/types" "^7.28.6"
-
-"@babel/traverse--for-generate-function-map@npm:@babel/traverse@^7.25.3":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz"
- integrity sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==
- dependencies:
- "@babel/code-frame" "^7.29.0"
- "@babel/generator" "^7.29.0"
- "@babel/helper-globals" "^7.28.0"
- "@babel/parser" "^7.29.0"
- "@babel/template" "^7.28.6"
- "@babel/types" "^7.29.0"
- debug "^4.3.1"
-
-"@babel/traverse@^7.25.3", "@babel/traverse@^7.27.1", "@babel/traverse@^7.28.5", "@babel/traverse@^7.28.6", "@babel/traverse@^7.29.0":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz"
- integrity sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==
- dependencies:
- "@babel/code-frame" "^7.29.0"
- "@babel/generator" "^7.29.0"
- "@babel/helper-globals" "^7.28.0"
- "@babel/parser" "^7.29.0"
- "@babel/template" "^7.28.6"
- "@babel/types" "^7.29.0"
- debug "^4.3.1"
-
-"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.25.2", "@babel/types@^7.27.1", "@babel/types@^7.27.3", "@babel/types@^7.28.2", "@babel/types@^7.28.5", "@babel/types@^7.28.6", "@babel/types@^7.29.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4":
- version "7.29.0"
- resolved "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz"
- integrity sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==
- dependencies:
- "@babel/helper-string-parser" "^7.27.1"
- "@babel/helper-validator-identifier" "^7.28.5"
-
-"@bcoe/v8-coverage@^0.2.3":
- version "0.2.3"
- resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz"
- integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
-
-"@commitlint/cli@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/cli/-/cli-17.8.1.tgz"
- integrity sha512-ay+WbzQesE0Rv4EQKfNbSMiJJ12KdKTDzIt0tcK4k11FdsWmtwP0Kp1NWMOUswfIWo6Eb7p7Ln721Nx9FLNBjg==
- dependencies:
- "@commitlint/format" "^17.8.1"
- "@commitlint/lint" "^17.8.1"
- "@commitlint/load" "^17.8.1"
- "@commitlint/read" "^17.8.1"
- "@commitlint/types" "^17.8.1"
- execa "^5.0.0"
- lodash.isfunction "^3.0.9"
- resolve-from "5.0.0"
- resolve-global "1.0.0"
- yargs "^17.0.0"
-
-"@commitlint/config-conventional@^17.0.2":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-17.8.1.tgz"
- integrity sha512-NxCOHx1kgneig3VLauWJcDWS40DVjg7nKOpBEEK9E5fjJpQqLCilcnKkIIjdBH98kEO1q3NpE5NSrZ2kl/QGJg==
- dependencies:
- conventional-changelog-conventionalcommits "^6.1.0"
-
-"@commitlint/config-validator@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-17.8.1.tgz"
- integrity sha512-UUgUC+sNiiMwkyiuIFR7JG2cfd9t/7MV8VB4TZ+q02ZFkHoduUS4tJGsCBWvBOGD9Btev6IecPMvlWUfJorkEA==
- dependencies:
- "@commitlint/types" "^17.8.1"
- ajv "^8.11.0"
-
-"@commitlint/ensure@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/ensure/-/ensure-17.8.1.tgz"
- integrity sha512-xjafwKxid8s1K23NFpL8JNo6JnY/ysetKo8kegVM7c8vs+kWLP8VrQq+NbhgVlmCojhEDbzQKp4eRXSjVOGsow==
- dependencies:
- "@commitlint/types" "^17.8.1"
- lodash.camelcase "^4.3.0"
- lodash.kebabcase "^4.1.1"
- lodash.snakecase "^4.1.1"
- lodash.startcase "^4.4.0"
- lodash.upperfirst "^4.3.1"
-
-"@commitlint/execute-rule@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-17.8.1.tgz"
- integrity sha512-JHVupQeSdNI6xzA9SqMF+p/JjrHTcrJdI02PwesQIDCIGUrv04hicJgCcws5nzaoZbROapPs0s6zeVHoxpMwFQ==
-
-"@commitlint/format@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/format/-/format-17.8.1.tgz"
- integrity sha512-f3oMTyZ84M9ht7fb93wbCKmWxO5/kKSbwuYvS867duVomoOsgrgljkGGIztmT/srZnaiGbaK8+Wf8Ik2tSr5eg==
- dependencies:
- "@commitlint/types" "^17.8.1"
- chalk "^4.1.0"
-
-"@commitlint/is-ignored@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-17.8.1.tgz"
- integrity sha512-UshMi4Ltb4ZlNn4F7WtSEugFDZmctzFpmbqvpyxD3la510J+PLcnyhf9chs7EryaRFJMdAKwsEKfNK0jL/QM4g==
- dependencies:
- "@commitlint/types" "^17.8.1"
- semver "7.5.4"
-
-"@commitlint/lint@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/lint/-/lint-17.8.1.tgz"
- integrity sha512-aQUlwIR1/VMv2D4GXSk7PfL5hIaFSfy6hSHV94O8Y27T5q+DlDEgd/cZ4KmVI+MWKzFfCTiTuWqjfRSfdRllCA==
- dependencies:
- "@commitlint/is-ignored" "^17.8.1"
- "@commitlint/parse" "^17.8.1"
- "@commitlint/rules" "^17.8.1"
- "@commitlint/types" "^17.8.1"
-
-"@commitlint/load@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/load/-/load-17.8.1.tgz"
- integrity sha512-iF4CL7KDFstP1kpVUkT8K2Wl17h2yx9VaR1ztTc8vzByWWcbO/WaKwxsnCOqow9tVAlzPfo1ywk9m2oJ9ucMqA==
- dependencies:
- "@commitlint/config-validator" "^17.8.1"
- "@commitlint/execute-rule" "^17.8.1"
- "@commitlint/resolve-extends" "^17.8.1"
- "@commitlint/types" "^17.8.1"
- "@types/node" "20.5.1"
- chalk "^4.1.0"
- cosmiconfig "^8.0.0"
- cosmiconfig-typescript-loader "^4.0.0"
- lodash.isplainobject "^4.0.6"
- lodash.merge "^4.6.2"
- lodash.uniq "^4.5.0"
- resolve-from "^5.0.0"
- ts-node "^10.8.1"
- typescript "^4.6.4 || ^5.2.2"
-
-"@commitlint/message@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/message/-/message-17.8.1.tgz"
- integrity sha512-6bYL1GUQsD6bLhTH3QQty8pVFoETfFQlMn2Nzmz3AOLqRVfNNtXBaSY0dhZ0dM6A2MEq4+2d7L/2LP8TjqGRkA==
-
-"@commitlint/parse@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/parse/-/parse-17.8.1.tgz"
- integrity sha512-/wLUickTo0rNpQgWwLPavTm7WbwkZoBy3X8PpkUmlSmQJyWQTj0m6bDjiykMaDt41qcUbfeFfaCvXfiR4EGnfw==
- dependencies:
- "@commitlint/types" "^17.8.1"
- conventional-changelog-angular "^6.0.0"
- conventional-commits-parser "^4.0.0"
-
-"@commitlint/read@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/read/-/read-17.8.1.tgz"
- integrity sha512-Fd55Oaz9irzBESPCdMd8vWWgxsW3OWR99wOntBDHgf9h7Y6OOHjWEdS9Xzen1GFndqgyoaFplQS5y7KZe0kO2w==
- dependencies:
- "@commitlint/top-level" "^17.8.1"
- "@commitlint/types" "^17.8.1"
- fs-extra "^11.0.0"
- git-raw-commits "^2.0.11"
- minimist "^1.2.6"
-
-"@commitlint/resolve-extends@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-17.8.1.tgz"
- integrity sha512-W/ryRoQ0TSVXqJrx5SGkaYuAaE/BUontL1j1HsKckvM6e5ZaG0M9126zcwL6peKSuIetJi7E87PRQF8O86EW0Q==
- dependencies:
- "@commitlint/config-validator" "^17.8.1"
- "@commitlint/types" "^17.8.1"
- import-fresh "^3.0.0"
- lodash.mergewith "^4.6.2"
- resolve-from "^5.0.0"
- resolve-global "^1.0.0"
-
-"@commitlint/rules@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/rules/-/rules-17.8.1.tgz"
- integrity sha512-2b7OdVbN7MTAt9U0vKOYKCDsOvESVXxQmrvuVUZ0rGFMCrCPJWWP1GJ7f0lAypbDAhaGb8zqtdOr47192LBrIA==
- dependencies:
- "@commitlint/ensure" "^17.8.1"
- "@commitlint/message" "^17.8.1"
- "@commitlint/to-lines" "^17.8.1"
- "@commitlint/types" "^17.8.1"
- execa "^5.0.0"
-
-"@commitlint/to-lines@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-17.8.1.tgz"
- integrity sha512-LE0jb8CuR/mj6xJyrIk8VLz03OEzXFgLdivBytoooKO5xLt5yalc8Ma5guTWobw998sbR3ogDd+2jed03CFmJA==
-
-"@commitlint/top-level@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/top-level/-/top-level-17.8.1.tgz"
- integrity sha512-l6+Z6rrNf5p333SHfEte6r+WkOxGlWK4bLuZKbtf/2TXRN+qhrvn1XE63VhD8Oe9oIHQ7F7W1nG2k/TJFhx2yA==
- dependencies:
- find-up "^5.0.0"
-
-"@commitlint/types@^17.8.1":
- version "17.8.1"
- resolved "https://registry.npmjs.org/@commitlint/types/-/types-17.8.1.tgz"
- integrity sha512-PXDQXkAmiMEG162Bqdh9ChML/GJZo6vU+7F03ALKDK8zYc6SuAr47LjG7hGYRqUOz+WK0dU7bQ0xzuqFMdxzeQ==
- dependencies:
- chalk "^4.1.0"
-
-"@cspotcode/source-map-support@^0.8.0":
- version "0.8.1"
- resolved "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz"
- integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==
- dependencies:
- "@jridgewell/trace-mapping" "0.3.9"
-
-"@eslint-community/eslint-utils@^4.2.0":
- version "4.9.1"
- resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz"
- integrity sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==
- dependencies:
- eslint-visitor-keys "^3.4.3"
-
-"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1":
- version "4.12.2"
- resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz"
- integrity sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==
-
-"@eslint/eslintrc@^2.1.4":
- version "2.1.4"
- resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz"
- integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==
- dependencies:
- ajv "^6.12.4"
- debug "^4.3.2"
- espree "^9.6.0"
- globals "^13.19.0"
- ignore "^5.2.0"
- import-fresh "^3.2.1"
- js-yaml "^4.1.0"
- minimatch "^3.1.2"
- strip-json-comments "^3.1.1"
-
-"@eslint/js@8.57.1":
- version "8.57.1"
- resolved "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz"
- integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==
-
-"@humanwhocodes/config-array@^0.13.0":
- version "0.13.0"
- resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz"
- integrity sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==
- dependencies:
- "@humanwhocodes/object-schema" "^2.0.3"
- debug "^4.3.1"
- minimatch "^3.0.5"
-
-"@humanwhocodes/module-importer@^1.0.1":
- version "1.0.1"
- resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz"
- integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
-
-"@humanwhocodes/object-schema@^2.0.3":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz"
- integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==
-
-"@hutson/parse-repository-url@^3.0.0":
- version "3.0.2"
- resolved "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz"
- integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==
-
-"@iarna/toml@2.2.5":
- version "2.2.5"
- resolved "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz"
- integrity sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==
-
-"@isaacs/ttlcache@^1.4.1":
- version "1.4.1"
- resolved "https://registry.npmjs.org/@isaacs/ttlcache/-/ttlcache-1.4.1.tgz"
- integrity sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA==
-
-"@istanbuljs/load-nyc-config@^1.0.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz"
- 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", "@istanbuljs/schema@^0.1.3":
- version "0.1.6"
- resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.6.tgz"
- integrity sha512-+Sg6GCR/wy1oSmQDFq4LQDAhm3ETKnorxN+y5nbLULOR3P0c14f2Wurzj3/xqPXtasLFfHd5iRFQ7AJt4KH2cw==
-
-"@jest/console@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz"
- integrity sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==
- dependencies:
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- jest-message-util "^29.7.0"
- jest-util "^29.7.0"
- slash "^3.0.0"
-
-"@jest/core@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz"
- integrity sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==
- dependencies:
- "@jest/console" "^29.7.0"
- "@jest/reporters" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- ansi-escapes "^4.2.1"
- chalk "^4.0.0"
- ci-info "^3.2.0"
- exit "^0.1.2"
- graceful-fs "^4.2.9"
- jest-changed-files "^29.7.0"
- jest-config "^29.7.0"
- jest-haste-map "^29.7.0"
- jest-message-util "^29.7.0"
- jest-regex-util "^29.6.3"
- jest-resolve "^29.7.0"
- jest-resolve-dependencies "^29.7.0"
- jest-runner "^29.7.0"
- jest-runtime "^29.7.0"
- jest-snapshot "^29.7.0"
- jest-util "^29.7.0"
- jest-validate "^29.7.0"
- jest-watcher "^29.7.0"
- micromatch "^4.0.4"
- pretty-format "^29.7.0"
- slash "^3.0.0"
- strip-ansi "^6.0.0"
-
-"@jest/create-cache-key-function@^29.6.3":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz"
- integrity sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==
- dependencies:
- "@jest/types" "^29.6.3"
-
-"@jest/environment@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz"
- integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==
- dependencies:
- "@jest/fake-timers" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- jest-mock "^29.7.0"
-
-"@jest/expect-utils@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz"
- integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==
- dependencies:
- jest-get-type "^29.6.3"
-
-"@jest/expect@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz"
- integrity sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==
- dependencies:
- expect "^29.7.0"
- jest-snapshot "^29.7.0"
-
-"@jest/fake-timers@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz"
- integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==
- dependencies:
- "@jest/types" "^29.6.3"
- "@sinonjs/fake-timers" "^10.0.2"
- "@types/node" "*"
- jest-message-util "^29.7.0"
- jest-mock "^29.7.0"
- jest-util "^29.7.0"
-
-"@jest/globals@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz"
- integrity sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==
- dependencies:
- "@jest/environment" "^29.7.0"
- "@jest/expect" "^29.7.0"
- "@jest/types" "^29.6.3"
- jest-mock "^29.7.0"
-
-"@jest/reporters@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz"
- integrity sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==
- dependencies:
- "@bcoe/v8-coverage" "^0.2.3"
- "@jest/console" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@jridgewell/trace-mapping" "^0.3.18"
- "@types/node" "*"
- chalk "^4.0.0"
- collect-v8-coverage "^1.0.0"
- exit "^0.1.2"
- glob "^7.1.3"
- graceful-fs "^4.2.9"
- istanbul-lib-coverage "^3.0.0"
- istanbul-lib-instrument "^6.0.0"
- istanbul-lib-report "^3.0.0"
- istanbul-lib-source-maps "^4.0.0"
- istanbul-reports "^3.1.3"
- jest-message-util "^29.7.0"
- jest-util "^29.7.0"
- jest-worker "^29.7.0"
- slash "^3.0.0"
- string-length "^4.0.1"
- strip-ansi "^6.0.0"
- v8-to-istanbul "^9.0.1"
-
-"@jest/schemas@^29.6.3":
- version "29.6.3"
- resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz"
- integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==
- dependencies:
- "@sinclair/typebox" "^0.27.8"
-
-"@jest/source-map@^29.6.3":
- version "29.6.3"
- resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz"
- integrity sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==
- dependencies:
- "@jridgewell/trace-mapping" "^0.3.18"
- callsites "^3.0.0"
- graceful-fs "^4.2.9"
-
-"@jest/test-result@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz"
- integrity sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==
- dependencies:
- "@jest/console" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/istanbul-lib-coverage" "^2.0.0"
- collect-v8-coverage "^1.0.0"
-
-"@jest/test-sequencer@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz"
- integrity sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==
- dependencies:
- "@jest/test-result" "^29.7.0"
- graceful-fs "^4.2.9"
- jest-haste-map "^29.7.0"
- slash "^3.0.0"
-
-"@jest/transform@^29.7.0":
- version "29.7.0"
- resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz"
- integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==
- dependencies:
- "@babel/core" "^7.11.6"
- "@jest/types" "^29.6.3"
- "@jridgewell/trace-mapping" "^0.3.18"
- babel-plugin-istanbul "^6.1.1"
- chalk "^4.0.0"
- convert-source-map "^2.0.0"
- fast-json-stable-stringify "^2.1.0"
- graceful-fs "^4.2.9"
- jest-haste-map "^29.7.0"
- jest-regex-util "^29.6.3"
- jest-util "^29.7.0"
- micromatch "^4.0.4"
- pirates "^4.0.4"
- slash "^3.0.0"
- write-file-atomic "^4.0.2"
-
-"@jest/types@^29.6.3":
- version "29.6.3"
- resolved "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz"
- integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==
- dependencies:
- "@jest/schemas" "^29.6.3"
- "@types/istanbul-lib-coverage" "^2.0.0"
- "@types/istanbul-reports" "^3.0.0"
- "@types/node" "*"
- "@types/yargs" "^17.0.8"
- chalk "^4.0.0"
-
-"@jridgewell/gen-mapping@^0.3.12", "@jridgewell/gen-mapping@^0.3.5":
- version "0.3.13"
- resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz"
- integrity sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==
- dependencies:
- "@jridgewell/sourcemap-codec" "^1.5.0"
- "@jridgewell/trace-mapping" "^0.3.24"
-
-"@jridgewell/remapping@^2.3.5":
- version "2.3.5"
- resolved "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz"
- integrity sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==
- dependencies:
- "@jridgewell/gen-mapping" "^0.3.5"
- "@jridgewell/trace-mapping" "^0.3.24"
-
-"@jridgewell/resolve-uri@^3.0.3", "@jridgewell/resolve-uri@^3.1.0":
- version "3.1.2"
- resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz"
- integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==
-
-"@jridgewell/source-map@^0.3.3":
- version "0.3.11"
- resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz"
- integrity sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==
- dependencies:
- "@jridgewell/gen-mapping" "^0.3.5"
- "@jridgewell/trace-mapping" "^0.3.25"
-
-"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0":
- version "1.5.5"
- resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz"
- integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==
-
-"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.28":
- version "0.3.31"
- resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz"
- integrity sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==
- dependencies:
- "@jridgewell/resolve-uri" "^3.1.0"
- "@jridgewell/sourcemap-codec" "^1.4.14"
-
-"@jridgewell/trace-mapping@0.3.9":
- version "0.3.9"
- resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz"
- integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
- dependencies:
- "@jridgewell/resolve-uri" "^3.0.3"
- "@jridgewell/sourcemap-codec" "^1.4.10"
-
-"@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1":
- version "5.1.1-v1"
- resolved "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz"
- integrity sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==
- dependencies:
- eslint-scope "5.1.1"
-
-"@nodelib/fs.scandir@2.1.5":
- version "2.1.5"
- resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz"
- integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
- dependencies:
- "@nodelib/fs.stat" "2.0.5"
- run-parallel "^1.1.9"
-
-"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5":
- version "2.0.5"
- resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz"
- integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
-
-"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8":
- version "1.2.8"
- resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz"
- integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
- dependencies:
- "@nodelib/fs.scandir" "2.1.5"
- fastq "^1.6.0"
-
-"@octokit/auth-token@^3.0.0":
- version "3.0.4"
- resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.4.tgz"
- integrity sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ==
-
-"@octokit/core@^4.2.1":
- version "4.2.4"
- resolved "https://registry.npmjs.org/@octokit/core/-/core-4.2.4.tgz"
- integrity sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==
- dependencies:
- "@octokit/auth-token" "^3.0.0"
- "@octokit/graphql" "^5.0.0"
- "@octokit/request" "^6.0.0"
- "@octokit/request-error" "^3.0.0"
- "@octokit/types" "^9.0.0"
- before-after-hook "^2.2.0"
- universal-user-agent "^6.0.0"
-
-"@octokit/endpoint@^7.0.0":
- version "7.0.6"
- resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.6.tgz"
- integrity sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==
- dependencies:
- "@octokit/types" "^9.0.0"
- is-plain-object "^5.0.0"
- universal-user-agent "^6.0.0"
-
-"@octokit/graphql@^5.0.0":
- version "5.0.6"
- resolved "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.6.tgz"
- integrity sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==
- dependencies:
- "@octokit/request" "^6.0.0"
- "@octokit/types" "^9.0.0"
- universal-user-agent "^6.0.0"
-
-"@octokit/openapi-types@^18.0.0":
- version "18.1.1"
- resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.1.1.tgz"
- integrity sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw==
-
-"@octokit/plugin-paginate-rest@^6.1.2":
- version "6.1.2"
- resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.1.2.tgz"
- integrity sha512-qhrmtQeHU/IivxucOV1bbI/xZyC/iOBhclokv7Sut5vnejAIAEXVcGQeRpQlU39E0WwK9lNvJHphHri/DB6lbQ==
- dependencies:
- "@octokit/tsconfig" "^1.0.2"
- "@octokit/types" "^9.2.3"
-
-"@octokit/plugin-request-log@^1.0.4":
- version "1.0.4"
- resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz"
- integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==
-
-"@octokit/plugin-rest-endpoint-methods@^7.1.2":
- version "7.2.3"
- resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.2.3.tgz"
- integrity sha512-I5Gml6kTAkzVlN7KCtjOM+Ruwe/rQppp0QU372K1GP7kNOYEKe8Xn5BW4sE62JAHdwpq95OQK/qGNyKQMUzVgA==
- dependencies:
- "@octokit/types" "^10.0.0"
-
-"@octokit/request-error@^3.0.0":
- version "3.0.3"
- resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz"
- integrity sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==
- dependencies:
- "@octokit/types" "^9.0.0"
- deprecation "^2.0.0"
- once "^1.4.0"
-
-"@octokit/request@^6.0.0":
- version "6.2.8"
- resolved "https://registry.npmjs.org/@octokit/request/-/request-6.2.8.tgz"
- integrity sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==
- dependencies:
- "@octokit/endpoint" "^7.0.0"
- "@octokit/request-error" "^3.0.0"
- "@octokit/types" "^9.0.0"
- is-plain-object "^5.0.0"
- node-fetch "^2.6.7"
- universal-user-agent "^6.0.0"
-
-"@octokit/rest@19.0.11":
- version "19.0.11"
- resolved "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.11.tgz"
- integrity sha512-m2a9VhaP5/tUw8FwfnW2ICXlXpLPIqxtg3XcAiGMLj/Xhw3RSBfZ8le/466ktO1Gcjr8oXudGnHhxV1TXJgFxw==
- dependencies:
- "@octokit/core" "^4.2.1"
- "@octokit/plugin-paginate-rest" "^6.1.2"
- "@octokit/plugin-request-log" "^1.0.4"
- "@octokit/plugin-rest-endpoint-methods" "^7.1.2"
-
-"@octokit/tsconfig@^1.0.2":
- version "1.0.2"
- resolved "https://registry.npmjs.org/@octokit/tsconfig/-/tsconfig-1.0.2.tgz"
- integrity sha512-I0vDR0rdtP8p2lGMzvsJzbhdOWy405HcGovrspJ8RRibHnyRgggUSNO5AIox5LmqiwmatHKYsvj6VGFHkqS7lA==
-
-"@octokit/types@^10.0.0":
- version "10.0.0"
- resolved "https://registry.npmjs.org/@octokit/types/-/types-10.0.0.tgz"
- integrity sha512-Vm8IddVmhCgU1fxC1eyinpwqzXPEYu0NrYzD3YZjlGjyftdLBTeqNblRC0jmJmgxbJIsQlyogVeGnrNaaMVzIg==
- dependencies:
- "@octokit/openapi-types" "^18.0.0"
-
-"@octokit/types@^9.0.0", "@octokit/types@^9.2.3":
- version "9.3.2"
- resolved "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz"
- integrity sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==
- dependencies:
- "@octokit/openapi-types" "^18.0.0"
-
-"@pnpm/config.env-replace@^1.1.0":
- version "1.1.0"
- resolved "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz"
- integrity sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==
-
-"@pnpm/network.ca-file@^1.0.1":
- version "1.0.2"
- resolved "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz"
- integrity sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==
- dependencies:
- graceful-fs "4.2.10"
-
-"@pnpm/npm-conf@^3.0.2":
- version "3.0.2"
- resolved "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-3.0.2.tgz"
- integrity sha512-h104Kh26rR8tm+a3Qkc5S4VLYint3FE48as7+/5oCEcKR2idC/pF1G6AhIXKI+eHPJa/3J9i5z0Al47IeGHPkA==
- dependencies:
- "@pnpm/config.env-replace" "^1.1.0"
- "@pnpm/network.ca-file" "^1.0.1"
- config-chain "^1.1.11"
-
-"@rcaferati/wac@1.2.0":
- version "1.2.0"
- resolved "https://registry.npmjs.org/@rcaferati/wac/-/wac-1.2.0.tgz"
- integrity sha512-JHhiFVmWQQl9/x+kPGbIFuLM8KzERlWTSF9pDRwlodabTGlGmvb1dJnHpj/EczeQmK04KWBot0LdMG1fc+lAGg==
-
-"@react-native-community/eslint-config@^3.0.2":
- version "3.2.0"
- resolved "https://registry.npmjs.org/@react-native-community/eslint-config/-/eslint-config-3.2.0.tgz"
- integrity sha512-ZjGvoeiBtCbd506hQqwjKmkWPgynGUoJspG8/MuV/EfKnkjCtBmeJvq2n+sWbWEvL9LWXDp2GJmPzmvU5RSvKQ==
- dependencies:
- "@babel/core" "^7.14.0"
- "@babel/eslint-parser" "^7.18.2"
- "@react-native-community/eslint-plugin" "^1.1.0"
- "@typescript-eslint/eslint-plugin" "^5.30.5"
- "@typescript-eslint/parser" "^5.30.5"
- eslint-config-prettier "^8.5.0"
- eslint-plugin-eslint-comments "^3.2.0"
- eslint-plugin-ft-flow "^2.0.1"
- eslint-plugin-jest "^26.5.3"
- eslint-plugin-prettier "^4.2.1"
- eslint-plugin-react "^7.30.1"
- eslint-plugin-react-hooks "^4.6.0"
- eslint-plugin-react-native "^4.0.0"
-
-"@react-native-community/eslint-plugin@^1.1.0":
- version "1.3.0"
- resolved "https://registry.npmjs.org/@react-native-community/eslint-plugin/-/eslint-plugin-1.3.0.tgz"
- integrity sha512-+zDZ20NUnSWghj7Ku5aFphMzuM9JulqCW+aPXT6IfIXFbb8tzYTTOSeRFOtuekJ99ibW2fUCSsjuKNlwDIbHFg==
-
-"@react-native/assets-registry@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.76.0.tgz"
- integrity sha512-U8KLV+PC/cRIiDpb1VbeGuEfKq2riZZtNVLp1UOyKWfPbWWu8j6Fr95w7j+nglp41z70iBeF2OmCiVnRvtNklA==
-
-"@react-native/babel-plugin-codegen@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.76.0.tgz"
- integrity sha512-HOi45pqlZnCTeR4jJ/zK0FB12r08CI9O70uBjVUqmzvHIrWmL5FaEFp6BPVFOjjXtUsl3JZ2Mle7WpsAP2PQBA==
- dependencies:
- "@react-native/codegen" "0.76.0"
-
-"@react-native/babel-preset@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/babel-preset/-/babel-preset-0.76.0.tgz"
- integrity sha512-HgQt4MyuWLcnrIglXn7GNPPVwtzZ4ffX+SUisdhmPtJCHuP8AOU3HsgOKLhqVfEGWTBlE4kbWoTmmLU87IJaOw==
- dependencies:
- "@babel/core" "^7.25.2"
- "@babel/plugin-proposal-export-default-from" "^7.24.7"
- "@babel/plugin-syntax-dynamic-import" "^7.8.3"
- "@babel/plugin-syntax-export-default-from" "^7.24.7"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
- "@babel/plugin-transform-arrow-functions" "^7.24.7"
- "@babel/plugin-transform-async-generator-functions" "^7.25.4"
- "@babel/plugin-transform-async-to-generator" "^7.24.7"
- "@babel/plugin-transform-block-scoping" "^7.25.0"
- "@babel/plugin-transform-class-properties" "^7.25.4"
- "@babel/plugin-transform-classes" "^7.25.4"
- "@babel/plugin-transform-computed-properties" "^7.24.7"
- "@babel/plugin-transform-destructuring" "^7.24.8"
- "@babel/plugin-transform-flow-strip-types" "^7.25.2"
- "@babel/plugin-transform-for-of" "^7.24.7"
- "@babel/plugin-transform-function-name" "^7.25.1"
- "@babel/plugin-transform-literals" "^7.25.2"
- "@babel/plugin-transform-logical-assignment-operators" "^7.24.7"
- "@babel/plugin-transform-modules-commonjs" "^7.24.8"
- "@babel/plugin-transform-named-capturing-groups-regex" "^7.24.7"
- "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.7"
- "@babel/plugin-transform-numeric-separator" "^7.24.7"
- "@babel/plugin-transform-object-rest-spread" "^7.24.7"
- "@babel/plugin-transform-optional-catch-binding" "^7.24.7"
- "@babel/plugin-transform-optional-chaining" "^7.24.8"
- "@babel/plugin-transform-parameters" "^7.24.7"
- "@babel/plugin-transform-private-methods" "^7.24.7"
- "@babel/plugin-transform-private-property-in-object" "^7.24.7"
- "@babel/plugin-transform-react-display-name" "^7.24.7"
- "@babel/plugin-transform-react-jsx" "^7.25.2"
- "@babel/plugin-transform-react-jsx-self" "^7.24.7"
- "@babel/plugin-transform-react-jsx-source" "^7.24.7"
- "@babel/plugin-transform-regenerator" "^7.24.7"
- "@babel/plugin-transform-runtime" "^7.24.7"
- "@babel/plugin-transform-shorthand-properties" "^7.24.7"
- "@babel/plugin-transform-spread" "^7.24.7"
- "@babel/plugin-transform-sticky-regex" "^7.24.7"
- "@babel/plugin-transform-typescript" "^7.25.2"
- "@babel/plugin-transform-unicode-regex" "^7.24.7"
- "@babel/template" "^7.25.0"
- "@react-native/babel-plugin-codegen" "0.76.0"
- babel-plugin-syntax-hermes-parser "^0.23.1"
- babel-plugin-transform-flow-enums "^0.0.2"
- react-refresh "^0.14.0"
-
-"@react-native/codegen@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.76.0.tgz"
- integrity sha512-x0zzK1rb7ZSIAeHRcRSjRo+VtLROjln1IKnQSPLEZEdyQfWNXqgiMk59E5hW7KE6I05upqfbf85PRAb5WndXdw==
- dependencies:
- "@babel/parser" "^7.25.3"
- glob "^7.1.1"
- hermes-parser "0.23.1"
- invariant "^2.2.4"
- jscodeshift "^0.14.0"
- mkdirp "^0.5.1"
- nullthrows "^1.1.1"
- yargs "^17.6.2"
-
-"@react-native/community-cli-plugin@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.76.0.tgz"
- integrity sha512-JFU5kmo+lUf5vOsieJ/dGS71Z2+qV3leXbKW6p8cn5aVfupVmtz/uYcFVdGzEGIGJ3juorYOZjpG8Qz91FrUZw==
- dependencies:
- "@react-native/dev-middleware" "0.76.0"
- "@react-native/metro-babel-transformer" "0.76.0"
- chalk "^4.0.0"
- execa "^5.1.1"
- invariant "^2.2.4"
- metro "^0.81.0"
- metro-config "^0.81.0"
- metro-core "^0.81.0"
- node-fetch "^2.2.0"
- readline "^1.3.0"
-
-"@react-native/debugger-frontend@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.76.0.tgz"
- integrity sha512-v4J22ZN1/7BQYhYvnZYi2pzd87MmTCEnxtTiktaUOhmx3YSF47LGo1Q2UfUE5YOzoRftiJTXDKvzDbI/hqAzgg==
-
-"@react-native/dev-middleware@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.76.0.tgz"
- integrity sha512-XvSnCDwCghWCVNtGpoF30xgA1EzxvlGsEyhJCUe0uLMDaaVxr/ZkgD3nZ+/l4cEm1qlrlcAZoGctnUgrzHiTaA==
- dependencies:
- "@isaacs/ttlcache" "^1.4.1"
- "@react-native/debugger-frontend" "0.76.0"
- chrome-launcher "^0.15.2"
- chromium-edge-launcher "^0.2.0"
- connect "^3.6.5"
- debug "^2.2.0"
- nullthrows "^1.1.1"
- open "^7.0.3"
- selfsigned "^2.4.1"
- serve-static "^1.13.1"
- ws "^6.2.3"
-
-"@react-native/gradle-plugin@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.76.0.tgz"
- integrity sha512-MhsAahV/Ju0Md1x79ljaDsNzzFY02TsDqxSfOS8vc4trZuM0imFf7VEBitOydNDTf9NqzAqJ9p8j7OSuxUEvLg==
-
-"@react-native/js-polyfills@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.76.0.tgz"
- integrity sha512-0UzEqvg85Bn0BpgNG80wzbiWvNypwdl64sbRs/sEvIDjzgq/tM+u3KoneSD5tP72BCydAqXFfepff3FZgImfbA==
-
-"@react-native/metro-babel-transformer@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.76.0.tgz"
- integrity sha512-aq0MrjaOxDitSqQbttBcOt+5tjemCabhEX2gGthy8cNeZokBa2raoHQInDo9iBBN1ePKDCwKGypyC8zKA5dksQ==
- dependencies:
- "@babel/core" "^7.25.2"
- "@react-native/babel-preset" "0.76.0"
- hermes-parser "0.23.1"
- nullthrows "^1.1.1"
-
-"@react-native/normalize-colors@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.76.0.tgz"
- integrity sha512-r+pjeIhzehb+bJUUUrztOQb+n6J9DeaLbF6waLgiHa5mFOiwP/4/iWS68inSZnnBtmXHkN2IYiMXzExx8hieWA==
-
-"@react-native/virtualized-lists@0.76.0":
- version "0.76.0"
- resolved "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.76.0.tgz"
- integrity sha512-WT3Xi1+ikmWWdbrv3xnl8wYxobj1+N5JfiOQx7o/tiGUCx8m12pf5tlutXByH2m7X8bAZ+BBcRuu1vwt7XaRhQ==
- dependencies:
- invariant "^2.2.4"
- nullthrows "^1.1.1"
-
-"@release-it/conventional-changelog@^5.0.0":
- version "5.1.1"
- resolved "https://registry.npmjs.org/@release-it/conventional-changelog/-/conventional-changelog-5.1.1.tgz"
- integrity sha512-QtbDBe36dQfzexAfDYrbLPvd5Cb5bMWmLcjcGhCOWBss7fe1/gCjoxDULVz+7N7G5Nu2UMeBwHcUp/w8RDh5VQ==
- dependencies:
- concat-stream "^2.0.0"
- conventional-changelog "^3.1.25"
- conventional-recommended-bump "^6.1.0"
- semver "7.3.8"
-
-"@sinclair/typebox@^0.27.8":
- version "0.27.10"
- resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.10.tgz"
- integrity sha512-MTBk/3jGLNB2tVxv6uLlFh1iu64iYOQ2PbdOSK3NW8JZsmlaOh2q6sdtKowBhfw8QFLmYNzTW4/oK4uATIi6ZA==
-
-"@sindresorhus/is@^5.2.0":
- version "5.6.0"
- resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-5.6.0.tgz"
- integrity sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==
-
-"@sinonjs/commons@^3.0.0":
- version "3.0.1"
- resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz"
- integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==
- dependencies:
- type-detect "4.0.8"
-
-"@sinonjs/fake-timers@^10.0.2":
- version "10.3.0"
- resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz"
- integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==
- dependencies:
- "@sinonjs/commons" "^3.0.0"
-
-"@szmarczak/http-timer@^5.0.1":
- version "5.0.1"
- resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-5.0.1.tgz"
- integrity sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==
- dependencies:
- defer-to-connect "^2.0.1"
-
-"@tsconfig/node10@^1.0.7":
- version "1.0.12"
- resolved "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.12.tgz"
- integrity sha512-UCYBaeFvM11aU2y3YPZ//O5Rhj+xKyzy7mvcIoAjASbigy8mHMryP5cK7dgjlz2hWxh1g5pLw084E0a/wlUSFQ==
-
-"@tsconfig/node12@^1.0.7":
- version "1.0.11"
- resolved "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz"
- integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==
-
-"@tsconfig/node14@^1.0.0":
- version "1.0.3"
- resolved "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz"
- integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==
-
-"@tsconfig/node16@^1.0.2":
- version "1.0.4"
- resolved "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz"
- integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==
-
-"@types/babel__core@^7.1.14":
- version "7.20.5"
- resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz"
- integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==
- dependencies:
- "@babel/parser" "^7.20.7"
- "@babel/types" "^7.20.7"
- "@types/babel__generator" "*"
- "@types/babel__template" "*"
- "@types/babel__traverse" "*"
-
-"@types/babel__generator@*":
- version "7.27.0"
- resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz"
- integrity sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==
- dependencies:
- "@babel/types" "^7.0.0"
-
-"@types/babel__template@*":
- version "7.4.4"
- resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz"
- integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==
- dependencies:
- "@babel/parser" "^7.1.0"
- "@babel/types" "^7.0.0"
-
-"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
- version "7.28.0"
- resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz"
- integrity sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==
- dependencies:
- "@babel/types" "^7.28.2"
-
-"@types/graceful-fs@^4.1.3":
- version "4.1.9"
- resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz"
- integrity sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==
- dependencies:
- "@types/node" "*"
-
-"@types/http-cache-semantics@^4.0.2":
- version "4.2.0"
- resolved "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz"
- integrity sha512-L3LgimLHXtGkWikKnsPg0/VFx9OGZaC+eN1u4r+OB1XRqH3meBIAVC2zr1WdMH+RHmnRkqliQAOHNJ/E0j/e0Q==
-
-"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
- version "2.0.6"
- resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz"
- integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==
-
-"@types/istanbul-lib-report@*":
- version "3.0.3"
- resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz"
- integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==
- dependencies:
- "@types/istanbul-lib-coverage" "*"
-
-"@types/istanbul-reports@^3.0.0":
- version "3.0.4"
- resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz"
- integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==
- dependencies:
- "@types/istanbul-lib-report" "*"
-
-"@types/jest@^29.5.12":
- version "29.5.14"
- resolved "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz"
- integrity sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==
- dependencies:
- expect "^29.0.0"
- pretty-format "^29.0.0"
-
-"@types/json-schema@^7.0.9":
- version "7.0.15"
- resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz"
- integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==
-
-"@types/lodash.debounce@^4.0.7":
- version "4.0.9"
- resolved "https://registry.npmjs.org/@types/lodash.debounce/-/lodash.debounce-4.0.9.tgz"
- integrity sha512-Ma5JcgTREwpLRwMM+XwBR7DaWe96nC38uCBDFKZWbNKD+osjVzdpnUSwBcqCptrp16sSOLBAUb50Car5I0TCsQ==
- dependencies:
- "@types/lodash" "*"
-
-"@types/lodash@*":
- version "4.17.24"
- resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.24.tgz"
- integrity sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==
-
-"@types/minimist@^1.2.0":
- version "1.2.5"
- resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz"
- integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==
-
-"@types/node-forge@^1.3.0":
- version "1.3.14"
- resolved "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.14.tgz"
- integrity sha512-mhVF2BnD4BO+jtOp7z1CdzaK4mbuK0LLQYAvdOLqHTavxFNq4zA1EmYkpnFjP8HOUzedfQkRnp0E2ulSAYSzAw==
- dependencies:
- "@types/node" "*"
-
-"@types/node@*", "@types/node@20.5.1":
- version "20.5.1"
- resolved "https://registry.npmjs.org/@types/node/-/node-20.5.1.tgz"
- integrity sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg==
-
-"@types/normalize-package-data@^2.4.0":
- version "2.4.4"
- resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz"
- integrity sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==
-
-"@types/prop-types@*":
- version "15.7.15"
- resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz"
- integrity sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==
-
-"@types/react@18.3.12":
- version "18.3.12"
- resolved "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz"
- integrity sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==
- dependencies:
- "@types/prop-types" "*"
- csstype "^3.0.2"
-
-"@types/semver@^7.3.12":
- version "7.7.1"
- resolved "https://registry.npmjs.org/@types/semver/-/semver-7.7.1.tgz"
- integrity sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==
-
-"@types/stack-utils@^2.0.0":
- version "2.0.3"
- resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz"
- integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==
-
-"@types/yargs-parser@*":
- version "21.0.3"
- resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz"
- integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==
-
-"@types/yargs@^17.0.8":
- version "17.0.35"
- resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz"
- integrity sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==
- dependencies:
- "@types/yargs-parser" "*"
-
-"@typescript-eslint/eslint-plugin@^5.30.5":
- version "5.62.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz"
- integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==
- dependencies:
- "@eslint-community/regexpp" "^4.4.0"
- "@typescript-eslint/scope-manager" "5.62.0"
- "@typescript-eslint/type-utils" "5.62.0"
- "@typescript-eslint/utils" "5.62.0"
- debug "^4.3.4"
- graphemer "^1.4.0"
- ignore "^5.2.0"
- natural-compare-lite "^1.4.0"
- semver "^7.3.7"
- tsutils "^3.21.0"
-
-"@typescript-eslint/parser@^5.30.5":
- version "5.62.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz"
- integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==
- dependencies:
- "@typescript-eslint/scope-manager" "5.62.0"
- "@typescript-eslint/types" "5.62.0"
- "@typescript-eslint/typescript-estree" "5.62.0"
- debug "^4.3.4"
-
-"@typescript-eslint/scope-manager@5.62.0":
- version "5.62.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz"
- integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==
- dependencies:
- "@typescript-eslint/types" "5.62.0"
- "@typescript-eslint/visitor-keys" "5.62.0"
-
-"@typescript-eslint/type-utils@5.62.0":
- version "5.62.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz"
- integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==
- dependencies:
- "@typescript-eslint/typescript-estree" "5.62.0"
- "@typescript-eslint/utils" "5.62.0"
- debug "^4.3.4"
- tsutils "^3.21.0"
-
-"@typescript-eslint/types@5.62.0":
- version "5.62.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz"
- integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==
-
-"@typescript-eslint/typescript-estree@5.62.0":
- version "5.62.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz"
- integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==
- dependencies:
- "@typescript-eslint/types" "5.62.0"
- "@typescript-eslint/visitor-keys" "5.62.0"
- debug "^4.3.4"
- globby "^11.1.0"
- is-glob "^4.0.3"
- semver "^7.3.7"
- tsutils "^3.21.0"
-
-"@typescript-eslint/utils@^5.10.0", "@typescript-eslint/utils@5.62.0":
- version "5.62.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz"
- integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==
- dependencies:
- "@eslint-community/eslint-utils" "^4.2.0"
- "@types/json-schema" "^7.0.9"
- "@types/semver" "^7.3.12"
- "@typescript-eslint/scope-manager" "5.62.0"
- "@typescript-eslint/types" "5.62.0"
- "@typescript-eslint/typescript-estree" "5.62.0"
- eslint-scope "^5.1.1"
- semver "^7.3.7"
-
-"@typescript-eslint/visitor-keys@5.62.0":
- version "5.62.0"
- resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz"
- integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==
- dependencies:
- "@typescript-eslint/types" "5.62.0"
- eslint-visitor-keys "^3.3.0"
-
-"@ungap/structured-clone@^1.2.0":
- version "1.3.0"
- resolved "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz"
- integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==
-
-abort-controller@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz"
- integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==
- dependencies:
- event-target-shim "^5.0.0"
-
-accepts@^1.3.7:
- version "1.3.8"
- resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz"
- integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==
- dependencies:
- mime-types "~2.1.34"
- negotiator "0.6.3"
-
-acorn-jsx@^5.3.2:
- version "5.3.2"
- resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz"
- integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
-
-acorn-walk@^8.1.1, acorn-walk@^8.3.4:
- version "8.3.5"
- resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.5.tgz"
- integrity sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==
- dependencies:
- acorn "^8.11.0"
-
-acorn@^8.11.0, acorn@^8.15.0, acorn@^8.4.1, acorn@^8.9.0:
- version "8.16.0"
- resolved "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz"
- integrity sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==
-
-add-stream@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz"
- integrity sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==
-
-agent-base@^7.0.2, agent-base@^7.1.0, agent-base@^7.1.2:
- version "7.1.4"
- resolved "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz"
- integrity sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==
-
-aggregate-error@^3.0.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz"
- integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==
- dependencies:
- clean-stack "^2.0.0"
- indent-string "^4.0.0"
-
-ajv@^6.12.4:
- version "6.15.0"
- resolved "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz"
- integrity sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==
- 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"
-
-ajv@^8.11.0:
- version "8.18.0"
- resolved "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz"
- integrity sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==
- dependencies:
- fast-deep-equal "^3.1.3"
- fast-uri "^3.0.1"
- json-schema-traverse "^1.0.0"
- require-from-string "^2.0.2"
-
-anser@^1.4.9:
- version "1.4.10"
- resolved "https://registry.npmjs.org/anser/-/anser-1.4.10.tgz"
- integrity sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==
-
-ansi-align@^3.0.1:
- version "3.0.1"
- resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz"
- integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==
- dependencies:
- string-width "^4.1.0"
-
-ansi-escapes@^4.2.1, ansi-escapes@^4.3.2:
- version "4.3.2"
- resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz"
- integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==
- dependencies:
- type-fest "^0.21.3"
-
-ansi-regex@^5.0.0, ansi-regex@^5.0.1:
- version "5.0.1"
- resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz"
- integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
-
-ansi-regex@^6.2.2:
- version "6.2.2"
- resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz"
- integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==
-
-ansi-styles@^4.0.0, ansi-styles@^4.1.0:
- version "4.3.0"
- resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
- integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
- dependencies:
- color-convert "^2.0.1"
-
-ansi-styles@^5.0.0:
- version "5.2.0"
- resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz"
- integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==
-
-ansi-styles@^6.1.0:
- version "6.2.3"
- resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz"
- integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==
-
-anymatch@^3.0.3:
- version "3.1.3"
- resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz"
- integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
- dependencies:
- normalize-path "^3.0.0"
- picomatch "^2.0.4"
-
-arg@^4.1.0:
- version "4.1.3"
- resolved "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz"
- integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==
-
-argparse@^1.0.7:
- version "1.0.10"
- resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz"
- integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
- dependencies:
- sprintf-js "~1.0.2"
-
-argparse@^2.0.1:
- version "2.0.1"
- resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz"
- integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
-
-arkregex@0.0.5:
- version "0.0.5"
- resolved "https://registry.npmjs.org/arkregex/-/arkregex-0.0.5.tgz"
- integrity sha512-ncYjBdLlh5/QnVsAA8De16Tc9EqmYM7y/WU9j+236KcyYNUXogpz3sC4ATIZYzzLxwI+0sEOaQLEmLmRleaEXw==
- dependencies:
- "@ark/util" "0.56.0"
-
-arktype@^2.1.15:
- version "2.2.0"
- resolved "https://registry.npmjs.org/arktype/-/arktype-2.2.0.tgz"
- integrity sha512-t54MZ7ti5BhOEvzEkgKnWvqj+UbDfWig+DHr5I34xatymPusKLS0lQpNJd8M6DzmIto2QGszHfNKoFIT8tMCZQ==
- dependencies:
- "@ark/schema" "0.56.0"
- "@ark/util" "0.56.0"
- arkregex "0.0.5"
-
-array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz"
- integrity sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==
- dependencies:
- call-bound "^1.0.3"
- is-array-buffer "^3.0.5"
-
-array-ify@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz"
- integrity sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==
-
-array-includes@^3.1.6, array-includes@^3.1.8:
- version "3.1.9"
- resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz"
- integrity sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.4"
- define-properties "^1.2.1"
- es-abstract "^1.24.0"
- es-object-atoms "^1.1.1"
- get-intrinsic "^1.3.0"
- is-string "^1.1.1"
- math-intrinsics "^1.1.0"
-
-array-union@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz"
- integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
-
-array.prototype.findlast@^1.2.5:
- version "1.2.5"
- resolved "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz"
- integrity sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==
- dependencies:
- call-bind "^1.0.7"
- define-properties "^1.2.1"
- es-abstract "^1.23.2"
- es-errors "^1.3.0"
- es-object-atoms "^1.0.0"
- es-shim-unscopables "^1.0.2"
-
-array.prototype.flat@^1.3.1:
- version "1.3.3"
- resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz"
- integrity sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==
- dependencies:
- call-bind "^1.0.8"
- define-properties "^1.2.1"
- es-abstract "^1.23.5"
- es-shim-unscopables "^1.0.2"
-
-array.prototype.flatmap@^1.3.3:
- version "1.3.3"
- resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz"
- integrity sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==
- dependencies:
- call-bind "^1.0.8"
- define-properties "^1.2.1"
- es-abstract "^1.23.5"
- es-shim-unscopables "^1.0.2"
-
-array.prototype.map@^1.0.5:
- version "1.0.8"
- resolved "https://registry.npmjs.org/array.prototype.map/-/array.prototype.map-1.0.8.tgz"
- integrity sha512-YocPM7bYYu2hXGxWpb5vwZ8cMeudNHYtYBcUDY4Z1GWa53qcnQMWSl25jeBHNzitjl9HW2AWW4ro/S/nftUaOQ==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.3"
- define-properties "^1.2.1"
- es-abstract "^1.23.6"
- es-array-method-boxes-properly "^1.0.0"
- es-object-atoms "^1.0.0"
- is-string "^1.1.1"
-
-array.prototype.tosorted@^1.1.4:
- version "1.1.4"
- resolved "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz"
- integrity sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==
- dependencies:
- call-bind "^1.0.7"
- define-properties "^1.2.1"
- es-abstract "^1.23.3"
- es-errors "^1.3.0"
- es-shim-unscopables "^1.0.2"
-
-arraybuffer.prototype.slice@^1.0.4:
- version "1.0.4"
- resolved "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz"
- integrity sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==
- dependencies:
- array-buffer-byte-length "^1.0.1"
- call-bind "^1.0.8"
- define-properties "^1.2.1"
- es-abstract "^1.23.5"
- es-errors "^1.3.0"
- get-intrinsic "^1.2.6"
- is-array-buffer "^3.0.4"
-
-arrify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz"
- integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==
-
-asap@~2.0.6:
- version "2.0.6"
- resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz"
- integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==
-
-ast-types@^0.13.4:
- version "0.13.4"
- resolved "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz"
- integrity sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==
- dependencies:
- tslib "^2.0.1"
-
-ast-types@0.15.2:
- version "0.15.2"
- resolved "https://registry.npmjs.org/ast-types/-/ast-types-0.15.2.tgz"
- integrity sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==
- dependencies:
- tslib "^2.0.1"
-
-async-function@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz"
- integrity sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==
-
-async-limiter@~1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz"
- integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
-
-async-retry@1.3.3:
- version "1.3.3"
- resolved "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz"
- integrity sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==
- dependencies:
- retry "0.13.1"
-
-available-typed-arrays@^1.0.7:
- version "1.0.7"
- resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz"
- integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==
- dependencies:
- possible-typed-array-names "^1.0.0"
-
-babel-core@^7.0.0-bridge.0:
- version "7.0.0-bridge.0"
- resolved "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz"
- integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==
-
-babel-jest@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz"
- integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==
- dependencies:
- "@jest/transform" "^29.7.0"
- "@types/babel__core" "^7.1.14"
- babel-plugin-istanbul "^6.1.1"
- babel-preset-jest "^29.6.3"
- chalk "^4.0.0"
- graceful-fs "^4.2.9"
- slash "^3.0.0"
-
-babel-plugin-istanbul@^6.1.1:
- version "6.1.1"
- resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz"
- 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@^29.6.3:
- version "29.6.3"
- resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz"
- integrity sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==
- dependencies:
- "@babel/template" "^7.3.3"
- "@babel/types" "^7.3.3"
- "@types/babel__core" "^7.1.14"
- "@types/babel__traverse" "^7.0.6"
-
-babel-plugin-polyfill-corejs2@^0.4.14, babel-plugin-polyfill-corejs2@^0.4.15:
- version "0.4.17"
- resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.17.tgz"
- integrity sha512-aTyf30K/rqAsNwN76zYrdtx8obu0E4KoUME29B1xj+B3WxgvWkp943vYQ+z8Mv3lw9xHXMHpvSPOBxzAkIa94w==
- dependencies:
- "@babel/compat-data" "^7.28.6"
- "@babel/helper-define-polyfill-provider" "^0.6.8"
- semver "^6.3.1"
-
-babel-plugin-polyfill-corejs3@^0.13.0:
- version "0.13.0"
- resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.13.0.tgz"
- integrity sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==
- dependencies:
- "@babel/helper-define-polyfill-provider" "^0.6.5"
- core-js-compat "^3.43.0"
-
-babel-plugin-polyfill-corejs3@^0.14.0:
- version "0.14.2"
- resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.14.2.tgz"
- integrity sha512-coWpDLJ410R781Npmn/SIBZEsAetR4xVi0SxLMXPaMO4lSf1MwnkGYMtkFxew0Dn8B3/CpbpYxN0JCgg8mn67g==
- dependencies:
- "@babel/helper-define-polyfill-provider" "^0.6.8"
- core-js-compat "^3.48.0"
-
-babel-plugin-polyfill-regenerator@^0.6.5, babel-plugin-polyfill-regenerator@^0.6.6:
- version "0.6.8"
- resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.8.tgz"
- integrity sha512-M762rNHfSF1EV3SLtnCJXFoQbbIIz0OyRwnCmV0KPC7qosSfCO0QLTSuJX3ayAebubhE6oYBAYPrBA5ljowaZg==
- dependencies:
- "@babel/helper-define-polyfill-provider" "^0.6.8"
-
-babel-plugin-syntax-hermes-parser@^0.23.1:
- version "0.23.1"
- resolved "https://registry.npmjs.org/babel-plugin-syntax-hermes-parser/-/babel-plugin-syntax-hermes-parser-0.23.1.tgz"
- integrity sha512-uNLD0tk2tLUjGFdmCk+u/3FEw2o+BAwW4g+z2QVlxJrzZYOOPADroEcNtTPt5lNiScctaUmnsTkVEnOwZUOLhA==
- dependencies:
- hermes-parser "0.23.1"
-
-babel-plugin-syntax-hermes-parser@^0.28.0:
- version "0.28.1"
- resolved "https://registry.npmjs.org/babel-plugin-syntax-hermes-parser/-/babel-plugin-syntax-hermes-parser-0.28.1.tgz"
- integrity sha512-meT17DOuUElMNsL5LZN56d+KBp22hb0EfxWfuPUeoSi54e40v1W4C2V36P75FpsH9fVEfDKpw5Nnkahc8haSsQ==
- dependencies:
- hermes-parser "0.28.1"
-
-babel-plugin-transform-flow-enums@^0.0.2:
- version "0.0.2"
- resolved "https://registry.npmjs.org/babel-plugin-transform-flow-enums/-/babel-plugin-transform-flow-enums-0.0.2.tgz"
- integrity sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==
- dependencies:
- "@babel/plugin-syntax-flow" "^7.12.1"
-
-babel-preset-current-node-syntax@^1.0.0:
- version "1.2.0"
- resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz"
- integrity sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==
- dependencies:
- "@babel/plugin-syntax-async-generators" "^7.8.4"
- "@babel/plugin-syntax-bigint" "^7.8.3"
- "@babel/plugin-syntax-class-properties" "^7.12.13"
- "@babel/plugin-syntax-class-static-block" "^7.14.5"
- "@babel/plugin-syntax-import-attributes" "^7.24.7"
- "@babel/plugin-syntax-import-meta" "^7.10.4"
- "@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-preset-jest@^29.6.3:
- version "29.6.3"
- resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz"
- integrity sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==
- dependencies:
- babel-plugin-jest-hoist "^29.6.3"
- babel-preset-current-node-syntax "^1.0.0"
-
-balanced-match@^1.0.0:
- version "1.0.2"
- resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz"
- integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
-
-base64-js@^1.3.1, base64-js@^1.5.1:
- version "1.5.1"
- resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz"
- integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
-
-baseline-browser-mapping@^2.10.12:
- version "2.10.21"
- resolved "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.21.tgz"
- integrity sha512-Q+rUQ7Uz8AHM7DEaNdwvfFCTq7a43lNTzuS94eiWqwyxfV/wJv+oUivef51T91mmRY4d4A1u9rcSvkeufCVXlA==
-
-basic-ftp@^5.0.2:
- version "5.3.0"
- resolved "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.3.0.tgz"
- integrity sha512-5K9eNNn7ywHPsYnFwjKgYH8Hf8B5emh7JKcPaVjjrMJFQQwGpwowEnZNEtHs7DfR7hCZsmaK3VA4HUK0YarT+w==
-
-before-after-hook@^2.2.0:
- version "2.2.3"
- resolved "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz"
- integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==
-
-big-integer@^1.6.44:
- version "1.6.52"
- resolved "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz"
- integrity sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==
-
-bl@^4.1.0:
- version "4.1.0"
- resolved "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz"
- integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==
- dependencies:
- buffer "^5.5.0"
- inherits "^2.0.4"
- readable-stream "^3.4.0"
-
-bl@^5.0.0:
- version "5.1.0"
- resolved "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz"
- integrity sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==
- dependencies:
- buffer "^6.0.3"
- inherits "^2.0.4"
- readable-stream "^3.4.0"
-
-boxen@^7.0.0:
- version "7.1.1"
- resolved "https://registry.npmjs.org/boxen/-/boxen-7.1.1.tgz"
- integrity sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==
- dependencies:
- ansi-align "^3.0.1"
- camelcase "^7.0.1"
- chalk "^5.2.0"
- cli-boxes "^3.0.0"
- string-width "^5.1.2"
- type-fest "^2.13.0"
- widest-line "^4.0.1"
- wrap-ansi "^8.1.0"
-
-bplist-parser@^0.2.0:
- version "0.2.0"
- resolved "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz"
- integrity sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==
- dependencies:
- big-integer "^1.6.44"
-
-brace-expansion@^1.1.7:
- version "1.1.14"
- resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz"
- integrity sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-brace-expansion@^2.0.1:
- version "2.1.0"
- resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz"
- integrity sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==
- dependencies:
- balanced-match "^1.0.0"
-
-braces@^3.0.3:
- version "3.0.3"
- resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz"
- integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==
- dependencies:
- fill-range "^7.1.1"
-
-browserslist@^4.20.4, browserslist@^4.24.0, browserslist@^4.28.1:
- version "4.28.2"
- resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz"
- integrity sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==
- dependencies:
- baseline-browser-mapping "^2.10.12"
- caniuse-lite "^1.0.30001782"
- electron-to-chromium "^1.5.328"
- node-releases "^2.0.36"
- update-browserslist-db "^1.2.3"
-
-bser@2.1.1:
- version "2.1.1"
- resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz"
- 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.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz"
- integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
-
-buffer@^5.5.0:
- version "5.7.1"
- resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz"
- integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==
- dependencies:
- base64-js "^1.3.1"
- ieee754 "^1.1.13"
-
-buffer@^6.0.3:
- version "6.0.3"
- resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz"
- integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==
- dependencies:
- base64-js "^1.3.1"
- ieee754 "^1.2.1"
-
-bundle-name@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz"
- integrity sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==
- dependencies:
- run-applescript "^5.0.0"
-
-cacheable-lookup@^7.0.0:
- version "7.0.0"
- resolved "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz"
- integrity sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==
-
-cacheable-request@^10.2.8:
- version "10.2.14"
- resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-10.2.14.tgz"
- integrity sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==
- dependencies:
- "@types/http-cache-semantics" "^4.0.2"
- get-stream "^6.0.1"
- http-cache-semantics "^4.1.1"
- keyv "^4.5.3"
- mimic-response "^4.0.0"
- normalize-url "^8.0.0"
- responselike "^3.0.0"
-
-call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz"
- integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==
- dependencies:
- es-errors "^1.3.0"
- function-bind "^1.1.2"
-
-call-bind@^1.0.2, call-bind@^1.0.7, call-bind@^1.0.8, call-bind@^1.0.9:
- version "1.0.9"
- resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz"
- integrity sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==
- dependencies:
- call-bind-apply-helpers "^1.0.2"
- es-define-property "^1.0.1"
- get-intrinsic "^1.3.0"
- set-function-length "^1.2.2"
-
-call-bound@^1.0.2, call-bound@^1.0.3, call-bound@^1.0.4:
- version "1.0.4"
- resolved "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz"
- integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==
- dependencies:
- call-bind-apply-helpers "^1.0.2"
- get-intrinsic "^1.3.0"
-
-caller-callsite@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz"
- integrity sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==
- dependencies:
- callsites "^2.0.0"
-
-caller-path@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz"
- integrity sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==
- dependencies:
- caller-callsite "^2.0.0"
-
-callsites@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz"
- integrity sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==
-
-callsites@^3.0.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz"
- integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
-
-camelcase-keys@^6.2.2:
- version "6.2.2"
- resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz"
- integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==
- dependencies:
- camelcase "^5.3.1"
- map-obj "^4.0.0"
- quick-lru "^4.0.1"
-
-camelcase@^5.3.1:
- version "5.3.1"
- resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz"
- integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
-
-camelcase@^6.2.0:
- version "6.3.0"
- resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz"
- integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
-
-camelcase@^7.0.1:
- version "7.0.1"
- resolved "https://registry.npmjs.org/camelcase/-/camelcase-7.0.1.tgz"
- integrity sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==
-
-caniuse-lite@^1.0.30001782:
- version "1.0.30001790"
- resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001790.tgz"
- integrity sha512-bOoxfJPyYo+ds6W0YfptaCWbFnJYjh2Y1Eow5lRv+vI2u8ganPZqNm1JwNh0t2ELQCqIWg4B3dWEusgAmsoyOw==
-
-chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2:
- version "4.1.2"
- resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
- integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
- dependencies:
- ansi-styles "^4.1.0"
- supports-color "^7.1.0"
-
-chalk@^5.0.0:
- version "5.6.2"
- resolved "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz"
- integrity sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==
-
-chalk@^5.0.1:
- version "5.6.2"
- resolved "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz"
- integrity sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==
-
-chalk@^5.2.0:
- version "5.6.2"
- resolved "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz"
- integrity sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==
-
-chalk@5.2.0:
- version "5.2.0"
- resolved "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz"
- integrity sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==
-
-char-regex@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz"
- integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==
-
-chardet@^0.7.0:
- version "0.7.0"
- resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz"
- integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
-
-chrome-launcher@^0.15.2:
- version "0.15.2"
- resolved "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-0.15.2.tgz"
- integrity sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ==
- dependencies:
- "@types/node" "*"
- escape-string-regexp "^4.0.0"
- is-wsl "^2.2.0"
- lighthouse-logger "^1.0.0"
-
-chromium-edge-launcher@^0.2.0:
- version "0.2.0"
- resolved "https://registry.npmjs.org/chromium-edge-launcher/-/chromium-edge-launcher-0.2.0.tgz"
- integrity sha512-JfJjUnq25y9yg4FABRRVPmBGWPZZi+AQXT4mxupb67766/0UlhG8PAZCz6xzEMXTbW3CsSoE8PcCWA49n35mKg==
- dependencies:
- "@types/node" "*"
- escape-string-regexp "^4.0.0"
- is-wsl "^2.2.0"
- lighthouse-logger "^1.0.0"
- mkdirp "^1.0.4"
- rimraf "^3.0.2"
-
-ci-info@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz"
- integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==
-
-ci-info@^3.2.0:
- version "3.9.0"
- resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz"
- integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==
-
-cjs-module-lexer@^1.0.0:
- version "1.4.3"
- resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz"
- integrity sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==
-
-clean-stack@^2.0.0:
- version "2.2.0"
- resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz"
- integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==
-
-cli-boxes@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz"
- integrity sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==
-
-cli-cursor@^3.1.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz"
- integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==
- dependencies:
- restore-cursor "^3.1.0"
-
-cli-cursor@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz"
- integrity sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==
- dependencies:
- restore-cursor "^4.0.0"
-
-cli-spinners@^2.5.0, cli-spinners@^2.6.1:
- version "2.9.2"
- resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz"
- integrity sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==
-
-cli-width@^4.0.0:
- version "4.1.0"
- resolved "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz"
- integrity sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==
-
-cliui@^7.0.2:
- version "7.0.4"
- resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz"
- integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==
- dependencies:
- string-width "^4.2.0"
- strip-ansi "^6.0.0"
- wrap-ansi "^7.0.0"
-
-cliui@^8.0.1:
- version "8.0.1"
- resolved "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz"
- integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==
- dependencies:
- string-width "^4.2.0"
- strip-ansi "^6.0.1"
- wrap-ansi "^7.0.0"
-
-clone-deep@^4.0.1:
- version "4.0.1"
- resolved "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz"
- integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==
- dependencies:
- is-plain-object "^2.0.4"
- kind-of "^6.0.2"
- shallow-clone "^3.0.0"
-
-clone@^1.0.2:
- version "1.0.4"
- resolved "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz"
- integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==
-
-co@^4.6.0:
- version "4.6.0"
- resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz"
- integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==
-
-collect-v8-coverage@^1.0.0:
- version "1.0.3"
- resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz"
- integrity sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==
-
-color-convert@^2.0.1:
- version "2.0.1"
- resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
- integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
- dependencies:
- color-name "~1.1.4"
-
-color-name@~1.1.4:
- version "1.1.4"
- resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
- integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
-
-commander@^12.0.0:
- version "12.1.0"
- resolved "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz"
- integrity sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==
-
-commander@^2.20.0:
- version "2.20.3"
- resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz"
- integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
-
-commitlint@^17.0.2:
- version "17.8.1"
- resolved "https://registry.npmjs.org/commitlint/-/commitlint-17.8.1.tgz"
- integrity sha512-X+VPJwZsQDeGj/DG1NsxhZEl+oMHKNC+1myZ/zauNDoo+7OuLHfTOUU1C1a4CjKW4b6T7NuoFcYfK0kRCjCtbA==
- dependencies:
- "@commitlint/cli" "^17.8.1"
- "@commitlint/types" "^17.8.1"
-
-commondir@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz"
- integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==
-
-compare-func@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz"
- integrity sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==
- dependencies:
- array-ify "^1.0.0"
- dot-prop "^5.1.0"
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
- integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
-
-concat-stream@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz"
- integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==
- dependencies:
- buffer-from "^1.0.0"
- inherits "^2.0.3"
- readable-stream "^3.0.2"
- typedarray "^0.0.6"
-
-config-chain@^1.1.11:
- version "1.1.13"
- resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz"
- integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==
- dependencies:
- ini "^1.3.4"
- proto-list "~1.2.1"
-
-configstore@^6.0.0:
- version "6.0.0"
- resolved "https://registry.npmjs.org/configstore/-/configstore-6.0.0.tgz"
- integrity sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==
- dependencies:
- dot-prop "^6.0.1"
- graceful-fs "^4.2.6"
- unique-string "^3.0.0"
- write-file-atomic "^3.0.3"
- xdg-basedir "^5.0.1"
-
-connect@^3.6.5:
- version "3.7.0"
- resolved "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz"
- integrity sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==
- dependencies:
- debug "2.6.9"
- finalhandler "1.1.2"
- parseurl "~1.3.3"
- utils-merge "1.0.1"
-
-conventional-changelog-angular@^5.0.12:
- version "5.0.13"
- resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz"
- integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==
- dependencies:
- compare-func "^2.0.0"
- q "^1.5.1"
-
-conventional-changelog-angular@^6.0.0:
- version "6.0.0"
- resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-6.0.0.tgz"
- integrity sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==
- dependencies:
- compare-func "^2.0.0"
-
-conventional-changelog-atom@^2.0.8:
- version "2.0.8"
- resolved "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-2.0.8.tgz"
- integrity sha512-xo6v46icsFTK3bb7dY/8m2qvc8sZemRgdqLb/bjpBsH2UyOS8rKNTgcb5025Hri6IpANPApbXMg15QLb1LJpBw==
- dependencies:
- q "^1.5.1"
-
-conventional-changelog-codemirror@^2.0.8:
- version "2.0.8"
- resolved "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-2.0.8.tgz"
- integrity sha512-z5DAsn3uj1Vfp7po3gpt2Boc+Bdwmw2++ZHa5Ak9k0UKsYAO5mH1UBTN0qSCuJZREIhX6WU4E1p3IW2oRCNzQw==
- dependencies:
- q "^1.5.1"
-
-conventional-changelog-conventionalcommits@^4.5.0:
- version "4.6.3"
- resolved "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.3.tgz"
- integrity sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g==
- dependencies:
- compare-func "^2.0.0"
- lodash "^4.17.15"
- q "^1.5.1"
-
-conventional-changelog-conventionalcommits@^6.1.0:
- version "6.1.0"
- resolved "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-6.1.0.tgz"
- integrity sha512-3cS3GEtR78zTfMzk0AizXKKIdN4OvSh7ibNz6/DPbhWWQu7LqE/8+/GqSodV+sywUR2gpJAdP/1JFf4XtN7Zpw==
- dependencies:
- compare-func "^2.0.0"
-
-conventional-changelog-core@^4.2.1:
- version "4.2.4"
- resolved "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz"
- integrity sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg==
- dependencies:
- add-stream "^1.0.0"
- conventional-changelog-writer "^5.0.0"
- conventional-commits-parser "^3.2.0"
- dateformat "^3.0.0"
- get-pkg-repo "^4.0.0"
- git-raw-commits "^2.0.8"
- git-remote-origin-url "^2.0.0"
- git-semver-tags "^4.1.1"
- lodash "^4.17.15"
- normalize-package-data "^3.0.0"
- q "^1.5.1"
- read-pkg "^3.0.0"
- read-pkg-up "^3.0.0"
- through2 "^4.0.0"
-
-conventional-changelog-ember@^2.0.9:
- version "2.0.9"
- resolved "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-2.0.9.tgz"
- integrity sha512-ulzIReoZEvZCBDhcNYfDIsLTHzYHc7awh+eI44ZtV5cx6LVxLlVtEmcO+2/kGIHGtw+qVabJYjdI5cJOQgXh1A==
- dependencies:
- q "^1.5.1"
-
-conventional-changelog-eslint@^3.0.9:
- version "3.0.9"
- resolved "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.9.tgz"
- integrity sha512-6NpUCMgU8qmWmyAMSZO5NrRd7rTgErjrm4VASam2u5jrZS0n38V7Y9CzTtLT2qwz5xEChDR4BduoWIr8TfwvXA==
- dependencies:
- q "^1.5.1"
-
-conventional-changelog-express@^2.0.6:
- version "2.0.6"
- resolved "https://registry.npmjs.org/conventional-changelog-express/-/conventional-changelog-express-2.0.6.tgz"
- integrity sha512-SDez2f3iVJw6V563O3pRtNwXtQaSmEfTCaTBPCqn0oG0mfkq0rX4hHBq5P7De2MncoRixrALj3u3oQsNK+Q0pQ==
- dependencies:
- q "^1.5.1"
-
-conventional-changelog-jquery@^3.0.11:
- version "3.0.11"
- resolved "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-3.0.11.tgz"
- integrity sha512-x8AWz5/Td55F7+o/9LQ6cQIPwrCjfJQ5Zmfqi8thwUEKHstEn4kTIofXub7plf1xvFA2TqhZlq7fy5OmV6BOMw==
- dependencies:
- q "^1.5.1"
-
-conventional-changelog-jshint@^2.0.9:
- version "2.0.9"
- resolved "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.9.tgz"
- integrity sha512-wMLdaIzq6TNnMHMy31hql02OEQ8nCQfExw1SE0hYL5KvU+JCTuPaDO+7JiogGT2gJAxiUGATdtYYfh+nT+6riA==
- dependencies:
- compare-func "^2.0.0"
- q "^1.5.1"
-
-conventional-changelog-preset-loader@^2.3.4:
- version "2.3.4"
- resolved "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz"
- integrity sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==
-
-conventional-changelog-writer@^5.0.0:
- version "5.0.1"
- resolved "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-5.0.1.tgz"
- integrity sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ==
- dependencies:
- conventional-commits-filter "^2.0.7"
- dateformat "^3.0.0"
- handlebars "^4.7.7"
- json-stringify-safe "^5.0.1"
- lodash "^4.17.15"
- meow "^8.0.0"
- semver "^6.0.0"
- split "^1.0.0"
- through2 "^4.0.0"
-
-conventional-changelog@^3.1.25:
- version "3.1.25"
- resolved "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-3.1.25.tgz"
- integrity sha512-ryhi3fd1mKf3fSjbLXOfK2D06YwKNic1nC9mWqybBHdObPd8KJ2vjaXZfYj1U23t+V8T8n0d7gwnc9XbIdFbyQ==
- dependencies:
- conventional-changelog-angular "^5.0.12"
- conventional-changelog-atom "^2.0.8"
- conventional-changelog-codemirror "^2.0.8"
- conventional-changelog-conventionalcommits "^4.5.0"
- conventional-changelog-core "^4.2.1"
- conventional-changelog-ember "^2.0.9"
- conventional-changelog-eslint "^3.0.9"
- conventional-changelog-express "^2.0.6"
- conventional-changelog-jquery "^3.0.11"
- conventional-changelog-jshint "^2.0.9"
- conventional-changelog-preset-loader "^2.3.4"
-
-conventional-commits-filter@^2.0.7:
- version "2.0.7"
- resolved "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz"
- integrity sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==
- dependencies:
- lodash.ismatch "^4.4.0"
- modify-values "^1.0.0"
-
-conventional-commits-parser@^3.2.0:
- version "3.2.4"
- resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz"
- integrity sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==
- dependencies:
- is-text-path "^1.0.1"
- JSONStream "^1.0.4"
- lodash "^4.17.15"
- meow "^8.0.0"
- split2 "^3.0.0"
- through2 "^4.0.0"
-
-conventional-commits-parser@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz"
- integrity sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==
- dependencies:
- is-text-path "^1.0.1"
- JSONStream "^1.3.5"
- meow "^8.1.2"
- split2 "^3.2.2"
-
-conventional-recommended-bump@^6.1.0:
- version "6.1.0"
- resolved "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz"
- integrity sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw==
- dependencies:
- concat-stream "^2.0.0"
- conventional-changelog-preset-loader "^2.3.4"
- conventional-commits-filter "^2.0.7"
- conventional-commits-parser "^3.2.0"
- git-raw-commits "^2.0.8"
- git-semver-tags "^4.1.1"
- meow "^8.0.0"
- q "^1.5.1"
-
-convert-source-map@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz"
- integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==
-
-core-js-compat@^3.43.0, core-js-compat@^3.48.0:
- version "3.49.0"
- resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.49.0.tgz"
- integrity sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==
- dependencies:
- browserslist "^4.28.1"
-
-core-util-is@~1.0.0:
- version "1.0.3"
- resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz"
- integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
-
-cosmiconfig-typescript-loader@^4.0.0:
- version "4.4.0"
- resolved "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.4.0.tgz"
- integrity sha512-BabizFdC3wBHhbI4kJh0VkQP9GkBfoHPydD0COMce1nJ1kJAB3F2TmJ/I7diULBKtmEWSwEbuN/KDtgnmUUVmw==
-
-cosmiconfig@^5.0.5:
- version "5.2.1"
- resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz"
- integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==
- dependencies:
- import-fresh "^2.0.0"
- is-directory "^0.3.1"
- js-yaml "^3.13.1"
- parse-json "^4.0.0"
-
-cosmiconfig@^8.0.0:
- version "8.3.6"
- resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz"
- integrity sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==
- dependencies:
- import-fresh "^3.3.0"
- js-yaml "^4.1.0"
- parse-json "^5.2.0"
- path-type "^4.0.0"
-
-cosmiconfig@8.1.3:
- version "8.1.3"
- resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.1.3.tgz"
- integrity sha512-/UkO2JKI18b5jVMJUp0lvKFMpa/Gye+ZgZjKD+DGEN9y7NRcf/nK1A0sp67ONmKtnDCNMS44E6jrk0Yc3bDuUw==
- dependencies:
- import-fresh "^3.2.1"
- js-yaml "^4.1.0"
- parse-json "^5.0.0"
- path-type "^4.0.0"
-
-create-jest@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz"
- integrity sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==
- dependencies:
- "@jest/types" "^29.6.3"
- chalk "^4.0.0"
- exit "^0.1.2"
- graceful-fs "^4.2.9"
- jest-config "^29.7.0"
- jest-util "^29.7.0"
- prompts "^2.0.1"
-
-create-require@^1.1.0:
- version "1.1.1"
- resolved "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz"
- integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==
-
-cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3:
- version "7.0.6"
- resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz"
- integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==
- dependencies:
- path-key "^3.1.0"
- shebang-command "^2.0.0"
- which "^2.0.1"
-
-crypto-random-string@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz"
- integrity sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==
- dependencies:
- type-fest "^1.0.1"
-
-csstype@^3.0.2:
- version "3.2.3"
- resolved "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz"
- integrity sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==
-
-dargs@^7.0.0:
- version "7.0.0"
- resolved "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz"
- integrity sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==
-
-data-uri-to-buffer@^4.0.0:
- version "4.0.1"
- resolved "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz"
- integrity sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==
-
-data-uri-to-buffer@^6.0.2:
- version "6.0.2"
- resolved "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz"
- integrity sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==
-
-data-view-buffer@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz"
- integrity sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==
- dependencies:
- call-bound "^1.0.3"
- es-errors "^1.3.0"
- is-data-view "^1.0.2"
-
-data-view-byte-length@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz"
- integrity sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==
- dependencies:
- call-bound "^1.0.3"
- es-errors "^1.3.0"
- is-data-view "^1.0.2"
-
-data-view-byte-offset@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz"
- integrity sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==
- dependencies:
- call-bound "^1.0.2"
- es-errors "^1.3.0"
- is-data-view "^1.0.1"
-
-dateformat@^3.0.0:
- version "3.0.3"
- resolved "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz"
- integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==
-
-debug@^2.2.0:
- version "2.6.9"
- resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz"
- integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
- dependencies:
- ms "2.0.0"
-
-debug@^2.6.9:
- version "2.6.9"
- resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz"
- integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
- dependencies:
- ms "2.0.0"
-
-debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.4.3, debug@4:
- version "4.4.3"
- resolved "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz"
- integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==
- dependencies:
- ms "^2.1.3"
-
-debug@2.6.9:
- version "2.6.9"
- resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz"
- integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
- dependencies:
- ms "2.0.0"
-
-decamelize-keys@^1.1.0:
- version "1.1.1"
- resolved "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz"
- integrity sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==
- dependencies:
- decamelize "^1.1.0"
- map-obj "^1.0.0"
-
-decamelize@^1.1.0:
- version "1.2.0"
- resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz"
- integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==
-
-decompress-response@^6.0.0:
- version "6.0.0"
- resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz"
- integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==
- dependencies:
- mimic-response "^3.1.0"
-
-dedent@^0.7.0:
- version "0.7.0"
- resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz"
- integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==
-
-dedent@^1.0.0:
- version "1.7.2"
- resolved "https://registry.npmjs.org/dedent/-/dedent-1.7.2.tgz"
- integrity sha512-WzMx3mW98SN+zn3hgemf4OzdmyNhhhKz5Ay0pUfQiMQ3e1g+xmTJWp/pKdwKVXhdSkAEGIIzqeuWrL3mV/AXbA==
-
-deep-extend@^0.6.0:
- version "0.6.0"
- resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz"
- integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
-
-deep-is@^0.1.3, deep-is@~0.1.3:
- version "0.1.4"
- resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz"
- integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
-
-deepmerge@^4.2.2:
- version "4.3.1"
- resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz"
- integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==
-
-default-browser-id@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz"
- integrity sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==
- dependencies:
- bplist-parser "^0.2.0"
- untildify "^4.0.0"
-
-default-browser@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz"
- integrity sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==
- dependencies:
- bundle-name "^3.0.0"
- default-browser-id "^3.0.0"
- execa "^7.1.1"
- titleize "^3.0.0"
-
-defaults@^1.0.3:
- version "1.0.4"
- resolved "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz"
- integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==
- dependencies:
- clone "^1.0.2"
-
-defer-to-connect@^2.0.1:
- version "2.0.1"
- resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz"
- integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==
-
-define-data-property@^1.0.1, define-data-property@^1.1.4:
- version "1.1.4"
- resolved "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz"
- integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==
- dependencies:
- es-define-property "^1.0.0"
- es-errors "^1.3.0"
- gopd "^1.0.1"
-
-define-lazy-prop@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz"
- integrity sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==
-
-define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz"
- integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==
- dependencies:
- define-data-property "^1.0.1"
- has-property-descriptors "^1.0.0"
- object-keys "^1.1.1"
-
-degenerator@^4.0.4:
- version "4.0.4"
- resolved "https://registry.npmjs.org/degenerator/-/degenerator-4.0.4.tgz"
- integrity sha512-MTZdZsuNxSBL92rsjx3VFWe57OpRlikyLbcx2B5Dmdv6oScqpMrvpY7zHLMymrUxo3U5+suPUMsNgW/+SZB1lg==
- dependencies:
- ast-types "^0.13.4"
- escodegen "^1.14.3"
- esprima "^4.0.1"
- vm2 "^3.9.19"
-
-del@^6.1.1:
- version "6.1.1"
- resolved "https://registry.npmjs.org/del/-/del-6.1.1.tgz"
- integrity sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==
- dependencies:
- globby "^11.0.1"
- graceful-fs "^4.2.4"
- is-glob "^4.0.1"
- is-path-cwd "^2.2.0"
- is-path-inside "^3.0.2"
- p-map "^4.0.0"
- rimraf "^3.0.2"
- slash "^3.0.0"
-
-depd@~2.0.0, depd@2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz"
- integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==
-
-deprecation@^2.0.0:
- version "2.3.1"
- resolved "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz"
- integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==
-
-destroy@1.2.0:
- version "1.2.0"
- resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz"
- integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==
-
-detect-newline@^3.0.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz"
- integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==
-
-diff-sequences@^29.6.3:
- version "29.6.3"
- resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz"
- integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==
-
-diff@^4.0.1:
- version "4.0.4"
- resolved "https://registry.npmjs.org/diff/-/diff-4.0.4.tgz"
- integrity sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==
-
-dir-glob@^3.0.1:
- version "3.0.1"
- resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz"
- integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
- dependencies:
- path-type "^4.0.0"
-
-doctrine@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz"
- integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==
- dependencies:
- esutils "^2.0.2"
-
-doctrine@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz"
- integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
- dependencies:
- esutils "^2.0.2"
-
-dot-prop@^5.1.0:
- version "5.3.0"
- resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz"
- integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==
- dependencies:
- is-obj "^2.0.0"
-
-dot-prop@^6.0.1:
- version "6.0.1"
- resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz"
- integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==
- dependencies:
- is-obj "^2.0.0"
-
-dunder-proto@^1.0.0, dunder-proto@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz"
- integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==
- dependencies:
- call-bind-apply-helpers "^1.0.1"
- es-errors "^1.3.0"
- gopd "^1.2.0"
-
-eastasianwidth@^0.2.0:
- version "0.2.0"
- resolved "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz"
- integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
-
-ee-first@1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz"
- integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==
-
-electron-to-chromium@^1.5.328:
- version "1.5.344"
- resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.344.tgz"
- integrity sha512-4MxfbmNDm+KPh066EZy+eUnkcDPcZ35wNmOWzFuh/ijvHsve6kbLTLURy88uCNK5FbpN+yk2nQY6BYh1GEt+wg==
-
-emittery@^0.13.1:
- version "0.13.1"
- resolved "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz"
- integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==
-
-emoji-regex@^8.0.0:
- version "8.0.0"
- resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz"
- integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
-
-emoji-regex@^9.2.2:
- version "9.2.2"
- resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz"
- integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==
-
-encodeurl@~1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz"
- integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==
-
-encodeurl@~2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz"
- integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==
-
-end-of-stream@^1.1.0:
- version "1.4.5"
- resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz"
- integrity sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==
- dependencies:
- once "^1.4.0"
-
-error-ex@^1.3.1:
- version "1.3.4"
- resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz"
- integrity sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==
- dependencies:
- is-arrayish "^0.2.1"
-
-error-stack-parser@^2.0.6:
- version "2.1.4"
- resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz"
- integrity sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==
- dependencies:
- stackframe "^1.3.4"
-
-es-abstract@^1.17.5, es-abstract@^1.20.4, es-abstract@^1.23.2, es-abstract@^1.23.3, es-abstract@^1.23.5, es-abstract@^1.23.6, es-abstract@^1.23.9, es-abstract@^1.24.0, es-abstract@^1.24.2:
- version "1.24.2"
- resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.2.tgz"
- integrity sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==
- dependencies:
- array-buffer-byte-length "^1.0.2"
- arraybuffer.prototype.slice "^1.0.4"
- available-typed-arrays "^1.0.7"
- call-bind "^1.0.8"
- call-bound "^1.0.4"
- data-view-buffer "^1.0.2"
- data-view-byte-length "^1.0.2"
- data-view-byte-offset "^1.0.1"
- es-define-property "^1.0.1"
- es-errors "^1.3.0"
- es-object-atoms "^1.1.1"
- es-set-tostringtag "^2.1.0"
- es-to-primitive "^1.3.0"
- function.prototype.name "^1.1.8"
- get-intrinsic "^1.3.0"
- get-proto "^1.0.1"
- get-symbol-description "^1.1.0"
- globalthis "^1.0.4"
- gopd "^1.2.0"
- has-property-descriptors "^1.0.2"
- has-proto "^1.2.0"
- has-symbols "^1.1.0"
- hasown "^2.0.2"
- internal-slot "^1.1.0"
- is-array-buffer "^3.0.5"
- is-callable "^1.2.7"
- is-data-view "^1.0.2"
- is-negative-zero "^2.0.3"
- is-regex "^1.2.1"
- is-set "^2.0.3"
- is-shared-array-buffer "^1.0.4"
- is-string "^1.1.1"
- is-typed-array "^1.1.15"
- is-weakref "^1.1.1"
- math-intrinsics "^1.1.0"
- object-inspect "^1.13.4"
- object-keys "^1.1.1"
- object.assign "^4.1.7"
- own-keys "^1.0.1"
- regexp.prototype.flags "^1.5.4"
- safe-array-concat "^1.1.3"
- safe-push-apply "^1.0.0"
- safe-regex-test "^1.1.0"
- set-proto "^1.0.0"
- stop-iteration-iterator "^1.1.0"
- string.prototype.trim "^1.2.10"
- string.prototype.trimend "^1.0.9"
- string.prototype.trimstart "^1.0.8"
- typed-array-buffer "^1.0.3"
- typed-array-byte-length "^1.0.3"
- typed-array-byte-offset "^1.0.4"
- typed-array-length "^1.0.7"
- unbox-primitive "^1.1.0"
- which-typed-array "^1.1.19"
-
-es-array-method-boxes-properly@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz"
- integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==
-
-es-define-property@^1.0.0, es-define-property@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz"
- integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==
-
-es-errors@^1.3.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz"
- integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==
-
-es-get-iterator@^1.0.2:
- version "1.1.3"
- resolved "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz"
- integrity sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==
- dependencies:
- call-bind "^1.0.2"
- get-intrinsic "^1.1.3"
- has-symbols "^1.0.3"
- is-arguments "^1.1.1"
- is-map "^2.0.2"
- is-set "^2.0.2"
- is-string "^1.0.7"
- isarray "^2.0.5"
- stop-iteration-iterator "^1.0.0"
-
-es-iterator-helpers@^1.2.1:
- version "1.3.2"
- resolved "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.3.2.tgz"
- integrity sha512-HVLACW1TppGYjJ8H6/jqH/pqOtKRw6wMlrB23xfExmFWxFquAIWCmwoLsOyN96K4a5KbmOf5At9ZUO3GZbetAw==
- dependencies:
- call-bind "^1.0.9"
- call-bound "^1.0.4"
- define-properties "^1.2.1"
- es-abstract "^1.24.2"
- es-errors "^1.3.0"
- es-set-tostringtag "^2.1.0"
- function-bind "^1.1.2"
- get-intrinsic "^1.3.0"
- globalthis "^1.0.4"
- gopd "^1.2.0"
- has-property-descriptors "^1.0.2"
- has-proto "^1.2.0"
- has-symbols "^1.1.0"
- internal-slot "^1.1.0"
- iterator.prototype "^1.1.5"
- math-intrinsics "^1.1.0"
-
-es-object-atoms@^1.0.0, es-object-atoms@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz"
- integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==
- dependencies:
- es-errors "^1.3.0"
-
-es-set-tostringtag@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz"
- integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==
- dependencies:
- es-errors "^1.3.0"
- get-intrinsic "^1.2.6"
- has-tostringtag "^1.0.2"
- hasown "^2.0.2"
-
-es-shim-unscopables@^1.0.2:
- version "1.1.0"
- resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz"
- integrity sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==
- dependencies:
- hasown "^2.0.2"
-
-es-to-primitive@^1.3.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz"
- integrity sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==
- dependencies:
- is-callable "^1.2.7"
- is-date-object "^1.0.5"
- is-symbol "^1.0.4"
-
-escalade@^3.1.1, escalade@^3.2.0:
- version "3.2.0"
- resolved "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz"
- integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==
-
-escape-goat@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/escape-goat/-/escape-goat-4.0.0.tgz"
- integrity sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==
-
-escape-html@~1.0.3:
- version "1.0.3"
- resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz"
- integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
-
-escape-string-regexp@^1.0.5:
- version "1.0.5"
- resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz"
- integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
-
-escape-string-regexp@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz"
- integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==
-
-escape-string-regexp@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz"
- integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
-
-escape-string-regexp@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz"
- integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==
-
-escodegen@^1.14.3:
- version "1.14.3"
- resolved "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz"
- integrity sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==
- dependencies:
- esprima "^4.0.1"
- estraverse "^4.2.0"
- esutils "^2.0.2"
- optionator "^0.8.1"
- optionalDependencies:
- source-map "~0.6.1"
-
-eslint-config-prettier@^8.5.0:
- version "8.10.2"
- resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.2.tgz"
- integrity sha512-/IGJ6+Dka158JnP5n5YFMOszjDWrXggGz1LaK/guZq9vZTmniaKlHcsscvkAhn9y4U+BU3JuUdYvtAMcv30y4A==
-
-eslint-plugin-eslint-comments@^3.2.0:
- version "3.2.0"
- resolved "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz"
- integrity sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==
- dependencies:
- escape-string-regexp "^1.0.5"
- ignore "^5.0.5"
-
-eslint-plugin-ft-flow@^2.0.1:
- version "2.0.3"
- resolved "https://registry.npmjs.org/eslint-plugin-ft-flow/-/eslint-plugin-ft-flow-2.0.3.tgz"
- integrity sha512-Vbsd/b+LYA99jUbsL6viEUWShFaYQt2YQs3QN3f+aeszOhh2sgdcU0mjzDyD4yyBvMc8qy2uwvBBWfMzEX06tg==
- dependencies:
- lodash "^4.17.21"
- string-natural-compare "^3.0.1"
-
-eslint-plugin-jest@^26.5.3:
- version "26.9.0"
- resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.9.0.tgz"
- integrity sha512-TWJxWGp1J628gxh2KhaH1H1paEdgE2J61BBF1I59c6xWeL5+D1BzMxGDN/nXAfX+aSkR5u80K+XhskK6Gwq9ng==
- dependencies:
- "@typescript-eslint/utils" "^5.10.0"
-
-eslint-plugin-prettier@^4.0.0, eslint-plugin-prettier@^4.2.1:
- version "4.2.5"
- resolved "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.5.tgz"
- integrity sha512-9Ni+xgemM2IWLq6aXEpP2+V/V30GeA/46Ar629vcMqVPodFFWC9skHu/D1phvuqtS8bJCFnNf01/qcmqYEwNfg==
- dependencies:
- prettier-linter-helpers "^1.0.0"
-
-eslint-plugin-react-hooks@^4.6.0:
- version "4.6.2"
- resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz"
- integrity sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==
-
-eslint-plugin-react-native-globals@^0.1.1:
- version "0.1.2"
- resolved "https://registry.npmjs.org/eslint-plugin-react-native-globals/-/eslint-plugin-react-native-globals-0.1.2.tgz"
- integrity sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g==
-
-eslint-plugin-react-native@^4.0.0:
- version "4.1.0"
- resolved "https://registry.npmjs.org/eslint-plugin-react-native/-/eslint-plugin-react-native-4.1.0.tgz"
- integrity sha512-QLo7rzTBOl43FvVqDdq5Ql9IoElIuTdjrz9SKAXCvULvBoRZ44JGSkx9z4999ZusCsb4rK3gjS8gOGyeYqZv2Q==
- dependencies:
- eslint-plugin-react-native-globals "^0.1.1"
-
-eslint-plugin-react@^7.30.1:
- version "7.37.5"
- resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz"
- integrity sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==
- dependencies:
- array-includes "^3.1.8"
- array.prototype.findlast "^1.2.5"
- array.prototype.flatmap "^1.3.3"
- array.prototype.tosorted "^1.1.4"
- doctrine "^2.1.0"
- es-iterator-helpers "^1.2.1"
- estraverse "^5.3.0"
- hasown "^2.0.2"
- jsx-ast-utils "^2.4.1 || ^3.0.0"
- minimatch "^3.1.2"
- object.entries "^1.1.9"
- object.fromentries "^2.0.8"
- object.values "^1.2.1"
- prop-types "^15.8.1"
- resolve "^2.0.0-next.5"
- semver "^6.3.1"
- string.prototype.matchall "^4.0.12"
- string.prototype.repeat "^1.0.0"
-
-eslint-scope@^5.1.1, eslint-scope@5.1.1:
- version "5.1.1"
- resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz"
- integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
- dependencies:
- esrecurse "^4.3.0"
- estraverse "^4.1.1"
-
-eslint-scope@^7.2.2:
- version "7.2.2"
- resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz"
- integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==
- dependencies:
- esrecurse "^4.3.0"
- estraverse "^5.2.0"
-
-eslint-visitor-keys@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz"
- integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
-
-eslint-visitor-keys@^3.3.0:
- version "3.4.3"
- resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz"
- integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
-
-eslint-visitor-keys@^3.4.1:
- version "3.4.3"
- resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz"
- integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
-
-eslint-visitor-keys@^3.4.3:
- version "3.4.3"
- resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz"
- integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
-
-eslint@^8.4.1:
- version "8.57.1"
- resolved "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz"
- integrity sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==
- dependencies:
- "@eslint-community/eslint-utils" "^4.2.0"
- "@eslint-community/regexpp" "^4.6.1"
- "@eslint/eslintrc" "^2.1.4"
- "@eslint/js" "8.57.1"
- "@humanwhocodes/config-array" "^0.13.0"
- "@humanwhocodes/module-importer" "^1.0.1"
- "@nodelib/fs.walk" "^1.2.8"
- "@ungap/structured-clone" "^1.2.0"
- ajv "^6.12.4"
- chalk "^4.0.0"
- cross-spawn "^7.0.2"
- debug "^4.3.2"
- doctrine "^3.0.0"
- escape-string-regexp "^4.0.0"
- eslint-scope "^7.2.2"
- eslint-visitor-keys "^3.4.3"
- espree "^9.6.1"
- esquery "^1.4.2"
- esutils "^2.0.2"
- fast-deep-equal "^3.1.3"
- file-entry-cache "^6.0.1"
- find-up "^5.0.0"
- glob-parent "^6.0.2"
- globals "^13.19.0"
- graphemer "^1.4.0"
- ignore "^5.2.0"
- imurmurhash "^0.1.4"
- is-glob "^4.0.0"
- is-path-inside "^3.0.3"
- js-yaml "^4.1.0"
- json-stable-stringify-without-jsonify "^1.0.1"
- levn "^0.4.1"
- lodash.merge "^4.6.2"
- minimatch "^3.1.2"
- natural-compare "^1.4.0"
- optionator "^0.9.3"
- strip-ansi "^6.0.1"
- text-table "^0.2.0"
-
-espree@^9.6.0, espree@^9.6.1:
- version "9.6.1"
- resolved "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz"
- integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==
- dependencies:
- acorn "^8.9.0"
- acorn-jsx "^5.3.2"
- eslint-visitor-keys "^3.4.1"
-
-esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0:
- version "4.0.1"
- resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz"
- integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
-
-esquery@^1.4.2:
- version "1.7.0"
- resolved "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz"
- integrity sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==
- dependencies:
- estraverse "^5.1.0"
-
-esrecurse@^4.3.0:
- version "4.3.0"
- resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz"
- integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
- dependencies:
- estraverse "^5.2.0"
-
-estraverse@^4.1.1:
- version "4.3.0"
- resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz"
- integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
-
-estraverse@^4.2.0:
- version "4.3.0"
- resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz"
- integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
-
-estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0:
- version "5.3.0"
- resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz"
- integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
-
-esutils@^2.0.2:
- version "2.0.3"
- resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz"
- integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
-
-etag@~1.8.1:
- version "1.8.1"
- resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz"
- integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==
-
-event-target-shim@^5.0.0, event-target-shim@^5.0.1:
- version "5.0.1"
- resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz"
- integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==
-
-execa@^4.0.3:
- version "4.1.0"
- resolved "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz"
- integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==
- dependencies:
- cross-spawn "^7.0.0"
- get-stream "^5.0.0"
- human-signals "^1.1.1"
- is-stream "^2.0.0"
- merge-stream "^2.0.0"
- npm-run-path "^4.0.0"
- onetime "^5.1.0"
- signal-exit "^3.0.2"
- strip-final-newline "^2.0.0"
-
-execa@^5.0.0, execa@^5.1.1:
- version "5.1.1"
- resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz"
- 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"
-
-execa@^7.1.1:
- version "7.2.0"
- resolved "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz"
- integrity sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==
- dependencies:
- cross-spawn "^7.0.3"
- get-stream "^6.0.1"
- human-signals "^4.3.0"
- is-stream "^3.0.0"
- merge-stream "^2.0.0"
- npm-run-path "^5.1.0"
- onetime "^6.0.0"
- signal-exit "^3.0.7"
- strip-final-newline "^3.0.0"
-
-execa@7.1.1:
- version "7.1.1"
- resolved "https://registry.npmjs.org/execa/-/execa-7.1.1.tgz"
- integrity sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==
- dependencies:
- cross-spawn "^7.0.3"
- get-stream "^6.0.1"
- human-signals "^4.3.0"
- is-stream "^3.0.0"
- merge-stream "^2.0.0"
- npm-run-path "^5.1.0"
- onetime "^6.0.0"
- signal-exit "^3.0.7"
- strip-final-newline "^3.0.0"
-
-exit@^0.1.2:
- version "0.1.2"
- resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz"
- integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==
-
-expect@^29.0.0, expect@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz"
- integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==
- dependencies:
- "@jest/expect-utils" "^29.7.0"
- jest-get-type "^29.6.3"
- jest-matcher-utils "^29.7.0"
- jest-message-util "^29.7.0"
- jest-util "^29.7.0"
-
-exponential-backoff@^3.1.1:
- version "3.1.3"
- resolved "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz"
- integrity sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==
-
-external-editor@^3.0.3:
- version "3.1.0"
- resolved "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz"
- integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==
- dependencies:
- chardet "^0.7.0"
- iconv-lite "^0.4.24"
- tmp "^0.0.33"
-
-fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
- version "3.1.3"
- resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz"
- integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
-
-fast-diff@^1.1.2:
- version "1.3.0"
- resolved "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz"
- integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==
-
-fast-glob@^3.2.11, fast-glob@^3.2.9, fast-glob@^3.3.3:
- version "3.3.3"
- resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz"
- integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==
- 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.8"
-
-fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz"
- integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
-
-fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6:
- version "2.0.6"
- resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz"
- integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==
-
-fast-uri@^3.0.1:
- version "3.1.0"
- resolved "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz"
- integrity sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==
-
-fastq@^1.6.0:
- version "1.20.1"
- resolved "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz"
- integrity sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==
- dependencies:
- reusify "^1.0.4"
-
-fb-watchman@^2.0.0:
- version "2.0.2"
- resolved "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz"
- integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==
- dependencies:
- bser "2.1.1"
-
-fetch-blob@^3.1.2, fetch-blob@^3.1.4:
- version "3.2.0"
- resolved "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz"
- integrity sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==
- dependencies:
- node-domexception "^1.0.0"
- web-streams-polyfill "^3.0.3"
-
-figures@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz"
- integrity sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==
- dependencies:
- escape-string-regexp "^5.0.0"
- is-unicode-supported "^1.2.0"
-
-file-entry-cache@^6.0.1:
- version "6.0.1"
- resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz"
- integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
- dependencies:
- flat-cache "^3.0.4"
-
-fill-range@^7.1.1:
- version "7.1.1"
- resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz"
- integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==
- dependencies:
- to-regex-range "^5.0.1"
-
-finalhandler@1.1.2:
- version "1.1.2"
- resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz"
- integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==
- dependencies:
- debug "2.6.9"
- encodeurl "~1.0.2"
- escape-html "~1.0.3"
- on-finished "~2.3.0"
- parseurl "~1.3.3"
- statuses "~1.5.0"
- unpipe "~1.0.0"
-
-find-cache-dir@^2.0.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz"
- integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==
- dependencies:
- commondir "^1.0.1"
- make-dir "^2.0.0"
- pkg-dir "^3.0.0"
-
-find-up@^2.0.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz"
- integrity sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==
- dependencies:
- locate-path "^2.0.0"
-
-find-up@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz"
- integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==
- dependencies:
- locate-path "^3.0.0"
-
-find-up@^4.0.0:
- version "4.1.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz"
- integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
- dependencies:
- locate-path "^5.0.0"
- path-exists "^4.0.0"
-
-find-up@^4.1.0:
- version "4.1.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz"
- integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
- dependencies:
- locate-path "^5.0.0"
- path-exists "^4.0.0"
-
-find-up@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz"
- integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==
- dependencies:
- locate-path "^6.0.0"
- path-exists "^4.0.0"
-
-flat-cache@^3.0.4:
- version "3.2.0"
- resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz"
- integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==
- dependencies:
- flatted "^3.2.9"
- keyv "^4.5.3"
- rimraf "^3.0.2"
-
-flatted@^3.2.9:
- version "3.4.2"
- resolved "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz"
- integrity sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==
-
-flow-enums-runtime@^0.0.6:
- version "0.0.6"
- resolved "https://registry.npmjs.org/flow-enums-runtime/-/flow-enums-runtime-0.0.6.tgz"
- integrity sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==
-
-flow-parser@0.*:
- version "0.311.0"
- resolved "https://registry.npmjs.org/flow-parser/-/flow-parser-0.311.0.tgz"
- integrity sha512-3tbmV0VdoFXdNqJjNksVLIksu78BvUMK5eAR5ZF1TAsV+wVu4jXipRpHKquDGhPRKrLl2DCafjRTV99jVMlMwQ==
-
-for-each@^0.3.3, for-each@^0.3.5:
- version "0.3.5"
- resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz"
- integrity sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==
- dependencies:
- is-callable "^1.2.7"
-
-form-data-encoder@^2.1.2:
- version "2.1.4"
- resolved "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz"
- integrity sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==
-
-formdata-polyfill@^4.0.10:
- version "4.0.10"
- resolved "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz"
- integrity sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==
- dependencies:
- fetch-blob "^3.1.2"
-
-fresh@~0.5.2:
- version "0.5.2"
- resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz"
- integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==
-
-fs-extra@^10.1.0:
- version "10.1.0"
- resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz"
- integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==
- dependencies:
- graceful-fs "^4.2.0"
- jsonfile "^6.0.1"
- universalify "^2.0.0"
-
-fs-extra@^11.0.0:
- version "11.3.4"
- resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.4.tgz"
- integrity sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==
- 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.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
- integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
-
-function-bind@^1.1.2:
- version "1.1.2"
- resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz"
- integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
-
-function.prototype.name@^1.1.6, function.prototype.name@^1.1.8:
- version "1.1.8"
- resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz"
- integrity sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.3"
- define-properties "^1.2.1"
- functions-have-names "^1.2.3"
- hasown "^2.0.2"
- is-callable "^1.2.7"
-
-functions-have-names@^1.2.3:
- version "1.2.3"
- resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz"
- integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==
-
-generator-function@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz"
- integrity sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==
-
-gensync@^1.0.0-beta.2:
- version "1.0.0-beta.2"
- resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz"
- integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
-
-get-caller-file@^2.0.5:
- version "2.0.5"
- resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz"
- integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
-
-get-intrinsic@^1.1.3, get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.2.7, get-intrinsic@^1.3.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz"
- integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==
- dependencies:
- call-bind-apply-helpers "^1.0.2"
- es-define-property "^1.0.1"
- es-errors "^1.3.0"
- es-object-atoms "^1.1.1"
- function-bind "^1.1.2"
- get-proto "^1.0.1"
- gopd "^1.2.0"
- has-symbols "^1.1.0"
- hasown "^2.0.2"
- math-intrinsics "^1.1.0"
-
-get-package-type@^0.1.0:
- version "0.1.0"
- resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz"
- integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==
-
-get-pkg-repo@^4.0.0:
- version "4.2.1"
- resolved "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz"
- integrity sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==
- dependencies:
- "@hutson/parse-repository-url" "^3.0.0"
- hosted-git-info "^4.0.0"
- through2 "^2.0.0"
- yargs "^16.2.0"
-
-get-proto@^1.0.0, get-proto@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz"
- integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==
- dependencies:
- dunder-proto "^1.0.1"
- es-object-atoms "^1.0.0"
-
-get-stream@^5.0.0:
- version "5.2.0"
- resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz"
- integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==
- dependencies:
- pump "^3.0.0"
-
-get-stream@^6.0.0, get-stream@^6.0.1:
- version "6.0.1"
- resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz"
- integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
-
-get-symbol-description@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz"
- integrity sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==
- dependencies:
- call-bound "^1.0.3"
- es-errors "^1.3.0"
- get-intrinsic "^1.2.6"
-
-get-uri@^6.0.1:
- version "6.0.5"
- resolved "https://registry.npmjs.org/get-uri/-/get-uri-6.0.5.tgz"
- integrity sha512-b1O07XYq8eRuVzBNgJLstU6FYc1tS6wnMtF1I1D9lE8LxZSOGZ7LhxN54yPP6mGw5f2CkXY2BQUL9Fx41qvcIg==
- dependencies:
- basic-ftp "^5.0.2"
- data-uri-to-buffer "^6.0.2"
- debug "^4.3.4"
-
-git-raw-commits@^2.0.11, git-raw-commits@^2.0.8:
- version "2.0.11"
- resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz"
- integrity sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==
- dependencies:
- dargs "^7.0.0"
- lodash "^4.17.15"
- meow "^8.0.0"
- split2 "^3.0.0"
- through2 "^4.0.0"
-
-git-remote-origin-url@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz"
- integrity sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==
- dependencies:
- gitconfiglocal "^1.0.0"
- pify "^2.3.0"
-
-git-semver-tags@^4.1.1:
- version "4.1.1"
- resolved "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-4.1.1.tgz"
- integrity sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA==
- dependencies:
- meow "^8.0.0"
- semver "^6.0.0"
-
-git-up@^7.0.0:
- version "7.0.0"
- resolved "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz"
- integrity sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==
- dependencies:
- is-ssh "^1.4.0"
- parse-url "^8.1.0"
-
-git-url-parse@13.1.0:
- version "13.1.0"
- resolved "https://registry.npmjs.org/git-url-parse/-/git-url-parse-13.1.0.tgz"
- integrity sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA==
- dependencies:
- git-up "^7.0.0"
-
-gitconfiglocal@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz"
- integrity sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==
- dependencies:
- ini "^1.3.2"
-
-glob-parent@^5.1.2:
- version "5.1.2"
- resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz"
- integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
- dependencies:
- is-glob "^4.0.1"
-
-glob-parent@^6.0.2:
- version "6.0.2"
- resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz"
- integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
- dependencies:
- is-glob "^4.0.3"
-
-glob@^7.0.0, glob@^7.1.1, glob@^7.1.3, glob@^7.1.4:
- version "7.2.3"
- resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz"
- integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.1.1"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-glob@^8.0.3:
- version "8.1.0"
- resolved "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz"
- integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^5.0.1"
- once "^1.3.0"
-
-global-dirs@^0.1.1:
- version "0.1.1"
- resolved "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz"
- integrity sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==
- dependencies:
- ini "^1.3.4"
-
-global-dirs@^3.0.0:
- version "3.0.1"
- resolved "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz"
- integrity sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==
- dependencies:
- ini "2.0.0"
-
-globals@^13.19.0:
- version "13.24.0"
- resolved "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz"
- integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==
- dependencies:
- type-fest "^0.20.2"
-
-globalthis@^1.0.4:
- version "1.0.4"
- resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz"
- integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==
- dependencies:
- define-properties "^1.2.1"
- gopd "^1.0.1"
-
-globby@^11.0.1, globby@^11.1.0:
- version "11.1.0"
- resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz"
- 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"
-
-globby@13.1.4:
- version "13.1.4"
- resolved "https://registry.npmjs.org/globby/-/globby-13.1.4.tgz"
- integrity sha512-iui/IiiW+QrJ1X1hKH5qwlMQyv34wJAYwH1vrf8b9kBA4sNiif3gKsMHa+BrdnOpEudWjpotfa7LrTzB1ERS/g==
- dependencies:
- dir-glob "^3.0.1"
- fast-glob "^3.2.11"
- ignore "^5.2.0"
- merge2 "^1.4.1"
- slash "^4.0.0"
-
-gopd@^1.0.1, gopd@^1.2.0:
- version "1.2.0"
- resolved "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz"
- integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==
-
-got@^12.1.0, got@12.6.1:
- version "12.6.1"
- resolved "https://registry.npmjs.org/got/-/got-12.6.1.tgz"
- integrity sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==
- dependencies:
- "@sindresorhus/is" "^5.2.0"
- "@szmarczak/http-timer" "^5.0.1"
- cacheable-lookup "^7.0.0"
- cacheable-request "^10.2.8"
- decompress-response "^6.0.0"
- form-data-encoder "^2.1.2"
- get-stream "^6.0.1"
- http2-wrapper "^2.1.10"
- lowercase-keys "^3.0.0"
- p-cancelable "^3.0.0"
- responselike "^3.0.0"
-
-graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9:
- version "4.2.11"
- resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz"
- integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
-
-graceful-fs@4.2.10:
- version "4.2.10"
- resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz"
- integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==
-
-graphemer@^1.4.0:
- version "1.4.0"
- resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz"
- integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==
-
-handlebars@^4.7.7:
- version "4.7.9"
- resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.9.tgz"
- integrity sha512-4E71E0rpOaQuJR2A3xDZ+GM1HyWYv1clR58tC8emQNeQe3RH7MAzSbat+V0wG78LQBo6m6bzSG/L4pBuCsgnUQ==
- dependencies:
- minimist "^1.2.5"
- neo-async "^2.6.2"
- source-map "^0.6.1"
- wordwrap "^1.0.0"
- optionalDependencies:
- uglify-js "^3.1.4"
-
-hard-rejection@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz"
- integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==
-
-has-bigints@^1.0.2:
- version "1.1.0"
- resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz"
- integrity sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==
-
-has-flag@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
- integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
-
-has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz"
- integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==
- dependencies:
- es-define-property "^1.0.0"
-
-has-proto@^1.2.0:
- version "1.2.0"
- resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz"
- integrity sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==
- dependencies:
- dunder-proto "^1.0.0"
-
-has-symbols@^1.0.3, has-symbols@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz"
- integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==
-
-has-tostringtag@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz"
- integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==
- dependencies:
- has-symbols "^1.0.3"
-
-has-yarn@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/has-yarn/-/has-yarn-3.0.0.tgz"
- integrity sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==
-
-hasown@^2.0.2:
- version "2.0.3"
- resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz"
- integrity sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==
- dependencies:
- function-bind "^1.1.2"
-
-hermes-estree@0.23.1:
- version "0.23.1"
- resolved "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.23.1.tgz"
- integrity sha512-eT5MU3f5aVhTqsfIReZ6n41X5sYn4IdQL0nvz6yO+MMlPxw49aSARHLg/MSehQftyjnrE8X6bYregzSumqc6cg==
-
-hermes-estree@0.25.1:
- version "0.25.1"
- resolved "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz"
- integrity sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==
-
-hermes-estree@0.28.1:
- version "0.28.1"
- resolved "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.28.1.tgz"
- integrity sha512-w3nxl/RGM7LBae0v8LH2o36+8VqwOZGv9rX1wyoWT6YaKZLqpJZ0YQ5P0LVr3tuRpf7vCx0iIG4i/VmBJejxTQ==
-
-hermes-parser@0.23.1:
- version "0.23.1"
- resolved "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.23.1.tgz"
- integrity sha512-oxl5h2DkFW83hT4DAUJorpah8ou4yvmweUzLJmmr6YV2cezduCdlil1AvU/a/xSsAFo4WUcNA4GoV5Bvq6JffA==
- dependencies:
- hermes-estree "0.23.1"
-
-hermes-parser@0.25.1:
- version "0.25.1"
- resolved "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz"
- integrity sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==
- dependencies:
- hermes-estree "0.25.1"
-
-hermes-parser@0.28.1:
- version "0.28.1"
- resolved "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.28.1.tgz"
- integrity sha512-nf8o+hE8g7UJWParnccljHumE9Vlq8F7MqIdeahl+4x0tvCUJYRrT0L7h0MMg/X9YJmkNwsfbaNNrzPtFXOscg==
- dependencies:
- hermes-estree "0.28.1"
-
-hosted-git-info@^2.1.4:
- version "2.8.9"
- resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz"
- integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
-
-hosted-git-info@^4.0.0, hosted-git-info@^4.0.1:
- version "4.1.0"
- resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz"
- integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==
- dependencies:
- lru-cache "^6.0.0"
-
-html-escaper@^2.0.0:
- version "2.0.2"
- resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz"
- integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
-
-http-cache-semantics@^4.1.1:
- version "4.2.0"
- resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz"
- integrity sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==
-
-http-errors@~2.0.1:
- version "2.0.1"
- resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz"
- integrity sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==
- dependencies:
- depd "~2.0.0"
- inherits "~2.0.4"
- setprototypeof "~1.2.0"
- statuses "~2.0.2"
- toidentifier "~1.0.1"
-
-http-proxy-agent@^7.0.0:
- version "7.0.2"
- resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz"
- integrity sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==
- dependencies:
- agent-base "^7.1.0"
- debug "^4.3.4"
-
-http2-wrapper@^2.1.10:
- version "2.2.1"
- resolved "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.1.tgz"
- integrity sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==
- dependencies:
- quick-lru "^5.1.1"
- resolve-alpn "^1.2.0"
-
-https-proxy-agent@^7.0.0:
- version "7.0.6"
- resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz"
- integrity sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==
- dependencies:
- agent-base "^7.1.2"
- debug "4"
-
-human-signals@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz"
- integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==
-
-human-signals@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz"
- integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
-
-human-signals@^4.3.0:
- version "4.3.1"
- resolved "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz"
- integrity sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==
-
-iconv-lite@^0.4.24:
- version "0.4.24"
- resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz"
- integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
- dependencies:
- safer-buffer ">= 2.1.2 < 3"
-
-ieee754@^1.1.13, ieee754@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz"
- integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
-
-ignore@^5.0.5, ignore@^5.2.0:
- version "5.3.2"
- resolved "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz"
- integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==
-
-image-size@^1.0.2:
- version "1.2.1"
- resolved "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz"
- integrity sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==
- dependencies:
- queue "6.0.2"
-
-import-fresh@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz"
- integrity sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==
- dependencies:
- caller-path "^2.0.0"
- resolve-from "^3.0.0"
-
-import-fresh@^3.0.0, import-fresh@^3.2.1, import-fresh@^3.3.0:
- version "3.3.1"
- resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz"
- integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==
- dependencies:
- parent-module "^1.0.0"
- resolve-from "^4.0.0"
-
-import-lazy@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz"
- integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==
-
-import-local@^3.0.2:
- version "3.2.0"
- resolved "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz"
- integrity sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==
- dependencies:
- pkg-dir "^4.2.0"
- resolve-cwd "^3.0.0"
-
-imurmurhash@^0.1.4:
- version "0.1.4"
- resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz"
- integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==
-
-indent-string@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz"
- integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
-
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz"
- integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3, inherits@~2.0.4, inherits@2:
- version "2.0.4"
- resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz"
- integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-
-ini@^1.3.2, ini@^1.3.4, ini@~1.3.0:
- version "1.3.8"
- resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz"
- integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
-
-ini@2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz"
- integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==
-
-inquirer@9.2.6:
- version "9.2.6"
- resolved "https://registry.npmjs.org/inquirer/-/inquirer-9.2.6.tgz"
- integrity sha512-y71l237eJJKS4rl7sQcEUiMhrR0pB/ZnRMMTxLpjJhWL4hdWCT03a6jJnC1w6qIPSRZWEozuieGt3v7XaEJYFw==
- dependencies:
- ansi-escapes "^4.3.2"
- chalk "^5.2.0"
- cli-cursor "^3.1.0"
- cli-width "^4.0.0"
- external-editor "^3.0.3"
- figures "^5.0.0"
- lodash "^4.17.21"
- mute-stream "1.0.0"
- ora "^5.4.1"
- run-async "^3.0.0"
- rxjs "^7.8.1"
- string-width "^4.2.3"
- strip-ansi "^6.0.1"
- through "^2.3.6"
- wrap-ansi "^6.0.1"
-
-internal-slot@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz"
- integrity sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==
- dependencies:
- es-errors "^1.3.0"
- hasown "^2.0.2"
- side-channel "^1.1.0"
-
-interpret@^1.0.0:
- version "1.4.0"
- resolved "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz"
- integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==
-
-invariant@^2.2.4:
- version "2.2.4"
- resolved "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz"
- integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==
- dependencies:
- loose-envify "^1.0.0"
-
-ip-address@^10.0.1:
- version "10.1.0"
- resolved "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz"
- integrity sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==
-
-ip@^1.1.8:
- version "1.1.9"
- resolved "https://registry.npmjs.org/ip/-/ip-1.1.9.tgz"
- integrity sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ==
-
-is-absolute@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz"
- integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==
- dependencies:
- is-relative "^1.0.0"
- is-windows "^1.0.1"
-
-is-arguments@^1.1.1:
- version "1.2.0"
- resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz"
- integrity sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==
- dependencies:
- call-bound "^1.0.2"
- has-tostringtag "^1.0.2"
-
-is-array-buffer@^3.0.4, is-array-buffer@^3.0.5:
- version "3.0.5"
- resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz"
- integrity sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.3"
- get-intrinsic "^1.2.6"
-
-is-arrayish@^0.2.1:
- version "0.2.1"
- resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz"
- integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
-
-is-async-function@^2.0.0:
- version "2.1.1"
- resolved "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz"
- integrity sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==
- dependencies:
- async-function "^1.0.0"
- call-bound "^1.0.3"
- get-proto "^1.0.1"
- has-tostringtag "^1.0.2"
- safe-regex-test "^1.1.0"
-
-is-bigint@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz"
- integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==
- dependencies:
- has-bigints "^1.0.2"
-
-is-boolean-object@^1.2.1:
- version "1.2.2"
- resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz"
- integrity sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==
- dependencies:
- call-bound "^1.0.3"
- has-tostringtag "^1.0.2"
-
-is-callable@^1.2.7:
- version "1.2.7"
- resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz"
- integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==
-
-is-ci@^3.0.1, is-ci@3.0.1:
- version "3.0.1"
- resolved "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz"
- integrity sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==
- dependencies:
- ci-info "^3.2.0"
-
-is-core-module@^2.16.1, is-core-module@^2.5.0:
- version "2.16.1"
- resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz"
- integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==
- dependencies:
- hasown "^2.0.2"
-
-is-data-view@^1.0.1, is-data-view@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz"
- integrity sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==
- dependencies:
- call-bound "^1.0.2"
- get-intrinsic "^1.2.6"
- is-typed-array "^1.1.13"
-
-is-date-object@^1.0.5, is-date-object@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz"
- integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==
- dependencies:
- call-bound "^1.0.2"
- has-tostringtag "^1.0.2"
-
-is-directory@^0.3.1:
- version "0.3.1"
- resolved "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz"
- integrity sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==
-
-is-docker@^2.0.0:
- version "2.2.1"
- resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz"
- integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==
-
-is-docker@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz"
- integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==
-
-is-extglob@^2.1.1:
- version "2.1.1"
- resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz"
- integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
-
-is-finalizationregistry@^1.1.0:
- version "1.1.1"
- resolved "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz"
- integrity sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==
- dependencies:
- call-bound "^1.0.3"
-
-is-fullwidth-code-point@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz"
- integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
-
-is-generator-fn@^2.0.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz"
- integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==
-
-is-generator-function@^1.0.10:
- version "1.1.2"
- resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz"
- integrity sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==
- dependencies:
- call-bound "^1.0.4"
- generator-function "^2.0.0"
- get-proto "^1.0.1"
- has-tostringtag "^1.0.2"
- safe-regex-test "^1.1.0"
-
-is-git-dirty@^2.0.1:
- version "2.0.2"
- resolved "https://registry.npmjs.org/is-git-dirty/-/is-git-dirty-2.0.2.tgz"
- integrity sha512-U3YCo+GKR/rDsY7r0v/LBICbQwsx859tDQnAT+v0E/zCDeWbQ1TUt1FtyExeyik7VIJlYOLHCIifLdz71HDalg==
- dependencies:
- execa "^4.0.3"
- is-git-repository "^2.0.0"
-
-is-git-repository@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/is-git-repository/-/is-git-repository-2.0.0.tgz"
- integrity sha512-HDO50CG5suIAcmqG4F1buqVXEZRPn+RaXIn9pFKq/947FBo2bCRwK7ZluEVZOy99a4IQyqsjbKEpAiOXCccOHQ==
- dependencies:
- execa "^4.0.3"
- is-absolute "^1.0.0"
-
-is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3:
- version "4.0.3"
- resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz"
- integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
- dependencies:
- is-extglob "^2.1.1"
-
-is-inside-container@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz"
- integrity sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==
- dependencies:
- is-docker "^3.0.0"
-
-is-installed-globally@^0.4.0:
- version "0.4.0"
- resolved "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz"
- integrity sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==
- dependencies:
- global-dirs "^3.0.0"
- is-path-inside "^3.0.2"
-
-is-interactive@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz"
- integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==
-
-is-interactive@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz"
- integrity sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==
-
-is-map@^2.0.2, is-map@^2.0.3:
- version "2.0.3"
- resolved "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz"
- integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==
-
-is-negative-zero@^2.0.3:
- version "2.0.3"
- resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz"
- integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==
-
-is-npm@^6.0.0:
- version "6.1.0"
- resolved "https://registry.npmjs.org/is-npm/-/is-npm-6.1.0.tgz"
- integrity sha512-O2z4/kNgyjhQwVR1Wpkbfc19JIhggF97NZNCpWTnjH7kVcZMUrnut9XSN7txI7VdyIYk5ZatOq3zvSuWpU8hoA==
-
-is-number-object@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz"
- integrity sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==
- dependencies:
- call-bound "^1.0.3"
- has-tostringtag "^1.0.2"
-
-is-number@^7.0.0:
- version "7.0.0"
- resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz"
- integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
-
-is-obj@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz"
- integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==
-
-is-path-cwd@^2.2.0:
- version "2.2.0"
- resolved "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz"
- integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==
-
-is-path-inside@^3.0.2, is-path-inside@^3.0.3:
- version "3.0.3"
- resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz"
- integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==
-
-is-plain-obj@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz"
- integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==
-
-is-plain-object@^2.0.4:
- version "2.0.4"
- resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz"
- integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
- dependencies:
- isobject "^3.0.1"
-
-is-plain-object@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz"
- integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==
-
-is-regex@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz"
- integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==
- dependencies:
- call-bound "^1.0.2"
- gopd "^1.2.0"
- has-tostringtag "^1.0.2"
- hasown "^2.0.2"
-
-is-relative@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz"
- integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==
- dependencies:
- is-unc-path "^1.0.0"
-
-is-set@^2.0.2, is-set@^2.0.3:
- version "2.0.3"
- resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz"
- integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==
-
-is-shared-array-buffer@^1.0.4:
- version "1.0.4"
- resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz"
- integrity sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==
- dependencies:
- call-bound "^1.0.3"
-
-is-ssh@^1.4.0:
- version "1.4.1"
- resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.1.tgz"
- integrity sha512-JNeu1wQsHjyHgn9NcWTaXq6zWSR6hqE0++zhfZlkFBbScNkyvxCdeV8sRkSBaeLKxmbpR21brail63ACNxJ0Tg==
- dependencies:
- protocols "^2.0.1"
-
-is-stream@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz"
- integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
-
-is-stream@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz"
- integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==
-
-is-string@^1.0.7, is-string@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz"
- integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==
- dependencies:
- call-bound "^1.0.3"
- has-tostringtag "^1.0.2"
-
-is-symbol@^1.0.4, is-symbol@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz"
- integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==
- dependencies:
- call-bound "^1.0.2"
- has-symbols "^1.1.0"
- safe-regex-test "^1.1.0"
-
-is-text-path@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz"
- integrity sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==
- dependencies:
- text-extensions "^1.0.0"
-
-is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15:
- version "1.1.15"
- resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz"
- integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==
- dependencies:
- which-typed-array "^1.1.16"
-
-is-typedarray@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz"
- integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==
-
-is-unc-path@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz"
- integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==
- dependencies:
- unc-path-regex "^0.1.2"
-
-is-unicode-supported@^0.1.0:
- version "0.1.0"
- resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz"
- integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==
-
-is-unicode-supported@^1.1.0, is-unicode-supported@^1.2.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz"
- integrity sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==
-
-is-weakmap@^2.0.2:
- version "2.0.2"
- resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz"
- integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==
-
-is-weakref@^1.0.2, is-weakref@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz"
- integrity sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==
- dependencies:
- call-bound "^1.0.3"
-
-is-weakset@^2.0.3:
- version "2.0.4"
- resolved "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz"
- integrity sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==
- dependencies:
- call-bound "^1.0.3"
- get-intrinsic "^1.2.6"
-
-is-windows@^1.0.1:
- version "1.0.2"
- resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz"
- integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
-
-is-wsl@^2.1.1, is-wsl@^2.2.0:
- version "2.2.0"
- resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz"
- integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==
- dependencies:
- is-docker "^2.0.0"
-
-is-yarn-global@^0.4.0:
- version "0.4.1"
- resolved "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.4.1.tgz"
- integrity sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==
-
-isarray@^2.0.5:
- version "2.0.5"
- resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz"
- integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==
-
-isarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz"
- integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz"
- integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
-
-isobject@^3.0.1:
- version "3.0.1"
- resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz"
- integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
-
-issue-parser@6.0.0:
- version "6.0.0"
- resolved "https://registry.npmjs.org/issue-parser/-/issue-parser-6.0.0.tgz"
- integrity sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==
- dependencies:
- lodash.capitalize "^4.2.1"
- lodash.escaperegexp "^4.1.2"
- lodash.isplainobject "^4.0.6"
- lodash.isstring "^4.0.1"
- lodash.uniqby "^4.7.0"
-
-istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
- version "3.2.2"
- resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz"
- integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==
-
-istanbul-lib-instrument@^5.0.4:
- version "5.2.1"
- resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz"
- integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==
- 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-instrument@^6.0.0:
- version "6.0.3"
- resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz"
- integrity sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==
- dependencies:
- "@babel/core" "^7.23.9"
- "@babel/parser" "^7.23.9"
- "@istanbuljs/schema" "^0.1.3"
- istanbul-lib-coverage "^3.2.0"
- semver "^7.5.4"
-
-istanbul-lib-report@^3.0.0:
- version "3.0.1"
- resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz"
- integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==
- dependencies:
- istanbul-lib-coverage "^3.0.0"
- make-dir "^4.0.0"
- supports-color "^7.1.0"
-
-istanbul-lib-source-maps@^4.0.0:
- version "4.0.1"
- resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz"
- integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==
- dependencies:
- debug "^4.1.1"
- istanbul-lib-coverage "^3.0.0"
- source-map "^0.6.1"
-
-istanbul-reports@^3.1.3:
- version "3.2.0"
- resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz"
- integrity sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==
- dependencies:
- html-escaper "^2.0.0"
- istanbul-lib-report "^3.0.0"
-
-iterate-iterator@^1.0.1:
- version "1.0.2"
- resolved "https://registry.npmjs.org/iterate-iterator/-/iterate-iterator-1.0.2.tgz"
- integrity sha512-t91HubM4ZDQ70M9wqp+pcNpu8OyJ9UAtXntT/Bcsvp5tZMnz9vRa+IunKXeI8AnfZMTv0jNuVEmGeLSMjVvfPw==
-
-iterate-value@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/iterate-value/-/iterate-value-1.0.2.tgz"
- integrity sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ==
- dependencies:
- es-get-iterator "^1.0.2"
- iterate-iterator "^1.0.1"
-
-iterator.prototype@^1.1.5:
- version "1.1.5"
- resolved "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz"
- integrity sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==
- dependencies:
- define-data-property "^1.1.4"
- es-object-atoms "^1.0.0"
- get-intrinsic "^1.2.6"
- get-proto "^1.0.0"
- has-symbols "^1.1.0"
- set-function-name "^2.0.2"
-
-jest-changed-files@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz"
- integrity sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==
- dependencies:
- execa "^5.0.0"
- jest-util "^29.7.0"
- p-limit "^3.1.0"
-
-jest-circus@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz"
- integrity sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==
- dependencies:
- "@jest/environment" "^29.7.0"
- "@jest/expect" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- co "^4.6.0"
- dedent "^1.0.0"
- is-generator-fn "^2.0.0"
- jest-each "^29.7.0"
- jest-matcher-utils "^29.7.0"
- jest-message-util "^29.7.0"
- jest-runtime "^29.7.0"
- jest-snapshot "^29.7.0"
- jest-util "^29.7.0"
- p-limit "^3.1.0"
- pretty-format "^29.7.0"
- pure-rand "^6.0.0"
- slash "^3.0.0"
- stack-utils "^2.0.3"
-
-jest-cli@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz"
- integrity sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==
- dependencies:
- "@jest/core" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/types" "^29.6.3"
- chalk "^4.0.0"
- create-jest "^29.7.0"
- exit "^0.1.2"
- import-local "^3.0.2"
- jest-config "^29.7.0"
- jest-util "^29.7.0"
- jest-validate "^29.7.0"
- yargs "^17.3.1"
-
-jest-config@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz"
- integrity sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==
- dependencies:
- "@babel/core" "^7.11.6"
- "@jest/test-sequencer" "^29.7.0"
- "@jest/types" "^29.6.3"
- babel-jest "^29.7.0"
- chalk "^4.0.0"
- ci-info "^3.2.0"
- deepmerge "^4.2.2"
- glob "^7.1.3"
- graceful-fs "^4.2.9"
- jest-circus "^29.7.0"
- jest-environment-node "^29.7.0"
- jest-get-type "^29.6.3"
- jest-regex-util "^29.6.3"
- jest-resolve "^29.7.0"
- jest-runner "^29.7.0"
- jest-util "^29.7.0"
- jest-validate "^29.7.0"
- micromatch "^4.0.4"
- parse-json "^5.2.0"
- pretty-format "^29.7.0"
- slash "^3.0.0"
- strip-json-comments "^3.1.1"
-
-jest-diff@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz"
- integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==
- dependencies:
- chalk "^4.0.0"
- diff-sequences "^29.6.3"
- jest-get-type "^29.6.3"
- pretty-format "^29.7.0"
-
-jest-docblock@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz"
- integrity sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==
- dependencies:
- detect-newline "^3.0.0"
-
-jest-each@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz"
- integrity sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==
- dependencies:
- "@jest/types" "^29.6.3"
- chalk "^4.0.0"
- jest-get-type "^29.6.3"
- jest-util "^29.7.0"
- pretty-format "^29.7.0"
-
-jest-environment-node@^29.6.3, jest-environment-node@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz"
- integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==
- dependencies:
- "@jest/environment" "^29.7.0"
- "@jest/fake-timers" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- jest-mock "^29.7.0"
- jest-util "^29.7.0"
-
-jest-get-type@^29.6.3:
- version "29.6.3"
- resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz"
- integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==
-
-jest-haste-map@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz"
- integrity sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==
- dependencies:
- "@jest/types" "^29.6.3"
- "@types/graceful-fs" "^4.1.3"
- "@types/node" "*"
- anymatch "^3.0.3"
- fb-watchman "^2.0.0"
- graceful-fs "^4.2.9"
- jest-regex-util "^29.6.3"
- jest-util "^29.7.0"
- jest-worker "^29.7.0"
- micromatch "^4.0.4"
- walker "^1.0.8"
- optionalDependencies:
- fsevents "^2.3.2"
-
-jest-leak-detector@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz"
- integrity sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==
- dependencies:
- jest-get-type "^29.6.3"
- pretty-format "^29.7.0"
-
-jest-matcher-utils@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz"
- integrity sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==
- dependencies:
- chalk "^4.0.0"
- jest-diff "^29.7.0"
- jest-get-type "^29.6.3"
- pretty-format "^29.7.0"
-
-jest-message-util@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz"
- integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==
- dependencies:
- "@babel/code-frame" "^7.12.13"
- "@jest/types" "^29.6.3"
- "@types/stack-utils" "^2.0.0"
- chalk "^4.0.0"
- graceful-fs "^4.2.9"
- micromatch "^4.0.4"
- pretty-format "^29.7.0"
- slash "^3.0.0"
- stack-utils "^2.0.3"
-
-jest-mock@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz"
- integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==
- dependencies:
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- jest-util "^29.7.0"
-
-jest-pnp-resolver@^1.2.2:
- version "1.2.3"
- resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz"
- integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==
-
-jest-regex-util@^29.6.3:
- version "29.6.3"
- resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz"
- integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==
-
-jest-resolve-dependencies@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz"
- integrity sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==
- dependencies:
- jest-regex-util "^29.6.3"
- jest-snapshot "^29.7.0"
-
-jest-resolve@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz"
- integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==
- dependencies:
- chalk "^4.0.0"
- graceful-fs "^4.2.9"
- jest-haste-map "^29.7.0"
- jest-pnp-resolver "^1.2.2"
- jest-util "^29.7.0"
- jest-validate "^29.7.0"
- resolve "^1.20.0"
- resolve.exports "^2.0.0"
- slash "^3.0.0"
-
-jest-runner@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz"
- integrity sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==
- dependencies:
- "@jest/console" "^29.7.0"
- "@jest/environment" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- emittery "^0.13.1"
- graceful-fs "^4.2.9"
- jest-docblock "^29.7.0"
- jest-environment-node "^29.7.0"
- jest-haste-map "^29.7.0"
- jest-leak-detector "^29.7.0"
- jest-message-util "^29.7.0"
- jest-resolve "^29.7.0"
- jest-runtime "^29.7.0"
- jest-util "^29.7.0"
- jest-watcher "^29.7.0"
- jest-worker "^29.7.0"
- p-limit "^3.1.0"
- source-map-support "0.5.13"
-
-jest-runtime@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz"
- integrity sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==
- dependencies:
- "@jest/environment" "^29.7.0"
- "@jest/fake-timers" "^29.7.0"
- "@jest/globals" "^29.7.0"
- "@jest/source-map" "^29.6.3"
- "@jest/test-result" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- cjs-module-lexer "^1.0.0"
- collect-v8-coverage "^1.0.0"
- glob "^7.1.3"
- graceful-fs "^4.2.9"
- jest-haste-map "^29.7.0"
- jest-message-util "^29.7.0"
- jest-mock "^29.7.0"
- jest-regex-util "^29.6.3"
- jest-resolve "^29.7.0"
- jest-snapshot "^29.7.0"
- jest-util "^29.7.0"
- slash "^3.0.0"
- strip-bom "^4.0.0"
-
-jest-snapshot@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz"
- integrity sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==
- dependencies:
- "@babel/core" "^7.11.6"
- "@babel/generator" "^7.7.2"
- "@babel/plugin-syntax-jsx" "^7.7.2"
- "@babel/plugin-syntax-typescript" "^7.7.2"
- "@babel/types" "^7.3.3"
- "@jest/expect-utils" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- babel-preset-current-node-syntax "^1.0.0"
- chalk "^4.0.0"
- expect "^29.7.0"
- graceful-fs "^4.2.9"
- jest-diff "^29.7.0"
- jest-get-type "^29.6.3"
- jest-matcher-utils "^29.7.0"
- jest-message-util "^29.7.0"
- jest-util "^29.7.0"
- natural-compare "^1.4.0"
- pretty-format "^29.7.0"
- semver "^7.5.3"
-
-jest-util@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz"
- integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==
- dependencies:
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- ci-info "^3.2.0"
- graceful-fs "^4.2.9"
- picomatch "^2.2.3"
-
-jest-validate@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz"
- integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==
- dependencies:
- "@jest/types" "^29.6.3"
- camelcase "^6.2.0"
- chalk "^4.0.0"
- jest-get-type "^29.6.3"
- leven "^3.1.0"
- pretty-format "^29.7.0"
-
-jest-watcher@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz"
- integrity sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==
- dependencies:
- "@jest/test-result" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- ansi-escapes "^4.2.1"
- chalk "^4.0.0"
- emittery "^0.13.1"
- jest-util "^29.7.0"
- string-length "^4.0.1"
-
-jest-worker@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz"
- integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==
- dependencies:
- "@types/node" "*"
- jest-util "^29.7.0"
- merge-stream "^2.0.0"
- supports-color "^8.0.0"
-
-jest@29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz"
- integrity sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==
- dependencies:
- "@jest/core" "^29.7.0"
- "@jest/types" "^29.6.3"
- import-local "^3.0.2"
- jest-cli "^29.7.0"
-
-"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz"
- integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-
-js-yaml@^3.13.1:
- version "3.14.2"
- resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz"
- integrity sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==
- dependencies:
- argparse "^1.0.7"
- esprima "^4.0.0"
-
-js-yaml@^4.1.0:
- version "4.1.1"
- resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz"
- integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==
- dependencies:
- argparse "^2.0.1"
-
-jsc-android@^250231.0.0:
- version "250231.0.0"
- resolved "https://registry.npmjs.org/jsc-android/-/jsc-android-250231.0.0.tgz"
- integrity sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw==
-
-jsc-safe-url@^0.2.2:
- version "0.2.4"
- resolved "https://registry.npmjs.org/jsc-safe-url/-/jsc-safe-url-0.2.4.tgz"
- integrity sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q==
-
-jscodeshift@^0.14.0:
- version "0.14.0"
- resolved "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.14.0.tgz"
- integrity sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==
- dependencies:
- "@babel/core" "^7.13.16"
- "@babel/parser" "^7.13.16"
- "@babel/plugin-proposal-class-properties" "^7.13.0"
- "@babel/plugin-proposal-nullish-coalescing-operator" "^7.13.8"
- "@babel/plugin-proposal-optional-chaining" "^7.13.12"
- "@babel/plugin-transform-modules-commonjs" "^7.13.8"
- "@babel/preset-flow" "^7.13.13"
- "@babel/preset-typescript" "^7.13.0"
- "@babel/register" "^7.13.16"
- babel-core "^7.0.0-bridge.0"
- chalk "^4.1.2"
- flow-parser "0.*"
- graceful-fs "^4.2.4"
- micromatch "^4.0.4"
- neo-async "^2.5.0"
- node-dir "^0.1.17"
- recast "^0.21.0"
- temp "^0.8.4"
- write-file-atomic "^2.3.0"
-
-jsesc@^3.0.2, jsesc@~3.1.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz"
- integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==
-
-json-buffer@3.0.1:
- version "3.0.1"
- resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz"
- integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
-
-json-parse-better-errors@^1.0.1:
- version "1.0.2"
- resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz"
- integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==
-
-json-parse-even-better-errors@^2.3.0:
- version "2.3.1"
- resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz"
- integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
-
-json-schema-traverse@^0.4.1:
- version "0.4.1"
- resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz"
- integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
-
-json-schema-traverse@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz"
- integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==
-
-json-stable-stringify-without-jsonify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz"
- integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
-
-json-stringify-safe@^5.0.1:
- version "5.0.1"
- resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz"
- integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==
-
-json5@^2.2.1, json5@^2.2.3:
- version "2.2.3"
- resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz"
- integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
-
-jsonfile@^6.0.1:
- version "6.2.1"
- resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.1.tgz"
- integrity sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==
- dependencies:
- universalify "^2.0.0"
- optionalDependencies:
- graceful-fs "^4.1.6"
-
-jsonparse@^1.2.0:
- version "1.3.1"
- resolved "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz"
- integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==
-
-JSONStream@^1.0.4, JSONStream@^1.3.5:
- version "1.3.5"
- resolved "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz"
- integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==
- dependencies:
- jsonparse "^1.2.0"
- through ">=2.2.7 <3"
-
-"jsx-ast-utils@^2.4.1 || ^3.0.0":
- version "3.3.5"
- resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz"
- integrity sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==
- dependencies:
- array-includes "^3.1.6"
- array.prototype.flat "^1.3.1"
- object.assign "^4.1.4"
- object.values "^1.1.6"
-
-keyv@^4.5.3:
- version "4.5.4"
- resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz"
- integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==
- dependencies:
- json-buffer "3.0.1"
-
-kind-of@^6.0.2, kind-of@^6.0.3:
- version "6.0.3"
- resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz"
- integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
-
-kleur@^3.0.3:
- version "3.0.3"
- resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz"
- integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==
-
-kleur@^4.1.4:
- version "4.1.5"
- resolved "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz"
- integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==
-
-latest-version@^7.0.0:
- version "7.0.0"
- resolved "https://registry.npmjs.org/latest-version/-/latest-version-7.0.0.tgz"
- integrity sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==
- dependencies:
- package-json "^8.1.0"
-
-leven@^3.1.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz"
- integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==
-
-levn@^0.4.1:
- version "0.4.1"
- resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz"
- 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.npmjs.org/levn/-/levn-0.3.0.tgz"
- integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==
- dependencies:
- prelude-ls "~1.1.2"
- type-check "~0.3.2"
-
-lighthouse-logger@^1.0.0:
- version "1.4.2"
- resolved "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz"
- integrity sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==
- dependencies:
- debug "^2.6.9"
- marky "^1.2.2"
-
-lines-and-columns@^1.1.6:
- version "1.2.4"
- resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz"
- integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
-
-load-json-file@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz"
- integrity sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^4.0.0"
- pify "^3.0.0"
- strip-bom "^3.0.0"
-
-locate-path@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz"
- integrity sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==
- dependencies:
- p-locate "^2.0.0"
- path-exists "^3.0.0"
-
-locate-path@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz"
- integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==
- dependencies:
- p-locate "^3.0.0"
- path-exists "^3.0.0"
-
-locate-path@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz"
- integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
- dependencies:
- p-locate "^4.1.0"
-
-locate-path@^6.0.0:
- version "6.0.0"
- resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz"
- integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==
- dependencies:
- p-locate "^5.0.0"
-
-lodash.camelcase@^4.3.0:
- version "4.3.0"
- resolved "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz"
- integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==
-
-lodash.capitalize@^4.2.1:
- version "4.2.1"
- resolved "https://registry.npmjs.org/lodash.capitalize/-/lodash.capitalize-4.2.1.tgz"
- integrity sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==
-
-lodash.debounce@^4.0.8:
- version "4.0.8"
- resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz"
- integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==
-
-lodash.escaperegexp@^4.1.2:
- version "4.1.2"
- resolved "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz"
- integrity sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==
-
-lodash.isfunction@^3.0.9:
- version "3.0.9"
- resolved "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz"
- integrity sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==
-
-lodash.ismatch@^4.4.0:
- version "4.4.0"
- resolved "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz"
- integrity sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==
-
-lodash.isplainobject@^4.0.6:
- version "4.0.6"
- resolved "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz"
- integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==
-
-lodash.isstring@^4.0.1:
- version "4.0.1"
- resolved "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz"
- integrity sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==
-
-lodash.kebabcase@^4.1.1:
- version "4.1.1"
- resolved "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz"
- integrity sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==
-
-lodash.merge@^4.6.2:
- version "4.6.2"
- resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz"
- integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
-
-lodash.mergewith@^4.6.2:
- version "4.6.2"
- resolved "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz"
- integrity sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==
-
-lodash.snakecase@^4.1.1:
- version "4.1.1"
- resolved "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz"
- integrity sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==
-
-lodash.startcase@^4.4.0:
- version "4.4.0"
- resolved "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz"
- integrity sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==
-
-lodash.throttle@^4.1.1:
- version "4.1.1"
- resolved "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz"
- integrity sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==
-
-lodash.uniq@^4.5.0:
- version "4.5.0"
- resolved "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz"
- integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==
-
-lodash.uniqby@^4.7.0:
- version "4.7.0"
- resolved "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz"
- integrity sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==
-
-lodash.upperfirst@^4.3.1:
- version "4.3.1"
- resolved "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz"
- integrity sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==
-
-lodash@^4.17.15, lodash@^4.17.21:
- version "4.18.1"
- resolved "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz"
- integrity sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==
-
-lodash@4.17.21:
- version "4.17.21"
- resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
- integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
-
-log-symbols@^4.1.0:
- version "4.1.0"
- resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz"
- integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==
- dependencies:
- chalk "^4.1.0"
- is-unicode-supported "^0.1.0"
-
-log-symbols@^5.1.0:
- version "5.1.0"
- resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-5.1.0.tgz"
- integrity sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==
- dependencies:
- chalk "^5.0.0"
- is-unicode-supported "^1.1.0"
-
-loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0:
- version "1.4.0"
- resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz"
- integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
- dependencies:
- js-tokens "^3.0.0 || ^4.0.0"
-
-lowercase-keys@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz"
- integrity sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==
-
-lru-cache@^5.1.1:
- version "5.1.1"
- resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz"
- integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
- dependencies:
- yallist "^3.0.2"
-
-lru-cache@^6.0.0:
- version "6.0.0"
- resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz"
- integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
- dependencies:
- yallist "^4.0.0"
-
-lru-cache@^7.14.1:
- version "7.18.3"
- resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz"
- integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==
-
-macos-release@^3.1.0:
- version "3.4.0"
- resolved "https://registry.npmjs.org/macos-release/-/macos-release-3.4.0.tgz"
- integrity sha512-wpGPwyg/xrSp4H4Db4xYSeAr6+cFQGHfspHzDUdYxswDnUW0L5Ov63UuJiSr8NMSpyaChO4u1n0MXUvVPtrN6A==
-
-make-dir@^2.0.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz"
- integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==
- dependencies:
- pify "^4.0.1"
- semver "^5.6.0"
-
-make-dir@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz"
- integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==
- dependencies:
- pify "^4.0.1"
- semver "^5.6.0"
-
-make-dir@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz"
- integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==
- dependencies:
- semver "^7.5.3"
-
-make-error@^1.1.1:
- version "1.3.6"
- resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz"
- integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==
-
-makeerror@1.0.12:
- version "1.0.12"
- resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz"
- integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==
- dependencies:
- tmpl "1.0.5"
-
-map-obj@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz"
- integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==
-
-map-obj@^4.0.0:
- version "4.3.0"
- resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz"
- integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==
-
-marky@^1.2.2:
- version "1.3.0"
- resolved "https://registry.npmjs.org/marky/-/marky-1.3.0.tgz"
- integrity sha512-ocnPZQLNpvbedwTy9kNrQEsknEfgvcLMvOtz3sFeWApDq1MXH1TqkCIx58xlpESsfwQOnuBO9beyQuNGzVvuhQ==
-
-math-intrinsics@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz"
- integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==
-
-memoize-one@^5.0.0:
- version "5.2.1"
- resolved "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz"
- integrity sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==
-
-meow@^8.0.0, meow@^8.1.2:
- version "8.1.2"
- resolved "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz"
- integrity sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==
- dependencies:
- "@types/minimist" "^1.2.0"
- camelcase-keys "^6.2.2"
- decamelize-keys "^1.1.0"
- hard-rejection "^2.1.0"
- minimist-options "4.1.0"
- normalize-package-data "^3.0.0"
- read-pkg-up "^7.0.1"
- redent "^3.0.0"
- trim-newlines "^3.0.0"
- type-fest "^0.18.0"
- yargs-parser "^20.2.3"
-
-merge-stream@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz"
- integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
-
-merge2@^1.3.0, merge2@^1.4.1:
- version "1.4.1"
- resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz"
- integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
-
-metro-babel-transformer@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.81.5.tgz"
- integrity sha512-oKCQuajU5srm+ZdDcFg86pG/U8hkSjBlkyFjz380SZ4TTIiI5F+OQB830i53D8hmqmcosa4wR/pnKv8y4Q3dLw==
- dependencies:
- "@babel/core" "^7.25.2"
- flow-enums-runtime "^0.0.6"
- hermes-parser "0.25.1"
- nullthrows "^1.1.1"
-
-metro-cache-key@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.81.5.tgz"
- integrity sha512-lGWnGVm1UwO8faRZ+LXQUesZSmP1LOg14OVR+KNPBip8kbMECbQJ8c10nGesw28uQT7AE0lwQThZPXlxDyCLKQ==
- dependencies:
- flow-enums-runtime "^0.0.6"
-
-metro-cache@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-cache/-/metro-cache-0.81.5.tgz"
- integrity sha512-wOsXuEgmZMZ5DMPoz1pEDerjJ11AuMy9JifH4yNW7NmWS0ghCRqvDxk13LsElzLshey8C+my/tmXauXZ3OqZgg==
- dependencies:
- exponential-backoff "^3.1.1"
- flow-enums-runtime "^0.0.6"
- metro-core "0.81.5"
-
-metro-config@^0.81.0, metro-config@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-config/-/metro-config-0.81.5.tgz"
- integrity sha512-oDRAzUvj6RNRxratFdcVAqtAsg+T3qcKrGdqGZFUdwzlFJdHGR9Z413sW583uD2ynsuOjA2QB6US8FdwiBdNKg==
- dependencies:
- connect "^3.6.5"
- cosmiconfig "^5.0.5"
- flow-enums-runtime "^0.0.6"
- jest-validate "^29.7.0"
- metro "0.81.5"
- metro-cache "0.81.5"
- metro-core "0.81.5"
- metro-runtime "0.81.5"
-
-metro-core@^0.81.0, metro-core@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-core/-/metro-core-0.81.5.tgz"
- integrity sha512-+2R0c8ByfV2N7CH5wpdIajCWa8escUFd8TukfoXyBq/vb6yTCsznoA25FhNXJ+MC/cz1L447Zj3vdUfCXIZBwg==
- dependencies:
- flow-enums-runtime "^0.0.6"
- lodash.throttle "^4.1.1"
- metro-resolver "0.81.5"
-
-metro-file-map@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.81.5.tgz"
- integrity sha512-mW1PKyiO3qZvjeeVjj1brhkmIotObA3/9jdbY1fQQYvEWM6Ml7bN/oJCRDGn2+bJRlG+J8pwyJ+DgdrM4BsKyg==
- dependencies:
- debug "^2.2.0"
- fb-watchman "^2.0.0"
- flow-enums-runtime "^0.0.6"
- graceful-fs "^4.2.4"
- invariant "^2.2.4"
- jest-worker "^29.7.0"
- micromatch "^4.0.4"
- nullthrows "^1.1.1"
- walker "^1.0.7"
-
-metro-minify-terser@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.81.5.tgz"
- integrity sha512-/mn4AxjANnsSS3/Bb+zA1G5yIS5xygbbz/OuPaJYs0CPcZCaWt66D+65j4Ft/nJkffUxcwE9mk4ubpkl3rjgtw==
- dependencies:
- flow-enums-runtime "^0.0.6"
- terser "^5.15.0"
-
-metro-resolver@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.81.5.tgz"
- integrity sha512-6BX8Nq3g3go3FxcyXkVbWe7IgctjDTk6D9flq+P201DfHHQ28J+DWFpVelFcrNTn4tIfbP/Bw7u/0g2BGmeXfQ==
- dependencies:
- flow-enums-runtime "^0.0.6"
-
-metro-runtime@^0.81.0, metro-runtime@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.81.5.tgz"
- integrity sha512-M/Gf71ictUKP9+77dV/y8XlAWg7xl76uhU7ggYFUwEdOHHWPG6gLBr1iiK0BmTjPFH8yRo/xyqMli4s3oGorPQ==
- dependencies:
- "@babel/runtime" "^7.25.0"
- flow-enums-runtime "^0.0.6"
-
-metro-source-map@^0.81.0, metro-source-map@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.81.5.tgz"
- integrity sha512-Jz+CjvCKLNbJZYJTBeN3Kq9kIJf6b61MoLBdaOQZJ5Ajhw6Pf95Nn21XwA8BwfUYgajsi6IXsp/dTZsYJbN00Q==
- dependencies:
- "@babel/traverse" "^7.25.3"
- "@babel/traverse--for-generate-function-map" "npm:@babel/traverse@^7.25.3"
- "@babel/types" "^7.25.2"
- flow-enums-runtime "^0.0.6"
- invariant "^2.2.4"
- metro-symbolicate "0.81.5"
- nullthrows "^1.1.1"
- ob1 "0.81.5"
- source-map "^0.5.6"
- vlq "^1.0.0"
-
-metro-symbolicate@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.81.5.tgz"
- integrity sha512-X3HV3n3D6FuTE11UWFICqHbFMdTavfO48nXsSpnNGFkUZBexffu0Xd+fYKp+DJLNaQr3S+lAs8q9CgtDTlRRuA==
- dependencies:
- flow-enums-runtime "^0.0.6"
- invariant "^2.2.4"
- metro-source-map "0.81.5"
- nullthrows "^1.1.1"
- source-map "^0.5.6"
- vlq "^1.0.0"
-
-metro-transform-plugins@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.81.5.tgz"
- integrity sha512-MmHhVx/1dJC94FN7m3oHgv5uOjKH8EX8pBeu1pnPMxbJrx6ZuIejO0k84zTSaQTZ8RxX1wqwzWBpXAWPjEX8mA==
- dependencies:
- "@babel/core" "^7.25.2"
- "@babel/generator" "^7.25.0"
- "@babel/template" "^7.25.0"
- "@babel/traverse" "^7.25.3"
- flow-enums-runtime "^0.0.6"
- nullthrows "^1.1.1"
-
-metro-transform-worker@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.81.5.tgz"
- integrity sha512-lUFyWVHa7lZFRSLJEv+m4jH8WrR5gU7VIjUlg4XmxQfV8ngY4V10ARKynLhMYPeQGl7Qvf+Ayg0eCZ272YZ4Mg==
- dependencies:
- "@babel/core" "^7.25.2"
- "@babel/generator" "^7.25.0"
- "@babel/parser" "^7.25.3"
- "@babel/types" "^7.25.2"
- flow-enums-runtime "^0.0.6"
- metro "0.81.5"
- metro-babel-transformer "0.81.5"
- metro-cache "0.81.5"
- metro-cache-key "0.81.5"
- metro-minify-terser "0.81.5"
- metro-source-map "0.81.5"
- metro-transform-plugins "0.81.5"
- nullthrows "^1.1.1"
-
-metro@^0.81.0, metro@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/metro/-/metro-0.81.5.tgz"
- integrity sha512-YpFF0DDDpDVygeca2mAn7K0+us+XKmiGk4rIYMz/CRdjFoCGqAei/IQSpV0UrGfQbToSugpMQeQJveaWSH88Hg==
- dependencies:
- "@babel/code-frame" "^7.24.7"
- "@babel/core" "^7.25.2"
- "@babel/generator" "^7.25.0"
- "@babel/parser" "^7.25.3"
- "@babel/template" "^7.25.0"
- "@babel/traverse" "^7.25.3"
- "@babel/types" "^7.25.2"
- accepts "^1.3.7"
- chalk "^4.0.0"
- ci-info "^2.0.0"
- connect "^3.6.5"
- debug "^2.2.0"
- error-stack-parser "^2.0.6"
- flow-enums-runtime "^0.0.6"
- graceful-fs "^4.2.4"
- hermes-parser "0.25.1"
- image-size "^1.0.2"
- invariant "^2.2.4"
- jest-worker "^29.7.0"
- jsc-safe-url "^0.2.2"
- lodash.throttle "^4.1.1"
- metro-babel-transformer "0.81.5"
- metro-cache "0.81.5"
- metro-cache-key "0.81.5"
- metro-config "0.81.5"
- metro-core "0.81.5"
- metro-file-map "0.81.5"
- metro-resolver "0.81.5"
- metro-runtime "0.81.5"
- metro-source-map "0.81.5"
- metro-symbolicate "0.81.5"
- metro-transform-plugins "0.81.5"
- metro-transform-worker "0.81.5"
- mime-types "^2.1.27"
- nullthrows "^1.1.1"
- serialize-error "^2.1.0"
- source-map "^0.5.6"
- throat "^5.0.0"
- ws "^7.5.10"
- yargs "^17.6.2"
-
-micromatch@^4.0.4, micromatch@^4.0.8:
- version "4.0.8"
- resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz"
- integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==
- dependencies:
- braces "^3.0.3"
- picomatch "^2.3.1"
-
-mime-db@1.52.0:
- version "1.52.0"
- resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz"
- integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
-
-mime-types@^2.1.27, mime-types@~2.1.34, mime-types@2.1.35:
- version "2.1.35"
- resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz"
- integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
- dependencies:
- mime-db "1.52.0"
-
-mime@1.6.0:
- version "1.6.0"
- resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz"
- integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
-
-mimic-fn@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz"
- integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
-
-mimic-fn@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz"
- integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==
-
-mimic-response@^3.1.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz"
- integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==
-
-mimic-response@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz"
- integrity sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==
-
-min-indent@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz"
- integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==
-
-minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2:
- version "3.1.5"
- resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz"
- integrity sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==
- dependencies:
- brace-expansion "^1.1.7"
-
-minimatch@^5.0.1:
- version "5.1.9"
- resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz"
- integrity sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==
- dependencies:
- brace-expansion "^2.0.1"
-
-minimist-options@4.1.0:
- version "4.1.0"
- resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz"
- integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==
- dependencies:
- arrify "^1.0.1"
- is-plain-obj "^1.1.0"
- kind-of "^6.0.3"
-
-minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6:
- version "1.2.8"
- resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz"
- integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
-
-mkdirp@^0.5.1:
- version "0.5.6"
- resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz"
- integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==
- dependencies:
- minimist "^1.2.6"
-
-mkdirp@^1.0.4:
- version "1.0.4"
- resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz"
- integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
-
-modify-values@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz"
- integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==
-
-ms@^2.1.3, ms@2.1.3:
- version "2.1.3"
- resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz"
- integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
-
-ms@2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
- integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==
-
-mute-stream@1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz"
- integrity sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==
-
-natural-compare-lite@^1.4.0:
- version "1.4.0"
- resolved "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz"
- integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==
-
-natural-compare@^1.4.0:
- version "1.4.0"
- resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz"
- integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
-
-negotiator@0.6.3:
- version "0.6.3"
- resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz"
- integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==
-
-neo-async@^2.5.0, neo-async@^2.6.2:
- version "2.6.2"
- resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz"
- integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
-
-netmask@^2.0.2:
- version "2.1.1"
- resolved "https://registry.npmjs.org/netmask/-/netmask-2.1.1.tgz"
- integrity sha512-eonl3sLUha+S1GzTPxychyhnUzKyeQkZ7jLjKrBagJgPla13F+uQ71HgpFefyHgqrjEbCPkDArxYsjY8/+gLKA==
-
-new-github-release-url@2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/new-github-release-url/-/new-github-release-url-2.0.0.tgz"
- integrity sha512-NHDDGYudnvRutt/VhKFlX26IotXe1w0cmkDm6JGquh5bz/bDTw0LufSmH/GxTjEdpHEO+bVKFTwdrcGa/9XlKQ==
- dependencies:
- type-fest "^2.5.1"
-
-node-dir@^0.1.17:
- version "0.1.17"
- resolved "https://registry.npmjs.org/node-dir/-/node-dir-0.1.17.tgz"
- integrity sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==
- dependencies:
- minimatch "^3.0.2"
-
-node-domexception@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz"
- integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==
-
-node-exports-info@^1.6.0:
- version "1.6.0"
- resolved "https://registry.npmjs.org/node-exports-info/-/node-exports-info-1.6.0.tgz"
- integrity sha512-pyFS63ptit/P5WqUkt+UUfe+4oevH+bFeIiPPdfb0pFeYEu/1ELnJu5l+5EcTKYL5M7zaAa7S8ddywgXypqKCw==
- dependencies:
- array.prototype.flatmap "^1.3.3"
- es-errors "^1.3.0"
- object.entries "^1.1.9"
- semver "^6.3.1"
-
-node-fetch@^2.2.0, node-fetch@^2.6.7:
- version "2.7.0"
- resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz"
- integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==
- dependencies:
- whatwg-url "^5.0.0"
-
-node-fetch@3.3.1:
- version "3.3.1"
- resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.1.tgz"
- integrity sha512-cRVc/kyto/7E5shrWca1Wsea4y6tL9iYJE5FBCius3JQfb/4P4I295PfhgbJQBLTx6lATE4z+wK0rPM4VS2uow==
- dependencies:
- data-uri-to-buffer "^4.0.0"
- fetch-blob "^3.1.4"
- formdata-polyfill "^4.0.10"
-
-node-forge@^1:
- version "1.4.0"
- resolved "https://registry.npmjs.org/node-forge/-/node-forge-1.4.0.tgz"
- integrity sha512-LarFH0+6VfriEhqMMcLX2F7SwSXeWwnEAJEsYm5QKWchiVYVvJyV9v7UDvUv+w5HO23ZpQTXDv/GxdDdMyOuoQ==
-
-node-int64@^0.4.0:
- version "0.4.0"
- resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz"
- integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==
-
-node-releases@^2.0.36:
- version "2.0.38"
- resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.38.tgz"
- integrity sha512-3qT/88Y3FbH/Kx4szpQQ4HzUbVrHPKTLVpVocKiLfoYvw9XSGOX2FmD2d6DrXbVYyAQTF2HeF6My8jmzx7/CRw==
-
-normalize-package-data@^2.3.2:
- version "2.5.0"
- resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz"
- integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
- dependencies:
- hosted-git-info "^2.1.4"
- resolve "^1.10.0"
- semver "2 || 3 || 4 || 5"
- validate-npm-package-license "^3.0.1"
-
-normalize-package-data@^2.5.0:
- version "2.5.0"
- resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz"
- integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
- dependencies:
- hosted-git-info "^2.1.4"
- resolve "^1.10.0"
- semver "2 || 3 || 4 || 5"
- validate-npm-package-license "^3.0.1"
-
-normalize-package-data@^3.0.0:
- version "3.0.3"
- resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz"
- integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==
- dependencies:
- hosted-git-info "^4.0.1"
- is-core-module "^2.5.0"
- semver "^7.3.4"
- validate-npm-package-license "^3.0.1"
-
-normalize-path@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz"
- integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
-
-normalize-url@^8.0.0:
- version "8.1.1"
- resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-8.1.1.tgz"
- integrity sha512-JYc0DPlpGWB40kH5g07gGTrYuMqV653k3uBKY6uITPWds3M0ov3GaWGp9lbE3Bzngx8+XkfzgvASb9vk9JDFXQ==
-
-npm-run-path@^4.0.0, npm-run-path@^4.0.1:
- version "4.0.1"
- resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz"
- integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
- dependencies:
- path-key "^3.0.0"
-
-npm-run-path@^5.1.0:
- version "5.3.0"
- resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz"
- integrity sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==
- dependencies:
- path-key "^4.0.0"
-
-nullthrows@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz"
- integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==
-
-ob1@0.81.5:
- version "0.81.5"
- resolved "https://registry.npmjs.org/ob1/-/ob1-0.81.5.tgz"
- integrity sha512-iNpbeXPLmaiT9I5g16gFFFjsF3sGxLpYG2EGP3dfFB4z+l9X60mp/yRzStHhMtuNt8qmf7Ww80nOPQHngHhnIQ==
- dependencies:
- flow-enums-runtime "^0.0.6"
-
-object-assign@^4.1.1:
- version "4.1.1"
- resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz"
- integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
-
-object-inspect@^1.13.3, object-inspect@^1.13.4:
- version "1.13.4"
- resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz"
- integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==
-
-object-keys@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz"
- integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
-
-object.assign@^4.1.4, object.assign@^4.1.7:
- version "4.1.7"
- resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz"
- integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.3"
- define-properties "^1.2.1"
- es-object-atoms "^1.0.0"
- has-symbols "^1.1.0"
- object-keys "^1.1.1"
-
-object.entries@^1.1.9:
- version "1.1.9"
- resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz"
- integrity sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.4"
- define-properties "^1.2.1"
- es-object-atoms "^1.1.1"
-
-object.fromentries@^2.0.8:
- version "2.0.8"
- resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz"
- integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==
- dependencies:
- call-bind "^1.0.7"
- define-properties "^1.2.1"
- es-abstract "^1.23.2"
- es-object-atoms "^1.0.0"
-
-object.values@^1.1.6, object.values@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz"
- integrity sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.3"
- define-properties "^1.2.1"
- es-object-atoms "^1.0.0"
-
-on-finished@~2.3.0:
- version "2.3.0"
- resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz"
- integrity sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==
- dependencies:
- ee-first "1.1.1"
-
-on-finished@~2.4.1:
- version "2.4.1"
- resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz"
- integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==
- dependencies:
- ee-first "1.1.1"
-
-once@^1.3.0, once@^1.3.1, once@^1.4.0:
- version "1.4.0"
- resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
- integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
- dependencies:
- wrappy "1"
-
-onetime@^5.1.0, onetime@^5.1.2:
- version "5.1.2"
- resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz"
- integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
- dependencies:
- mimic-fn "^2.1.0"
-
-onetime@^6.0.0:
- version "6.0.0"
- resolved "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz"
- integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==
- dependencies:
- mimic-fn "^4.0.0"
-
-open@^7.0.3:
- version "7.4.2"
- resolved "https://registry.npmjs.org/open/-/open-7.4.2.tgz"
- integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==
- dependencies:
- is-docker "^2.0.0"
- is-wsl "^2.1.1"
-
-open@9.1.0:
- version "9.1.0"
- resolved "https://registry.npmjs.org/open/-/open-9.1.0.tgz"
- integrity sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==
- dependencies:
- default-browser "^4.0.0"
- define-lazy-prop "^3.0.0"
- is-inside-container "^1.0.0"
- is-wsl "^2.2.0"
-
-optionator@^0.8.1:
- version "0.8.3"
- resolved "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz"
- 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.3:
- version "0.9.4"
- resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz"
- integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==
- 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.5"
-
-ora@^5.4.1:
- version "5.4.1"
- resolved "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz"
- integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==
- dependencies:
- bl "^4.1.0"
- chalk "^4.1.0"
- cli-cursor "^3.1.0"
- cli-spinners "^2.5.0"
- is-interactive "^1.0.0"
- is-unicode-supported "^0.1.0"
- log-symbols "^4.1.0"
- strip-ansi "^6.0.0"
- wcwidth "^1.0.1"
-
-ora@6.3.1:
- version "6.3.1"
- resolved "https://registry.npmjs.org/ora/-/ora-6.3.1.tgz"
- integrity sha512-ERAyNnZOfqM+Ao3RAvIXkYh5joP220yf59gVe2X/cI6SiCxIdi4c9HZKZD8R6q/RDXEje1THBju6iExiSsgJaQ==
- dependencies:
- chalk "^5.0.0"
- cli-cursor "^4.0.0"
- cli-spinners "^2.6.1"
- is-interactive "^2.0.0"
- is-unicode-supported "^1.1.0"
- log-symbols "^5.1.0"
- stdin-discarder "^0.1.0"
- strip-ansi "^7.0.1"
- wcwidth "^1.0.1"
-
-os-name@5.1.0:
- version "5.1.0"
- resolved "https://registry.npmjs.org/os-name/-/os-name-5.1.0.tgz"
- integrity sha512-YEIoAnM6zFmzw3PQ201gCVCIWbXNyKObGlVvpAVvraAeOHnlYVKFssbA/riRX5R40WA6kKrZ7Dr7dWzO3nKSeQ==
- dependencies:
- macos-release "^3.1.0"
- windows-release "^5.0.1"
-
-os-tmpdir@~1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz"
- integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==
-
-own-keys@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz"
- integrity sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==
- dependencies:
- get-intrinsic "^1.2.6"
- object-keys "^1.1.1"
- safe-push-apply "^1.0.0"
-
-p-cancelable@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz"
- integrity sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==
-
-p-limit@^1.1.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz"
- integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==
- dependencies:
- p-try "^1.0.0"
-
-p-limit@^2.0.0:
- version "2.3.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz"
- integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
- dependencies:
- p-try "^2.0.0"
-
-p-limit@^2.2.0:
- version "2.3.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz"
- integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
- dependencies:
- p-try "^2.0.0"
-
-p-limit@^3.0.2, p-limit@^3.1.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz"
- integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
- dependencies:
- yocto-queue "^0.1.0"
-
-p-locate@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz"
- integrity sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==
- dependencies:
- p-limit "^1.1.0"
-
-p-locate@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz"
- integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==
- dependencies:
- p-limit "^2.0.0"
-
-p-locate@^4.1.0:
- version "4.1.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz"
- integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
- dependencies:
- p-limit "^2.2.0"
-
-p-locate@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz"
- integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==
- dependencies:
- p-limit "^3.0.2"
-
-p-map@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz"
- integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==
- dependencies:
- aggregate-error "^3.0.0"
-
-p-try@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz"
- integrity sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==
-
-p-try@^2.0.0:
- version "2.2.0"
- resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz"
- integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
-
-pac-proxy-agent@^6.0.3:
- version "6.0.4"
- resolved "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-6.0.4.tgz"
- integrity sha512-FbJYeusBOZNe6bmrC2/+r/HljwExryon16lNKEU82gWiwIPMCEktUPSEAcTkO9K3jd/YPGuX/azZel1ltmo6nQ==
- dependencies:
- agent-base "^7.0.2"
- debug "^4.3.4"
- get-uri "^6.0.1"
- http-proxy-agent "^7.0.0"
- https-proxy-agent "^7.0.0"
- pac-resolver "^6.0.1"
- socks-proxy-agent "^8.0.1"
-
-pac-resolver@^6.0.1:
- version "6.0.2"
- resolved "https://registry.npmjs.org/pac-resolver/-/pac-resolver-6.0.2.tgz"
- integrity sha512-EQpuJ2ifOjpZY5sg1Q1ZeAxvtLwR7Mj3RgY8cysPGbsRu3RBXyJFWxnMus9PScjxya/0LzvVDxNh/gl0eXBU4w==
- dependencies:
- degenerator "^4.0.4"
- ip "^1.1.8"
- netmask "^2.0.2"
-
-package-json@^8.1.0:
- version "8.1.1"
- resolved "https://registry.npmjs.org/package-json/-/package-json-8.1.1.tgz"
- integrity sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==
- dependencies:
- got "^12.1.0"
- registry-auth-token "^5.0.1"
- registry-url "^6.0.0"
- semver "^7.3.7"
-
-parent-module@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz"
- integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
- dependencies:
- callsites "^3.0.0"
-
-parse-json@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz"
- integrity sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==
- dependencies:
- error-ex "^1.3.1"
- json-parse-better-errors "^1.0.1"
-
-parse-json@^5.0.0, parse-json@^5.2.0:
- version "5.2.0"
- resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz"
- 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"
-
-parse-path@^7.0.0:
- version "7.1.0"
- resolved "https://registry.npmjs.org/parse-path/-/parse-path-7.1.0.tgz"
- integrity sha512-EuCycjZtfPcjWk7KTksnJ5xPMvWGA/6i4zrLYhRG0hGvC3GPU/jGUj3Cy+ZR0v30duV3e23R95T1lE2+lsndSw==
- dependencies:
- protocols "^2.0.0"
-
-parse-url@^8.1.0:
- version "8.1.0"
- resolved "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz"
- integrity sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==
- dependencies:
- parse-path "^7.0.0"
-
-parseurl@~1.3.3:
- version "1.3.3"
- resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz"
- integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==
-
-path-exists@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz"
- integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==
-
-path-exists@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz"
- integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
-
-path-is-absolute@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz"
- integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
-
-path-key@^3.0.0, path-key@^3.1.0:
- version "3.1.1"
- resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz"
- integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
-
-path-key@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz"
- integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==
-
-path-parse@^1.0.7:
- version "1.0.7"
- resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz"
- integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
-
-path-type@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz"
- integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==
- dependencies:
- pify "^3.0.0"
-
-path-type@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz"
- integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
-
-picocolors@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz"
- integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==
-
-picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1:
- version "2.3.2"
- resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz"
- integrity sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==
-
-pify@^2.3.0:
- version "2.3.0"
- resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz"
- integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==
-
-pify@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz"
- integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==
-
-pify@^4.0.1:
- version "4.0.1"
- resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz"
- integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==
-
-pirates@^4.0.4, pirates@^4.0.6:
- version "4.0.7"
- resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz"
- integrity sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==
-
-pkg-dir@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz"
- integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==
- dependencies:
- find-up "^3.0.0"
-
-pkg-dir@^4.2.0:
- version "4.2.0"
- resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz"
- integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
- dependencies:
- find-up "^4.0.0"
-
-pod-install@^0.1.0:
- version "0.1.39"
- resolved "https://registry.npmjs.org/pod-install/-/pod-install-0.1.39.tgz"
- integrity sha512-0kVvdLYe0CtfJEr+ISvTMxAEB0UF4JMRToPjuu9xAAq1mEqA2Ql5u7uLWX1m45BMM+7NfU4LnBbnfNjmQE9GCw==
-
-possible-typed-array-names@^1.0.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz"
- integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==
-
-prelude-ls@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz"
- integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
-
-prelude-ls@~1.1.2:
- version "1.1.2"
- resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz"
- integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==
-
-prettier-linter-helpers@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.1.tgz"
- integrity sha512-SxToR7P8Y2lWmv/kTzVLC1t/GDI2WGjMwNhLLE9qtH8Q13C+aEmuRlzDst4Up4s0Wc8sF2M+J57iB3cMLqftfg==
- dependencies:
- fast-diff "^1.1.2"
-
-prettier@^2.0.5:
- version "2.8.8"
- resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz"
- integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==
-
-pretty-format@^29.0.0, pretty-format@^29.7.0:
- version "29.7.0"
- resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz"
- integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==
- dependencies:
- "@jest/schemas" "^29.6.3"
- ansi-styles "^5.0.0"
- react-is "^18.0.0"
-
-process-nextick-args@~2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz"
- integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
-
-promise.allsettled@1.0.6:
- version "1.0.6"
- resolved "https://registry.npmjs.org/promise.allsettled/-/promise.allsettled-1.0.6.tgz"
- integrity sha512-22wJUOD3zswWFqgwjNHa1965LvqTX87WPu/lreY2KSd7SVcERfuZ4GfUaOnJNnvtoIv2yXT/W00YIGMetXtFXg==
- dependencies:
- array.prototype.map "^1.0.5"
- call-bind "^1.0.2"
- define-properties "^1.1.4"
- es-abstract "^1.20.4"
- get-intrinsic "^1.1.3"
- iterate-value "^1.0.2"
-
-promise@^8.3.0:
- version "8.3.0"
- resolved "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz"
- integrity sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==
- dependencies:
- asap "~2.0.6"
-
-prompts@^2.0.1, prompts@^2.4.2:
- version "2.4.2"
- resolved "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz"
- integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==
- dependencies:
- kleur "^3.0.3"
- sisteransi "^1.0.5"
-
-prop-types@^15.8.1:
- version "15.8.1"
- resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz"
- integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==
- dependencies:
- loose-envify "^1.4.0"
- object-assign "^4.1.1"
- react-is "^16.13.1"
-
-proto-list@~1.2.1:
- version "1.2.4"
- resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz"
- integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==
-
-protocols@^2.0.0, protocols@^2.0.1:
- version "2.0.2"
- resolved "https://registry.npmjs.org/protocols/-/protocols-2.0.2.tgz"
- integrity sha512-hHVTzba3wboROl0/aWRRG9dMytgH6ow//STBZh43l/wQgmMhYhOFi0EHWAPtoCz9IAUymsyP0TSBHkhgMEGNnQ==
-
-proxy-agent@6.2.1:
- version "6.2.1"
- resolved "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.2.1.tgz"
- integrity sha512-OIbBKlRAT+ycCm6wAYIzMwPejzRtjy8F3QiDX0eKOA3e4pe3U9F/IvzcHP42bmgQxVv97juG+J8/gx+JIeCX/Q==
- dependencies:
- agent-base "^7.0.2"
- debug "^4.3.4"
- http-proxy-agent "^7.0.0"
- https-proxy-agent "^7.0.0"
- lru-cache "^7.14.1"
- pac-proxy-agent "^6.0.3"
- proxy-from-env "^1.1.0"
- socks-proxy-agent "^8.0.1"
-
-proxy-from-env@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz"
- integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
-
-pump@^3.0.0:
- version "3.0.4"
- resolved "https://registry.npmjs.org/pump/-/pump-3.0.4.tgz"
- integrity sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==
- dependencies:
- end-of-stream "^1.1.0"
- once "^1.3.1"
-
-punycode@^2.1.0:
- version "2.3.1"
- resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz"
- integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
-
-pupa@^3.1.0:
- version "3.3.0"
- resolved "https://registry.npmjs.org/pupa/-/pupa-3.3.0.tgz"
- integrity sha512-LjgDO2zPtoXP2wJpDjZrGdojii1uqO0cnwKoIoUzkfS98HDmbeiGmYiXo3lXeFlq2xvne1QFQhwYXSUCLKtEuA==
- dependencies:
- escape-goat "^4.0.0"
-
-pure-rand@^6.0.0:
- version "6.1.0"
- resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz"
- integrity sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==
-
-q@^1.5.1:
- version "1.5.1"
- resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz"
- integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==
-
-queue-microtask@^1.2.2:
- version "1.2.3"
- resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz"
- integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
-
-queue@6.0.2:
- version "6.0.2"
- resolved "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz"
- integrity sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==
- dependencies:
- inherits "~2.0.3"
-
-quick-lru@^4.0.1:
- version "4.0.1"
- resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz"
- integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==
-
-quick-lru@^5.1.1:
- version "5.1.1"
- resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz"
- integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==
-
-range-parser@~1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz"
- integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
-
-rc@1.2.8:
- version "1.2.8"
- resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz"
- integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
- dependencies:
- deep-extend "^0.6.0"
- ini "~1.3.0"
- minimist "^1.2.0"
- strip-json-comments "~2.0.1"
-
-react-devtools-core@^5.3.1:
- version "5.3.2"
- resolved "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-5.3.2.tgz"
- integrity sha512-crr9HkVrDiJ0A4zot89oS0Cgv0Oa4OG1Em4jit3P3ZxZSKPMYyMjfwMqgcJna9o625g8oN87rBm8SWWrSTBZxg==
- dependencies:
- shell-quote "^1.6.1"
- ws "^7"
-
-"react-is@^16.12.0 || ^17.0.0 || ^18.0.0", react-is@^18.0.0, react-is@^18.2.0:
- version "18.3.1"
- resolved "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz"
- integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==
-
-react-is@^16.13.1:
- version "16.13.1"
- resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz"
- integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
-
-react-native-builder-bob@0.40.13:
- version "0.40.13"
- resolved "https://registry.npmjs.org/react-native-builder-bob/-/react-native-builder-bob-0.40.13.tgz"
- integrity sha512-CtucAJ5PMLH3GPNlg3TB5rb3UPot6VjkD9T8Uhz/AAWit/DmWll0zG33ZZeka69E2569saAjShDz3IKAoYGFtA==
- dependencies:
- "@babel/core" "^7.25.2"
- "@babel/plugin-transform-flow-strip-types" "^7.26.5"
- "@babel/plugin-transform-strict-mode" "^7.24.7"
- "@babel/preset-env" "^7.25.2"
- "@babel/preset-react" "^7.24.7"
- "@babel/preset-typescript" "^7.24.7"
- arktype "^2.1.15"
- babel-plugin-syntax-hermes-parser "^0.28.0"
- browserslist "^4.20.4"
- cross-spawn "^7.0.3"
- dedent "^0.7.0"
- del "^6.1.1"
- escape-string-regexp "^4.0.0"
- fs-extra "^10.1.0"
- glob "^8.0.3"
- is-git-dirty "^2.0.1"
- json5 "^2.2.1"
- kleur "^4.1.4"
- prompts "^2.4.2"
- react-native-monorepo-config "^0.1.8"
- which "^2.0.2"
- yargs "^17.5.1"
-
-react-native-monorepo-config@^0.1.8:
- version "0.1.10"
- resolved "https://registry.npmjs.org/react-native-monorepo-config/-/react-native-monorepo-config-0.1.10.tgz"
- integrity sha512-v0rlaLZiCUg95Mpw6xNRQce5k9yio0qscKjNQaPtFYMNL75YugS2UPUItIPLIRbZubK+s2/LRzBjX+mdyUgh4g==
- dependencies:
- escape-string-regexp "^5.0.0"
- fast-glob "^3.3.3"
-
-react-native@0.76.0:
- version "0.76.0"
- resolved "https://registry.npmjs.org/react-native/-/react-native-0.76.0.tgz"
- integrity sha512-isbLzmY7fhhLdN/oss4jlRHeDmEShuTYsp1Zq93UM0/JssQK4g+2Ub4mHdhxDFm2LN+0ryBgVJK1nO7l93cfsA==
- dependencies:
- "@jest/create-cache-key-function" "^29.6.3"
- "@react-native/assets-registry" "0.76.0"
- "@react-native/codegen" "0.76.0"
- "@react-native/community-cli-plugin" "0.76.0"
- "@react-native/gradle-plugin" "0.76.0"
- "@react-native/js-polyfills" "0.76.0"
- "@react-native/normalize-colors" "0.76.0"
- "@react-native/virtualized-lists" "0.76.0"
- abort-controller "^3.0.0"
- anser "^1.4.9"
- ansi-regex "^5.0.0"
- babel-jest "^29.7.0"
- babel-plugin-syntax-hermes-parser "^0.23.1"
- base64-js "^1.5.1"
- chalk "^4.0.0"
- commander "^12.0.0"
- event-target-shim "^5.0.1"
- flow-enums-runtime "^0.0.6"
- glob "^7.1.1"
- invariant "^2.2.4"
- jest-environment-node "^29.6.3"
- jsc-android "^250231.0.0"
- memoize-one "^5.0.0"
- metro-runtime "^0.81.0"
- metro-source-map "^0.81.0"
- mkdirp "^0.5.1"
- nullthrows "^1.1.1"
- pretty-format "^29.7.0"
- promise "^8.3.0"
- react-devtools-core "^5.3.1"
- react-refresh "^0.14.0"
- regenerator-runtime "^0.13.2"
- scheduler "0.24.0-canary-efb381bbf-20230505"
- semver "^7.1.3"
- stacktrace-parser "^0.1.10"
- whatwg-fetch "^3.0.0"
- ws "^6.2.3"
- yargs "^17.6.2"
-
-react-refresh@^0.14.0:
- version "0.14.2"
- resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz"
- integrity sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==
-
-react-shallow-renderer@^16.15.0:
- version "16.15.0"
- resolved "https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.15.0.tgz"
- integrity sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==
- dependencies:
- object-assign "^4.1.1"
- react-is "^16.12.0 || ^17.0.0 || ^18.0.0"
-
-react-test-renderer@18.2.0:
- version "18.2.0"
- resolved "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-18.2.0.tgz"
- integrity sha512-JWD+aQ0lh2gvh4NM3bBM42Kx+XybOxCpgYK7F8ugAlpaTSnWsX+39Z4XkOykGZAHrjwwTZT3x3KxswVWxHPUqA==
- dependencies:
- react-is "^18.2.0"
- react-shallow-renderer "^16.15.0"
- scheduler "^0.23.0"
-
-react@18.2.0:
- version "18.2.0"
- resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz"
- integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==
- dependencies:
- loose-envify "^1.1.0"
-
-read-pkg-up@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz"
- integrity sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==
- dependencies:
- find-up "^2.0.0"
- read-pkg "^3.0.0"
-
-read-pkg-up@^7.0.1:
- version "7.0.1"
- resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz"
- integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==
- dependencies:
- find-up "^4.1.0"
- read-pkg "^5.2.0"
- type-fest "^0.8.1"
-
-read-pkg@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz"
- integrity sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==
- dependencies:
- load-json-file "^4.0.0"
- normalize-package-data "^2.3.2"
- path-type "^3.0.0"
-
-read-pkg@^5.2.0:
- version "5.2.0"
- resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz"
- integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==
- dependencies:
- "@types/normalize-package-data" "^2.4.0"
- normalize-package-data "^2.5.0"
- parse-json "^5.0.0"
- type-fest "^0.6.0"
-
-readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.4.0, readable-stream@3:
- version "3.6.2"
- resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz"
- integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
- dependencies:
- inherits "^2.0.3"
- string_decoder "^1.1.1"
- util-deprecate "^1.0.1"
-
-readable-stream@~2.3.6:
- version "2.3.8"
- resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz"
- integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.3"
- isarray "~1.0.0"
- process-nextick-args "~2.0.0"
- safe-buffer "~5.1.1"
- string_decoder "~1.1.1"
- util-deprecate "~1.0.1"
-
-readline@^1.3.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/readline/-/readline-1.3.0.tgz"
- integrity sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==
-
-recast@^0.21.0:
- version "0.21.5"
- resolved "https://registry.npmjs.org/recast/-/recast-0.21.5.tgz"
- integrity sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==
- dependencies:
- ast-types "0.15.2"
- esprima "~4.0.0"
- source-map "~0.6.1"
- tslib "^2.0.1"
-
-rechoir@^0.6.2:
- version "0.6.2"
- resolved "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz"
- integrity sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==
- dependencies:
- resolve "^1.1.6"
-
-redent@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz"
- integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==
- dependencies:
- indent-string "^4.0.0"
- strip-indent "^3.0.0"
-
-reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.9:
- version "1.0.10"
- resolved "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz"
- integrity sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==
- dependencies:
- call-bind "^1.0.8"
- define-properties "^1.2.1"
- es-abstract "^1.23.9"
- es-errors "^1.3.0"
- es-object-atoms "^1.0.0"
- get-intrinsic "^1.2.7"
- get-proto "^1.0.1"
- which-builtin-type "^1.2.1"
-
-regenerate-unicode-properties@^10.2.2:
- version "10.2.2"
- resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.2.tgz"
- integrity sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==
- dependencies:
- regenerate "^1.4.2"
-
-regenerate@^1.4.2:
- version "1.4.2"
- resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz"
- integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
-
-regenerator-runtime@^0.13.2:
- version "0.13.11"
- resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz"
- integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
-
-regexp.prototype.flags@^1.5.3, regexp.prototype.flags@^1.5.4:
- version "1.5.4"
- resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz"
- integrity sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==
- dependencies:
- call-bind "^1.0.8"
- define-properties "^1.2.1"
- es-errors "^1.3.0"
- get-proto "^1.0.1"
- gopd "^1.2.0"
- set-function-name "^2.0.2"
-
-regexpu-core@^6.3.1:
- version "6.4.0"
- resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.4.0.tgz"
- integrity sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==
- dependencies:
- regenerate "^1.4.2"
- regenerate-unicode-properties "^10.2.2"
- regjsgen "^0.8.0"
- regjsparser "^0.13.0"
- unicode-match-property-ecmascript "^2.0.0"
- unicode-match-property-value-ecmascript "^2.2.1"
-
-registry-auth-token@^5.0.1:
- version "5.1.1"
- resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.1.1.tgz"
- integrity sha512-P7B4+jq8DeD2nMsAcdfaqHbssgHtZ7Z5+++a5ask90fvmJ8p5je4mOa+wzu+DB4vQ5tdJV/xywY+UnVFeQLV5Q==
- dependencies:
- "@pnpm/npm-conf" "^3.0.2"
-
-registry-url@^6.0.0:
- version "6.0.1"
- resolved "https://registry.npmjs.org/registry-url/-/registry-url-6.0.1.tgz"
- integrity sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==
- dependencies:
- rc "1.2.8"
-
-regjsgen@^0.8.0:
- version "0.8.0"
- resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz"
- integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==
-
-regjsparser@^0.13.0:
- version "0.13.1"
- resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.1.tgz"
- integrity sha512-dLsljMd9sqwRkby8zhO1gSg3PnJIBFid8f4CQj/sXx+7cKx+E7u0PKhZ+U4wmhx7EfmtvnA318oVaIkAB1lRJw==
- dependencies:
- jsesc "~3.1.0"
-
-release-it@^15.0.0:
- version "15.11.0"
- resolved "https://registry.npmjs.org/release-it/-/release-it-15.11.0.tgz"
- integrity sha512-lZwoGEnKYKwGnfxxlA7vtR7vvozPrOSsIgQaHO4bgQ5ARbG3IA6Dmo0IVusv6nR1KmnjH70QIeNAgsWs6Ji/tw==
- dependencies:
- "@iarna/toml" "2.2.5"
- "@octokit/rest" "19.0.11"
- async-retry "1.3.3"
- chalk "5.2.0"
- cosmiconfig "8.1.3"
- execa "7.1.1"
- git-url-parse "13.1.0"
- globby "13.1.4"
- got "12.6.1"
- inquirer "9.2.6"
- is-ci "3.0.1"
- issue-parser "6.0.0"
- lodash "4.17.21"
- mime-types "2.1.35"
- new-github-release-url "2.0.0"
- node-fetch "3.3.1"
- open "9.1.0"
- ora "6.3.1"
- os-name "5.1.0"
- promise.allsettled "1.0.6"
- proxy-agent "6.2.1"
- semver "7.5.1"
- shelljs "0.8.5"
- update-notifier "6.0.2"
- url-join "5.0.0"
- wildcard-match "5.1.2"
- yargs-parser "21.1.1"
-
-require-directory@^2.1.1:
- version "2.1.1"
- resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz"
- integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==
-
-require-from-string@^2.0.2:
- version "2.0.2"
- resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz"
- integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
-
-resolve-alpn@^1.2.0:
- version "1.2.1"
- resolved "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz"
- integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==
-
-resolve-cwd@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz"
- integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==
- dependencies:
- resolve-from "^5.0.0"
-
-resolve-from@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz"
- integrity sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==
-
-resolve-from@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz"
- integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
-
-resolve-from@^5.0.0, resolve-from@5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz"
- integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
-
-resolve-global@^1.0.0, resolve-global@1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz"
- integrity sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==
- dependencies:
- global-dirs "^0.1.1"
-
-resolve.exports@^2.0.0:
- version "2.0.3"
- resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz"
- integrity sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==
-
-resolve@^1.1.6, resolve@^1.10.0, resolve@^1.20.0, resolve@^1.22.11:
- version "1.22.12"
- resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz"
- integrity sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==
- dependencies:
- es-errors "^1.3.0"
- is-core-module "^2.16.1"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-resolve@^2.0.0-next.5:
- version "2.0.0-next.6"
- resolved "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.6.tgz"
- integrity sha512-3JmVl5hMGtJ3kMmB3zi3DL25KfkCEyy3Tw7Gmw7z5w8M9WlwoPFnIvwChzu1+cF3iaK3sp18hhPz8ANeimdJfA==
- dependencies:
- es-errors "^1.3.0"
- is-core-module "^2.16.1"
- node-exports-info "^1.6.0"
- object-keys "^1.1.1"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-responselike@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/responselike/-/responselike-3.0.0.tgz"
- integrity sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==
- dependencies:
- lowercase-keys "^3.0.0"
-
-restore-cursor@^3.1.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz"
- integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==
- dependencies:
- onetime "^5.1.0"
- signal-exit "^3.0.2"
-
-restore-cursor@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz"
- integrity sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==
- dependencies:
- onetime "^5.1.0"
- signal-exit "^3.0.2"
-
-retry@0.13.1:
- version "0.13.1"
- resolved "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz"
- integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==
-
-reusify@^1.0.4:
- version "1.1.0"
- resolved "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz"
- integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==
-
-rimraf@^3.0.2:
- version "3.0.2"
- resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz"
- integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
- dependencies:
- glob "^7.1.3"
-
-rimraf@~2.6.2:
- version "2.6.3"
- resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz"
- integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
- dependencies:
- glob "^7.1.3"
-
-run-applescript@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz"
- integrity sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==
- dependencies:
- execa "^5.0.0"
-
-run-async@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz"
- integrity sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==
-
-run-parallel@^1.1.9:
- version "1.2.0"
- resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz"
- integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
- dependencies:
- queue-microtask "^1.2.2"
-
-rxjs@^7.8.1:
- version "7.8.2"
- resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz"
- integrity sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==
- dependencies:
- tslib "^2.1.0"
-
-safe-array-concat@^1.1.3:
- version "1.1.4"
- resolved "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.4.tgz"
- integrity sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==
- dependencies:
- call-bind "^1.0.9"
- call-bound "^1.0.4"
- get-intrinsic "^1.3.0"
- has-symbols "^1.1.0"
- isarray "^2.0.5"
-
-safe-buffer@~5.1.0, safe-buffer@~5.1.1:
- version "5.1.2"
- resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz"
- integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
-
-safe-buffer@~5.2.0:
- version "5.2.1"
- resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz"
- integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
-
-safe-push-apply@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz"
- integrity sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==
- dependencies:
- es-errors "^1.3.0"
- isarray "^2.0.5"
-
-safe-regex-test@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz"
- integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==
- dependencies:
- call-bound "^1.0.2"
- es-errors "^1.3.0"
- is-regex "^1.2.1"
-
-"safer-buffer@>= 2.1.2 < 3":
- version "2.1.2"
- resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz"
- integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
-
-scheduler@^0.23.0:
- version "0.23.2"
- resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz"
- integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==
- dependencies:
- loose-envify "^1.1.0"
-
-scheduler@0.24.0-canary-efb381bbf-20230505:
- version "0.24.0-canary-efb381bbf-20230505"
- resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.24.0-canary-efb381bbf-20230505.tgz"
- integrity sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA==
- dependencies:
- loose-envify "^1.1.0"
-
-selfsigned@^2.4.1:
- version "2.4.1"
- resolved "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz"
- integrity sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==
- dependencies:
- "@types/node-forge" "^1.3.0"
- node-forge "^1"
-
-semver-diff@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/semver-diff/-/semver-diff-4.0.0.tgz"
- integrity sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==
- dependencies:
- semver "^7.3.5"
-
-semver@^5.6.0:
- version "5.7.2"
- resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz"
- integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
-
-semver@^6.0.0, semver@^6.3.0, semver@^6.3.1:
- version "6.3.1"
- resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz"
- integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
-
-semver@^7.1.3:
- version "7.7.4"
- resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz"
- integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==
-
-semver@^7.3.4:
- version "7.7.4"
- resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz"
- integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==
-
-semver@^7.3.5:
- version "7.7.4"
- resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz"
- integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==
-
-semver@^7.3.7:
- version "7.7.4"
- resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz"
- integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==
-
-semver@^7.5.3:
- version "7.7.4"
- resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz"
- integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==
-
-semver@^7.5.4:
- version "7.7.4"
- resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz"
- integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==
-
-"semver@2 || 3 || 4 || 5":
- version "5.7.2"
- resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz"
- integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
-
-semver@7.3.8:
- version "7.3.8"
- resolved "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz"
- integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==
- dependencies:
- lru-cache "^6.0.0"
-
-semver@7.5.1:
- version "7.5.1"
- resolved "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz"
- integrity sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==
- dependencies:
- lru-cache "^6.0.0"
-
-semver@7.5.4:
- version "7.5.4"
- resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz"
- integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
- dependencies:
- lru-cache "^6.0.0"
-
-send@~0.19.1:
- version "0.19.2"
- resolved "https://registry.npmjs.org/send/-/send-0.19.2.tgz"
- integrity sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==
- dependencies:
- debug "2.6.9"
- depd "2.0.0"
- destroy "1.2.0"
- encodeurl "~2.0.0"
- escape-html "~1.0.3"
- etag "~1.8.1"
- fresh "~0.5.2"
- http-errors "~2.0.1"
- mime "1.6.0"
- ms "2.1.3"
- on-finished "~2.4.1"
- range-parser "~1.2.1"
- statuses "~2.0.2"
-
-serialize-error@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz"
- integrity sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==
-
-serve-static@^1.13.1:
- version "1.16.3"
- resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.16.3.tgz"
- integrity sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==
- dependencies:
- encodeurl "~2.0.0"
- escape-html "~1.0.3"
- parseurl "~1.3.3"
- send "~0.19.1"
-
-set-function-length@^1.2.2:
- version "1.2.2"
- resolved "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz"
- integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==
- dependencies:
- define-data-property "^1.1.4"
- es-errors "^1.3.0"
- function-bind "^1.1.2"
- get-intrinsic "^1.2.4"
- gopd "^1.0.1"
- has-property-descriptors "^1.0.2"
-
-set-function-name@^2.0.2:
- version "2.0.2"
- resolved "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz"
- integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==
- dependencies:
- define-data-property "^1.1.4"
- es-errors "^1.3.0"
- functions-have-names "^1.2.3"
- has-property-descriptors "^1.0.2"
-
-set-proto@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz"
- integrity sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==
- dependencies:
- dunder-proto "^1.0.1"
- es-errors "^1.3.0"
- es-object-atoms "^1.0.0"
-
-setprototypeof@~1.2.0:
- version "1.2.0"
- resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz"
- integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==
-
-shallow-clone@^3.0.0:
- version "3.0.1"
- resolved "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz"
- integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==
- dependencies:
- kind-of "^6.0.2"
-
-shebang-command@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz"
- integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
- dependencies:
- shebang-regex "^3.0.0"
-
-shebang-regex@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz"
- integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
-
-shell-quote@^1.6.1:
- version "1.8.3"
- resolved "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz"
- integrity sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==
-
-shelljs@0.8.5:
- version "0.8.5"
- resolved "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz"
- integrity sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==
- dependencies:
- glob "^7.0.0"
- interpret "^1.0.0"
- rechoir "^0.6.2"
-
-side-channel-list@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz"
- integrity sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==
- dependencies:
- es-errors "^1.3.0"
- object-inspect "^1.13.4"
-
-side-channel-map@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz"
- integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==
- dependencies:
- call-bound "^1.0.2"
- es-errors "^1.3.0"
- get-intrinsic "^1.2.5"
- object-inspect "^1.13.3"
-
-side-channel-weakmap@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz"
- integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==
- dependencies:
- call-bound "^1.0.2"
- es-errors "^1.3.0"
- get-intrinsic "^1.2.5"
- object-inspect "^1.13.3"
- side-channel-map "^1.0.1"
-
-side-channel@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz"
- integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==
- dependencies:
- es-errors "^1.3.0"
- object-inspect "^1.13.3"
- side-channel-list "^1.0.0"
- side-channel-map "^1.0.1"
- side-channel-weakmap "^1.0.2"
-
-signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7:
- version "3.0.7"
- resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz"
- integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
-
-sisteransi@^1.0.5:
- version "1.0.5"
- resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz"
- integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
-
-slash@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz"
- integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
-
-slash@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz"
- integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==
-
-smart-buffer@^4.2.0:
- version "4.2.0"
- resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz"
- integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==
-
-socks-proxy-agent@^8.0.1:
- version "8.0.5"
- resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz"
- integrity sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==
- dependencies:
- agent-base "^7.1.2"
- debug "^4.3.4"
- socks "^2.8.3"
-
-socks@^2.8.3:
- version "2.8.7"
- resolved "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz"
- integrity sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==
- dependencies:
- ip-address "^10.0.1"
- smart-buffer "^4.2.0"
-
-source-map-support@^0.5.16:
- version "0.5.21"
- resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz"
- integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
- dependencies:
- buffer-from "^1.0.0"
- source-map "^0.6.0"
-
-source-map-support@~0.5.20:
- version "0.5.21"
- resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz"
- integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
- dependencies:
- buffer-from "^1.0.0"
- source-map "^0.6.0"
-
-source-map-support@0.5.13:
- version "0.5.13"
- resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz"
- integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==
- dependencies:
- buffer-from "^1.0.0"
- source-map "^0.6.0"
-
-source-map@^0.5.6:
- version "0.5.7"
- resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz"
- integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==
-
-source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1:
- version "0.6.1"
- resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz"
- integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
-
-spdx-correct@^3.0.0:
- version "3.2.0"
- resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz"
- integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==
- dependencies:
- spdx-expression-parse "^3.0.0"
- spdx-license-ids "^3.0.0"
-
-spdx-exceptions@^2.1.0:
- version "2.5.0"
- resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz"
- integrity sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==
-
-spdx-expression-parse@^3.0.0:
- version "3.0.1"
- resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz"
- integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==
- dependencies:
- spdx-exceptions "^2.1.0"
- spdx-license-ids "^3.0.0"
-
-spdx-license-ids@^3.0.0:
- version "3.0.23"
- resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.23.tgz"
- integrity sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==
-
-split@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/split/-/split-1.0.1.tgz"
- integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==
- dependencies:
- through "2"
-
-split2@^3.0.0, split2@^3.2.2:
- version "3.2.2"
- resolved "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz"
- integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==
- dependencies:
- readable-stream "^3.0.0"
-
-sprintf-js@~1.0.2:
- version "1.0.3"
- resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz"
- integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
-
-stack-utils@^2.0.3:
- version "2.0.6"
- resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz"
- integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==
- dependencies:
- escape-string-regexp "^2.0.0"
-
-stackframe@^1.3.4:
- version "1.3.4"
- resolved "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz"
- integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==
-
-stacktrace-parser@^0.1.10:
- version "0.1.11"
- resolved "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.11.tgz"
- integrity sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==
- dependencies:
- type-fest "^0.7.1"
-
-statuses@~1.5.0:
- version "1.5.0"
- resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz"
- integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==
-
-statuses@~2.0.2:
- version "2.0.2"
- resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz"
- integrity sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==
-
-stdin-discarder@^0.1.0:
- version "0.1.0"
- resolved "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.1.0.tgz"
- integrity sha512-xhV7w8S+bUwlPTb4bAOUQhv8/cSS5offJuX8GQGq32ONF0ZtDWKfkdomM3HMRA+LhX6um/FZ0COqlwsjD53LeQ==
- dependencies:
- bl "^5.0.0"
-
-stop-iteration-iterator@^1.0.0, stop-iteration-iterator@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz"
- integrity sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==
- dependencies:
- es-errors "^1.3.0"
- internal-slot "^1.1.0"
-
-string_decoder@^1.1.1:
- version "1.3.0"
- resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz"
- integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
- dependencies:
- safe-buffer "~5.2.0"
-
-string_decoder@~1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz"
- integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
- dependencies:
- safe-buffer "~5.1.0"
-
-string-length@^4.0.1:
- version "4.0.2"
- resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz"
- integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==
- dependencies:
- char-regex "^1.0.2"
- strip-ansi "^6.0.0"
-
-string-natural-compare@^3.0.1:
- version "3.0.1"
- resolved "https://registry.npmjs.org/string-natural-compare/-/string-natural-compare-3.0.1.tgz"
- integrity sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw==
-
-string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
- version "4.2.3"
- resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz"
- 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"
-
-string-width@^5.0.1, string-width@^5.1.2:
- version "5.1.2"
- resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz"
- integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
- dependencies:
- eastasianwidth "^0.2.0"
- emoji-regex "^9.2.2"
- strip-ansi "^7.0.1"
-
-string.prototype.matchall@^4.0.12:
- version "4.0.12"
- resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz"
- integrity sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.3"
- define-properties "^1.2.1"
- es-abstract "^1.23.6"
- es-errors "^1.3.0"
- es-object-atoms "^1.0.0"
- get-intrinsic "^1.2.6"
- gopd "^1.2.0"
- has-symbols "^1.1.0"
- internal-slot "^1.1.0"
- regexp.prototype.flags "^1.5.3"
- set-function-name "^2.0.2"
- side-channel "^1.1.0"
-
-string.prototype.repeat@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz"
- integrity sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==
- dependencies:
- define-properties "^1.1.3"
- es-abstract "^1.17.5"
-
-string.prototype.trim@^1.2.10:
- version "1.2.10"
- resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz"
- integrity sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.2"
- define-data-property "^1.1.4"
- define-properties "^1.2.1"
- es-abstract "^1.23.5"
- es-object-atoms "^1.0.0"
- has-property-descriptors "^1.0.2"
-
-string.prototype.trimend@^1.0.9:
- version "1.0.9"
- resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz"
- integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==
- dependencies:
- call-bind "^1.0.8"
- call-bound "^1.0.2"
- define-properties "^1.2.1"
- es-object-atoms "^1.0.0"
-
-string.prototype.trimstart@^1.0.8:
- version "1.0.8"
- resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz"
- integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==
- dependencies:
- call-bind "^1.0.7"
- define-properties "^1.2.1"
- es-object-atoms "^1.0.0"
-
-strip-ansi@^6.0.0, strip-ansi@^6.0.1:
- version "6.0.1"
- resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz"
- integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
- dependencies:
- ansi-regex "^5.0.1"
-
-strip-ansi@^7.0.1:
- version "7.2.0"
- resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz"
- integrity sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==
- dependencies:
- ansi-regex "^6.2.2"
-
-strip-bom@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz"
- integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==
-
-strip-bom@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz"
- integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==
-
-strip-final-newline@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz"
- integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
-
-strip-final-newline@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz"
- integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==
-
-strip-indent@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz"
- integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==
- dependencies:
- min-indent "^1.0.0"
-
-strip-json-comments@^3.1.1:
- version "3.1.1"
- resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz"
- integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
-
-strip-json-comments@~2.0.1:
- version "2.0.1"
- resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz"
- integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==
-
-supports-color@^7.1.0:
- version "7.2.0"
- resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
- 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.npmjs.org/supports-color/-/supports-color-8.1.1.tgz"
- integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==
- dependencies:
- has-flag "^4.0.0"
-
-supports-preserve-symlinks-flag@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz"
- integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
-
-temp@^0.8.4:
- version "0.8.4"
- resolved "https://registry.npmjs.org/temp/-/temp-0.8.4.tgz"
- integrity sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==
- dependencies:
- rimraf "~2.6.2"
-
-terser@^5.15.0:
- version "5.46.2"
- resolved "https://registry.npmjs.org/terser/-/terser-5.46.2.tgz"
- integrity sha512-uxfo9fPcSgLDYob/w1FuL0c99MWiJDnv+5qXSQc5+Ki5NjVNsYi66INnMFBjf6uFz6OnX12piJQPF4IpjJTNTw==
- dependencies:
- "@jridgewell/source-map" "^0.3.3"
- acorn "^8.15.0"
- commander "^2.20.0"
- source-map-support "~0.5.20"
-
-test-exclude@^6.0.0:
- version "6.0.0"
- resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz"
- integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==
- dependencies:
- "@istanbuljs/schema" "^0.1.2"
- glob "^7.1.4"
- minimatch "^3.0.4"
-
-text-extensions@^1.0.0:
- version "1.9.0"
- resolved "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz"
- integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==
-
-text-table@^0.2.0:
- version "0.2.0"
- resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz"
- integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==
-
-throat@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz"
- integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==
-
-through@^2.3.6, "through@>=2.2.7 <3", through@2:
- version "2.3.8"
- resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz"
- integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==
-
-through2@^2.0.0:
- version "2.0.5"
- resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz"
- integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==
- dependencies:
- readable-stream "~2.3.6"
- xtend "~4.0.1"
-
-through2@^4.0.0:
- version "4.0.2"
- resolved "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz"
- integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==
- dependencies:
- readable-stream "3"
-
-titleize@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz"
- integrity sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==
-
-tmp@^0.0.33:
- version "0.0.33"
- resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz"
- integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==
- dependencies:
- os-tmpdir "~1.0.2"
-
-tmpl@1.0.5:
- version "1.0.5"
- resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz"
- integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==
-
-to-regex-range@^5.0.1:
- version "5.0.1"
- resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz"
- integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
- dependencies:
- is-number "^7.0.0"
-
-toidentifier@~1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz"
- integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==
-
-tr46@~0.0.3:
- version "0.0.3"
- resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz"
- integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==
-
-trim-newlines@^3.0.0:
- version "3.0.1"
- resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz"
- integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==
-
-ts-node@^10.8.1:
- version "10.9.2"
- resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz"
- integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==
- dependencies:
- "@cspotcode/source-map-support" "^0.8.0"
- "@tsconfig/node10" "^1.0.7"
- "@tsconfig/node12" "^1.0.7"
- "@tsconfig/node14" "^1.0.0"
- "@tsconfig/node16" "^1.0.2"
- acorn "^8.4.1"
- acorn-walk "^8.1.1"
- arg "^4.1.0"
- create-require "^1.1.0"
- diff "^4.0.1"
- make-error "^1.1.1"
- v8-compile-cache-lib "^3.0.1"
- yn "3.1.1"
-
-tslib@^1.8.1:
- version "1.14.1"
- resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
- integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
-
-tslib@^2.0.1, tslib@^2.1.0:
- version "2.8.1"
- resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz"
- integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==
-
-tsutils@^3.21.0:
- version "3.21.0"
- resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz"
- 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.npmjs.org/type-check/-/type-check-0.4.0.tgz"
- integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==
- dependencies:
- prelude-ls "^1.2.1"
-
-type-check@~0.3.2:
- version "0.3.2"
- resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz"
- integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==
- dependencies:
- prelude-ls "~1.1.2"
-
-type-detect@4.0.8:
- version "4.0.8"
- resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz"
- integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==
-
-type-fest@^0.18.0:
- version "0.18.1"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz"
- integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==
-
-type-fest@^0.20.2:
- version "0.20.2"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz"
- integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
-
-type-fest@^0.21.3:
- version "0.21.3"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz"
- integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
-
-type-fest@^0.6.0:
- version "0.6.0"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz"
- integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==
-
-type-fest@^0.7.1:
- version "0.7.1"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz"
- integrity sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==
-
-type-fest@^0.8.1:
- version "0.8.1"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz"
- integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==
-
-type-fest@^1.0.1:
- version "1.4.0"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz"
- integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==
-
-type-fest@^2.13.0:
- version "2.19.0"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz"
- integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==
-
-type-fest@^2.5.1:
- version "2.19.0"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz"
- integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==
-
-typed-array-buffer@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz"
- integrity sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==
- dependencies:
- call-bound "^1.0.3"
- es-errors "^1.3.0"
- is-typed-array "^1.1.14"
-
-typed-array-byte-length@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz"
- integrity sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==
- dependencies:
- call-bind "^1.0.8"
- for-each "^0.3.3"
- gopd "^1.2.0"
- has-proto "^1.2.0"
- is-typed-array "^1.1.14"
-
-typed-array-byte-offset@^1.0.4:
- version "1.0.4"
- resolved "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz"
- integrity sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==
- dependencies:
- available-typed-arrays "^1.0.7"
- call-bind "^1.0.8"
- for-each "^0.3.3"
- gopd "^1.2.0"
- has-proto "^1.2.0"
- is-typed-array "^1.1.15"
- reflect.getprototypeof "^1.0.9"
-
-typed-array-length@^1.0.7:
- version "1.0.7"
- resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz"
- integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==
- dependencies:
- call-bind "^1.0.7"
- for-each "^0.3.3"
- gopd "^1.0.1"
- is-typed-array "^1.1.13"
- possible-typed-array-names "^1.0.0"
- reflect.getprototypeof "^1.0.6"
-
-typedarray-to-buffer@^3.1.5:
- version "3.1.5"
- resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz"
- integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
- dependencies:
- is-typedarray "^1.0.0"
-
-typedarray@^0.0.6:
- version "0.0.6"
- resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz"
- integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==
-
-"typescript@^4.6.4 || ^5.2.2", typescript@5.6.3:
- version "5.6.3"
- resolved "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz"
- integrity sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==
-
-uglify-js@^3.1.4:
- version "3.19.3"
- resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz"
- integrity sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==
-
-unbox-primitive@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz"
- integrity sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==
- dependencies:
- call-bound "^1.0.3"
- has-bigints "^1.0.2"
- has-symbols "^1.1.0"
- which-boxed-primitive "^1.1.1"
-
-unc-path-regex@^0.1.2:
- version "0.1.2"
- resolved "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz"
- integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==
-
-unicode-canonical-property-names-ecmascript@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz"
- integrity sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==
-
-unicode-match-property-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz"
- 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.2.1:
- version "2.2.1"
- resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz"
- integrity sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==
-
-unicode-property-aliases-ecmascript@^2.0.0:
- version "2.2.0"
- resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz"
- integrity sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==
-
-unique-string@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/unique-string/-/unique-string-3.0.0.tgz"
- integrity sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==
- dependencies:
- crypto-random-string "^4.0.0"
-
-universal-user-agent@^6.0.0:
- version "6.0.1"
- resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz"
- integrity sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==
-
-universalify@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz"
- integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==
-
-unpipe@~1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz"
- integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==
-
-untildify@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz"
- integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==
-
-update-browserslist-db@^1.2.3:
- version "1.2.3"
- resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz"
- integrity sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==
- dependencies:
- escalade "^3.2.0"
- picocolors "^1.1.1"
-
-update-notifier@6.0.2:
- version "6.0.2"
- resolved "https://registry.npmjs.org/update-notifier/-/update-notifier-6.0.2.tgz"
- integrity sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==
- dependencies:
- boxen "^7.0.0"
- chalk "^5.0.1"
- configstore "^6.0.0"
- has-yarn "^3.0.0"
- import-lazy "^4.0.0"
- is-ci "^3.0.1"
- is-installed-globally "^0.4.0"
- is-npm "^6.0.0"
- is-yarn-global "^0.4.0"
- latest-version "^7.0.0"
- pupa "^3.1.0"
- semver "^7.3.7"
- semver-diff "^4.0.0"
- xdg-basedir "^5.1.0"
-
-uri-js@^4.2.2:
- version "4.4.1"
- resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz"
- integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
- dependencies:
- punycode "^2.1.0"
-
-url-join@5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz"
- integrity sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==
-
-util-deprecate@^1.0.1, util-deprecate@~1.0.1:
- version "1.0.2"
- resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz"
- integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
-
-utils-merge@1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz"
- integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==
-
-v8-compile-cache-lib@^3.0.1:
- version "3.0.1"
- resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz"
- integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==
-
-v8-to-istanbul@^9.0.1:
- version "9.3.0"
- resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz"
- integrity sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==
- dependencies:
- "@jridgewell/trace-mapping" "^0.3.12"
- "@types/istanbul-lib-coverage" "^2.0.1"
- convert-source-map "^2.0.0"
-
-validate-npm-package-license@^3.0.1:
- version "3.0.4"
- resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz"
- integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
- dependencies:
- spdx-correct "^3.0.0"
- spdx-expression-parse "^3.0.0"
-
-vlq@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/vlq/-/vlq-1.0.1.tgz"
- integrity sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==
-
-vm2@^3.9.19:
- version "3.10.5"
- resolved "https://registry.npmjs.org/vm2/-/vm2-3.10.5.tgz"
- integrity sha512-3P/2QDccVFBcujfCOeP8vVNuGfuBJHEuvGR8eMmI10p/iwLL2UwF5PDaNaoOS2pRGQEDmJRyeEcc8kmm2Z59RA==
- dependencies:
- acorn "^8.15.0"
- acorn-walk "^8.3.4"
-
-walker@^1.0.7, walker@^1.0.8:
- version "1.0.8"
- resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz"
- integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==
- dependencies:
- makeerror "1.0.12"
-
-wcwidth@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz"
- integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==
- dependencies:
- defaults "^1.0.3"
-
-web-streams-polyfill@^3.0.3:
- version "3.3.3"
- resolved "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz"
- integrity sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==
-
-webidl-conversions@^3.0.0:
- version "3.0.1"
- resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz"
- integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==
-
-whatwg-fetch@^3.0.0:
- version "3.6.20"
- resolved "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz"
- integrity sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==
-
-whatwg-url@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz"
- integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==
- dependencies:
- tr46 "~0.0.3"
- webidl-conversions "^3.0.0"
-
-which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz"
- integrity sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==
- dependencies:
- is-bigint "^1.1.0"
- is-boolean-object "^1.2.1"
- is-number-object "^1.1.1"
- is-string "^1.1.1"
- is-symbol "^1.1.1"
-
-which-builtin-type@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz"
- integrity sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==
- dependencies:
- call-bound "^1.0.2"
- function.prototype.name "^1.1.6"
- has-tostringtag "^1.0.2"
- is-async-function "^2.0.0"
- is-date-object "^1.1.0"
- is-finalizationregistry "^1.1.0"
- is-generator-function "^1.0.10"
- is-regex "^1.2.1"
- is-weakref "^1.0.2"
- isarray "^2.0.5"
- which-boxed-primitive "^1.1.0"
- which-collection "^1.0.2"
- which-typed-array "^1.1.16"
-
-which-collection@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz"
- integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==
- dependencies:
- is-map "^2.0.3"
- is-set "^2.0.3"
- is-weakmap "^2.0.2"
- is-weakset "^2.0.3"
-
-which-typed-array@^1.1.16, which-typed-array@^1.1.19:
- version "1.1.20"
- resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.20.tgz"
- integrity sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==
- dependencies:
- available-typed-arrays "^1.0.7"
- call-bind "^1.0.8"
- call-bound "^1.0.4"
- for-each "^0.3.5"
- get-proto "^1.0.1"
- gopd "^1.2.0"
- has-tostringtag "^1.0.2"
-
-which@^2.0.1, which@^2.0.2:
- version "2.0.2"
- resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz"
- integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
- dependencies:
- isexe "^2.0.0"
-
-widest-line@^4.0.1:
- version "4.0.1"
- resolved "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz"
- integrity sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==
- dependencies:
- string-width "^5.0.1"
-
-wildcard-match@5.1.2:
- version "5.1.2"
- resolved "https://registry.npmjs.org/wildcard-match/-/wildcard-match-5.1.2.tgz"
- integrity sha512-qNXwI591Z88c8bWxp+yjV60Ch4F8Riawe3iGxbzquhy8Xs9m+0+SLFBGb/0yCTIDElawtaImC37fYZ+dr32KqQ==
-
-windows-release@^5.0.1:
- version "5.1.1"
- resolved "https://registry.npmjs.org/windows-release/-/windows-release-5.1.1.tgz"
- integrity sha512-NMD00arvqcq2nwqc5Q6KtrSRHK+fVD31erE5FEMahAw5PmVCgD7MUXodq3pdZSUkqA9Cda2iWx6s1XYwiJWRmw==
- dependencies:
- execa "^5.1.1"
-
-word-wrap@^1.2.5, word-wrap@~1.2.3:
- version "1.2.5"
- resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz"
- integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==
-
-wordwrap@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz"
- integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==
-
-wrap-ansi@^6.0.1:
- version "6.2.0"
- resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz"
- integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
- dependencies:
- ansi-styles "^4.0.0"
- string-width "^4.1.0"
- strip-ansi "^6.0.0"
-
-wrap-ansi@^7.0.0:
- version "7.0.0"
- resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz"
- integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
- dependencies:
- ansi-styles "^4.0.0"
- string-width "^4.1.0"
- strip-ansi "^6.0.0"
-
-wrap-ansi@^8.1.0:
- version "8.1.0"
- resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz"
- integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==
- dependencies:
- ansi-styles "^6.1.0"
- string-width "^5.0.1"
- strip-ansi "^7.0.1"
-
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz"
- integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
-
-write-file-atomic@^2.3.0:
- version "2.4.3"
- resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz"
- integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==
- dependencies:
- graceful-fs "^4.1.11"
- imurmurhash "^0.1.4"
- signal-exit "^3.0.2"
-
-write-file-atomic@^3.0.3:
- version "3.0.3"
- resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz"
- 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"
-
-write-file-atomic@^4.0.2:
- version "4.0.2"
- resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz"
- integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==
- dependencies:
- imurmurhash "^0.1.4"
- signal-exit "^3.0.7"
-
-ws@^6.2.3:
- version "6.2.3"
- resolved "https://registry.npmjs.org/ws/-/ws-6.2.3.tgz"
- integrity sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==
- dependencies:
- async-limiter "~1.0.0"
-
-ws@^7:
- version "7.5.10"
- resolved "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz"
- integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==
-
-ws@^7.5.10:
- version "7.5.10"
- resolved "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz"
- integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==
-
-xdg-basedir@^5.0.1, xdg-basedir@^5.1.0:
- version "5.1.0"
- resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-5.1.0.tgz"
- integrity sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==
-
-xtend@~4.0.1:
- version "4.0.2"
- resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz"
- integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
-
-y18n@^5.0.5:
- version "5.0.8"
- resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz"
- integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
-
-yallist@^3.0.2:
- version "3.1.1"
- resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz"
- integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
-
-yallist@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"
- integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
-
-yargs-parser@^20.2.2, yargs-parser@^20.2.3:
- version "20.2.9"
- resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz"
- integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
-
-yargs-parser@^21.1.1:
- version "21.1.1"
- resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz"
- integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
-
-yargs-parser@21.1.1:
- version "21.1.1"
- resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz"
- integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
-
-yargs@^16.2.0:
- version "16.2.0"
- resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz"
- 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"
-
-yargs@^17.0.0, yargs@^17.3.1, yargs@^17.5.1, yargs@^17.6.2:
- version "17.7.2"
- resolved "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz"
- integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==
- dependencies:
- cliui "^8.0.1"
- escalade "^3.1.1"
- get-caller-file "^2.0.5"
- require-directory "^2.1.1"
- string-width "^4.2.3"
- y18n "^5.0.5"
- yargs-parser "^21.1.1"
-
-yn@3.1.1:
- version "3.1.1"
- resolved "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz"
- integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==
-
-yocto-queue@^0.1.0:
- version "0.1.0"
- resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz"
- integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
+# This file is generated by running "yarn install" inside your project.
+# Manual changes might be lost - proceed with caution!
+
+__metadata:
+ version: 8
+ cacheKey: 10c0
+
+"@ark/schema@npm:0.56.0":
+ version: 0.56.0
+ resolution: "@ark/schema@npm:0.56.0"
+ dependencies:
+ "@ark/util": "npm:0.56.0"
+ checksum: 10c0/89fb7e4e1304ea9b34c834a8cb34bc05201b4e3a1b26277f7d74b9505a2d7ed398bb55a77e491e7a14a7f0807424a5467e1d32ee725ee2f7b9d158ae30d8121a
+ languageName: node
+ linkType: hard
+
+"@ark/util@npm:0.56.0":
+ version: 0.56.0
+ resolution: "@ark/util@npm:0.56.0"
+ checksum: 10c0/dfef779c90f9f814ba97069c63bf91fa67569b87c5cd925d0e2d96b91aa677c019ed1dd5ff95332d9bb0598f785057439074b8cbfcaa2578770616e260fc5761
+ languageName: node
+ linkType: hard
+
+"@arkweid/lefthook@npm:^0.7.7":
+ version: 0.7.7
+ resolution: "@arkweid/lefthook@npm:0.7.7"
+ bin:
+ lefthook: bin/index.js
+ checksum: 10c0/086633d7d94e0c193dfbf972925752f08741acc43c0b78e2dc1459e63f6a51f022f2a2ed106fc3b943417760927de88d94577c623aee6748b8bace4c2ae505bb
+ conditions: (os=darwin | os=linux | os=win32) & (cpu=x64 | cpu=arm64 | cpu=ia32)
+ languageName: node
+ linkType: hard
+
+"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.24.7, @babel/code-frame@npm:^7.28.6, @babel/code-frame@npm:^7.29.0":
+ version: 7.29.0
+ resolution: "@babel/code-frame@npm:7.29.0"
+ dependencies:
+ "@babel/helper-validator-identifier": "npm:^7.28.5"
+ js-tokens: "npm:^4.0.0"
+ picocolors: "npm:^1.1.1"
+ checksum: 10c0/d34cc504e7765dfb576a663d97067afb614525806b5cad1a5cc1a7183b916fec8ff57fa233585e3926fd5a9e6b31aae6df91aa81ae9775fb7a28f658d3346f0d
+ languageName: node
+ linkType: hard
+
+"@babel/compat-data@npm:^7.28.6, @babel/compat-data@npm:^7.29.0":
+ version: 7.29.0
+ resolution: "@babel/compat-data@npm:7.29.0"
+ checksum: 10c0/08f348554989d23aa801bf1405aa34b15e841c0d52d79da7e524285c77a5f9d298e70e11d91cc578d8e2c9542efc586d50c5f5cf8e1915b254a9dcf786913a94
+ languageName: node
+ linkType: hard
+
+"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.16, @babel/core@npm:^7.14.0, @babel/core@npm:^7.23.9, @babel/core@npm:^7.25.2, @babel/core@npm:^7.28.5":
+ version: 7.29.0
+ resolution: "@babel/core@npm:7.29.0"
+ dependencies:
+ "@babel/code-frame": "npm:^7.29.0"
+ "@babel/generator": "npm:^7.29.0"
+ "@babel/helper-compilation-targets": "npm:^7.28.6"
+ "@babel/helper-module-transforms": "npm:^7.28.6"
+ "@babel/helpers": "npm:^7.28.6"
+ "@babel/parser": "npm:^7.29.0"
+ "@babel/template": "npm:^7.28.6"
+ "@babel/traverse": "npm:^7.29.0"
+ "@babel/types": "npm:^7.29.0"
+ "@jridgewell/remapping": "npm:^2.3.5"
+ convert-source-map: "npm:^2.0.0"
+ debug: "npm:^4.1.0"
+ gensync: "npm:^1.0.0-beta.2"
+ json5: "npm:^2.2.3"
+ semver: "npm:^6.3.1"
+ checksum: 10c0/5127d2e8e842ae409e11bcbb5c2dff9874abf5415e8026925af7308e903f4f43397341467a130490d1a39884f461bc2b67f3063bce0be44340db89687fd852aa
+ languageName: node
+ linkType: hard
+
+"@babel/eslint-parser@npm:^7.18.2":
+ version: 7.28.6
+ resolution: "@babel/eslint-parser@npm:7.28.6"
+ dependencies:
+ "@nicolo-ribaudo/eslint-scope-5-internals": "npm:5.1.1-v1"
+ eslint-visitor-keys: "npm:^2.1.0"
+ semver: "npm:^6.3.1"
+ peerDependencies:
+ "@babel/core": ^7.11.0
+ eslint: ^7.5.0 || ^8.0.0 || ^9.0.0
+ checksum: 10c0/58a85f67a056ba8389978c4654b690b890a6dcd19aa9655c5d7d9349a0c25f124cabad8a190b6bf7045a063aeee1b8e2ab23cfe4d8fa0e0517716a8b70e758bc
+ languageName: node
+ linkType: hard
+
+"@babel/generator@npm:^7.25.0, @babel/generator@npm:^7.29.0, @babel/generator@npm:^7.7.2":
+ version: 7.29.1
+ resolution: "@babel/generator@npm:7.29.1"
+ dependencies:
+ "@babel/parser": "npm:^7.29.0"
+ "@babel/types": "npm:^7.29.0"
+ "@jridgewell/gen-mapping": "npm:^0.3.12"
+ "@jridgewell/trace-mapping": "npm:^0.3.28"
+ jsesc: "npm:^3.0.2"
+ checksum: 10c0/349086e6876258ef3fb2823030fee0f6c0eb9c3ebe35fc572e16997f8c030d765f636ddc6299edae63e760ea6658f8ee9a2edfa6d6b24c9a80c917916b973551
+ languageName: node
+ linkType: hard
+
+"@babel/helper-annotate-as-pure@npm:^7.27.1, @babel/helper-annotate-as-pure@npm:^7.27.3":
+ version: 7.27.3
+ resolution: "@babel/helper-annotate-as-pure@npm:7.27.3"
+ dependencies:
+ "@babel/types": "npm:^7.27.3"
+ checksum: 10c0/94996ce0a05b7229f956033e6dcd69393db2b0886d0db6aff41e704390402b8cdcca11f61449cb4f86cfd9e61b5ad3a73e4fa661eeed7846b125bd1c33dbc633
+ languageName: node
+ linkType: hard
+
+"@babel/helper-compilation-targets@npm:^7.27.1, @babel/helper-compilation-targets@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/helper-compilation-targets@npm:7.28.6"
+ dependencies:
+ "@babel/compat-data": "npm:^7.28.6"
+ "@babel/helper-validator-option": "npm:^7.27.1"
+ browserslist: "npm:^4.24.0"
+ lru-cache: "npm:^5.1.1"
+ semver: "npm:^6.3.1"
+ checksum: 10c0/3fcdf3b1b857a1578e99d20508859dbd3f22f3c87b8a0f3dc540627b4be539bae7f6e61e49d931542fe5b557545347272bbdacd7f58a5c77025a18b745593a50
+ languageName: node
+ linkType: hard
+
+"@babel/helper-create-class-features-plugin@npm:^7.18.6, @babel/helper-create-class-features-plugin@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/helper-create-class-features-plugin@npm:7.28.6"
+ dependencies:
+ "@babel/helper-annotate-as-pure": "npm:^7.27.3"
+ "@babel/helper-member-expression-to-functions": "npm:^7.28.5"
+ "@babel/helper-optimise-call-expression": "npm:^7.27.1"
+ "@babel/helper-replace-supers": "npm:^7.28.6"
+ "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
+ "@babel/traverse": "npm:^7.28.6"
+ semver: "npm:^6.3.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/0b62b46717891f4366006b88c9b7f277980d4f578c4c3789b7a4f5a2e09e121de4cda9a414ab403986745cd3ad1af3fe2d948c9f78ab80d4dc085afc9602af50
+ languageName: node
+ linkType: hard
+
+"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.27.1, @babel/helper-create-regexp-features-plugin@npm:^7.28.5":
+ version: 7.28.5
+ resolution: "@babel/helper-create-regexp-features-plugin@npm:7.28.5"
+ dependencies:
+ "@babel/helper-annotate-as-pure": "npm:^7.27.3"
+ regexpu-core: "npm:^6.3.1"
+ semver: "npm:^6.3.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/7af3d604cadecdb2b0d2cedd696507f02a53a58be0523281c2d6766211443b55161dde1e6c0d96ab16ddfd82a2607a2f792390caa24797e9733631f8aa86859f
+ languageName: node
+ linkType: hard
+
+"@babel/helper-define-polyfill-provider@npm:^0.6.5, @babel/helper-define-polyfill-provider@npm:^0.6.8":
+ version: 0.6.8
+ resolution: "@babel/helper-define-polyfill-provider@npm:0.6.8"
+ dependencies:
+ "@babel/helper-compilation-targets": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ debug: "npm:^4.4.3"
+ lodash.debounce: "npm:^4.0.8"
+ resolve: "npm:^1.22.11"
+ peerDependencies:
+ "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
+ checksum: 10c0/306a169f2cb285f368578219ef18ea9702860d3d02d64334f8d45ea38648be0b9e1edad8c8f732fa34bb4206ccbb9883c395570fd57ab7bbcf293bc5964c5b3a
+ languageName: node
+ linkType: hard
+
+"@babel/helper-globals@npm:^7.28.0":
+ version: 7.28.0
+ resolution: "@babel/helper-globals@npm:7.28.0"
+ checksum: 10c0/5a0cd0c0e8c764b5f27f2095e4243e8af6fa145daea2b41b53c0c1414fe6ff139e3640f4e2207ae2b3d2153a1abd346f901c26c290ee7cb3881dd922d4ee9232
+ languageName: node
+ linkType: hard
+
+"@babel/helper-member-expression-to-functions@npm:^7.28.5":
+ version: 7.28.5
+ resolution: "@babel/helper-member-expression-to-functions@npm:7.28.5"
+ dependencies:
+ "@babel/traverse": "npm:^7.28.5"
+ "@babel/types": "npm:^7.28.5"
+ checksum: 10c0/4e6e05fbf4dffd0bc3e55e28fcaab008850be6de5a7013994ce874ec2beb90619cda4744b11607a60f8aae0227694502908add6188ceb1b5223596e765b44814
+ languageName: node
+ linkType: hard
+
+"@babel/helper-module-imports@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/helper-module-imports@npm:7.28.6"
+ dependencies:
+ "@babel/traverse": "npm:^7.28.6"
+ "@babel/types": "npm:^7.28.6"
+ checksum: 10c0/b49d8d8f204d9dbfd5ac70c54e533e5269afb3cea966a9d976722b13e9922cc773a653405f53c89acb247d5aebdae4681d631a3ae3df77ec046b58da76eda2ac
+ languageName: node
+ linkType: hard
+
+"@babel/helper-module-transforms@npm:^7.27.1, @babel/helper-module-transforms@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/helper-module-transforms@npm:7.28.6"
+ dependencies:
+ "@babel/helper-module-imports": "npm:^7.28.6"
+ "@babel/helper-validator-identifier": "npm:^7.28.5"
+ "@babel/traverse": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/6f03e14fc30b287ce0b839474b5f271e72837d0cafe6b172d759184d998fbee3903a035e81e07c2c596449e504f453463d58baa65b6f40a37ded5bec74620b2b
+ languageName: node
+ linkType: hard
+
+"@babel/helper-optimise-call-expression@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/helper-optimise-call-expression@npm:7.27.1"
+ dependencies:
+ "@babel/types": "npm:^7.27.1"
+ checksum: 10c0/6b861e7fcf6031b9c9fc2de3cd6c005e94a459d6caf3621d93346b52774925800ca29d4f64595a5ceacf4d161eb0d27649ae385110ed69491d9776686fa488e6
+ languageName: node
+ linkType: hard
+
+"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.20.2, @babel/helper-plugin-utils@npm:^7.27.1, @babel/helper-plugin-utils@npm:^7.28.6, @babel/helper-plugin-utils@npm:^7.8.0":
+ version: 7.28.6
+ resolution: "@babel/helper-plugin-utils@npm:7.28.6"
+ checksum: 10c0/3f5f8acc152fdbb69a84b8624145ff4f9b9f6e776cb989f9f968f8606eb7185c5c3cfcf3ba08534e37e1e0e1c118ac67080610333f56baa4f7376c99b5f1143d
+ languageName: node
+ linkType: hard
+
+"@babel/helper-remap-async-to-generator@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/helper-remap-async-to-generator@npm:7.27.1"
+ dependencies:
+ "@babel/helper-annotate-as-pure": "npm:^7.27.1"
+ "@babel/helper-wrap-function": "npm:^7.27.1"
+ "@babel/traverse": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/5ba6258f4bb57c7c9fa76b55f416b2d18c867b48c1af4f9f2f7cd7cc933fe6da7514811d08ceb4972f1493be46f4b69c40282b811d1397403febae13c2ec57b5
+ languageName: node
+ linkType: hard
+
+"@babel/helper-replace-supers@npm:^7.27.1, @babel/helper-replace-supers@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/helper-replace-supers@npm:7.28.6"
+ dependencies:
+ "@babel/helper-member-expression-to-functions": "npm:^7.28.5"
+ "@babel/helper-optimise-call-expression": "npm:^7.27.1"
+ "@babel/traverse": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/04663c6389551b99b8c3e7ba4e2638b8ca2a156418c26771516124c53083aa8e74b6a45abe5dd46360af79709a0e9c6b72c076d0eab9efecdd5aaf836e79d8d5
+ languageName: node
+ linkType: hard
+
+"@babel/helper-skip-transparent-expression-wrappers@npm:^7.20.0, @babel/helper-skip-transparent-expression-wrappers@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.27.1"
+ dependencies:
+ "@babel/traverse": "npm:^7.27.1"
+ "@babel/types": "npm:^7.27.1"
+ checksum: 10c0/f625013bcdea422c470223a2614e90d2c1cc9d832e97f32ca1b4f82b34bb4aa67c3904cb4b116375d3b5b753acfb3951ed50835a1e832e7225295c7b0c24dff7
+ languageName: node
+ linkType: hard
+
+"@babel/helper-string-parser@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/helper-string-parser@npm:7.27.1"
+ checksum: 10c0/8bda3448e07b5583727c103560bcf9c4c24b3c1051a4c516d4050ef69df37bb9a4734a585fe12725b8c2763de0a265aa1e909b485a4e3270b7cfd3e4dbe4b602
+ languageName: node
+ linkType: hard
+
+"@babel/helper-validator-identifier@npm:^7.28.5":
+ version: 7.28.5
+ resolution: "@babel/helper-validator-identifier@npm:7.28.5"
+ checksum: 10c0/42aaebed91f739a41f3d80b72752d1f95fd7c72394e8e4bd7cdd88817e0774d80a432451bcba17c2c642c257c483bf1d409dd4548883429ea9493a3bc4ab0847
+ languageName: node
+ linkType: hard
+
+"@babel/helper-validator-option@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/helper-validator-option@npm:7.27.1"
+ checksum: 10c0/6fec5f006eba40001a20f26b1ef5dbbda377b7b68c8ad518c05baa9af3f396e780bdfded24c4eef95d14bb7b8fd56192a6ed38d5d439b97d10efc5f1a191d148
+ languageName: node
+ linkType: hard
+
+"@babel/helper-wrap-function@npm:^7.27.1":
+ version: 7.28.6
+ resolution: "@babel/helper-wrap-function@npm:7.28.6"
+ dependencies:
+ "@babel/template": "npm:^7.28.6"
+ "@babel/traverse": "npm:^7.28.6"
+ "@babel/types": "npm:^7.28.6"
+ checksum: 10c0/110674c7aa705dd8cc34f278628f540b37a4cb35e81fcaf557772e026a6fd95f571feb51a8efb146e4e91bbf567dc9dd7f534f78da80f55f4be2ec842f36b678
+ languageName: node
+ linkType: hard
+
+"@babel/helpers@npm:^7.28.6":
+ version: 7.29.2
+ resolution: "@babel/helpers@npm:7.29.2"
+ dependencies:
+ "@babel/template": "npm:^7.28.6"
+ "@babel/types": "npm:^7.29.0"
+ checksum: 10c0/dab0e65b9318b2502a62c58bc0913572318595eec0482c31f0ad416b72636e6698a1d7c57cd2791d4528eb8c548bca88d338dc4d2a55a108dc1f6702f9bc5512
+ languageName: node
+ linkType: hard
+
+"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.13.16, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.25.3, @babel/parser@npm:^7.28.6, @babel/parser@npm:^7.29.0":
+ version: 7.29.2
+ resolution: "@babel/parser@npm:7.29.2"
+ dependencies:
+ "@babel/types": "npm:^7.29.0"
+ bin:
+ parser: ./bin/babel-parser.js
+ checksum: 10c0/e5a4e69e3ac7acdde995f37cf299a68458cfe7009dff66bd0962fd04920bef287201169006af365af479c08ff216bfefbb595e331f87f6ae7283858aebbc3317
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.28.5":
+ version: 7.28.5
+ resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.28.5"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/traverse": "npm:^7.28.5"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/844b7c7e9eec6d858262b2f3d5af75d3a6bbd9d3ecc740d95271fbdd84985731674536f5d8ac98f2dc0e8872698b516e406636e4d0cb04b50afe471172095a53
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/2cd7a55a856e5e59bbd9484247c092a41e0d9f966778e7019da324d9e0928892d26afc4fbb2ac3d76a3c5a631cd3cf0d72dd2653b44f634f6c663b9e6f80aacd
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/cf29835498c4a25bd470908528919729a0799b2ec94e89004929a5532c94a5e4b1a49bc5d6673a22e5afe05d08465873e14ee3b28c42eb3db489cdf5ca47c680
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
+ "@babel/plugin-transform-optional-chaining": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.13.0
+ checksum: 10c0/eddcd056f76e198868cbff883eb148acfade8f0890973ab545295df0c08e39573a72e65372bcc0b0bfadba1b043fe1aea6b0907d0b4889453ac154c404194ebc
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/traverse": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/f1a9194e8d1742081def7af748e9249eb5082c25d0ced292720a1f054895f99041c764a05f45af669a2c8898aeb79266058aedb0d3e1038963ad49be8288918a
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-proposal-class-properties@npm:^7.13.0":
+ version: 7.18.6
+ resolution: "@babel/plugin-proposal-class-properties@npm:7.18.6"
+ dependencies:
+ "@babel/helper-create-class-features-plugin": "npm:^7.18.6"
+ "@babel/helper-plugin-utils": "npm:^7.18.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/d5172ac6c9948cdfc387e94f3493ad86cb04035cf7433f86b5d358270b1b9752dc25e176db0c5d65892a246aca7bdb4636672e15626d7a7de4bc0bd0040168d9
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-proposal-export-default-from@npm:^7.24.7":
+ version: 7.27.1
+ resolution: "@babel/plugin-proposal-export-default-from@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/6e0756e0692245854028caea113dad2dc11fcdd479891a59d9a614a099e7e321f2bd25a1e3dd6f3b36ba9506a76f072f63adbf676e5ed51e7eeac277612e3db2
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.13.8":
+ version: 7.18.6
+ resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.18.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.18.6"
+ "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/f6629158196ee9f16295d16db75825092ef543f8b98f4dfdd516e642a0430c7b1d69319ee676d35485d9b86a53ade6de0b883490d44de6d4336d38cdeccbe0bf
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-proposal-optional-chaining@npm:^7.13.12":
+ version: 7.21.0
+ resolution: "@babel/plugin-proposal-optional-chaining@npm:7.21.0"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.20.2"
+ "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.20.0"
+ "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/b524a61b1de3f3ad287cd1e98c2a7f662178d21cd02205b0d615512e475f0159fa1b569fa7e34c8ed67baef689c0136fa20ba7d1bf058d186d30736a581a723f
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2":
+ version: 7.21.0-placeholder-for-preset-env.2
+ resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/e605e0070da087f6c35579499e65801179a521b6842c15181a1e305c04fded2393f11c1efd09b087be7f8b083d1b75e8f3efcbc1292b4f60d3369e14812cff63
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-async-generators@npm:^7.8.4":
+ version: 7.8.4
+ resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.8.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/d13efb282838481348c71073b6be6245b35d4f2f964a8f71e4174f235009f929ef7613df25f8d2338e2d3e44bc4265a9f8638c6aaa136d7a61fe95985f9725c8
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-bigint@npm:^7.8.3":
+ version: 7.8.3
+ resolution: "@babel/plugin-syntax-bigint@npm:7.8.3"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.8.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/686891b81af2bc74c39013655da368a480f17dd237bf9fbc32048e5865cb706d5a8f65438030da535b332b1d6b22feba336da8fa931f663b6b34e13147d12dde
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-class-properties@npm:^7.12.13":
+ version: 7.12.13
+ resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.12.13"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/95168fa186416195280b1264fb18afcdcdcea780b3515537b766cb90de6ce042d42dd6a204a39002f794ae5845b02afb0fd4861a3308a861204a55e68310a120
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-class-static-block@npm:^7.14.5":
+ version: 7.14.5
+ resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.14.5"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/4464bf9115f4a2d02ce1454411baf9cfb665af1da53709c5c56953e5e2913745b0fcce82982a00463d6facbdd93445c691024e310b91431a1e2f024b158f6371
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-dynamic-import@npm:^7.8.3":
+ version: 7.8.3
+ resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.8.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/9c50927bf71adf63f60c75370e2335879402648f468d0172bc912e303c6a3876927d8eb35807331b57f415392732ed05ab9b42c68ac30a936813ab549e0246c5
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-export-default-from@npm:^7.24.7":
+ version: 7.28.6
+ resolution: "@babel/plugin-syntax-export-default-from@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/7d01ef992ab7e1c8a08c9e5ebacc2ff82e10592d9bc7964c9903a6766f01d371e45c25848f793393795d603d63f54dd0626b0a148df003f2a234a0a90bb31e93
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-flow@npm:^7.12.1, @babel/plugin-syntax-flow@npm:^7.27.1":
+ version: 7.28.6
+ resolution: "@babel/plugin-syntax-flow@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/a00114adcbbdaef07638f6a2e8c3ea63d65b3d27f088e8e53c5f35b8dc50813c0e1006fac4fb109782f9cdd41ad2f1cb9838359fecbb3d1f6141b4002358f52c
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-import-assertions@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-syntax-import-assertions@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/f3b8bdccb9b4d3e3b9226684ca518e055399d05579da97dfe0160a38d65198cfe7dce809e73179d6463a863a040f980de32425a876d88efe4eda933d0d95982c
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-import-attributes@npm:^7.24.7, @babel/plugin-syntax-import-attributes@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-syntax-import-attributes@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/1be160e2c426faa74e5be2e30e39e8d0d8c543063bd5d06cd804f8751b8fbcb82ce824ca7f9ce4b09c003693f6c06a11ce503b7e34d85e1a259631e4c3f72ad2
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-import-meta@npm:^7.10.4":
+ version: 7.10.4
+ resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.10.4"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/0b08b5e4c3128523d8e346f8cfc86824f0da2697b1be12d71af50a31aff7a56ceb873ed28779121051475010c28d6146a6bfea8518b150b71eeb4e46190172ee
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-json-strings@npm:^7.8.3":
+ version: 7.8.3
+ resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.8.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/e98f31b2ec406c57757d115aac81d0336e8434101c224edd9a5c93cefa53faf63eacc69f3138960c8b25401315af03df37f68d316c151c4b933136716ed6906e
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-jsx@npm:^7.27.1, @babel/plugin-syntax-jsx@npm:^7.28.6, @babel/plugin-syntax-jsx@npm:^7.7.2":
+ version: 7.28.6
+ resolution: "@babel/plugin-syntax-jsx@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/b98fc3cd75e4ca3d5ca1162f610c286e14ede1486e0d297c13a5eb0ac85680ac9656d17d348bddd9160a54d797a08cea5eaac02b9330ddebb7b26732b7b99fb5
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4":
+ version: 7.10.4
+ resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.10.4"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/2594cfbe29411ad5bc2ad4058de7b2f6a8c5b86eda525a993959438615479e59c012c14aec979e538d60a584a1a799b60d1b8942c3b18468cb9d99b8fd34cd0b
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3":
+ version: 7.8.3
+ resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.8.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/2024fbb1162899094cfc81152449b12bd0cc7053c6d4bda8ac2852545c87d0a851b1b72ed9560673cbf3ef6248257262c3c04aabf73117215c1b9cc7dd2542ce
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-numeric-separator@npm:^7.10.4":
+ version: 7.10.4
+ resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.10.4"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/c55a82b3113480942c6aa2fcbe976ff9caa74b7b1109ff4369641dfbc88d1da348aceb3c31b6ed311c84d1e7c479440b961906c735d0ab494f688bf2fd5b9bb9
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3":
+ version: 7.8.3
+ resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.8.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/ee1eab52ea6437e3101a0a7018b0da698545230015fc8ab129d292980ec6dff94d265e9e90070e8ae5fed42f08f1622c14c94552c77bcac784b37f503a82ff26
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3":
+ version: 7.8.3
+ resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.8.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/27e2493ab67a8ea6d693af1287f7e9acec206d1213ff107a928e85e173741e1d594196f99fec50e9dde404b09164f39dec5864c767212154ffe1caa6af0bc5af
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-optional-chaining@npm:^7.8.3":
+ version: 7.8.3
+ resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.8.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/46edddf2faa6ebf94147b8e8540dfc60a5ab718e2de4d01b2c0bdf250a4d642c2bd47cbcbb739febcb2bf75514dbcefad3c52208787994b8d0f8822490f55e81
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5":
+ version: 7.14.5
+ resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.14.5"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/69822772561706c87f0a65bc92d0772cea74d6bc0911537904a676d5ff496a6d3ac4e05a166d8125fce4a16605bace141afc3611074e170a994e66e5397787f3
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-top-level-await@npm:^7.14.5":
+ version: 7.14.5
+ resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.14.5"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/14bf6e65d5bc1231ffa9def5f0ef30b19b51c218fcecaa78cd1bdf7939dfdf23f90336080b7f5196916368e399934ce5d581492d8292b46a2fb569d8b2da106f
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-typescript@npm:^7.28.6, @babel/plugin-syntax-typescript@npm:^7.7.2":
+ version: 7.28.6
+ resolution: "@babel/plugin-syntax-typescript@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/b0c392a35624883ac480277401ac7d92d8646b66e33639f5d350de7a6723924265985ae11ab9ebd551740ded261c443eaa9a87ea19def9763ca1e0d78c97dea8
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-syntax-unicode-sets-regex@npm:^7.18.6":
+ version: 7.18.6
+ resolution: "@babel/plugin-syntax-unicode-sets-regex@npm:7.18.6"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": "npm:^7.18.6"
+ "@babel/helper-plugin-utils": "npm:^7.18.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/9144e5b02a211a4fb9a0ce91063f94fbe1004e80bde3485a0910c9f14897cf83fabd8c21267907cff25db8e224858178df0517f14333cfcf3380ad9a4139cb50
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-arrow-functions@npm:^7.24.7, @babel/plugin-transform-arrow-functions@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-arrow-functions@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/19abd7a7d11eef58c9340408a4c2594503f6c4eaea1baa7b0e5fbdda89df097e50663edb3448ad2300170b39efca98a75e5767af05cad3b0facb4944326896a3
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-async-generator-functions@npm:^7.25.4, @babel/plugin-transform-async-generator-functions@npm:^7.29.0":
+ version: 7.29.0
+ resolution: "@babel/plugin-transform-async-generator-functions@npm:7.29.0"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/helper-remap-async-to-generator": "npm:^7.27.1"
+ "@babel/traverse": "npm:^7.29.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/4080fc5e7dad7761bfebbb4fbe06bdfeb3a8bf0c027bcb4373e59e6b3dc7c5002eca7cbb1afba801d6439df8f92f7bcb3fb862e8fbbe43a9e59bb5653dcc0568
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-async-to-generator@npm:^7.24.7, @babel/plugin-transform-async-to-generator@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-async-to-generator@npm:7.28.6"
+ dependencies:
+ "@babel/helper-module-imports": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/helper-remap-async-to-generator": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/2eb0826248587df6e50038f36194a138771a7df22581020451c7779edeaf9ef39bf47c5b7a20ae2645af6416e8c896feeca273317329652e84abd79a4ab920ad
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-block-scoped-functions@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/3313130ba3bf0699baad0e60da1c8c3c2f0c2c0a7039cd0063e54e72e739c33f1baadfc9d8c73b3fea8c85dd7250c3964fb09c8e1fa62ba0b24a9fefe0a8dbde
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-block-scoping@npm:^7.25.0, @babel/plugin-transform-block-scoping@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-block-scoping@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/2e3e09e1f9770b56cef4dcbffddf262508fd03416072f815ac66b2b224a3a12cd285cfec12fc067f1add414e7db5ce6dafb5164a6e0fb1a728e6a97d0c6f6e9d
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-class-properties@npm:^7.25.4, @babel/plugin-transform-class-properties@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-class-properties@npm:7.28.6"
+ dependencies:
+ "@babel/helper-create-class-features-plugin": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/c4327fcd730c239d9f173f9b695b57b801729e273b4848aef1f75818069dfd31d985d75175db188d947b9b1bbe5353dae298849042026a5e4fcf07582ff3f9f1
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-class-static-block@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-class-static-block@npm:7.28.6"
+ dependencies:
+ "@babel/helper-create-class-features-plugin": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.12.0
+ checksum: 10c0/dbe9b1fd302ae41b73186e17ac8d8ecf625ebc2416a91f2dc8013977a1bdf21e6ea288a83f084752b412242f3866e789d4fddeb428af323fe35b60e0fae4f98c
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-classes@npm:^7.25.4, @babel/plugin-transform-classes@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-classes@npm:7.28.6"
+ dependencies:
+ "@babel/helper-annotate-as-pure": "npm:^7.27.3"
+ "@babel/helper-compilation-targets": "npm:^7.28.6"
+ "@babel/helper-globals": "npm:^7.28.0"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/helper-replace-supers": "npm:^7.28.6"
+ "@babel/traverse": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/dc22f1f6eadab17305128fbf9cc5f30e87a51a77dd0a6d5498097994e8a9b9a90ab298c11edf2342acbeaac9edc9c601cad72eedcf4b592cd465a787d7f41490
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-computed-properties@npm:^7.24.7, @babel/plugin-transform-computed-properties@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-computed-properties@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/template": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/1e9893503ae6d651125701cc29450e87c0b873c8febebff19da75da9c40cfb7968c52c28bf948244e461110aeb7b3591f2cc199b7406ff74a24c50c7a5729f39
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-destructuring@npm:^7.24.8, @babel/plugin-transform-destructuring@npm:^7.28.5":
+ version: 7.28.5
+ resolution: "@babel/plugin-transform-destructuring@npm:7.28.5"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/traverse": "npm:^7.28.5"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/288207f488412b23bb206c7c01ba143714e2506b72a9ec09e993f28366cc8188d121bde714659b3437984a86d2881d9b1b06de3089d5582823ccf2f3b3eaa2c4
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-dotall-regex@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-dotall-regex@npm:7.28.6"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/e2fb76b7ae99087cf4212013a3ca9dee07048f90f98fd6264855080fb6c3f169be11c9b8c9d8b26cf9a407e4d0a5fa6e103f7cef433a542b75cf7127c99d4f97
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-duplicate-keys@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-duplicate-keys@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/22a822e5342b7066f83eaedc4fd9bb044ac6bc68725484690b33ba04a7104980e43ea3229de439286cb8db8e7db4a865733a3f05123ab58a10f189f03553746f
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.29.0":
+ version: 7.29.0
+ resolution: "@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:7.29.0"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/6f03d9e5e31a05b28555541be6e283407e08447a36be6ddf8068b3efa970411d832e04b1282e2b894baf89a3864ff7e7f1e36346652a8d983170c6d548555167
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-dynamic-import@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-dynamic-import@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/8dcd3087aca134b064fc361d2cc34eec1f900f6be039b6368104afcef10bb75dea726bb18cabd046716b89b0edaa771f50189fa16bc5c5914a38cbcf166350f7
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-explicit-resource-management@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-explicit-resource-management@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/plugin-transform-destructuring": "npm:^7.28.5"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/e6ea28c26e058fe61ada3e70b0def1992dd5a44f5fc14d8e2c6a3a512fb4d4c6dc96a3e1d0b466d83db32a9101e0b02df94051e48d3140da115b8ea9f8a31f37
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-exponentiation-operator@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/4572d955a50dbc9a652a19431b4bb822cb479ee6045f4e6df72659c499c13036da0a2adf650b07ca995f2781e80aa868943bea1e7bff1de3169ec3f0a73a902e
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-export-namespace-from@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-export-namespace-from@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/d7165cad11f571a54c8d9263d6c6bf2b817aff4874f747cb51e6e49efb32f2c9b37a6850cdb5e3b81e0b638141bb77dc782a6ec1a94128859fbdf7767581e07c
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-flow-strip-types@npm:^7.25.2, @babel/plugin-transform-flow-strip-types@npm:^7.26.5, @babel/plugin-transform-flow-strip-types@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-flow-strip-types@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/plugin-syntax-flow": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/c61c43244aacdcd479ad9ba618e1c095a5db7e4eadc3d19249602febc4e97153230273c014933f5fe4e92062fa56dab9bed4bc430197d5b2ffeb2158a4bf6786
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-for-of@npm:^7.24.7, @babel/plugin-transform-for-of@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-for-of@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/4635763173a23aae24480681f2b0996b4f54a0cb2368880301a1801638242e263132d1e8adbe112ab272913d1d900ee0d6f7dea79443aef9d3325168cd88b3fb
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-function-name@npm:^7.25.1, @babel/plugin-transform-function-name@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-function-name@npm:7.27.1"
+ dependencies:
+ "@babel/helper-compilation-targets": "npm:^7.27.1"
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/traverse": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/5abdc7b5945fbd807269dcc6e76e52b69235056023b0b35d311e8f5dfd6c09d9f225839798998fc3b663f50cf701457ddb76517025a0d7a5474f3fe56e567a4c
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-json-strings@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-json-strings@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/ab1091798c58e6c0bb8a864ee2b727c400924592c6ed69797a26b4c205f850a935de77ad516570be0419c279a3d9f7740c2aa448762eb8364ea77a6a357a9653
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-literals@npm:^7.25.2, @babel/plugin-transform-literals@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-literals@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/c40dc3eb2f45a92ee476412314a40e471af51a0f51a24e91b85cef5fc59f4fe06758088f541643f07f949d2c67ee7bdce10e11c5ec56791ae09b15c3b451eeca
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-logical-assignment-operators@npm:^7.24.7, @babel/plugin-transform-logical-assignment-operators@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/4632a35453d2131f0be466681d0a33e3db44d868ff51ec46cd87e0ebd1e47c6a39b894f7d1c9b06f931addf6efa9d30e60c4cdedeb4f69d426f683e11f8490cf
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-member-expression-literals@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-member-expression-literals@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/0874ccebbd1c6a155e5f6b3b29729fade1221b73152567c1af1e1a7c12848004dffecbd7eded6dc463955120040ae57c17cb586b53fb5a7a27fcd88177034c30
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-modules-amd@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-modules-amd@npm:7.27.1"
+ dependencies:
+ "@babel/helper-module-transforms": "npm:^7.27.1"
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/76e86cd278b6a3c5b8cca8dfb3428e9cd0c81a5df7096e04c783c506696b916a9561386d610a9d846ef64804640e0bd818ea47455fed0ee89b7f66c555b29537
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-modules-commonjs@npm:^7.13.8, @babel/plugin-transform-modules-commonjs@npm:^7.24.8, @babel/plugin-transform-modules-commonjs@npm:^7.27.1, @babel/plugin-transform-modules-commonjs@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-modules-commonjs@npm:7.28.6"
+ dependencies:
+ "@babel/helper-module-transforms": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/7c45992797c6150644c8552feff4a016ba7bd6d59ff2b039ed969a9c5b20a6804cd9d21db5045fc8cca8ca7f08262497e354e93f8f2be6a1cdf3fbfa8c31a9b6
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-modules-systemjs@npm:^7.29.0":
+ version: 7.29.0
+ resolution: "@babel/plugin-transform-modules-systemjs@npm:7.29.0"
+ dependencies:
+ "@babel/helper-module-transforms": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/helper-validator-identifier": "npm:^7.28.5"
+ "@babel/traverse": "npm:^7.29.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/44ea502f2c990398b7d9adc5b44d9e1810a0a5e86eebc05c92d039458f0b3994fe243efa9353b90f8a648d8a91b79845fb353d8679d7324cc9de0162d732771d
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-modules-umd@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-modules-umd@npm:7.27.1"
+ dependencies:
+ "@babel/helper-module-transforms": "npm:^7.27.1"
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/e5962a8874889da2ab1aa32eb93ec21d419c7423c766e4befb39b4bb512b9ad44b47837b6cd1c8f1065445cbbcc6dc2be10298ac6e734e5ca1059fc23698daed
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.24.7, @babel/plugin-transform-named-capturing-groups-regex@npm:^7.29.0":
+ version: 7.29.0
+ resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.29.0"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/1904db22da7f2bc3e380cd2c0786bda330ee1b1b3efa3f5203d980708c4bfeb5daa4dff48d01692193040bcc5f275dbdc0c2eadc8b1eb1b6dfe363564ad6e898
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-new-target@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-new-target@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/9b0581412fcc5ab1b9a2d86a0c5407bd959391f0a1e77a46953fef9f7a57f3f4020d75f71098c5f9e5dcc680a87f9fd99b3205ab12e25ef8c19eed038c1e4b28
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.24.7, @babel/plugin-transform-nullish-coalescing-operator@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/6607f2201d66ccb688f0b1db09475ef995837df19f14705da41f693b669f834c206147a854864ab107913d7b4f4748878b0cd9fe9ca8bfd1bee0c206fc027b49
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-numeric-separator@npm:^7.24.7, @babel/plugin-transform-numeric-separator@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-numeric-separator@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/191097d8d2753cdd16d1acca65a945d1645ab20b65655c2f5b030a9e38967a52e093dcb21ebf391e342222705c6ffe5dea15dafd6257f7b51b77fb64a830b637
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-object-rest-spread@npm:^7.24.7, @babel/plugin-transform-object-rest-spread@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-object-rest-spread@npm:7.28.6"
+ dependencies:
+ "@babel/helper-compilation-targets": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/plugin-transform-destructuring": "npm:^7.28.5"
+ "@babel/plugin-transform-parameters": "npm:^7.27.7"
+ "@babel/traverse": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/f55334352d4fcde385f2e8a58836687e71ff668c9b6e4c34d52575bf2789cdde92d9d3116edba13647ac0bc3e51fb2a6d1e8fb822dce7e8123334b82600bc4c3
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-object-super@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-object-super@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/helper-replace-supers": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/efa2d092ef55105deb06d30aff4e460c57779b94861188128489b72378bf1f0ab0f06a4a4d68b9ae2a59a79719fbb2d148b9a3dca19ceff9c73b1f1a95e0527c
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-optional-catch-binding@npm:^7.24.7, @babel/plugin-transform-optional-catch-binding@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/36e8face000ee65e478a55febf687ce9be7513ad498c60dfe585851555565e0c28e7cb891b3c59709318539ce46f7697d5f42130eb18f385cd47e47cfa297446
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-optional-chaining@npm:^7.24.8, @babel/plugin-transform-optional-chaining@npm:^7.27.1, @babel/plugin-transform-optional-chaining@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-optional-chaining@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/c159cc74115c2266be21791f192dd079e2aeb65c8731157e53b80fcefa41e8e28ad370021d4dfbdb31f25e5afa0322669a8eb2d032cd96e65ac37e020324c763
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-parameters@npm:^7.24.7, @babel/plugin-transform-parameters@npm:^7.27.7":
+ version: 7.27.7
+ resolution: "@babel/plugin-transform-parameters@npm:7.27.7"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/f2da3804e047d9f1cfb27be6c014e2c7f6cf5e1e38290d1cb3cb2607859e3d6facb4ee8c8c1e336e9fbb440091a174ce95ce156582d7e8bf9c0e735d11681f0f
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-private-methods@npm:^7.24.7, @babel/plugin-transform-private-methods@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-private-methods@npm:7.28.6"
+ dependencies:
+ "@babel/helper-create-class-features-plugin": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/fb504e2bfdcf3f734d2a90ab20d61427c58385f57f950d3de6ff4e6d12dd4aa7d552147312d218367e129b7920dccfc3230ba554de861986cda38921bad84067
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-private-property-in-object@npm:^7.24.7, @babel/plugin-transform-private-property-in-object@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-private-property-in-object@npm:7.28.6"
+ dependencies:
+ "@babel/helper-annotate-as-pure": "npm:^7.27.3"
+ "@babel/helper-create-class-features-plugin": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/0f6bbc6ec3f93b556d3de7d56bf49335255fc4c43488e51a5025d6ee0286183fd3cf950ffcac1bbeed8a45777f860a49996455c8d3b4a04c3b1a5f28e697fe31
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-property-literals@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-property-literals@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/15713a87edd6db620d6e66eb551b4fbfff5b8232c460c7c76cedf98efdc5cd21080c97040231e19e06594c6d7dfa66e1ab3d0951e29d5814fb25e813f6d6209c
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-react-display-name@npm:^7.24.7, @babel/plugin-transform-react-display-name@npm:^7.28.0":
+ version: 7.28.0
+ resolution: "@babel/plugin-transform-react-display-name@npm:7.28.0"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/f5f86d2ad92be3e962158f344c2e385e23e2dfae7c8c7dc32138fb2cc46f63f5e50386c9f6c6fc16dbf1792c7bb650ad92c18203d0c2c0bd875bc28b0b80ef30
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-react-jsx-development@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-react-jsx-development@npm:7.27.1"
+ dependencies:
+ "@babel/plugin-transform-react-jsx": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/eb8c4b6a79dc5c49b41e928e2037e1ee0bbfa722e4fd74c0b7c0d11103c82c2c25c434000e1b051d534c7261ab5c92b6d1e85313bf1b26e37db3f051ae217b58
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-react-jsx-self@npm:^7.24.7":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-react-jsx-self@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/00a4f917b70a608f9aca2fb39aabe04a60aa33165a7e0105fd44b3a8531630eb85bf5572e9f242f51e6ad2fa38c2e7e780902176c863556c58b5ba6f6e164031
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-react-jsx-source@npm:^7.24.7":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-react-jsx-source@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/5e67b56c39c4d03e59e03ba80692b24c5a921472079b63af711b1d250fc37c1733a17069b63537f750f3e937ec44a42b1ee6a46cd23b1a0df5163b17f741f7f2
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-react-jsx@npm:^7.25.2, @babel/plugin-transform-react-jsx@npm:^7.27.1":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-react-jsx@npm:7.28.6"
+ dependencies:
+ "@babel/helper-annotate-as-pure": "npm:^7.27.3"
+ "@babel/helper-module-imports": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/plugin-syntax-jsx": "npm:^7.28.6"
+ "@babel/types": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/cc75b9bb3997751df6cf7e86afe1b3fa33130b5031a412f6f12cc5faec083650fe852de0af5ec8f88d3588cc3428a3f514d3bc1f423d26f8b014cc5dff9f15a7
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-react-pure-annotations@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-react-pure-annotations@npm:7.27.1"
+ dependencies:
+ "@babel/helper-annotate-as-pure": "npm:^7.27.1"
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/34bc090f4a7e460d82a851971b4d0f32e4bb519bafb927154f4174506283fe02b0f471fc20655c6050a8bf7b748bfa31c7e8f7d688849476d8266623554fbb28
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-regenerator@npm:^7.24.7, @babel/plugin-transform-regenerator@npm:^7.29.0":
+ version: 7.29.0
+ resolution: "@babel/plugin-transform-regenerator@npm:7.29.0"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/86c7db9b97f85ee47c0fae0528802cbc06e5775e61580ee905335c16bb971270086764a3859873d9adcd7d0f913a5b93eb0dc271aec8fb9e93e090e4ac95e29e
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-regexp-modifiers@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-regexp-modifiers@npm:7.28.6"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/97e36b086800f71694fa406abc00192e3833662f2bdd5f51c018bd0c95eef247c4ae187417c207d03a9c5374342eac0bb65a39112c431a9b23b09b1eda1562e5
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-reserved-words@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-reserved-words@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/e1a87691cce21a644a474d7c9a8107d4486c062957be32042d40f0a3d0cc66e00a3150989655019c255ff020d2640ac16aaf544792717d586f219f3bad295567
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-runtime@npm:^7.24.7":
+ version: 7.29.0
+ resolution: "@babel/plugin-transform-runtime@npm:7.29.0"
+ dependencies:
+ "@babel/helper-module-imports": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ babel-plugin-polyfill-corejs2: "npm:^0.4.14"
+ babel-plugin-polyfill-corejs3: "npm:^0.13.0"
+ babel-plugin-polyfill-regenerator: "npm:^0.6.5"
+ semver: "npm:^6.3.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/05a451cb96a1e6ccfdd1a123773208615cd14cb156aa0aa99a448d86e4326b36b9ab2be8267037bd27644a5918dac88378b791d020b3c08a4fd8f3415621a006
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-shorthand-properties@npm:^7.24.7, @babel/plugin-transform-shorthand-properties@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-shorthand-properties@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/bd5544b89520a22c41a6df5ddac9039821d3334c0ef364d18b0ba9674c5071c223bcc98be5867dc3865cb10796882b7594e2c40dedaff38e1b1273913fe353e1
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-spread@npm:^7.24.7, @babel/plugin-transform-spread@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-spread@npm:7.28.6"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/bcac50e558d6f0c501cbce19ec197af558cef51fe3b3a6eba27276e323e57a5be28109b4264a5425ac12a67bf95d6af9c2a42b05e79c522ce913fb9529259d76
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-sticky-regex@npm:^7.24.7, @babel/plugin-transform-sticky-regex@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-sticky-regex@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/5698df2d924f0b1b7bdb7ef370e83f99ed3f0964eb3b9c27d774d021bee7f6d45f9a73e2be369d90b4aff1603ce29827f8743f091789960e7669daf9c3cda850
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-strict-mode@npm:^7.24.7":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-strict-mode@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/e280406a948da3603daa0aeea01e4ba9797c81ceb3743fa052552fc7a257da29f68ece772d40dc03d9e07579de03a31042d17825b3f9ec1bf16785bbebb11d57
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-template-literals@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-template-literals@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/c90f403e42ef062b60654d1c122c70f3ec6f00c2f304b0931ebe6d0b432498ef8a5ef9266ddf00debc535f8390842207e44d3900eff1d2bab0cc1a700f03e083
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-typeof-symbol@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-typeof-symbol@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/a13c68015311fefa06a51830bc69d5badd06c881b13d5cf9ba04bf7c73e3fc6311cc889e18d9645ce2a64a79456dc9c7be88476c0b6802f62a686cb6f662ecd6
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-typescript@npm:^7.25.2, @babel/plugin-transform-typescript@npm:^7.28.5":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-typescript@npm:7.28.6"
+ dependencies:
+ "@babel/helper-annotate-as-pure": "npm:^7.27.3"
+ "@babel/helper-create-class-features-plugin": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
+ "@babel/plugin-syntax-typescript": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/72dbfd3e5f71c4e30445e610758ec0eef65347fafd72bd46f4903733df0d537663a72a81c1626f213a0feab7afc68ba83f1648ffece888dd0868115c9cb748f6
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-unicode-escapes@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-unicode-escapes@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/a6809e0ca69d77ee9804e0c1164e8a2dea5e40718f6dcf234aeddf7292e7414f7ee331d87f17eb6f160823a329d1d6751bd49b35b392ac4a6efc032e4d3038d8
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-unicode-property-regex@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-unicode-property-regex@npm:7.28.6"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/b25f8cde643f4f47e0fa4f7b5c552e2dfbb6ad0ce07cf40f7e8ae40daa9855ad855d76d4d6d010153b74e48c8794685955c92ca637c0da152ce5f0fa9e7c90fa
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-unicode-regex@npm:^7.24.7, @babel/plugin-transform-unicode-regex@npm:^7.27.1":
+ version: 7.27.1
+ resolution: "@babel/plugin-transform-unicode-regex@npm:7.27.1"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": "npm:^7.27.1"
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/6abda1bcffb79feba6f5c691859cdbe984cc96481ea65d5af5ba97c2e843154005f0886e25006a37a2d213c0243506a06eaeafd93a040dbe1f79539016a0d17a
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-unicode-sets-regex@npm:^7.28.6":
+ version: 7.28.6
+ resolution: "@babel/plugin-transform-unicode-sets-regex@npm:7.28.6"
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/c03c8818736b138db73d1f7a96fbfa22d1994639164d743f0f00e6383d3b7b3144d333de960ff4afad0bddd0baaac257295e3316969eba995b1b6a1b4dec933e
+ languageName: node
+ linkType: hard
+
+"@babel/preset-env@npm:^7.25.2":
+ version: 7.29.2
+ resolution: "@babel/preset-env@npm:7.29.2"
+ dependencies:
+ "@babel/compat-data": "npm:^7.29.0"
+ "@babel/helper-compilation-targets": "npm:^7.28.6"
+ "@babel/helper-plugin-utils": "npm:^7.28.6"
+ "@babel/helper-validator-option": "npm:^7.27.1"
+ "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "npm:^7.28.5"
+ "@babel/plugin-bugfix-safari-class-field-initializer-scope": "npm:^7.27.1"
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "npm:^7.27.1"
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "npm:^7.27.1"
+ "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "npm:^7.28.6"
+ "@babel/plugin-proposal-private-property-in-object": "npm:7.21.0-placeholder-for-preset-env.2"
+ "@babel/plugin-syntax-import-assertions": "npm:^7.28.6"
+ "@babel/plugin-syntax-import-attributes": "npm:^7.28.6"
+ "@babel/plugin-syntax-unicode-sets-regex": "npm:^7.18.6"
+ "@babel/plugin-transform-arrow-functions": "npm:^7.27.1"
+ "@babel/plugin-transform-async-generator-functions": "npm:^7.29.0"
+ "@babel/plugin-transform-async-to-generator": "npm:^7.28.6"
+ "@babel/plugin-transform-block-scoped-functions": "npm:^7.27.1"
+ "@babel/plugin-transform-block-scoping": "npm:^7.28.6"
+ "@babel/plugin-transform-class-properties": "npm:^7.28.6"
+ "@babel/plugin-transform-class-static-block": "npm:^7.28.6"
+ "@babel/plugin-transform-classes": "npm:^7.28.6"
+ "@babel/plugin-transform-computed-properties": "npm:^7.28.6"
+ "@babel/plugin-transform-destructuring": "npm:^7.28.5"
+ "@babel/plugin-transform-dotall-regex": "npm:^7.28.6"
+ "@babel/plugin-transform-duplicate-keys": "npm:^7.27.1"
+ "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "npm:^7.29.0"
+ "@babel/plugin-transform-dynamic-import": "npm:^7.27.1"
+ "@babel/plugin-transform-explicit-resource-management": "npm:^7.28.6"
+ "@babel/plugin-transform-exponentiation-operator": "npm:^7.28.6"
+ "@babel/plugin-transform-export-namespace-from": "npm:^7.27.1"
+ "@babel/plugin-transform-for-of": "npm:^7.27.1"
+ "@babel/plugin-transform-function-name": "npm:^7.27.1"
+ "@babel/plugin-transform-json-strings": "npm:^7.28.6"
+ "@babel/plugin-transform-literals": "npm:^7.27.1"
+ "@babel/plugin-transform-logical-assignment-operators": "npm:^7.28.6"
+ "@babel/plugin-transform-member-expression-literals": "npm:^7.27.1"
+ "@babel/plugin-transform-modules-amd": "npm:^7.27.1"
+ "@babel/plugin-transform-modules-commonjs": "npm:^7.28.6"
+ "@babel/plugin-transform-modules-systemjs": "npm:^7.29.0"
+ "@babel/plugin-transform-modules-umd": "npm:^7.27.1"
+ "@babel/plugin-transform-named-capturing-groups-regex": "npm:^7.29.0"
+ "@babel/plugin-transform-new-target": "npm:^7.27.1"
+ "@babel/plugin-transform-nullish-coalescing-operator": "npm:^7.28.6"
+ "@babel/plugin-transform-numeric-separator": "npm:^7.28.6"
+ "@babel/plugin-transform-object-rest-spread": "npm:^7.28.6"
+ "@babel/plugin-transform-object-super": "npm:^7.27.1"
+ "@babel/plugin-transform-optional-catch-binding": "npm:^7.28.6"
+ "@babel/plugin-transform-optional-chaining": "npm:^7.28.6"
+ "@babel/plugin-transform-parameters": "npm:^7.27.7"
+ "@babel/plugin-transform-private-methods": "npm:^7.28.6"
+ "@babel/plugin-transform-private-property-in-object": "npm:^7.28.6"
+ "@babel/plugin-transform-property-literals": "npm:^7.27.1"
+ "@babel/plugin-transform-regenerator": "npm:^7.29.0"
+ "@babel/plugin-transform-regexp-modifiers": "npm:^7.28.6"
+ "@babel/plugin-transform-reserved-words": "npm:^7.27.1"
+ "@babel/plugin-transform-shorthand-properties": "npm:^7.27.1"
+ "@babel/plugin-transform-spread": "npm:^7.28.6"
+ "@babel/plugin-transform-sticky-regex": "npm:^7.27.1"
+ "@babel/plugin-transform-template-literals": "npm:^7.27.1"
+ "@babel/plugin-transform-typeof-symbol": "npm:^7.27.1"
+ "@babel/plugin-transform-unicode-escapes": "npm:^7.27.1"
+ "@babel/plugin-transform-unicode-property-regex": "npm:^7.28.6"
+ "@babel/plugin-transform-unicode-regex": "npm:^7.27.1"
+ "@babel/plugin-transform-unicode-sets-regex": "npm:^7.28.6"
+ "@babel/preset-modules": "npm:0.1.6-no-external-plugins"
+ babel-plugin-polyfill-corejs2: "npm:^0.4.15"
+ babel-plugin-polyfill-corejs3: "npm:^0.14.0"
+ babel-plugin-polyfill-regenerator: "npm:^0.6.6"
+ core-js-compat: "npm:^3.48.0"
+ semver: "npm:^6.3.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/d49cb005f2dbc3f2293ab6d80ee8f1380e6215af5518fe26b087c8961c1ea8ebaa554dfce589abe1fbebac25ad7c2515d943dec3859ea2d4981a3f8f4711c580
+ languageName: node
+ linkType: hard
+
+"@babel/preset-flow@npm:^7.13.13":
+ version: 7.27.1
+ resolution: "@babel/preset-flow@npm:7.27.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/helper-validator-option": "npm:^7.27.1"
+ "@babel/plugin-transform-flow-strip-types": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/252216c91ba3cc126f10c81c1df495ef2c622687d17373bc619354a7fb7280ea83f434ed1e7149dbddd712790d16ab60f5b864d007edd153931d780f834e52c1
+ languageName: node
+ linkType: hard
+
+"@babel/preset-modules@npm:0.1.6-no-external-plugins":
+ version: 0.1.6-no-external-plugins
+ resolution: "@babel/preset-modules@npm:0.1.6-no-external-plugins"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.0.0"
+ "@babel/types": "npm:^7.4.4"
+ esutils: "npm:^2.0.2"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0 || ^8.0.0-0 <8.0.0
+ checksum: 10c0/9d02f70d7052446c5f3a4fb39e6b632695fb6801e46d31d7f7c5001f7c18d31d1ea8369212331ca7ad4e7877b73231f470b0d559162624128f1b80fe591409e6
+ languageName: node
+ linkType: hard
+
+"@babel/preset-react@npm:^7.24.7":
+ version: 7.28.5
+ resolution: "@babel/preset-react@npm:7.28.5"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/helper-validator-option": "npm:^7.27.1"
+ "@babel/plugin-transform-react-display-name": "npm:^7.28.0"
+ "@babel/plugin-transform-react-jsx": "npm:^7.27.1"
+ "@babel/plugin-transform-react-jsx-development": "npm:^7.27.1"
+ "@babel/plugin-transform-react-pure-annotations": "npm:^7.27.1"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/0d785e708ff301f4102bd4738b77e550e32f981e54dfd3de1191b4d68306bbb934d2d465fc78a6bc22fff0a6b3ce3195a53984f52755c4349e7264c7e01e8c7c
+ languageName: node
+ linkType: hard
+
+"@babel/preset-typescript@npm:^7.13.0, @babel/preset-typescript@npm:^7.24.7":
+ version: 7.28.5
+ resolution: "@babel/preset-typescript@npm:7.28.5"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.27.1"
+ "@babel/helper-validator-option": "npm:^7.27.1"
+ "@babel/plugin-syntax-jsx": "npm:^7.27.1"
+ "@babel/plugin-transform-modules-commonjs": "npm:^7.27.1"
+ "@babel/plugin-transform-typescript": "npm:^7.28.5"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/b3d55548854c105085dd80f638147aa8295bc186d70492289242d6c857cb03a6c61ec15186440ea10ed4a71cdde7d495f5eb3feda46273f36b0ac926e8409629
+ languageName: node
+ linkType: hard
+
+"@babel/register@npm:^7.13.16":
+ version: 7.28.6
+ resolution: "@babel/register@npm:7.28.6"
+ dependencies:
+ clone-deep: "npm:^4.0.1"
+ find-cache-dir: "npm:^2.0.0"
+ make-dir: "npm:^2.1.0"
+ pirates: "npm:^4.0.6"
+ source-map-support: "npm:^0.5.16"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/372380504970cf7654c2d65e09c34ed0b3217da64cb0edb6376a89eba7b603c8bdaba666eead7dcd6ed21badd52d396c2c0d6f914ae4dc6c9009e3d03d260e98
+ languageName: node
+ linkType: hard
+
+"@babel/runtime@npm:^7.25.0, @babel/runtime@npm:^7.28.4":
+ version: 7.29.2
+ resolution: "@babel/runtime@npm:7.29.2"
+ checksum: 10c0/30b80a0140d16467792e1bbeb06f655b0dab70407da38dfac7fedae9c859f9ae9d846ef14ad77bd3814c064295fe9b1bc551f1541ea14646ae9f22b71a8bc17a
+ languageName: node
+ linkType: hard
+
+"@babel/template@npm:^7.25.0, @babel/template@npm:^7.28.6, @babel/template@npm:^7.3.3":
+ version: 7.28.6
+ resolution: "@babel/template@npm:7.28.6"
+ dependencies:
+ "@babel/code-frame": "npm:^7.28.6"
+ "@babel/parser": "npm:^7.28.6"
+ "@babel/types": "npm:^7.28.6"
+ checksum: 10c0/66d87225ed0bc77f888181ae2d97845021838c619944877f7c4398c6748bcf611f216dfd6be74d39016af502bca876e6ce6873db3c49e4ac354c56d34d57e9f5
+ languageName: node
+ linkType: hard
+
+"@babel/traverse--for-generate-function-map@npm:@babel/traverse@^7.25.3, @babel/traverse@npm:^7.25.3, @babel/traverse@npm:^7.27.1, @babel/traverse@npm:^7.28.5, @babel/traverse@npm:^7.28.6, @babel/traverse@npm:^7.29.0":
+ version: 7.29.0
+ resolution: "@babel/traverse@npm:7.29.0"
+ dependencies:
+ "@babel/code-frame": "npm:^7.29.0"
+ "@babel/generator": "npm:^7.29.0"
+ "@babel/helper-globals": "npm:^7.28.0"
+ "@babel/parser": "npm:^7.29.0"
+ "@babel/template": "npm:^7.28.6"
+ "@babel/types": "npm:^7.29.0"
+ debug: "npm:^4.3.1"
+ checksum: 10c0/f63ef6e58d02a9fbf3c0e2e5f1c877da3e0bc57f91a19d2223d53e356a76859cbaf51171c9211c71816d94a0e69efa2732fd27ffc0e1bbc84b636e60932333eb
+ languageName: node
+ linkType: hard
+
+"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.25.2, @babel/types@npm:^7.27.1, @babel/types@npm:^7.27.3, @babel/types@npm:^7.28.2, @babel/types@npm:^7.28.5, @babel/types@npm:^7.28.6, @babel/types@npm:^7.29.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4":
+ version: 7.29.0
+ resolution: "@babel/types@npm:7.29.0"
+ dependencies:
+ "@babel/helper-string-parser": "npm:^7.27.1"
+ "@babel/helper-validator-identifier": "npm:^7.28.5"
+ checksum: 10c0/23cc3466e83bcbfab8b9bd0edaafdb5d4efdb88b82b3be6728bbade5ba2f0996f84f63b1c5f7a8c0d67efded28300898a5f930b171bb40b311bca2029c4e9b4f
+ languageName: node
+ linkType: hard
+
+"@bcoe/v8-coverage@npm:^0.2.3":
+ version: 0.2.3
+ resolution: "@bcoe/v8-coverage@npm:0.2.3"
+ checksum: 10c0/6b80ae4cb3db53f486da2dc63b6e190a74c8c3cca16bb2733f234a0b6a9382b09b146488ae08e2b22cf00f6c83e20f3e040a2f7894f05c045c946d6a090b1d52
+ languageName: node
+ linkType: hard
+
+"@commitlint/cli@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/cli@npm:17.8.1"
+ dependencies:
+ "@commitlint/format": "npm:^17.8.1"
+ "@commitlint/lint": "npm:^17.8.1"
+ "@commitlint/load": "npm:^17.8.1"
+ "@commitlint/read": "npm:^17.8.1"
+ "@commitlint/types": "npm:^17.8.1"
+ execa: "npm:^5.0.0"
+ lodash.isfunction: "npm:^3.0.9"
+ resolve-from: "npm:5.0.0"
+ resolve-global: "npm:1.0.0"
+ yargs: "npm:^17.0.0"
+ bin:
+ commitlint: cli.js
+ checksum: 10c0/d8f4f3d8601703271f6cef15f5a35864de1e4f949fba7a8bf5c8be786ed4d231208b7322068c5126d08d0885ecfec77cf0fcdc12ae59e72b514d68dbccd4451f
+ languageName: node
+ linkType: hard
+
+"@commitlint/config-conventional@npm:^17.0.2":
+ version: 17.8.1
+ resolution: "@commitlint/config-conventional@npm:17.8.1"
+ dependencies:
+ conventional-changelog-conventionalcommits: "npm:^6.1.0"
+ checksum: 10c0/70abdc9f1361386060b30620decc376bc33ff0c27c6f2f89511df1d53127d238af7c3409db22651282caa614d54b91b1f5e35905d12b1f5db70603c351f6e482
+ languageName: node
+ linkType: hard
+
+"@commitlint/config-validator@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/config-validator@npm:17.8.1"
+ dependencies:
+ "@commitlint/types": "npm:^17.8.1"
+ ajv: "npm:^8.11.0"
+ checksum: 10c0/f60a000832c878cb2133aae34599f5b4a38d00bdbead9a07147b00b39a06a1aa59021268198795509a2bea69ddbf8c676c20209146b8d7a628405f5e6b6b9ee1
+ languageName: node
+ linkType: hard
+
+"@commitlint/ensure@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/ensure@npm:17.8.1"
+ dependencies:
+ "@commitlint/types": "npm:^17.8.1"
+ lodash.camelcase: "npm:^4.3.0"
+ lodash.kebabcase: "npm:^4.1.1"
+ lodash.snakecase: "npm:^4.1.1"
+ lodash.startcase: "npm:^4.4.0"
+ lodash.upperfirst: "npm:^4.3.1"
+ checksum: 10c0/35b3b754f290cec71fa5f76e1fde02eabd8b301c24a37f2309a994cd698416c00cc4d5abc591af95846b667db01943ede9817dcb3358d7dcb73e9da1410b5ebe
+ languageName: node
+ linkType: hard
+
+"@commitlint/execute-rule@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/execute-rule@npm:17.8.1"
+ checksum: 10c0/fa952f10caf48d934668227dcef257e406ea6c9ed0a710c1ec29984ef128c49c985f7d490ad0481dffc694da2d5bc171862e9a17feebab136b163cd92ee14f19
+ languageName: node
+ linkType: hard
+
+"@commitlint/format@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/format@npm:17.8.1"
+ dependencies:
+ "@commitlint/types": "npm:^17.8.1"
+ chalk: "npm:^4.1.0"
+ checksum: 10c0/2a42291cbff467b343a2c2c14fa049a04ba0c2913fd9e6cc7550ac31be9581c8c6d1ce4e7cadccf011228be6e1b513a704f793e5cdd82995c97a7629a68e806c
+ languageName: node
+ linkType: hard
+
+"@commitlint/is-ignored@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/is-ignored@npm:17.8.1"
+ dependencies:
+ "@commitlint/types": "npm:^17.8.1"
+ semver: "npm:7.5.4"
+ checksum: 10c0/7a7f90ffb25a16a3a2e08a53e0a8c08d4c5d9646a3e3bd8372fdd8f1f8bc260a97fcf4bf58420140da4d16675c13ecc007b41836d173d4efb71942173b0717e3
+ languageName: node
+ linkType: hard
+
+"@commitlint/lint@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/lint@npm:17.8.1"
+ dependencies:
+ "@commitlint/is-ignored": "npm:^17.8.1"
+ "@commitlint/parse": "npm:^17.8.1"
+ "@commitlint/rules": "npm:^17.8.1"
+ "@commitlint/types": "npm:^17.8.1"
+ checksum: 10c0/7cd6ab67d76d7cbacaf4adf80ca1785f12882c900222cb8e575df1b766bfbeaa022b5c9f59ee3ae6f99deb6ec884787c01e4e80b28867469c7fb08a968b5b495
+ languageName: node
+ linkType: hard
+
+"@commitlint/load@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/load@npm:17.8.1"
+ dependencies:
+ "@commitlint/config-validator": "npm:^17.8.1"
+ "@commitlint/execute-rule": "npm:^17.8.1"
+ "@commitlint/resolve-extends": "npm:^17.8.1"
+ "@commitlint/types": "npm:^17.8.1"
+ "@types/node": "npm:20.5.1"
+ chalk: "npm:^4.1.0"
+ cosmiconfig: "npm:^8.0.0"
+ cosmiconfig-typescript-loader: "npm:^4.0.0"
+ lodash.isplainobject: "npm:^4.0.6"
+ lodash.merge: "npm:^4.6.2"
+ lodash.uniq: "npm:^4.5.0"
+ resolve-from: "npm:^5.0.0"
+ ts-node: "npm:^10.8.1"
+ typescript: "npm:^4.6.4 || ^5.2.2"
+ checksum: 10c0/2a1345660e6deb3acd649c49487f7311d5678b8f09bd2bf9e8c6d0a1895b439c1811ff5524b0072dd251fbf751cffa199443bbb0a22a086520475227ca878bb6
+ languageName: node
+ linkType: hard
+
+"@commitlint/message@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/message@npm:17.8.1"
+ checksum: 10c0/e8d7e7874e38e599f17865ffb6a50461de2027b09593aed5cfacc3811f21a77448586c71f8c861357d4f27673a1f5293add09f9101105c73357cdb1e29595de0
+ languageName: node
+ linkType: hard
+
+"@commitlint/parse@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/parse@npm:17.8.1"
+ dependencies:
+ "@commitlint/types": "npm:^17.8.1"
+ conventional-changelog-angular: "npm:^6.0.0"
+ conventional-commits-parser: "npm:^4.0.0"
+ checksum: 10c0/cde1f35dbac72ac30ac9803d4342bc5784116b56e09bf1ff02738ffbaa54a43da3360bf7b10d2a6b98067eea1026ef561acef2bf762b77739e4edef0feaea318
+ languageName: node
+ linkType: hard
+
+"@commitlint/read@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/read@npm:17.8.1"
+ dependencies:
+ "@commitlint/top-level": "npm:^17.8.1"
+ "@commitlint/types": "npm:^17.8.1"
+ fs-extra: "npm:^11.0.0"
+ git-raw-commits: "npm:^2.0.11"
+ minimist: "npm:^1.2.6"
+ checksum: 10c0/700dcab7f83f27a8262a8ac09e4431f5a42a5e0b180eaed0b1707ae9252d74f4686ee4fef5d8cd928a06c57bf09e876a2196f0c32dd09e285420da492d00dafa
+ languageName: node
+ linkType: hard
+
+"@commitlint/resolve-extends@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/resolve-extends@npm:17.8.1"
+ dependencies:
+ "@commitlint/config-validator": "npm:^17.8.1"
+ "@commitlint/types": "npm:^17.8.1"
+ import-fresh: "npm:^3.0.0"
+ lodash.mergewith: "npm:^4.6.2"
+ resolve-from: "npm:^5.0.0"
+ resolve-global: "npm:^1.0.0"
+ checksum: 10c0/785fa1ed4675671383dd6ee55dabfba662d0f336a038ae6e84aacc6d8ffd03033df5f43c3d2daf4bc1047060a54efe1c1255517ca8eb6f50ec7f2874c6db182d
+ languageName: node
+ linkType: hard
+
+"@commitlint/rules@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/rules@npm:17.8.1"
+ dependencies:
+ "@commitlint/ensure": "npm:^17.8.1"
+ "@commitlint/message": "npm:^17.8.1"
+ "@commitlint/to-lines": "npm:^17.8.1"
+ "@commitlint/types": "npm:^17.8.1"
+ execa: "npm:^5.0.0"
+ checksum: 10c0/f8139c86d998a984cc9d873a8650cb28edf4b0da16351f6a0787d920b47209f8a346ce0c6405257a3cf1ab7e238805d93fd708dea63f82a25506a970a6fa350e
+ languageName: node
+ linkType: hard
+
+"@commitlint/to-lines@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/to-lines@npm:17.8.1"
+ checksum: 10c0/14d70d2f4826fd00236a2a36f8ab18ea44892d5fd82f50a99fe996f92a9efdedf50864dddaff7f266da8140eee6f2e255ce3f8b77bac04532c13b37d49761698
+ languageName: node
+ linkType: hard
+
+"@commitlint/top-level@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/top-level@npm:17.8.1"
+ dependencies:
+ find-up: "npm:^5.0.0"
+ checksum: 10c0/0b68105cad4762fb75a46643850e43c793b359233f11eafa3591cc944756cd906211ef17fb34ce8365723077c2025b1f5d240f1f02fc423b8aa9b69c7d20bdf2
+ languageName: node
+ linkType: hard
+
+"@commitlint/types@npm:^17.8.1":
+ version: 17.8.1
+ resolution: "@commitlint/types@npm:17.8.1"
+ dependencies:
+ chalk: "npm:^4.1.0"
+ checksum: 10c0/303528008d4c8b2e5b9a4a8177a072ead740cfbc1bad47b5327466a78c4029730bfaf805181dd38e86f38f2981ad20e6d2195fb5fcb0aa91afb8e87c2c848383
+ languageName: node
+ linkType: hard
+
+"@cspotcode/source-map-support@npm:^0.8.0":
+ version: 0.8.1
+ resolution: "@cspotcode/source-map-support@npm:0.8.1"
+ dependencies:
+ "@jridgewell/trace-mapping": "npm:0.3.9"
+ checksum: 10c0/05c5368c13b662ee4c122c7bfbe5dc0b613416672a829f3e78bc49a357a197e0218d6e74e7c66cfcd04e15a179acab080bd3c69658c9fbefd0e1ccd950a07fc6
+ languageName: node
+ linkType: hard
+
+"@eslint-community/eslint-utils@npm:^4.2.0":
+ version: 4.9.1
+ resolution: "@eslint-community/eslint-utils@npm:4.9.1"
+ dependencies:
+ eslint-visitor-keys: "npm:^3.4.3"
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+ checksum: 10c0/dc4ab5e3e364ef27e33666b11f4b86e1a6c1d7cbf16f0c6ff87b1619b3562335e9201a3d6ce806221887ff780ec9d828962a290bb910759fd40a674686503f02
+ languageName: node
+ linkType: hard
+
+"@eslint-community/regexpp@npm:^4.4.0, @eslint-community/regexpp@npm:^4.6.1":
+ version: 4.12.2
+ resolution: "@eslint-community/regexpp@npm:4.12.2"
+ checksum: 10c0/fddcbc66851b308478d04e302a4d771d6917a0b3740dc351513c0da9ca2eab8a1adf99f5e0aa7ab8b13fa0df005c81adeee7e63a92f3effd7d367a163b721c2d
+ languageName: node
+ linkType: hard
+
+"@eslint/eslintrc@npm:^2.1.4":
+ version: 2.1.4
+ resolution: "@eslint/eslintrc@npm:2.1.4"
+ dependencies:
+ ajv: "npm:^6.12.4"
+ debug: "npm:^4.3.2"
+ espree: "npm:^9.6.0"
+ globals: "npm:^13.19.0"
+ ignore: "npm:^5.2.0"
+ import-fresh: "npm:^3.2.1"
+ js-yaml: "npm:^4.1.0"
+ minimatch: "npm:^3.1.2"
+ strip-json-comments: "npm:^3.1.1"
+ checksum: 10c0/32f67052b81768ae876c84569ffd562491ec5a5091b0c1e1ca1e0f3c24fb42f804952fdd0a137873bc64303ba368a71ba079a6f691cee25beee9722d94cc8573
+ languageName: node
+ linkType: hard
+
+"@eslint/js@npm:8.57.1":
+ version: 8.57.1
+ resolution: "@eslint/js@npm:8.57.1"
+ checksum: 10c0/b489c474a3b5b54381c62e82b3f7f65f4b8a5eaaed126546520bf2fede5532a8ed53212919fed1e9048dcf7f37167c8561d58d0ba4492a4244004e7793805223
+ languageName: node
+ linkType: hard
+
+"@humanwhocodes/config-array@npm:^0.13.0":
+ version: 0.13.0
+ resolution: "@humanwhocodes/config-array@npm:0.13.0"
+ dependencies:
+ "@humanwhocodes/object-schema": "npm:^2.0.3"
+ debug: "npm:^4.3.1"
+ minimatch: "npm:^3.0.5"
+ checksum: 10c0/205c99e756b759f92e1f44a3dc6292b37db199beacba8f26c2165d4051fe73a4ae52fdcfd08ffa93e7e5cb63da7c88648f0e84e197d154bbbbe137b2e0dd332e
+ languageName: node
+ linkType: hard
+
+"@humanwhocodes/module-importer@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "@humanwhocodes/module-importer@npm:1.0.1"
+ checksum: 10c0/909b69c3b86d482c26b3359db16e46a32e0fb30bd306a3c176b8313b9e7313dba0f37f519de6aa8b0a1921349e505f259d19475e123182416a506d7f87e7f529
+ languageName: node
+ linkType: hard
+
+"@humanwhocodes/object-schema@npm:^2.0.3":
+ version: 2.0.3
+ resolution: "@humanwhocodes/object-schema@npm:2.0.3"
+ checksum: 10c0/80520eabbfc2d32fe195a93557cef50dfe8c8905de447f022675aaf66abc33ae54098f5ea78548d925aa671cd4ab7c7daa5ad704fe42358c9b5e7db60f80696c
+ languageName: node
+ linkType: hard
+
+"@hutson/parse-repository-url@npm:^3.0.0":
+ version: 3.0.2
+ resolution: "@hutson/parse-repository-url@npm:3.0.2"
+ checksum: 10c0/d9197757ecad2df18d29d3e1d1fe0716d458fd88b849c71cbec9e78239f911074c97e8d764dfd8ed890431c1137e52dd7a337207fd65be20ce0784f7860ae4d1
+ languageName: node
+ linkType: hard
+
+"@iarna/toml@npm:2.2.5":
+ version: 2.2.5
+ resolution: "@iarna/toml@npm:2.2.5"
+ checksum: 10c0/d095381ad4554aca233b7cf5a91f243ef619e5e15efd3157bc640feac320545450d14b394aebbf6f02a2047437ced778ae598d5879a995441ab7b6c0b2c2f201
+ languageName: node
+ linkType: hard
+
+"@isaacs/fs-minipass@npm:^4.0.0":
+ version: 4.0.1
+ resolution: "@isaacs/fs-minipass@npm:4.0.1"
+ dependencies:
+ minipass: "npm:^7.0.4"
+ checksum: 10c0/c25b6dc1598790d5b55c0947a9b7d111cfa92594db5296c3b907e2f533c033666f692a3939eadac17b1c7c40d362d0b0635dc874cbfe3e70db7c2b07cc97a5d2
+ languageName: node
+ linkType: hard
+
+"@isaacs/ttlcache@npm:^1.4.1":
+ version: 1.4.1
+ resolution: "@isaacs/ttlcache@npm:1.4.1"
+ checksum: 10c0/6921de516917b02673a58e543c2b06fd04237cbf6d089ca22d6e98defa4b1e9a48258cb071d6b581284bb497bea687320788830541511297eecbe6e93a665bbf
+ languageName: node
+ linkType: hard
+
+"@istanbuljs/load-nyc-config@npm:^1.0.0":
+ version: 1.1.0
+ resolution: "@istanbuljs/load-nyc-config@npm:1.1.0"
+ dependencies:
+ camelcase: "npm:^5.3.1"
+ find-up: "npm:^4.1.0"
+ get-package-type: "npm:^0.1.0"
+ js-yaml: "npm:^3.13.1"
+ resolve-from: "npm:^5.0.0"
+ checksum: 10c0/dd2a8b094887da5a1a2339543a4933d06db2e63cbbc2e288eb6431bd832065df0c099d091b6a67436e71b7d6bf85f01ce7c15f9253b4cbebcc3b9a496165ba42
+ languageName: node
+ linkType: hard
+
+"@istanbuljs/schema@npm:^0.1.2, @istanbuljs/schema@npm:^0.1.3":
+ version: 0.1.6
+ resolution: "@istanbuljs/schema@npm:0.1.6"
+ checksum: 10c0/bb0d370bf3dd454d2f37f1bccb8921e2da99adacef2da56ef47850e25d7a4de69cf639ead8c189755aef38921369024b4afea3535a5c2ac9082b3e1171bcbc3a
+ languageName: node
+ linkType: hard
+
+"@jest/console@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/console@npm:29.7.0"
+ dependencies:
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ chalk: "npm:^4.0.0"
+ jest-message-util: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ slash: "npm:^3.0.0"
+ checksum: 10c0/7be408781d0a6f657e969cbec13b540c329671819c2f57acfad0dae9dbfe2c9be859f38fe99b35dba9ff1536937dc6ddc69fdcd2794812fa3c647a1619797f6c
+ languageName: node
+ linkType: hard
+
+"@jest/core@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/core@npm:29.7.0"
+ dependencies:
+ "@jest/console": "npm:^29.7.0"
+ "@jest/reporters": "npm:^29.7.0"
+ "@jest/test-result": "npm:^29.7.0"
+ "@jest/transform": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ ansi-escapes: "npm:^4.2.1"
+ chalk: "npm:^4.0.0"
+ ci-info: "npm:^3.2.0"
+ exit: "npm:^0.1.2"
+ graceful-fs: "npm:^4.2.9"
+ jest-changed-files: "npm:^29.7.0"
+ jest-config: "npm:^29.7.0"
+ jest-haste-map: "npm:^29.7.0"
+ jest-message-util: "npm:^29.7.0"
+ jest-regex-util: "npm:^29.6.3"
+ jest-resolve: "npm:^29.7.0"
+ jest-resolve-dependencies: "npm:^29.7.0"
+ jest-runner: "npm:^29.7.0"
+ jest-runtime: "npm:^29.7.0"
+ jest-snapshot: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ jest-validate: "npm:^29.7.0"
+ jest-watcher: "npm:^29.7.0"
+ micromatch: "npm:^4.0.4"
+ pretty-format: "npm:^29.7.0"
+ slash: "npm:^3.0.0"
+ strip-ansi: "npm:^6.0.0"
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
+ peerDependenciesMeta:
+ node-notifier:
+ optional: true
+ checksum: 10c0/934f7bf73190f029ac0f96662c85cd276ec460d407baf6b0dbaec2872e157db4d55a7ee0b1c43b18874602f662b37cb973dda469a4e6d88b4e4845b521adeeb2
+ languageName: node
+ linkType: hard
+
+"@jest/create-cache-key-function@npm:^29.6.3":
+ version: 29.7.0
+ resolution: "@jest/create-cache-key-function@npm:29.7.0"
+ dependencies:
+ "@jest/types": "npm:^29.6.3"
+ checksum: 10c0/5c47ef62205264adf77b1ff26b969ce9fe84920b8275c3c5e83f4236859d6ae5e4e7027af99eef04a8e334c4e424d44af3e167972083406070aca733ac2a2795
+ languageName: node
+ linkType: hard
+
+"@jest/environment@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/environment@npm:29.7.0"
+ dependencies:
+ "@jest/fake-timers": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ jest-mock: "npm:^29.7.0"
+ checksum: 10c0/c7b1b40c618f8baf4d00609022d2afa086d9c6acc706f303a70bb4b67275868f620ad2e1a9efc5edd418906157337cce50589a627a6400bbdf117d351b91ef86
+ languageName: node
+ linkType: hard
+
+"@jest/expect-utils@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/expect-utils@npm:29.7.0"
+ dependencies:
+ jest-get-type: "npm:^29.6.3"
+ checksum: 10c0/60b79d23a5358dc50d9510d726443316253ecda3a7fb8072e1526b3e0d3b14f066ee112db95699b7a43ad3f0b61b750c72e28a5a1cac361d7a2bb34747fa938a
+ languageName: node
+ linkType: hard
+
+"@jest/expect@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/expect@npm:29.7.0"
+ dependencies:
+ expect: "npm:^29.7.0"
+ jest-snapshot: "npm:^29.7.0"
+ checksum: 10c0/b41f193fb697d3ced134349250aed6ccea075e48c4f803159db102b826a4e473397c68c31118259868fd69a5cba70e97e1c26d2c2ff716ca39dc73a2ccec037e
+ languageName: node
+ linkType: hard
+
+"@jest/fake-timers@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/fake-timers@npm:29.7.0"
+ dependencies:
+ "@jest/types": "npm:^29.6.3"
+ "@sinonjs/fake-timers": "npm:^10.0.2"
+ "@types/node": "npm:*"
+ jest-message-util: "npm:^29.7.0"
+ jest-mock: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ checksum: 10c0/cf0a8bcda801b28dc2e2b2ba36302200ee8104a45ad7a21e6c234148932f826cb3bc57c8df3b7b815aeea0861d7b6ca6f0d4778f93b9219398ef28749e03595c
+ languageName: node
+ linkType: hard
+
+"@jest/globals@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/globals@npm:29.7.0"
+ dependencies:
+ "@jest/environment": "npm:^29.7.0"
+ "@jest/expect": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ jest-mock: "npm:^29.7.0"
+ checksum: 10c0/a385c99396878fe6e4460c43bd7bb0a5cc52befb462cc6e7f2a3810f9e7bcce7cdeb51908fd530391ee452dc856c98baa2c5f5fa8a5b30b071d31ef7f6955cea
+ languageName: node
+ linkType: hard
+
+"@jest/reporters@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/reporters@npm:29.7.0"
+ dependencies:
+ "@bcoe/v8-coverage": "npm:^0.2.3"
+ "@jest/console": "npm:^29.7.0"
+ "@jest/test-result": "npm:^29.7.0"
+ "@jest/transform": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ "@jridgewell/trace-mapping": "npm:^0.3.18"
+ "@types/node": "npm:*"
+ chalk: "npm:^4.0.0"
+ collect-v8-coverage: "npm:^1.0.0"
+ exit: "npm:^0.1.2"
+ glob: "npm:^7.1.3"
+ graceful-fs: "npm:^4.2.9"
+ istanbul-lib-coverage: "npm:^3.0.0"
+ istanbul-lib-instrument: "npm:^6.0.0"
+ istanbul-lib-report: "npm:^3.0.0"
+ istanbul-lib-source-maps: "npm:^4.0.0"
+ istanbul-reports: "npm:^3.1.3"
+ jest-message-util: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ jest-worker: "npm:^29.7.0"
+ slash: "npm:^3.0.0"
+ string-length: "npm:^4.0.1"
+ strip-ansi: "npm:^6.0.0"
+ v8-to-istanbul: "npm:^9.0.1"
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
+ peerDependenciesMeta:
+ node-notifier:
+ optional: true
+ checksum: 10c0/a754402a799541c6e5aff2c8160562525e2a47e7d568f01ebfc4da66522de39cbb809bbb0a841c7052e4270d79214e70aec3c169e4eae42a03bc1a8a20cb9fa2
+ languageName: node
+ linkType: hard
+
+"@jest/schemas@npm:^29.6.3":
+ version: 29.6.3
+ resolution: "@jest/schemas@npm:29.6.3"
+ dependencies:
+ "@sinclair/typebox": "npm:^0.27.8"
+ checksum: 10c0/b329e89cd5f20b9278ae1233df74016ebf7b385e0d14b9f4c1ad18d096c4c19d1e687aa113a9c976b16ec07f021ae53dea811fb8c1248a50ac34fbe009fdf6be
+ languageName: node
+ linkType: hard
+
+"@jest/source-map@npm:^29.6.3":
+ version: 29.6.3
+ resolution: "@jest/source-map@npm:29.6.3"
+ dependencies:
+ "@jridgewell/trace-mapping": "npm:^0.3.18"
+ callsites: "npm:^3.0.0"
+ graceful-fs: "npm:^4.2.9"
+ checksum: 10c0/a2f177081830a2e8ad3f2e29e20b63bd40bade294880b595acf2fc09ec74b6a9dd98f126a2baa2bf4941acd89b13a4ade5351b3885c224107083a0059b60a219
+ languageName: node
+ linkType: hard
+
+"@jest/test-result@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/test-result@npm:29.7.0"
+ dependencies:
+ "@jest/console": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ "@types/istanbul-lib-coverage": "npm:^2.0.0"
+ collect-v8-coverage: "npm:^1.0.0"
+ checksum: 10c0/7de54090e54a674ca173470b55dc1afdee994f2d70d185c80236003efd3fa2b753fff51ffcdda8e2890244c411fd2267529d42c4a50a8303755041ee493e6a04
+ languageName: node
+ linkType: hard
+
+"@jest/test-sequencer@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/test-sequencer@npm:29.7.0"
+ dependencies:
+ "@jest/test-result": "npm:^29.7.0"
+ graceful-fs: "npm:^4.2.9"
+ jest-haste-map: "npm:^29.7.0"
+ slash: "npm:^3.0.0"
+ checksum: 10c0/593a8c4272797bb5628984486080cbf57aed09c7cfdc0a634e8c06c38c6bef329c46c0016e84555ee55d1cd1f381518cf1890990ff845524c1123720c8c1481b
+ languageName: node
+ linkType: hard
+
+"@jest/transform@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "@jest/transform@npm:29.7.0"
+ dependencies:
+ "@babel/core": "npm:^7.11.6"
+ "@jest/types": "npm:^29.6.3"
+ "@jridgewell/trace-mapping": "npm:^0.3.18"
+ babel-plugin-istanbul: "npm:^6.1.1"
+ chalk: "npm:^4.0.0"
+ convert-source-map: "npm:^2.0.0"
+ fast-json-stable-stringify: "npm:^2.1.0"
+ graceful-fs: "npm:^4.2.9"
+ jest-haste-map: "npm:^29.7.0"
+ jest-regex-util: "npm:^29.6.3"
+ jest-util: "npm:^29.7.0"
+ micromatch: "npm:^4.0.4"
+ pirates: "npm:^4.0.4"
+ slash: "npm:^3.0.0"
+ write-file-atomic: "npm:^4.0.2"
+ checksum: 10c0/7f4a7f73dcf45dfdf280c7aa283cbac7b6e5a904813c3a93ead7e55873761fc20d5c4f0191d2019004fac6f55f061c82eb3249c2901164ad80e362e7a7ede5a6
+ languageName: node
+ linkType: hard
+
+"@jest/types@npm:^29.6.3":
+ version: 29.6.3
+ resolution: "@jest/types@npm:29.6.3"
+ dependencies:
+ "@jest/schemas": "npm:^29.6.3"
+ "@types/istanbul-lib-coverage": "npm:^2.0.0"
+ "@types/istanbul-reports": "npm:^3.0.0"
+ "@types/node": "npm:*"
+ "@types/yargs": "npm:^17.0.8"
+ chalk: "npm:^4.0.0"
+ checksum: 10c0/ea4e493dd3fb47933b8ccab201ae573dcc451f951dc44ed2a86123cd8541b82aa9d2b1031caf9b1080d6673c517e2dcc25a44b2dc4f3fbc37bfc965d444888c0
+ languageName: node
+ linkType: hard
+
+"@jridgewell/gen-mapping@npm:^0.3.12, @jridgewell/gen-mapping@npm:^0.3.5":
+ version: 0.3.13
+ resolution: "@jridgewell/gen-mapping@npm:0.3.13"
+ dependencies:
+ "@jridgewell/sourcemap-codec": "npm:^1.5.0"
+ "@jridgewell/trace-mapping": "npm:^0.3.24"
+ checksum: 10c0/9a7d65fb13bd9aec1fbab74cda08496839b7e2ceb31f5ab922b323e94d7c481ce0fc4fd7e12e2610915ed8af51178bdc61e168e92a8c8b8303b030b03489b13b
+ languageName: node
+ linkType: hard
+
+"@jridgewell/remapping@npm:^2.3.5":
+ version: 2.3.5
+ resolution: "@jridgewell/remapping@npm:2.3.5"
+ dependencies:
+ "@jridgewell/gen-mapping": "npm:^0.3.5"
+ "@jridgewell/trace-mapping": "npm:^0.3.24"
+ checksum: 10c0/3de494219ffeb2c5c38711d0d7bb128097edf91893090a2dbc8ee0b55d092bb7347b1fd0f478486c5eab010e855c73927b1666f2107516d472d24a73017d1194
+ languageName: node
+ linkType: hard
+
+"@jridgewell/resolve-uri@npm:^3.0.3, @jridgewell/resolve-uri@npm:^3.1.0":
+ version: 3.1.2
+ resolution: "@jridgewell/resolve-uri@npm:3.1.2"
+ checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e
+ languageName: node
+ linkType: hard
+
+"@jridgewell/source-map@npm:^0.3.3":
+ version: 0.3.11
+ resolution: "@jridgewell/source-map@npm:0.3.11"
+ dependencies:
+ "@jridgewell/gen-mapping": "npm:^0.3.5"
+ "@jridgewell/trace-mapping": "npm:^0.3.25"
+ checksum: 10c0/50a4fdafe0b8f655cb2877e59fe81320272eaa4ccdbe6b9b87f10614b2220399ae3e05c16137a59db1f189523b42c7f88bd097ee991dbd7bc0e01113c583e844
+ languageName: node
+ linkType: hard
+
+"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0":
+ version: 1.5.5
+ resolution: "@jridgewell/sourcemap-codec@npm:1.5.5"
+ checksum: 10c0/f9e538f302b63c0ebc06eecb1dd9918dd4289ed36147a0ddce35d6ea4d7ebbda243cda7b2213b6a5e1d8087a298d5cf630fb2bd39329cdecb82017023f6081a0
+ languageName: node
+ linkType: hard
+
+"@jridgewell/trace-mapping@npm:0.3.9":
+ version: 0.3.9
+ resolution: "@jridgewell/trace-mapping@npm:0.3.9"
+ dependencies:
+ "@jridgewell/resolve-uri": "npm:^3.0.3"
+ "@jridgewell/sourcemap-codec": "npm:^1.4.10"
+ checksum: 10c0/fa425b606d7c7ee5bfa6a31a7b050dd5814b4082f318e0e4190f991902181b4330f43f4805db1dd4f2433fd0ed9cc7a7b9c2683f1deeab1df1b0a98b1e24055b
+ languageName: node
+ linkType: hard
+
+"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25, @jridgewell/trace-mapping@npm:^0.3.28":
+ version: 0.3.31
+ resolution: "@jridgewell/trace-mapping@npm:0.3.31"
+ dependencies:
+ "@jridgewell/resolve-uri": "npm:^3.1.0"
+ "@jridgewell/sourcemap-codec": "npm:^1.4.14"
+ checksum: 10c0/4b30ec8cd56c5fd9a661f088230af01e0c1a3888d11ffb6b47639700f71225be21d1f7e168048d6d4f9449207b978a235c07c8f15c07705685d16dc06280e9d9
+ languageName: node
+ linkType: hard
+
+"@microsoft/api-extractor-model@npm:7.33.11":
+ version: 7.33.11
+ resolution: "@microsoft/api-extractor-model@npm:7.33.11"
+ dependencies:
+ "@microsoft/tsdoc": "npm:~0.16.0"
+ "@microsoft/tsdoc-config": "npm:~0.18.1"
+ "@rushstack/node-core-library": "npm:5.24.0"
+ checksum: 10c0/d36dd632a758c45d0c123f5e71b5d2e1244a2a52984471d0f171b8ea3af1651ebf93cb70208946ab0f64dc280b01affddc173c2a158f0cedff49033ec0f144e6
+ languageName: node
+ linkType: hard
+
+"@microsoft/api-extractor@npm:7.59.0":
+ version: 7.59.0
+ resolution: "@microsoft/api-extractor@npm:7.59.0"
+ dependencies:
+ "@microsoft/api-extractor-model": "npm:7.33.11"
+ "@microsoft/tsdoc": "npm:~0.16.0"
+ "@microsoft/tsdoc-config": "npm:~0.18.1"
+ "@rushstack/node-core-library": "npm:5.24.0"
+ "@rushstack/rig-package": "npm:0.7.3"
+ "@rushstack/terminal": "npm:0.24.3"
+ "@rushstack/ts-command-line": "npm:5.3.13"
+ diff: "npm:~8.0.2"
+ minimatch: "npm:10.2.3"
+ resolve: "npm:~1.22.1"
+ semver: "npm:~7.7.4"
+ source-map: "npm:~0.6.1"
+ typescript: "npm:5.9.3"
+ bin:
+ api-extractor: bin/api-extractor
+ checksum: 10c0/c28291d6c3cc0a54dbb94f7ca6365ce9606dae407a099d341c4032fb3d2280abe7dc327ff61e9194dab2d7c94c1b82e7e7c451e61571dce48cc3647251424120
+ languageName: node
+ linkType: hard
+
+"@microsoft/tsdoc-config@npm:~0.18.1":
+ version: 0.18.1
+ resolution: "@microsoft/tsdoc-config@npm:0.18.1"
+ dependencies:
+ "@microsoft/tsdoc": "npm:0.16.0"
+ ajv: "npm:~8.18.0"
+ jju: "npm:~1.4.0"
+ resolve: "npm:~1.22.2"
+ checksum: 10c0/06507f7ced4fadf3e68368c60810c1e057403581f720e6cf96b4d6b6bc7a927232510da40425ffd67d5d918ec7cfba8baec56406687330f233f67eb11b9d8d65
+ languageName: node
+ linkType: hard
+
+"@microsoft/tsdoc@npm:0.16.0, @microsoft/tsdoc@npm:~0.16.0":
+ version: 0.16.0
+ resolution: "@microsoft/tsdoc@npm:0.16.0"
+ checksum: 10c0/8883bb0ed22753af7360e9222687fda4eb448f0a574ea34b4596c11e320148b3ae0d24e00f8923df8ba7bc62a46a6f53b9343243a348640d923dfd55d52cd6bb
+ languageName: node
+ linkType: hard
+
+"@nicolo-ribaudo/eslint-scope-5-internals@npm:5.1.1-v1":
+ version: 5.1.1-v1
+ resolution: "@nicolo-ribaudo/eslint-scope-5-internals@npm:5.1.1-v1"
+ dependencies:
+ eslint-scope: "npm:5.1.1"
+ checksum: 10c0/75dda3e623b8ad7369ca22552d6beee337a814b2d0e8a32d23edd13fcb65c8082b32c5d86e436f3860dd7ade30d91d5db55d4ef9a08fb5a976c718ecc0d88a74
+ languageName: node
+ linkType: hard
+
+"@nodelib/fs.scandir@npm:2.1.5":
+ version: 2.1.5
+ resolution: "@nodelib/fs.scandir@npm:2.1.5"
+ dependencies:
+ "@nodelib/fs.stat": "npm:2.0.5"
+ run-parallel: "npm:^1.1.9"
+ checksum: 10c0/732c3b6d1b1e967440e65f284bd06e5821fedf10a1bea9ed2bb75956ea1f30e08c44d3def9d6a230666574edbaf136f8cfd319c14fd1f87c66e6a44449afb2eb
+ languageName: node
+ linkType: hard
+
+"@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2":
+ version: 2.0.5
+ resolution: "@nodelib/fs.stat@npm:2.0.5"
+ checksum: 10c0/88dafe5e3e29a388b07264680dc996c17f4bda48d163a9d4f5c1112979f0ce8ec72aa7116122c350b4e7976bc5566dc3ddb579be1ceaacc727872eb4ed93926d
+ languageName: node
+ linkType: hard
+
+"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8":
+ version: 1.2.8
+ resolution: "@nodelib/fs.walk@npm:1.2.8"
+ dependencies:
+ "@nodelib/fs.scandir": "npm:2.1.5"
+ fastq: "npm:^1.6.0"
+ checksum: 10c0/db9de047c3bb9b51f9335a7bb46f4fcfb6829fb628318c12115fbaf7d369bfce71c15b103d1fc3b464812d936220ee9bc1c8f762d032c9f6be9acc99249095b1
+ languageName: node
+ linkType: hard
+
+"@octokit/auth-token@npm:^3.0.0":
+ version: 3.0.4
+ resolution: "@octokit/auth-token@npm:3.0.4"
+ checksum: 10c0/abdf5e2da36344de9727c70ba782d58004f5ae1da0f65fa9bc9216af596ef23c0e4675f386df2f6886806612558091d603564051b693b0ad1986aa6160b7a231
+ languageName: node
+ linkType: hard
+
+"@octokit/core@npm:^4.2.1":
+ version: 4.2.4
+ resolution: "@octokit/core@npm:4.2.4"
+ dependencies:
+ "@octokit/auth-token": "npm:^3.0.0"
+ "@octokit/graphql": "npm:^5.0.0"
+ "@octokit/request": "npm:^6.0.0"
+ "@octokit/request-error": "npm:^3.0.0"
+ "@octokit/types": "npm:^9.0.0"
+ before-after-hook: "npm:^2.2.0"
+ universal-user-agent: "npm:^6.0.0"
+ checksum: 10c0/e54081a56884e628d1804837fddcd48c10d516117bb891551c8dc9d8e3dad449aeb9b4677ca71e8f0e76268c2b7656c953099506679aaa4666765228474a3ce6
+ languageName: node
+ linkType: hard
+
+"@octokit/endpoint@npm:^7.0.0":
+ version: 7.0.6
+ resolution: "@octokit/endpoint@npm:7.0.6"
+ dependencies:
+ "@octokit/types": "npm:^9.0.0"
+ is-plain-object: "npm:^5.0.0"
+ universal-user-agent: "npm:^6.0.0"
+ checksum: 10c0/fd147a55010b54af7567bf90791359f7096a1c9916a2b7c72f8afd0c53141338b3d78da3a4ab3e3bdfeb26218a1b73735432d8987ccc04996b1019219299f115
+ languageName: node
+ linkType: hard
+
+"@octokit/graphql@npm:^5.0.0":
+ version: 5.0.6
+ resolution: "@octokit/graphql@npm:5.0.6"
+ dependencies:
+ "@octokit/request": "npm:^6.0.0"
+ "@octokit/types": "npm:^9.0.0"
+ universal-user-agent: "npm:^6.0.0"
+ checksum: 10c0/de1d839d97fe6d96179925f6714bf96e7af6f77929892596bb4211adab14add3291fc5872b269a3d0e91a4dcf248d16096c82606c4a43538cf241b815c2e2a36
+ languageName: node
+ linkType: hard
+
+"@octokit/openapi-types@npm:^18.0.0":
+ version: 18.1.1
+ resolution: "@octokit/openapi-types@npm:18.1.1"
+ checksum: 10c0/856d3bb9f8c666e837dd5e8b8c216ee4342b9ed63ff8da922ca4ce5883ed1dfbec73390eb13d69fbcb4703a4c8b8b6a586df3b0e675ff93bf3d46b5b4fe0968e
+ languageName: node
+ linkType: hard
+
+"@octokit/plugin-paginate-rest@npm:^6.1.2":
+ version: 6.1.2
+ resolution: "@octokit/plugin-paginate-rest@npm:6.1.2"
+ dependencies:
+ "@octokit/tsconfig": "npm:^1.0.2"
+ "@octokit/types": "npm:^9.2.3"
+ peerDependencies:
+ "@octokit/core": ">=4"
+ checksum: 10c0/def241c4f00b864822ab6414eaadd8679a6d332004c7e77467cfc1e6d5bdcc453c76bd185710ee942e4df201f9dd2170d960f46af5b14ef6f261a0068f656364
+ languageName: node
+ linkType: hard
+
+"@octokit/plugin-request-log@npm:^1.0.4":
+ version: 1.0.4
+ resolution: "@octokit/plugin-request-log@npm:1.0.4"
+ peerDependencies:
+ "@octokit/core": ">=3"
+ checksum: 10c0/7238585445555db553912e0cdef82801c89c6e5cbc62c23ae086761c23cc4a403d6c3fddd20348bbd42fb7508e2c2fce370eb18fdbe3fbae2c0d2c8be974f4cc
+ languageName: node
+ linkType: hard
+
+"@octokit/plugin-rest-endpoint-methods@npm:^7.1.2":
+ version: 7.2.3
+ resolution: "@octokit/plugin-rest-endpoint-methods@npm:7.2.3"
+ dependencies:
+ "@octokit/types": "npm:^10.0.0"
+ peerDependencies:
+ "@octokit/core": ">=3"
+ checksum: 10c0/8bffbc5852695dd08d65cc64b6ab7d2871ed9df1e791608f48b488a3908b5b655e3686b5dd72fc37c824e82bdd4dfc9d24e2e50205bbc324667def1d705bc9da
+ languageName: node
+ linkType: hard
+
+"@octokit/request-error@npm:^3.0.0":
+ version: 3.0.3
+ resolution: "@octokit/request-error@npm:3.0.3"
+ dependencies:
+ "@octokit/types": "npm:^9.0.0"
+ deprecation: "npm:^2.0.0"
+ once: "npm:^1.4.0"
+ checksum: 10c0/1e252ac193c8af23b709909911aa327ed5372cbafcba09e4aff41e0f640a7c152579ab0a60311a92e37b4e7936392d59ee4c2feae5cdc387ee8587a33d8afa60
+ languageName: node
+ linkType: hard
+
+"@octokit/request@npm:^6.0.0":
+ version: 6.2.8
+ resolution: "@octokit/request@npm:6.2.8"
+ dependencies:
+ "@octokit/endpoint": "npm:^7.0.0"
+ "@octokit/request-error": "npm:^3.0.0"
+ "@octokit/types": "npm:^9.0.0"
+ is-plain-object: "npm:^5.0.0"
+ node-fetch: "npm:^2.6.7"
+ universal-user-agent: "npm:^6.0.0"
+ checksum: 10c0/6b6079ed45bac44c4579b40990bfd1905b03d4bc4e5255f3d5a10cf5182171578ebe19abeab32ebb11a806f1131947f2a06b7a077bd7e77ade7b15fe2882174b
+ languageName: node
+ linkType: hard
+
+"@octokit/rest@npm:19.0.11":
+ version: 19.0.11
+ resolution: "@octokit/rest@npm:19.0.11"
+ dependencies:
+ "@octokit/core": "npm:^4.2.1"
+ "@octokit/plugin-paginate-rest": "npm:^6.1.2"
+ "@octokit/plugin-request-log": "npm:^1.0.4"
+ "@octokit/plugin-rest-endpoint-methods": "npm:^7.1.2"
+ checksum: 10c0/a14ae31fc5e70e76d2492aae63d3453cbb71f44e7492400f885ab5ac6b2612bcb244bafa29e45a59461f3e5d99807ff9c88d48af8317ffa4f8ad3f8f11fdd035
+ languageName: node
+ linkType: hard
+
+"@octokit/tsconfig@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "@octokit/tsconfig@npm:1.0.2"
+ checksum: 10c0/84db70b495beeed69259dd4def14cdfb600edeb65ef32811558c99413ee2b414ed10bff9c4dcc7a43451d0fd36b4925ada9ef7d4272b5eae38cb005cc2f459ac
+ languageName: node
+ linkType: hard
+
+"@octokit/types@npm:^10.0.0":
+ version: 10.0.0
+ resolution: "@octokit/types@npm:10.0.0"
+ dependencies:
+ "@octokit/openapi-types": "npm:^18.0.0"
+ checksum: 10c0/9bbbec1e452c271752e5ba735c161a558933f2e35f3004bb0b6e8d6ba574af48b68bab2f293112a8e68c595435a2fbcc76f3e7333f45ba1888bb5193777a943e
+ languageName: node
+ linkType: hard
+
+"@octokit/types@npm:^9.0.0, @octokit/types@npm:^9.2.3":
+ version: 9.3.2
+ resolution: "@octokit/types@npm:9.3.2"
+ dependencies:
+ "@octokit/openapi-types": "npm:^18.0.0"
+ checksum: 10c0/2925479aa378a4491762b4fcf381bdc7daca39b4e0b2dd7062bce5d74a32ed7d79d20d3c65ceaca6d105cf4b1f7417fea634219bf90f79a57d03e2dac629ec45
+ languageName: node
+ linkType: hard
+
+"@pnpm/config.env-replace@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "@pnpm/config.env-replace@npm:1.1.0"
+ checksum: 10c0/4cfc4a5c49ab3d0c6a1f196cfd4146374768b0243d441c7de8fa7bd28eaab6290f514b98490472cc65dbd080d34369447b3e9302585e1d5c099befd7c8b5e55f
+ languageName: node
+ linkType: hard
+
+"@pnpm/network.ca-file@npm:^1.0.1":
+ version: 1.0.2
+ resolution: "@pnpm/network.ca-file@npm:1.0.2"
+ dependencies:
+ graceful-fs: "npm:4.2.10"
+ checksum: 10c0/95f6e0e38d047aca3283550719155ce7304ac00d98911e4ab026daedaf640a63bd83e3d13e17c623fa41ac72f3801382ba21260bcce431c14fbbc06430ecb776
+ languageName: node
+ linkType: hard
+
+"@pnpm/npm-conf@npm:^3.0.2":
+ version: 3.0.2
+ resolution: "@pnpm/npm-conf@npm:3.0.2"
+ dependencies:
+ "@pnpm/config.env-replace": "npm:^1.1.0"
+ "@pnpm/network.ca-file": "npm:^1.0.1"
+ config-chain: "npm:^1.1.11"
+ checksum: 10c0/50026ae4cac7d5d055d4dd4b2886fbc41964db6179406cf2decf625e7a280fbfffd47380df584c085464deba060101169caca5f79e6a062b6c25b527bf60cb67
+ languageName: node
+ linkType: hard
+
+"@rcaferati/react-native-awesome-button@workspace:.":
+ version: 0.0.0-use.local
+ resolution: "@rcaferati/react-native-awesome-button@workspace:."
+ dependencies:
+ "@arkweid/lefthook": "npm:^0.7.7"
+ "@babel/core": "npm:^7.28.5"
+ "@babel/eslint-parser": "npm:^7.18.2"
+ "@babel/runtime": "npm:^7.28.4"
+ "@commitlint/config-conventional": "npm:^17.0.2"
+ "@microsoft/api-extractor": "npm:7.59.0"
+ "@rcaferati/wac": "npm:1.2.0"
+ "@react-native-community/eslint-config": "npm:^3.0.2"
+ "@react-native/babel-preset": "npm:0.76.0"
+ "@release-it/conventional-changelog": "npm:^5.0.0"
+ "@types/jest": "npm:^29.5.12"
+ "@types/lodash.debounce": "npm:^4.0.7"
+ "@types/react": "npm:18.3.12"
+ commitlint: "npm:^17.0.2"
+ eslint: "npm:^8.4.1"
+ eslint-config-prettier: "npm:^8.5.0"
+ eslint-plugin-prettier: "npm:^4.0.0"
+ graphemer: "npm:1.4.0"
+ jest: "npm:29.7.0"
+ lodash.debounce: "npm:^4.0.8"
+ pod-install: "npm:^0.1.0"
+ prettier: "npm:^2.0.5"
+ react: "npm:18.2.0"
+ react-native: "npm:0.76.0"
+ react-native-builder-bob: "npm:0.40.13"
+ react-test-renderer: "npm:18.2.0"
+ release-it: "npm:^15.0.0"
+ typescript: "npm:5.6.3"
+ peerDependencies:
+ react: ">=18.2.0"
+ react-native: ">=0.76.0"
+ languageName: unknown
+ linkType: soft
+
+"@rcaferati/wac@npm:1.2.0":
+ version: 1.2.0
+ resolution: "@rcaferati/wac@npm:1.2.0"
+ checksum: 10c0/be11bd4390aeb26702126eb6327be0d5e2df7030f24b989c57db626e19c3a1489b6715929257a3279f044e2e0d4e4180ee3741ca7834cedd6de148f114011619
+ languageName: node
+ linkType: hard
+
+"@react-native-community/eslint-config@npm:^3.0.2":
+ version: 3.2.0
+ resolution: "@react-native-community/eslint-config@npm:3.2.0"
+ dependencies:
+ "@babel/core": "npm:^7.14.0"
+ "@babel/eslint-parser": "npm:^7.18.2"
+ "@react-native-community/eslint-plugin": "npm:^1.1.0"
+ "@typescript-eslint/eslint-plugin": "npm:^5.30.5"
+ "@typescript-eslint/parser": "npm:^5.30.5"
+ eslint-config-prettier: "npm:^8.5.0"
+ eslint-plugin-eslint-comments: "npm:^3.2.0"
+ eslint-plugin-ft-flow: "npm:^2.0.1"
+ eslint-plugin-jest: "npm:^26.5.3"
+ eslint-plugin-prettier: "npm:^4.2.1"
+ eslint-plugin-react: "npm:^7.30.1"
+ eslint-plugin-react-hooks: "npm:^4.6.0"
+ eslint-plugin-react-native: "npm:^4.0.0"
+ peerDependencies:
+ eslint: ">=8"
+ prettier: ">=2"
+ checksum: 10c0/9675af7a54f3bc8603825996380a0af9a6e41b772f1e24fbe47fd4025f377007974df0cd0e2573f2e1ca90da41b7c2820b07ed1fc645b8ea2db08ca45264565d
+ languageName: node
+ linkType: hard
+
+"@react-native-community/eslint-plugin@npm:^1.1.0":
+ version: 1.3.0
+ resolution: "@react-native-community/eslint-plugin@npm:1.3.0"
+ checksum: 10c0/f08f662d45e4a001bb04f1534fcb3f3c4a9c7b043f60ecf159b4aa0040b388103e034af3de3d1c64d6aa18a3af5ddbfbd5312a67f619aaec41ed3a677efa5abf
+ languageName: node
+ linkType: hard
+
+"@react-native/assets-registry@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/assets-registry@npm:0.76.0"
+ checksum: 10c0/a8543167afbd2a2d63ec8518f41efddbb3de39ad5905cb98002fdfad7441ade6ae05d86321aea43e366fa9b2336a9bca67d14c89f064e5c7064cd98334ba82c0
+ languageName: node
+ linkType: hard
+
+"@react-native/babel-plugin-codegen@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/babel-plugin-codegen@npm:0.76.0"
+ dependencies:
+ "@react-native/codegen": "npm:0.76.0"
+ checksum: 10c0/c1816b80c0cde1f48f91584f873ad5740669c6324c533239ccc7131fbbbc6b810ca2a0d7e8da21783e004a7dc2660b2501a868b4375ba835679eb05d1c239044
+ languageName: node
+ linkType: hard
+
+"@react-native/babel-preset@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/babel-preset@npm:0.76.0"
+ dependencies:
+ "@babel/core": "npm:^7.25.2"
+ "@babel/plugin-proposal-export-default-from": "npm:^7.24.7"
+ "@babel/plugin-syntax-dynamic-import": "npm:^7.8.3"
+ "@babel/plugin-syntax-export-default-from": "npm:^7.24.7"
+ "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3"
+ "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3"
+ "@babel/plugin-transform-arrow-functions": "npm:^7.24.7"
+ "@babel/plugin-transform-async-generator-functions": "npm:^7.25.4"
+ "@babel/plugin-transform-async-to-generator": "npm:^7.24.7"
+ "@babel/plugin-transform-block-scoping": "npm:^7.25.0"
+ "@babel/plugin-transform-class-properties": "npm:^7.25.4"
+ "@babel/plugin-transform-classes": "npm:^7.25.4"
+ "@babel/plugin-transform-computed-properties": "npm:^7.24.7"
+ "@babel/plugin-transform-destructuring": "npm:^7.24.8"
+ "@babel/plugin-transform-flow-strip-types": "npm:^7.25.2"
+ "@babel/plugin-transform-for-of": "npm:^7.24.7"
+ "@babel/plugin-transform-function-name": "npm:^7.25.1"
+ "@babel/plugin-transform-literals": "npm:^7.25.2"
+ "@babel/plugin-transform-logical-assignment-operators": "npm:^7.24.7"
+ "@babel/plugin-transform-modules-commonjs": "npm:^7.24.8"
+ "@babel/plugin-transform-named-capturing-groups-regex": "npm:^7.24.7"
+ "@babel/plugin-transform-nullish-coalescing-operator": "npm:^7.24.7"
+ "@babel/plugin-transform-numeric-separator": "npm:^7.24.7"
+ "@babel/plugin-transform-object-rest-spread": "npm:^7.24.7"
+ "@babel/plugin-transform-optional-catch-binding": "npm:^7.24.7"
+ "@babel/plugin-transform-optional-chaining": "npm:^7.24.8"
+ "@babel/plugin-transform-parameters": "npm:^7.24.7"
+ "@babel/plugin-transform-private-methods": "npm:^7.24.7"
+ "@babel/plugin-transform-private-property-in-object": "npm:^7.24.7"
+ "@babel/plugin-transform-react-display-name": "npm:^7.24.7"
+ "@babel/plugin-transform-react-jsx": "npm:^7.25.2"
+ "@babel/plugin-transform-react-jsx-self": "npm:^7.24.7"
+ "@babel/plugin-transform-react-jsx-source": "npm:^7.24.7"
+ "@babel/plugin-transform-regenerator": "npm:^7.24.7"
+ "@babel/plugin-transform-runtime": "npm:^7.24.7"
+ "@babel/plugin-transform-shorthand-properties": "npm:^7.24.7"
+ "@babel/plugin-transform-spread": "npm:^7.24.7"
+ "@babel/plugin-transform-sticky-regex": "npm:^7.24.7"
+ "@babel/plugin-transform-typescript": "npm:^7.25.2"
+ "@babel/plugin-transform-unicode-regex": "npm:^7.24.7"
+ "@babel/template": "npm:^7.25.0"
+ "@react-native/babel-plugin-codegen": "npm:0.76.0"
+ babel-plugin-syntax-hermes-parser: "npm:^0.23.1"
+ babel-plugin-transform-flow-enums: "npm:^0.0.2"
+ react-refresh: "npm:^0.14.0"
+ peerDependencies:
+ "@babel/core": "*"
+ checksum: 10c0/43074771fe1c74379d3fdefa54b15e60c08b7cbc4649e1c0ab53d3d86e3776ad4ca5627985b6e98bab9c5927cf1fcf820a66fb5397d5ffb4174de33ed8b8877b
+ languageName: node
+ linkType: hard
+
+"@react-native/codegen@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/codegen@npm:0.76.0"
+ dependencies:
+ "@babel/parser": "npm:^7.25.3"
+ glob: "npm:^7.1.1"
+ hermes-parser: "npm:0.23.1"
+ invariant: "npm:^2.2.4"
+ jscodeshift: "npm:^0.14.0"
+ mkdirp: "npm:^0.5.1"
+ nullthrows: "npm:^1.1.1"
+ yargs: "npm:^17.6.2"
+ peerDependencies:
+ "@babel/preset-env": ^7.1.6
+ checksum: 10c0/0cdad654b4f4b86ad526188f5adda59dd9f1b38057749580c72e21e58b1183d8e7593fc7b8614dd1330b101fd4418d2f96d4c0e5af70ad2f2fc1639b1832d76f
+ languageName: node
+ linkType: hard
+
+"@react-native/community-cli-plugin@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/community-cli-plugin@npm:0.76.0"
+ dependencies:
+ "@react-native/dev-middleware": "npm:0.76.0"
+ "@react-native/metro-babel-transformer": "npm:0.76.0"
+ chalk: "npm:^4.0.0"
+ execa: "npm:^5.1.1"
+ invariant: "npm:^2.2.4"
+ metro: "npm:^0.81.0"
+ metro-config: "npm:^0.81.0"
+ metro-core: "npm:^0.81.0"
+ node-fetch: "npm:^2.2.0"
+ readline: "npm:^1.3.0"
+ peerDependencies:
+ "@react-native-community/cli-server-api": "*"
+ peerDependenciesMeta:
+ "@react-native-community/cli-server-api":
+ optional: true
+ checksum: 10c0/b7bf144542264e52bdc49e124a6613debc9c590283999e3e6ef420b36cbb77578f99f05a9ca57dd802e042108a6b5a46428014f9d1f6fe48c18a8b52f9697801
+ languageName: node
+ linkType: hard
+
+"@react-native/debugger-frontend@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/debugger-frontend@npm:0.76.0"
+ checksum: 10c0/115db2f3fab68791606bea674718fb96ed684754f346a4d3e12f44f2486cb0bb0935c6c7bce318bcf5be8010eca4e111e0ae74a591c8f845d0e106a5ecac2dbf
+ languageName: node
+ linkType: hard
+
+"@react-native/dev-middleware@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/dev-middleware@npm:0.76.0"
+ dependencies:
+ "@isaacs/ttlcache": "npm:^1.4.1"
+ "@react-native/debugger-frontend": "npm:0.76.0"
+ chrome-launcher: "npm:^0.15.2"
+ chromium-edge-launcher: "npm:^0.2.0"
+ connect: "npm:^3.6.5"
+ debug: "npm:^2.2.0"
+ nullthrows: "npm:^1.1.1"
+ open: "npm:^7.0.3"
+ selfsigned: "npm:^2.4.1"
+ serve-static: "npm:^1.13.1"
+ ws: "npm:^6.2.3"
+ checksum: 10c0/b39deb0db79a2e8cc7b72417fdbbb3907dc7c178a8974cce928e7acf061e961793c9fa3ce2f1dfda53a6fcc5e5bcdf00bd37b291e0b0d860e6d6970159115362
+ languageName: node
+ linkType: hard
+
+"@react-native/gradle-plugin@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/gradle-plugin@npm:0.76.0"
+ checksum: 10c0/4d88a2df24356a4c9ea9438bb2ff623377d69276802e7a3dfa6e441cbc79a42f0ca216abec8a55d104e4146c72f8e4404c06cd7a4071bc91af9a733966689637
+ languageName: node
+ linkType: hard
+
+"@react-native/js-polyfills@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/js-polyfills@npm:0.76.0"
+ checksum: 10c0/ca9ed75a1920ae84ca393d22681fa7d99482ee627e6f6e30c83eb513554a905029d40ffb019c63b57b8548d8ffd3e1160c86f667b91c6ec21dd1d22aefad7215
+ languageName: node
+ linkType: hard
+
+"@react-native/metro-babel-transformer@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/metro-babel-transformer@npm:0.76.0"
+ dependencies:
+ "@babel/core": "npm:^7.25.2"
+ "@react-native/babel-preset": "npm:0.76.0"
+ hermes-parser: "npm:0.23.1"
+ nullthrows: "npm:^1.1.1"
+ peerDependencies:
+ "@babel/core": "*"
+ checksum: 10c0/1d425615136e2f951dd153f8fd7d41e7fbf41fbbc6d205335d3863a67c0ab51f0e9e7804e506012bbd52dcb229bfeee6d6d6264eac3a9499439e7db823b4d708
+ languageName: node
+ linkType: hard
+
+"@react-native/normalize-colors@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/normalize-colors@npm:0.76.0"
+ checksum: 10c0/4218ef1f785ab5f4d9fe29a314abdce9e1ba5a193cb8b0f2c8fa821bb72c33c54548bda2128c6de488f055898e407e8553db1adecd6cbe34503f2b55e9e35c0f
+ languageName: node
+ linkType: hard
+
+"@react-native/virtualized-lists@npm:0.76.0":
+ version: 0.76.0
+ resolution: "@react-native/virtualized-lists@npm:0.76.0"
+ dependencies:
+ invariant: "npm:^2.2.4"
+ nullthrows: "npm:^1.1.1"
+ peerDependencies:
+ "@types/react": ^18.2.6
+ react: "*"
+ react-native: "*"
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ checksum: 10c0/37979b170b9ac4768efb4306c05424613f7f7339b3496fd7eeac074b1439a3b16323d5cd91a94d81ee314c5841e238c49a25401a4e6cfbd06d9c87424796c79f
+ languageName: node
+ linkType: hard
+
+"@release-it/conventional-changelog@npm:^5.0.0":
+ version: 5.1.1
+ resolution: "@release-it/conventional-changelog@npm:5.1.1"
+ dependencies:
+ concat-stream: "npm:^2.0.0"
+ conventional-changelog: "npm:^3.1.25"
+ conventional-recommended-bump: "npm:^6.1.0"
+ semver: "npm:7.3.8"
+ peerDependencies:
+ release-it: ^15.4.1
+ checksum: 10c0/3be2c0757782c35eca0f79f54204d2f850c9b06ccc8f5a5a05997054f6bf14da0d77ef19819f8b61df0f2a59f97c021bb66e35667b97255db9459ea677b3fdf1
+ languageName: node
+ linkType: hard
+
+"@rushstack/node-core-library@npm:5.24.0":
+ version: 5.24.0
+ resolution: "@rushstack/node-core-library@npm:5.24.0"
+ dependencies:
+ ajv: "npm:~8.20.0"
+ ajv-draft-04: "npm:~1.0.0"
+ ajv-formats: "npm:~3.0.1"
+ fs-extra: "npm:~11.3.0"
+ import-lazy: "npm:~4.0.0"
+ jju: "npm:~1.4.0"
+ resolve: "npm:~1.22.1"
+ semver: "npm:~7.7.4"
+ peerDependencies:
+ "@types/node": "*"
+ peerDependenciesMeta:
+ "@types/node":
+ optional: true
+ checksum: 10c0/e2c022544c12cc59804f2c48ac157e916b31166000285746cf8158127f281e4a63e985754eade9449e92fdcd6d1169bd0af85ed06a1e9e43b17123002ca646f0
+ languageName: node
+ linkType: hard
+
+"@rushstack/problem-matcher@npm:0.2.1":
+ version: 0.2.1
+ resolution: "@rushstack/problem-matcher@npm:0.2.1"
+ peerDependencies:
+ "@types/node": "*"
+ peerDependenciesMeta:
+ "@types/node":
+ optional: true
+ checksum: 10c0/d6cf27f6bfcdc00763e6d51e582d4faef7109ba8906e6bb3bc375edae551c54a589ed61b7e01e9ae1dbdd4a7075fd82f2da541918b52f2233d6c86393beeaaa7
+ languageName: node
+ linkType: hard
+
+"@rushstack/rig-package@npm:0.7.3":
+ version: 0.7.3
+ resolution: "@rushstack/rig-package@npm:0.7.3"
+ dependencies:
+ jju: "npm:~1.4.0"
+ resolve: "npm:~1.22.1"
+ checksum: 10c0/d28a0196366bb16d020504b135ea1affbf77d01877a806544c38d48b95ab5b3593af1cbb7b24b6853a89fa360009811dcafe2ed4cc1616d12a08db0029a67097
+ languageName: node
+ linkType: hard
+
+"@rushstack/terminal@npm:0.24.3":
+ version: 0.24.3
+ resolution: "@rushstack/terminal@npm:0.24.3"
+ dependencies:
+ "@rushstack/node-core-library": "npm:5.24.0"
+ "@rushstack/problem-matcher": "npm:0.2.1"
+ supports-color: "npm:~8.1.1"
+ peerDependencies:
+ "@types/node": "*"
+ peerDependenciesMeta:
+ "@types/node":
+ optional: true
+ checksum: 10c0/57a6348fa5d60a409ddec156fe23069a3e1f06efd4ee07606706a3b692278e107a6cecd82558e0df9413e97bcd650c489eb83c417334c17591247ef7cfbe6c61
+ languageName: node
+ linkType: hard
+
+"@rushstack/ts-command-line@npm:5.3.13":
+ version: 5.3.13
+ resolution: "@rushstack/ts-command-line@npm:5.3.13"
+ dependencies:
+ "@rushstack/terminal": "npm:0.24.3"
+ "@types/argparse": "npm:1.0.38"
+ argparse: "npm:~1.0.9"
+ string-argv: "npm:~0.3.1"
+ checksum: 10c0/7b476141b352e1a6bea4a6764cb79e7f380a57dacc7178e130ed043d224fef187c954515213fe7d17e2051aa4a140dc8ab7a78e14f86ffc71cc93f7a5d587ac3
+ languageName: node
+ linkType: hard
+
+"@sinclair/typebox@npm:^0.27.8":
+ version: 0.27.10
+ resolution: "@sinclair/typebox@npm:0.27.10"
+ checksum: 10c0/ca42a02817656dbdae464ed4bb8aca6ad4718d7618e270760fea84a834ad0ecc1a22eba51421f09e5047174571131356ff3b5d80d609ced775d631df7b404b0d
+ languageName: node
+ linkType: hard
+
+"@sindresorhus/is@npm:^5.2.0":
+ version: 5.6.0
+ resolution: "@sindresorhus/is@npm:5.6.0"
+ checksum: 10c0/66727344d0c92edde5760b5fd1f8092b717f2298a162a5f7f29e4953e001479927402d9d387e245fb9dc7d3b37c72e335e93ed5875edfc5203c53be8ecba1b52
+ languageName: node
+ linkType: hard
+
+"@sinonjs/commons@npm:^3.0.0":
+ version: 3.0.1
+ resolution: "@sinonjs/commons@npm:3.0.1"
+ dependencies:
+ type-detect: "npm:4.0.8"
+ checksum: 10c0/1227a7b5bd6c6f9584274db996d7f8cee2c8c350534b9d0141fc662eaf1f292ea0ae3ed19e5e5271c8fd390d27e492ca2803acd31a1978be2cdc6be0da711403
+ languageName: node
+ linkType: hard
+
+"@sinonjs/fake-timers@npm:^10.0.2":
+ version: 10.3.0
+ resolution: "@sinonjs/fake-timers@npm:10.3.0"
+ dependencies:
+ "@sinonjs/commons": "npm:^3.0.0"
+ checksum: 10c0/2e2fb6cc57f227912814085b7b01fede050cd4746ea8d49a1e44d5a0e56a804663b0340ae2f11af7559ea9bf4d087a11f2f646197a660ea3cb04e19efc04aa63
+ languageName: node
+ linkType: hard
+
+"@szmarczak/http-timer@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "@szmarczak/http-timer@npm:5.0.1"
+ dependencies:
+ defer-to-connect: "npm:^2.0.1"
+ checksum: 10c0/4629d2fbb2ea67c2e9dc03af235c0991c79ebdddcbc19aed5d5732fb29ce01c13331e9b1a491584b9069bd6ecde6581dcbf871f11b7eefdebbab34de6cf2197e
+ languageName: node
+ linkType: hard
+
+"@tsconfig/node10@npm:^1.0.7":
+ version: 1.0.12
+ resolution: "@tsconfig/node10@npm:1.0.12"
+ checksum: 10c0/7bbbd7408cfaced86387a9b1b71cebc91c6fd701a120369735734da8eab1a4773fc079abd9f40c9e0b049e12586c8ac0e13f0da596bfd455b9b4c3faa813ebc5
+ languageName: node
+ linkType: hard
+
+"@tsconfig/node12@npm:^1.0.7":
+ version: 1.0.11
+ resolution: "@tsconfig/node12@npm:1.0.11"
+ checksum: 10c0/dddca2b553e2bee1308a056705103fc8304e42bb2d2cbd797b84403a223b25c78f2c683ec3e24a095e82cd435387c877239bffcb15a590ba817cd3f6b9a99fd9
+ languageName: node
+ linkType: hard
+
+"@tsconfig/node14@npm:^1.0.0":
+ version: 1.0.3
+ resolution: "@tsconfig/node14@npm:1.0.3"
+ checksum: 10c0/67c1316d065fdaa32525bc9449ff82c197c4c19092b9663b23213c8cbbf8d88b6ed6a17898e0cbc2711950fbfaf40388938c1c748a2ee89f7234fc9e7fe2bf44
+ languageName: node
+ linkType: hard
+
+"@tsconfig/node16@npm:^1.0.2":
+ version: 1.0.4
+ resolution: "@tsconfig/node16@npm:1.0.4"
+ checksum: 10c0/05f8f2734e266fb1839eb1d57290df1664fe2aa3b0fdd685a9035806daa635f7519bf6d5d9b33f6e69dd545b8c46bd6e2b5c79acb2b1f146e885f7f11a42a5bb
+ languageName: node
+ linkType: hard
+
+"@types/argparse@npm:1.0.38":
+ version: 1.0.38
+ resolution: "@types/argparse@npm:1.0.38"
+ checksum: 10c0/4fc892da5df16923f48180da2d1f4562fa8b0507cf636b24780444fa0a1d7321d4dc0c0ecbee6152968823f5a2ae0d321b4f8c705a489bf1ae1245bdeb0868fd
+ languageName: node
+ linkType: hard
+
+"@types/babel__core@npm:^7.1.14":
+ version: 7.20.5
+ resolution: "@types/babel__core@npm:7.20.5"
+ dependencies:
+ "@babel/parser": "npm:^7.20.7"
+ "@babel/types": "npm:^7.20.7"
+ "@types/babel__generator": "npm:*"
+ "@types/babel__template": "npm:*"
+ "@types/babel__traverse": "npm:*"
+ checksum: 10c0/bdee3bb69951e833a4b811b8ee9356b69a61ed5b7a23e1a081ec9249769117fa83aaaf023bb06562a038eb5845155ff663e2d5c75dd95c1d5ccc91db012868ff
+ languageName: node
+ linkType: hard
+
+"@types/babel__generator@npm:*":
+ version: 7.27.0
+ resolution: "@types/babel__generator@npm:7.27.0"
+ dependencies:
+ "@babel/types": "npm:^7.0.0"
+ checksum: 10c0/9f9e959a8792df208a9d048092fda7e1858bddc95c6314857a8211a99e20e6830bdeb572e3587ae8be5429e37f2a96fcf222a9f53ad232f5537764c9e13a2bbd
+ languageName: node
+ linkType: hard
+
+"@types/babel__template@npm:*":
+ version: 7.4.4
+ resolution: "@types/babel__template@npm:7.4.4"
+ dependencies:
+ "@babel/parser": "npm:^7.1.0"
+ "@babel/types": "npm:^7.0.0"
+ checksum: 10c0/cc84f6c6ab1eab1427e90dd2b76ccee65ce940b778a9a67be2c8c39e1994e6f5bbc8efa309f6cea8dc6754994524cd4d2896558df76d92e7a1f46ecffee7112b
+ languageName: node
+ linkType: hard
+
+"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6":
+ version: 7.28.0
+ resolution: "@types/babel__traverse@npm:7.28.0"
+ dependencies:
+ "@babel/types": "npm:^7.28.2"
+ checksum: 10c0/b52d7d4e8fc6a9018fe7361c4062c1c190f5778cf2466817cb9ed19d69fbbb54f9a85ffedeb748ed8062d2cf7d4cc088ee739848f47c57740de1c48cbf0d0994
+ languageName: node
+ linkType: hard
+
+"@types/graceful-fs@npm:^4.1.3":
+ version: 4.1.9
+ resolution: "@types/graceful-fs@npm:4.1.9"
+ dependencies:
+ "@types/node": "npm:*"
+ checksum: 10c0/235d2fc69741448e853333b7c3d1180a966dd2b8972c8cbcd6b2a0c6cd7f8d582ab2b8e58219dbc62cce8f1b40aa317ff78ea2201cdd8249da5025adebed6f0b
+ languageName: node
+ linkType: hard
+
+"@types/http-cache-semantics@npm:^4.0.2":
+ version: 4.2.0
+ resolution: "@types/http-cache-semantics@npm:4.2.0"
+ checksum: 10c0/82dd33cbe7d4843f1e884a251c6a12d385b62274353b9db167462e7fbffdbb3a83606f9952203017c5b8cabbd7b9eef0cf240a3a9dedd20f69875c9701939415
+ languageName: node
+ linkType: hard
+
+"@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1":
+ version: 2.0.6
+ resolution: "@types/istanbul-lib-coverage@npm:2.0.6"
+ checksum: 10c0/3948088654f3eeb45363f1db158354fb013b362dba2a5c2c18c559484d5eb9f6fd85b23d66c0a7c2fcfab7308d0a585b14dadaca6cc8bf89ebfdc7f8f5102fb7
+ languageName: node
+ linkType: hard
+
+"@types/istanbul-lib-report@npm:*":
+ version: 3.0.3
+ resolution: "@types/istanbul-lib-report@npm:3.0.3"
+ dependencies:
+ "@types/istanbul-lib-coverage": "npm:*"
+ checksum: 10c0/247e477bbc1a77248f3c6de5dadaae85ff86ac2d76c5fc6ab1776f54512a745ff2a5f791d22b942e3990ddbd40f3ef5289317c4fca5741bedfaa4f01df89051c
+ languageName: node
+ linkType: hard
+
+"@types/istanbul-reports@npm:^3.0.0":
+ version: 3.0.4
+ resolution: "@types/istanbul-reports@npm:3.0.4"
+ dependencies:
+ "@types/istanbul-lib-report": "npm:*"
+ checksum: 10c0/1647fd402aced5b6edac87274af14ebd6b3a85447ef9ad11853a70fd92a98d35f81a5d3ea9fcb5dbb5834e800c6e35b64475e33fcae6bfa9acc70d61497c54ee
+ languageName: node
+ linkType: hard
+
+"@types/jest@npm:^29.5.12":
+ version: 29.5.14
+ resolution: "@types/jest@npm:29.5.14"
+ dependencies:
+ expect: "npm:^29.0.0"
+ pretty-format: "npm:^29.0.0"
+ checksum: 10c0/18e0712d818890db8a8dab3d91e9ea9f7f19e3f83c2e50b312f557017dc81466207a71f3ed79cf4428e813ba939954fa26ffa0a9a7f153181ba174581b1c2aed
+ languageName: node
+ linkType: hard
+
+"@types/json-schema@npm:^7.0.9":
+ version: 7.0.15
+ resolution: "@types/json-schema@npm:7.0.15"
+ checksum: 10c0/a996a745e6c5d60292f36731dd41341339d4eeed8180bb09226e5c8d23759067692b1d88e5d91d72ee83dfc00d3aca8e7bd43ea120516c17922cbcb7c3e252db
+ languageName: node
+ linkType: hard
+
+"@types/lodash.debounce@npm:^4.0.7":
+ version: 4.0.9
+ resolution: "@types/lodash.debounce@npm:4.0.9"
+ dependencies:
+ "@types/lodash": "npm:*"
+ checksum: 10c0/9fbb24e5e52616faf60ba5c82d8c6517f4b86fc6e9ab353b4c56c0760f63d9bf53af3f2d8f6c37efa48090359fb96dba1087d497758511f6c40677002191d042
+ languageName: node
+ linkType: hard
+
+"@types/lodash@npm:*":
+ version: 4.17.24
+ resolution: "@types/lodash@npm:4.17.24"
+ checksum: 10c0/b72f60d4daacdad1fa643edb3faba204c02a01eb1ac00a83ff73496a6d236fc55e459c06106e8ced42277dba932d087d8fc090f8de4ef590d3f91e6d6f7ce85a
+ languageName: node
+ linkType: hard
+
+"@types/minimist@npm:^1.2.0":
+ version: 1.2.5
+ resolution: "@types/minimist@npm:1.2.5"
+ checksum: 10c0/3f791258d8e99a1d7d0ca2bda1ca6ea5a94e5e7b8fc6cde84dd79b0552da6fb68ade750f0e17718f6587783c24254bbca0357648dd59dc3812c150305cabdc46
+ languageName: node
+ linkType: hard
+
+"@types/node-forge@npm:^1.3.0":
+ version: 1.3.14
+ resolution: "@types/node-forge@npm:1.3.14"
+ dependencies:
+ "@types/node": "npm:*"
+ checksum: 10c0/da6158fd34fa7652aa7f8164508f97a76b558724ab292f13c257e39d54d95d4d77604e8fb14dc454a867f1aeec7af70118294889195ec4400cecbb8a5c77a212
+ languageName: node
+ linkType: hard
+
+"@types/node@npm:*, @types/node@npm:20.5.1":
+ version: 20.5.1
+ resolution: "@types/node@npm:20.5.1"
+ checksum: 10c0/b5aeaeb489842081190f8c2c09e923ff7b1b4ee3ecfceba12ba1030ce7750909a1b3c0f5372bd60cbe955e48a9889f416522e8a96697ad7209317752f395e3e5
+ languageName: node
+ linkType: hard
+
+"@types/normalize-package-data@npm:^2.4.0":
+ version: 2.4.4
+ resolution: "@types/normalize-package-data@npm:2.4.4"
+ checksum: 10c0/aef7bb9b015883d6f4119c423dd28c4bdc17b0e8a0ccf112c78b4fe0e91fbc4af7c6204b04bba0e199a57d2f3fbbd5b4a14bf8739bf9d2a39b2a0aad545e0f86
+ languageName: node
+ linkType: hard
+
+"@types/prop-types@npm:*":
+ version: 15.7.15
+ resolution: "@types/prop-types@npm:15.7.15"
+ checksum: 10c0/b59aad1ad19bf1733cf524fd4e618196c6c7690f48ee70a327eb450a42aab8e8a063fbe59ca0a5701aebe2d92d582292c0fb845ea57474f6a15f6994b0e260b2
+ languageName: node
+ linkType: hard
+
+"@types/react@npm:18.3.12":
+ version: 18.3.12
+ resolution: "@types/react@npm:18.3.12"
+ dependencies:
+ "@types/prop-types": "npm:*"
+ csstype: "npm:^3.0.2"
+ checksum: 10c0/8bae8d9a41619804561574792e29112b413044eb0d53746dde2b9720c1f9a59f71c895bbd7987cd8ce9500b00786e53bc032dced38cddf42910458e145675290
+ languageName: node
+ linkType: hard
+
+"@types/semver@npm:^7.3.12":
+ version: 7.7.1
+ resolution: "@types/semver@npm:7.7.1"
+ checksum: 10c0/c938aef3bf79a73f0f3f6037c16e2e759ff40c54122ddf0b2583703393d8d3127130823facb880e694caa324eb6845628186aac1997ee8b31dc2d18fafe26268
+ languageName: node
+ linkType: hard
+
+"@types/stack-utils@npm:^2.0.0":
+ version: 2.0.3
+ resolution: "@types/stack-utils@npm:2.0.3"
+ checksum: 10c0/1f4658385ae936330581bcb8aa3a066df03867d90281cdf89cc356d404bd6579be0f11902304e1f775d92df22c6dd761d4451c804b0a4fba973e06211e9bd77c
+ languageName: node
+ linkType: hard
+
+"@types/yargs-parser@npm:*":
+ version: 21.0.3
+ resolution: "@types/yargs-parser@npm:21.0.3"
+ checksum: 10c0/e71c3bd9d0b73ca82e10bee2064c384ab70f61034bbfb78e74f5206283fc16a6d85267b606b5c22cb2a3338373586786fed595b2009825d6a9115afba36560a0
+ languageName: node
+ linkType: hard
+
+"@types/yargs@npm:^17.0.8":
+ version: 17.0.35
+ resolution: "@types/yargs@npm:17.0.35"
+ dependencies:
+ "@types/yargs-parser": "npm:*"
+ checksum: 10c0/609557826a6b85e73ccf587923f6429850d6dc70e420b455bab4601b670bfadf684b09ae288bccedab042c48ba65f1666133cf375814204b544009f57d6eef63
+ languageName: node
+ linkType: hard
+
+"@typescript-eslint/eslint-plugin@npm:^5.30.5":
+ version: 5.62.0
+ resolution: "@typescript-eslint/eslint-plugin@npm:5.62.0"
+ dependencies:
+ "@eslint-community/regexpp": "npm:^4.4.0"
+ "@typescript-eslint/scope-manager": "npm:5.62.0"
+ "@typescript-eslint/type-utils": "npm:5.62.0"
+ "@typescript-eslint/utils": "npm:5.62.0"
+ debug: "npm:^4.3.4"
+ graphemer: "npm:^1.4.0"
+ ignore: "npm:^5.2.0"
+ natural-compare-lite: "npm:^1.4.0"
+ semver: "npm:^7.3.7"
+ tsutils: "npm:^3.21.0"
+ peerDependencies:
+ "@typescript-eslint/parser": ^5.0.0
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ checksum: 10c0/3f40cb6bab5a2833c3544e4621b9fdacd8ea53420cadc1c63fac3b89cdf5c62be1e6b7bcf56976dede5db4c43830de298ced3db60b5494a3b961ca1b4bff9f2a
+ languageName: node
+ linkType: hard
+
+"@typescript-eslint/parser@npm:^5.30.5":
+ version: 5.62.0
+ resolution: "@typescript-eslint/parser@npm:5.62.0"
+ dependencies:
+ "@typescript-eslint/scope-manager": "npm:5.62.0"
+ "@typescript-eslint/types": "npm:5.62.0"
+ "@typescript-eslint/typescript-estree": "npm:5.62.0"
+ debug: "npm:^4.3.4"
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ checksum: 10c0/315194b3bf39beb9bd16c190956c46beec64b8371e18d6bb72002108b250983eb1e186a01d34b77eb4045f4941acbb243b16155fbb46881105f65e37dc9e24d4
+ languageName: node
+ linkType: hard
+
+"@typescript-eslint/scope-manager@npm:5.62.0":
+ version: 5.62.0
+ resolution: "@typescript-eslint/scope-manager@npm:5.62.0"
+ dependencies:
+ "@typescript-eslint/types": "npm:5.62.0"
+ "@typescript-eslint/visitor-keys": "npm:5.62.0"
+ checksum: 10c0/861253235576c1c5c1772d23cdce1418c2da2618a479a7de4f6114a12a7ca853011a1e530525d0931c355a8fd237b9cd828fac560f85f9623e24054fd024726f
+ languageName: node
+ linkType: hard
+
+"@typescript-eslint/type-utils@npm:5.62.0":
+ version: 5.62.0
+ resolution: "@typescript-eslint/type-utils@npm:5.62.0"
+ dependencies:
+ "@typescript-eslint/typescript-estree": "npm:5.62.0"
+ "@typescript-eslint/utils": "npm:5.62.0"
+ debug: "npm:^4.3.4"
+ tsutils: "npm:^3.21.0"
+ peerDependencies:
+ eslint: "*"
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ checksum: 10c0/93112e34026069a48f0484b98caca1c89d9707842afe14e08e7390af51cdde87378df29d213d3bbd10a7cfe6f91b228031b56218515ce077bdb62ddea9d9f474
+ languageName: node
+ linkType: hard
+
+"@typescript-eslint/types@npm:5.62.0":
+ version: 5.62.0
+ resolution: "@typescript-eslint/types@npm:5.62.0"
+ checksum: 10c0/7febd3a7f0701c0b927e094f02e82d8ee2cada2b186fcb938bc2b94ff6fbad88237afc304cbaf33e82797078bbbb1baf91475f6400912f8b64c89be79bfa4ddf
+ languageName: node
+ linkType: hard
+
+"@typescript-eslint/typescript-estree@npm:5.62.0":
+ version: 5.62.0
+ resolution: "@typescript-eslint/typescript-estree@npm:5.62.0"
+ dependencies:
+ "@typescript-eslint/types": "npm:5.62.0"
+ "@typescript-eslint/visitor-keys": "npm:5.62.0"
+ debug: "npm:^4.3.4"
+ globby: "npm:^11.1.0"
+ is-glob: "npm:^4.0.3"
+ semver: "npm:^7.3.7"
+ tsutils: "npm:^3.21.0"
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ checksum: 10c0/d7984a3e9d56897b2481940ec803cb8e7ead03df8d9cfd9797350be82ff765dfcf3cfec04e7355e1779e948da8f02bc5e11719d07a596eb1cb995c48a95e38cf
+ languageName: node
+ linkType: hard
+
+"@typescript-eslint/utils@npm:5.62.0, @typescript-eslint/utils@npm:^5.10.0":
+ version: 5.62.0
+ resolution: "@typescript-eslint/utils@npm:5.62.0"
+ dependencies:
+ "@eslint-community/eslint-utils": "npm:^4.2.0"
+ "@types/json-schema": "npm:^7.0.9"
+ "@types/semver": "npm:^7.3.12"
+ "@typescript-eslint/scope-manager": "npm:5.62.0"
+ "@typescript-eslint/types": "npm:5.62.0"
+ "@typescript-eslint/typescript-estree": "npm:5.62.0"
+ eslint-scope: "npm:^5.1.1"
+ semver: "npm:^7.3.7"
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ checksum: 10c0/f09b7d9952e4a205eb1ced31d7684dd55cee40bf8c2d78e923aa8a255318d97279825733902742c09d8690f37a50243f4c4d383ab16bd7aefaf9c4b438f785e1
+ languageName: node
+ linkType: hard
+
+"@typescript-eslint/visitor-keys@npm:5.62.0":
+ version: 5.62.0
+ resolution: "@typescript-eslint/visitor-keys@npm:5.62.0"
+ dependencies:
+ "@typescript-eslint/types": "npm:5.62.0"
+ eslint-visitor-keys: "npm:^3.3.0"
+ checksum: 10c0/7c3b8e4148e9b94d9b7162a596a1260d7a3efc4e65199693b8025c71c4652b8042501c0bc9f57654c1e2943c26da98c0f77884a746c6ae81389fcb0b513d995d
+ languageName: node
+ linkType: hard
+
+"@ungap/structured-clone@npm:^1.2.0":
+ version: 1.3.0
+ resolution: "@ungap/structured-clone@npm:1.3.0"
+ checksum: 10c0/0fc3097c2540ada1fc340ee56d58d96b5b536a2a0dab6e3ec17d4bfc8c4c86db345f61a375a8185f9da96f01c69678f836a2b57eeaa9e4b8eeafd26428e57b0a
+ languageName: node
+ linkType: hard
+
+"JSONStream@npm:^1.0.4, JSONStream@npm:^1.3.5":
+ version: 1.3.5
+ resolution: "JSONStream@npm:1.3.5"
+ dependencies:
+ jsonparse: "npm:^1.2.0"
+ through: "npm:>=2.2.7 <3"
+ bin:
+ JSONStream: ./bin.js
+ checksum: 10c0/0f54694da32224d57b715385d4a6b668d2117379d1f3223dc758459246cca58fdc4c628b83e8a8883334e454a0a30aa198ede77c788b55537c1844f686a751f2
+ languageName: node
+ linkType: hard
+
+"abbrev@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "abbrev@npm:5.0.0"
+ checksum: 10c0/8e88f5c798ea4562d28c5a3e9ad69e3879890bc5d695d8f2dffb8609be4c890aacc8f80ef4553fdd2c6a62d70c2ce8bc57b38074e383beb7487bdafa9ed42ea5
+ languageName: node
+ linkType: hard
+
+"abort-controller@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "abort-controller@npm:3.0.0"
+ dependencies:
+ event-target-shim: "npm:^5.0.0"
+ checksum: 10c0/90ccc50f010250152509a344eb2e71977fbf8db0ab8f1061197e3275ddf6c61a41a6edfd7b9409c664513131dd96e962065415325ef23efa5db931b382d24ca5
+ languageName: node
+ linkType: hard
+
+"accepts@npm:^1.3.7":
+ version: 1.3.8
+ resolution: "accepts@npm:1.3.8"
+ dependencies:
+ mime-types: "npm:~2.1.34"
+ negotiator: "npm:0.6.3"
+ checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362
+ languageName: node
+ linkType: hard
+
+"acorn-jsx@npm:^5.3.2":
+ version: 5.3.2
+ resolution: "acorn-jsx@npm:5.3.2"
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+ checksum: 10c0/4c54868fbef3b8d58927d5e33f0a4de35f59012fe7b12cf9dfbb345fb8f46607709e1c4431be869a23fb63c151033d84c4198fa9f79385cec34fcb1dd53974c1
+ languageName: node
+ linkType: hard
+
+"acorn-walk@npm:^8.1.1, acorn-walk@npm:^8.3.4":
+ version: 8.3.5
+ resolution: "acorn-walk@npm:8.3.5"
+ dependencies:
+ acorn: "npm:^8.11.0"
+ checksum: 10c0/e31bf5b5423ed1349437029d66d708b9fbd1b77a644b031501e2c753b028d13b56348210ed901d5b1d0d86eb3381c0a0fc0d0998511a9d546d1194936266a332
+ languageName: node
+ linkType: hard
+
+"acorn@npm:^8.11.0, acorn@npm:^8.15.0, acorn@npm:^8.4.1, acorn@npm:^8.9.0":
+ version: 8.16.0
+ resolution: "acorn@npm:8.16.0"
+ bin:
+ acorn: bin/acorn
+ checksum: 10c0/c9c52697227661b68d0debaf972222d4f622aa06b185824164e153438afa7b08273432ca43ea792cadb24dada1d46f6f6bb1ef8de9956979288cc1b96bf9914e
+ languageName: node
+ linkType: hard
+
+"add-stream@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "add-stream@npm:1.0.0"
+ checksum: 10c0/985014a14e76ca4cb24e0fc58bb1556794cf38c5c8937de335a10584f50a371dc48e1c34a59391c7eb9c1fc908b4b86764df5d2756f701df6ba95d1ca2f63ddc
+ languageName: node
+ linkType: hard
+
+"agent-base@npm:^7.0.2, agent-base@npm:^7.1.0, agent-base@npm:^7.1.2":
+ version: 7.1.4
+ resolution: "agent-base@npm:7.1.4"
+ checksum: 10c0/c2c9ab7599692d594b6a161559ada307b7a624fa4c7b03e3afdb5a5e31cd0e53269115b620fcab024c5ac6a6f37fa5eb2e004f076ad30f5f7e6b8b671f7b35fe
+ languageName: node
+ linkType: hard
+
+"aggregate-error@npm:^3.0.0":
+ version: 3.1.0
+ resolution: "aggregate-error@npm:3.1.0"
+ dependencies:
+ clean-stack: "npm:^2.0.0"
+ indent-string: "npm:^4.0.0"
+ checksum: 10c0/a42f67faa79e3e6687a4923050e7c9807db3848a037076f791d10e092677d65c1d2d863b7848560699f40fc0502c19f40963fb1cd1fb3d338a7423df8e45e039
+ languageName: node
+ linkType: hard
+
+"ajv-draft-04@npm:~1.0.0":
+ version: 1.0.0
+ resolution: "ajv-draft-04@npm:1.0.0"
+ peerDependencies:
+ ajv: ^8.5.0
+ peerDependenciesMeta:
+ ajv:
+ optional: true
+ checksum: 10c0/6044310bd38c17d77549fd326bd40ce1506fa10b0794540aa130180808bf94117fac8c9b448c621512bea60e4a947278f6a978e87f10d342950c15b33ddd9271
+ languageName: node
+ linkType: hard
+
+"ajv-formats@npm:~3.0.1":
+ version: 3.0.1
+ resolution: "ajv-formats@npm:3.0.1"
+ dependencies:
+ ajv: "npm:^8.0.0"
+ peerDependencies:
+ ajv: ^8.0.0
+ peerDependenciesMeta:
+ ajv:
+ optional: true
+ checksum: 10c0/168d6bca1ea9f163b41c8147bae537e67bd963357a5488a1eaf3abe8baa8eec806d4e45f15b10767e6020679315c7e1e5e6803088dfb84efa2b4e9353b83dd0a
+ languageName: node
+ linkType: hard
+
+"ajv@npm:^6.12.4":
+ version: 6.15.0
+ resolution: "ajv@npm:6.15.0"
+ dependencies:
+ fast-deep-equal: "npm:^3.1.1"
+ fast-json-stable-stringify: "npm:^2.0.0"
+ json-schema-traverse: "npm:^0.4.1"
+ uri-js: "npm:^4.2.2"
+ checksum: 10c0/67966499dd272ecde1c2e467084411132891523d057487587879d39ac04207f4351b7b2324c83198013967fbfa632c1612adc960114a30770fbe07a0773b32c2
+ languageName: node
+ linkType: hard
+
+"ajv@npm:^8.0.0, ajv@npm:~8.20.0":
+ version: 8.20.0
+ resolution: "ajv@npm:8.20.0"
+ dependencies:
+ fast-deep-equal: "npm:^3.1.3"
+ fast-uri: "npm:^3.0.1"
+ json-schema-traverse: "npm:^1.0.0"
+ require-from-string: "npm:^2.0.2"
+ checksum: 10c0/5df9a1c8f83863cde1bd3a9ddb426f599718f88e3dc9153616c79fb28e0be455335830d7f21d745576519f057b371352daa31047b6a33d7036fe08777d60cf2a
+ languageName: node
+ linkType: hard
+
+"ajv@npm:^8.11.0, ajv@npm:~8.18.0":
+ version: 8.18.0
+ resolution: "ajv@npm:8.18.0"
+ dependencies:
+ fast-deep-equal: "npm:^3.1.3"
+ fast-uri: "npm:^3.0.1"
+ json-schema-traverse: "npm:^1.0.0"
+ require-from-string: "npm:^2.0.2"
+ checksum: 10c0/e7517c426173513a07391be951879932bdf3348feaebd2199f5b901c20f99d60db8cd1591502d4d551dc82f594e82a05c4fe1c70139b15b8937f7afeaed9532f
+ languageName: node
+ linkType: hard
+
+"anser@npm:^1.4.9":
+ version: 1.4.10
+ resolution: "anser@npm:1.4.10"
+ checksum: 10c0/ab251c96f6b9b8858e346137b75968ef3d287e10f358cd3981666949093e587defb5f7059a05a929eb44e1b3775bae346a55ab952e74049355e70f81b8b1ef53
+ languageName: node
+ linkType: hard
+
+"ansi-align@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "ansi-align@npm:3.0.1"
+ dependencies:
+ string-width: "npm:^4.1.0"
+ checksum: 10c0/ad8b755a253a1bc8234eb341e0cec68a857ab18bf97ba2bda529e86f6e30460416523e0ec58c32e5c21f0ca470d779503244892873a5895dbd0c39c788e82467
+ languageName: node
+ linkType: hard
+
+"ansi-escapes@npm:^4.2.1, ansi-escapes@npm:^4.3.2":
+ version: 4.3.2
+ resolution: "ansi-escapes@npm:4.3.2"
+ dependencies:
+ type-fest: "npm:^0.21.3"
+ checksum: 10c0/da917be01871525a3dfcf925ae2977bc59e8c513d4423368645634bf5d4ceba5401574eb705c1e92b79f7292af5a656f78c5725a4b0e1cec97c4b413705c1d50
+ languageName: node
+ linkType: hard
+
+"ansi-regex@npm:^5.0.0, ansi-regex@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "ansi-regex@npm:5.0.1"
+ checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737
+ languageName: node
+ linkType: hard
+
+"ansi-regex@npm:^6.2.2":
+ version: 6.2.2
+ resolution: "ansi-regex@npm:6.2.2"
+ checksum: 10c0/05d4acb1d2f59ab2cf4b794339c7b168890d44dda4bf0ce01152a8da0213aca207802f930442ce8cd22d7a92f44907664aac6508904e75e038fa944d2601b30f
+ languageName: node
+ linkType: hard
+
+"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0":
+ version: 4.3.0
+ resolution: "ansi-styles@npm:4.3.0"
+ dependencies:
+ color-convert: "npm:^2.0.1"
+ checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041
+ languageName: node
+ linkType: hard
+
+"ansi-styles@npm:^5.0.0":
+ version: 5.2.0
+ resolution: "ansi-styles@npm:5.2.0"
+ checksum: 10c0/9c4ca80eb3c2fb7b33841c210d2f20807f40865d27008d7c3f707b7f95cab7d67462a565e2388ac3285b71cb3d9bb2173de8da37c57692a362885ec34d6e27df
+ languageName: node
+ linkType: hard
+
+"ansi-styles@npm:^6.1.0":
+ version: 6.2.3
+ resolution: "ansi-styles@npm:6.2.3"
+ checksum: 10c0/23b8a4ce14e18fb854693b95351e286b771d23d8844057ed2e7d083cd3e708376c3323707ec6a24365f7d7eda3ca00327fe04092e29e551499ec4c8b7bfac868
+ languageName: node
+ linkType: hard
+
+"anymatch@npm:^3.0.3":
+ version: 3.1.3
+ resolution: "anymatch@npm:3.1.3"
+ dependencies:
+ normalize-path: "npm:^3.0.0"
+ picomatch: "npm:^2.0.4"
+ checksum: 10c0/57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac
+ languageName: node
+ linkType: hard
+
+"arg@npm:^4.1.0":
+ version: 4.1.3
+ resolution: "arg@npm:4.1.3"
+ checksum: 10c0/070ff801a9d236a6caa647507bdcc7034530604844d64408149a26b9e87c2f97650055c0f049abd1efc024b334635c01f29e0b632b371ac3f26130f4cf65997a
+ languageName: node
+ linkType: hard
+
+"argparse@npm:^1.0.7, argparse@npm:~1.0.9":
+ version: 1.0.10
+ resolution: "argparse@npm:1.0.10"
+ dependencies:
+ sprintf-js: "npm:~1.0.2"
+ checksum: 10c0/b2972c5c23c63df66bca144dbc65d180efa74f25f8fd9b7d9a0a6c88ae839db32df3d54770dcb6460cf840d232b60695d1a6b1053f599d84e73f7437087712de
+ languageName: node
+ linkType: hard
+
+"argparse@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "argparse@npm:2.0.1"
+ checksum: 10c0/c5640c2d89045371c7cedd6a70212a04e360fd34d6edeae32f6952c63949e3525ea77dbec0289d8213a99bbaeab5abfa860b5c12cf88a2e6cf8106e90dd27a7e
+ languageName: node
+ linkType: hard
+
+"arkregex@npm:0.0.5":
+ version: 0.0.5
+ resolution: "arkregex@npm:0.0.5"
+ dependencies:
+ "@ark/util": "npm:0.56.0"
+ checksum: 10c0/1a39510e04d69b9287b9b53d3965afcc4ef27bdd9ff9c21a78092fcb841f35c11227d8476be66d2f76347deccfd10c202f395bd871383c328057ad004ffe7ebd
+ languageName: node
+ linkType: hard
+
+"arktype@npm:^2.1.15":
+ version: 2.2.0
+ resolution: "arktype@npm:2.2.0"
+ dependencies:
+ "@ark/schema": "npm:0.56.0"
+ "@ark/util": "npm:0.56.0"
+ arkregex: "npm:0.0.5"
+ checksum: 10c0/67c05dfe9654996c6129e68ce6c39188d4a3c6f1268cf78f028d6c98ab0b92954142853f03a41ecff029d56a0703824d2ca5d76525dab54a32de09a7145b374e
+ languageName: node
+ linkType: hard
+
+"array-buffer-byte-length@npm:^1.0.1, array-buffer-byte-length@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "array-buffer-byte-length@npm:1.0.2"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ is-array-buffer: "npm:^3.0.5"
+ checksum: 10c0/74e1d2d996941c7a1badda9cabb7caab8c449db9086407cad8a1b71d2604cc8abf105db8ca4e02c04579ec58b7be40279ddb09aea4784832984485499f48432d
+ languageName: node
+ linkType: hard
+
+"array-ify@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "array-ify@npm:1.0.0"
+ checksum: 10c0/75c9c072faac47bd61779c0c595e912fe660d338504ac70d10e39e1b8a4a0c9c87658703d619b9d1b70d324177ae29dc8d07dda0d0a15d005597bc4c5a59c70c
+ languageName: node
+ linkType: hard
+
+"array-includes@npm:^3.1.6, array-includes@npm:^3.1.8":
+ version: 3.1.9
+ resolution: "array-includes@npm:3.1.9"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.4"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.24.0"
+ es-object-atoms: "npm:^1.1.1"
+ get-intrinsic: "npm:^1.3.0"
+ is-string: "npm:^1.1.1"
+ math-intrinsics: "npm:^1.1.0"
+ checksum: 10c0/0235fa69078abeac05ac4250699c44996bc6f774a9cbe45db48674ce6bd142f09b327d31482ff75cf03344db4ea03eae23edb862d59378b484b47ed842574856
+ languageName: node
+ linkType: hard
+
+"array-union@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "array-union@npm:2.1.0"
+ checksum: 10c0/429897e68110374f39b771ec47a7161fc6a8fc33e196857c0a396dc75df0b5f65e4d046674db764330b6bb66b39ef48dd7c53b6a2ee75cfb0681e0c1a7033962
+ languageName: node
+ linkType: hard
+
+"array.prototype.findlast@npm:^1.2.5":
+ version: 1.2.5
+ resolution: "array.prototype.findlast@npm:1.2.5"
+ dependencies:
+ call-bind: "npm:^1.0.7"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.2"
+ es-errors: "npm:^1.3.0"
+ es-object-atoms: "npm:^1.0.0"
+ es-shim-unscopables: "npm:^1.0.2"
+ checksum: 10c0/ddc952b829145ab45411b9d6adcb51a8c17c76bf89c9dd64b52d5dffa65d033da8c076ed2e17091779e83bc892b9848188d7b4b33453c5565e65a92863cb2775
+ languageName: node
+ linkType: hard
+
+"array.prototype.flat@npm:^1.3.1":
+ version: 1.3.3
+ resolution: "array.prototype.flat@npm:1.3.3"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.5"
+ es-shim-unscopables: "npm:^1.0.2"
+ checksum: 10c0/d90e04dfbc43bb96b3d2248576753d1fb2298d2d972e29ca7ad5ec621f0d9e16ff8074dae647eac4f31f4fb7d3f561a7ac005fb01a71f51705a13b5af06a7d8a
+ languageName: node
+ linkType: hard
+
+"array.prototype.flatmap@npm:^1.3.3":
+ version: 1.3.3
+ resolution: "array.prototype.flatmap@npm:1.3.3"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.5"
+ es-shim-unscopables: "npm:^1.0.2"
+ checksum: 10c0/ba899ea22b9dc9bf276e773e98ac84638ed5e0236de06f13d63a90b18ca9e0ec7c97d622d899796e3773930b946cd2413d098656c0c5d8cc58c6f25c21e6bd54
+ languageName: node
+ linkType: hard
+
+"array.prototype.map@npm:^1.0.5":
+ version: 1.0.8
+ resolution: "array.prototype.map@npm:1.0.8"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.3"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.6"
+ es-array-method-boxes-properly: "npm:^1.0.0"
+ es-object-atoms: "npm:^1.0.0"
+ is-string: "npm:^1.1.1"
+ checksum: 10c0/95260196b75ac94b8d0736e7001f5efa290e2bde4570436c65079a65f8507ad4d4cd77f41e92bea8670142c8e4fe4d896024bfadca82e0c048c39398a4d527de
+ languageName: node
+ linkType: hard
+
+"array.prototype.tosorted@npm:^1.1.4":
+ version: 1.1.4
+ resolution: "array.prototype.tosorted@npm:1.1.4"
+ dependencies:
+ call-bind: "npm:^1.0.7"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.3"
+ es-errors: "npm:^1.3.0"
+ es-shim-unscopables: "npm:^1.0.2"
+ checksum: 10c0/eb3c4c4fc0381b0bf6dba2ea4d48d367c2827a0d4236a5718d97caaccc6b78f11f4cadf090736e86301d295a6aa4967ed45568f92ced51be8cbbacd9ca410943
+ languageName: node
+ linkType: hard
+
+"arraybuffer.prototype.slice@npm:^1.0.4":
+ version: 1.0.4
+ resolution: "arraybuffer.prototype.slice@npm:1.0.4"
+ dependencies:
+ array-buffer-byte-length: "npm:^1.0.1"
+ call-bind: "npm:^1.0.8"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.5"
+ es-errors: "npm:^1.3.0"
+ get-intrinsic: "npm:^1.2.6"
+ is-array-buffer: "npm:^3.0.4"
+ checksum: 10c0/2f2459caa06ae0f7f615003f9104b01f6435cc803e11bd2a655107d52a1781dc040532dc44d93026b694cc18793993246237423e13a5337e86b43ed604932c06
+ languageName: node
+ linkType: hard
+
+"arrify@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "arrify@npm:1.0.1"
+ checksum: 10c0/c35c8d1a81bcd5474c0c57fe3f4bad1a4d46a5fa353cedcff7a54da315df60db71829e69104b859dff96c5d68af46bd2be259fe5e50dc6aa9df3b36bea0383ab
+ languageName: node
+ linkType: hard
+
+"asap@npm:~2.0.6":
+ version: 2.0.6
+ resolution: "asap@npm:2.0.6"
+ checksum: 10c0/c6d5e39fe1f15e4b87677460bd66b66050cd14c772269cee6688824c1410a08ab20254bb6784f9afb75af9144a9f9a7692d49547f4d19d715aeb7c0318f3136d
+ languageName: node
+ linkType: hard
+
+"ast-types@npm:0.15.2":
+ version: 0.15.2
+ resolution: "ast-types@npm:0.15.2"
+ dependencies:
+ tslib: "npm:^2.0.1"
+ checksum: 10c0/5b26e3656e9e8d1db8c8d14971d0cb88ca0138aacce72171cb4cd4555fc8dc53c07e821c568e57fe147366931708fefd25cb9d7e880d42ce9cb569947844c962
+ languageName: node
+ linkType: hard
+
+"ast-types@npm:^0.13.4":
+ version: 0.13.4
+ resolution: "ast-types@npm:0.13.4"
+ dependencies:
+ tslib: "npm:^2.0.1"
+ checksum: 10c0/3a1a409764faa1471601a0ad01b3aa699292991aa9c8a30c7717002cabdf5d98008e7b53ae61f6e058f757fc6ba965e147967a93c13e62692c907d79cfb245f8
+ languageName: node
+ linkType: hard
+
+"async-function@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "async-function@npm:1.0.0"
+ checksum: 10c0/669a32c2cb7e45091330c680e92eaeb791bc1d4132d827591e499cd1f776ff5a873e77e5f92d0ce795a8d60f10761dec9ddfe7225a5de680f5d357f67b1aac73
+ languageName: node
+ linkType: hard
+
+"async-limiter@npm:~1.0.0":
+ version: 1.0.1
+ resolution: "async-limiter@npm:1.0.1"
+ checksum: 10c0/0693d378cfe86842a70d4c849595a0bb50dc44c11649640ca982fa90cbfc74e3cc4753b5a0847e51933f2e9c65ce8e05576e75e5e1fd963a086e673735b35969
+ languageName: node
+ linkType: hard
+
+"async-retry@npm:1.3.3":
+ version: 1.3.3
+ resolution: "async-retry@npm:1.3.3"
+ dependencies:
+ retry: "npm:0.13.1"
+ checksum: 10c0/cabced4fb46f8737b95cc88dc9c0ff42656c62dc83ce0650864e891b6c155a063af08d62c446269b51256f6fbcb69a6563b80e76d0ea4a5117b0c0377b6b19d8
+ languageName: node
+ linkType: hard
+
+"available-typed-arrays@npm:^1.0.7":
+ version: 1.0.7
+ resolution: "available-typed-arrays@npm:1.0.7"
+ dependencies:
+ possible-typed-array-names: "npm:^1.0.0"
+ checksum: 10c0/d07226ef4f87daa01bd0fe80f8f310982e345f372926da2e5296aecc25c41cab440916bbaa4c5e1034b453af3392f67df5961124e4b586df1e99793a1374bdb2
+ languageName: node
+ linkType: hard
+
+"babel-core@npm:^7.0.0-bridge.0":
+ version: 7.0.0-bridge.0
+ resolution: "babel-core@npm:7.0.0-bridge.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/f57576e30267be4607d163b7288031d332cf9200ea35efe9fb33c97f834e304376774c28c1f9d6928d6733fcde7041e4010f1248a0519e7730c590d4b07b9608
+ languageName: node
+ linkType: hard
+
+"babel-jest@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "babel-jest@npm:29.7.0"
+ dependencies:
+ "@jest/transform": "npm:^29.7.0"
+ "@types/babel__core": "npm:^7.1.14"
+ babel-plugin-istanbul: "npm:^6.1.1"
+ babel-preset-jest: "npm:^29.6.3"
+ chalk: "npm:^4.0.0"
+ graceful-fs: "npm:^4.2.9"
+ slash: "npm:^3.0.0"
+ peerDependencies:
+ "@babel/core": ^7.8.0
+ checksum: 10c0/2eda9c1391e51936ca573dd1aedfee07b14c59b33dbe16ef347873ddd777bcf6e2fc739681e9e9661ab54ef84a3109a03725be2ac32cd2124c07ea4401cbe8c1
+ languageName: node
+ linkType: hard
+
+"babel-plugin-istanbul@npm:^6.1.1":
+ version: 6.1.1
+ resolution: "babel-plugin-istanbul@npm:6.1.1"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.0.0"
+ "@istanbuljs/load-nyc-config": "npm:^1.0.0"
+ "@istanbuljs/schema": "npm:^0.1.2"
+ istanbul-lib-instrument: "npm:^5.0.4"
+ test-exclude: "npm:^6.0.0"
+ checksum: 10c0/1075657feb705e00fd9463b329921856d3775d9867c5054b449317d39153f8fbcebd3e02ebf00432824e647faff3683a9ca0a941325ef1afe9b3c4dd51b24beb
+ languageName: node
+ linkType: hard
+
+"babel-plugin-jest-hoist@npm:^29.6.3":
+ version: 29.6.3
+ resolution: "babel-plugin-jest-hoist@npm:29.6.3"
+ dependencies:
+ "@babel/template": "npm:^7.3.3"
+ "@babel/types": "npm:^7.3.3"
+ "@types/babel__core": "npm:^7.1.14"
+ "@types/babel__traverse": "npm:^7.0.6"
+ checksum: 10c0/7e6451caaf7dce33d010b8aafb970e62f1b0c0b57f4978c37b0d457bbcf0874d75a395a102daf0bae0bd14eafb9f6e9a165ee5e899c0a4f1f3bb2e07b304ed2e
+ languageName: node
+ linkType: hard
+
+"babel-plugin-polyfill-corejs2@npm:^0.4.14, babel-plugin-polyfill-corejs2@npm:^0.4.15":
+ version: 0.4.17
+ resolution: "babel-plugin-polyfill-corejs2@npm:0.4.17"
+ dependencies:
+ "@babel/compat-data": "npm:^7.28.6"
+ "@babel/helper-define-polyfill-provider": "npm:^0.6.8"
+ semver: "npm:^6.3.1"
+ peerDependencies:
+ "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
+ checksum: 10c0/1284960ea403c63b0dd598f338666c4b17d489aefee30b4da6a7313eff1d91edffb0ccf26341a6e5d94231684b74e016eade66b3921ea112f8b0e4980fa08a5c
+ languageName: node
+ linkType: hard
+
+"babel-plugin-polyfill-corejs3@npm:^0.13.0":
+ version: 0.13.0
+ resolution: "babel-plugin-polyfill-corejs3@npm:0.13.0"
+ dependencies:
+ "@babel/helper-define-polyfill-provider": "npm:^0.6.5"
+ core-js-compat: "npm:^3.43.0"
+ peerDependencies:
+ "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
+ checksum: 10c0/5d8e228da425edc040d8c868486fd01ba10b0440f841156a30d9f8986f330f723e2ee61553c180929519563ef5b64acce2caac36a5a847f095d708dda5d8206d
+ languageName: node
+ linkType: hard
+
+"babel-plugin-polyfill-corejs3@npm:^0.14.0":
+ version: 0.14.2
+ resolution: "babel-plugin-polyfill-corejs3@npm:0.14.2"
+ dependencies:
+ "@babel/helper-define-polyfill-provider": "npm:^0.6.8"
+ core-js-compat: "npm:^3.48.0"
+ peerDependencies:
+ "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
+ checksum: 10c0/32f70442f142d0f5607f4b57c121c573b106e09da8659c0f03108a85bf1d09ba5bdc89595a82b34ff76c19f1faf3d1c831b56166f03babf69c024f36da77c3bf
+ languageName: node
+ linkType: hard
+
+"babel-plugin-polyfill-regenerator@npm:^0.6.5, babel-plugin-polyfill-regenerator@npm:^0.6.6":
+ version: 0.6.8
+ resolution: "babel-plugin-polyfill-regenerator@npm:0.6.8"
+ dependencies:
+ "@babel/helper-define-polyfill-provider": "npm:^0.6.8"
+ peerDependencies:
+ "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
+ checksum: 10c0/7c8b2497c29fa880e0acdc8e7b93e29b81b154179b83beb0476eb2c4e7a78b6b42fc35c2554ca250c9bd6d39941eaf75416254b8592ce50979f9a12e1d51c049
+ languageName: node
+ linkType: hard
+
+"babel-plugin-syntax-hermes-parser@npm:^0.23.1":
+ version: 0.23.1
+ resolution: "babel-plugin-syntax-hermes-parser@npm:0.23.1"
+ dependencies:
+ hermes-parser: "npm:0.23.1"
+ checksum: 10c0/538ab28721836a6de004d63e3890b481b7ff3eeccf556943eb40619bf9363dc5239e3508881167f83d849458fe88d7696d49388e99e0df59543fdfb7681c87b3
+ languageName: node
+ linkType: hard
+
+"babel-plugin-syntax-hermes-parser@npm:^0.28.0":
+ version: 0.28.1
+ resolution: "babel-plugin-syntax-hermes-parser@npm:0.28.1"
+ dependencies:
+ hermes-parser: "npm:0.28.1"
+ checksum: 10c0/7a522b5f3f31701e4e70ddd7976946abe4b1bf8a041fd091f672411eb0f67a79253a671b934aa27bab305e0845933a4cdb9016fcea80b64c95e18cec8d08a154
+ languageName: node
+ linkType: hard
+
+"babel-plugin-transform-flow-enums@npm:^0.0.2":
+ version: 0.0.2
+ resolution: "babel-plugin-transform-flow-enums@npm:0.0.2"
+ dependencies:
+ "@babel/plugin-syntax-flow": "npm:^7.12.1"
+ checksum: 10c0/aa9d022d8d4be0e7c4f1ff7e5308fe7e0ff4d6f9099449913e3a11c1e81916623a8f36432da180a9aa3f53ea534dca4401fe33d6528f043f40357cfa790ee778
+ languageName: node
+ linkType: hard
+
+"babel-preset-current-node-syntax@npm:^1.0.0":
+ version: 1.2.0
+ resolution: "babel-preset-current-node-syntax@npm:1.2.0"
+ dependencies:
+ "@babel/plugin-syntax-async-generators": "npm:^7.8.4"
+ "@babel/plugin-syntax-bigint": "npm:^7.8.3"
+ "@babel/plugin-syntax-class-properties": "npm:^7.12.13"
+ "@babel/plugin-syntax-class-static-block": "npm:^7.14.5"
+ "@babel/plugin-syntax-import-attributes": "npm:^7.24.7"
+ "@babel/plugin-syntax-import-meta": "npm:^7.10.4"
+ "@babel/plugin-syntax-json-strings": "npm:^7.8.3"
+ "@babel/plugin-syntax-logical-assignment-operators": "npm:^7.10.4"
+ "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3"
+ "@babel/plugin-syntax-numeric-separator": "npm:^7.10.4"
+ "@babel/plugin-syntax-object-rest-spread": "npm:^7.8.3"
+ "@babel/plugin-syntax-optional-catch-binding": "npm:^7.8.3"
+ "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3"
+ "@babel/plugin-syntax-private-property-in-object": "npm:^7.14.5"
+ "@babel/plugin-syntax-top-level-await": "npm:^7.14.5"
+ peerDependencies:
+ "@babel/core": ^7.0.0 || ^8.0.0-0
+ checksum: 10c0/94a4f81cddf9b051045d08489e4fff7336292016301664c138cfa3d9ffe3fe2ba10a24ad6ae589fd95af1ac72ba0216e1653555c187e694d7b17be0c002bea10
+ languageName: node
+ linkType: hard
+
+"babel-preset-jest@npm:^29.6.3":
+ version: 29.6.3
+ resolution: "babel-preset-jest@npm:29.6.3"
+ dependencies:
+ babel-plugin-jest-hoist: "npm:^29.6.3"
+ babel-preset-current-node-syntax: "npm:^1.0.0"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/ec5fd0276b5630b05f0c14bb97cc3815c6b31600c683ebb51372e54dcb776cff790bdeeabd5b8d01ede375a040337ccbf6a3ccd68d3a34219125945e167ad943
+ languageName: node
+ linkType: hard
+
+"balanced-match@npm:^1.0.0":
+ version: 1.0.2
+ resolution: "balanced-match@npm:1.0.2"
+ checksum: 10c0/9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee
+ languageName: node
+ linkType: hard
+
+"balanced-match@npm:^4.0.2":
+ version: 4.0.4
+ resolution: "balanced-match@npm:4.0.4"
+ checksum: 10c0/07e86102a3eb2ee2a6a1a89164f29d0dbaebd28f2ca3f5ca786f36b8b23d9e417eb3be45a4acf754f837be5ac0a2317de90d3fcb7f4f4dc95720a1f36b26a17b
+ languageName: node
+ linkType: hard
+
+"base64-js@npm:^1.3.1, base64-js@npm:^1.5.1":
+ version: 1.5.1
+ resolution: "base64-js@npm:1.5.1"
+ checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf
+ languageName: node
+ linkType: hard
+
+"baseline-browser-mapping@npm:^2.10.12":
+ version: 2.10.21
+ resolution: "baseline-browser-mapping@npm:2.10.21"
+ bin:
+ baseline-browser-mapping: dist/cli.cjs
+ checksum: 10c0/065d90f98099dd0d7b6e1c284f7133d0eaebf571a7ee3e9e0740862dbd64cf040f4447404269bc8b1fd4015dead68c3a026e541a214050375df6bde20706ec8b
+ languageName: node
+ linkType: hard
+
+"basic-ftp@npm:^5.0.2":
+ version: 5.3.0
+ resolution: "basic-ftp@npm:5.3.0"
+ checksum: 10c0/307ebc0635d06e671729d348e45e6eaec5f926713f93de535b268e17ae675942cd6903a84196cece948b54e04b24591431be3df79b2824551a0d5ed150555fb2
+ languageName: node
+ linkType: hard
+
+"before-after-hook@npm:^2.2.0":
+ version: 2.2.3
+ resolution: "before-after-hook@npm:2.2.3"
+ checksum: 10c0/0488c4ae12df758ca9d49b3bb27b47fd559677965c52cae7b335784724fb8bf96c42b6e5ba7d7afcbc31facb0e294c3ef717cc41c5bc2f7bd9e76f8b90acd31c
+ languageName: node
+ linkType: hard
+
+"big-integer@npm:^1.6.44":
+ version: 1.6.52
+ resolution: "big-integer@npm:1.6.52"
+ checksum: 10c0/9604224b4c2ab3c43c075d92da15863077a9f59e5d4205f4e7e76acd0cd47e8d469ec5e5dba8d9b32aa233951893b29329ca56ac80c20ce094b4a647a66abae0
+ languageName: node
+ linkType: hard
+
+"bl@npm:^4.1.0":
+ version: 4.1.0
+ resolution: "bl@npm:4.1.0"
+ dependencies:
+ buffer: "npm:^5.5.0"
+ inherits: "npm:^2.0.4"
+ readable-stream: "npm:^3.4.0"
+ checksum: 10c0/02847e1d2cb089c9dc6958add42e3cdeaf07d13f575973963335ac0fdece563a50ac770ac4c8fa06492d2dd276f6cc3b7f08c7cd9c7a7ad0f8d388b2a28def5f
+ languageName: node
+ linkType: hard
+
+"bl@npm:^5.0.0":
+ version: 5.1.0
+ resolution: "bl@npm:5.1.0"
+ dependencies:
+ buffer: "npm:^6.0.3"
+ inherits: "npm:^2.0.4"
+ readable-stream: "npm:^3.4.0"
+ checksum: 10c0/528a9c3d7d6b87af98c46f10a887654d027c28c503c7f7de87440e643f0056d7a2319a967762b8ec18150c64799d2825a277147a752a0570a7407c0b705b0d01
+ languageName: node
+ linkType: hard
+
+"boxen@npm:^7.0.0":
+ version: 7.1.1
+ resolution: "boxen@npm:7.1.1"
+ dependencies:
+ ansi-align: "npm:^3.0.1"
+ camelcase: "npm:^7.0.1"
+ chalk: "npm:^5.2.0"
+ cli-boxes: "npm:^3.0.0"
+ string-width: "npm:^5.1.2"
+ type-fest: "npm:^2.13.0"
+ widest-line: "npm:^4.0.1"
+ wrap-ansi: "npm:^8.1.0"
+ checksum: 10c0/3a9891dc98ac40d582c9879e8165628258e2c70420c919e70fff0a53ccc7b42825e73cda6298199b2fbc1f41f5d5b93b492490ad2ae27623bed3897ddb4267f8
+ languageName: node
+ linkType: hard
+
+"bplist-parser@npm:^0.2.0":
+ version: 0.2.0
+ resolution: "bplist-parser@npm:0.2.0"
+ dependencies:
+ big-integer: "npm:^1.6.44"
+ checksum: 10c0/ce79c69e0f6efe506281e7c84e3712f7d12978991675b6e3a58a295b16f13ca81aa9b845c335614a545e0af728c8311b6aa3142af76ba1cb616af9bbac5c4a9f
+ languageName: node
+ linkType: hard
+
+"brace-expansion@npm:^1.1.7":
+ version: 1.1.14
+ resolution: "brace-expansion@npm:1.1.14"
+ dependencies:
+ balanced-match: "npm:^1.0.0"
+ concat-map: "npm:0.0.1"
+ checksum: 10c0/b6fdac832bc4e36a753658c9ed052c2e1a2be221763b002df25d1efbf7d21724334e726a6cd5eadc72a4b19ec3efb632d629cc003bc9c62f7af7a7915ffa4385
+ languageName: node
+ linkType: hard
+
+"brace-expansion@npm:^2.0.1":
+ version: 2.1.0
+ resolution: "brace-expansion@npm:2.1.0"
+ dependencies:
+ balanced-match: "npm:^1.0.0"
+ checksum: 10c0/439cedf3e23d7993b37919f1d6fdc653ec21a42437ec3e7460bea9ca8b17edf7a24a633273c31d61aa4335877cf29a443f1871814131c87997a1e6223e1f1502
+ languageName: node
+ linkType: hard
+
+"brace-expansion@npm:^5.0.2":
+ version: 5.0.9
+ resolution: "brace-expansion@npm:5.0.9"
+ dependencies:
+ balanced-match: "npm:^4.0.2"
+ checksum: 10c0/3dea38884a1c3c8b1c9c44a7402a0c76fca460f70cffb3127242b0b4cbf4472019e022ade021eec44838ff19f1dac2625dfd11dd459d7e1e055b0698a8d52fec
+ languageName: node
+ linkType: hard
+
+"braces@npm:^3.0.3":
+ version: 3.0.3
+ resolution: "braces@npm:3.0.3"
+ dependencies:
+ fill-range: "npm:^7.1.1"
+ checksum: 10c0/7c6dfd30c338d2997ba77500539227b9d1f85e388a5f43220865201e407e076783d0881f2d297b9f80951b4c957fcf0b51c1d2d24227631643c3f7c284b0aa04
+ languageName: node
+ linkType: hard
+
+"browserslist@npm:^4.20.4, browserslist@npm:^4.24.0, browserslist@npm:^4.28.1":
+ version: 4.28.2
+ resolution: "browserslist@npm:4.28.2"
+ dependencies:
+ baseline-browser-mapping: "npm:^2.10.12"
+ caniuse-lite: "npm:^1.0.30001782"
+ electron-to-chromium: "npm:^1.5.328"
+ node-releases: "npm:^2.0.36"
+ update-browserslist-db: "npm:^1.2.3"
+ bin:
+ browserslist: cli.js
+ checksum: 10c0/c0228b6330f785b7fa59d2d360124ec6d9322f96ed9f3ee1f873e33ecc9503a6f0ffc3b71191a28c4ff6e930b753b30043da1c33844a9548f3018d491f09ce60
+ languageName: node
+ linkType: hard
+
+"bser@npm:2.1.1":
+ version: 2.1.1
+ resolution: "bser@npm:2.1.1"
+ dependencies:
+ node-int64: "npm:^0.4.0"
+ checksum: 10c0/24d8dfb7b6d457d73f32744e678a60cc553e4ec0e9e1a01cf614b44d85c3c87e188d3cc78ef0442ce5032ee6818de20a0162ba1074725c0d08908f62ea979227
+ languageName: node
+ linkType: hard
+
+"buffer-from@npm:^1.0.0":
+ version: 1.1.2
+ resolution: "buffer-from@npm:1.1.2"
+ checksum: 10c0/124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34
+ languageName: node
+ linkType: hard
+
+"buffer@npm:^5.5.0":
+ version: 5.7.1
+ resolution: "buffer@npm:5.7.1"
+ dependencies:
+ base64-js: "npm:^1.3.1"
+ ieee754: "npm:^1.1.13"
+ checksum: 10c0/27cac81cff434ed2876058d72e7c4789d11ff1120ef32c9de48f59eab58179b66710c488987d295ae89a228f835fc66d088652dffeb8e3ba8659f80eb091d55e
+ languageName: node
+ linkType: hard
+
+"buffer@npm:^6.0.3":
+ version: 6.0.3
+ resolution: "buffer@npm:6.0.3"
+ dependencies:
+ base64-js: "npm:^1.3.1"
+ ieee754: "npm:^1.2.1"
+ checksum: 10c0/2a905fbbcde73cc5d8bd18d1caa23715d5f83a5935867c2329f0ac06104204ba7947be098fe1317fbd8830e26090ff8e764f08cd14fefc977bb248c3487bcbd0
+ languageName: node
+ linkType: hard
+
+"bundle-name@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "bundle-name@npm:3.0.0"
+ dependencies:
+ run-applescript: "npm:^5.0.0"
+ checksum: 10c0/57bc7f8b025d83961b04db2f1eff6a87f2363c2891f3542a4b82471ff8ebb5d484af48e9784fcdb28ef1d48bb01f03d891966dc3ef58758e46ea32d750ce40f8
+ languageName: node
+ linkType: hard
+
+"cacheable-lookup@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "cacheable-lookup@npm:7.0.0"
+ checksum: 10c0/63a9c144c5b45cb5549251e3ea774c04d63063b29e469f7584171d059d3a88f650f47869a974e2d07de62116463d742c287a81a625e791539d987115cb081635
+ languageName: node
+ linkType: hard
+
+"cacheable-request@npm:^10.2.8":
+ version: 10.2.14
+ resolution: "cacheable-request@npm:10.2.14"
+ dependencies:
+ "@types/http-cache-semantics": "npm:^4.0.2"
+ get-stream: "npm:^6.0.1"
+ http-cache-semantics: "npm:^4.1.1"
+ keyv: "npm:^4.5.3"
+ mimic-response: "npm:^4.0.0"
+ normalize-url: "npm:^8.0.0"
+ responselike: "npm:^3.0.0"
+ checksum: 10c0/41b6658db369f20c03128227ecd219ca7ac52a9d24fc0f499cc9aa5d40c097b48b73553504cebd137024d957c0ddb5b67cf3ac1439b136667f3586257763f88d
+ languageName: node
+ linkType: hard
+
+"call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "call-bind-apply-helpers@npm:1.0.2"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ function-bind: "npm:^1.1.2"
+ checksum: 10c0/47bd9901d57b857590431243fea704ff18078b16890a6b3e021e12d279bbf211d039155e27d7566b374d49ee1f8189344bac9833dec7a20cdec370506361c938
+ languageName: node
+ linkType: hard
+
+"call-bind@npm:^1.0.2, call-bind@npm:^1.0.7, call-bind@npm:^1.0.8, call-bind@npm:^1.0.9":
+ version: 1.0.9
+ resolution: "call-bind@npm:1.0.9"
+ dependencies:
+ call-bind-apply-helpers: "npm:^1.0.2"
+ es-define-property: "npm:^1.0.1"
+ get-intrinsic: "npm:^1.3.0"
+ set-function-length: "npm:^1.2.2"
+ checksum: 10c0/a6621f6da1444481919ce3b4983dff725691e0754d3507ae483ce56e54985f2da7d6f1df512c56dbf28660745cf1ca52553f1fc9aef5557f3ce353ef14fab714
+ languageName: node
+ linkType: hard
+
+"call-bound@npm:^1.0.2, call-bound@npm:^1.0.3, call-bound@npm:^1.0.4":
+ version: 1.0.4
+ resolution: "call-bound@npm:1.0.4"
+ dependencies:
+ call-bind-apply-helpers: "npm:^1.0.2"
+ get-intrinsic: "npm:^1.3.0"
+ checksum: 10c0/f4796a6a0941e71c766aea672f63b72bc61234c4f4964dc6d7606e3664c307e7d77845328a8f3359ce39ddb377fed67318f9ee203dea1d47e46165dcf2917644
+ languageName: node
+ linkType: hard
+
+"caller-callsite@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "caller-callsite@npm:2.0.0"
+ dependencies:
+ callsites: "npm:^2.0.0"
+ checksum: 10c0/a00ca91280e10ee2321de21dda6c168e427df7a63aeaca027ea45e3e466ac5e1a5054199f6547ba1d5a513d3b6b5933457266daaa47f8857fb532a343ee6b5e1
+ languageName: node
+ linkType: hard
+
+"caller-path@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "caller-path@npm:2.0.0"
+ dependencies:
+ caller-callsite: "npm:^2.0.0"
+ checksum: 10c0/029b5b2c557d831216305c3218e9ff30fa668be31d58dd08088f74c8eabc8362c303e0908b3a93abb25ba10e3a5bfc9cff5eb7fab6ab9cf820e3b160ccb67581
+ languageName: node
+ linkType: hard
+
+"callsites@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "callsites@npm:2.0.0"
+ checksum: 10c0/13bff4fee946e6020b37e76284e95e24aa239c9e34ac4f3451e4c5330fca6f2f962e1d1ab69e4da7940e1fce135107a2b2b98c01d62ea33144350fc89dc5494e
+ languageName: node
+ linkType: hard
+
+"callsites@npm:^3.0.0":
+ version: 3.1.0
+ resolution: "callsites@npm:3.1.0"
+ checksum: 10c0/fff92277400eb06c3079f9e74f3af120db9f8ea03bad0e84d9aede54bbe2d44a56cccb5f6cf12211f93f52306df87077ecec5b712794c5a9b5dac6d615a3f301
+ languageName: node
+ linkType: hard
+
+"camelcase-keys@npm:^6.2.2":
+ version: 6.2.2
+ resolution: "camelcase-keys@npm:6.2.2"
+ dependencies:
+ camelcase: "npm:^5.3.1"
+ map-obj: "npm:^4.0.0"
+ quick-lru: "npm:^4.0.1"
+ checksum: 10c0/bf1a28348c0f285c6c6f68fb98a9d088d3c0269fed0cdff3ea680d5a42df8a067b4de374e7a33e619eb9d5266a448fe66c2dd1f8e0c9209ebc348632882a3526
+ languageName: node
+ linkType: hard
+
+"camelcase@npm:^5.3.1":
+ version: 5.3.1
+ resolution: "camelcase@npm:5.3.1"
+ checksum: 10c0/92ff9b443bfe8abb15f2b1513ca182d16126359ad4f955ebc83dc4ddcc4ef3fdd2c078bc223f2673dc223488e75c99b16cc4d056624374b799e6a1555cf61b23
+ languageName: node
+ linkType: hard
+
+"camelcase@npm:^6.2.0":
+ version: 6.3.0
+ resolution: "camelcase@npm:6.3.0"
+ checksum: 10c0/0d701658219bd3116d12da3eab31acddb3f9440790c0792e0d398f0a520a6a4058018e546862b6fba89d7ae990efaeb97da71e1913e9ebf5a8b5621a3d55c710
+ languageName: node
+ linkType: hard
+
+"camelcase@npm:^7.0.1":
+ version: 7.0.1
+ resolution: "camelcase@npm:7.0.1"
+ checksum: 10c0/3adfc9a0e96d51b3a2f4efe90a84dad3e206aaa81dfc664f1bd568270e1bf3b010aad31f01db16345b4ffe1910e16ab411c7273a19a859addd1b98ef7cf4cfbd
+ languageName: node
+ linkType: hard
+
+"caniuse-lite@npm:^1.0.30001782":
+ version: 1.0.30001790
+ resolution: "caniuse-lite@npm:1.0.30001790"
+ checksum: 10c0/eec0adc1dcb35d51e57bcfa0657493cb57ef43f0ceb03c1edcfee34d43e7a938e6beed2781118c7a5ee99d4f71d443977f08ca5a549005cf89260733af9ad3f8
+ languageName: node
+ linkType: hard
+
+"chalk@npm:5.2.0":
+ version: 5.2.0
+ resolution: "chalk@npm:5.2.0"
+ checksum: 10c0/8a519b35c239f96e041b7f1ed8fdd79d3ca2332a8366cb957378b8a1b8a4cdfb740d19628e8bf74654d4c0917aa10cf39c20752e177a1304eac29a1168a740e9
+ languageName: node
+ linkType: hard
+
+"chalk@npm:^4.0.0, chalk@npm:^4.1.0, chalk@npm:^4.1.2":
+ version: 4.1.2
+ resolution: "chalk@npm:4.1.2"
+ dependencies:
+ ansi-styles: "npm:^4.1.0"
+ supports-color: "npm:^7.1.0"
+ checksum: 10c0/4a3fef5cc34975c898ffe77141450f679721df9dde00f6c304353fa9c8b571929123b26a0e4617bde5018977eb655b31970c297b91b63ee83bb82aeb04666880
+ languageName: node
+ linkType: hard
+
+"chalk@npm:^5.0.0, chalk@npm:^5.0.1, chalk@npm:^5.2.0":
+ version: 5.6.2
+ resolution: "chalk@npm:5.6.2"
+ checksum: 10c0/99a4b0f0e7991796b1e7e3f52dceb9137cae2a9dfc8fc0784a550dc4c558e15ab32ed70b14b21b52beb2679b4892b41a0aa44249bcb996f01e125d58477c6976
+ languageName: node
+ linkType: hard
+
+"char-regex@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "char-regex@npm:1.0.2"
+ checksum: 10c0/57a09a86371331e0be35d9083ba429e86c4f4648ecbe27455dbfb343037c16ee6fdc7f6b61f433a57cc5ded5561d71c56a150e018f40c2ffb7bc93a26dae341e
+ languageName: node
+ linkType: hard
+
+"chardet@npm:^0.7.0":
+ version: 0.7.0
+ resolution: "chardet@npm:0.7.0"
+ checksum: 10c0/96e4731b9ec8050cbb56ab684e8c48d6c33f7826b755802d14e3ebfdc51c57afeece3ea39bc6b09acc359e4363525388b915e16640c1378053820f5e70d0f27d
+ languageName: node
+ linkType: hard
+
+"chownr@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "chownr@npm:3.0.0"
+ checksum: 10c0/43925b87700f7e3893296c8e9c56cc58f926411cce3a6e5898136daaf08f08b9a8eb76d37d3267e707d0dcc17aed2e2ebdf5848c0c3ce95cf910a919935c1b10
+ languageName: node
+ linkType: hard
+
+"chrome-launcher@npm:^0.15.2":
+ version: 0.15.2
+ resolution: "chrome-launcher@npm:0.15.2"
+ dependencies:
+ "@types/node": "npm:*"
+ escape-string-regexp: "npm:^4.0.0"
+ is-wsl: "npm:^2.2.0"
+ lighthouse-logger: "npm:^1.0.0"
+ bin:
+ print-chrome-path: bin/print-chrome-path.js
+ checksum: 10c0/fc01abc19af753bb089744362c0de48707f32ea15779407b06fb569e029a6b1fbaa78107165539d768915cf54b5c38594e73d95563c34127873e3826fb43c636
+ languageName: node
+ linkType: hard
+
+"chromium-edge-launcher@npm:^0.2.0":
+ version: 0.2.0
+ resolution: "chromium-edge-launcher@npm:0.2.0"
+ dependencies:
+ "@types/node": "npm:*"
+ escape-string-regexp: "npm:^4.0.0"
+ is-wsl: "npm:^2.2.0"
+ lighthouse-logger: "npm:^1.0.0"
+ mkdirp: "npm:^1.0.4"
+ rimraf: "npm:^3.0.2"
+ checksum: 10c0/880972816dd9b95c0eb77d1f707569667a8cce7cc29fe9c8d199c47fdfbe4971e9da3e5a29f61c4ecec29437ac7cebbbb5afc30bec96306579d1121e7340606a
+ languageName: node
+ linkType: hard
+
+"ci-info@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "ci-info@npm:2.0.0"
+ checksum: 10c0/8c5fa3830a2bcee2b53c2e5018226f0141db9ec9f7b1e27a5c57db5512332cde8a0beb769bcbaf0d8775a78afbf2bb841928feca4ea6219638a5b088f9884b46
+ languageName: node
+ linkType: hard
+
+"ci-info@npm:^3.2.0":
+ version: 3.9.0
+ resolution: "ci-info@npm:3.9.0"
+ checksum: 10c0/6f0109e36e111684291d46123d491bc4e7b7a1934c3a20dea28cba89f1d4a03acd892f5f6a81ed3855c38647e285a150e3c9ba062e38943bef57fee6c1554c3a
+ languageName: node
+ linkType: hard
+
+"cjs-module-lexer@npm:^1.0.0":
+ version: 1.4.3
+ resolution: "cjs-module-lexer@npm:1.4.3"
+ checksum: 10c0/076b3af85adc4d65dbdab1b5b240fe5b45d44fcf0ef9d429044dd94d19be5589376805c44fb2d4b3e684e5fe6a9b7cf3e426476a6507c45283c5fc6ff95240be
+ languageName: node
+ linkType: hard
+
+"clean-stack@npm:^2.0.0":
+ version: 2.2.0
+ resolution: "clean-stack@npm:2.2.0"
+ checksum: 10c0/1f90262d5f6230a17e27d0c190b09d47ebe7efdd76a03b5a1127863f7b3c9aec4c3e6c8bb3a7bbf81d553d56a1fd35728f5a8ef4c63f867ac8d690109742a8c1
+ languageName: node
+ linkType: hard
+
+"cli-boxes@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "cli-boxes@npm:3.0.0"
+ checksum: 10c0/4db3e8fbfaf1aac4fb3a6cbe5a2d3fa048bee741a45371b906439b9ffc821c6e626b0f108bdcd3ddf126a4a319409aedcf39a0730573ff050fdd7b6731e99fb9
+ languageName: node
+ linkType: hard
+
+"cli-cursor@npm:^3.1.0":
+ version: 3.1.0
+ resolution: "cli-cursor@npm:3.1.0"
+ dependencies:
+ restore-cursor: "npm:^3.1.0"
+ checksum: 10c0/92a2f98ff9037d09be3dfe1f0d749664797fb674bf388375a2207a1203b69d41847abf16434203e0089212479e47a358b13a0222ab9fccfe8e2644a7ccebd111
+ languageName: node
+ linkType: hard
+
+"cli-cursor@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "cli-cursor@npm:4.0.0"
+ dependencies:
+ restore-cursor: "npm:^4.0.0"
+ checksum: 10c0/e776e8c3c6727300d0539b0d25160b2bb56aed1a63942753ba1826b012f337a6f4b7ace3548402e4f2f13b5e16bfd751be672c44b203205e7eca8be94afec42c
+ languageName: node
+ linkType: hard
+
+"cli-spinners@npm:^2.5.0, cli-spinners@npm:^2.6.1":
+ version: 2.9.2
+ resolution: "cli-spinners@npm:2.9.2"
+ checksum: 10c0/907a1c227ddf0d7a101e7ab8b300affc742ead4b4ebe920a5bf1bc6d45dce2958fcd195eb28fa25275062fe6fa9b109b93b63bc8033396ed3bcb50297008b3a3
+ languageName: node
+ linkType: hard
+
+"cli-width@npm:^4.0.0":
+ version: 4.1.0
+ resolution: "cli-width@npm:4.1.0"
+ checksum: 10c0/1fbd56413578f6117abcaf858903ba1f4ad78370a4032f916745fa2c7e390183a9d9029cf837df320b0fdce8137668e522f60a30a5f3d6529ff3872d265a955f
+ languageName: node
+ linkType: hard
+
+"cliui@npm:^7.0.2":
+ version: 7.0.4
+ resolution: "cliui@npm:7.0.4"
+ dependencies:
+ string-width: "npm:^4.2.0"
+ strip-ansi: "npm:^6.0.0"
+ wrap-ansi: "npm:^7.0.0"
+ checksum: 10c0/6035f5daf7383470cef82b3d3db00bec70afb3423538c50394386ffbbab135e26c3689c41791f911fa71b62d13d3863c712fdd70f0fbdffd938a1e6fd09aac00
+ languageName: node
+ linkType: hard
+
+"cliui@npm:^8.0.1":
+ version: 8.0.1
+ resolution: "cliui@npm:8.0.1"
+ dependencies:
+ string-width: "npm:^4.2.0"
+ strip-ansi: "npm:^6.0.1"
+ wrap-ansi: "npm:^7.0.0"
+ checksum: 10c0/4bda0f09c340cbb6dfdc1ed508b3ca080f12992c18d68c6be4d9cf51756033d5266e61ec57529e610dacbf4da1c634423b0c1b11037709cc6b09045cbd815df5
+ languageName: node
+ linkType: hard
+
+"clone-deep@npm:^4.0.1":
+ version: 4.0.1
+ resolution: "clone-deep@npm:4.0.1"
+ dependencies:
+ is-plain-object: "npm:^2.0.4"
+ kind-of: "npm:^6.0.2"
+ shallow-clone: "npm:^3.0.0"
+ checksum: 10c0/637753615aa24adf0f2d505947a1bb75e63964309034a1cf56ba4b1f30af155201edd38d26ffe26911adaae267a3c138b344a4947d39f5fc1b6d6108125aa758
+ languageName: node
+ linkType: hard
+
+"clone@npm:^1.0.2":
+ version: 1.0.4
+ resolution: "clone@npm:1.0.4"
+ checksum: 10c0/2176952b3649293473999a95d7bebfc9dc96410f6cbd3d2595cf12fd401f63a4bf41a7adbfd3ab2ff09ed60cb9870c58c6acdd18b87767366fabfc163700f13b
+ languageName: node
+ linkType: hard
+
+"co@npm:^4.6.0":
+ version: 4.6.0
+ resolution: "co@npm:4.6.0"
+ checksum: 10c0/c0e85ea0ca8bf0a50cbdca82efc5af0301240ca88ebe3644a6ffb8ffe911f34d40f8fbcf8f1d52c5ddd66706abd4d3bfcd64259f1e8e2371d4f47573b0dc8c28
+ languageName: node
+ linkType: hard
+
+"collect-v8-coverage@npm:^1.0.0":
+ version: 1.0.3
+ resolution: "collect-v8-coverage@npm:1.0.3"
+ checksum: 10c0/bc62ba251bcce5e3354a8f88fa6442bee56e3e612fec08d4dfcf66179b41ea0bf544b0f78c4ebc0f8050871220af95bb5c5578a6aef346feea155640582f09dc
+ languageName: node
+ linkType: hard
+
+"color-convert@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "color-convert@npm:2.0.1"
+ dependencies:
+ color-name: "npm:~1.1.4"
+ checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7
+ languageName: node
+ linkType: hard
+
+"color-name@npm:~1.1.4":
+ version: 1.1.4
+ resolution: "color-name@npm:1.1.4"
+ checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95
+ languageName: node
+ linkType: hard
+
+"commander@npm:^12.0.0":
+ version: 12.1.0
+ resolution: "commander@npm:12.1.0"
+ checksum: 10c0/6e1996680c083b3b897bfc1cfe1c58dfbcd9842fd43e1aaf8a795fbc237f65efcc860a3ef457b318e73f29a4f4a28f6403c3d653d021d960e4632dd45bde54a9
+ languageName: node
+ linkType: hard
+
+"commander@npm:^2.20.0":
+ version: 2.20.3
+ resolution: "commander@npm:2.20.3"
+ checksum: 10c0/74c781a5248c2402a0a3e966a0a2bba3c054aad144f5c023364be83265e796b20565aa9feff624132ff629aa64e16999fa40a743c10c12f7c61e96a794b99288
+ languageName: node
+ linkType: hard
+
+"commitlint@npm:^17.0.2":
+ version: 17.8.1
+ resolution: "commitlint@npm:17.8.1"
+ dependencies:
+ "@commitlint/cli": "npm:^17.8.1"
+ "@commitlint/types": "npm:^17.8.1"
+ bin:
+ commitlint: cli.js
+ checksum: 10c0/1ecdc5046a2619a5d0b84a9015f61670c537854ba190982f31035e6f71d3d496a4ad0981c577b72d956b0fdace0f2e9f1652909dd8260d77434cf1a4905af233
+ languageName: node
+ linkType: hard
+
+"commondir@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "commondir@npm:1.0.1"
+ checksum: 10c0/33a124960e471c25ee19280c9ce31ccc19574b566dc514fe4f4ca4c34fa8b0b57cf437671f5de380e11353ea9426213fca17687dd2ef03134fea2dbc53809fd6
+ languageName: node
+ linkType: hard
+
+"compare-func@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "compare-func@npm:2.0.0"
+ dependencies:
+ array-ify: "npm:^1.0.0"
+ dot-prop: "npm:^5.1.0"
+ checksum: 10c0/78bd4dd4ed311a79bd264c9e13c36ed564cde657f1390e699e0f04b8eee1fc06ffb8698ce2dfb5fbe7342d509579c82d4e248f08915b708f77f7b72234086cc3
+ languageName: node
+ linkType: hard
+
+"concat-map@npm:0.0.1":
+ version: 0.0.1
+ resolution: "concat-map@npm:0.0.1"
+ checksum: 10c0/c996b1cfdf95b6c90fee4dae37e332c8b6eb7d106430c17d538034c0ad9a1630cb194d2ab37293b1bdd4d779494beee7786d586a50bd9376fd6f7bcc2bd4c98f
+ languageName: node
+ linkType: hard
+
+"concat-stream@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "concat-stream@npm:2.0.0"
+ dependencies:
+ buffer-from: "npm:^1.0.0"
+ inherits: "npm:^2.0.3"
+ readable-stream: "npm:^3.0.2"
+ typedarray: "npm:^0.0.6"
+ checksum: 10c0/29565dd9198fe1d8cf57f6cc71527dbc6ad67e12e4ac9401feb389c53042b2dceedf47034cbe702dfc4fd8df3ae7e6bfeeebe732cc4fa2674e484c13f04c219a
+ languageName: node
+ linkType: hard
+
+"config-chain@npm:^1.1.11":
+ version: 1.1.13
+ resolution: "config-chain@npm:1.1.13"
+ dependencies:
+ ini: "npm:^1.3.4"
+ proto-list: "npm:~1.2.1"
+ checksum: 10c0/39d1df18739d7088736cc75695e98d7087aea43646351b028dfabd5508d79cf6ef4c5bcd90471f52cd87ae470d1c5490c0a8c1a292fbe6ee9ff688061ea0963e
+ languageName: node
+ linkType: hard
+
+"configstore@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "configstore@npm:6.0.0"
+ dependencies:
+ dot-prop: "npm:^6.0.1"
+ graceful-fs: "npm:^4.2.6"
+ unique-string: "npm:^3.0.0"
+ write-file-atomic: "npm:^3.0.3"
+ xdg-basedir: "npm:^5.0.1"
+ checksum: 10c0/6681a96038ab3e0397cbdf55e6e1624ac3dfa3afe955e219f683df060188a418bda043c9114a59a337e7aec9562b0a0c838ed7db24289e6d0c266bc8313b9580
+ languageName: node
+ linkType: hard
+
+"connect@npm:^3.6.5":
+ version: 3.7.0
+ resolution: "connect@npm:3.7.0"
+ dependencies:
+ debug: "npm:2.6.9"
+ finalhandler: "npm:1.1.2"
+ parseurl: "npm:~1.3.3"
+ utils-merge: "npm:1.0.1"
+ checksum: 10c0/f120c6116bb16a0a7d2703c0b4a0cd7ed787dc5ec91978097bf62aa967289020a9f41a9cd3c3276a7b92aaa36f382d2cd35fed7138fd466a55c8e9fdbed11ca8
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-angular@npm:^5.0.12":
+ version: 5.0.13
+ resolution: "conventional-changelog-angular@npm:5.0.13"
+ dependencies:
+ compare-func: "npm:^2.0.0"
+ q: "npm:^1.5.1"
+ checksum: 10c0/bca711b835fe01d75e3500b738f6525c91a12096218e917e9fd81bf9accf157f904fee16f88c523fd5462fb2a7cb1d060eb79e9bc9a3ccb04491f0c383b43231
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-angular@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "conventional-changelog-angular@npm:6.0.0"
+ dependencies:
+ compare-func: "npm:^2.0.0"
+ checksum: 10c0/a661ff7b79d4b829ccf8f424ef1bb210e777c1152a1ba5b2ba0a8639529c315755b82a6f84684f1b552c4e8ed6696bfe57317c5f7b868274e9a72b2bf13081ba
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-atom@npm:^2.0.8":
+ version: 2.0.8
+ resolution: "conventional-changelog-atom@npm:2.0.8"
+ dependencies:
+ q: "npm:^1.5.1"
+ checksum: 10c0/1c7e971e8ba58564397c2dfc9a7522f46bad315844ae782db66e27b2d584f22c21a757a429400657c2eef915690e8fd04bddfc3f8e9504d1fadccd8d0758217b
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-codemirror@npm:^2.0.8":
+ version: 2.0.8
+ resolution: "conventional-changelog-codemirror@npm:2.0.8"
+ dependencies:
+ q: "npm:^1.5.1"
+ checksum: 10c0/467c8c0daec0424acad6b30aa8897ea5e07c327352d3daae50f3a5427584bcb47d5ac5a3167eb7aeb818ebb856e2e81b19cab9a256fe6f21ad96e4a751599325
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-conventionalcommits@npm:^4.5.0":
+ version: 4.6.3
+ resolution: "conventional-changelog-conventionalcommits@npm:4.6.3"
+ dependencies:
+ compare-func: "npm:^2.0.0"
+ lodash: "npm:^4.17.15"
+ q: "npm:^1.5.1"
+ checksum: 10c0/f3b5e6132ec03dad4aa4a2b5ac47ee0e2ae8be6d0fa53a131c722412ce7c02a742c190790f15b5ab4983a31ce90b7066ce1f3f3d5cc4253aa3484ee414259bd2
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-conventionalcommits@npm:^6.1.0":
+ version: 6.1.0
+ resolution: "conventional-changelog-conventionalcommits@npm:6.1.0"
+ dependencies:
+ compare-func: "npm:^2.0.0"
+ checksum: 10c0/b313f5c0160d109f58d976566e1331ede3a25ab19fbf43f86763b280659195de00a68551f7f3930bf1cbf39a5e707d94f2a25b79996e59043fa9ee0bed68a79f
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-core@npm:^4.2.1":
+ version: 4.2.4
+ resolution: "conventional-changelog-core@npm:4.2.4"
+ dependencies:
+ add-stream: "npm:^1.0.0"
+ conventional-changelog-writer: "npm:^5.0.0"
+ conventional-commits-parser: "npm:^3.2.0"
+ dateformat: "npm:^3.0.0"
+ get-pkg-repo: "npm:^4.0.0"
+ git-raw-commits: "npm:^2.0.8"
+ git-remote-origin-url: "npm:^2.0.0"
+ git-semver-tags: "npm:^4.1.1"
+ lodash: "npm:^4.17.15"
+ normalize-package-data: "npm:^3.0.0"
+ q: "npm:^1.5.1"
+ read-pkg: "npm:^3.0.0"
+ read-pkg-up: "npm:^3.0.0"
+ through2: "npm:^4.0.0"
+ checksum: 10c0/4c9f30350250298d9bbb56988b3093ec7de593499a796609c5877115533362815434ff6df3493649e20b1b40399fef3d42032f39e8279bb8df192b89e6e32e69
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-ember@npm:^2.0.9":
+ version: 2.0.9
+ resolution: "conventional-changelog-ember@npm:2.0.9"
+ dependencies:
+ q: "npm:^1.5.1"
+ checksum: 10c0/bc37a1ec320b56f9831ec6a156d77444743944cdc06ff23b1175a3a23063b907b31fad402566a281b722da1bc9fd687db993cc8dbe9a9baf6e38af24541ccfbc
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-eslint@npm:^3.0.9":
+ version: 3.0.9
+ resolution: "conventional-changelog-eslint@npm:3.0.9"
+ dependencies:
+ q: "npm:^1.5.1"
+ checksum: 10c0/340b3be510e6713e37f641f0efcb2d8d2bc0b2c1bc38e7c1e2107f69432606290661d43cbc5971b418dd87cd92c2acb86af857264643a607cd8f29887e28683d
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-express@npm:^2.0.6":
+ version: 2.0.6
+ resolution: "conventional-changelog-express@npm:2.0.6"
+ dependencies:
+ q: "npm:^1.5.1"
+ checksum: 10c0/11a02868847d7d1c585bd38cdd7e39636aefde3ef83138044d859d31c23afc1a82a3cab26c8b8aaae2f536b457b011232325c3ed3f2d6a9ec564522dae265ae2
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-jquery@npm:^3.0.11":
+ version: 3.0.11
+ resolution: "conventional-changelog-jquery@npm:3.0.11"
+ dependencies:
+ q: "npm:^1.5.1"
+ checksum: 10c0/5662ff1bee271f6f7f2ca893b84942ec01e4a48299701b3323383dde3e461301c65f248dbcfa8219742258e96b1547ba5f21e66f4785fbc39cbe3074d46d71a4
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-jshint@npm:^2.0.9":
+ version: 2.0.9
+ resolution: "conventional-changelog-jshint@npm:2.0.9"
+ dependencies:
+ compare-func: "npm:^2.0.0"
+ q: "npm:^1.5.1"
+ checksum: 10c0/3048c3a02b173836f5c2f9c326bac7e80386e7591b9734d4f3a91e7dfe87329fde03414c62fdebe718a82f29e61b1122343186180e7173a47513487b3cfb463d
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-preset-loader@npm:^2.3.4":
+ version: 2.3.4
+ resolution: "conventional-changelog-preset-loader@npm:2.3.4"
+ checksum: 10c0/a978bcd5fc2eb12b56bc03ec59705af32e521fd27b98a209a26767c2078d423e7d8e30c09d45547371631790f0387453434c73c4541521a7473dce14d5360c7d
+ languageName: node
+ linkType: hard
+
+"conventional-changelog-writer@npm:^5.0.0":
+ version: 5.0.1
+ resolution: "conventional-changelog-writer@npm:5.0.1"
+ dependencies:
+ conventional-commits-filter: "npm:^2.0.7"
+ dateformat: "npm:^3.0.0"
+ handlebars: "npm:^4.7.7"
+ json-stringify-safe: "npm:^5.0.1"
+ lodash: "npm:^4.17.15"
+ meow: "npm:^8.0.0"
+ semver: "npm:^6.0.0"
+ split: "npm:^1.0.0"
+ through2: "npm:^4.0.0"
+ bin:
+ conventional-changelog-writer: cli.js
+ checksum: 10c0/268b56a3e4db07ad24da7134788c889ecd024cf2e7c0bfe8ca76f83e5db79f057538c45500b052a77b7933c4d0f47e2e807c6e756cbd5ad9db365744c9ce0e7f
+ languageName: node
+ linkType: hard
+
+"conventional-changelog@npm:^3.1.25":
+ version: 3.1.25
+ resolution: "conventional-changelog@npm:3.1.25"
+ dependencies:
+ conventional-changelog-angular: "npm:^5.0.12"
+ conventional-changelog-atom: "npm:^2.0.8"
+ conventional-changelog-codemirror: "npm:^2.0.8"
+ conventional-changelog-conventionalcommits: "npm:^4.5.0"
+ conventional-changelog-core: "npm:^4.2.1"
+ conventional-changelog-ember: "npm:^2.0.9"
+ conventional-changelog-eslint: "npm:^3.0.9"
+ conventional-changelog-express: "npm:^2.0.6"
+ conventional-changelog-jquery: "npm:^3.0.11"
+ conventional-changelog-jshint: "npm:^2.0.9"
+ conventional-changelog-preset-loader: "npm:^2.3.4"
+ checksum: 10c0/8065d5d742a400ab6d73ea5a42af746c3ec51e081e5ea542b00ebb220f904828002a04ae5841d5588a242773f8112f28bc353bf700fb0b2bda182fac6505c7a7
+ languageName: node
+ linkType: hard
+
+"conventional-commits-filter@npm:^2.0.7":
+ version: 2.0.7
+ resolution: "conventional-commits-filter@npm:2.0.7"
+ dependencies:
+ lodash.ismatch: "npm:^4.4.0"
+ modify-values: "npm:^1.0.0"
+ checksum: 10c0/df06fb29285b473614f5094e983d26fcc14cd0f64b2cbb2f65493fc8bd47c077c2310791d26f4b2b719e9585aaade95370e73230bff6647163164a18b9dfaa07
+ languageName: node
+ linkType: hard
+
+"conventional-commits-parser@npm:^3.2.0":
+ version: 3.2.4
+ resolution: "conventional-commits-parser@npm:3.2.4"
+ dependencies:
+ JSONStream: "npm:^1.0.4"
+ is-text-path: "npm:^1.0.1"
+ lodash: "npm:^4.17.15"
+ meow: "npm:^8.0.0"
+ split2: "npm:^3.0.0"
+ through2: "npm:^4.0.0"
+ bin:
+ conventional-commits-parser: cli.js
+ checksum: 10c0/122d7d7f991a04c8e3f703c0e4e9a25b2ecb20906f497e4486cb5c2acd9c68f6d9af745f7e79cb407538f50e840b33399274ac427b20971b98b335d1b66d3d17
+ languageName: node
+ linkType: hard
+
+"conventional-commits-parser@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "conventional-commits-parser@npm:4.0.0"
+ dependencies:
+ JSONStream: "npm:^1.3.5"
+ is-text-path: "npm:^1.0.1"
+ meow: "npm:^8.1.2"
+ split2: "npm:^3.2.2"
+ bin:
+ conventional-commits-parser: cli.js
+ checksum: 10c0/12e390cc80ad8a825c5775a329b95e11cf47a6df7b8a3875d375e28b8cb27c4f32955842ea73e4e357cff9757a6be99fdffe4fda87a23e9d8e73f983425537a0
+ languageName: node
+ linkType: hard
+
+"conventional-recommended-bump@npm:^6.1.0":
+ version: 6.1.0
+ resolution: "conventional-recommended-bump@npm:6.1.0"
+ dependencies:
+ concat-stream: "npm:^2.0.0"
+ conventional-changelog-preset-loader: "npm:^2.3.4"
+ conventional-commits-filter: "npm:^2.0.7"
+ conventional-commits-parser: "npm:^3.2.0"
+ git-raw-commits: "npm:^2.0.8"
+ git-semver-tags: "npm:^4.1.1"
+ meow: "npm:^8.0.0"
+ q: "npm:^1.5.1"
+ bin:
+ conventional-recommended-bump: cli.js
+ checksum: 10c0/649e6230be7e96e057a542a2695710aeaee356297d307691b3398e0f18d596b4a5b3ba56307755e779d8687a13b2466844300c649eb23f44fe5f1db9f923f3f4
+ languageName: node
+ linkType: hard
+
+"convert-source-map@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "convert-source-map@npm:2.0.0"
+ checksum: 10c0/8f2f7a27a1a011cc6cc88cc4da2d7d0cfa5ee0369508baae3d98c260bb3ac520691464e5bbe4ae7cdf09860c1d69ecc6f70c63c6e7c7f7e3f18ec08484dc7d9b
+ languageName: node
+ linkType: hard
+
+"core-js-compat@npm:^3.43.0, core-js-compat@npm:^3.48.0":
+ version: 3.49.0
+ resolution: "core-js-compat@npm:3.49.0"
+ dependencies:
+ browserslist: "npm:^4.28.1"
+ checksum: 10c0/546e64b7ce45f724825bc13c1347f35c0459a6e71c0dcccff3ec21fbff463f5b0b97fc1220e6d90302153863489301793276fe2bf96f46001ff555ead4140308
+ languageName: node
+ linkType: hard
+
+"core-util-is@npm:~1.0.0":
+ version: 1.0.3
+ resolution: "core-util-is@npm:1.0.3"
+ checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9
+ languageName: node
+ linkType: hard
+
+"cosmiconfig-typescript-loader@npm:^4.0.0":
+ version: 4.4.0
+ resolution: "cosmiconfig-typescript-loader@npm:4.4.0"
+ peerDependencies:
+ "@types/node": "*"
+ cosmiconfig: ">=7"
+ ts-node: ">=10"
+ typescript: ">=4"
+ checksum: 10c0/a204eb354943f84ab0434d108fdf593db84c477f107f3ccb586e2d659c1d87f03071d8983c96d4ce2a59cc524ec845697f0432876339e4c28bde84b665cd92a6
+ languageName: node
+ linkType: hard
+
+"cosmiconfig@npm:8.1.3":
+ version: 8.1.3
+ resolution: "cosmiconfig@npm:8.1.3"
+ dependencies:
+ import-fresh: "npm:^3.2.1"
+ js-yaml: "npm:^4.1.0"
+ parse-json: "npm:^5.0.0"
+ path-type: "npm:^4.0.0"
+ checksum: 10c0/80144be230b89857e7c4cafd59ba8feb3f5f7e6dae90faa324629fdecf9a6fc3f5b4106c3623f69a1a3d77cb11ef90e5ab65a67f21d73ffda3d76b18f8e4e6c2
+ languageName: node
+ linkType: hard
+
+"cosmiconfig@npm:^5.0.5":
+ version: 5.2.1
+ resolution: "cosmiconfig@npm:5.2.1"
+ dependencies:
+ import-fresh: "npm:^2.0.0"
+ is-directory: "npm:^0.3.1"
+ js-yaml: "npm:^3.13.1"
+ parse-json: "npm:^4.0.0"
+ checksum: 10c0/ae9ba309cdbb42d0c9d63dad5c1dfa1c56bb8f818cb8633eea14fd2dbdc9f33393b77658ba96fdabda497bc943afed8c3371d1222afe613c518ba676fa624645
+ languageName: node
+ linkType: hard
+
+"cosmiconfig@npm:^8.0.0":
+ version: 8.3.6
+ resolution: "cosmiconfig@npm:8.3.6"
+ dependencies:
+ import-fresh: "npm:^3.3.0"
+ js-yaml: "npm:^4.1.0"
+ parse-json: "npm:^5.2.0"
+ path-type: "npm:^4.0.0"
+ peerDependencies:
+ typescript: ">=4.9.5"
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ checksum: 10c0/0382a9ed13208f8bfc22ca2f62b364855207dffdb73dc26e150ade78c3093f1cf56172df2dd460c8caf2afa91c0ed4ec8a88c62f8f9cd1cf423d26506aa8797a
+ languageName: node
+ linkType: hard
+
+"create-jest@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "create-jest@npm:29.7.0"
+ dependencies:
+ "@jest/types": "npm:^29.6.3"
+ chalk: "npm:^4.0.0"
+ exit: "npm:^0.1.2"
+ graceful-fs: "npm:^4.2.9"
+ jest-config: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ prompts: "npm:^2.0.1"
+ bin:
+ create-jest: bin/create-jest.js
+ checksum: 10c0/e7e54c280692470d3398f62a6238fd396327e01c6a0757002833f06d00afc62dd7bfe04ff2b9cd145264460e6b4d1eb8386f2925b7e567f97939843b7b0e812f
+ languageName: node
+ linkType: hard
+
+"create-require@npm:^1.1.0":
+ version: 1.1.1
+ resolution: "create-require@npm:1.1.1"
+ checksum: 10c0/157cbc59b2430ae9a90034a5f3a1b398b6738bf510f713edc4d4e45e169bc514d3d99dd34d8d01ca7ae7830b5b8b537e46ae8f3c8f932371b0875c0151d7ec91
+ languageName: node
+ linkType: hard
+
+"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3":
+ version: 7.0.6
+ resolution: "cross-spawn@npm:7.0.6"
+ dependencies:
+ path-key: "npm:^3.1.0"
+ shebang-command: "npm:^2.0.0"
+ which: "npm:^2.0.1"
+ checksum: 10c0/053ea8b2135caff68a9e81470e845613e374e7309a47731e81639de3eaeb90c3d01af0e0b44d2ab9d50b43467223b88567dfeb3262db942dc063b9976718ffc1
+ languageName: node
+ linkType: hard
+
+"crypto-random-string@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "crypto-random-string@npm:4.0.0"
+ dependencies:
+ type-fest: "npm:^1.0.1"
+ checksum: 10c0/16e11a3c8140398f5408b7fded35a961b9423c5dac39a60cbbd08bd3f0e07d7de130e87262adea7db03ec1a7a4b7551054e0db07ee5408b012bac5400cfc07a5
+ languageName: node
+ linkType: hard
+
+"csstype@npm:^3.0.2":
+ version: 3.2.3
+ resolution: "csstype@npm:3.2.3"
+ checksum: 10c0/cd29c51e70fa822f1cecd8641a1445bed7063697469d35633b516e60fe8c1bde04b08f6c5b6022136bb669b64c63d4173af54864510fbb4ee23281801841a3ce
+ languageName: node
+ linkType: hard
+
+"dargs@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "dargs@npm:7.0.0"
+ checksum: 10c0/ec7f6a8315a8fa2f8b12d39207615bdf62b4d01f631b96fbe536c8ad5469ab9ed710d55811e564d0d5c1d548fc8cb6cc70bf0939f2415790159f5a75e0f96c92
+ languageName: node
+ linkType: hard
+
+"data-uri-to-buffer@npm:^4.0.0":
+ version: 4.0.1
+ resolution: "data-uri-to-buffer@npm:4.0.1"
+ checksum: 10c0/20a6b93107597530d71d4cb285acee17f66bcdfc03fd81040921a81252f19db27588d87fc8fc69e1950c55cfb0bf8ae40d0e5e21d907230813eb5d5a7f9eb45b
+ languageName: node
+ linkType: hard
+
+"data-uri-to-buffer@npm:^6.0.2":
+ version: 6.0.2
+ resolution: "data-uri-to-buffer@npm:6.0.2"
+ checksum: 10c0/f76922bf895b3d7d443059ff278c9cc5efc89d70b8b80cd9de0aa79b3adc6d7a17948eefb8692e30398c43635f70ece1673d6085cc9eba2878dbc6c6da5292ac
+ languageName: node
+ linkType: hard
+
+"data-view-buffer@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "data-view-buffer@npm:1.0.2"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ es-errors: "npm:^1.3.0"
+ is-data-view: "npm:^1.0.2"
+ checksum: 10c0/7986d40fc7979e9e6241f85db8d17060dd9a71bd53c894fa29d126061715e322a4cd47a00b0b8c710394854183d4120462b980b8554012acc1c0fa49df7ad38c
+ languageName: node
+ linkType: hard
+
+"data-view-byte-length@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "data-view-byte-length@npm:1.0.2"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ es-errors: "npm:^1.3.0"
+ is-data-view: "npm:^1.0.2"
+ checksum: 10c0/f8a4534b5c69384d95ac18137d381f18a5cfae1f0fc1df0ef6feef51ef0d568606d970b69e02ea186c6c0f0eac77fe4e6ad96fec2569cc86c3afcc7475068c55
+ languageName: node
+ linkType: hard
+
+"data-view-byte-offset@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "data-view-byte-offset@npm:1.0.1"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ es-errors: "npm:^1.3.0"
+ is-data-view: "npm:^1.0.1"
+ checksum: 10c0/fa7aa40078025b7810dcffc16df02c480573b7b53ef1205aa6a61533011005c1890e5ba17018c692ce7c900212b547262d33279fde801ad9843edc0863bf78c4
+ languageName: node
+ linkType: hard
+
+"dateformat@npm:^3.0.0":
+ version: 3.0.3
+ resolution: "dateformat@npm:3.0.3"
+ checksum: 10c0/2effb8bef52ff912f87a05e4adbeacff46353e91313ad1ea9ed31412db26849f5a0fcc7e3ce36dbfb84fc6c881a986d5694f84838ad0da7000d5150693e78678
+ languageName: node
+ linkType: hard
+
+"debug@npm:2.6.9, debug@npm:^2.2.0, debug@npm:^2.6.9":
+ version: 2.6.9
+ resolution: "debug@npm:2.6.9"
+ dependencies:
+ ms: "npm:2.0.0"
+ checksum: 10c0/121908fb839f7801180b69a7e218a40b5a0b718813b886b7d6bdb82001b931c938e2941d1e4450f33a1b1df1da653f5f7a0440c197f29fbf8a6e9d45ff6ef589
+ languageName: node
+ linkType: hard
+
+"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.4.3":
+ version: 4.4.3
+ resolution: "debug@npm:4.4.3"
+ dependencies:
+ ms: "npm:^2.1.3"
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ checksum: 10c0/d79136ec6c83ecbefd0f6a5593da6a9c91ec4d7ddc4b54c883d6e71ec9accb5f67a1a5e96d00a328196b5b5c86d365e98d8a3a70856aaf16b4e7b1985e67f5a6
+ languageName: node
+ linkType: hard
+
+"decamelize-keys@npm:^1.1.0":
+ version: 1.1.1
+ resolution: "decamelize-keys@npm:1.1.1"
+ dependencies:
+ decamelize: "npm:^1.1.0"
+ map-obj: "npm:^1.0.0"
+ checksum: 10c0/4ca385933127437658338c65fb9aead5f21b28d3dd3ccd7956eb29aab0953b5d3c047fbc207111672220c71ecf7a4d34f36c92851b7bbde6fca1a02c541bdd7d
+ languageName: node
+ linkType: hard
+
+"decamelize@npm:^1.1.0":
+ version: 1.2.0
+ resolution: "decamelize@npm:1.2.0"
+ checksum: 10c0/85c39fe8fbf0482d4a1e224ef0119db5c1897f8503bcef8b826adff7a1b11414972f6fef2d7dec2ee0b4be3863cf64ac1439137ae9e6af23a3d8dcbe26a5b4b2
+ languageName: node
+ linkType: hard
+
+"decompress-response@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "decompress-response@npm:6.0.0"
+ dependencies:
+ mimic-response: "npm:^3.1.0"
+ checksum: 10c0/bd89d23141b96d80577e70c54fb226b2f40e74a6817652b80a116d7befb8758261ad073a8895648a29cc0a5947021ab66705cb542fa9c143c82022b27c5b175e
+ languageName: node
+ linkType: hard
+
+"dedent@npm:^0.7.0":
+ version: 0.7.0
+ resolution: "dedent@npm:0.7.0"
+ checksum: 10c0/7c3aa00ddfe3e5fcd477958e156156a5137e3bb6ff1493ca05edff4decf29a90a057974cc77e75951f8eb801c1816cb45aea1f52d628cdd000b82b36ab839d1b
+ languageName: node
+ linkType: hard
+
+"dedent@npm:^1.0.0":
+ version: 1.7.2
+ resolution: "dedent@npm:1.7.2"
+ peerDependencies:
+ babel-plugin-macros: ^3.1.0
+ peerDependenciesMeta:
+ babel-plugin-macros:
+ optional: true
+ checksum: 10c0/acaff07cac355b93f17b1b17ebbb84d3cc55af6ab4b7814c3f505e061903e168bc6bf9ddce331552d64dee1525f0b4c549c9ade46aebfac6f69caaed74e90751
+ languageName: node
+ linkType: hard
+
+"deep-extend@npm:^0.6.0":
+ version: 0.6.0
+ resolution: "deep-extend@npm:0.6.0"
+ checksum: 10c0/1c6b0abcdb901e13a44c7d699116d3d4279fdb261983122a3783e7273844d5f2537dc2e1c454a23fcf645917f93fbf8d07101c1d03c015a87faa662755212566
+ languageName: node
+ linkType: hard
+
+"deep-is@npm:^0.1.3, deep-is@npm:~0.1.3":
+ version: 0.1.4
+ resolution: "deep-is@npm:0.1.4"
+ checksum: 10c0/7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c
+ languageName: node
+ linkType: hard
+
+"deepmerge@npm:^4.2.2":
+ version: 4.3.1
+ resolution: "deepmerge@npm:4.3.1"
+ checksum: 10c0/e53481aaf1aa2c4082b5342be6b6d8ad9dfe387bc92ce197a66dea08bd4265904a087e75e464f14d1347cf2ac8afe1e4c16b266e0561cc5df29382d3c5f80044
+ languageName: node
+ linkType: hard
+
+"default-browser-id@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "default-browser-id@npm:3.0.0"
+ dependencies:
+ bplist-parser: "npm:^0.2.0"
+ untildify: "npm:^4.0.0"
+ checksum: 10c0/8db3ab882eb3e1e8b59d84c8641320e6c66d8eeb17eb4bb848b7dd549b1e6fd313988e4a13542e95fbaeff03f6e9dedc5ad191ad4df7996187753eb0d45c00b7
+ languageName: node
+ linkType: hard
+
+"default-browser@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "default-browser@npm:4.0.0"
+ dependencies:
+ bundle-name: "npm:^3.0.0"
+ default-browser-id: "npm:^3.0.0"
+ execa: "npm:^7.1.1"
+ titleize: "npm:^3.0.0"
+ checksum: 10c0/7c8848badc139ecf9d878e562bc4e7ab4301e51ba120b24d8dcb14739c30152115cc612065ac3ab73c02aace4afa29db5a044257b2f0cf234f16e3a58f6c925e
+ languageName: node
+ linkType: hard
+
+"defaults@npm:^1.0.3":
+ version: 1.0.4
+ resolution: "defaults@npm:1.0.4"
+ dependencies:
+ clone: "npm:^1.0.2"
+ checksum: 10c0/9cfbe498f5c8ed733775db62dfd585780387d93c17477949e1670bfcfb9346e0281ce8c4bf9f4ac1fc0f9b851113bd6dc9e41182ea1644ccd97de639fa13c35a
+ languageName: node
+ linkType: hard
+
+"defer-to-connect@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "defer-to-connect@npm:2.0.1"
+ checksum: 10c0/625ce28e1b5ad10cf77057b9a6a727bf84780c17660f6644dab61dd34c23de3001f03cedc401f7d30a4ed9965c2e8a7336e220a329146f2cf85d4eddea429782
+ languageName: node
+ linkType: hard
+
+"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.4":
+ version: 1.1.4
+ resolution: "define-data-property@npm:1.1.4"
+ dependencies:
+ es-define-property: "npm:^1.0.0"
+ es-errors: "npm:^1.3.0"
+ gopd: "npm:^1.0.1"
+ checksum: 10c0/dea0606d1483eb9db8d930d4eac62ca0fa16738b0b3e07046cddfacf7d8c868bbe13fa0cb263eb91c7d0d527960dc3f2f2471a69ed7816210307f6744fe62e37
+ languageName: node
+ linkType: hard
+
+"define-lazy-prop@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "define-lazy-prop@npm:3.0.0"
+ checksum: 10c0/5ab0b2bf3fa58b3a443140bbd4cd3db1f91b985cc8a246d330b9ac3fc0b6a325a6d82bddc0b055123d745b3f9931afeea74a5ec545439a1630b9c8512b0eeb49
+ languageName: node
+ linkType: hard
+
+"define-properties@npm:^1.1.3, define-properties@npm:^1.1.4, define-properties@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "define-properties@npm:1.2.1"
+ dependencies:
+ define-data-property: "npm:^1.0.1"
+ has-property-descriptors: "npm:^1.0.0"
+ object-keys: "npm:^1.1.1"
+ checksum: 10c0/88a152319ffe1396ccc6ded510a3896e77efac7a1bfbaa174a7b00414a1747377e0bb525d303794a47cf30e805c2ec84e575758512c6e44a993076d29fd4e6c3
+ languageName: node
+ linkType: hard
+
+"degenerator@npm:^4.0.4":
+ version: 4.0.4
+ resolution: "degenerator@npm:4.0.4"
+ dependencies:
+ ast-types: "npm:^0.13.4"
+ escodegen: "npm:^1.14.3"
+ esprima: "npm:^4.0.1"
+ vm2: "npm:^3.9.19"
+ checksum: 10c0/c859071a7589f415bcd2dcdef233d681d0317d2d68dfae04944a472bee18222425e57649be964cf27f03e4fdf556c703489ad847eac770ff89a8a1fb56f70ad2
+ languageName: node
+ linkType: hard
+
+"del@npm:^6.1.1":
+ version: 6.1.1
+ resolution: "del@npm:6.1.1"
+ dependencies:
+ globby: "npm:^11.0.1"
+ graceful-fs: "npm:^4.2.4"
+ is-glob: "npm:^4.0.1"
+ is-path-cwd: "npm:^2.2.0"
+ is-path-inside: "npm:^3.0.2"
+ p-map: "npm:^4.0.0"
+ rimraf: "npm:^3.0.2"
+ slash: "npm:^3.0.0"
+ checksum: 10c0/8a095c5ccade42c867a60252914ae485ec90da243d735d1f63ec1e64c1cfbc2b8810ad69a29ab6326d159d4fddaa2f5bad067808c42072351ec458efff86708f
+ languageName: node
+ linkType: hard
+
+"depd@npm:2.0.0, depd@npm:~2.0.0":
+ version: 2.0.0
+ resolution: "depd@npm:2.0.0"
+ checksum: 10c0/58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c
+ languageName: node
+ linkType: hard
+
+"deprecation@npm:^2.0.0":
+ version: 2.3.1
+ resolution: "deprecation@npm:2.3.1"
+ checksum: 10c0/23d688ba66b74d09b908c40a76179418acbeeb0bfdf218c8075c58ad8d0c315130cb91aa3dffb623aa3a411a3569ce56c6460de6c8d69071c17fe6dd2442f032
+ languageName: node
+ linkType: hard
+
+"destroy@npm:1.2.0":
+ version: 1.2.0
+ resolution: "destroy@npm:1.2.0"
+ checksum: 10c0/bd7633942f57418f5a3b80d5cb53898127bcf53e24cdf5d5f4396be471417671f0fee48a4ebe9a1e9defbde2a31280011af58a57e090ff822f589b443ed4e643
+ languageName: node
+ linkType: hard
+
+"detect-newline@npm:^3.0.0":
+ version: 3.1.0
+ resolution: "detect-newline@npm:3.1.0"
+ checksum: 10c0/c38cfc8eeb9fda09febb44bcd85e467c970d4e3bf526095394e5a4f18bc26dd0cf6b22c69c1fa9969261521c593836db335c2795218f6d781a512aea2fb8209d
+ languageName: node
+ linkType: hard
+
+"diff-sequences@npm:^29.6.3":
+ version: 29.6.3
+ resolution: "diff-sequences@npm:29.6.3"
+ checksum: 10c0/32e27ac7dbffdf2fb0eb5a84efd98a9ad084fbabd5ac9abb8757c6770d5320d2acd172830b28c4add29bb873d59420601dfc805ac4064330ce59b1adfd0593b2
+ languageName: node
+ linkType: hard
+
+"diff@npm:^4.0.1":
+ version: 4.0.4
+ resolution: "diff@npm:4.0.4"
+ checksum: 10c0/855fb70b093d1d9643ddc12ea76dca90dc9d9cdd7f82c08ee8b9325c0dc5748faf3c82e2047ced5dcaa8b26e58f7903900be2628d0380a222c02d79d8de385df
+ languageName: node
+ linkType: hard
+
+"diff@npm:~8.0.2":
+ version: 8.0.4
+ resolution: "diff@npm:8.0.4"
+ checksum: 10c0/7ee5d03926db4039be7252ac3b0abaae1bd122a2ca971e5ca7270e444e36ff83dd906fad1a719740ca347e97ed5dc8f458a76a8391dbcd7aff363bdafb348a00
+ languageName: node
+ linkType: hard
+
+"dir-glob@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "dir-glob@npm:3.0.1"
+ dependencies:
+ path-type: "npm:^4.0.0"
+ checksum: 10c0/dcac00920a4d503e38bb64001acb19df4efc14536ada475725e12f52c16777afdee4db827f55f13a908ee7efc0cb282e2e3dbaeeb98c0993dd93d1802d3bf00c
+ languageName: node
+ linkType: hard
+
+"doctrine@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "doctrine@npm:2.1.0"
+ dependencies:
+ esutils: "npm:^2.0.2"
+ checksum: 10c0/b6416aaff1f380bf56c3b552f31fdf7a69b45689368deca72d28636f41c16bb28ec3ebc40ace97db4c1afc0ceeb8120e8492fe0046841c94c2933b2e30a7d5ac
+ languageName: node
+ linkType: hard
+
+"doctrine@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "doctrine@npm:3.0.0"
+ dependencies:
+ esutils: "npm:^2.0.2"
+ checksum: 10c0/c96bdccabe9d62ab6fea9399fdff04a66e6563c1d6fb3a3a063e8d53c3bb136ba63e84250bbf63d00086a769ad53aef92d2bd483f03f837fc97b71cbee6b2520
+ languageName: node
+ linkType: hard
+
+"dot-prop@npm:^5.1.0":
+ version: 5.3.0
+ resolution: "dot-prop@npm:5.3.0"
+ dependencies:
+ is-obj: "npm:^2.0.0"
+ checksum: 10c0/93f0d343ef87fe8869320e62f2459f7e70f49c6098d948cc47e060f4a3f827d0ad61e83cb82f2bd90cd5b9571b8d334289978a43c0f98fea4f0e99ee8faa0599
+ languageName: node
+ linkType: hard
+
+"dot-prop@npm:^6.0.1":
+ version: 6.0.1
+ resolution: "dot-prop@npm:6.0.1"
+ dependencies:
+ is-obj: "npm:^2.0.0"
+ checksum: 10c0/30e51ec6408978a6951b21e7bc4938aad01a86f2fdf779efe52330205c6bb8a8ea12f35925c2029d6dc9d1df22f916f32f828ce1e9b259b1371c580541c22b5a
+ languageName: node
+ linkType: hard
+
+"dunder-proto@npm:^1.0.0, dunder-proto@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "dunder-proto@npm:1.0.1"
+ dependencies:
+ call-bind-apply-helpers: "npm:^1.0.1"
+ es-errors: "npm:^1.3.0"
+ gopd: "npm:^1.2.0"
+ checksum: 10c0/199f2a0c1c16593ca0a145dbf76a962f8033ce3129f01284d48c45ed4e14fea9bbacd7b3610b6cdc33486cef20385ac054948fefc6272fcce645c09468f93031
+ languageName: node
+ linkType: hard
+
+"eastasianwidth@npm:^0.2.0":
+ version: 0.2.0
+ resolution: "eastasianwidth@npm:0.2.0"
+ checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39
+ languageName: node
+ linkType: hard
+
+"ee-first@npm:1.1.1":
+ version: 1.1.1
+ resolution: "ee-first@npm:1.1.1"
+ checksum: 10c0/b5bb125ee93161bc16bfe6e56c6b04de5ad2aa44234d8f644813cc95d861a6910903132b05093706de2b706599367c4130eb6d170f6b46895686b95f87d017b7
+ languageName: node
+ linkType: hard
+
+"electron-to-chromium@npm:^1.5.328":
+ version: 1.5.344
+ resolution: "electron-to-chromium@npm:1.5.344"
+ checksum: 10c0/36624a59b2da4cb2bdee3085f5fc814bc0ba5830162a26f45c4b189177455869fd9d9c2e05fa28e69a45fb95c04d3e995962ff0e1658f552dcbe147a731c4f1d
+ languageName: node
+ linkType: hard
+
+"emittery@npm:^0.13.1":
+ version: 0.13.1
+ resolution: "emittery@npm:0.13.1"
+ checksum: 10c0/1573d0ae29ab34661b6c63251ff8f5facd24ccf6a823f19417ae8ba8c88ea450325788c67f16c99edec8de4b52ce93a10fe441ece389fd156e88ee7dab9bfa35
+ languageName: node
+ linkType: hard
+
+"emoji-regex@npm:^8.0.0":
+ version: 8.0.0
+ resolution: "emoji-regex@npm:8.0.0"
+ checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010
+ languageName: node
+ linkType: hard
+
+"emoji-regex@npm:^9.2.2":
+ version: 9.2.2
+ resolution: "emoji-regex@npm:9.2.2"
+ checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639
+ languageName: node
+ linkType: hard
+
+"encodeurl@npm:~1.0.2":
+ version: 1.0.2
+ resolution: "encodeurl@npm:1.0.2"
+ checksum: 10c0/f6c2387379a9e7c1156c1c3d4f9cb7bb11cf16dd4c1682e1f6746512564b053df5781029b6061296832b59fb22f459dbe250386d217c2f6e203601abb2ee0bec
+ languageName: node
+ linkType: hard
+
+"encodeurl@npm:~2.0.0":
+ version: 2.0.0
+ resolution: "encodeurl@npm:2.0.0"
+ checksum: 10c0/5d317306acb13e6590e28e27924c754163946a2480de11865c991a3a7eed4315cd3fba378b543ca145829569eefe9b899f3d84bb09870f675ae60bc924b01ceb
+ languageName: node
+ linkType: hard
+
+"end-of-stream@npm:^1.1.0":
+ version: 1.4.5
+ resolution: "end-of-stream@npm:1.4.5"
+ dependencies:
+ once: "npm:^1.4.0"
+ checksum: 10c0/b0701c92a10b89afb1cb45bf54a5292c6f008d744eb4382fa559d54775ff31617d1d7bc3ef617575f552e24fad2c7c1a1835948c66b3f3a4be0a6c1f35c883d8
+ languageName: node
+ linkType: hard
+
+"env-paths@npm:^2.2.0":
+ version: 2.2.1
+ resolution: "env-paths@npm:2.2.1"
+ checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4
+ languageName: node
+ linkType: hard
+
+"error-ex@npm:^1.3.1":
+ version: 1.3.4
+ resolution: "error-ex@npm:1.3.4"
+ dependencies:
+ is-arrayish: "npm:^0.2.1"
+ checksum: 10c0/b9e34ff4778b8f3b31a8377e1c654456f4c41aeaa3d10a1138c3b7635d8b7b2e03eb2475d46d8ae055c1f180a1063e100bffabf64ea7e7388b37735df5328664
+ languageName: node
+ linkType: hard
+
+"error-stack-parser@npm:^2.0.6":
+ version: 2.1.4
+ resolution: "error-stack-parser@npm:2.1.4"
+ dependencies:
+ stackframe: "npm:^1.3.4"
+ checksum: 10c0/7679b780043c98b01fc546725484e0cfd3071bf5c906bbe358722972f04abf4fc3f0a77988017665bab367f6ef3fc2d0185f7528f45966b83e7c99c02d5509b9
+ languageName: node
+ linkType: hard
+
+"es-abstract@npm:^1.17.5, es-abstract@npm:^1.20.4, es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.3, es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.6, es-abstract@npm:^1.23.9, es-abstract@npm:^1.24.0, es-abstract@npm:^1.24.2":
+ version: 1.24.2
+ resolution: "es-abstract@npm:1.24.2"
+ dependencies:
+ array-buffer-byte-length: "npm:^1.0.2"
+ arraybuffer.prototype.slice: "npm:^1.0.4"
+ available-typed-arrays: "npm:^1.0.7"
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.4"
+ data-view-buffer: "npm:^1.0.2"
+ data-view-byte-length: "npm:^1.0.2"
+ data-view-byte-offset: "npm:^1.0.1"
+ es-define-property: "npm:^1.0.1"
+ es-errors: "npm:^1.3.0"
+ es-object-atoms: "npm:^1.1.1"
+ es-set-tostringtag: "npm:^2.1.0"
+ es-to-primitive: "npm:^1.3.0"
+ function.prototype.name: "npm:^1.1.8"
+ get-intrinsic: "npm:^1.3.0"
+ get-proto: "npm:^1.0.1"
+ get-symbol-description: "npm:^1.1.0"
+ globalthis: "npm:^1.0.4"
+ gopd: "npm:^1.2.0"
+ has-property-descriptors: "npm:^1.0.2"
+ has-proto: "npm:^1.2.0"
+ has-symbols: "npm:^1.1.0"
+ hasown: "npm:^2.0.2"
+ internal-slot: "npm:^1.1.0"
+ is-array-buffer: "npm:^3.0.5"
+ is-callable: "npm:^1.2.7"
+ is-data-view: "npm:^1.0.2"
+ is-negative-zero: "npm:^2.0.3"
+ is-regex: "npm:^1.2.1"
+ is-set: "npm:^2.0.3"
+ is-shared-array-buffer: "npm:^1.0.4"
+ is-string: "npm:^1.1.1"
+ is-typed-array: "npm:^1.1.15"
+ is-weakref: "npm:^1.1.1"
+ math-intrinsics: "npm:^1.1.0"
+ object-inspect: "npm:^1.13.4"
+ object-keys: "npm:^1.1.1"
+ object.assign: "npm:^4.1.7"
+ own-keys: "npm:^1.0.1"
+ regexp.prototype.flags: "npm:^1.5.4"
+ safe-array-concat: "npm:^1.1.3"
+ safe-push-apply: "npm:^1.0.0"
+ safe-regex-test: "npm:^1.1.0"
+ set-proto: "npm:^1.0.0"
+ stop-iteration-iterator: "npm:^1.1.0"
+ string.prototype.trim: "npm:^1.2.10"
+ string.prototype.trimend: "npm:^1.0.9"
+ string.prototype.trimstart: "npm:^1.0.8"
+ typed-array-buffer: "npm:^1.0.3"
+ typed-array-byte-length: "npm:^1.0.3"
+ typed-array-byte-offset: "npm:^1.0.4"
+ typed-array-length: "npm:^1.0.7"
+ unbox-primitive: "npm:^1.1.0"
+ which-typed-array: "npm:^1.1.19"
+ checksum: 10c0/67a5bf21ef5c7d775e6f6131a836323900b4d87194cf544394ac68fe31c57fa53828b978af4a4f551ef307f83a2f910a16b6b982760ad3ddc3dc471f98d5fd1b
+ languageName: node
+ linkType: hard
+
+"es-array-method-boxes-properly@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "es-array-method-boxes-properly@npm:1.0.0"
+ checksum: 10c0/4b7617d3fbd460d6f051f684ceca6cf7e88e6724671d9480388d3ecdd72119ddaa46ca31f2c69c5426a82e4b3091c1e81867c71dcdc453565cd90005ff2c382d
+ languageName: node
+ linkType: hard
+
+"es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "es-define-property@npm:1.0.1"
+ checksum: 10c0/3f54eb49c16c18707949ff25a1456728c883e81259f045003499efba399c08bad00deebf65cccde8c0e07908c1a225c9d472b7107e558f2a48e28d530e34527c
+ languageName: node
+ linkType: hard
+
+"es-errors@npm:^1.3.0":
+ version: 1.3.0
+ resolution: "es-errors@npm:1.3.0"
+ checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85
+ languageName: node
+ linkType: hard
+
+"es-get-iterator@npm:^1.0.2":
+ version: 1.1.3
+ resolution: "es-get-iterator@npm:1.1.3"
+ dependencies:
+ call-bind: "npm:^1.0.2"
+ get-intrinsic: "npm:^1.1.3"
+ has-symbols: "npm:^1.0.3"
+ is-arguments: "npm:^1.1.1"
+ is-map: "npm:^2.0.2"
+ is-set: "npm:^2.0.2"
+ is-string: "npm:^1.0.7"
+ isarray: "npm:^2.0.5"
+ stop-iteration-iterator: "npm:^1.0.0"
+ checksum: 10c0/ebd11effa79851ea75d7f079405f9d0dc185559fd65d986c6afea59a0ff2d46c2ed8675f19f03dce7429d7f6c14ff9aede8d121fbab78d75cfda6a263030bac0
+ languageName: node
+ linkType: hard
+
+"es-iterator-helpers@npm:^1.2.1":
+ version: 1.3.2
+ resolution: "es-iterator-helpers@npm:1.3.2"
+ dependencies:
+ call-bind: "npm:^1.0.9"
+ call-bound: "npm:^1.0.4"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.24.2"
+ es-errors: "npm:^1.3.0"
+ es-set-tostringtag: "npm:^2.1.0"
+ function-bind: "npm:^1.1.2"
+ get-intrinsic: "npm:^1.3.0"
+ globalthis: "npm:^1.0.4"
+ gopd: "npm:^1.2.0"
+ has-property-descriptors: "npm:^1.0.2"
+ has-proto: "npm:^1.2.0"
+ has-symbols: "npm:^1.1.0"
+ internal-slot: "npm:^1.1.0"
+ iterator.prototype: "npm:^1.1.5"
+ math-intrinsics: "npm:^1.1.0"
+ checksum: 10c0/5ddf9e7a7c5052d02cd8eb18f75e160c628eea66862ccd22f0fee7a7b1d2d17565c7ccf183f8b52aa88470d55394d1022012bc4eb8f8ae65a22b36e0b3bef83a
+ languageName: node
+ linkType: hard
+
+"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "es-object-atoms@npm:1.1.1"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ checksum: 10c0/65364812ca4daf48eb76e2a3b7a89b3f6a2e62a1c420766ce9f692665a29d94fe41fe88b65f24106f449859549711e4b40d9fb8002d862dfd7eb1c512d10be0c
+ languageName: node
+ linkType: hard
+
+"es-set-tostringtag@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "es-set-tostringtag@npm:2.1.0"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ get-intrinsic: "npm:^1.2.6"
+ has-tostringtag: "npm:^1.0.2"
+ hasown: "npm:^2.0.2"
+ checksum: 10c0/ef2ca9ce49afe3931cb32e35da4dcb6d86ab02592cfc2ce3e49ced199d9d0bb5085fc7e73e06312213765f5efa47cc1df553a6a5154584b21448e9fb8355b1af
+ languageName: node
+ linkType: hard
+
+"es-shim-unscopables@npm:^1.0.2":
+ version: 1.1.0
+ resolution: "es-shim-unscopables@npm:1.1.0"
+ dependencies:
+ hasown: "npm:^2.0.2"
+ checksum: 10c0/1b9702c8a1823fc3ef39035a4e958802cf294dd21e917397c561d0b3e195f383b978359816b1732d02b255ccf63e1e4815da0065b95db8d7c992037be3bbbcdb
+ languageName: node
+ linkType: hard
+
+"es-to-primitive@npm:^1.3.0":
+ version: 1.3.0
+ resolution: "es-to-primitive@npm:1.3.0"
+ dependencies:
+ is-callable: "npm:^1.2.7"
+ is-date-object: "npm:^1.0.5"
+ is-symbol: "npm:^1.0.4"
+ checksum: 10c0/c7e87467abb0b438639baa8139f701a06537d2b9bc758f23e8622c3b42fd0fdb5bde0f535686119e446dd9d5e4c0f238af4e14960f4771877cf818d023f6730b
+ languageName: node
+ linkType: hard
+
+"escalade@npm:^3.1.1, escalade@npm:^3.2.0":
+ version: 3.2.0
+ resolution: "escalade@npm:3.2.0"
+ checksum: 10c0/ced4dd3a78e15897ed3be74e635110bbf3b08877b0a41be50dcb325ee0e0b5f65fc2d50e9845194d7c4633f327e2e1c6cce00a71b617c5673df0374201d67f65
+ languageName: node
+ linkType: hard
+
+"escape-goat@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "escape-goat@npm:4.0.0"
+ checksum: 10c0/9d2a8314e2370f2dd9436d177f6b3b1773525df8f895c8f3e1acb716f5fd6b10b336cb1cd9862d4709b36eb207dbe33664838deca9c6d55b8371be4eebb972f6
+ languageName: node
+ linkType: hard
+
+"escape-html@npm:~1.0.3":
+ version: 1.0.3
+ resolution: "escape-html@npm:1.0.3"
+ checksum: 10c0/524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3
+ languageName: node
+ linkType: hard
+
+"escape-string-regexp@npm:^1.0.5":
+ version: 1.0.5
+ resolution: "escape-string-regexp@npm:1.0.5"
+ checksum: 10c0/a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371
+ languageName: node
+ linkType: hard
+
+"escape-string-regexp@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "escape-string-regexp@npm:2.0.0"
+ checksum: 10c0/2530479fe8db57eace5e8646c9c2a9c80fa279614986d16dcc6bcaceb63ae77f05a851ba6c43756d816c61d7f4534baf56e3c705e3e0d884818a46808811c507
+ languageName: node
+ linkType: hard
+
+"escape-string-regexp@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "escape-string-regexp@npm:4.0.0"
+ checksum: 10c0/9497d4dd307d845bd7f75180d8188bb17ea8c151c1edbf6b6717c100e104d629dc2dfb687686181b0f4b7d732c7dfdc4d5e7a8ff72de1b0ca283a75bbb3a9cd9
+ languageName: node
+ linkType: hard
+
+"escape-string-regexp@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "escape-string-regexp@npm:5.0.0"
+ checksum: 10c0/6366f474c6f37a802800a435232395e04e9885919873e382b157ab7e8f0feb8fed71497f84a6f6a81a49aab41815522f5839112bd38026d203aea0c91622df95
+ languageName: node
+ linkType: hard
+
+"escodegen@npm:^1.14.3":
+ version: 1.14.3
+ resolution: "escodegen@npm:1.14.3"
+ dependencies:
+ esprima: "npm:^4.0.1"
+ estraverse: "npm:^4.2.0"
+ esutils: "npm:^2.0.2"
+ optionator: "npm:^0.8.1"
+ source-map: "npm:~0.6.1"
+ dependenciesMeta:
+ source-map:
+ optional: true
+ bin:
+ escodegen: bin/escodegen.js
+ esgenerate: bin/esgenerate.js
+ checksum: 10c0/30d337803e8f44308c90267bf6192399e4b44792497c77a7506b68ab802ba6a48ebbe1ce77b219aba13dfd2de5f5e1c267e35be1ed87b2a9c3315e8b283e302a
+ languageName: node
+ linkType: hard
+
+"eslint-config-prettier@npm:^8.5.0":
+ version: 8.10.2
+ resolution: "eslint-config-prettier@npm:8.10.2"
+ peerDependencies:
+ eslint: ">=7.0.0"
+ bin:
+ eslint-config-prettier: bin/cli.js
+ checksum: 10c0/b5953cf7a86f685e1218b16707bf36643b525513d08495226a6820caccd8b7bfc6b9aa64ac7cb2415dbe2c1f7dc4995832148bdc53ad45777f75a8ded1073b29
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-eslint-comments@npm:^3.2.0":
+ version: 3.2.0
+ resolution: "eslint-plugin-eslint-comments@npm:3.2.0"
+ dependencies:
+ escape-string-regexp: "npm:^1.0.5"
+ ignore: "npm:^5.0.5"
+ peerDependencies:
+ eslint: ">=4.19.1"
+ checksum: 10c0/c71db824592dc8ea498021572a0bd33d763ef26126bdb3b84a027ca75a1adbe0894ec95024f7de39ef12308560e62cbf8af0d06ffe472be5ba8bd9169c928e96
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-ft-flow@npm:^2.0.1":
+ version: 2.0.3
+ resolution: "eslint-plugin-ft-flow@npm:2.0.3"
+ dependencies:
+ lodash: "npm:^4.17.21"
+ string-natural-compare: "npm:^3.0.1"
+ peerDependencies:
+ "@babel/eslint-parser": ^7.12.0
+ eslint: ^8.1.0
+ checksum: 10c0/171f6862f7be3c66a415c2ebf14a6e29ade78b661a16f344b78fbefeaeed97fc7f2c710c0d3a2c2df2bbb614b282eaef830993c2aac83b13324cd8c2f9497ea6
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-jest@npm:^26.5.3":
+ version: 26.9.0
+ resolution: "eslint-plugin-jest@npm:26.9.0"
+ dependencies:
+ "@typescript-eslint/utils": "npm:^5.10.0"
+ peerDependencies:
+ "@typescript-eslint/eslint-plugin": ^5.0.0
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ "@typescript-eslint/eslint-plugin":
+ optional: true
+ jest:
+ optional: true
+ checksum: 10c0/6b3c984de3550e2a72b98838120f28b1020c725921f5961a8931f8db0362b7a8a451ffbe4a92ba72ba2ffe876f8d8ecbac9b6109c7702ec4ff155e8cac593462
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-prettier@npm:^4.0.0, eslint-plugin-prettier@npm:^4.2.1":
+ version: 4.2.5
+ resolution: "eslint-plugin-prettier@npm:4.2.5"
+ dependencies:
+ prettier-linter-helpers: "npm:^1.0.0"
+ peerDependencies:
+ eslint: ">=7.28.0"
+ prettier: ">=2.0.0"
+ peerDependenciesMeta:
+ eslint-config-prettier:
+ optional: true
+ checksum: 10c0/75b3cdc90328aacf4cc7fabc522e651bd8208d40634c9b2772274332a696548136dac4608b141863bc462500c5a8012fbc2495623f684f631ddb62c2f5bca0a3
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-react-hooks@npm:^4.6.0":
+ version: 4.6.2
+ resolution: "eslint-plugin-react-hooks@npm:4.6.2"
+ peerDependencies:
+ eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
+ checksum: 10c0/4844e58c929bc05157fb70ba1e462e34f1f4abcbc8dd5bbe5b04513d33e2699effb8bca668297976ceea8e7ebee4e8fc29b9af9d131bcef52886feaa2308b2cc
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-react-native-globals@npm:^0.1.1":
+ version: 0.1.2
+ resolution: "eslint-plugin-react-native-globals@npm:0.1.2"
+ checksum: 10c0/ddb4ec5e31f6e72a66d51218c8f0b558b5366d614598fbec1833ac529db2c2dc1724c7ed71c1fcf922251b8438634f704d265c9bedf51aecfe807ec4a0403c09
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-react-native@npm:^4.0.0":
+ version: 4.1.0
+ resolution: "eslint-plugin-react-native@npm:4.1.0"
+ dependencies:
+ eslint-plugin-react-native-globals: "npm:^0.1.1"
+ peerDependencies:
+ eslint: ^3.17.0 || ^4 || ^5 || ^6 || ^7 || ^8
+ checksum: 10c0/9aedccde6227b78bad7c243844aca0860fca2dccd635e91e745bcd617c1e7fb889fa212917cf7b56860335a147fc7c8dc339d1976330ec4f896fe9156b35b162
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-react@npm:^7.30.1":
+ version: 7.37.5
+ resolution: "eslint-plugin-react@npm:7.37.5"
+ dependencies:
+ array-includes: "npm:^3.1.8"
+ array.prototype.findlast: "npm:^1.2.5"
+ array.prototype.flatmap: "npm:^1.3.3"
+ array.prototype.tosorted: "npm:^1.1.4"
+ doctrine: "npm:^2.1.0"
+ es-iterator-helpers: "npm:^1.2.1"
+ estraverse: "npm:^5.3.0"
+ hasown: "npm:^2.0.2"
+ jsx-ast-utils: "npm:^2.4.1 || ^3.0.0"
+ minimatch: "npm:^3.1.2"
+ object.entries: "npm:^1.1.9"
+ object.fromentries: "npm:^2.0.8"
+ object.values: "npm:^1.2.1"
+ prop-types: "npm:^15.8.1"
+ resolve: "npm:^2.0.0-next.5"
+ semver: "npm:^6.3.1"
+ string.prototype.matchall: "npm:^4.0.12"
+ string.prototype.repeat: "npm:^1.0.0"
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
+ checksum: 10c0/c850bfd556291d4d9234f5ca38db1436924a1013627c8ab1853f77cac73ec19b020e861e6c7b783436a48b6ffcdfba4547598235a37ad4611b6739f65fd8ad57
+ languageName: node
+ linkType: hard
+
+"eslint-scope@npm:5.1.1, eslint-scope@npm:^5.1.1":
+ version: 5.1.1
+ resolution: "eslint-scope@npm:5.1.1"
+ dependencies:
+ esrecurse: "npm:^4.3.0"
+ estraverse: "npm:^4.1.1"
+ checksum: 10c0/d30ef9dc1c1cbdece34db1539a4933fe3f9b14e1ffb27ecc85987902ee663ad7c9473bbd49a9a03195a373741e62e2f807c4938992e019b511993d163450e70a
+ languageName: node
+ linkType: hard
+
+"eslint-scope@npm:^7.2.2":
+ version: 7.2.2
+ resolution: "eslint-scope@npm:7.2.2"
+ dependencies:
+ esrecurse: "npm:^4.3.0"
+ estraverse: "npm:^5.2.0"
+ checksum: 10c0/613c267aea34b5a6d6c00514e8545ef1f1433108097e857225fed40d397dd6b1809dffd11c2fde23b37ca53d7bf935fe04d2a18e6fc932b31837b6ad67e1c116
+ languageName: node
+ linkType: hard
+
+"eslint-visitor-keys@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "eslint-visitor-keys@npm:2.1.0"
+ checksum: 10c0/9f0e3a2db751d84067d15977ac4b4472efd6b303e369e6ff241a99feac04da758f46d5add022c33d06b53596038dbae4b4aceb27c7e68b8dfc1055b35e495787
+ languageName: node
+ linkType: hard
+
+"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3":
+ version: 3.4.3
+ resolution: "eslint-visitor-keys@npm:3.4.3"
+ checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820
+ languageName: node
+ linkType: hard
+
+"eslint@npm:^8.4.1":
+ version: 8.57.1
+ resolution: "eslint@npm:8.57.1"
+ dependencies:
+ "@eslint-community/eslint-utils": "npm:^4.2.0"
+ "@eslint-community/regexpp": "npm:^4.6.1"
+ "@eslint/eslintrc": "npm:^2.1.4"
+ "@eslint/js": "npm:8.57.1"
+ "@humanwhocodes/config-array": "npm:^0.13.0"
+ "@humanwhocodes/module-importer": "npm:^1.0.1"
+ "@nodelib/fs.walk": "npm:^1.2.8"
+ "@ungap/structured-clone": "npm:^1.2.0"
+ ajv: "npm:^6.12.4"
+ chalk: "npm:^4.0.0"
+ cross-spawn: "npm:^7.0.2"
+ debug: "npm:^4.3.2"
+ doctrine: "npm:^3.0.0"
+ escape-string-regexp: "npm:^4.0.0"
+ eslint-scope: "npm:^7.2.2"
+ eslint-visitor-keys: "npm:^3.4.3"
+ espree: "npm:^9.6.1"
+ esquery: "npm:^1.4.2"
+ esutils: "npm:^2.0.2"
+ fast-deep-equal: "npm:^3.1.3"
+ file-entry-cache: "npm:^6.0.1"
+ find-up: "npm:^5.0.0"
+ glob-parent: "npm:^6.0.2"
+ globals: "npm:^13.19.0"
+ graphemer: "npm:^1.4.0"
+ ignore: "npm:^5.2.0"
+ imurmurhash: "npm:^0.1.4"
+ is-glob: "npm:^4.0.0"
+ is-path-inside: "npm:^3.0.3"
+ js-yaml: "npm:^4.1.0"
+ json-stable-stringify-without-jsonify: "npm:^1.0.1"
+ levn: "npm:^0.4.1"
+ lodash.merge: "npm:^4.6.2"
+ minimatch: "npm:^3.1.2"
+ natural-compare: "npm:^1.4.0"
+ optionator: "npm:^0.9.3"
+ strip-ansi: "npm:^6.0.1"
+ text-table: "npm:^0.2.0"
+ bin:
+ eslint: bin/eslint.js
+ checksum: 10c0/1fd31533086c1b72f86770a4d9d7058ee8b4643fd1cfd10c7aac1ecb8725698e88352a87805cf4b2ce890aa35947df4b4da9655fb7fdfa60dbb448a43f6ebcf1
+ languageName: node
+ linkType: hard
+
+"espree@npm:^9.6.0, espree@npm:^9.6.1":
+ version: 9.6.1
+ resolution: "espree@npm:9.6.1"
+ dependencies:
+ acorn: "npm:^8.9.0"
+ acorn-jsx: "npm:^5.3.2"
+ eslint-visitor-keys: "npm:^3.4.1"
+ checksum: 10c0/1a2e9b4699b715347f62330bcc76aee224390c28bb02b31a3752e9d07549c473f5f986720483c6469cf3cfb3c9d05df612ffc69eb1ee94b54b739e67de9bb460
+ languageName: node
+ linkType: hard
+
+"esprima@npm:^4.0.0, esprima@npm:^4.0.1, esprima@npm:~4.0.0":
+ version: 4.0.1
+ resolution: "esprima@npm:4.0.1"
+ bin:
+ esparse: ./bin/esparse.js
+ esvalidate: ./bin/esvalidate.js
+ checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3
+ languageName: node
+ linkType: hard
+
+"esquery@npm:^1.4.2":
+ version: 1.7.0
+ resolution: "esquery@npm:1.7.0"
+ dependencies:
+ estraverse: "npm:^5.1.0"
+ checksum: 10c0/77d5173db450b66f3bc685d11af4c90cffeedb340f34a39af96d43509a335ce39c894fd79233df32d38f5e4e219fa0f7076f6ec90bae8320170ba082c0db4793
+ languageName: node
+ linkType: hard
+
+"esrecurse@npm:^4.3.0":
+ version: 4.3.0
+ resolution: "esrecurse@npm:4.3.0"
+ dependencies:
+ estraverse: "npm:^5.2.0"
+ checksum: 10c0/81a37116d1408ded88ada45b9fb16dbd26fba3aadc369ce50fcaf82a0bac12772ebd7b24cd7b91fc66786bf2c1ac7b5f196bc990a473efff972f5cb338877cf5
+ languageName: node
+ linkType: hard
+
+"estraverse@npm:^4.1.1, estraverse@npm:^4.2.0":
+ version: 4.3.0
+ resolution: "estraverse@npm:4.3.0"
+ checksum: 10c0/9cb46463ef8a8a4905d3708a652d60122a0c20bb58dec7e0e12ab0e7235123d74214fc0141d743c381813e1b992767e2708194f6f6e0f9fd00c1b4e0887b8b6d
+ languageName: node
+ linkType: hard
+
+"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0, estraverse@npm:^5.3.0":
+ version: 5.3.0
+ resolution: "estraverse@npm:5.3.0"
+ checksum: 10c0/1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107
+ languageName: node
+ linkType: hard
+
+"esutils@npm:^2.0.2":
+ version: 2.0.3
+ resolution: "esutils@npm:2.0.3"
+ checksum: 10c0/9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7
+ languageName: node
+ linkType: hard
+
+"etag@npm:~1.8.1":
+ version: 1.8.1
+ resolution: "etag@npm:1.8.1"
+ checksum: 10c0/12be11ef62fb9817314d790089a0a49fae4e1b50594135dcb8076312b7d7e470884b5100d249b28c18581b7fd52f8b485689ffae22a11ed9ec17377a33a08f84
+ languageName: node
+ linkType: hard
+
+"event-target-shim@npm:^5.0.0, event-target-shim@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "event-target-shim@npm:5.0.1"
+ checksum: 10c0/0255d9f936215fd206156fd4caa9e8d35e62075d720dc7d847e89b417e5e62cf1ce6c9b4e0a1633a9256de0efefaf9f8d26924b1f3c8620cffb9db78e7d3076b
+ languageName: node
+ linkType: hard
+
+"execa@npm:7.1.1":
+ version: 7.1.1
+ resolution: "execa@npm:7.1.1"
+ dependencies:
+ cross-spawn: "npm:^7.0.3"
+ get-stream: "npm:^6.0.1"
+ human-signals: "npm:^4.3.0"
+ is-stream: "npm:^3.0.0"
+ merge-stream: "npm:^2.0.0"
+ npm-run-path: "npm:^5.1.0"
+ onetime: "npm:^6.0.0"
+ signal-exit: "npm:^3.0.7"
+ strip-final-newline: "npm:^3.0.0"
+ checksum: 10c0/0da5ee1c895b62142bc3d1567d1974711c28c2cfa6bae96e1923379bd597e476d762a13f282f92815d8ebfa33407949634fa32a0d6db8334a20e625fe11d4351
+ languageName: node
+ linkType: hard
+
+"execa@npm:^4.0.3":
+ version: 4.1.0
+ resolution: "execa@npm:4.1.0"
+ dependencies:
+ cross-spawn: "npm:^7.0.0"
+ get-stream: "npm:^5.0.0"
+ human-signals: "npm:^1.1.1"
+ is-stream: "npm:^2.0.0"
+ merge-stream: "npm:^2.0.0"
+ npm-run-path: "npm:^4.0.0"
+ onetime: "npm:^5.1.0"
+ signal-exit: "npm:^3.0.2"
+ strip-final-newline: "npm:^2.0.0"
+ checksum: 10c0/02211601bb1c52710260edcc68fb84c3c030dc68bafc697c90ada3c52cc31375337de8c24826015b8382a58d63569ffd203b79c94fef217d65503e3e8d2c52ba
+ languageName: node
+ linkType: hard
+
+"execa@npm:^5.0.0, execa@npm:^5.1.1":
+ version: 5.1.1
+ resolution: "execa@npm:5.1.1"
+ dependencies:
+ cross-spawn: "npm:^7.0.3"
+ get-stream: "npm:^6.0.0"
+ human-signals: "npm:^2.1.0"
+ is-stream: "npm:^2.0.0"
+ merge-stream: "npm:^2.0.0"
+ npm-run-path: "npm:^4.0.1"
+ onetime: "npm:^5.1.2"
+ signal-exit: "npm:^3.0.3"
+ strip-final-newline: "npm:^2.0.0"
+ checksum: 10c0/c8e615235e8de4c5addf2fa4c3da3e3aa59ce975a3e83533b4f6a71750fb816a2e79610dc5f1799b6e28976c9ae86747a36a606655bf8cb414a74d8d507b304f
+ languageName: node
+ linkType: hard
+
+"execa@npm:^7.1.1":
+ version: 7.2.0
+ resolution: "execa@npm:7.2.0"
+ dependencies:
+ cross-spawn: "npm:^7.0.3"
+ get-stream: "npm:^6.0.1"
+ human-signals: "npm:^4.3.0"
+ is-stream: "npm:^3.0.0"
+ merge-stream: "npm:^2.0.0"
+ npm-run-path: "npm:^5.1.0"
+ onetime: "npm:^6.0.0"
+ signal-exit: "npm:^3.0.7"
+ strip-final-newline: "npm:^3.0.0"
+ checksum: 10c0/098cd6a1bc26d509e5402c43f4971736450b84d058391820c6f237aeec6436963e006fd8423c9722f148c53da86aa50045929c7278b5522197dff802d10f9885
+ languageName: node
+ linkType: hard
+
+"exit@npm:^0.1.2":
+ version: 0.1.2
+ resolution: "exit@npm:0.1.2"
+ checksum: 10c0/71d2ad9b36bc25bb8b104b17e830b40a08989be7f7d100b13269aaae7c3784c3e6e1e88a797e9e87523993a25ba27c8958959a554535370672cfb4d824af8989
+ languageName: node
+ linkType: hard
+
+"expect@npm:^29.0.0, expect@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "expect@npm:29.7.0"
+ dependencies:
+ "@jest/expect-utils": "npm:^29.7.0"
+ jest-get-type: "npm:^29.6.3"
+ jest-matcher-utils: "npm:^29.7.0"
+ jest-message-util: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ checksum: 10c0/2eddeace66e68b8d8ee5f7be57f3014b19770caaf6815c7a08d131821da527fb8c8cb7b3dcd7c883d2d3d8d184206a4268984618032d1e4b16dc8d6596475d41
+ languageName: node
+ linkType: hard
+
+"exponential-backoff@npm:^3.1.1":
+ version: 3.1.3
+ resolution: "exponential-backoff@npm:3.1.3"
+ checksum: 10c0/77e3ae682b7b1f4972f563c6dbcd2b0d54ac679e62d5d32f3e5085feba20483cf28bd505543f520e287a56d4d55a28d7874299941faf637e779a1aa5994d1267
+ languageName: node
+ linkType: hard
+
+"external-editor@npm:^3.0.3":
+ version: 3.1.0
+ resolution: "external-editor@npm:3.1.0"
+ dependencies:
+ chardet: "npm:^0.7.0"
+ iconv-lite: "npm:^0.4.24"
+ tmp: "npm:^0.0.33"
+ checksum: 10c0/c98f1ba3efdfa3c561db4447ff366a6adb5c1e2581462522c56a18bf90dfe4da382f9cd1feee3e330108c3595a854b218272539f311ba1b3298f841eb0fbf339
+ languageName: node
+ linkType: hard
+
+"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3":
+ version: 3.1.3
+ resolution: "fast-deep-equal@npm:3.1.3"
+ checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0
+ languageName: node
+ linkType: hard
+
+"fast-diff@npm:^1.1.2":
+ version: 1.3.0
+ resolution: "fast-diff@npm:1.3.0"
+ checksum: 10c0/5c19af237edb5d5effda008c891a18a585f74bf12953be57923f17a3a4d0979565fc64dbc73b9e20926b9d895f5b690c618cbb969af0cf022e3222471220ad29
+ languageName: node
+ linkType: hard
+
+"fast-glob@npm:^3.2.11, fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.3":
+ version: 3.3.3
+ resolution: "fast-glob@npm:3.3.3"
+ dependencies:
+ "@nodelib/fs.stat": "npm:^2.0.2"
+ "@nodelib/fs.walk": "npm:^1.2.3"
+ glob-parent: "npm:^5.1.2"
+ merge2: "npm:^1.3.0"
+ micromatch: "npm:^4.0.8"
+ checksum: 10c0/f6aaa141d0d3384cf73cbcdfc52f475ed293f6d5b65bfc5def368b09163a9f7e5ec2b3014d80f733c405f58e470ee0cc451c2937685045cddcdeaa24199c43fe
+ languageName: node
+ linkType: hard
+
+"fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "fast-json-stable-stringify@npm:2.1.0"
+ checksum: 10c0/7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b
+ languageName: node
+ linkType: hard
+
+"fast-levenshtein@npm:^2.0.6, fast-levenshtein@npm:~2.0.6":
+ version: 2.0.6
+ resolution: "fast-levenshtein@npm:2.0.6"
+ checksum: 10c0/111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4
+ languageName: node
+ linkType: hard
+
+"fast-uri@npm:^3.0.1":
+ version: 3.1.0
+ resolution: "fast-uri@npm:3.1.0"
+ checksum: 10c0/44364adca566f70f40d1e9b772c923138d47efeac2ae9732a872baafd77061f26b097ba2f68f0892885ad177becd065520412b8ffeec34b16c99433c5b9e2de7
+ languageName: node
+ linkType: hard
+
+"fastq@npm:^1.6.0":
+ version: 1.20.1
+ resolution: "fastq@npm:1.20.1"
+ dependencies:
+ reusify: "npm:^1.0.4"
+ checksum: 10c0/e5dd725884decb1f11e5c822221d76136f239d0236f176fab80b7b8f9e7619ae57e6b4e5b73defc21e6b9ef99437ee7b545cff8e6c2c337819633712fa9d352e
+ languageName: node
+ linkType: hard
+
+"fb-watchman@npm:^2.0.0":
+ version: 2.0.2
+ resolution: "fb-watchman@npm:2.0.2"
+ dependencies:
+ bser: "npm:2.1.1"
+ checksum: 10c0/feae89ac148adb8f6ae8ccd87632e62b13563e6fb114cacb5265c51f585b17e2e268084519fb2edd133872f1d47a18e6bfd7e5e08625c0d41b93149694187581
+ languageName: node
+ linkType: hard
+
+"fdir@npm:^6.5.0":
+ version: 6.5.0
+ resolution: "fdir@npm:6.5.0"
+ peerDependencies:
+ picomatch: ^3 || ^4
+ peerDependenciesMeta:
+ picomatch:
+ optional: true
+ checksum: 10c0/e345083c4306b3aed6cb8ec551e26c36bab5c511e99ea4576a16750ddc8d3240e63826cc624f5ae17ad4dc82e68a253213b60d556c11bfad064b7607847ed07f
+ languageName: node
+ linkType: hard
+
+"fetch-blob@npm:^3.1.2, fetch-blob@npm:^3.1.4":
+ version: 3.2.0
+ resolution: "fetch-blob@npm:3.2.0"
+ dependencies:
+ node-domexception: "npm:^1.0.0"
+ web-streams-polyfill: "npm:^3.0.3"
+ checksum: 10c0/60054bf47bfa10fb0ba6cb7742acec2f37c1f56344f79a70bb8b1c48d77675927c720ff3191fa546410a0442c998d27ab05e9144c32d530d8a52fbe68f843b69
+ languageName: node
+ linkType: hard
+
+"figures@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "figures@npm:5.0.0"
+ dependencies:
+ escape-string-regexp: "npm:^5.0.0"
+ is-unicode-supported: "npm:^1.2.0"
+ checksum: 10c0/ce0f17d4ea8b0fc429c5207c343534a2f5284ecfb22aa08607da7dc84ed9e1cf754f5b97760e8dcb98d3c9d1a1e4d3d578fe3b5b99c426f05d0f06c7ba618e16
+ languageName: node
+ linkType: hard
+
+"file-entry-cache@npm:^6.0.1":
+ version: 6.0.1
+ resolution: "file-entry-cache@npm:6.0.1"
+ dependencies:
+ flat-cache: "npm:^3.0.4"
+ checksum: 10c0/58473e8a82794d01b38e5e435f6feaf648e3f36fdb3a56e98f417f4efae71ad1c0d4ebd8a9a7c50c3ad085820a93fc7494ad721e0e4ebc1da3573f4e1c3c7cdd
+ languageName: node
+ linkType: hard
+
+"fill-range@npm:^7.1.1":
+ version: 7.1.1
+ resolution: "fill-range@npm:7.1.1"
+ dependencies:
+ to-regex-range: "npm:^5.0.1"
+ checksum: 10c0/b75b691bbe065472f38824f694c2f7449d7f5004aa950426a2c28f0306c60db9b880c0b0e4ed819997ffb882d1da02cfcfc819bddc94d71627f5269682edf018
+ languageName: node
+ linkType: hard
+
+"finalhandler@npm:1.1.2":
+ version: 1.1.2
+ resolution: "finalhandler@npm:1.1.2"
+ dependencies:
+ debug: "npm:2.6.9"
+ encodeurl: "npm:~1.0.2"
+ escape-html: "npm:~1.0.3"
+ on-finished: "npm:~2.3.0"
+ parseurl: "npm:~1.3.3"
+ statuses: "npm:~1.5.0"
+ unpipe: "npm:~1.0.0"
+ checksum: 10c0/6a96e1f5caab085628c11d9fdceb82ba608d5e426c6913d4d918409baa271037a47f28fbba73279e8ad614f0b8fa71ea791d265e408d760793829edd8c2f4584
+ languageName: node
+ linkType: hard
+
+"find-cache-dir@npm:^2.0.0":
+ version: 2.1.0
+ resolution: "find-cache-dir@npm:2.1.0"
+ dependencies:
+ commondir: "npm:^1.0.1"
+ make-dir: "npm:^2.0.0"
+ pkg-dir: "npm:^3.0.0"
+ checksum: 10c0/556117fd0af14eb88fb69250f4bba9e905e7c355c6136dff0e161b9cbd1f5285f761b778565a278da73a130f42eccc723d7ad4c002ae547ed1d698d39779dabb
+ languageName: node
+ linkType: hard
+
+"find-up@npm:^2.0.0":
+ version: 2.1.0
+ resolution: "find-up@npm:2.1.0"
+ dependencies:
+ locate-path: "npm:^2.0.0"
+ checksum: 10c0/c080875c9fe28eb1962f35cbe83c683796a0321899f1eed31a37577800055539815de13d53495049697d3ba313013344f843bb9401dd337a1b832be5edfc6840
+ languageName: node
+ linkType: hard
+
+"find-up@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "find-up@npm:3.0.0"
+ dependencies:
+ locate-path: "npm:^3.0.0"
+ checksum: 10c0/2c2e7d0a26db858e2f624f39038c74739e38306dee42b45f404f770db357947be9d0d587f1cac72d20c114deb38aa57316e879eb0a78b17b46da7dab0a3bd6e3
+ languageName: node
+ linkType: hard
+
+"find-up@npm:^4.0.0, find-up@npm:^4.1.0":
+ version: 4.1.0
+ resolution: "find-up@npm:4.1.0"
+ dependencies:
+ locate-path: "npm:^5.0.0"
+ path-exists: "npm:^4.0.0"
+ checksum: 10c0/0406ee89ebeefa2d507feb07ec366bebd8a6167ae74aa4e34fb4c4abd06cf782a3ce26ae4194d70706f72182841733f00551c209fe575cb00bd92104056e78c1
+ languageName: node
+ linkType: hard
+
+"find-up@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "find-up@npm:5.0.0"
+ dependencies:
+ locate-path: "npm:^6.0.0"
+ path-exists: "npm:^4.0.0"
+ checksum: 10c0/062c5a83a9c02f53cdd6d175a37ecf8f87ea5bbff1fdfb828f04bfa021441bc7583e8ebc0872a4c1baab96221fb8a8a275a19809fb93fbc40bd69ec35634069a
+ languageName: node
+ linkType: hard
+
+"flat-cache@npm:^3.0.4":
+ version: 3.2.0
+ resolution: "flat-cache@npm:3.2.0"
+ dependencies:
+ flatted: "npm:^3.2.9"
+ keyv: "npm:^4.5.3"
+ rimraf: "npm:^3.0.2"
+ checksum: 10c0/b76f611bd5f5d68f7ae632e3ae503e678d205cf97a17c6ab5b12f6ca61188b5f1f7464503efae6dc18683ed8f0b41460beb48ac4b9ac63fe6201296a91ba2f75
+ languageName: node
+ linkType: hard
+
+"flatted@npm:^3.2.9":
+ version: 3.4.2
+ resolution: "flatted@npm:3.4.2"
+ checksum: 10c0/a65b67aae7172d6cdf63691be7de6c5cd5adbdfdfe2e9da1a09b617c9512ed794037741ee53d93114276bff3f93cd3b0d97d54f9b316e1e4885dde6e9ffdf7ed
+ languageName: node
+ linkType: hard
+
+"flow-enums-runtime@npm:^0.0.6":
+ version: 0.0.6
+ resolution: "flow-enums-runtime@npm:0.0.6"
+ checksum: 10c0/f0b9ca52dbf9cf30264ebf1af034ac7b80fb5e5ef009efc789b89a90aa17349a3ff5672b3b27c6eb89d5e02808fc0dfb7effbfc5a793451694d6cce48774d51e
+ languageName: node
+ linkType: hard
+
+"flow-parser@npm:0.*":
+ version: 0.311.0
+ resolution: "flow-parser@npm:0.311.0"
+ checksum: 10c0/954f7d6a8091947ef85001ca5cbacdaa2109adcd9200fc804e2634e13b54a676b16a9cd5f02ccb046eda44479384cd40d68f7fa6b7bde9b129b61858128a85dc
+ languageName: node
+ linkType: hard
+
+"for-each@npm:^0.3.3, for-each@npm:^0.3.5":
+ version: 0.3.5
+ resolution: "for-each@npm:0.3.5"
+ dependencies:
+ is-callable: "npm:^1.2.7"
+ checksum: 10c0/0e0b50f6a843a282637d43674d1fb278dda1dd85f4f99b640024cfb10b85058aac0cc781bf689d5fe50b4b7f638e91e548560723a4e76e04fe96ae35ef039cee
+ languageName: node
+ linkType: hard
+
+"form-data-encoder@npm:^2.1.2":
+ version: 2.1.4
+ resolution: "form-data-encoder@npm:2.1.4"
+ checksum: 10c0/4c06ae2b79ad693a59938dc49ebd020ecb58e4584860a90a230f80a68b026483b022ba5e4143cff06ae5ac8fd446a0b500fabc87bbac3d1f62f2757f8dabcaf7
+ languageName: node
+ linkType: hard
+
+"formdata-polyfill@npm:^4.0.10":
+ version: 4.0.10
+ resolution: "formdata-polyfill@npm:4.0.10"
+ dependencies:
+ fetch-blob: "npm:^3.1.2"
+ checksum: 10c0/5392ec484f9ce0d5e0d52fb5a78e7486637d516179b0eb84d81389d7eccf9ca2f663079da56f761355c0a65792810e3b345dc24db9a8bbbcf24ef3c8c88570c6
+ languageName: node
+ linkType: hard
+
+"fresh@npm:~0.5.2":
+ version: 0.5.2
+ resolution: "fresh@npm:0.5.2"
+ checksum: 10c0/c6d27f3ed86cc5b601404822f31c900dd165ba63fff8152a3ef714e2012e7535027063bc67ded4cb5b3a49fa596495d46cacd9f47d6328459cf570f08b7d9e5a
+ languageName: node
+ linkType: hard
+
+"fs-extra@npm:^10.1.0":
+ version: 10.1.0
+ resolution: "fs-extra@npm:10.1.0"
+ dependencies:
+ graceful-fs: "npm:^4.2.0"
+ jsonfile: "npm:^6.0.1"
+ universalify: "npm:^2.0.0"
+ checksum: 10c0/5f579466e7109719d162a9249abbeffe7f426eb133ea486e020b89bc6d67a741134076bf439983f2eb79276ceaf6bd7b7c1e43c3fd67fe889863e69072fb0a5e
+ languageName: node
+ linkType: hard
+
+"fs-extra@npm:^11.0.0":
+ version: 11.3.4
+ resolution: "fs-extra@npm:11.3.4"
+ dependencies:
+ graceful-fs: "npm:^4.2.0"
+ jsonfile: "npm:^6.0.1"
+ universalify: "npm:^2.0.0"
+ checksum: 10c0/e08276f767a62496ae97d711aaa692c6a478177f24a85979b6a2881c9db9c68b8c2ad5da0bcf92c0b2a474cea6e935ec245656441527958fd8372cb647087df0
+ languageName: node
+ linkType: hard
+
+"fs-extra@npm:~11.3.0":
+ version: 11.3.6
+ resolution: "fs-extra@npm:11.3.6"
+ dependencies:
+ graceful-fs: "npm:^4.2.0"
+ jsonfile: "npm:^6.0.1"
+ universalify: "npm:^2.0.0"
+ checksum: 10c0/191c96bf71519fe08595f7920b6e568f6e44b48ed968624f35cb3bb7f4f9b05718b99cd6bf81938c0f7b1daa6d151383c33e0cbfdfe4d95419d7ea121de8e91a
+ languageName: node
+ linkType: hard
+
+"fs.realpath@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "fs.realpath@npm:1.0.0"
+ checksum: 10c0/444cf1291d997165dfd4c0d58b69f0e4782bfd9149fd72faa4fe299e68e0e93d6db941660b37dd29153bf7186672ececa3b50b7e7249477b03fdf850f287c948
+ languageName: node
+ linkType: hard
+
+"fsevents@npm:^2.3.2":
+ version: 2.3.3
+ resolution: "fsevents@npm:2.3.3"
+ dependencies:
+ node-gyp: "npm:latest"
+ checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60
+ conditions: os=darwin
+ languageName: node
+ linkType: hard
+
+"fsevents@patch:fsevents@npm%3A^2.3.2#optional!builtin":
+ version: 2.3.3
+ resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1"
+ dependencies:
+ node-gyp: "npm:latest"
+ conditions: os=darwin
+ languageName: node
+ linkType: hard
+
+"function-bind@npm:^1.1.2":
+ version: 1.1.2
+ resolution: "function-bind@npm:1.1.2"
+ checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5
+ languageName: node
+ linkType: hard
+
+"function.prototype.name@npm:^1.1.6, function.prototype.name@npm:^1.1.8":
+ version: 1.1.8
+ resolution: "function.prototype.name@npm:1.1.8"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.3"
+ define-properties: "npm:^1.2.1"
+ functions-have-names: "npm:^1.2.3"
+ hasown: "npm:^2.0.2"
+ is-callable: "npm:^1.2.7"
+ checksum: 10c0/e920a2ab52663005f3cbe7ee3373e3c71c1fb5558b0b0548648cdf3e51961085032458e26c71ff1a8c8c20e7ee7caeb03d43a5d1fa8610c459333323a2e71253
+ languageName: node
+ linkType: hard
+
+"functions-have-names@npm:^1.2.3":
+ version: 1.2.3
+ resolution: "functions-have-names@npm:1.2.3"
+ checksum: 10c0/33e77fd29bddc2d9bb78ab3eb854c165909201f88c75faa8272e35899e2d35a8a642a15e7420ef945e1f64a9670d6aa3ec744106b2aa42be68ca5114025954ca
+ languageName: node
+ linkType: hard
+
+"generator-function@npm:^2.0.0":
+ version: 2.0.1
+ resolution: "generator-function@npm:2.0.1"
+ checksum: 10c0/8a9f59df0f01cfefafdb3b451b80555e5cf6d76487095db91ac461a0e682e4ff7a9dbce15f4ecec191e53586d59eece01949e05a4b4492879600bbbe8e28d6b8
+ languageName: node
+ linkType: hard
+
+"gensync@npm:^1.0.0-beta.2":
+ version: 1.0.0-beta.2
+ resolution: "gensync@npm:1.0.0-beta.2"
+ checksum: 10c0/782aba6cba65b1bb5af3b095d96249d20edbe8df32dbf4696fd49be2583faf676173bf4809386588828e4dd76a3354fcbeb577bab1c833ccd9fc4577f26103f8
+ languageName: node
+ linkType: hard
+
+"get-caller-file@npm:^2.0.5":
+ version: 2.0.5
+ resolution: "get-caller-file@npm:2.0.5"
+ checksum: 10c0/c6c7b60271931fa752aeb92f2b47e355eac1af3a2673f47c9589e8f8a41adc74d45551c1bc57b5e66a80609f10ffb72b6f575e4370d61cc3f7f3aaff01757cde
+ languageName: node
+ linkType: hard
+
+"get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6, get-intrinsic@npm:^1.2.7, get-intrinsic@npm:^1.3.0":
+ version: 1.3.0
+ resolution: "get-intrinsic@npm:1.3.0"
+ dependencies:
+ call-bind-apply-helpers: "npm:^1.0.2"
+ es-define-property: "npm:^1.0.1"
+ es-errors: "npm:^1.3.0"
+ es-object-atoms: "npm:^1.1.1"
+ function-bind: "npm:^1.1.2"
+ get-proto: "npm:^1.0.1"
+ gopd: "npm:^1.2.0"
+ has-symbols: "npm:^1.1.0"
+ hasown: "npm:^2.0.2"
+ math-intrinsics: "npm:^1.1.0"
+ checksum: 10c0/52c81808af9a8130f581e6a6a83e1ba4a9f703359e7a438d1369a5267a25412322f03dcbd7c549edaef0b6214a0630a28511d7df0130c93cfd380f4fa0b5b66a
+ languageName: node
+ linkType: hard
+
+"get-package-type@npm:^0.1.0":
+ version: 0.1.0
+ resolution: "get-package-type@npm:0.1.0"
+ checksum: 10c0/e34cdf447fdf1902a1f6d5af737eaadf606d2ee3518287abde8910e04159368c268568174b2e71102b87b26c2020486f126bfca9c4fb1ceb986ff99b52ecd1be
+ languageName: node
+ linkType: hard
+
+"get-pkg-repo@npm:^4.0.0":
+ version: 4.2.1
+ resolution: "get-pkg-repo@npm:4.2.1"
+ dependencies:
+ "@hutson/parse-repository-url": "npm:^3.0.0"
+ hosted-git-info: "npm:^4.0.0"
+ through2: "npm:^2.0.0"
+ yargs: "npm:^16.2.0"
+ bin:
+ get-pkg-repo: src/cli.js
+ checksum: 10c0/1338d2e048a594da4a34e7dd69d909376d72784f5ba50963a242b4b35db77533786f618b3f6a9effdee2af20af4917a3b7cf12533b4575d7f9c163886be1fb62
+ languageName: node
+ linkType: hard
+
+"get-proto@npm:^1.0.0, get-proto@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "get-proto@npm:1.0.1"
+ dependencies:
+ dunder-proto: "npm:^1.0.1"
+ es-object-atoms: "npm:^1.0.0"
+ checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c
+ languageName: node
+ linkType: hard
+
+"get-stream@npm:^5.0.0":
+ version: 5.2.0
+ resolution: "get-stream@npm:5.2.0"
+ dependencies:
+ pump: "npm:^3.0.0"
+ checksum: 10c0/43797ffd815fbb26685bf188c8cfebecb8af87b3925091dd7b9a9c915993293d78e3c9e1bce125928ff92f2d0796f3889b92b5ec6d58d1041b574682132e0a80
+ languageName: node
+ linkType: hard
+
+"get-stream@npm:^6.0.0, get-stream@npm:^6.0.1":
+ version: 6.0.1
+ resolution: "get-stream@npm:6.0.1"
+ checksum: 10c0/49825d57d3fd6964228e6200a58169464b8e8970489b3acdc24906c782fb7f01f9f56f8e6653c4a50713771d6658f7cfe051e5eb8c12e334138c9c918b296341
+ languageName: node
+ linkType: hard
+
+"get-symbol-description@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "get-symbol-description@npm:1.1.0"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ es-errors: "npm:^1.3.0"
+ get-intrinsic: "npm:^1.2.6"
+ checksum: 10c0/d6a7d6afca375779a4b307738c9e80dbf7afc0bdbe5948768d54ab9653c865523d8920e670991a925936eb524b7cb6a6361d199a760b21d0ca7620194455aa4b
+ languageName: node
+ linkType: hard
+
+"get-uri@npm:^6.0.1":
+ version: 6.0.5
+ resolution: "get-uri@npm:6.0.5"
+ dependencies:
+ basic-ftp: "npm:^5.0.2"
+ data-uri-to-buffer: "npm:^6.0.2"
+ debug: "npm:^4.3.4"
+ checksum: 10c0/c7ff5d5d55de53d23ecce7c5108cc3ed0db1174db43c9aa15506d640283d36ee0956fd8ba1fc50b06a718466cc85794ae9d8860193f91318afe846e3e7010f3a
+ languageName: node
+ linkType: hard
+
+"git-raw-commits@npm:^2.0.11, git-raw-commits@npm:^2.0.8":
+ version: 2.0.11
+ resolution: "git-raw-commits@npm:2.0.11"
+ dependencies:
+ dargs: "npm:^7.0.0"
+ lodash: "npm:^4.17.15"
+ meow: "npm:^8.0.0"
+ split2: "npm:^3.0.0"
+ through2: "npm:^4.0.0"
+ bin:
+ git-raw-commits: cli.js
+ checksum: 10c0/c9cee7ce11a6703098f028d7e47986d5d3e4147d66640086734d6ee2472296b8711f91b40ad458e95acac1bc33cf2898059f1dc890f91220ff89c5fcc609ab64
+ languageName: node
+ linkType: hard
+
+"git-remote-origin-url@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "git-remote-origin-url@npm:2.0.0"
+ dependencies:
+ gitconfiglocal: "npm:^1.0.0"
+ pify: "npm:^2.3.0"
+ checksum: 10c0/3a846ce98ed36b2d0b801e8ec1ab299a236cfc6fa264bfdf9f42301abfdfd8715c946507fd83a10b9db449eb609ac6f8a2a341daf52e3af0000367487f486355
+ languageName: node
+ linkType: hard
+
+"git-semver-tags@npm:^4.1.1":
+ version: 4.1.1
+ resolution: "git-semver-tags@npm:4.1.1"
+ dependencies:
+ meow: "npm:^8.0.0"
+ semver: "npm:^6.0.0"
+ bin:
+ git-semver-tags: cli.js
+ checksum: 10c0/cd8c91c666901f8dd6381f4cef2aec32aa3f39e517bd8d8491f9133adf956dde9e0487d510fa0f12042fa474f21a8a88b4aa56db8b473979c7491109c57b7016
+ languageName: node
+ linkType: hard
+
+"git-up@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "git-up@npm:7.0.0"
+ dependencies:
+ is-ssh: "npm:^1.4.0"
+ parse-url: "npm:^8.1.0"
+ checksum: 10c0/a3fa02e1a63c7c824b5ebbf23f4a9a6b34dd80031114c5dd8adb7ef53493642e39d3d80dfef4025a452128400c35c2c138d20a0f6ae5d7d7ef70d9ba13083d34
+ languageName: node
+ linkType: hard
+
+"git-url-parse@npm:13.1.0":
+ version: 13.1.0
+ resolution: "git-url-parse@npm:13.1.0"
+ dependencies:
+ git-up: "npm:^7.0.0"
+ checksum: 10c0/2ef6126c42d999e240dbcdf1e96172cf7a2044ffa1ef78a518acf823df9bbe2a1ea9e6b443d42948e3c581e4d899559afc4c1de024b3eaa8eb6a4229f73285aa
+ languageName: node
+ linkType: hard
+
+"gitconfiglocal@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "gitconfiglocal@npm:1.0.0"
+ dependencies:
+ ini: "npm:^1.3.2"
+ checksum: 10c0/cfcb16344834113199f209f2758ced778dc30e075ddb49b5dde659b4dd2deadee824db0a1b77e1303cb594d9e8b2240da18c67705f657aa76affb444aa349005
+ languageName: node
+ linkType: hard
+
+"glob-parent@npm:^5.1.2":
+ version: 5.1.2
+ resolution: "glob-parent@npm:5.1.2"
+ dependencies:
+ is-glob: "npm:^4.0.1"
+ checksum: 10c0/cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee
+ languageName: node
+ linkType: hard
+
+"glob-parent@npm:^6.0.2":
+ version: 6.0.2
+ resolution: "glob-parent@npm:6.0.2"
+ dependencies:
+ is-glob: "npm:^4.0.3"
+ checksum: 10c0/317034d88654730230b3f43bb7ad4f7c90257a426e872ea0bf157473ac61c99bf5d205fad8f0185f989be8d2fa6d3c7dce1645d99d545b6ea9089c39f838e7f8
+ languageName: node
+ linkType: hard
+
+"glob@npm:^7.0.0, glob@npm:^7.1.1, glob@npm:^7.1.3, glob@npm:^7.1.4":
+ version: 7.2.3
+ resolution: "glob@npm:7.2.3"
+ dependencies:
+ fs.realpath: "npm:^1.0.0"
+ inflight: "npm:^1.0.4"
+ inherits: "npm:2"
+ minimatch: "npm:^3.1.1"
+ once: "npm:^1.3.0"
+ path-is-absolute: "npm:^1.0.0"
+ checksum: 10c0/65676153e2b0c9095100fe7f25a778bf45608eeb32c6048cf307f579649bcc30353277b3b898a3792602c65764e5baa4f643714dfbdfd64ea271d210c7a425fe
+ languageName: node
+ linkType: hard
+
+"glob@npm:^8.0.3":
+ version: 8.1.0
+ resolution: "glob@npm:8.1.0"
+ dependencies:
+ fs.realpath: "npm:^1.0.0"
+ inflight: "npm:^1.0.4"
+ inherits: "npm:2"
+ minimatch: "npm:^5.0.1"
+ once: "npm:^1.3.0"
+ checksum: 10c0/cb0b5cab17a59c57299376abe5646c7070f8acb89df5595b492dba3bfb43d301a46c01e5695f01154e6553168207cb60d4eaf07d3be4bc3eb9b0457c5c561d0f
+ languageName: node
+ linkType: hard
+
+"global-dirs@npm:^0.1.1":
+ version: 0.1.1
+ resolution: "global-dirs@npm:0.1.1"
+ dependencies:
+ ini: "npm:^1.3.4"
+ checksum: 10c0/3608072e58962396c124ad5a1cfb3f99ee76c998654a3432d82977b3c3eeb09dc8a5a2a9849b2b8113906c8d0aad89ce362c22e97cec5fe34405bbf4f3cdbe7a
+ languageName: node
+ linkType: hard
+
+"global-dirs@npm:^3.0.0":
+ version: 3.0.1
+ resolution: "global-dirs@npm:3.0.1"
+ dependencies:
+ ini: "npm:2.0.0"
+ checksum: 10c0/ef65e2241a47ff978f7006a641302bc7f4c03dfb98783d42bf7224c136e3a06df046e70ee3a010cf30214114755e46c9eb5eb1513838812fbbe0d92b14c25080
+ languageName: node
+ linkType: hard
+
+"globals@npm:^13.19.0":
+ version: 13.24.0
+ resolution: "globals@npm:13.24.0"
+ dependencies:
+ type-fest: "npm:^0.20.2"
+ checksum: 10c0/d3c11aeea898eb83d5ec7a99508600fbe8f83d2cf00cbb77f873dbf2bcb39428eff1b538e4915c993d8a3b3473fa71eeebfe22c9bb3a3003d1e26b1f2c8a42cd
+ languageName: node
+ linkType: hard
+
+"globalthis@npm:^1.0.4":
+ version: 1.0.4
+ resolution: "globalthis@npm:1.0.4"
+ dependencies:
+ define-properties: "npm:^1.2.1"
+ gopd: "npm:^1.0.1"
+ checksum: 10c0/9d156f313af79d80b1566b93e19285f481c591ad6d0d319b4be5e03750d004dde40a39a0f26f7e635f9007a3600802f53ecd85a759b86f109e80a5f705e01846
+ languageName: node
+ linkType: hard
+
+"globby@npm:13.1.4":
+ version: 13.1.4
+ resolution: "globby@npm:13.1.4"
+ dependencies:
+ dir-glob: "npm:^3.0.1"
+ fast-glob: "npm:^3.2.11"
+ ignore: "npm:^5.2.0"
+ merge2: "npm:^1.4.1"
+ slash: "npm:^4.0.0"
+ checksum: 10c0/cbf4ce32ea7fba37be8c4749a2f69c2803b70a57e40a968b57343cc74daced8c87a7cdea038f69eda95fe17df8ebf75346d18e188c2bc4948f081bbbc655c323
+ languageName: node
+ linkType: hard
+
+"globby@npm:^11.0.1, globby@npm:^11.1.0":
+ version: 11.1.0
+ resolution: "globby@npm:11.1.0"
+ dependencies:
+ array-union: "npm:^2.1.0"
+ dir-glob: "npm:^3.0.1"
+ fast-glob: "npm:^3.2.9"
+ ignore: "npm:^5.2.0"
+ merge2: "npm:^1.4.1"
+ slash: "npm:^3.0.0"
+ checksum: 10c0/b39511b4afe4bd8a7aead3a27c4ade2b9968649abab0a6c28b1a90141b96ca68ca5db1302f7c7bd29eab66bf51e13916b8e0a3d0ac08f75e1e84a39b35691189
+ languageName: node
+ linkType: hard
+
+"gopd@npm:^1.0.1, gopd@npm:^1.2.0":
+ version: 1.2.0
+ resolution: "gopd@npm:1.2.0"
+ checksum: 10c0/50fff1e04ba2b7737c097358534eacadad1e68d24cccee3272e04e007bed008e68d2614f3987788428fd192a5ae3889d08fb2331417e4fc4a9ab366b2043cead
+ languageName: node
+ linkType: hard
+
+"got@npm:12.6.1, got@npm:^12.1.0":
+ version: 12.6.1
+ resolution: "got@npm:12.6.1"
+ dependencies:
+ "@sindresorhus/is": "npm:^5.2.0"
+ "@szmarczak/http-timer": "npm:^5.0.1"
+ cacheable-lookup: "npm:^7.0.0"
+ cacheable-request: "npm:^10.2.8"
+ decompress-response: "npm:^6.0.0"
+ form-data-encoder: "npm:^2.1.2"
+ get-stream: "npm:^6.0.1"
+ http2-wrapper: "npm:^2.1.10"
+ lowercase-keys: "npm:^3.0.0"
+ p-cancelable: "npm:^3.0.0"
+ responselike: "npm:^3.0.0"
+ checksum: 10c0/2fe97fcbd7a9ffc7c2d0ecf59aca0a0562e73a7749cadada9770eeb18efbdca3086262625fb65590594edc220a1eca58fab0d26b0c93c2f9a008234da71ca66b
+ languageName: node
+ linkType: hard
+
+"graceful-fs@npm:4.2.10":
+ version: 4.2.10
+ resolution: "graceful-fs@npm:4.2.10"
+ checksum: 10c0/4223a833e38e1d0d2aea630c2433cfb94ddc07dfc11d511dbd6be1d16688c5be848acc31f9a5d0d0ddbfb56d2ee5a6ae0278aceeb0ca6a13f27e06b9956fb952
+ languageName: node
+ linkType: hard
+
+"graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9":
+ version: 4.2.11
+ resolution: "graceful-fs@npm:4.2.11"
+ checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2
+ languageName: node
+ linkType: hard
+
+"graphemer@npm:1.4.0, graphemer@npm:^1.4.0":
+ version: 1.4.0
+ resolution: "graphemer@npm:1.4.0"
+ checksum: 10c0/e951259d8cd2e0d196c72ec711add7115d42eb9a8146c8eeda5b8d3ac91e5dd816b9cd68920726d9fd4490368e7ed86e9c423f40db87e2d8dfafa00fa17c3a31
+ languageName: node
+ linkType: hard
+
+"handlebars@npm:^4.7.7":
+ version: 4.7.9
+ resolution: "handlebars@npm:4.7.9"
+ dependencies:
+ minimist: "npm:^1.2.5"
+ neo-async: "npm:^2.6.2"
+ source-map: "npm:^0.6.1"
+ uglify-js: "npm:^3.1.4"
+ wordwrap: "npm:^1.0.0"
+ dependenciesMeta:
+ uglify-js:
+ optional: true
+ bin:
+ handlebars: bin/handlebars
+ checksum: 10c0/22f8105a7e68e81aff2662bb434edf05f757d21d850731d71cec886d69c10cd33d3c43e34b2892968ec62de8241611851d3d0674c8ef324ea3e01dc66262faa9
+ languageName: node
+ linkType: hard
+
+"hard-rejection@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "hard-rejection@npm:2.1.0"
+ checksum: 10c0/febc3343a1ad575aedcc112580835b44a89a89e01f400b4eda6e8110869edfdab0b00cd1bd4c3bfec9475a57e79e0b355aecd5be46454b6a62b9a359af60e564
+ languageName: node
+ linkType: hard
+
+"has-bigints@npm:^1.0.2":
+ version: 1.1.0
+ resolution: "has-bigints@npm:1.1.0"
+ checksum: 10c0/2de0cdc4a1ccf7a1e75ffede1876994525ac03cc6f5ae7392d3415dd475cd9eee5bceec63669ab61aa997ff6cceebb50ef75561c7002bed8988de2b9d1b40788
+ languageName: node
+ linkType: hard
+
+"has-flag@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "has-flag@npm:4.0.0"
+ checksum: 10c0/2e789c61b7888d66993e14e8331449e525ef42aac53c627cc53d1c3334e768bcb6abdc4f5f0de1478a25beec6f0bd62c7549058b7ac53e924040d4f301f02fd1
+ languageName: node
+ linkType: hard
+
+"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "has-property-descriptors@npm:1.0.2"
+ dependencies:
+ es-define-property: "npm:^1.0.0"
+ checksum: 10c0/253c1f59e80bb476cf0dde8ff5284505d90c3bdb762983c3514d36414290475fe3fd6f574929d84de2a8eec00d35cf07cb6776205ff32efd7c50719125f00236
+ languageName: node
+ linkType: hard
+
+"has-proto@npm:^1.2.0":
+ version: 1.2.0
+ resolution: "has-proto@npm:1.2.0"
+ dependencies:
+ dunder-proto: "npm:^1.0.0"
+ checksum: 10c0/46538dddab297ec2f43923c3d35237df45d8c55a6fc1067031e04c13ed8a9a8f94954460632fd4da84c31a1721eefee16d901cbb1ae9602bab93bb6e08f93b95
+ languageName: node
+ linkType: hard
+
+"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "has-symbols@npm:1.1.0"
+ checksum: 10c0/dde0a734b17ae51e84b10986e651c664379018d10b91b6b0e9b293eddb32f0f069688c841fb40f19e9611546130153e0a2a48fd7f512891fb000ddfa36f5a20e
+ languageName: node
+ linkType: hard
+
+"has-tostringtag@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "has-tostringtag@npm:1.0.2"
+ dependencies:
+ has-symbols: "npm:^1.0.3"
+ checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c
+ languageName: node
+ linkType: hard
+
+"has-yarn@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "has-yarn@npm:3.0.0"
+ checksum: 10c0/38c76618cb764e4a98ea114a3938e0bed6ceafb6bacab2ffb32e7c7d1e18b5e09cd03387d507ee87072388e1f20b1f80947fee62c41fc450edfbbdc02a665787
+ languageName: node
+ linkType: hard
+
+"hasown@npm:^2.0.2":
+ version: 2.0.3
+ resolution: "hasown@npm:2.0.3"
+ dependencies:
+ function-bind: "npm:^1.1.2"
+ checksum: 10c0/f5eb28c3fd0d3e4facd821c1eeee3836c37b70ab0b0fc532e8a39976e18fef43652415dadc52f8c7a5ff6d5ac93b7bef128789aa6f90f4e9b9a9083dce74ab38
+ languageName: node
+ linkType: hard
+
+"hermes-estree@npm:0.23.1":
+ version: 0.23.1
+ resolution: "hermes-estree@npm:0.23.1"
+ checksum: 10c0/59ca9f3980419fcf511a172f0ee9960d86c8ba44ea8bc13d3bd0b6208e9540db1a0a9e46b0e797151f11b0e8e33b2bf850907aef4a5c9ac42c53809cefefc405
+ languageName: node
+ linkType: hard
+
+"hermes-estree@npm:0.25.1":
+ version: 0.25.1
+ resolution: "hermes-estree@npm:0.25.1"
+ checksum: 10c0/48be3b2fa37a0cbc77a112a89096fa212f25d06de92781b163d67853d210a8a5c3784fac23d7d48335058f7ed283115c87b4332c2a2abaaccc76d0ead1a282ac
+ languageName: node
+ linkType: hard
+
+"hermes-estree@npm:0.28.1":
+ version: 0.28.1
+ resolution: "hermes-estree@npm:0.28.1"
+ checksum: 10c0/aa00f437c82099b9043e384b529c75de21d0111b792ab7480fe992975b5f9535a8581664789db197824a7825ea66d2fd70eb20cb568c5315804421deaf009500
+ languageName: node
+ linkType: hard
+
+"hermes-parser@npm:0.23.1":
+ version: 0.23.1
+ resolution: "hermes-parser@npm:0.23.1"
+ dependencies:
+ hermes-estree: "npm:0.23.1"
+ checksum: 10c0/56907e6136d2297543922dd9f8ee27378ef010c11dc1e0b4a0866faab2c527613b0edcda5e1ebc0daa0ca1ae6528734dfc479e18267aabe4dce0c7198217fd97
+ languageName: node
+ linkType: hard
+
+"hermes-parser@npm:0.25.1":
+ version: 0.25.1
+ resolution: "hermes-parser@npm:0.25.1"
+ dependencies:
+ hermes-estree: "npm:0.25.1"
+ checksum: 10c0/3abaa4c6f1bcc25273f267297a89a4904963ea29af19b8e4f6eabe04f1c2c7e9abd7bfc4730ddb1d58f2ea04b6fee74053d8bddb5656ec6ebf6c79cc8d14202c
+ languageName: node
+ linkType: hard
+
+"hermes-parser@npm:0.28.1":
+ version: 0.28.1
+ resolution: "hermes-parser@npm:0.28.1"
+ dependencies:
+ hermes-estree: "npm:0.28.1"
+ checksum: 10c0/c6d3c01fb1ea5232f4587b6b038f5c2c6414932e7c48efbe156ab160e2bcaac818c9eb2f828f30967a24b40f543cad503baed0eedf5a7e877852ed271915981f
+ languageName: node
+ linkType: hard
+
+"hosted-git-info@npm:^2.1.4":
+ version: 2.8.9
+ resolution: "hosted-git-info@npm:2.8.9"
+ checksum: 10c0/317cbc6b1bbbe23c2a40ae23f3dafe9fa349ce42a89a36f930e3f9c0530c179a3882d2ef1e4141a4c3674d6faaea862138ec55b43ad6f75e387fda2483a13c70
+ languageName: node
+ linkType: hard
+
+"hosted-git-info@npm:^4.0.0, hosted-git-info@npm:^4.0.1":
+ version: 4.1.0
+ resolution: "hosted-git-info@npm:4.1.0"
+ dependencies:
+ lru-cache: "npm:^6.0.0"
+ checksum: 10c0/150fbcb001600336d17fdbae803264abed013548eea7946c2264c49ebe2ebd8c4441ba71dd23dd8e18c65de79d637f98b22d4760ba5fb2e0b15d62543d0fff07
+ languageName: node
+ linkType: hard
+
+"html-escaper@npm:^2.0.0":
+ version: 2.0.2
+ resolution: "html-escaper@npm:2.0.2"
+ checksum: 10c0/208e8a12de1a6569edbb14544f4567e6ce8ecc30b9394fcaa4e7bb1e60c12a7c9a1ed27e31290817157e8626f3a4f29e76c8747030822eb84a6abb15c255f0a0
+ languageName: node
+ linkType: hard
+
+"http-cache-semantics@npm:^4.1.1":
+ version: 4.2.0
+ resolution: "http-cache-semantics@npm:4.2.0"
+ checksum: 10c0/45b66a945cf13ec2d1f29432277201313babf4a01d9e52f44b31ca923434083afeca03f18417f599c9ab3d0e7b618ceb21257542338b57c54b710463b4a53e37
+ languageName: node
+ linkType: hard
+
+"http-errors@npm:~2.0.1":
+ version: 2.0.1
+ resolution: "http-errors@npm:2.0.1"
+ dependencies:
+ depd: "npm:~2.0.0"
+ inherits: "npm:~2.0.4"
+ setprototypeof: "npm:~1.2.0"
+ statuses: "npm:~2.0.2"
+ toidentifier: "npm:~1.0.1"
+ checksum: 10c0/fb38906cef4f5c83952d97661fe14dc156cb59fe54812a42cd448fa57b5c5dfcb38a40a916957737bd6b87aab257c0648d63eb5b6a9ca9f548e105b6072712d4
+ languageName: node
+ linkType: hard
+
+"http-proxy-agent@npm:^7.0.0":
+ version: 7.0.2
+ resolution: "http-proxy-agent@npm:7.0.2"
+ dependencies:
+ agent-base: "npm:^7.1.0"
+ debug: "npm:^4.3.4"
+ checksum: 10c0/4207b06a4580fb85dd6dff521f0abf6db517489e70863dca1a0291daa7f2d3d2d6015a57bd702af068ea5cf9f1f6ff72314f5f5b4228d299c0904135d2aef921
+ languageName: node
+ linkType: hard
+
+"http2-wrapper@npm:^2.1.10":
+ version: 2.2.1
+ resolution: "http2-wrapper@npm:2.2.1"
+ dependencies:
+ quick-lru: "npm:^5.1.1"
+ resolve-alpn: "npm:^1.2.0"
+ checksum: 10c0/7207201d3c6e53e72e510c9b8912e4f3e468d3ecc0cf3bf52682f2aac9cd99358b896d1da4467380adc151cf97c412bedc59dc13dae90c523f42053a7449eedb
+ languageName: node
+ linkType: hard
+
+"https-proxy-agent@npm:^7.0.0":
+ version: 7.0.6
+ resolution: "https-proxy-agent@npm:7.0.6"
+ dependencies:
+ agent-base: "npm:^7.1.2"
+ debug: "npm:4"
+ checksum: 10c0/f729219bc735edb621fa30e6e84e60ee5d00802b8247aac0d7b79b0bd6d4b3294737a337b93b86a0bd9e68099d031858a39260c976dc14cdbba238ba1f8779ac
+ languageName: node
+ linkType: hard
+
+"human-signals@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "human-signals@npm:1.1.1"
+ checksum: 10c0/18810ed239a7a5e23fb6c32d0fd4be75d7cd337a07ad59b8dbf0794cb0761e6e628349ee04c409e605fe55344716eab5d0a47a62ba2a2d0d367c89a2b4247b1e
+ languageName: node
+ linkType: hard
+
+"human-signals@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "human-signals@npm:2.1.0"
+ checksum: 10c0/695edb3edfcfe9c8b52a76926cd31b36978782062c0ed9b1192b36bebc75c4c87c82e178dfcb0ed0fc27ca59d434198aac0bd0be18f5781ded775604db22304a
+ languageName: node
+ linkType: hard
+
+"human-signals@npm:^4.3.0":
+ version: 4.3.1
+ resolution: "human-signals@npm:4.3.1"
+ checksum: 10c0/40498b33fe139f5cc4ef5d2f95eb1803d6318ac1b1c63eaf14eeed5484d26332c828de4a5a05676b6c83d7b9e57727c59addb4b1dea19cb8d71e83689e5b336c
+ languageName: node
+ linkType: hard
+
+"iconv-lite@npm:^0.4.24":
+ version: 0.4.24
+ resolution: "iconv-lite@npm:0.4.24"
+ dependencies:
+ safer-buffer: "npm:>= 2.1.2 < 3"
+ checksum: 10c0/c6886a24cc00f2a059767440ec1bc00d334a89f250db8e0f7feb4961c8727118457e27c495ba94d082e51d3baca378726cd110aaf7ded8b9bbfd6a44760cf1d4
+ languageName: node
+ linkType: hard
+
+"ieee754@npm:^1.1.13, ieee754@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "ieee754@npm:1.2.1"
+ checksum: 10c0/b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb
+ languageName: node
+ linkType: hard
+
+"ignore@npm:^5.0.5, ignore@npm:^5.2.0":
+ version: 5.3.2
+ resolution: "ignore@npm:5.3.2"
+ checksum: 10c0/f9f652c957983634ded1e7f02da3b559a0d4cc210fca3792cb67f1b153623c9c42efdc1c4121af171e295444459fc4a9201101fb041b1104a3c000bccb188337
+ languageName: node
+ linkType: hard
+
+"image-size@npm:^1.0.2":
+ version: 1.2.1
+ resolution: "image-size@npm:1.2.1"
+ dependencies:
+ queue: "npm:6.0.2"
+ bin:
+ image-size: bin/image-size.js
+ checksum: 10c0/f8b3c19d4476513f1d7e55c3e6db80997b315444743e2040d545cbcaee59be03d2eb40c46be949a8372697b7003fdb0c04925d704390a7f606bc8181e25c0ed4
+ languageName: node
+ linkType: hard
+
+"import-fresh@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "import-fresh@npm:2.0.0"
+ dependencies:
+ caller-path: "npm:^2.0.0"
+ resolve-from: "npm:^3.0.0"
+ checksum: 10c0/116c55ee5215a7839062285b60df85dbedde084c02111dc58c1b9d03ff7876627059f4beb16cdc090a3db21fea9022003402aa782139dc8d6302589038030504
+ languageName: node
+ linkType: hard
+
+"import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0":
+ version: 3.3.1
+ resolution: "import-fresh@npm:3.3.1"
+ dependencies:
+ parent-module: "npm:^1.0.0"
+ resolve-from: "npm:^4.0.0"
+ checksum: 10c0/bf8cc494872fef783249709385ae883b447e3eb09db0ebd15dcead7d9afe7224dad7bd7591c6b73b0b19b3c0f9640eb8ee884f01cfaf2887ab995b0b36a0cbec
+ languageName: node
+ linkType: hard
+
+"import-lazy@npm:^4.0.0, import-lazy@npm:~4.0.0":
+ version: 4.0.0
+ resolution: "import-lazy@npm:4.0.0"
+ checksum: 10c0/a3520313e2c31f25c0b06aa66d167f329832b68a4f957d7c9daf6e0fa41822b6e84948191648b9b9d8ca82f94740cdf15eecf2401a5b42cd1c33fd84f2225cca
+ languageName: node
+ linkType: hard
+
+"import-local@npm:^3.0.2":
+ version: 3.2.0
+ resolution: "import-local@npm:3.2.0"
+ dependencies:
+ pkg-dir: "npm:^4.2.0"
+ resolve-cwd: "npm:^3.0.0"
+ bin:
+ import-local-fixture: fixtures/cli.js
+ checksum: 10c0/94cd6367a672b7e0cb026970c85b76902d2710a64896fa6de93bd5c571dd03b228c5759308959de205083e3b1c61e799f019c9e36ee8e9c523b993e1057f0433
+ languageName: node
+ linkType: hard
+
+"imurmurhash@npm:^0.1.4":
+ version: 0.1.4
+ resolution: "imurmurhash@npm:0.1.4"
+ checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6
+ languageName: node
+ linkType: hard
+
+"indent-string@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "indent-string@npm:4.0.0"
+ checksum: 10c0/1e1904ddb0cb3d6cce7cd09e27a90184908b7a5d5c21b92e232c93579d314f0b83c246ffb035493d0504b1e9147ba2c9b21df0030f48673fba0496ecd698161f
+ languageName: node
+ linkType: hard
+
+"inflight@npm:^1.0.4":
+ version: 1.0.6
+ resolution: "inflight@npm:1.0.6"
+ dependencies:
+ once: "npm:^1.3.0"
+ wrappy: "npm:1"
+ checksum: 10c0/7faca22584600a9dc5b9fca2cd5feb7135ac8c935449837b315676b4c90aa4f391ec4f42240178244b5a34e8bede1948627fda392ca3191522fc46b34e985ab2
+ languageName: node
+ linkType: hard
+
+"inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3, inherits@npm:~2.0.4":
+ version: 2.0.4
+ resolution: "inherits@npm:2.0.4"
+ checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2
+ languageName: node
+ linkType: hard
+
+"ini@npm:2.0.0":
+ version: 2.0.0
+ resolution: "ini@npm:2.0.0"
+ checksum: 10c0/2e0c8f386369139029da87819438b20a1ff3fe58372d93fb1a86e9d9344125ace3a806b8ec4eb160a46e64cbc422fe68251869441676af49b7fc441af2389c25
+ languageName: node
+ linkType: hard
+
+"ini@npm:^1.3.2, ini@npm:^1.3.4, ini@npm:~1.3.0":
+ version: 1.3.8
+ resolution: "ini@npm:1.3.8"
+ checksum: 10c0/ec93838d2328b619532e4f1ff05df7909760b6f66d9c9e2ded11e5c1897d6f2f9980c54dd638f88654b00919ce31e827040631eab0a3969e4d1abefa0719516a
+ languageName: node
+ linkType: hard
+
+"inquirer@npm:9.2.6":
+ version: 9.2.6
+ resolution: "inquirer@npm:9.2.6"
+ dependencies:
+ ansi-escapes: "npm:^4.3.2"
+ chalk: "npm:^5.2.0"
+ cli-cursor: "npm:^3.1.0"
+ cli-width: "npm:^4.0.0"
+ external-editor: "npm:^3.0.3"
+ figures: "npm:^5.0.0"
+ lodash: "npm:^4.17.21"
+ mute-stream: "npm:1.0.0"
+ ora: "npm:^5.4.1"
+ run-async: "npm:^3.0.0"
+ rxjs: "npm:^7.8.1"
+ string-width: "npm:^4.2.3"
+ strip-ansi: "npm:^6.0.1"
+ through: "npm:^2.3.6"
+ wrap-ansi: "npm:^6.0.1"
+ checksum: 10c0/f07fe6b0ce9587a306771c5d4c40e5f5bbb940c6a78648326e978ec7f26fb28a903cbf595fd23af3b35b633ec5eba1845e2c3d35888fe073c884f50046a738b8
+ languageName: node
+ linkType: hard
+
+"internal-slot@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "internal-slot@npm:1.1.0"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ hasown: "npm:^2.0.2"
+ side-channel: "npm:^1.1.0"
+ checksum: 10c0/03966f5e259b009a9bf1a78d60da920df198af4318ec004f57b8aef1dd3fe377fbc8cce63a96e8c810010302654de89f9e19de1cd8ad0061d15be28a695465c7
+ languageName: node
+ linkType: hard
+
+"interpret@npm:^1.0.0":
+ version: 1.4.0
+ resolution: "interpret@npm:1.4.0"
+ checksum: 10c0/08c5ad30032edeec638485bc3f6db7d0094d9b3e85e0f950866600af3c52e9fd69715416d29564731c479d9f4d43ff3e4d302a178196bdc0e6837ec147640450
+ languageName: node
+ linkType: hard
+
+"invariant@npm:^2.2.4":
+ version: 2.2.4
+ resolution: "invariant@npm:2.2.4"
+ dependencies:
+ loose-envify: "npm:^1.0.0"
+ checksum: 10c0/5af133a917c0bcf65e84e7f23e779e7abc1cd49cb7fdc62d00d1de74b0d8c1b5ee74ac7766099fb3be1b05b26dfc67bab76a17030d2fe7ea2eef867434362dfc
+ languageName: node
+ linkType: hard
+
+"ip-address@npm:^10.0.1":
+ version: 10.1.0
+ resolution: "ip-address@npm:10.1.0"
+ checksum: 10c0/0103516cfa93f6433b3bd7333fa876eb21263912329bfa47010af5e16934eeeff86f3d2ae700a3744a137839ddfad62b900c7a445607884a49b5d1e32a3d7566
+ languageName: node
+ linkType: hard
+
+"ip@npm:^1.1.8":
+ version: 1.1.9
+ resolution: "ip@npm:1.1.9"
+ checksum: 10c0/5af58bfe2110c9978acfd77a2ffcdf9d33a6ce1c72f49edbaf16958f7a8eb979b5163e43bb18938caf3aaa55cdacde4e470874c58ca3b4b112ea7a30461a0c27
+ languageName: node
+ linkType: hard
+
+"is-absolute@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "is-absolute@npm:1.0.0"
+ dependencies:
+ is-relative: "npm:^1.0.0"
+ is-windows: "npm:^1.0.1"
+ checksum: 10c0/422302ce879d4f3ca6848499b6f3ddcc8fd2dc9f3e9cad3f6bcedff58cdfbbbd7f4c28600fffa7c59a858f1b15c27fb6cfe1d5275e58a36d2bf098a44ef5abc4
+ languageName: node
+ linkType: hard
+
+"is-arguments@npm:^1.1.1":
+ version: 1.2.0
+ resolution: "is-arguments@npm:1.2.0"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ has-tostringtag: "npm:^1.0.2"
+ checksum: 10c0/6377344b31e9fcb707c6751ee89b11f132f32338e6a782ec2eac9393b0cbd32235dad93052998cda778ee058754860738341d8114910d50ada5615912bb929fc
+ languageName: node
+ linkType: hard
+
+"is-array-buffer@npm:^3.0.4, is-array-buffer@npm:^3.0.5":
+ version: 3.0.5
+ resolution: "is-array-buffer@npm:3.0.5"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.3"
+ get-intrinsic: "npm:^1.2.6"
+ checksum: 10c0/c5c9f25606e86dbb12e756694afbbff64bc8b348d1bc989324c037e1068695131930199d6ad381952715dad3a9569333817f0b1a72ce5af7f883ce802e49c83d
+ languageName: node
+ linkType: hard
+
+"is-arrayish@npm:^0.2.1":
+ version: 0.2.1
+ resolution: "is-arrayish@npm:0.2.1"
+ checksum: 10c0/e7fb686a739068bb70f860b39b67afc62acc62e36bb61c5f965768abce1873b379c563e61dd2adad96ebb7edf6651111b385e490cf508378959b0ed4cac4e729
+ languageName: node
+ linkType: hard
+
+"is-async-function@npm:^2.0.0":
+ version: 2.1.1
+ resolution: "is-async-function@npm:2.1.1"
+ dependencies:
+ async-function: "npm:^1.0.0"
+ call-bound: "npm:^1.0.3"
+ get-proto: "npm:^1.0.1"
+ has-tostringtag: "npm:^1.0.2"
+ safe-regex-test: "npm:^1.1.0"
+ checksum: 10c0/d70c236a5e82de6fc4d44368ffd0c2fee2b088b893511ce21e679da275a5ecc6015ff59a7d7e1bdd7ca39f71a8dbdd253cf8cce5c6b3c91cdd5b42b5ce677298
+ languageName: node
+ linkType: hard
+
+"is-bigint@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "is-bigint@npm:1.1.0"
+ dependencies:
+ has-bigints: "npm:^1.0.2"
+ checksum: 10c0/f4f4b905ceb195be90a6ea7f34323bf1c18e3793f18922e3e9a73c684c29eeeeff5175605c3a3a74cc38185fe27758f07efba3dbae812e5c5afbc0d2316b40e4
+ languageName: node
+ linkType: hard
+
+"is-boolean-object@npm:^1.2.1":
+ version: 1.2.2
+ resolution: "is-boolean-object@npm:1.2.2"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ has-tostringtag: "npm:^1.0.2"
+ checksum: 10c0/36ff6baf6bd18b3130186990026f5a95c709345c39cd368468e6c1b6ab52201e9fd26d8e1f4c066357b4938b0f0401e1a5000e08257787c1a02f3a719457001e
+ languageName: node
+ linkType: hard
+
+"is-callable@npm:^1.2.7":
+ version: 1.2.7
+ resolution: "is-callable@npm:1.2.7"
+ checksum: 10c0/ceebaeb9d92e8adee604076971dd6000d38d6afc40bb843ea8e45c5579b57671c3f3b50d7f04869618242c6cee08d1b67806a8cb8edaaaf7c0748b3720d6066f
+ languageName: node
+ linkType: hard
+
+"is-ci@npm:3.0.1, is-ci@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "is-ci@npm:3.0.1"
+ dependencies:
+ ci-info: "npm:^3.2.0"
+ bin:
+ is-ci: bin.js
+ checksum: 10c0/0e81caa62f4520d4088a5bef6d6337d773828a88610346c4b1119fb50c842587ed8bef1e5d9a656835a599e7209405b5761ddf2339668f2d0f4e889a92fe6051
+ languageName: node
+ linkType: hard
+
+"is-core-module@npm:^2.16.1, is-core-module@npm:^2.5.0":
+ version: 2.16.1
+ resolution: "is-core-module@npm:2.16.1"
+ dependencies:
+ hasown: "npm:^2.0.2"
+ checksum: 10c0/898443c14780a577e807618aaae2b6f745c8538eca5c7bc11388a3f2dc6de82b9902bcc7eb74f07be672b11bbe82dd6a6edded44a00cb3d8f933d0459905eedd
+ languageName: node
+ linkType: hard
+
+"is-data-view@npm:^1.0.1, is-data-view@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "is-data-view@npm:1.0.2"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ get-intrinsic: "npm:^1.2.6"
+ is-typed-array: "npm:^1.1.13"
+ checksum: 10c0/ef3548a99d7e7f1370ce21006baca6d40c73e9f15c941f89f0049c79714c873d03b02dae1c64b3f861f55163ecc16da06506c5b8a1d4f16650b3d9351c380153
+ languageName: node
+ linkType: hard
+
+"is-date-object@npm:^1.0.5, is-date-object@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "is-date-object@npm:1.1.0"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ has-tostringtag: "npm:^1.0.2"
+ checksum: 10c0/1a4d199c8e9e9cac5128d32e6626fa7805175af9df015620ac0d5d45854ccf348ba494679d872d37301032e35a54fc7978fba1687e8721b2139aea7870cafa2f
+ languageName: node
+ linkType: hard
+
+"is-directory@npm:^0.3.1":
+ version: 0.3.1
+ resolution: "is-directory@npm:0.3.1"
+ checksum: 10c0/1c39c7d1753b04e9483b89fb88908b8137ab4743b6f481947e97ccf93ecb384a814c8d3f0b95b082b149c5aa19c3e9e4464e2791d95174bce95998c26bb1974b
+ languageName: node
+ linkType: hard
+
+"is-docker@npm:^2.0.0":
+ version: 2.2.1
+ resolution: "is-docker@npm:2.2.1"
+ bin:
+ is-docker: cli.js
+ checksum: 10c0/e828365958d155f90c409cdbe958f64051d99e8aedc2c8c4cd7c89dcf35329daed42f7b99346f7828df013e27deb8f721cf9408ba878c76eb9e8290235fbcdcc
+ languageName: node
+ linkType: hard
+
+"is-docker@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "is-docker@npm:3.0.0"
+ bin:
+ is-docker: cli.js
+ checksum: 10c0/d2c4f8e6d3e34df75a5defd44991b6068afad4835bb783b902fa12d13ebdb8f41b2a199dcb0b5ed2cb78bfee9e4c0bbdb69c2d9646f4106464674d3e697a5856
+ languageName: node
+ linkType: hard
+
+"is-extglob@npm:^2.1.1":
+ version: 2.1.1
+ resolution: "is-extglob@npm:2.1.1"
+ checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912
+ languageName: node
+ linkType: hard
+
+"is-finalizationregistry@npm:^1.1.0":
+ version: 1.1.1
+ resolution: "is-finalizationregistry@npm:1.1.1"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ checksum: 10c0/818dff679b64f19e228a8205a1e2d09989a98e98def3a817f889208cfcbf918d321b251aadf2c05918194803ebd2eb01b14fc9d0b2bea53d984f4137bfca5e97
+ languageName: node
+ linkType: hard
+
+"is-fullwidth-code-point@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "is-fullwidth-code-point@npm:3.0.0"
+ checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc
+ languageName: node
+ linkType: hard
+
+"is-generator-fn@npm:^2.0.0":
+ version: 2.1.0
+ resolution: "is-generator-fn@npm:2.1.0"
+ checksum: 10c0/2957cab387997a466cd0bf5c1b6047bd21ecb32bdcfd8996b15747aa01002c1c88731802f1b3d34ac99f4f6874b626418bd118658cf39380fe5fff32a3af9c4d
+ languageName: node
+ linkType: hard
+
+"is-generator-function@npm:^1.0.10":
+ version: 1.1.2
+ resolution: "is-generator-function@npm:1.1.2"
+ dependencies:
+ call-bound: "npm:^1.0.4"
+ generator-function: "npm:^2.0.0"
+ get-proto: "npm:^1.0.1"
+ has-tostringtag: "npm:^1.0.2"
+ safe-regex-test: "npm:^1.1.0"
+ checksum: 10c0/83da102e89c3e3b71d67b51d47c9f9bc862bceb58f87201727e27f7fa19d1d90b0ab223644ecaee6fc6e3d2d622bb25c966fbdaf87c59158b01ce7c0fe2fa372
+ languageName: node
+ linkType: hard
+
+"is-git-dirty@npm:^2.0.1":
+ version: 2.0.2
+ resolution: "is-git-dirty@npm:2.0.2"
+ dependencies:
+ execa: "npm:^4.0.3"
+ is-git-repository: "npm:^2.0.0"
+ checksum: 10c0/e7c223fb26416af52e0f3aba97b0147394fd96314d0a620cc4b44543538d62951ebaf049919a7f5df9bab270679dfde277b848d087a2733e00ca8481ee2fe984
+ languageName: node
+ linkType: hard
+
+"is-git-repository@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "is-git-repository@npm:2.0.0"
+ dependencies:
+ execa: "npm:^4.0.3"
+ is-absolute: "npm:^1.0.0"
+ checksum: 10c0/522f41a205dab4b6bad43e69b4ea9e29612b9a2ff82281425632a4c6c7c106cf65eabaaa4967bec0b468331660cde10d88101962f913e3efa59f4fffdfb4154f
+ languageName: node
+ linkType: hard
+
+"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3":
+ version: 4.0.3
+ resolution: "is-glob@npm:4.0.3"
+ dependencies:
+ is-extglob: "npm:^2.1.1"
+ checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a
+ languageName: node
+ linkType: hard
+
+"is-inside-container@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "is-inside-container@npm:1.0.0"
+ dependencies:
+ is-docker: "npm:^3.0.0"
+ bin:
+ is-inside-container: cli.js
+ checksum: 10c0/a8efb0e84f6197e6ff5c64c52890fa9acb49b7b74fed4da7c95383965da6f0fa592b4dbd5e38a79f87fc108196937acdbcd758fcefc9b140e479b39ce1fcd1cd
+ languageName: node
+ linkType: hard
+
+"is-installed-globally@npm:^0.4.0":
+ version: 0.4.0
+ resolution: "is-installed-globally@npm:0.4.0"
+ dependencies:
+ global-dirs: "npm:^3.0.0"
+ is-path-inside: "npm:^3.0.2"
+ checksum: 10c0/f3e6220ee5824b845c9ed0d4b42c24272701f1f9926936e30c0e676254ca5b34d1b92c6205cae11b283776f9529212c0cdabb20ec280a6451677d6493ca9c22d
+ languageName: node
+ linkType: hard
+
+"is-interactive@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "is-interactive@npm:1.0.0"
+ checksum: 10c0/dd47904dbf286cd20aa58c5192161be1a67138485b9836d5a70433b21a45442e9611b8498b8ab1f839fc962c7620667a50535fdfb4a6bc7989b8858645c06b4d
+ languageName: node
+ linkType: hard
+
+"is-interactive@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "is-interactive@npm:2.0.0"
+ checksum: 10c0/801c8f6064f85199dc6bf99b5dd98db3282e930c3bc197b32f2c5b89313bb578a07d1b8a01365c4348c2927229234f3681eb861b9c2c92bee72ff397390fa600
+ languageName: node
+ linkType: hard
+
+"is-map@npm:^2.0.2, is-map@npm:^2.0.3":
+ version: 2.0.3
+ resolution: "is-map@npm:2.0.3"
+ checksum: 10c0/2c4d431b74e00fdda7162cd8e4b763d6f6f217edf97d4f8538b94b8702b150610e2c64961340015fe8df5b1fcee33ccd2e9b62619c4a8a3a155f8de6d6d355fc
+ languageName: node
+ linkType: hard
+
+"is-negative-zero@npm:^2.0.3":
+ version: 2.0.3
+ resolution: "is-negative-zero@npm:2.0.3"
+ checksum: 10c0/bcdcf6b8b9714063ffcfa9929c575ac69bfdabb8f4574ff557dfc086df2836cf07e3906f5bbc4f2a5c12f8f3ba56af640c843cdfc74da8caed86c7c7d66fd08e
+ languageName: node
+ linkType: hard
+
+"is-npm@npm:^6.0.0":
+ version: 6.1.0
+ resolution: "is-npm@npm:6.1.0"
+ checksum: 10c0/2319580963e7b77f51b07d242064926894472e0b8aab7d4f67aa58a2032715a18c77844a2d963718b8ee1eac112ce4dbcd55a9d994f589d5994d46b57b5cdfda
+ languageName: node
+ linkType: hard
+
+"is-number-object@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "is-number-object@npm:1.1.1"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ has-tostringtag: "npm:^1.0.2"
+ checksum: 10c0/97b451b41f25135ff021d85c436ff0100d84a039bb87ffd799cbcdbea81ef30c464ced38258cdd34f080be08fc3b076ca1f472086286d2aa43521d6ec6a79f53
+ languageName: node
+ linkType: hard
+
+"is-number@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "is-number@npm:7.0.0"
+ checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811
+ languageName: node
+ linkType: hard
+
+"is-obj@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "is-obj@npm:2.0.0"
+ checksum: 10c0/85044ed7ba8bd169e2c2af3a178cacb92a97aa75de9569d02efef7f443a824b5e153eba72b9ae3aca6f8ce81955271aa2dc7da67a8b720575d3e38104208cb4e
+ languageName: node
+ linkType: hard
+
+"is-path-cwd@npm:^2.2.0":
+ version: 2.2.0
+ resolution: "is-path-cwd@npm:2.2.0"
+ checksum: 10c0/afce71533a427a759cd0329301c18950333d7589533c2c90205bd3fdcf7b91eb92d1940493190567a433134d2128ec9325de2fd281e05be1920fbee9edd22e0a
+ languageName: node
+ linkType: hard
+
+"is-path-inside@npm:^3.0.2, is-path-inside@npm:^3.0.3":
+ version: 3.0.3
+ resolution: "is-path-inside@npm:3.0.3"
+ checksum: 10c0/cf7d4ac35fb96bab6a1d2c3598fe5ebb29aafb52c0aaa482b5a3ed9d8ba3edc11631e3ec2637660c44b3ce0e61a08d54946e8af30dec0b60a7c27296c68ffd05
+ languageName: node
+ linkType: hard
+
+"is-plain-obj@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "is-plain-obj@npm:1.1.0"
+ checksum: 10c0/daaee1805add26f781b413fdf192fc91d52409583be30ace35c82607d440da63cc4cac0ac55136716688d6c0a2c6ef3edb2254fecbd1fe06056d6bd15975ee8c
+ languageName: node
+ linkType: hard
+
+"is-plain-object@npm:^2.0.4":
+ version: 2.0.4
+ resolution: "is-plain-object@npm:2.0.4"
+ dependencies:
+ isobject: "npm:^3.0.1"
+ checksum: 10c0/f050fdd5203d9c81e8c4df1b3ff461c4bc64e8b5ca383bcdde46131361d0a678e80bcf00b5257646f6c636197629644d53bd8e2375aea633de09a82d57e942f4
+ languageName: node
+ linkType: hard
+
+"is-plain-object@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "is-plain-object@npm:5.0.0"
+ checksum: 10c0/893e42bad832aae3511c71fd61c0bf61aa3a6d853061c62a307261842727d0d25f761ce9379f7ba7226d6179db2a3157efa918e7fe26360f3bf0842d9f28942c
+ languageName: node
+ linkType: hard
+
+"is-regex@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "is-regex@npm:1.2.1"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ gopd: "npm:^1.2.0"
+ has-tostringtag: "npm:^1.0.2"
+ hasown: "npm:^2.0.2"
+ checksum: 10c0/1d3715d2b7889932349241680032e85d0b492cfcb045acb75ffc2c3085e8d561184f1f7e84b6f8321935b4aea39bc9c6ba74ed595b57ce4881a51dfdbc214e04
+ languageName: node
+ linkType: hard
+
+"is-relative@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "is-relative@npm:1.0.0"
+ dependencies:
+ is-unc-path: "npm:^1.0.0"
+ checksum: 10c0/61157c4be8594dd25ac6f0ef29b1218c36667259ea26698367a4d9f39ff9018368bc365c490b3c79be92dfb1e389e43c4b865c95709e7b3bc72c5932f751fb60
+ languageName: node
+ linkType: hard
+
+"is-set@npm:^2.0.2, is-set@npm:^2.0.3":
+ version: 2.0.3
+ resolution: "is-set@npm:2.0.3"
+ checksum: 10c0/f73732e13f099b2dc879c2a12341cfc22ccaca8dd504e6edae26484bd5707a35d503fba5b4daad530a9b088ced1ae6c9d8200fd92e09b428fe14ea79ce8080b7
+ languageName: node
+ linkType: hard
+
+"is-shared-array-buffer@npm:^1.0.4":
+ version: 1.0.4
+ resolution: "is-shared-array-buffer@npm:1.0.4"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ checksum: 10c0/65158c2feb41ff1edd6bbd6fd8403a69861cf273ff36077982b5d4d68e1d59278c71691216a4a64632bd76d4792d4d1d2553901b6666d84ade13bba5ea7bc7db
+ languageName: node
+ linkType: hard
+
+"is-ssh@npm:^1.4.0":
+ version: 1.4.1
+ resolution: "is-ssh@npm:1.4.1"
+ dependencies:
+ protocols: "npm:^2.0.1"
+ checksum: 10c0/021a7355cb032625d58db3cc8266ad9aa698cbabf460b71376a0307405577fd7d3aa0826c0bf1951d7809f134c0ee80403306f6d7633db94a5a3600a0106b398
+ languageName: node
+ linkType: hard
+
+"is-stream@npm:^2.0.0":
+ version: 2.0.1
+ resolution: "is-stream@npm:2.0.1"
+ checksum: 10c0/7c284241313fc6efc329b8d7f08e16c0efeb6baab1b4cd0ba579eb78e5af1aa5da11e68559896a2067cd6c526bd29241dda4eb1225e627d5aa1a89a76d4635a5
+ languageName: node
+ linkType: hard
+
+"is-stream@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "is-stream@npm:3.0.0"
+ checksum: 10c0/eb2f7127af02ee9aa2a0237b730e47ac2de0d4e76a4a905a50a11557f2339df5765eaea4ceb8029f1efa978586abe776908720bfcb1900c20c6ec5145f6f29d8
+ languageName: node
+ linkType: hard
+
+"is-string@npm:^1.0.7, is-string@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "is-string@npm:1.1.1"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ has-tostringtag: "npm:^1.0.2"
+ checksum: 10c0/2f518b4e47886bb81567faba6ffd0d8a8333cf84336e2e78bf160693972e32ad00fe84b0926491cc598dee576fdc55642c92e62d0cbe96bf36f643b6f956f94d
+ languageName: node
+ linkType: hard
+
+"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "is-symbol@npm:1.1.1"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ has-symbols: "npm:^1.1.0"
+ safe-regex-test: "npm:^1.1.0"
+ checksum: 10c0/f08f3e255c12442e833f75a9e2b84b2d4882fdfd920513cf2a4a2324f0a5b076c8fd913778e3ea5d258d5183e9d92c0cd20e04b03ab3df05316b049b2670af1e
+ languageName: node
+ linkType: hard
+
+"is-text-path@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "is-text-path@npm:1.0.1"
+ dependencies:
+ text-extensions: "npm:^1.0.0"
+ checksum: 10c0/61c8650c29548febb6bf69e9541fc11abbbb087a0568df7bc471ba264e95fb254def4e610631cbab4ddb0a1a07949d06416f4ebeaf37875023fb184cdb87ee84
+ languageName: node
+ linkType: hard
+
+"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15":
+ version: 1.1.15
+ resolution: "is-typed-array@npm:1.1.15"
+ dependencies:
+ which-typed-array: "npm:^1.1.16"
+ checksum: 10c0/415511da3669e36e002820584e264997ffe277ff136643a3126cc949197e6ca3334d0f12d084e83b1994af2e9c8141275c741cf2b7da5a2ff62dd0cac26f76c4
+ languageName: node
+ linkType: hard
+
+"is-typedarray@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "is-typedarray@npm:1.0.0"
+ checksum: 10c0/4c096275ba041a17a13cca33ac21c16bc4fd2d7d7eb94525e7cd2c2f2c1a3ab956e37622290642501ff4310601e413b675cf399ad6db49855527d2163b3eeeec
+ languageName: node
+ linkType: hard
+
+"is-unc-path@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "is-unc-path@npm:1.0.0"
+ dependencies:
+ unc-path-regex: "npm:^0.1.2"
+ checksum: 10c0/ac1b78f9b748196e3be3d0e722cd4b0f98639247a130a8f2473a58b29baf63fdb1b1c5a12c830660c5ee6ef0279c5418ca8e346f98cbe1a29e433d7ae531d42e
+ languageName: node
+ linkType: hard
+
+"is-unicode-supported@npm:^0.1.0":
+ version: 0.1.0
+ resolution: "is-unicode-supported@npm:0.1.0"
+ checksum: 10c0/00cbe3455c3756be68d2542c416cab888aebd5012781d6819749fefb15162ff23e38501fe681b3d751c73e8ff561ac09a5293eba6f58fdf0178462ce6dcb3453
+ languageName: node
+ linkType: hard
+
+"is-unicode-supported@npm:^1.1.0, is-unicode-supported@npm:^1.2.0":
+ version: 1.3.0
+ resolution: "is-unicode-supported@npm:1.3.0"
+ checksum: 10c0/b8674ea95d869f6faabddc6a484767207058b91aea0250803cbf1221345cb0c56f466d4ecea375dc77f6633d248d33c47bd296fb8f4cdba0b4edba8917e83d8a
+ languageName: node
+ linkType: hard
+
+"is-weakmap@npm:^2.0.2":
+ version: 2.0.2
+ resolution: "is-weakmap@npm:2.0.2"
+ checksum: 10c0/443c35bb86d5e6cc5929cd9c75a4024bb0fff9586ed50b092f94e700b89c43a33b186b76dbc6d54f3d3d09ece689ab38dcdc1af6a482cbe79c0f2da0a17f1299
+ languageName: node
+ linkType: hard
+
+"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "is-weakref@npm:1.1.1"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ checksum: 10c0/8e0a9c07b0c780949a100e2cab2b5560a48ecd4c61726923c1a9b77b6ab0aa0046c9e7fb2206042296817045376dee2c8ab1dabe08c7c3dfbf195b01275a085b
+ languageName: node
+ linkType: hard
+
+"is-weakset@npm:^2.0.3":
+ version: 2.0.4
+ resolution: "is-weakset@npm:2.0.4"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ get-intrinsic: "npm:^1.2.6"
+ checksum: 10c0/6491eba08acb8dc9532da23cb226b7d0192ede0b88f16199e592e4769db0a077119c1f5d2283d1e0d16d739115f70046e887e477eb0e66cd90e1bb29f28ba647
+ languageName: node
+ linkType: hard
+
+"is-windows@npm:^1.0.1":
+ version: 1.0.2
+ resolution: "is-windows@npm:1.0.2"
+ checksum: 10c0/b32f418ab3385604a66f1b7a3ce39d25e8881dee0bd30816dc8344ef6ff9df473a732bcc1ec4e84fe99b2f229ae474f7133e8e93f9241686cfcf7eebe53ba7a5
+ languageName: node
+ linkType: hard
+
+"is-wsl@npm:^2.1.1, is-wsl@npm:^2.2.0":
+ version: 2.2.0
+ resolution: "is-wsl@npm:2.2.0"
+ dependencies:
+ is-docker: "npm:^2.0.0"
+ checksum: 10c0/a6fa2d370d21be487c0165c7a440d567274fbba1a817f2f0bfa41cc5e3af25041d84267baa22df66696956038a43973e72fca117918c91431920bdef490fa25e
+ languageName: node
+ linkType: hard
+
+"is-yarn-global@npm:^0.4.0":
+ version: 0.4.1
+ resolution: "is-yarn-global@npm:0.4.1"
+ checksum: 10c0/8ff66f33454614f8e913ad91cc4de0d88d519a46c1ed41b3f589da79504ed0fcfa304064fe3096dda9360c5f35aa210cb8e978fd36798f3118cb66a4de64d365
+ languageName: node
+ linkType: hard
+
+"isarray@npm:^2.0.5":
+ version: 2.0.5
+ resolution: "isarray@npm:2.0.5"
+ checksum: 10c0/4199f14a7a13da2177c66c31080008b7124331956f47bca57dd0b6ea9f11687aa25e565a2c7a2b519bc86988d10398e3049a1f5df13c9f6b7664154690ae79fd
+ languageName: node
+ linkType: hard
+
+"isarray@npm:~1.0.0":
+ version: 1.0.0
+ resolution: "isarray@npm:1.0.0"
+ checksum: 10c0/18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d
+ languageName: node
+ linkType: hard
+
+"isexe@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "isexe@npm:2.0.0"
+ checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d
+ languageName: node
+ linkType: hard
+
+"isexe@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "isexe@npm:4.0.0"
+ checksum: 10c0/5884815115bceac452877659a9c7726382531592f43dc29e5d48b7c4100661aed54018cb90bd36cb2eaeba521092570769167acbb95c18d39afdccbcca06c5ce
+ languageName: node
+ linkType: hard
+
+"isobject@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "isobject@npm:3.0.1"
+ checksum: 10c0/03344f5064a82f099a0cd1a8a407f4c0d20b7b8485e8e816c39f249e9416b06c322e8dec5b842b6bb8a06de0af9cb48e7bc1b5352f0fadc2f0abac033db3d4db
+ languageName: node
+ linkType: hard
+
+"issue-parser@npm:6.0.0":
+ version: 6.0.0
+ resolution: "issue-parser@npm:6.0.0"
+ dependencies:
+ lodash.capitalize: "npm:^4.2.1"
+ lodash.escaperegexp: "npm:^4.1.2"
+ lodash.isplainobject: "npm:^4.0.6"
+ lodash.isstring: "npm:^4.0.1"
+ lodash.uniqby: "npm:^4.7.0"
+ checksum: 10c0/3bfc48ca5c380061ba3db9bfb0c2a86692c74245a386d8add5eb7cd60022c85f44277692d78914ff0d37cf0da7d1743149516d00175233949c85c056d12e3b49
+ languageName: node
+ linkType: hard
+
+"istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0":
+ version: 3.2.2
+ resolution: "istanbul-lib-coverage@npm:3.2.2"
+ checksum: 10c0/6c7ff2106769e5f592ded1fb418f9f73b4411fd5a084387a5410538332b6567cd1763ff6b6cadca9b9eb2c443cce2f7ea7d7f1b8d315f9ce58539793b1e0922b
+ languageName: node
+ linkType: hard
+
+"istanbul-lib-instrument@npm:^5.0.4":
+ version: 5.2.1
+ resolution: "istanbul-lib-instrument@npm:5.2.1"
+ dependencies:
+ "@babel/core": "npm:^7.12.3"
+ "@babel/parser": "npm:^7.14.7"
+ "@istanbuljs/schema": "npm:^0.1.2"
+ istanbul-lib-coverage: "npm:^3.2.0"
+ semver: "npm:^6.3.0"
+ checksum: 10c0/8a1bdf3e377dcc0d33ec32fe2b6ecacdb1e4358fd0eb923d4326bb11c67622c0ceb99600a680f3dad5d29c66fc1991306081e339b4d43d0b8a2ab2e1d910a6ee
+ languageName: node
+ linkType: hard
+
+"istanbul-lib-instrument@npm:^6.0.0":
+ version: 6.0.3
+ resolution: "istanbul-lib-instrument@npm:6.0.3"
+ dependencies:
+ "@babel/core": "npm:^7.23.9"
+ "@babel/parser": "npm:^7.23.9"
+ "@istanbuljs/schema": "npm:^0.1.3"
+ istanbul-lib-coverage: "npm:^3.2.0"
+ semver: "npm:^7.5.4"
+ checksum: 10c0/a1894e060dd2a3b9f046ffdc87b44c00a35516f5e6b7baf4910369acca79e506fc5323a816f811ae23d82334b38e3ddeb8b3b331bd2c860540793b59a8689128
+ languageName: node
+ linkType: hard
+
+"istanbul-lib-report@npm:^3.0.0":
+ version: 3.0.1
+ resolution: "istanbul-lib-report@npm:3.0.1"
+ dependencies:
+ istanbul-lib-coverage: "npm:^3.0.0"
+ make-dir: "npm:^4.0.0"
+ supports-color: "npm:^7.1.0"
+ checksum: 10c0/84323afb14392de8b6a5714bd7e9af845cfbd56cfe71ed276cda2f5f1201aea673c7111901227ee33e68e4364e288d73861eb2ed48f6679d1e69a43b6d9b3ba7
+ languageName: node
+ linkType: hard
+
+"istanbul-lib-source-maps@npm:^4.0.0":
+ version: 4.0.1
+ resolution: "istanbul-lib-source-maps@npm:4.0.1"
+ dependencies:
+ debug: "npm:^4.1.1"
+ istanbul-lib-coverage: "npm:^3.0.0"
+ source-map: "npm:^0.6.1"
+ checksum: 10c0/19e4cc405016f2c906dff271a76715b3e881fa9faeb3f09a86cb99b8512b3a5ed19cadfe0b54c17ca0e54c1142c9c6de9330d65506e35873994e06634eebeb66
+ languageName: node
+ linkType: hard
+
+"istanbul-reports@npm:^3.1.3":
+ version: 3.2.0
+ resolution: "istanbul-reports@npm:3.2.0"
+ dependencies:
+ html-escaper: "npm:^2.0.0"
+ istanbul-lib-report: "npm:^3.0.0"
+ checksum: 10c0/d596317cfd9c22e1394f22a8d8ba0303d2074fe2e971887b32d870e4b33f8464b10f8ccbe6847808f7db485f084eba09e6c2ed706b3a978e4b52f07085b8f9bc
+ languageName: node
+ linkType: hard
+
+"iterate-iterator@npm:^1.0.1":
+ version: 1.0.2
+ resolution: "iterate-iterator@npm:1.0.2"
+ checksum: 10c0/74609b01a3ebc025601aa68ef40731b05d5e45c9fd4ecf233a14a34f2b3481e6974e1dcff390e87155a0648f056c186336bb4c70df2fdefeab08a9878b2eb1c2
+ languageName: node
+ linkType: hard
+
+"iterate-value@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "iterate-value@npm:1.0.2"
+ dependencies:
+ es-get-iterator: "npm:^1.0.2"
+ iterate-iterator: "npm:^1.0.1"
+ checksum: 10c0/77d32a5ac84877da2133689ff5e3983aa8214bace7faee3c746bf79d4524cc3fb8c0344a20d3699be20a15f0959ecd582d53a05b97f5d04c306bcd426800a650
+ languageName: node
+ linkType: hard
+
+"iterator.prototype@npm:^1.1.5":
+ version: 1.1.5
+ resolution: "iterator.prototype@npm:1.1.5"
+ dependencies:
+ define-data-property: "npm:^1.1.4"
+ es-object-atoms: "npm:^1.0.0"
+ get-intrinsic: "npm:^1.2.6"
+ get-proto: "npm:^1.0.0"
+ has-symbols: "npm:^1.1.0"
+ set-function-name: "npm:^2.0.2"
+ checksum: 10c0/f7a262808e1b41049ab55f1e9c29af7ec1025a000d243b83edf34ce2416eedd56079b117fa59376bb4a724110690f13aa8427f2ee29a09eec63a7e72367626d0
+ languageName: node
+ linkType: hard
+
+"jest-changed-files@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-changed-files@npm:29.7.0"
+ dependencies:
+ execa: "npm:^5.0.0"
+ jest-util: "npm:^29.7.0"
+ p-limit: "npm:^3.1.0"
+ checksum: 10c0/e071384d9e2f6bb462231ac53f29bff86f0e12394c1b49ccafbad225ce2ab7da226279a8a94f421949920bef9be7ef574fd86aee22e8adfa149be73554ab828b
+ languageName: node
+ linkType: hard
+
+"jest-circus@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-circus@npm:29.7.0"
+ dependencies:
+ "@jest/environment": "npm:^29.7.0"
+ "@jest/expect": "npm:^29.7.0"
+ "@jest/test-result": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ chalk: "npm:^4.0.0"
+ co: "npm:^4.6.0"
+ dedent: "npm:^1.0.0"
+ is-generator-fn: "npm:^2.0.0"
+ jest-each: "npm:^29.7.0"
+ jest-matcher-utils: "npm:^29.7.0"
+ jest-message-util: "npm:^29.7.0"
+ jest-runtime: "npm:^29.7.0"
+ jest-snapshot: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ p-limit: "npm:^3.1.0"
+ pretty-format: "npm:^29.7.0"
+ pure-rand: "npm:^6.0.0"
+ slash: "npm:^3.0.0"
+ stack-utils: "npm:^2.0.3"
+ checksum: 10c0/8d15344cf7a9f14e926f0deed64ed190c7a4fa1ed1acfcd81e4cc094d3cc5bf7902ebb7b874edc98ada4185688f90c91e1747e0dfd7ac12463b097968ae74b5e
+ languageName: node
+ linkType: hard
+
+"jest-cli@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-cli@npm:29.7.0"
+ dependencies:
+ "@jest/core": "npm:^29.7.0"
+ "@jest/test-result": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ chalk: "npm:^4.0.0"
+ create-jest: "npm:^29.7.0"
+ exit: "npm:^0.1.2"
+ import-local: "npm:^3.0.2"
+ jest-config: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ jest-validate: "npm:^29.7.0"
+ yargs: "npm:^17.3.1"
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
+ peerDependenciesMeta:
+ node-notifier:
+ optional: true
+ bin:
+ jest: bin/jest.js
+ checksum: 10c0/a658fd55050d4075d65c1066364595962ead7661711495cfa1dfeecf3d6d0a8ffec532f3dbd8afbb3e172dd5fd2fb2e813c5e10256e7cf2fea766314942fb43a
+ languageName: node
+ linkType: hard
+
+"jest-config@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-config@npm:29.7.0"
+ dependencies:
+ "@babel/core": "npm:^7.11.6"
+ "@jest/test-sequencer": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ babel-jest: "npm:^29.7.0"
+ chalk: "npm:^4.0.0"
+ ci-info: "npm:^3.2.0"
+ deepmerge: "npm:^4.2.2"
+ glob: "npm:^7.1.3"
+ graceful-fs: "npm:^4.2.9"
+ jest-circus: "npm:^29.7.0"
+ jest-environment-node: "npm:^29.7.0"
+ jest-get-type: "npm:^29.6.3"
+ jest-regex-util: "npm:^29.6.3"
+ jest-resolve: "npm:^29.7.0"
+ jest-runner: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ jest-validate: "npm:^29.7.0"
+ micromatch: "npm:^4.0.4"
+ parse-json: "npm:^5.2.0"
+ pretty-format: "npm:^29.7.0"
+ slash: "npm:^3.0.0"
+ strip-json-comments: "npm:^3.1.1"
+ peerDependencies:
+ "@types/node": "*"
+ ts-node: ">=9.0.0"
+ peerDependenciesMeta:
+ "@types/node":
+ optional: true
+ ts-node:
+ optional: true
+ checksum: 10c0/bab23c2eda1fff06e0d104b00d6adfb1d1aabb7128441899c9bff2247bd26710b050a5364281ce8d52b46b499153bf7e3ee88b19831a8f3451f1477a0246a0f1
+ languageName: node
+ linkType: hard
+
+"jest-diff@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-diff@npm:29.7.0"
+ dependencies:
+ chalk: "npm:^4.0.0"
+ diff-sequences: "npm:^29.6.3"
+ jest-get-type: "npm:^29.6.3"
+ pretty-format: "npm:^29.7.0"
+ checksum: 10c0/89a4a7f182590f56f526443dde69acefb1f2f0c9e59253c61d319569856c4931eae66b8a3790c443f529267a0ddba5ba80431c585deed81827032b2b2a1fc999
+ languageName: node
+ linkType: hard
+
+"jest-docblock@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-docblock@npm:29.7.0"
+ dependencies:
+ detect-newline: "npm:^3.0.0"
+ checksum: 10c0/d932a8272345cf6b6142bb70a2bb63e0856cc0093f082821577ea5bdf4643916a98744dfc992189d2b1417c38a11fa42466f6111526bc1fb81366f56410f3be9
+ languageName: node
+ linkType: hard
+
+"jest-each@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-each@npm:29.7.0"
+ dependencies:
+ "@jest/types": "npm:^29.6.3"
+ chalk: "npm:^4.0.0"
+ jest-get-type: "npm:^29.6.3"
+ jest-util: "npm:^29.7.0"
+ pretty-format: "npm:^29.7.0"
+ checksum: 10c0/f7f9a90ebee80cc688e825feceb2613627826ac41ea76a366fa58e669c3b2403d364c7c0a74d862d469b103c843154f8456d3b1c02b487509a12afa8b59edbb4
+ languageName: node
+ linkType: hard
+
+"jest-environment-node@npm:^29.6.3, jest-environment-node@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-environment-node@npm:29.7.0"
+ dependencies:
+ "@jest/environment": "npm:^29.7.0"
+ "@jest/fake-timers": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ jest-mock: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ checksum: 10c0/61f04fec077f8b1b5c1a633e3612fc0c9aa79a0ab7b05600683428f1e01a4d35346c474bde6f439f9fcc1a4aa9a2861ff852d079a43ab64b02105d1004b2592b
+ languageName: node
+ linkType: hard
+
+"jest-get-type@npm:^29.6.3":
+ version: 29.6.3
+ resolution: "jest-get-type@npm:29.6.3"
+ checksum: 10c0/552e7a97a983d3c2d4e412a44eb7de0430ff773dd99f7500962c268d6dfbfa431d7d08f919c9d960530e5f7f78eb47f267ad9b318265e5092b3ff9ede0db7c2b
+ languageName: node
+ linkType: hard
+
+"jest-haste-map@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-haste-map@npm:29.7.0"
+ dependencies:
+ "@jest/types": "npm:^29.6.3"
+ "@types/graceful-fs": "npm:^4.1.3"
+ "@types/node": "npm:*"
+ anymatch: "npm:^3.0.3"
+ fb-watchman: "npm:^2.0.0"
+ fsevents: "npm:^2.3.2"
+ graceful-fs: "npm:^4.2.9"
+ jest-regex-util: "npm:^29.6.3"
+ jest-util: "npm:^29.7.0"
+ jest-worker: "npm:^29.7.0"
+ micromatch: "npm:^4.0.4"
+ walker: "npm:^1.0.8"
+ dependenciesMeta:
+ fsevents:
+ optional: true
+ checksum: 10c0/2683a8f29793c75a4728787662972fedd9267704c8f7ef9d84f2beed9a977f1cf5e998c07b6f36ba5603f53cb010c911fe8cd0ac9886e073fe28ca66beefd30c
+ languageName: node
+ linkType: hard
+
+"jest-leak-detector@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-leak-detector@npm:29.7.0"
+ dependencies:
+ jest-get-type: "npm:^29.6.3"
+ pretty-format: "npm:^29.7.0"
+ checksum: 10c0/71bb9f77fc489acb842a5c7be030f2b9acb18574dc9fb98b3100fc57d422b1abc55f08040884bd6e6dbf455047a62f7eaff12aa4058f7cbdc11558718ca6a395
+ languageName: node
+ linkType: hard
+
+"jest-matcher-utils@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-matcher-utils@npm:29.7.0"
+ dependencies:
+ chalk: "npm:^4.0.0"
+ jest-diff: "npm:^29.7.0"
+ jest-get-type: "npm:^29.6.3"
+ pretty-format: "npm:^29.7.0"
+ checksum: 10c0/0d0e70b28fa5c7d4dce701dc1f46ae0922102aadc24ed45d594dd9b7ae0a8a6ef8b216718d1ab79e451291217e05d4d49a82666e1a3cc2b428b75cd9c933244e
+ languageName: node
+ linkType: hard
+
+"jest-message-util@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-message-util@npm:29.7.0"
+ dependencies:
+ "@babel/code-frame": "npm:^7.12.13"
+ "@jest/types": "npm:^29.6.3"
+ "@types/stack-utils": "npm:^2.0.0"
+ chalk: "npm:^4.0.0"
+ graceful-fs: "npm:^4.2.9"
+ micromatch: "npm:^4.0.4"
+ pretty-format: "npm:^29.7.0"
+ slash: "npm:^3.0.0"
+ stack-utils: "npm:^2.0.3"
+ checksum: 10c0/850ae35477f59f3e6f27efac5215f706296e2104af39232bb14e5403e067992afb5c015e87a9243ec4d9df38525ef1ca663af9f2f4766aa116f127247008bd22
+ languageName: node
+ linkType: hard
+
+"jest-mock@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-mock@npm:29.7.0"
+ dependencies:
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ jest-util: "npm:^29.7.0"
+ checksum: 10c0/7b9f8349ee87695a309fe15c46a74ab04c853369e5c40952d68061d9dc3159a0f0ed73e215f81b07ee97a9faaf10aebe5877a9d6255068a0977eae6a9ff1d5ac
+ languageName: node
+ linkType: hard
+
+"jest-pnp-resolver@npm:^1.2.2":
+ version: 1.2.3
+ resolution: "jest-pnp-resolver@npm:1.2.3"
+ peerDependencies:
+ jest-resolve: "*"
+ peerDependenciesMeta:
+ jest-resolve:
+ optional: true
+ checksum: 10c0/86eec0c78449a2de733a6d3e316d49461af6a858070e113c97f75fb742a48c2396ea94150cbca44159ffd4a959f743a47a8b37a792ef6fdad2cf0a5cba973fac
+ languageName: node
+ linkType: hard
+
+"jest-regex-util@npm:^29.6.3":
+ version: 29.6.3
+ resolution: "jest-regex-util@npm:29.6.3"
+ checksum: 10c0/4e33fb16c4f42111159cafe26397118dcfc4cf08bc178a67149fb05f45546a91928b820894572679d62559839d0992e21080a1527faad65daaae8743a5705a3b
+ languageName: node
+ linkType: hard
+
+"jest-resolve-dependencies@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-resolve-dependencies@npm:29.7.0"
+ dependencies:
+ jest-regex-util: "npm:^29.6.3"
+ jest-snapshot: "npm:^29.7.0"
+ checksum: 10c0/b6e9ad8ae5b6049474118ea6441dfddd385b6d1fc471db0136f7c8fbcfe97137a9665e4f837a9f49f15a29a1deb95a14439b7aec812f3f99d08f228464930f0d
+ languageName: node
+ linkType: hard
+
+"jest-resolve@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-resolve@npm:29.7.0"
+ dependencies:
+ chalk: "npm:^4.0.0"
+ graceful-fs: "npm:^4.2.9"
+ jest-haste-map: "npm:^29.7.0"
+ jest-pnp-resolver: "npm:^1.2.2"
+ jest-util: "npm:^29.7.0"
+ jest-validate: "npm:^29.7.0"
+ resolve: "npm:^1.20.0"
+ resolve.exports: "npm:^2.0.0"
+ slash: "npm:^3.0.0"
+ checksum: 10c0/59da5c9c5b50563e959a45e09e2eace783d7f9ac0b5dcc6375dea4c0db938d2ebda97124c8161310082760e8ebbeff9f6b177c15ca2f57fb424f637a5d2adb47
+ languageName: node
+ linkType: hard
+
+"jest-runner@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-runner@npm:29.7.0"
+ dependencies:
+ "@jest/console": "npm:^29.7.0"
+ "@jest/environment": "npm:^29.7.0"
+ "@jest/test-result": "npm:^29.7.0"
+ "@jest/transform": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ chalk: "npm:^4.0.0"
+ emittery: "npm:^0.13.1"
+ graceful-fs: "npm:^4.2.9"
+ jest-docblock: "npm:^29.7.0"
+ jest-environment-node: "npm:^29.7.0"
+ jest-haste-map: "npm:^29.7.0"
+ jest-leak-detector: "npm:^29.7.0"
+ jest-message-util: "npm:^29.7.0"
+ jest-resolve: "npm:^29.7.0"
+ jest-runtime: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ jest-watcher: "npm:^29.7.0"
+ jest-worker: "npm:^29.7.0"
+ p-limit: "npm:^3.1.0"
+ source-map-support: "npm:0.5.13"
+ checksum: 10c0/2194b4531068d939f14c8d3274fe5938b77fa73126aedf9c09ec9dec57d13f22c72a3b5af01ac04f5c1cf2e28d0ac0b4a54212a61b05f10b5d6b47f2a1097bb4
+ languageName: node
+ linkType: hard
+
+"jest-runtime@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-runtime@npm:29.7.0"
+ dependencies:
+ "@jest/environment": "npm:^29.7.0"
+ "@jest/fake-timers": "npm:^29.7.0"
+ "@jest/globals": "npm:^29.7.0"
+ "@jest/source-map": "npm:^29.6.3"
+ "@jest/test-result": "npm:^29.7.0"
+ "@jest/transform": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ chalk: "npm:^4.0.0"
+ cjs-module-lexer: "npm:^1.0.0"
+ collect-v8-coverage: "npm:^1.0.0"
+ glob: "npm:^7.1.3"
+ graceful-fs: "npm:^4.2.9"
+ jest-haste-map: "npm:^29.7.0"
+ jest-message-util: "npm:^29.7.0"
+ jest-mock: "npm:^29.7.0"
+ jest-regex-util: "npm:^29.6.3"
+ jest-resolve: "npm:^29.7.0"
+ jest-snapshot: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ slash: "npm:^3.0.0"
+ strip-bom: "npm:^4.0.0"
+ checksum: 10c0/7cd89a1deda0bda7d0941835434e44f9d6b7bd50b5c5d9b0fc9a6c990b2d4d2cab59685ab3cb2850ed4cc37059f6de903af5a50565d7f7f1192a77d3fd6dd2a6
+ languageName: node
+ linkType: hard
+
+"jest-snapshot@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-snapshot@npm:29.7.0"
+ dependencies:
+ "@babel/core": "npm:^7.11.6"
+ "@babel/generator": "npm:^7.7.2"
+ "@babel/plugin-syntax-jsx": "npm:^7.7.2"
+ "@babel/plugin-syntax-typescript": "npm:^7.7.2"
+ "@babel/types": "npm:^7.3.3"
+ "@jest/expect-utils": "npm:^29.7.0"
+ "@jest/transform": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ babel-preset-current-node-syntax: "npm:^1.0.0"
+ chalk: "npm:^4.0.0"
+ expect: "npm:^29.7.0"
+ graceful-fs: "npm:^4.2.9"
+ jest-diff: "npm:^29.7.0"
+ jest-get-type: "npm:^29.6.3"
+ jest-matcher-utils: "npm:^29.7.0"
+ jest-message-util: "npm:^29.7.0"
+ jest-util: "npm:^29.7.0"
+ natural-compare: "npm:^1.4.0"
+ pretty-format: "npm:^29.7.0"
+ semver: "npm:^7.5.3"
+ checksum: 10c0/6e9003c94ec58172b4a62864a91c0146513207bedf4e0a06e1e2ac70a4484088a2683e3a0538d8ea913bcfd53dc54a9b98a98cdfa562e7fe1d1339aeae1da570
+ languageName: node
+ linkType: hard
+
+"jest-util@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-util@npm:29.7.0"
+ dependencies:
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ chalk: "npm:^4.0.0"
+ ci-info: "npm:^3.2.0"
+ graceful-fs: "npm:^4.2.9"
+ picomatch: "npm:^2.2.3"
+ checksum: 10c0/bc55a8f49fdbb8f51baf31d2a4f312fb66c9db1483b82f602c9c990e659cdd7ec529c8e916d5a89452ecbcfae4949b21b40a7a59d4ffc0cd813a973ab08c8150
+ languageName: node
+ linkType: hard
+
+"jest-validate@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-validate@npm:29.7.0"
+ dependencies:
+ "@jest/types": "npm:^29.6.3"
+ camelcase: "npm:^6.2.0"
+ chalk: "npm:^4.0.0"
+ jest-get-type: "npm:^29.6.3"
+ leven: "npm:^3.1.0"
+ pretty-format: "npm:^29.7.0"
+ checksum: 10c0/a20b930480c1ed68778c739f4739dce39423131bc070cd2505ddede762a5570a256212e9c2401b7ae9ba4d7b7c0803f03c5b8f1561c62348213aba18d9dbece2
+ languageName: node
+ linkType: hard
+
+"jest-watcher@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-watcher@npm:29.7.0"
+ dependencies:
+ "@jest/test-result": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ "@types/node": "npm:*"
+ ansi-escapes: "npm:^4.2.1"
+ chalk: "npm:^4.0.0"
+ emittery: "npm:^0.13.1"
+ jest-util: "npm:^29.7.0"
+ string-length: "npm:^4.0.1"
+ checksum: 10c0/ec6c75030562fc8f8c727cb8f3b94e75d831fc718785abfc196e1f2a2ebc9a2e38744a15147170039628a853d77a3b695561ce850375ede3a4ee6037a2574567
+ languageName: node
+ linkType: hard
+
+"jest-worker@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "jest-worker@npm:29.7.0"
+ dependencies:
+ "@types/node": "npm:*"
+ jest-util: "npm:^29.7.0"
+ merge-stream: "npm:^2.0.0"
+ supports-color: "npm:^8.0.0"
+ checksum: 10c0/5570a3a005b16f46c131968b8a5b56d291f9bbb85ff4217e31c80bd8a02e7de799e59a54b95ca28d5c302f248b54cbffde2d177c2f0f52ffcee7504c6eabf660
+ languageName: node
+ linkType: hard
+
+"jest@npm:29.7.0":
+ version: 29.7.0
+ resolution: "jest@npm:29.7.0"
+ dependencies:
+ "@jest/core": "npm:^29.7.0"
+ "@jest/types": "npm:^29.6.3"
+ import-local: "npm:^3.0.2"
+ jest-cli: "npm:^29.7.0"
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
+ peerDependenciesMeta:
+ node-notifier:
+ optional: true
+ bin:
+ jest: bin/jest.js
+ checksum: 10c0/f40eb8171cf147c617cc6ada49d062fbb03b4da666cb8d39cdbfb739a7d75eea4c3ca150fb072d0d273dce0c753db4d0467d54906ad0293f59c54f9db4a09d8b
+ languageName: node
+ linkType: hard
+
+"jju@npm:~1.4.0":
+ version: 1.4.0
+ resolution: "jju@npm:1.4.0"
+ checksum: 10c0/f3f444557e4364cfc06b1abf8331bf3778b26c0c8552ca54429bc0092652172fdea26cbffe33e1017b303d5aa506f7ede8571857400efe459cb7439180e2acad
+ languageName: node
+ linkType: hard
+
+"js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "js-tokens@npm:4.0.0"
+ checksum: 10c0/e248708d377aa058eacf2037b07ded847790e6de892bbad3dac0abba2e759cb9f121b00099a65195616badcb6eca8d14d975cb3e89eb1cfda644756402c8aeed
+ languageName: node
+ linkType: hard
+
+"js-yaml@npm:^3.13.1":
+ version: 3.14.2
+ resolution: "js-yaml@npm:3.14.2"
+ dependencies:
+ argparse: "npm:^1.0.7"
+ esprima: "npm:^4.0.0"
+ bin:
+ js-yaml: bin/js-yaml.js
+ checksum: 10c0/3261f25912f5dd76605e5993d0a126c2b6c346311885d3c483706cd722efe34f697ea0331f654ce27c00a42b426e524518ec89d65ed02ea47df8ad26dcc8ce69
+ languageName: node
+ linkType: hard
+
+"js-yaml@npm:^4.1.0":
+ version: 4.1.1
+ resolution: "js-yaml@npm:4.1.1"
+ dependencies:
+ argparse: "npm:^2.0.1"
+ bin:
+ js-yaml: bin/js-yaml.js
+ checksum: 10c0/561c7d7088c40a9bb53cc75becbfb1df6ae49b34b5e6e5a81744b14ae8667ec564ad2527709d1a6e7d5e5fa6d483aa0f373a50ad98d42fde368ec4a190d4fae7
+ languageName: node
+ linkType: hard
+
+"jsc-android@npm:^250231.0.0":
+ version: 250231.0.0
+ resolution: "jsc-android@npm:250231.0.0"
+ checksum: 10c0/518ddbc9d41eb5f4f8a30244382044c87ce02756416866c4e129ae6655feb0bab744cf9d590d240916b005c3632554c7c33d388a84dc6d3e83733d0e8cee5c2f
+ languageName: node
+ linkType: hard
+
+"jsc-safe-url@npm:^0.2.2":
+ version: 0.2.4
+ resolution: "jsc-safe-url@npm:0.2.4"
+ checksum: 10c0/429bd645f8a35938f08f5b01c282e5ef55ed8be30a9ca23517b7ca01dcbf84b4b0632042caceab50f8f5c0c1e76816fe3c74de3e59be84da7f89ae1503bd3c68
+ languageName: node
+ linkType: hard
+
+"jscodeshift@npm:^0.14.0":
+ version: 0.14.0
+ resolution: "jscodeshift@npm:0.14.0"
+ dependencies:
+ "@babel/core": "npm:^7.13.16"
+ "@babel/parser": "npm:^7.13.16"
+ "@babel/plugin-proposal-class-properties": "npm:^7.13.0"
+ "@babel/plugin-proposal-nullish-coalescing-operator": "npm:^7.13.8"
+ "@babel/plugin-proposal-optional-chaining": "npm:^7.13.12"
+ "@babel/plugin-transform-modules-commonjs": "npm:^7.13.8"
+ "@babel/preset-flow": "npm:^7.13.13"
+ "@babel/preset-typescript": "npm:^7.13.0"
+ "@babel/register": "npm:^7.13.16"
+ babel-core: "npm:^7.0.0-bridge.0"
+ chalk: "npm:^4.1.2"
+ flow-parser: "npm:0.*"
+ graceful-fs: "npm:^4.2.4"
+ micromatch: "npm:^4.0.4"
+ neo-async: "npm:^2.5.0"
+ node-dir: "npm:^0.1.17"
+ recast: "npm:^0.21.0"
+ temp: "npm:^0.8.4"
+ write-file-atomic: "npm:^2.3.0"
+ peerDependencies:
+ "@babel/preset-env": ^7.1.6
+ bin:
+ jscodeshift: bin/jscodeshift.js
+ checksum: 10c0/dab63bdb4b7e67d79634fcd3f5dc8b227146e9f68aa88700bc49c5a45b6339d05bd934a98aa53d29abd04f81237d010e7e037799471b2aab66ec7b9a7d752786
+ languageName: node
+ linkType: hard
+
+"jsesc@npm:^3.0.2, jsesc@npm:~3.1.0":
+ version: 3.1.0
+ resolution: "jsesc@npm:3.1.0"
+ bin:
+ jsesc: bin/jsesc
+ checksum: 10c0/531779df5ec94f47e462da26b4cbf05eb88a83d9f08aac2ba04206508fc598527a153d08bd462bae82fc78b3eaa1a908e1a4a79f886e9238641c4cdefaf118b1
+ languageName: node
+ linkType: hard
+
+"json-buffer@npm:3.0.1":
+ version: 3.0.1
+ resolution: "json-buffer@npm:3.0.1"
+ checksum: 10c0/0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7
+ languageName: node
+ linkType: hard
+
+"json-parse-better-errors@npm:^1.0.1":
+ version: 1.0.2
+ resolution: "json-parse-better-errors@npm:1.0.2"
+ checksum: 10c0/2f1287a7c833e397c9ddd361a78638e828fc523038bb3441fd4fc144cfd2c6cd4963ffb9e207e648cf7b692600f1e1e524e965c32df5152120910e4903a47dcb
+ languageName: node
+ linkType: hard
+
+"json-parse-even-better-errors@npm:^2.3.0":
+ version: 2.3.1
+ resolution: "json-parse-even-better-errors@npm:2.3.1"
+ checksum: 10c0/140932564c8f0b88455432e0f33c4cb4086b8868e37524e07e723f4eaedb9425bdc2bafd71bd1d9765bd15fd1e2d126972bc83990f55c467168c228c24d665f3
+ languageName: node
+ linkType: hard
+
+"json-schema-traverse@npm:^0.4.1":
+ version: 0.4.1
+ resolution: "json-schema-traverse@npm:0.4.1"
+ checksum: 10c0/108fa90d4cc6f08243aedc6da16c408daf81793bf903e9fd5ab21983cda433d5d2da49e40711da016289465ec2e62e0324dcdfbc06275a607fe3233fde4942ce
+ languageName: node
+ linkType: hard
+
+"json-schema-traverse@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "json-schema-traverse@npm:1.0.0"
+ checksum: 10c0/71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6
+ languageName: node
+ linkType: hard
+
+"json-stable-stringify-without-jsonify@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "json-stable-stringify-without-jsonify@npm:1.0.1"
+ checksum: 10c0/cb168b61fd4de83e58d09aaa6425ef71001bae30d260e2c57e7d09a5fd82223e2f22a042dedaab8db23b7d9ae46854b08bb1f91675a8be11c5cffebef5fb66a5
+ languageName: node
+ linkType: hard
+
+"json-stringify-safe@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "json-stringify-safe@npm:5.0.1"
+ checksum: 10c0/7dbf35cd0411d1d648dceb6d59ce5857ec939e52e4afc37601aa3da611f0987d5cee5b38d58329ceddf3ed48bd7215229c8d52059ab01f2444a338bf24ed0f37
+ languageName: node
+ linkType: hard
+
+"json5@npm:^2.2.1, json5@npm:^2.2.3":
+ version: 2.2.3
+ resolution: "json5@npm:2.2.3"
+ bin:
+ json5: lib/cli.js
+ checksum: 10c0/5a04eed94810fa55c5ea138b2f7a5c12b97c3750bc63d11e511dcecbfef758003861522a070c2272764ee0f4e3e323862f386945aeb5b85b87ee43f084ba586c
+ languageName: node
+ linkType: hard
+
+"jsonfile@npm:^6.0.1":
+ version: 6.2.1
+ resolution: "jsonfile@npm:6.2.1"
+ dependencies:
+ graceful-fs: "npm:^4.1.6"
+ universalify: "npm:^2.0.0"
+ dependenciesMeta:
+ graceful-fs:
+ optional: true
+ checksum: 10c0/e1abf000ecee9942d4d028a8e02dc752617face227d72afd1cfb2187e2433079e625bf82b807a313689db71b6472c6b2b389a2340d2798737b1199a39631c28a
+ languageName: node
+ linkType: hard
+
+"jsonparse@npm:^1.2.0":
+ version: 1.3.1
+ resolution: "jsonparse@npm:1.3.1"
+ checksum: 10c0/89bc68080cd0a0e276d4b5ab1b79cacd68f562467008d176dc23e16e97d4efec9e21741d92ba5087a8433526a45a7e6a9d5ef25408696c402ca1cfbc01a90bf0
+ languageName: node
+ linkType: hard
+
+"jsx-ast-utils@npm:^2.4.1 || ^3.0.0":
+ version: 3.3.5
+ resolution: "jsx-ast-utils@npm:3.3.5"
+ dependencies:
+ array-includes: "npm:^3.1.6"
+ array.prototype.flat: "npm:^1.3.1"
+ object.assign: "npm:^4.1.4"
+ object.values: "npm:^1.1.6"
+ checksum: 10c0/a32679e9cb55469cb6d8bbc863f7d631b2c98b7fc7bf172629261751a6e7bc8da6ae374ddb74d5fbd8b06cf0eb4572287b259813d92b36e384024ed35e4c13e1
+ languageName: node
+ linkType: hard
+
+"keyv@npm:^4.5.3":
+ version: 4.5.4
+ resolution: "keyv@npm:4.5.4"
+ dependencies:
+ json-buffer: "npm:3.0.1"
+ checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e
+ languageName: node
+ linkType: hard
+
+"kind-of@npm:^6.0.2, kind-of@npm:^6.0.3":
+ version: 6.0.3
+ resolution: "kind-of@npm:6.0.3"
+ checksum: 10c0/61cdff9623dabf3568b6445e93e31376bee1cdb93f8ba7033d86022c2a9b1791a1d9510e026e6465ebd701a6dd2f7b0808483ad8838341ac52f003f512e0b4c4
+ languageName: node
+ linkType: hard
+
+"kleur@npm:^3.0.3":
+ version: 3.0.3
+ resolution: "kleur@npm:3.0.3"
+ checksum: 10c0/cd3a0b8878e7d6d3799e54340efe3591ca787d9f95f109f28129bdd2915e37807bf8918bb295ab86afb8c82196beec5a1adcaf29042ce3f2bd932b038fe3aa4b
+ languageName: node
+ linkType: hard
+
+"kleur@npm:^4.1.4":
+ version: 4.1.5
+ resolution: "kleur@npm:4.1.5"
+ checksum: 10c0/e9de6cb49657b6fa70ba2d1448fd3d691a5c4370d8f7bbf1c2f64c24d461270f2117e1b0afe8cb3114f13bbd8e51de158c2a224953960331904e636a5e4c0f2a
+ languageName: node
+ linkType: hard
+
+"latest-version@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "latest-version@npm:7.0.0"
+ dependencies:
+ package-json: "npm:^8.1.0"
+ checksum: 10c0/68045f5e419e005c12e595ae19687dd88317dd0108b83a8773197876622c7e9d164fe43aacca4f434b2cba105c92848b89277f658eabc5d50e81fb743bbcddb1
+ languageName: node
+ linkType: hard
+
+"leven@npm:^3.1.0":
+ version: 3.1.0
+ resolution: "leven@npm:3.1.0"
+ checksum: 10c0/cd778ba3fbab0f4d0500b7e87d1f6e1f041507c56fdcd47e8256a3012c98aaee371d4c15e0a76e0386107af2d42e2b7466160a2d80688aaa03e66e49949f42df
+ languageName: node
+ linkType: hard
+
+"levn@npm:^0.4.1":
+ version: 0.4.1
+ resolution: "levn@npm:0.4.1"
+ dependencies:
+ prelude-ls: "npm:^1.2.1"
+ type-check: "npm:~0.4.0"
+ checksum: 10c0/effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e
+ languageName: node
+ linkType: hard
+
+"levn@npm:~0.3.0":
+ version: 0.3.0
+ resolution: "levn@npm:0.3.0"
+ dependencies:
+ prelude-ls: "npm:~1.1.2"
+ type-check: "npm:~0.3.2"
+ checksum: 10c0/e440df9de4233da0b389cd55bd61f0f6aaff766400bebbccd1231b81801f6dbc1d816c676ebe8d70566394b749fa624b1ed1c68070e9c94999f0bdecc64cb676
+ languageName: node
+ linkType: hard
+
+"lighthouse-logger@npm:^1.0.0":
+ version: 1.4.2
+ resolution: "lighthouse-logger@npm:1.4.2"
+ dependencies:
+ debug: "npm:^2.6.9"
+ marky: "npm:^1.2.2"
+ checksum: 10c0/090431db34e9ce01b03b2a03b39e998807a7a86214f2e8da2ba9588c36841caf4474f96ef1b2deaf9fe58f2e00f9f51618e0b98edecc2d8c9dfc13185bf0adc8
+ languageName: node
+ linkType: hard
+
+"lines-and-columns@npm:^1.1.6":
+ version: 1.2.4
+ resolution: "lines-and-columns@npm:1.2.4"
+ checksum: 10c0/3da6ee62d4cd9f03f5dc90b4df2540fb85b352081bee77fe4bbcd12c9000ead7f35e0a38b8d09a9bb99b13223446dd8689ff3c4959807620726d788701a83d2d
+ languageName: node
+ linkType: hard
+
+"load-json-file@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "load-json-file@npm:4.0.0"
+ dependencies:
+ graceful-fs: "npm:^4.1.2"
+ parse-json: "npm:^4.0.0"
+ pify: "npm:^3.0.0"
+ strip-bom: "npm:^3.0.0"
+ checksum: 10c0/6b48f6a0256bdfcc8970be2c57f68f10acb2ee7e63709b386b2febb6ad3c86198f840889cdbe71d28f741cbaa2f23a7771206b138cd1bdd159564511ca37c1d5
+ languageName: node
+ linkType: hard
+
+"locate-path@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "locate-path@npm:2.0.0"
+ dependencies:
+ p-locate: "npm:^2.0.0"
+ path-exists: "npm:^3.0.0"
+ checksum: 10c0/24efa0e589be6aa3c469b502f795126b26ab97afa378846cb508174211515633b770aa0ba610cab113caedab8d2a4902b061a08aaed5297c12ab6f5be4df0133
+ languageName: node
+ linkType: hard
+
+"locate-path@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "locate-path@npm:3.0.0"
+ dependencies:
+ p-locate: "npm:^3.0.0"
+ path-exists: "npm:^3.0.0"
+ checksum: 10c0/3db394b7829a7fe2f4fbdd25d3c4689b85f003c318c5da4052c7e56eed697da8f1bce5294f685c69ff76e32cba7a33629d94396976f6d05fb7f4c755c5e2ae8b
+ languageName: node
+ linkType: hard
+
+"locate-path@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "locate-path@npm:5.0.0"
+ dependencies:
+ p-locate: "npm:^4.1.0"
+ checksum: 10c0/33a1c5247e87e022f9713e6213a744557a3e9ec32c5d0b5efb10aa3a38177615bf90221a5592674857039c1a0fd2063b82f285702d37b792d973e9e72ace6c59
+ languageName: node
+ linkType: hard
+
+"locate-path@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "locate-path@npm:6.0.0"
+ dependencies:
+ p-locate: "npm:^5.0.0"
+ checksum: 10c0/d3972ab70dfe58ce620e64265f90162d247e87159b6126b01314dd67be43d50e96a50b517bce2d9452a79409c7614054c277b5232377de50416564a77ac7aad3
+ languageName: node
+ linkType: hard
+
+"lodash.camelcase@npm:^4.3.0":
+ version: 4.3.0
+ resolution: "lodash.camelcase@npm:4.3.0"
+ checksum: 10c0/fcba15d21a458076dd309fce6b1b4bf611d84a0ec252cb92447c948c533ac250b95d2e00955801ebc367e5af5ed288b996d75d37d2035260a937008e14eaf432
+ languageName: node
+ linkType: hard
+
+"lodash.capitalize@npm:^4.2.1":
+ version: 4.2.1
+ resolution: "lodash.capitalize@npm:4.2.1"
+ checksum: 10c0/b289326497c2e24d6b8afa2af2ca4e068ef6ef007ade36bfb6f70af77ce10ea3f090eeee947d5fdcf2db4bcfa4703c8c10a5857a2b39e308bddfd1d11ad35970
+ languageName: node
+ linkType: hard
+
+"lodash.debounce@npm:^4.0.8":
+ version: 4.0.8
+ resolution: "lodash.debounce@npm:4.0.8"
+ checksum: 10c0/762998a63e095412b6099b8290903e0a8ddcb353ac6e2e0f2d7e7d03abd4275fe3c689d88960eb90b0dde4f177554d51a690f22a343932ecbc50a5d111849987
+ languageName: node
+ linkType: hard
+
+"lodash.escaperegexp@npm:^4.1.2":
+ version: 4.1.2
+ resolution: "lodash.escaperegexp@npm:4.1.2"
+ checksum: 10c0/484ad4067fa9119bb0f7c19a36ab143d0173a081314993fe977bd00cf2a3c6a487ce417a10f6bac598d968364f992153315f0dbe25c9e38e3eb7581dd333e087
+ languageName: node
+ linkType: hard
+
+"lodash.isfunction@npm:^3.0.9":
+ version: 3.0.9
+ resolution: "lodash.isfunction@npm:3.0.9"
+ checksum: 10c0/e88620922f5f104819496884779ca85bfc542efb2946df661ab3e2cd38da5c8375434c6adbedfc76dd3c2b04075d2ba8ec215cfdedf08ddd2e3c3467e8a26ccd
+ languageName: node
+ linkType: hard
+
+"lodash.ismatch@npm:^4.4.0":
+ version: 4.4.0
+ resolution: "lodash.ismatch@npm:4.4.0"
+ checksum: 10c0/8f96a5dc4b8d3fc5a033dcb259d0c3148a1044fa4d02b4a0e8dce0fa1f2ef3ec4ac131e20b5cb2c985a4e9bcb1c37c0aa5af2cef70094959389617347b8fc645
+ languageName: node
+ linkType: hard
+
+"lodash.isplainobject@npm:^4.0.6":
+ version: 4.0.6
+ resolution: "lodash.isplainobject@npm:4.0.6"
+ checksum: 10c0/afd70b5c450d1e09f32a737bed06ff85b873ecd3d3d3400458725283e3f2e0bb6bf48e67dbe7a309eb371a822b16a26cca4a63c8c52db3fc7dc9d5f9dd324cbb
+ languageName: node
+ linkType: hard
+
+"lodash.isstring@npm:^4.0.1":
+ version: 4.0.1
+ resolution: "lodash.isstring@npm:4.0.1"
+ checksum: 10c0/09eaf980a283f9eef58ef95b30ec7fee61df4d6bf4aba3b5f096869cc58f24c9da17900febc8ffd67819b4e29de29793190e88dc96983db92d84c95fa85d1c92
+ languageName: node
+ linkType: hard
+
+"lodash.kebabcase@npm:^4.1.1":
+ version: 4.1.1
+ resolution: "lodash.kebabcase@npm:4.1.1"
+ checksum: 10c0/da5d8f41dbb5bc723d4bf9203d5096ca8da804d6aec3d2b56457156ba6c8d999ff448d347ebd97490da853cb36696ea4da09a431499f1ee8deb17b094ecf4e33
+ languageName: node
+ linkType: hard
+
+"lodash.merge@npm:^4.6.2":
+ version: 4.6.2
+ resolution: "lodash.merge@npm:4.6.2"
+ checksum: 10c0/402fa16a1edd7538de5b5903a90228aa48eb5533986ba7fa26606a49db2572bf414ff73a2c9f5d5fd36b31c46a5d5c7e1527749c07cbcf965ccff5fbdf32c506
+ languageName: node
+ linkType: hard
+
+"lodash.mergewith@npm:^4.6.2":
+ version: 4.6.2
+ resolution: "lodash.mergewith@npm:4.6.2"
+ checksum: 10c0/4adbed65ff96fd65b0b3861f6899f98304f90fd71e7f1eb36c1270e05d500ee7f5ec44c02ef979b5ddbf75c0a0b9b99c35f0ad58f4011934c4d4e99e5200b3b5
+ languageName: node
+ linkType: hard
+
+"lodash.snakecase@npm:^4.1.1":
+ version: 4.1.1
+ resolution: "lodash.snakecase@npm:4.1.1"
+ checksum: 10c0/f0b3f2497eb20eea1a1cfc22d645ecaeb78ac14593eb0a40057977606d2f35f7aaff0913a06553c783b535aafc55b718f523f9eb78f8d5293f492af41002eaf9
+ languageName: node
+ linkType: hard
+
+"lodash.startcase@npm:^4.4.0":
+ version: 4.4.0
+ resolution: "lodash.startcase@npm:4.4.0"
+ checksum: 10c0/bd82aa87a45de8080e1c5ee61128c7aee77bf7f1d86f4ff94f4a6d7438fc9e15e5f03374b947be577a93804c8ad6241f0251beaf1452bf716064eeb657b3a9f0
+ languageName: node
+ linkType: hard
+
+"lodash.throttle@npm:^4.1.1":
+ version: 4.1.1
+ resolution: "lodash.throttle@npm:4.1.1"
+ checksum: 10c0/14628013e9e7f65ac904fc82fd8ecb0e55a9c4c2416434b1dd9cf64ae70a8937f0b15376a39a68248530adc64887ed0fe2b75204b2c9ec3eea1cb2d66ddd125d
+ languageName: node
+ linkType: hard
+
+"lodash.uniq@npm:^4.5.0":
+ version: 4.5.0
+ resolution: "lodash.uniq@npm:4.5.0"
+ checksum: 10c0/262d400bb0952f112162a320cc4a75dea4f66078b9e7e3075ffbc9c6aa30b3e9df3cf20e7da7d566105e1ccf7804e4fbd7d804eee0b53de05d83f16ffbf41c5e
+ languageName: node
+ linkType: hard
+
+"lodash.uniqby@npm:^4.7.0":
+ version: 4.7.0
+ resolution: "lodash.uniqby@npm:4.7.0"
+ checksum: 10c0/c505c0de20ca759599a2ba38710e8fb95ff2d2028e24d86c901ef2c74be8056518571b9b754bfb75053b2818d30dd02243e4a4621a6940c206bbb3f7626db656
+ languageName: node
+ linkType: hard
+
+"lodash.upperfirst@npm:^4.3.1":
+ version: 4.3.1
+ resolution: "lodash.upperfirst@npm:4.3.1"
+ checksum: 10c0/435625da4b3ee74e7a1367a780d9107ab0b13ef4359fc074b2a1a40458eb8d91b655af62f6795b7138d493303a98c0285340160341561d6896e4947e077fa975
+ languageName: node
+ linkType: hard
+
+"lodash@npm:4.17.21":
+ version: 4.17.21
+ resolution: "lodash@npm:4.17.21"
+ checksum: 10c0/d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c
+ languageName: node
+ linkType: hard
+
+"lodash@npm:^4.17.15, lodash@npm:^4.17.21":
+ version: 4.18.1
+ resolution: "lodash@npm:4.18.1"
+ checksum: 10c0/757228fc68805c59789e82185135cf85f05d0b2d3d54631d680ca79ec21944ec8314d4533639a14b8bcfbd97a517e78960933041a5af17ecb693ec6eecb99a27
+ languageName: node
+ linkType: hard
+
+"log-symbols@npm:^4.1.0":
+ version: 4.1.0
+ resolution: "log-symbols@npm:4.1.0"
+ dependencies:
+ chalk: "npm:^4.1.0"
+ is-unicode-supported: "npm:^0.1.0"
+ checksum: 10c0/67f445a9ffa76db1989d0fa98586e5bc2fd5247260dafb8ad93d9f0ccd5896d53fb830b0e54dade5ad838b9de2006c826831a3c528913093af20dff8bd24aca6
+ languageName: node
+ linkType: hard
+
+"log-symbols@npm:^5.1.0":
+ version: 5.1.0
+ resolution: "log-symbols@npm:5.1.0"
+ dependencies:
+ chalk: "npm:^5.0.0"
+ is-unicode-supported: "npm:^1.1.0"
+ checksum: 10c0/c14f8567c6618a7f96209c4c4b9fb3b794187116904712f7b526e465a5c9535728aec983735a5bef919247d0e54b9b72b6680a7fb9fc72d76b945dac4865e669
+ languageName: node
+ linkType: hard
+
+"loose-envify@npm:^1.0.0, loose-envify@npm:^1.1.0, loose-envify@npm:^1.4.0":
+ version: 1.4.0
+ resolution: "loose-envify@npm:1.4.0"
+ dependencies:
+ js-tokens: "npm:^3.0.0 || ^4.0.0"
+ bin:
+ loose-envify: cli.js
+ checksum: 10c0/655d110220983c1a4b9c0c679a2e8016d4b67f6e9c7b5435ff5979ecdb20d0813f4dec0a08674fcbdd4846a3f07edbb50a36811fd37930b94aaa0d9daceb017e
+ languageName: node
+ linkType: hard
+
+"lowercase-keys@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "lowercase-keys@npm:3.0.0"
+ checksum: 10c0/ef62b9fa5690ab0a6e4ef40c94efce68e3ed124f583cc3be38b26ff871da0178a28b9a84ce0c209653bb25ca135520ab87fea7cd411a54ac4899cb2f30501430
+ languageName: node
+ linkType: hard
+
+"lru-cache@npm:^5.1.1":
+ version: 5.1.1
+ resolution: "lru-cache@npm:5.1.1"
+ dependencies:
+ yallist: "npm:^3.0.2"
+ checksum: 10c0/89b2ef2ef45f543011e38737b8a8622a2f8998cddf0e5437174ef8f1f70a8b9d14a918ab3e232cb3ba343b7abddffa667f0b59075b2b80e6b4d63c3de6127482
+ languageName: node
+ linkType: hard
+
+"lru-cache@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "lru-cache@npm:6.0.0"
+ dependencies:
+ yallist: "npm:^4.0.0"
+ checksum: 10c0/cb53e582785c48187d7a188d3379c181b5ca2a9c78d2bce3e7dee36f32761d1c42983da3fe12b55cb74e1779fa94cdc2e5367c028a9b35317184ede0c07a30a9
+ languageName: node
+ linkType: hard
+
+"lru-cache@npm:^7.14.1":
+ version: 7.18.3
+ resolution: "lru-cache@npm:7.18.3"
+ checksum: 10c0/b3a452b491433db885beed95041eb104c157ef7794b9c9b4d647be503be91769d11206bb573849a16b4cc0d03cbd15ffd22df7960997788b74c1d399ac7a4fed
+ languageName: node
+ linkType: hard
+
+"macos-release@npm:^3.1.0":
+ version: 3.4.0
+ resolution: "macos-release@npm:3.4.0"
+ checksum: 10c0/cb6ea203cc2a2b2cc2214db4658d0da0e52f8298c5c43c94cf9cb9e871daac59e4e56a2559859727a4b43b0afec1123f998ef62c58d1ac6c6c8a5c8a808330cb
+ languageName: node
+ linkType: hard
+
+"make-dir@npm:^2.0.0, make-dir@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "make-dir@npm:2.1.0"
+ dependencies:
+ pify: "npm:^4.0.1"
+ semver: "npm:^5.6.0"
+ checksum: 10c0/ada869944d866229819735bee5548944caef560d7a8536ecbc6536edca28c72add47cc4f6fc39c54fb25d06b58da1f8994cf7d9df7dadea047064749efc085d8
+ languageName: node
+ linkType: hard
+
+"make-dir@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "make-dir@npm:4.0.0"
+ dependencies:
+ semver: "npm:^7.5.3"
+ checksum: 10c0/69b98a6c0b8e5c4fe9acb61608a9fbcfca1756d910f51e5dbe7a9e5cfb74fca9b8a0c8a0ffdf1294a740826c1ab4871d5bf3f62f72a3049e5eac6541ddffed68
+ languageName: node
+ linkType: hard
+
+"make-error@npm:^1.1.1":
+ version: 1.3.6
+ resolution: "make-error@npm:1.3.6"
+ checksum: 10c0/171e458d86854c6b3fc46610cfacf0b45149ba043782558c6875d9f42f222124384ad0b468c92e996d815a8a2003817a710c0a160e49c1c394626f76fa45396f
+ languageName: node
+ linkType: hard
+
+"makeerror@npm:1.0.12":
+ version: 1.0.12
+ resolution: "makeerror@npm:1.0.12"
+ dependencies:
+ tmpl: "npm:1.0.5"
+ checksum: 10c0/b0e6e599780ce6bab49cc413eba822f7d1f0dfebd1c103eaa3785c59e43e22c59018323cf9e1708f0ef5329e94a745d163fcbb6bff8e4c6742f9be9e86f3500c
+ languageName: node
+ linkType: hard
+
+"map-obj@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "map-obj@npm:1.0.1"
+ checksum: 10c0/ccca88395e7d38671ed9f5652ecf471ecd546924be2fb900836b9da35e068a96687d96a5f93dcdfa94d9a27d649d2f10a84595590f89a347fb4dda47629dcc52
+ languageName: node
+ linkType: hard
+
+"map-obj@npm:^4.0.0":
+ version: 4.3.0
+ resolution: "map-obj@npm:4.3.0"
+ checksum: 10c0/1c19e1c88513c8abdab25c316367154c6a0a6a0f77e3e8c391bb7c0e093aefed293f539d026dc013d86219e5e4c25f23b0003ea588be2101ccd757bacc12d43b
+ languageName: node
+ linkType: hard
+
+"marky@npm:^1.2.2":
+ version: 1.3.0
+ resolution: "marky@npm:1.3.0"
+ checksum: 10c0/6619cdb132fdc4f7cd3e2bed6eebf81a38e50ff4b426bbfb354db68731e4adfebf35ebfd7c8e5a6e846cbf9b872588c4f76db25782caee8c1529ec9d483bf98b
+ languageName: node
+ linkType: hard
+
+"math-intrinsics@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "math-intrinsics@npm:1.1.0"
+ checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f
+ languageName: node
+ linkType: hard
+
+"memoize-one@npm:^5.0.0":
+ version: 5.2.1
+ resolution: "memoize-one@npm:5.2.1"
+ checksum: 10c0/fd22dbe9a978a2b4f30d6a491fc02fb90792432ad0dab840dc96c1734d2bd7c9cdeb6a26130ec60507eb43230559523615873168bcbe8fafab221c30b11d54c1
+ languageName: node
+ linkType: hard
+
+"meow@npm:^8.0.0, meow@npm:^8.1.2":
+ version: 8.1.2
+ resolution: "meow@npm:8.1.2"
+ dependencies:
+ "@types/minimist": "npm:^1.2.0"
+ camelcase-keys: "npm:^6.2.2"
+ decamelize-keys: "npm:^1.1.0"
+ hard-rejection: "npm:^2.1.0"
+ minimist-options: "npm:4.1.0"
+ normalize-package-data: "npm:^3.0.0"
+ read-pkg-up: "npm:^7.0.1"
+ redent: "npm:^3.0.0"
+ trim-newlines: "npm:^3.0.0"
+ type-fest: "npm:^0.18.0"
+ yargs-parser: "npm:^20.2.3"
+ checksum: 10c0/9a8d90e616f783650728a90f4ea1e5f763c1c5260369e6596b52430f877f4af8ecbaa8c9d952c93bbefd6d5bda4caed6a96a20ba7d27b511d2971909b01922a2
+ languageName: node
+ linkType: hard
+
+"merge-stream@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "merge-stream@npm:2.0.0"
+ checksum: 10c0/867fdbb30a6d58b011449b8885601ec1690c3e41c759ecd5a9d609094f7aed0096c37823ff4a7190ef0b8f22cc86beb7049196ff68c016e3b3c671d0dac91ce5
+ languageName: node
+ linkType: hard
+
+"merge2@npm:^1.3.0, merge2@npm:^1.4.1":
+ version: 1.4.1
+ resolution: "merge2@npm:1.4.1"
+ checksum: 10c0/254a8a4605b58f450308fc474c82ac9a094848081bf4c06778200207820e5193726dc563a0d2c16468810516a5c97d9d3ea0ca6585d23c58ccfff2403e8dbbeb
+ languageName: node
+ linkType: hard
+
+"metro-babel-transformer@npm:0.81.5":
+ version: 0.81.5
+ resolution: "metro-babel-transformer@npm:0.81.5"
+ dependencies:
+ "@babel/core": "npm:^7.25.2"
+ flow-enums-runtime: "npm:^0.0.6"
+ hermes-parser: "npm:0.25.1"
+ nullthrows: "npm:^1.1.1"
+ checksum: 10c0/ce6c26ac96f719df60e85012fc9d4a5ea83d40f5d2f02bb780c64ff8e31bb5e10483c399d023a8130149de811d22b37e4620f638dd0a0b0dfd4b968c24008477
+ languageName: node
+ linkType: hard
+
+"metro-cache-key@npm:0.81.5":
+ version: 0.81.5
+ resolution: "metro-cache-key@npm:0.81.5"
+ dependencies:
+ flow-enums-runtime: "npm:^0.0.6"
+ checksum: 10c0/89d87157c891ed658be04b6e70763b8884d013b70956906169e6a2ed0b3e7cbd59d70c57beaf6ebf81ef9ffdcf1e8cf2f2dae4ee93bf8e17762f605d31945eef
+ languageName: node
+ linkType: hard
+
+"metro-cache@npm:0.81.5":
+ version: 0.81.5
+ resolution: "metro-cache@npm:0.81.5"
+ dependencies:
+ exponential-backoff: "npm:^3.1.1"
+ flow-enums-runtime: "npm:^0.0.6"
+ metro-core: "npm:0.81.5"
+ checksum: 10c0/31b56aaf4711b760043c7cbdb6e0e14b4ada8394625affd30146e846bfd129acc0bb3c8ab032b52d934303129a9605aa774a0ce40f4ece18446a833593726ef4
+ languageName: node
+ linkType: hard
+
+"metro-config@npm:0.81.5, metro-config@npm:^0.81.0":
+ version: 0.81.5
+ resolution: "metro-config@npm:0.81.5"
+ dependencies:
+ connect: "npm:^3.6.5"
+ cosmiconfig: "npm:^5.0.5"
+ flow-enums-runtime: "npm:^0.0.6"
+ jest-validate: "npm:^29.7.0"
+ metro: "npm:0.81.5"
+ metro-cache: "npm:0.81.5"
+ metro-core: "npm:0.81.5"
+ metro-runtime: "npm:0.81.5"
+ checksum: 10c0/fb1d6835923d57025844cec0dd119924e54d668e2ea7d4d922ea2c4515e9f8437cb593c6efcbff22e218412bbb3de482874d9dea8c2735115d3a3f84b7b8ac37
+ languageName: node
+ linkType: hard
+
+"metro-core@npm:0.81.5, metro-core@npm:^0.81.0":
+ version: 0.81.5
+ resolution: "metro-core@npm:0.81.5"
+ dependencies:
+ flow-enums-runtime: "npm:^0.0.6"
+ lodash.throttle: "npm:^4.1.1"
+ metro-resolver: "npm:0.81.5"
+ checksum: 10c0/d932db9ca794505fd8d0b89ec25f2efe367e243347809ecabb65235e29f348f25b6ff9866d2dc00fbd86b0793871f5fc4c368504eccc682c2a004fc734325de8
+ languageName: node
+ linkType: hard
+
+"metro-file-map@npm:0.81.5":
+ version: 0.81.5
+ resolution: "metro-file-map@npm:0.81.5"
+ dependencies:
+ debug: "npm:^2.2.0"
+ fb-watchman: "npm:^2.0.0"
+ flow-enums-runtime: "npm:^0.0.6"
+ graceful-fs: "npm:^4.2.4"
+ invariant: "npm:^2.2.4"
+ jest-worker: "npm:^29.7.0"
+ micromatch: "npm:^4.0.4"
+ nullthrows: "npm:^1.1.1"
+ walker: "npm:^1.0.7"
+ checksum: 10c0/6628634d1cf5e2d6ee1795376729752fbcde3fdcbbeedd9e8a0b9a0a185d0fbd699a8eb850737c02c80c65c60035baf1b556be6e5fbd5134784ebcfdd70ef52e
+ languageName: node
+ linkType: hard
+
+"metro-minify-terser@npm:0.81.5":
+ version: 0.81.5
+ resolution: "metro-minify-terser@npm:0.81.5"
+ dependencies:
+ flow-enums-runtime: "npm:^0.0.6"
+ terser: "npm:^5.15.0"
+ checksum: 10c0/6fc1837acab6039cb8d8ae4083fd75d7f4b0a51f97fff3e818a4cc718170cb54bed2891cab0ddc09272aa4cf8f83a0f62aafa53f87bfe713e06f06a58d7b937a
+ languageName: node
+ linkType: hard
+
+"metro-resolver@npm:0.81.5":
+ version: 0.81.5
+ resolution: "metro-resolver@npm:0.81.5"
+ dependencies:
+ flow-enums-runtime: "npm:^0.0.6"
+ checksum: 10c0/a77a3453e2ffb2a4cbc3a9797b60feab0582d4313ec9048adbb3e85b2ff14f744301f415af75eb00b4f7786cb3f752d6913e662cf1dbd13c259f9f1380238324
+ languageName: node
+ linkType: hard
+
+"metro-runtime@npm:0.81.5, metro-runtime@npm:^0.81.0":
+ version: 0.81.5
+ resolution: "metro-runtime@npm:0.81.5"
+ dependencies:
+ "@babel/runtime": "npm:^7.25.0"
+ flow-enums-runtime: "npm:^0.0.6"
+ checksum: 10c0/6f2664561cc6b8cbec6ce75bcc9a0afc280165eb0f1b536c58822150594d23c91cae7ce8b64c3eb332e89c4084da709e19f13b28befab9928b41be8dc1b52940
+ languageName: node
+ linkType: hard
+
+"metro-source-map@npm:0.81.5, metro-source-map@npm:^0.81.0":
+ version: 0.81.5
+ resolution: "metro-source-map@npm:0.81.5"
+ dependencies:
+ "@babel/traverse": "npm:^7.25.3"
+ "@babel/traverse--for-generate-function-map": "npm:@babel/traverse@^7.25.3"
+ "@babel/types": "npm:^7.25.2"
+ flow-enums-runtime: "npm:^0.0.6"
+ invariant: "npm:^2.2.4"
+ metro-symbolicate: "npm:0.81.5"
+ nullthrows: "npm:^1.1.1"
+ ob1: "npm:0.81.5"
+ source-map: "npm:^0.5.6"
+ vlq: "npm:^1.0.0"
+ checksum: 10c0/eeb3d2bb5631d9b72d27d562ee7699fc775b96924895037dce7963b31e4eafdfe7fe6a1aefc424dde8ce6e1850f1b4bc45610b222267b443bb9f35363f27e927
+ languageName: node
+ linkType: hard
+
+"metro-symbolicate@npm:0.81.5":
+ version: 0.81.5
+ resolution: "metro-symbolicate@npm:0.81.5"
+ dependencies:
+ flow-enums-runtime: "npm:^0.0.6"
+ invariant: "npm:^2.2.4"
+ metro-source-map: "npm:0.81.5"
+ nullthrows: "npm:^1.1.1"
+ source-map: "npm:^0.5.6"
+ vlq: "npm:^1.0.0"
+ bin:
+ metro-symbolicate: src/index.js
+ checksum: 10c0/0645dd913ef16f5755c76c815cc264058d116fcde3505ebacbfa57a4585388777d5c62c7a620d8e054292b78bb2ae7476adddb639a34aaa743cddc5811e86b54
+ languageName: node
+ linkType: hard
+
+"metro-transform-plugins@npm:0.81.5":
+ version: 0.81.5
+ resolution: "metro-transform-plugins@npm:0.81.5"
+ dependencies:
+ "@babel/core": "npm:^7.25.2"
+ "@babel/generator": "npm:^7.25.0"
+ "@babel/template": "npm:^7.25.0"
+ "@babel/traverse": "npm:^7.25.3"
+ flow-enums-runtime: "npm:^0.0.6"
+ nullthrows: "npm:^1.1.1"
+ checksum: 10c0/56d6725eaffcaea6908894b0f19246b8741591d6b2a99a26837e102df43696fc91fd4982a128f7324082272509dc9a3ee5d4cb5df8b270a36175e16783a92d9c
+ languageName: node
+ linkType: hard
+
+"metro-transform-worker@npm:0.81.5":
+ version: 0.81.5
+ resolution: "metro-transform-worker@npm:0.81.5"
+ dependencies:
+ "@babel/core": "npm:^7.25.2"
+ "@babel/generator": "npm:^7.25.0"
+ "@babel/parser": "npm:^7.25.3"
+ "@babel/types": "npm:^7.25.2"
+ flow-enums-runtime: "npm:^0.0.6"
+ metro: "npm:0.81.5"
+ metro-babel-transformer: "npm:0.81.5"
+ metro-cache: "npm:0.81.5"
+ metro-cache-key: "npm:0.81.5"
+ metro-minify-terser: "npm:0.81.5"
+ metro-source-map: "npm:0.81.5"
+ metro-transform-plugins: "npm:0.81.5"
+ nullthrows: "npm:^1.1.1"
+ checksum: 10c0/b213f8873606c15fed9abd14161d2fcb28e7bd9a91d94b48ecb589848d5db65335f10c93e67cc38c4f6eb0e7677828a90c52eece3bf8aa9fae67b0a109aaea09
+ languageName: node
+ linkType: hard
+
+"metro@npm:0.81.5, metro@npm:^0.81.0":
+ version: 0.81.5
+ resolution: "metro@npm:0.81.5"
+ dependencies:
+ "@babel/code-frame": "npm:^7.24.7"
+ "@babel/core": "npm:^7.25.2"
+ "@babel/generator": "npm:^7.25.0"
+ "@babel/parser": "npm:^7.25.3"
+ "@babel/template": "npm:^7.25.0"
+ "@babel/traverse": "npm:^7.25.3"
+ "@babel/types": "npm:^7.25.2"
+ accepts: "npm:^1.3.7"
+ chalk: "npm:^4.0.0"
+ ci-info: "npm:^2.0.0"
+ connect: "npm:^3.6.5"
+ debug: "npm:^2.2.0"
+ error-stack-parser: "npm:^2.0.6"
+ flow-enums-runtime: "npm:^0.0.6"
+ graceful-fs: "npm:^4.2.4"
+ hermes-parser: "npm:0.25.1"
+ image-size: "npm:^1.0.2"
+ invariant: "npm:^2.2.4"
+ jest-worker: "npm:^29.7.0"
+ jsc-safe-url: "npm:^0.2.2"
+ lodash.throttle: "npm:^4.1.1"
+ metro-babel-transformer: "npm:0.81.5"
+ metro-cache: "npm:0.81.5"
+ metro-cache-key: "npm:0.81.5"
+ metro-config: "npm:0.81.5"
+ metro-core: "npm:0.81.5"
+ metro-file-map: "npm:0.81.5"
+ metro-resolver: "npm:0.81.5"
+ metro-runtime: "npm:0.81.5"
+ metro-source-map: "npm:0.81.5"
+ metro-symbolicate: "npm:0.81.5"
+ metro-transform-plugins: "npm:0.81.5"
+ metro-transform-worker: "npm:0.81.5"
+ mime-types: "npm:^2.1.27"
+ nullthrows: "npm:^1.1.1"
+ serialize-error: "npm:^2.1.0"
+ source-map: "npm:^0.5.6"
+ throat: "npm:^5.0.0"
+ ws: "npm:^7.5.10"
+ yargs: "npm:^17.6.2"
+ bin:
+ metro: src/cli.js
+ checksum: 10c0/71b985f668a56e8c51aa36bc989f57927cb59b1ef53eab279ebe588f1a594232cadda04a404c3d6f8428afcc067cd46b51e04c4e6b62856ff667501bd9e83799
+ languageName: node
+ linkType: hard
+
+"micromatch@npm:^4.0.4, micromatch@npm:^4.0.8":
+ version: 4.0.8
+ resolution: "micromatch@npm:4.0.8"
+ dependencies:
+ braces: "npm:^3.0.3"
+ picomatch: "npm:^2.3.1"
+ checksum: 10c0/166fa6eb926b9553f32ef81f5f531d27b4ce7da60e5baf8c021d043b27a388fb95e46a8038d5045877881e673f8134122b59624d5cecbd16eb50a42e7a6b5ca8
+ languageName: node
+ linkType: hard
+
+"mime-db@npm:1.52.0":
+ version: 1.52.0
+ resolution: "mime-db@npm:1.52.0"
+ checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa
+ languageName: node
+ linkType: hard
+
+"mime-types@npm:2.1.35, mime-types@npm:^2.1.27, mime-types@npm:~2.1.34":
+ version: 2.1.35
+ resolution: "mime-types@npm:2.1.35"
+ dependencies:
+ mime-db: "npm:1.52.0"
+ checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2
+ languageName: node
+ linkType: hard
+
+"mime@npm:1.6.0":
+ version: 1.6.0
+ resolution: "mime@npm:1.6.0"
+ bin:
+ mime: cli.js
+ checksum: 10c0/b92cd0adc44888c7135a185bfd0dddc42c32606401c72896a842ae15da71eb88858f17669af41e498b463cd7eb998f7b48939a25b08374c7924a9c8a6f8a81b0
+ languageName: node
+ linkType: hard
+
+"mimic-fn@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "mimic-fn@npm:2.1.0"
+ checksum: 10c0/b26f5479d7ec6cc2bce275a08f146cf78f5e7b661b18114e2506dd91ec7ec47e7a25bf4360e5438094db0560bcc868079fb3b1fb3892b833c1ecbf63f80c95a4
+ languageName: node
+ linkType: hard
+
+"mimic-fn@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "mimic-fn@npm:4.0.0"
+ checksum: 10c0/de9cc32be9996fd941e512248338e43407f63f6d497abe8441fa33447d922e927de54d4cc3c1a3c6d652857acd770389d5a3823f311a744132760ce2be15ccbf
+ languageName: node
+ linkType: hard
+
+"mimic-response@npm:^3.1.0":
+ version: 3.1.0
+ resolution: "mimic-response@npm:3.1.0"
+ checksum: 10c0/0d6f07ce6e03e9e4445bee655202153bdb8a98d67ee8dc965ac140900d7a2688343e6b4c9a72cfc9ef2f7944dfd76eef4ab2482eb7b293a68b84916bac735362
+ languageName: node
+ linkType: hard
+
+"mimic-response@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "mimic-response@npm:4.0.0"
+ checksum: 10c0/761d788d2668ae9292c489605ffd4fad220f442fbae6832adce5ebad086d691e906a6d5240c290293c7a11e99fbdbbef04abbbed498bf8699a4ee0f31315e3fb
+ languageName: node
+ linkType: hard
+
+"min-indent@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "min-indent@npm:1.0.1"
+ checksum: 10c0/7e207bd5c20401b292de291f02913230cb1163abca162044f7db1d951fa245b174dc00869d40dd9a9f32a885ad6a5f3e767ee104cf278f399cb4e92d3f582d5c
+ languageName: node
+ linkType: hard
+
+"minimatch@npm:10.2.3":
+ version: 10.2.3
+ resolution: "minimatch@npm:10.2.3"
+ dependencies:
+ brace-expansion: "npm:^5.0.2"
+ checksum: 10c0/d9ae5f355e8bb77a42dd8c20b950141cec8773ef8716a2bb6df7a6840cc44a00ed828883884e4f1c7b5cb505fa06a17e3ea9ca2edb18fd1dec865ea7f9fcf0e5
+ languageName: node
+ linkType: hard
+
+"minimatch@npm:^3.0.2, minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2":
+ version: 3.1.5
+ resolution: "minimatch@npm:3.1.5"
+ dependencies:
+ brace-expansion: "npm:^1.1.7"
+ checksum: 10c0/2ecbdc0d33f07bddb0315a8b5afbcb761307a8778b48f0b312418ccbced99f104a2d17d8aca7573433c70e8ccd1c56823a441897a45e384ea76ef401a26ace70
+ languageName: node
+ linkType: hard
+
+"minimatch@npm:^5.0.1":
+ version: 5.1.9
+ resolution: "minimatch@npm:5.1.9"
+ dependencies:
+ brace-expansion: "npm:^2.0.1"
+ checksum: 10c0/4202718683815a7288b13e470160a4f9560cf392adef4f453927505817e01ef6b3476ecde13cfcaed17e7326dd3b69ad44eb2daeb19a217c5500f9277893f1d6
+ languageName: node
+ linkType: hard
+
+"minimist-options@npm:4.1.0":
+ version: 4.1.0
+ resolution: "minimist-options@npm:4.1.0"
+ dependencies:
+ arrify: "npm:^1.0.1"
+ is-plain-obj: "npm:^1.1.0"
+ kind-of: "npm:^6.0.3"
+ checksum: 10c0/7871f9cdd15d1e7374e5b013e2ceda3d327a06a8c7b38ae16d9ef941e07d985e952c589e57213f7aa90a8744c60aed9524c0d85e501f5478382d9181f2763f54
+ languageName: node
+ linkType: hard
+
+"minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6":
+ version: 1.2.8
+ resolution: "minimist@npm:1.2.8"
+ checksum: 10c0/19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6
+ languageName: node
+ linkType: hard
+
+"minipass@npm:^7.0.4, minipass@npm:^7.1.2":
+ version: 7.1.3
+ resolution: "minipass@npm:7.1.3"
+ checksum: 10c0/539da88daca16533211ea5a9ee98dc62ff5742f531f54640dd34429e621955e91cc280a91a776026264b7f9f6735947629f920944e9c1558369e8bf22eb33fbb
+ languageName: node
+ linkType: hard
+
+"minizlib@npm:^3.1.0":
+ version: 3.1.0
+ resolution: "minizlib@npm:3.1.0"
+ dependencies:
+ minipass: "npm:^7.1.2"
+ checksum: 10c0/5aad75ab0090b8266069c9aabe582c021ae53eb33c6c691054a13a45db3b4f91a7fb1bd79151e6b4e9e9a86727b522527c0a06ec7d45206b745d54cd3097bcec
+ languageName: node
+ linkType: hard
+
+"mkdirp@npm:^0.5.1":
+ version: 0.5.6
+ resolution: "mkdirp@npm:0.5.6"
+ dependencies:
+ minimist: "npm:^1.2.6"
+ bin:
+ mkdirp: bin/cmd.js
+ checksum: 10c0/e2e2be789218807b58abced04e7b49851d9e46e88a2f9539242cc8a92c9b5c3a0b9bab360bd3014e02a140fc4fbc58e31176c408b493f8a2a6f4986bd7527b01
+ languageName: node
+ linkType: hard
+
+"mkdirp@npm:^1.0.4":
+ version: 1.0.4
+ resolution: "mkdirp@npm:1.0.4"
+ bin:
+ mkdirp: bin/cmd.js
+ checksum: 10c0/46ea0f3ffa8bc6a5bc0c7081ffc3907777f0ed6516888d40a518c5111f8366d97d2678911ad1a6882bf592fa9de6c784fea32e1687bb94e1f4944170af48a5cf
+ languageName: node
+ linkType: hard
+
+"modify-values@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "modify-values@npm:1.0.1"
+ checksum: 10c0/6acb1b82aaf7a02f9f7b554b20cbfc159f223a79c66b0a257511c5933d50b85e12ea1220b0a90a2af6f80bc29ff784f929a52a51881867a93ae6a12ce87a729a
+ languageName: node
+ linkType: hard
+
+"ms@npm:2.0.0":
+ version: 2.0.0
+ resolution: "ms@npm:2.0.0"
+ checksum: 10c0/f8fda810b39fd7255bbdc451c46286e549794fcc700dc9cd1d25658bbc4dc2563a5de6fe7c60f798a16a60c6ceb53f033cb353f493f0cf63e5199b702943159d
+ languageName: node
+ linkType: hard
+
+"ms@npm:2.1.3, ms@npm:^2.1.3":
+ version: 2.1.3
+ resolution: "ms@npm:2.1.3"
+ checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48
+ languageName: node
+ linkType: hard
+
+"mute-stream@npm:1.0.0":
+ version: 1.0.0
+ resolution: "mute-stream@npm:1.0.0"
+ checksum: 10c0/dce2a9ccda171ec979a3b4f869a102b1343dee35e920146776780de182f16eae459644d187e38d59a3d37adf85685e1c17c38cf7bfda7e39a9880f7a1d10a74c
+ languageName: node
+ linkType: hard
+
+"natural-compare-lite@npm:^1.4.0":
+ version: 1.4.0
+ resolution: "natural-compare-lite@npm:1.4.0"
+ checksum: 10c0/f6cef26f5044515754802c0fc475d81426f3b90fe88c20fabe08771ce1f736ce46e0397c10acb569a4dd0acb84c7f1ee70676122f95d5bfdd747af3a6c6bbaa8
+ languageName: node
+ linkType: hard
+
+"natural-compare@npm:^1.4.0":
+ version: 1.4.0
+ resolution: "natural-compare@npm:1.4.0"
+ checksum: 10c0/f5f9a7974bfb28a91afafa254b197f0f22c684d4a1731763dda960d2c8e375b36c7d690e0d9dc8fba774c537af14a7e979129bca23d88d052fbeb9466955e447
+ languageName: node
+ linkType: hard
+
+"negotiator@npm:0.6.3":
+ version: 0.6.3
+ resolution: "negotiator@npm:0.6.3"
+ checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2
+ languageName: node
+ linkType: hard
+
+"neo-async@npm:^2.5.0, neo-async@npm:^2.6.2":
+ version: 2.6.2
+ resolution: "neo-async@npm:2.6.2"
+ checksum: 10c0/c2f5a604a54a8ec5438a342e1f356dff4bc33ccccdb6dc668d94fe8e5eccfc9d2c2eea6064b0967a767ba63b33763f51ccf2cd2441b461a7322656c1f06b3f5d
+ languageName: node
+ linkType: hard
+
+"netmask@npm:^2.0.2":
+ version: 2.1.1
+ resolution: "netmask@npm:2.1.1"
+ checksum: 10c0/c78e31869b0578fb0a9874a0c0fdf0e1f8b3492392d1043355fb11d9ea42ef94e0216c6aee7d8e15db39d1a8caf331f9b144ae3ee43fd951b73a66837711fb09
+ languageName: node
+ linkType: hard
+
+"new-github-release-url@npm:2.0.0":
+ version: 2.0.0
+ resolution: "new-github-release-url@npm:2.0.0"
+ dependencies:
+ type-fest: "npm:^2.5.1"
+ checksum: 10c0/9faec009b8b403efbc407f45306d07de5cc58e09df5b00bdd55b01384cd18b0fd29a97aef6915428ba3b5abb0a5c132c3507468c0c3c101e8d737c1337386786
+ languageName: node
+ linkType: hard
+
+"node-dir@npm:^0.1.17":
+ version: 0.1.17
+ resolution: "node-dir@npm:0.1.17"
+ dependencies:
+ minimatch: "npm:^3.0.2"
+ checksum: 10c0/16222e871708c405079ff8122d4a7e1d522c5b90fc8f12b3112140af871cfc70128c376e845dcd0044c625db0d2efebd2d852414599d240564db61d53402b4c1
+ languageName: node
+ linkType: hard
+
+"node-domexception@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "node-domexception@npm:1.0.0"
+ checksum: 10c0/5e5d63cda29856402df9472335af4bb13875e1927ad3be861dc5ebde38917aecbf9ae337923777af52a48c426b70148815e890a5d72760f1b4d758cc671b1a2b
+ languageName: node
+ linkType: hard
+
+"node-exports-info@npm:^1.6.0":
+ version: 1.6.0
+ resolution: "node-exports-info@npm:1.6.0"
+ dependencies:
+ array.prototype.flatmap: "npm:^1.3.3"
+ es-errors: "npm:^1.3.0"
+ object.entries: "npm:^1.1.9"
+ semver: "npm:^6.3.1"
+ checksum: 10c0/3613f21c60b047e66f168d3499a6be0060d89fb01ddceaa7032c2fb318aff12e4b9b111449c1a9aeb3b848bfdc1d4b6bc8fab327af692319597d21a1e7063692
+ languageName: node
+ linkType: hard
+
+"node-fetch@npm:3.3.1":
+ version: 3.3.1
+ resolution: "node-fetch@npm:3.3.1"
+ dependencies:
+ data-uri-to-buffer: "npm:^4.0.0"
+ fetch-blob: "npm:^3.1.4"
+ formdata-polyfill: "npm:^4.0.10"
+ checksum: 10c0/78671bffed741a2f3ccb15588a42fd7e9db2bdc9f99f9f584e0c749307f9603d961692f0877d853b28a4d1375ab2253b19978dd3bfc0c3189b42adc340bef927
+ languageName: node
+ linkType: hard
+
+"node-fetch@npm:^2.2.0, node-fetch@npm:^2.6.7":
+ version: 2.7.0
+ resolution: "node-fetch@npm:2.7.0"
+ dependencies:
+ whatwg-url: "npm:^5.0.0"
+ peerDependencies:
+ encoding: ^0.1.0
+ peerDependenciesMeta:
+ encoding:
+ optional: true
+ checksum: 10c0/b55786b6028208e6fbe594ccccc213cab67a72899c9234eb59dba51062a299ea853210fcf526998eaa2867b0963ad72338824450905679ff0fa304b8c5093ae8
+ languageName: node
+ linkType: hard
+
+"node-forge@npm:^1":
+ version: 1.4.0
+ resolution: "node-forge@npm:1.4.0"
+ checksum: 10c0/67330a5f1f95257a4c8a93b7d555abe87b5f15e350123aa396c97a21a8ca94f9c6549008eb2c73668a91e0d7e3a905785acbd8f8bd0751c29401292011f8f8e1
+ languageName: node
+ linkType: hard
+
+"node-gyp@npm:latest":
+ version: 13.0.2
+ resolution: "node-gyp@npm:13.0.2"
+ dependencies:
+ env-paths: "npm:^2.2.0"
+ exponential-backoff: "npm:^3.1.1"
+ graceful-fs: "npm:^4.2.6"
+ nopt: "npm:^10.0.0"
+ proc-log: "npm:^7.0.0"
+ semver: "npm:^7.3.5"
+ tar: "npm:^7.5.4"
+ tinyglobby: "npm:^0.2.12"
+ undici: "npm:^8.4.1"
+ which: "npm:^7.0.0"
+ bin:
+ node-gyp: bin/node-gyp.js
+ checksum: 10c0/29d33ccf47ffeeb5e7af925550b416f698a26a72eb10975c7eb5775c1d0cecacd76d164a4aa45503d3ddcece209db65c712be00423c69381a4cd14e2e6540559
+ languageName: node
+ linkType: hard
+
+"node-int64@npm:^0.4.0":
+ version: 0.4.0
+ resolution: "node-int64@npm:0.4.0"
+ checksum: 10c0/a6a4d8369e2f2720e9c645255ffde909c0fbd41c92ea92a5607fc17055955daac99c1ff589d421eee12a0d24e99f7bfc2aabfeb1a4c14742f6c099a51863f31a
+ languageName: node
+ linkType: hard
+
+"node-releases@npm:^2.0.36":
+ version: 2.0.38
+ resolution: "node-releases@npm:2.0.38"
+ checksum: 10c0/db9909234ed750c5b9d0075f83214cd16b76370b54eab50e3554f3ba939ba7ac39f3aca2ddf93471ae8553dbde2ea9354b0ae380c9cff1f8e53b55e414903413
+ languageName: node
+ linkType: hard
+
+"nopt@npm:^10.0.0":
+ version: 10.0.1
+ resolution: "nopt@npm:10.0.1"
+ dependencies:
+ abbrev: "npm:^5.0.0"
+ bin:
+ nopt: bin/nopt.js
+ checksum: 10c0/980d89257f9587f3e1f77877ddbf905d6aa3b738ec33e49a4fa1a059a0dd82eb28063982b150654a7ae9de386f2ead60e56172db7d37cf56de545f7392a2a26a
+ languageName: node
+ linkType: hard
+
+"normalize-package-data@npm:^2.3.2, normalize-package-data@npm:^2.5.0":
+ version: 2.5.0
+ resolution: "normalize-package-data@npm:2.5.0"
+ dependencies:
+ hosted-git-info: "npm:^2.1.4"
+ resolve: "npm:^1.10.0"
+ semver: "npm:2 || 3 || 4 || 5"
+ validate-npm-package-license: "npm:^3.0.1"
+ checksum: 10c0/357cb1646deb42f8eb4c7d42c4edf0eec312f3628c2ef98501963cc4bbe7277021b2b1d977f982b2edce78f5a1014613ce9cf38085c3df2d76730481357ca504
+ languageName: node
+ linkType: hard
+
+"normalize-package-data@npm:^3.0.0":
+ version: 3.0.3
+ resolution: "normalize-package-data@npm:3.0.3"
+ dependencies:
+ hosted-git-info: "npm:^4.0.1"
+ is-core-module: "npm:^2.5.0"
+ semver: "npm:^7.3.4"
+ validate-npm-package-license: "npm:^3.0.1"
+ checksum: 10c0/e5d0f739ba2c465d41f77c9d950e291ea4af78f8816ddb91c5da62257c40b76d8c83278b0d08ffbcd0f187636ebddad20e181e924873916d03e6e5ea2ef026be
+ languageName: node
+ linkType: hard
+
+"normalize-path@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "normalize-path@npm:3.0.0"
+ checksum: 10c0/e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046
+ languageName: node
+ linkType: hard
+
+"normalize-url@npm:^8.0.0":
+ version: 8.1.1
+ resolution: "normalize-url@npm:8.1.1"
+ checksum: 10c0/1beb700ce42acb2288f39453cdf8001eead55bbf046d407936a40404af420b8c1c6be97a869884ae9e659d7b1c744e40e905c875ac9290644eec2e3e6fb0b370
+ languageName: node
+ linkType: hard
+
+"npm-run-path@npm:^4.0.0, npm-run-path@npm:^4.0.1":
+ version: 4.0.1
+ resolution: "npm-run-path@npm:4.0.1"
+ dependencies:
+ path-key: "npm:^3.0.0"
+ checksum: 10c0/6f9353a95288f8455cf64cbeb707b28826a7f29690244c1e4bb61ec573256e021b6ad6651b394eb1ccfd00d6ec50147253aba2c5fe58a57ceb111fad62c519ac
+ languageName: node
+ linkType: hard
+
+"npm-run-path@npm:^5.1.0":
+ version: 5.3.0
+ resolution: "npm-run-path@npm:5.3.0"
+ dependencies:
+ path-key: "npm:^4.0.0"
+ checksum: 10c0/124df74820c40c2eb9a8612a254ea1d557ddfab1581c3e751f825e3e366d9f00b0d76a3c94ecd8398e7f3eee193018622677e95816e8491f0797b21e30b2deba
+ languageName: node
+ linkType: hard
+
+"nullthrows@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "nullthrows@npm:1.1.1"
+ checksum: 10c0/56f34bd7c3dcb3bd23481a277fa22918120459d3e9d95ca72976c72e9cac33a97483f0b95fc420e2eb546b9fe6db398273aba9a938650cdb8c98ee8f159dcb30
+ languageName: node
+ linkType: hard
+
+"ob1@npm:0.81.5":
+ version: 0.81.5
+ resolution: "ob1@npm:0.81.5"
+ dependencies:
+ flow-enums-runtime: "npm:^0.0.6"
+ checksum: 10c0/e0baf43d38a863b1fccfb1d074fcd29c94e664e97b901d9444595b655ac95f2cc8ed161131b5e589679f4803bee7004892cbbb2025101203bde14933198281af
+ languageName: node
+ linkType: hard
+
+"object-assign@npm:^4.1.1":
+ version: 4.1.1
+ resolution: "object-assign@npm:4.1.1"
+ checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414
+ languageName: node
+ linkType: hard
+
+"object-inspect@npm:^1.13.3, object-inspect@npm:^1.13.4":
+ version: 1.13.4
+ resolution: "object-inspect@npm:1.13.4"
+ checksum: 10c0/d7f8711e803b96ea3191c745d6f8056ce1f2496e530e6a19a0e92d89b0fa3c76d910c31f0aa270432db6bd3b2f85500a376a83aaba849a8d518c8845b3211692
+ languageName: node
+ linkType: hard
+
+"object-keys@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "object-keys@npm:1.1.1"
+ checksum: 10c0/b11f7ccdbc6d406d1f186cdadb9d54738e347b2692a14439ca5ac70c225fa6db46db809711b78589866d47b25fc3e8dee0b4c722ac751e11180f9380e3d8601d
+ languageName: node
+ linkType: hard
+
+"object.assign@npm:^4.1.4, object.assign@npm:^4.1.7":
+ version: 4.1.7
+ resolution: "object.assign@npm:4.1.7"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.3"
+ define-properties: "npm:^1.2.1"
+ es-object-atoms: "npm:^1.0.0"
+ has-symbols: "npm:^1.1.0"
+ object-keys: "npm:^1.1.1"
+ checksum: 10c0/3b2732bd860567ea2579d1567525168de925a8d852638612846bd8082b3a1602b7b89b67b09913cbb5b9bd6e95923b2ae73580baa9d99cb4e990564e8cbf5ddc
+ languageName: node
+ linkType: hard
+
+"object.entries@npm:^1.1.9":
+ version: 1.1.9
+ resolution: "object.entries@npm:1.1.9"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.4"
+ define-properties: "npm:^1.2.1"
+ es-object-atoms: "npm:^1.1.1"
+ checksum: 10c0/d4b8c1e586650407da03370845f029aa14076caca4e4d4afadbc69cfb5b78035fd3ee7be417141abdb0258fa142e59b11923b4c44d8b1255b28f5ffcc50da7db
+ languageName: node
+ linkType: hard
+
+"object.fromentries@npm:^2.0.8":
+ version: 2.0.8
+ resolution: "object.fromentries@npm:2.0.8"
+ dependencies:
+ call-bind: "npm:^1.0.7"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.2"
+ es-object-atoms: "npm:^1.0.0"
+ checksum: 10c0/cd4327e6c3369cfa805deb4cbbe919bfb7d3aeebf0bcaba291bb568ea7169f8f8cdbcabe2f00b40db0c20cd20f08e11b5f3a5a36fb7dd3fe04850c50db3bf83b
+ languageName: node
+ linkType: hard
+
+"object.values@npm:^1.1.6, object.values@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "object.values@npm:1.2.1"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.3"
+ define-properties: "npm:^1.2.1"
+ es-object-atoms: "npm:^1.0.0"
+ checksum: 10c0/3c47814fdc64842ae3d5a74bc9d06bdd8d21563c04d9939bf6716a9c00596a4ebc342552f8934013d1ec991c74e3671b26710a0c51815f0b603795605ab6b2c9
+ languageName: node
+ linkType: hard
+
+"on-finished@npm:~2.3.0":
+ version: 2.3.0
+ resolution: "on-finished@npm:2.3.0"
+ dependencies:
+ ee-first: "npm:1.1.1"
+ checksum: 10c0/c904f9e518b11941eb60279a3cbfaf1289bd0001f600a950255b1dede9fe3df8cd74f38483550b3bb9485165166acb5db500c3b4c4337aec2815c88c96fcc2ea
+ languageName: node
+ linkType: hard
+
+"on-finished@npm:~2.4.1":
+ version: 2.4.1
+ resolution: "on-finished@npm:2.4.1"
+ dependencies:
+ ee-first: "npm:1.1.1"
+ checksum: 10c0/46fb11b9063782f2d9968863d9cbba33d77aa13c17f895f56129c274318b86500b22af3a160fe9995aa41317efcd22941b6eba747f718ced08d9a73afdb087b4
+ languageName: node
+ linkType: hard
+
+"once@npm:^1.3.0, once@npm:^1.3.1, once@npm:^1.4.0":
+ version: 1.4.0
+ resolution: "once@npm:1.4.0"
+ dependencies:
+ wrappy: "npm:1"
+ checksum: 10c0/5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0
+ languageName: node
+ linkType: hard
+
+"onetime@npm:^5.1.0, onetime@npm:^5.1.2":
+ version: 5.1.2
+ resolution: "onetime@npm:5.1.2"
+ dependencies:
+ mimic-fn: "npm:^2.1.0"
+ checksum: 10c0/ffcef6fbb2692c3c40749f31ea2e22677a876daea92959b8a80b521d95cca7a668c884d8b2045d1d8ee7d56796aa405c405462af112a1477594cc63531baeb8f
+ languageName: node
+ linkType: hard
+
+"onetime@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "onetime@npm:6.0.0"
+ dependencies:
+ mimic-fn: "npm:^4.0.0"
+ checksum: 10c0/4eef7c6abfef697dd4479345a4100c382d73c149d2d56170a54a07418c50816937ad09500e1ed1e79d235989d073a9bade8557122aee24f0576ecde0f392bb6c
+ languageName: node
+ linkType: hard
+
+"open@npm:9.1.0":
+ version: 9.1.0
+ resolution: "open@npm:9.1.0"
+ dependencies:
+ default-browser: "npm:^4.0.0"
+ define-lazy-prop: "npm:^3.0.0"
+ is-inside-container: "npm:^1.0.0"
+ is-wsl: "npm:^2.2.0"
+ checksum: 10c0/8073ec0dd8994a7a7d9bac208bd17d093993a65ce10f2eb9b62b6d3a91c9366ae903938a237c275493c130171d339f6dcbdd2a2de7e32953452c0867b97825af
+ languageName: node
+ linkType: hard
+
+"open@npm:^7.0.3":
+ version: 7.4.2
+ resolution: "open@npm:7.4.2"
+ dependencies:
+ is-docker: "npm:^2.0.0"
+ is-wsl: "npm:^2.1.1"
+ checksum: 10c0/77573a6a68f7364f3a19a4c80492712720746b63680ee304555112605ead196afe91052bd3c3d165efdf4e9d04d255e87de0d0a77acec11ef47fd5261251813f
+ languageName: node
+ linkType: hard
+
+"optionator@npm:^0.8.1":
+ version: 0.8.3
+ resolution: "optionator@npm:0.8.3"
+ dependencies:
+ deep-is: "npm:~0.1.3"
+ fast-levenshtein: "npm:~2.0.6"
+ levn: "npm:~0.3.0"
+ prelude-ls: "npm:~1.1.2"
+ type-check: "npm:~0.3.2"
+ word-wrap: "npm:~1.2.3"
+ checksum: 10c0/ad7000ea661792b3ec5f8f86aac28895850988926f483b5f308f59f4607dfbe24c05df2d049532ee227c040081f39401a268cf7bbf3301512f74c4d760dc6dd8
+ languageName: node
+ linkType: hard
+
+"optionator@npm:^0.9.3":
+ version: 0.9.4
+ resolution: "optionator@npm:0.9.4"
+ dependencies:
+ deep-is: "npm:^0.1.3"
+ fast-levenshtein: "npm:^2.0.6"
+ levn: "npm:^0.4.1"
+ prelude-ls: "npm:^1.2.1"
+ type-check: "npm:^0.4.0"
+ word-wrap: "npm:^1.2.5"
+ checksum: 10c0/4afb687a059ee65b61df74dfe87d8d6815cd6883cb8b3d5883a910df72d0f5d029821f37025e4bccf4048873dbdb09acc6d303d27b8f76b1a80dd5a7d5334675
+ languageName: node
+ linkType: hard
+
+"ora@npm:6.3.1":
+ version: 6.3.1
+ resolution: "ora@npm:6.3.1"
+ dependencies:
+ chalk: "npm:^5.0.0"
+ cli-cursor: "npm:^4.0.0"
+ cli-spinners: "npm:^2.6.1"
+ is-interactive: "npm:^2.0.0"
+ is-unicode-supported: "npm:^1.1.0"
+ log-symbols: "npm:^5.1.0"
+ stdin-discarder: "npm:^0.1.0"
+ strip-ansi: "npm:^7.0.1"
+ wcwidth: "npm:^1.0.1"
+ checksum: 10c0/f8753e234c9967c86cfb73e7396e1a51ed8771c4921d539af8e8962b32c7928cefef7b3c4ce730a504be72b1437f91cc0523f468927b9fe322498c4edcc50203
+ languageName: node
+ linkType: hard
+
+"ora@npm:^5.4.1":
+ version: 5.4.1
+ resolution: "ora@npm:5.4.1"
+ dependencies:
+ bl: "npm:^4.1.0"
+ chalk: "npm:^4.1.0"
+ cli-cursor: "npm:^3.1.0"
+ cli-spinners: "npm:^2.5.0"
+ is-interactive: "npm:^1.0.0"
+ is-unicode-supported: "npm:^0.1.0"
+ log-symbols: "npm:^4.1.0"
+ strip-ansi: "npm:^6.0.0"
+ wcwidth: "npm:^1.0.1"
+ checksum: 10c0/10ff14aace236d0e2f044193362b22edce4784add08b779eccc8f8ef97195cae1248db8ec1ec5f5ff076f91acbe573f5f42a98c19b78dba8c54eefff983cae85
+ languageName: node
+ linkType: hard
+
+"os-name@npm:5.1.0":
+ version: 5.1.0
+ resolution: "os-name@npm:5.1.0"
+ dependencies:
+ macos-release: "npm:^3.1.0"
+ windows-release: "npm:^5.0.1"
+ checksum: 10c0/6a0b8b767783fe55e41ddd6347147389b08ab9ad4a64355189844cefa3081a5d1fb77504eaac931b883e7fd73baf6013e0cc3fc86bb5d2190683073669db5572
+ languageName: node
+ linkType: hard
+
+"os-tmpdir@npm:~1.0.2":
+ version: 1.0.2
+ resolution: "os-tmpdir@npm:1.0.2"
+ checksum: 10c0/f438450224f8e2687605a8dd318f0db694b6293c5d835ae509a69e97c8de38b6994645337e5577f5001115470414638978cc49da1cdcc25106dad8738dc69990
+ languageName: node
+ linkType: hard
+
+"own-keys@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "own-keys@npm:1.0.1"
+ dependencies:
+ get-intrinsic: "npm:^1.2.6"
+ object-keys: "npm:^1.1.1"
+ safe-push-apply: "npm:^1.0.0"
+ checksum: 10c0/6dfeb3455bff92ec3f16a982d4e3e65676345f6902d9f5ded1d8265a6318d0200ce461956d6d1c70053c7fe9f9fe65e552faac03f8140d37ef0fdd108e67013a
+ languageName: node
+ linkType: hard
+
+"p-cancelable@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "p-cancelable@npm:3.0.0"
+ checksum: 10c0/948fd4f8e87b956d9afc2c6c7392de9113dac817cb1cecf4143f7a3d4c57ab5673614a80be3aba91ceec5e4b69fd8c869852d7e8048bc3d9273c4c36ce14b9aa
+ languageName: node
+ linkType: hard
+
+"p-limit@npm:^1.1.0":
+ version: 1.3.0
+ resolution: "p-limit@npm:1.3.0"
+ dependencies:
+ p-try: "npm:^1.0.0"
+ checksum: 10c0/5c1b1d53d180b2c7501efb04b7c817448e10efe1ba46f4783f8951994d5027e4cd88f36ad79af50546682594c4ebd11702ac4b9364c47f8074890e2acad0edee
+ languageName: node
+ linkType: hard
+
+"p-limit@npm:^2.0.0, p-limit@npm:^2.2.0":
+ version: 2.3.0
+ resolution: "p-limit@npm:2.3.0"
+ dependencies:
+ p-try: "npm:^2.0.0"
+ checksum: 10c0/8da01ac53efe6a627080fafc127c873da40c18d87b3f5d5492d465bb85ec7207e153948df6b9cbaeb130be70152f874229b8242ee2be84c0794082510af97f12
+ languageName: node
+ linkType: hard
+
+"p-limit@npm:^3.0.2, p-limit@npm:^3.1.0":
+ version: 3.1.0
+ resolution: "p-limit@npm:3.1.0"
+ dependencies:
+ yocto-queue: "npm:^0.1.0"
+ checksum: 10c0/9db675949dbdc9c3763c89e748d0ef8bdad0afbb24d49ceaf4c46c02c77d30db4e0652ed36d0a0a7a95154335fab810d95c86153105bb73b3a90448e2bb14e1a
+ languageName: node
+ linkType: hard
+
+"p-locate@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "p-locate@npm:2.0.0"
+ dependencies:
+ p-limit: "npm:^1.1.0"
+ checksum: 10c0/82da4be88fb02fd29175e66021610c881938d3cc97c813c71c1a605fac05617d57fd5d3b337494a6106c0edb2a37c860241430851411f1b265108cead34aee67
+ languageName: node
+ linkType: hard
+
+"p-locate@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "p-locate@npm:3.0.0"
+ dependencies:
+ p-limit: "npm:^2.0.0"
+ checksum: 10c0/7b7f06f718f19e989ce6280ed4396fb3c34dabdee0df948376483032f9d5ec22fdf7077ec942143a75827bb85b11da72016497fc10dac1106c837ed593969ee8
+ languageName: node
+ linkType: hard
+
+"p-locate@npm:^4.1.0":
+ version: 4.1.0
+ resolution: "p-locate@npm:4.1.0"
+ dependencies:
+ p-limit: "npm:^2.2.0"
+ checksum: 10c0/1b476ad69ad7f6059744f343b26d51ce091508935c1dbb80c4e0a2f397ffce0ca3a1f9f5cd3c7ce19d7929a09719d5c65fe70d8ee289c3f267cd36f2881813e9
+ languageName: node
+ linkType: hard
+
+"p-locate@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "p-locate@npm:5.0.0"
+ dependencies:
+ p-limit: "npm:^3.0.2"
+ checksum: 10c0/2290d627ab7903b8b70d11d384fee714b797f6040d9278932754a6860845c4d3190603a0772a663c8cb5a7b21d1b16acb3a6487ebcafa9773094edc3dfe6009a
+ languageName: node
+ linkType: hard
+
+"p-map@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "p-map@npm:4.0.0"
+ dependencies:
+ aggregate-error: "npm:^3.0.0"
+ checksum: 10c0/592c05bd6262c466ce269ff172bb8de7c6975afca9b50c975135b974e9bdaafbfe80e61aaaf5be6d1200ba08b30ead04b88cfa7e25ff1e3b93ab28c9f62a2c75
+ languageName: node
+ linkType: hard
+
+"p-try@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "p-try@npm:1.0.0"
+ checksum: 10c0/757ba31de5819502b80c447826fac8be5f16d3cb4fbf9bc8bc4971dba0682e84ac33e4b24176ca7058c69e29f64f34d8d9e9b08e873b7b7bb0aa89d620fa224a
+ languageName: node
+ linkType: hard
+
+"p-try@npm:^2.0.0":
+ version: 2.2.0
+ resolution: "p-try@npm:2.2.0"
+ checksum: 10c0/c36c19907734c904b16994e6535b02c36c2224d433e01a2f1ab777237f4d86e6289fd5fd464850491e940379d4606ed850c03e0f9ab600b0ebddb511312e177f
+ languageName: node
+ linkType: hard
+
+"pac-proxy-agent@npm:^6.0.3":
+ version: 6.0.4
+ resolution: "pac-proxy-agent@npm:6.0.4"
+ dependencies:
+ agent-base: "npm:^7.0.2"
+ debug: "npm:^4.3.4"
+ get-uri: "npm:^6.0.1"
+ http-proxy-agent: "npm:^7.0.0"
+ https-proxy-agent: "npm:^7.0.0"
+ pac-resolver: "npm:^6.0.1"
+ socks-proxy-agent: "npm:^8.0.1"
+ checksum: 10c0/810aaaac1b3606438c83de862a3be8aa460021700382a77cb06c662ad9082492e7df28e3c48d12c999afc202e063ff0aded1daa634646a8c0eeaf6d20211360a
+ languageName: node
+ linkType: hard
+
+"pac-resolver@npm:^6.0.1":
+ version: 6.0.2
+ resolution: "pac-resolver@npm:6.0.2"
+ dependencies:
+ degenerator: "npm:^4.0.4"
+ ip: "npm:^1.1.8"
+ netmask: "npm:^2.0.2"
+ checksum: 10c0/7032496b3526e20d810ed6f7dbb996c983e9609691ba02cf19ac054a9b39cc18fa2545a6ae7d5bfc11536291f3cf844f960de76514da835058133b42ae69f9eb
+ languageName: node
+ linkType: hard
+
+"package-json@npm:^8.1.0":
+ version: 8.1.1
+ resolution: "package-json@npm:8.1.1"
+ dependencies:
+ got: "npm:^12.1.0"
+ registry-auth-token: "npm:^5.0.1"
+ registry-url: "npm:^6.0.0"
+ semver: "npm:^7.3.7"
+ checksum: 10c0/83b057878bca229033aefad4ef51569b484e63a65831ddf164dc31f0486817e17ffcb58c819c7af3ef3396042297096b3ffc04e107fd66f8f48756f6d2071c8f
+ languageName: node
+ linkType: hard
+
+"parent-module@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "parent-module@npm:1.0.1"
+ dependencies:
+ callsites: "npm:^3.0.0"
+ checksum: 10c0/c63d6e80000d4babd11978e0d3fee386ca7752a02b035fd2435960ffaa7219dc42146f07069fb65e6e8bf1caef89daf9af7535a39bddf354d78bf50d8294f556
+ languageName: node
+ linkType: hard
+
+"parse-json@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "parse-json@npm:4.0.0"
+ dependencies:
+ error-ex: "npm:^1.3.1"
+ json-parse-better-errors: "npm:^1.0.1"
+ checksum: 10c0/8d80790b772ccb1bcea4e09e2697555e519d83d04a77c2b4237389b813f82898943a93ffff7d0d2406203bdd0c30dcf95b1661e3a53f83d0e417f053957bef32
+ languageName: node
+ linkType: hard
+
+"parse-json@npm:^5.0.0, parse-json@npm:^5.2.0":
+ version: 5.2.0
+ resolution: "parse-json@npm:5.2.0"
+ dependencies:
+ "@babel/code-frame": "npm:^7.0.0"
+ error-ex: "npm:^1.3.1"
+ json-parse-even-better-errors: "npm:^2.3.0"
+ lines-and-columns: "npm:^1.1.6"
+ checksum: 10c0/77947f2253005be7a12d858aedbafa09c9ae39eb4863adf330f7b416ca4f4a08132e453e08de2db46459256fb66afaac5ee758b44fe6541b7cdaf9d252e59585
+ languageName: node
+ linkType: hard
+
+"parse-path@npm:^7.0.0":
+ version: 7.1.0
+ resolution: "parse-path@npm:7.1.0"
+ dependencies:
+ protocols: "npm:^2.0.0"
+ checksum: 10c0/8c8c8b3019323d686e7b1cd6fd9653bc233404403ad68827836fbfe59dfe26aaef64ed4e0396d0e20c4a7e1469312ec969a679618960e79d5e7c652dc0da5a0f
+ languageName: node
+ linkType: hard
+
+"parse-url@npm:^8.1.0":
+ version: 8.1.0
+ resolution: "parse-url@npm:8.1.0"
+ dependencies:
+ parse-path: "npm:^7.0.0"
+ checksum: 10c0/68b95afdf4bbf72e57c7ab66f8757c935fff888f7e2b0f1e06098b4faa19e06b6b743bddaed5bc8df4f0c2de6fc475355d787373b2fdd40092be9e4e4b996648
+ languageName: node
+ linkType: hard
+
+"parseurl@npm:~1.3.3":
+ version: 1.3.3
+ resolution: "parseurl@npm:1.3.3"
+ checksum: 10c0/90dd4760d6f6174adb9f20cf0965ae12e23879b5f5464f38e92fce8073354341e4b3b76fa3d878351efe7d01e617121955284cfd002ab087fba1a0726ec0b4f5
+ languageName: node
+ linkType: hard
+
+"path-exists@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "path-exists@npm:3.0.0"
+ checksum: 10c0/17d6a5664bc0a11d48e2b2127d28a0e58822c6740bde30403f08013da599182289c56518bec89407e3f31d3c2b6b296a4220bc3f867f0911fee6952208b04167
+ languageName: node
+ linkType: hard
+
+"path-exists@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "path-exists@npm:4.0.0"
+ checksum: 10c0/8c0bd3f5238188197dc78dced15207a4716c51cc4e3624c44fc97acf69558f5ebb9a2afff486fe1b4ee148e0c133e96c5e11a9aa5c48a3006e3467da070e5e1b
+ languageName: node
+ linkType: hard
+
+"path-is-absolute@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "path-is-absolute@npm:1.0.1"
+ checksum: 10c0/127da03c82172a2a50099cddbf02510c1791fc2cc5f7713ddb613a56838db1e8168b121a920079d052e0936c23005562059756d653b7c544c53185efe53be078
+ languageName: node
+ linkType: hard
+
+"path-key@npm:^3.0.0, path-key@npm:^3.1.0":
+ version: 3.1.1
+ resolution: "path-key@npm:3.1.1"
+ checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c
+ languageName: node
+ linkType: hard
+
+"path-key@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "path-key@npm:4.0.0"
+ checksum: 10c0/794efeef32863a65ac312f3c0b0a99f921f3e827ff63afa5cb09a377e202c262b671f7b3832a4e64731003fa94af0263713962d317b9887bd1e0c48a342efba3
+ languageName: node
+ linkType: hard
+
+"path-parse@npm:^1.0.7":
+ version: 1.0.7
+ resolution: "path-parse@npm:1.0.7"
+ checksum: 10c0/11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1
+ languageName: node
+ linkType: hard
+
+"path-type@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "path-type@npm:3.0.0"
+ dependencies:
+ pify: "npm:^3.0.0"
+ checksum: 10c0/1332c632f1cac15790ebab8dd729b67ba04fc96f81647496feb1c2975d862d046f41e4b975dbd893048999b2cc90721f72924ad820acc58c78507ba7141a8e56
+ languageName: node
+ linkType: hard
+
+"path-type@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "path-type@npm:4.0.0"
+ checksum: 10c0/666f6973f332f27581371efaf303fd6c272cc43c2057b37aa99e3643158c7e4b2626549555d88626e99ea9e046f82f32e41bbde5f1508547e9a11b149b52387c
+ languageName: node
+ linkType: hard
+
+"picocolors@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "picocolors@npm:1.1.1"
+ checksum: 10c0/e2e3e8170ab9d7c7421969adaa7e1b31434f789afb9b3f115f6b96d91945041ac3ceb02e9ec6fe6510ff036bcc0bf91e69a1772edc0b707e12b19c0f2d6bcf58
+ languageName: node
+ linkType: hard
+
+"picomatch@npm:^2.0.4, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1":
+ version: 2.3.2
+ resolution: "picomatch@npm:2.3.2"
+ checksum: 10c0/a554d1709e59be97d1acb9eaedbbc700a5c03dbd4579807baed95100b00420bc729335440ef15004ae2378984e2487a7c1cebd743cfdb72b6fa9ab69223c0d61
+ languageName: node
+ linkType: hard
+
+"picomatch@npm:^4.0.4":
+ version: 4.0.7
+ resolution: "picomatch@npm:4.0.7"
+ checksum: 10c0/beb6ae02c43ae44e84883b90830196d9046b1726ead292adcf7f57945e0bb0d992d68563d87e03b484b6f3c9a5c6defda7523477f047d7f0e663f126cc01787f
+ languageName: node
+ linkType: hard
+
+"pify@npm:^2.3.0":
+ version: 2.3.0
+ resolution: "pify@npm:2.3.0"
+ checksum: 10c0/551ff8ab830b1052633f59cb8adc9ae8407a436e06b4a9718bcb27dc5844b83d535c3a8512b388b6062af65a98c49bdc0dd523d8b2617b188f7c8fee457158dc
+ languageName: node
+ linkType: hard
+
+"pify@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "pify@npm:3.0.0"
+ checksum: 10c0/fead19ed9d801f1b1fcd0638a1ac53eabbb0945bf615f2f8806a8b646565a04a1b0e7ef115c951d225f042cca388fdc1cd3add46d10d1ed6951c20bd2998af10
+ languageName: node
+ linkType: hard
+
+"pify@npm:^4.0.1":
+ version: 4.0.1
+ resolution: "pify@npm:4.0.1"
+ checksum: 10c0/6f9d404b0d47a965437403c9b90eca8bb2536407f03de165940e62e72c8c8b75adda5516c6b9b23675a5877cc0bcac6bdfb0ef0e39414cd2476d5495da40e7cf
+ languageName: node
+ linkType: hard
+
+"pirates@npm:^4.0.4, pirates@npm:^4.0.6":
+ version: 4.0.7
+ resolution: "pirates@npm:4.0.7"
+ checksum: 10c0/a51f108dd811beb779d58a76864bbd49e239fa40c7984cd11596c75a121a8cc789f1c8971d8bb15f0dbf9d48b76c05bb62fcbce840f89b688c0fa64b37e8478a
+ languageName: node
+ linkType: hard
+
+"pkg-dir@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "pkg-dir@npm:3.0.0"
+ dependencies:
+ find-up: "npm:^3.0.0"
+ checksum: 10c0/902a3d0c1f8ac43b1795fa1ba6ffeb37dfd53c91469e969790f6ed5e29ff2bdc50b63ba6115dc056d2efb4a040aa2446d512b3804bdafdf302f734fb3ec21847
+ languageName: node
+ linkType: hard
+
+"pkg-dir@npm:^4.2.0":
+ version: 4.2.0
+ resolution: "pkg-dir@npm:4.2.0"
+ dependencies:
+ find-up: "npm:^4.0.0"
+ checksum: 10c0/c56bda7769e04907a88423feb320babaed0711af8c436ce3e56763ab1021ba107c7b0cafb11cde7529f669cfc22bffcaebffb573645cbd63842ea9fb17cd7728
+ languageName: node
+ linkType: hard
+
+"pod-install@npm:^0.1.0":
+ version: 0.1.39
+ resolution: "pod-install@npm:0.1.39"
+ bin:
+ pod-install: build/index.js
+ checksum: 10c0/fc5d88a13b6bd58cb9c6336ae0d068f5b7c54d8449f649dd080672583caf701f48bce49a878705ef166b879aaa0068f0a1782061f4cb85c67fff7008dd4ae5fd
+ languageName: node
+ linkType: hard
+
+"possible-typed-array-names@npm:^1.0.0":
+ version: 1.1.0
+ resolution: "possible-typed-array-names@npm:1.1.0"
+ checksum: 10c0/c810983414142071da1d644662ce4caebce890203eb2bc7bf119f37f3fe5796226e117e6cca146b521921fa6531072674174a3325066ac66fce089a53e1e5196
+ languageName: node
+ linkType: hard
+
+"prelude-ls@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "prelude-ls@npm:1.2.1"
+ checksum: 10c0/b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd
+ languageName: node
+ linkType: hard
+
+"prelude-ls@npm:~1.1.2":
+ version: 1.1.2
+ resolution: "prelude-ls@npm:1.1.2"
+ checksum: 10c0/7284270064f74e0bb7f04eb9bff7be677e4146417e599ccc9c1200f0f640f8b11e592d94eb1b18f7aa9518031913bb42bea9c86af07ba69902864e61005d6f18
+ languageName: node
+ linkType: hard
+
+"prettier-linter-helpers@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "prettier-linter-helpers@npm:1.0.1"
+ dependencies:
+ fast-diff: "npm:^1.1.2"
+ checksum: 10c0/91cea965681bc5f62c9d26bd3ca6358b81557261d4802e96ec1cf0acbd99d4b61632d53320cd2c3ec7d7f7805a81345644108a41ef46ddc9688e783a9ac792d1
+ languageName: node
+ linkType: hard
+
+"prettier@npm:^2.0.5":
+ version: 2.8.8
+ resolution: "prettier@npm:2.8.8"
+ bin:
+ prettier: bin-prettier.js
+ checksum: 10c0/463ea8f9a0946cd5b828d8cf27bd8b567345cf02f56562d5ecde198b91f47a76b7ac9eae0facd247ace70e927143af6135e8cf411986b8cb8478784a4d6d724a
+ languageName: node
+ linkType: hard
+
+"pretty-format@npm:^29.0.0, pretty-format@npm:^29.7.0":
+ version: 29.7.0
+ resolution: "pretty-format@npm:29.7.0"
+ dependencies:
+ "@jest/schemas": "npm:^29.6.3"
+ ansi-styles: "npm:^5.0.0"
+ react-is: "npm:^18.0.0"
+ checksum: 10c0/edc5ff89f51916f036c62ed433506b55446ff739358de77207e63e88a28ca2894caac6e73dcb68166a606e51c8087d32d400473e6a9fdd2dbe743f46c9c0276f
+ languageName: node
+ linkType: hard
+
+"proc-log@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "proc-log@npm:7.0.0"
+ checksum: 10c0/b89c2d862604f35fec795477b0c7e376feab3ba0d4f4d291c4e959567442697cf451ac557d0623c1cc38af45a78128b983410f397a10c5d3a67f76c33de4754b
+ languageName: node
+ linkType: hard
+
+"process-nextick-args@npm:~2.0.0":
+ version: 2.0.1
+ resolution: "process-nextick-args@npm:2.0.1"
+ checksum: 10c0/bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367
+ languageName: node
+ linkType: hard
+
+"promise.allsettled@npm:1.0.6":
+ version: 1.0.6
+ resolution: "promise.allsettled@npm:1.0.6"
+ dependencies:
+ array.prototype.map: "npm:^1.0.5"
+ call-bind: "npm:^1.0.2"
+ define-properties: "npm:^1.1.4"
+ es-abstract: "npm:^1.20.4"
+ get-intrinsic: "npm:^1.1.3"
+ iterate-value: "npm:^1.0.2"
+ checksum: 10c0/34f82313be2e9384282935d91bd6c13bb444351f86b75f218f4a388eed59be9e0db87daeafe909997d4afd8f75049b78adcc51ecfe399cc6b60f23b77f235ad9
+ languageName: node
+ linkType: hard
+
+"promise@npm:^8.3.0":
+ version: 8.3.0
+ resolution: "promise@npm:8.3.0"
+ dependencies:
+ asap: "npm:~2.0.6"
+ checksum: 10c0/6fccae27a10bcce7442daf090279968086edd2e3f6cebe054b71816403e2526553edf510d13088a4d0f14d7dfa9b9dfb188cab72d6f942e186a4353b6a29c8bf
+ languageName: node
+ linkType: hard
+
+"prompts@npm:^2.0.1, prompts@npm:^2.4.2":
+ version: 2.4.2
+ resolution: "prompts@npm:2.4.2"
+ dependencies:
+ kleur: "npm:^3.0.3"
+ sisteransi: "npm:^1.0.5"
+ checksum: 10c0/16f1ac2977b19fe2cf53f8411cc98db7a3c8b115c479b2ca5c82b5527cd937aa405fa04f9a5960abeb9daef53191b53b4d13e35c1f5d50e8718c76917c5f1ea4
+ languageName: node
+ linkType: hard
+
+"prop-types@npm:^15.8.1":
+ version: 15.8.1
+ resolution: "prop-types@npm:15.8.1"
+ dependencies:
+ loose-envify: "npm:^1.4.0"
+ object-assign: "npm:^4.1.1"
+ react-is: "npm:^16.13.1"
+ checksum: 10c0/59ece7ca2fb9838031d73a48d4becb9a7cc1ed10e610517c7d8f19a1e02fa47f7c27d557d8a5702bec3cfeccddc853579832b43f449e54635803f277b1c78077
+ languageName: node
+ linkType: hard
+
+"proto-list@npm:~1.2.1":
+ version: 1.2.4
+ resolution: "proto-list@npm:1.2.4"
+ checksum: 10c0/b9179f99394ec8a68b8afc817690185f3b03933f7b46ce2e22c1930dc84b60d09f5ad222beab4e59e58c6c039c7f7fcf620397235ef441a356f31f9744010e12
+ languageName: node
+ linkType: hard
+
+"protocols@npm:^2.0.0, protocols@npm:^2.0.1":
+ version: 2.0.2
+ resolution: "protocols@npm:2.0.2"
+ checksum: 10c0/b87d78c1fcf038d33691da28447ce94011d5c7f0c7fd25bcb5fb4d975991c99117873200c84f4b6a9d7f8b9092713a064356236960d1473a7d6fcd4228897b60
+ languageName: node
+ linkType: hard
+
+"proxy-agent@npm:6.2.1":
+ version: 6.2.1
+ resolution: "proxy-agent@npm:6.2.1"
+ dependencies:
+ agent-base: "npm:^7.0.2"
+ debug: "npm:^4.3.4"
+ http-proxy-agent: "npm:^7.0.0"
+ https-proxy-agent: "npm:^7.0.0"
+ lru-cache: "npm:^7.14.1"
+ pac-proxy-agent: "npm:^6.0.3"
+ proxy-from-env: "npm:^1.1.0"
+ socks-proxy-agent: "npm:^8.0.1"
+ checksum: 10c0/f5eb8465f381e18c46f695c7e988b723e2d1d981a5bdc26bf949e6ebfc1a2e7d9c8e8538fca6a00148cc13984cdc9148ccab8ded48516eba864dd3248bb3737d
+ languageName: node
+ linkType: hard
+
+"proxy-from-env@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "proxy-from-env@npm:1.1.0"
+ checksum: 10c0/fe7dd8b1bdbbbea18d1459107729c3e4a2243ca870d26d34c2c1bcd3e4425b7bcc5112362df2d93cc7fb9746f6142b5e272fd1cc5c86ddf8580175186f6ad42b
+ languageName: node
+ linkType: hard
+
+"pump@npm:^3.0.0":
+ version: 3.0.4
+ resolution: "pump@npm:3.0.4"
+ dependencies:
+ end-of-stream: "npm:^1.1.0"
+ once: "npm:^1.3.1"
+ checksum: 10c0/2780e66b5471c19e3e3e1063b84f3f6a3a08367f24c5ed552f98cd5901e6ada27c7ad6495d4244f553fd03b01884a4561933064f053f47c8994d84fd352768ea
+ languageName: node
+ linkType: hard
+
+"punycode@npm:^2.1.0":
+ version: 2.3.1
+ resolution: "punycode@npm:2.3.1"
+ checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9
+ languageName: node
+ linkType: hard
+
+"pupa@npm:^3.1.0":
+ version: 3.3.0
+ resolution: "pupa@npm:3.3.0"
+ dependencies:
+ escape-goat: "npm:^4.0.0"
+ checksum: 10c0/9707e0a7f00e5922d47527d1c8d88d4224b1e86502da2fca27943eb0e9bb218121c91fa0af6c30531a2ee5ade0c326b5d33c40fdf61bc593c4224027412fd9b7
+ languageName: node
+ linkType: hard
+
+"pure-rand@npm:^6.0.0":
+ version: 6.1.0
+ resolution: "pure-rand@npm:6.1.0"
+ checksum: 10c0/1abe217897bf74dcb3a0c9aba3555fe975023147b48db540aa2faf507aee91c03bf54f6aef0eb2bf59cc259a16d06b28eca37f0dc426d94f4692aeff02fb0e65
+ languageName: node
+ linkType: hard
+
+"q@npm:^1.5.1":
+ version: 1.5.1
+ resolution: "q@npm:1.5.1"
+ checksum: 10c0/7855fbdba126cb7e92ef3a16b47ba998c0786ec7fface236e3eb0135b65df36429d91a86b1fff3ab0927b4ac4ee88a2c44527c7c3b8e2a37efbec9fe34803df4
+ languageName: node
+ linkType: hard
+
+"queue-microtask@npm:^1.2.2":
+ version: 1.2.3
+ resolution: "queue-microtask@npm:1.2.3"
+ checksum: 10c0/900a93d3cdae3acd7d16f642c29a642aea32c2026446151f0778c62ac089d4b8e6c986811076e1ae180a694cedf077d453a11b58ff0a865629a4f82ab558e102
+ languageName: node
+ linkType: hard
+
+"queue@npm:6.0.2":
+ version: 6.0.2
+ resolution: "queue@npm:6.0.2"
+ dependencies:
+ inherits: "npm:~2.0.3"
+ checksum: 10c0/cf987476cc72e7d3aaabe23ccefaab1cd757a2b5e0c8d80b67c9575a6b5e1198807ffd4f0948a3f118b149d1111d810ee773473530b77a5c606673cac2c9c996
+ languageName: node
+ linkType: hard
+
+"quick-lru@npm:^4.0.1":
+ version: 4.0.1
+ resolution: "quick-lru@npm:4.0.1"
+ checksum: 10c0/f9b1596fa7595a35c2f9d913ac312fede13d37dc8a747a51557ab36e11ce113bbe88ef4c0154968845559a7709cb6a7e7cbe75f7972182451cd45e7f057a334d
+ languageName: node
+ linkType: hard
+
+"quick-lru@npm:^5.1.1":
+ version: 5.1.1
+ resolution: "quick-lru@npm:5.1.1"
+ checksum: 10c0/a24cba5da8cec30d70d2484be37622580f64765fb6390a928b17f60cd69e8dbd32a954b3ff9176fa1b86d86ff2ba05252fae55dc4d40d0291c60412b0ad096da
+ languageName: node
+ linkType: hard
+
+"range-parser@npm:~1.2.1":
+ version: 1.2.1
+ resolution: "range-parser@npm:1.2.1"
+ checksum: 10c0/96c032ac2475c8027b7a4e9fe22dc0dfe0f6d90b85e496e0f016fbdb99d6d066de0112e680805075bd989905e2123b3b3d002765149294dce0c1f7f01fcc2ea0
+ languageName: node
+ linkType: hard
+
+"rc@npm:1.2.8":
+ version: 1.2.8
+ resolution: "rc@npm:1.2.8"
+ dependencies:
+ deep-extend: "npm:^0.6.0"
+ ini: "npm:~1.3.0"
+ minimist: "npm:^1.2.0"
+ strip-json-comments: "npm:~2.0.1"
+ bin:
+ rc: ./cli.js
+ checksum: 10c0/24a07653150f0d9ac7168e52943cc3cb4b7a22c0e43c7dff3219977c2fdca5a2760a304a029c20811a0e79d351f57d46c9bde216193a0f73978496afc2b85b15
+ languageName: node
+ linkType: hard
+
+"react-devtools-core@npm:^5.3.1":
+ version: 5.3.2
+ resolution: "react-devtools-core@npm:5.3.2"
+ dependencies:
+ shell-quote: "npm:^1.6.1"
+ ws: "npm:^7"
+ checksum: 10c0/7165544ca5890af62e875eeda3f915e054dc734ad74f77d6490de32ba4fef6c1d30647bbb0643f769dd988913e0edc2bf2b1d6c2679e910150929a6312479cf3
+ languageName: node
+ linkType: hard
+
+"react-is@npm:^16.12.0 || ^17.0.0 || ^18.0.0, react-is@npm:^18.0.0, react-is@npm:^18.2.0":
+ version: 18.3.1
+ resolution: "react-is@npm:18.3.1"
+ checksum: 10c0/f2f1e60010c683479e74c63f96b09fb41603527cd131a9959e2aee1e5a8b0caf270b365e5ca77d4a6b18aae659b60a86150bb3979073528877029b35aecd2072
+ languageName: node
+ linkType: hard
+
+"react-is@npm:^16.13.1":
+ version: 16.13.1
+ resolution: "react-is@npm:16.13.1"
+ checksum: 10c0/33977da7a5f1a287936a0c85639fec6ca74f4f15ef1e59a6bc20338fc73dc69555381e211f7a3529b8150a1f71e4225525b41b60b52965bda53ce7d47377ada1
+ languageName: node
+ linkType: hard
+
+"react-native-builder-bob@npm:0.40.13":
+ version: 0.40.13
+ resolution: "react-native-builder-bob@npm:0.40.13"
+ dependencies:
+ "@babel/core": "npm:^7.25.2"
+ "@babel/plugin-transform-flow-strip-types": "npm:^7.26.5"
+ "@babel/plugin-transform-strict-mode": "npm:^7.24.7"
+ "@babel/preset-env": "npm:^7.25.2"
+ "@babel/preset-react": "npm:^7.24.7"
+ "@babel/preset-typescript": "npm:^7.24.7"
+ arktype: "npm:^2.1.15"
+ babel-plugin-syntax-hermes-parser: "npm:^0.28.0"
+ browserslist: "npm:^4.20.4"
+ cross-spawn: "npm:^7.0.3"
+ dedent: "npm:^0.7.0"
+ del: "npm:^6.1.1"
+ escape-string-regexp: "npm:^4.0.0"
+ fs-extra: "npm:^10.1.0"
+ glob: "npm:^8.0.3"
+ is-git-dirty: "npm:^2.0.1"
+ json5: "npm:^2.2.1"
+ kleur: "npm:^4.1.4"
+ prompts: "npm:^2.4.2"
+ react-native-monorepo-config: "npm:^0.1.8"
+ which: "npm:^2.0.2"
+ yargs: "npm:^17.5.1"
+ bin:
+ bob: bin/bob
+ checksum: 10c0/ea1da4db2ab919ba237cf8e090bd80ff6ddb35ba831d224f5c6866059c5a629c8c7a38af3ab327efbb1cf9a5d56c4295ba2cf34719cba1c19f5c0862282341eb
+ languageName: node
+ linkType: hard
+
+"react-native-monorepo-config@npm:^0.1.8":
+ version: 0.1.10
+ resolution: "react-native-monorepo-config@npm:0.1.10"
+ dependencies:
+ escape-string-regexp: "npm:^5.0.0"
+ fast-glob: "npm:^3.3.3"
+ checksum: 10c0/fa88a725b4fe65443291fba746cccf2a3732defe6c8e1f7aab532b8345feac2b34af7fe17a28a96d30c7b9520f0f99e42962069ef8eb31acc4d33e7aa3b68a83
+ languageName: node
+ linkType: hard
+
+"react-native@npm:0.76.0":
+ version: 0.76.0
+ resolution: "react-native@npm:0.76.0"
+ dependencies:
+ "@jest/create-cache-key-function": "npm:^29.6.3"
+ "@react-native/assets-registry": "npm:0.76.0"
+ "@react-native/codegen": "npm:0.76.0"
+ "@react-native/community-cli-plugin": "npm:0.76.0"
+ "@react-native/gradle-plugin": "npm:0.76.0"
+ "@react-native/js-polyfills": "npm:0.76.0"
+ "@react-native/normalize-colors": "npm:0.76.0"
+ "@react-native/virtualized-lists": "npm:0.76.0"
+ abort-controller: "npm:^3.0.0"
+ anser: "npm:^1.4.9"
+ ansi-regex: "npm:^5.0.0"
+ babel-jest: "npm:^29.7.0"
+ babel-plugin-syntax-hermes-parser: "npm:^0.23.1"
+ base64-js: "npm:^1.5.1"
+ chalk: "npm:^4.0.0"
+ commander: "npm:^12.0.0"
+ event-target-shim: "npm:^5.0.1"
+ flow-enums-runtime: "npm:^0.0.6"
+ glob: "npm:^7.1.1"
+ invariant: "npm:^2.2.4"
+ jest-environment-node: "npm:^29.6.3"
+ jsc-android: "npm:^250231.0.0"
+ memoize-one: "npm:^5.0.0"
+ metro-runtime: "npm:^0.81.0"
+ metro-source-map: "npm:^0.81.0"
+ mkdirp: "npm:^0.5.1"
+ nullthrows: "npm:^1.1.1"
+ pretty-format: "npm:^29.7.0"
+ promise: "npm:^8.3.0"
+ react-devtools-core: "npm:^5.3.1"
+ react-refresh: "npm:^0.14.0"
+ regenerator-runtime: "npm:^0.13.2"
+ scheduler: "npm:0.24.0-canary-efb381bbf-20230505"
+ semver: "npm:^7.1.3"
+ stacktrace-parser: "npm:^0.1.10"
+ whatwg-fetch: "npm:^3.0.0"
+ ws: "npm:^6.2.3"
+ yargs: "npm:^17.6.2"
+ peerDependencies:
+ "@types/react": ^18.2.6
+ react: ^18.2.0
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ bin:
+ react-native: cli.js
+ checksum: 10c0/a24304cc08e3409a820704c4f45f47b994d72906835abb32e8b5289de2bcb6e1f029cba0238163fce88fb7dde6c1b8624934ec4ad937902dc08ee15e7db43503
+ languageName: node
+ linkType: hard
+
+"react-refresh@npm:^0.14.0":
+ version: 0.14.2
+ resolution: "react-refresh@npm:0.14.2"
+ checksum: 10c0/875b72ef56b147a131e33f2abd6ec059d1989854b3ff438898e4f9310bfcc73acff709445b7ba843318a953cb9424bcc2c05af2b3d80011cee28f25aef3e2ebb
+ languageName: node
+ linkType: hard
+
+"react-shallow-renderer@npm:^16.15.0":
+ version: 16.15.0
+ resolution: "react-shallow-renderer@npm:16.15.0"
+ dependencies:
+ object-assign: "npm:^4.1.1"
+ react-is: "npm:^16.12.0 || ^17.0.0 || ^18.0.0"
+ peerDependencies:
+ react: ^16.0.0 || ^17.0.0 || ^18.0.0
+ checksum: 10c0/c194d741792e86043a4ae272f7353c1cb9412bc649945c4220c6a101a6ea5410cceb3d65d5a4d750f11a24f7426e8eec7977e8a4e3ad5d3ee235ca2b18166fa8
+ languageName: node
+ linkType: hard
+
+"react-test-renderer@npm:18.2.0":
+ version: 18.2.0
+ resolution: "react-test-renderer@npm:18.2.0"
+ dependencies:
+ react-is: "npm:^18.2.0"
+ react-shallow-renderer: "npm:^16.15.0"
+ scheduler: "npm:^0.23.0"
+ peerDependencies:
+ react: ^18.2.0
+ checksum: 10c0/53dfada1da1e8dd0498a5601e9eea3dc6ca23c6c2694d1cab9712faea869c11e4ce1c9a618d674cb668a668b41fb6bcf9a7b0a078cd853b1922f002fa22f42c8
+ languageName: node
+ linkType: hard
+
+"react@npm:18.2.0":
+ version: 18.2.0
+ resolution: "react@npm:18.2.0"
+ dependencies:
+ loose-envify: "npm:^1.1.0"
+ checksum: 10c0/b562d9b569b0cb315e44b48099f7712283d93df36b19a39a67c254c6686479d3980b7f013dc931f4a5a3ae7645eae6386b4aa5eea933baa54ecd0f9acb0902b8
+ languageName: node
+ linkType: hard
+
+"read-pkg-up@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "read-pkg-up@npm:3.0.0"
+ dependencies:
+ find-up: "npm:^2.0.0"
+ read-pkg: "npm:^3.0.0"
+ checksum: 10c0/2cd0a180260b0d235990e6e9c8c2330a03882d36bc2eba8930e437ef23ee52a68a894e7e1ccb1c33f03bcceb270a861ee5f7eac686f238857755e2cddfb48ffd
+ languageName: node
+ linkType: hard
+
+"read-pkg-up@npm:^7.0.1":
+ version: 7.0.1
+ resolution: "read-pkg-up@npm:7.0.1"
+ dependencies:
+ find-up: "npm:^4.1.0"
+ read-pkg: "npm:^5.2.0"
+ type-fest: "npm:^0.8.1"
+ checksum: 10c0/82b3ac9fd7c6ca1bdc1d7253eb1091a98ff3d195ee0a45386582ce3e69f90266163c34121e6a0a02f1630073a6c0585f7880b3865efcae9c452fa667f02ca385
+ languageName: node
+ linkType: hard
+
+"read-pkg@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "read-pkg@npm:3.0.0"
+ dependencies:
+ load-json-file: "npm:^4.0.0"
+ normalize-package-data: "npm:^2.3.2"
+ path-type: "npm:^3.0.0"
+ checksum: 10c0/65acf2df89fbcd506b48b7ced56a255ba00adf7ecaa2db759c86cc58212f6fd80f1f0b7a85c848551a5d0685232e9b64f45c1fd5b48d85df2761a160767eeb93
+ languageName: node
+ linkType: hard
+
+"read-pkg@npm:^5.2.0":
+ version: 5.2.0
+ resolution: "read-pkg@npm:5.2.0"
+ dependencies:
+ "@types/normalize-package-data": "npm:^2.4.0"
+ normalize-package-data: "npm:^2.5.0"
+ parse-json: "npm:^5.0.0"
+ type-fest: "npm:^0.6.0"
+ checksum: 10c0/b51a17d4b51418e777029e3a7694c9bd6c578a5ab99db544764a0b0f2c7c0f58f8a6bc101f86a6fceb8ba6d237d67c89acf6170f6b98695d0420ddc86cf109fb
+ languageName: node
+ linkType: hard
+
+"readable-stream@npm:3, readable-stream@npm:^3.0.0, readable-stream@npm:^3.0.2, readable-stream@npm:^3.4.0":
+ version: 3.6.2
+ resolution: "readable-stream@npm:3.6.2"
+ dependencies:
+ inherits: "npm:^2.0.3"
+ string_decoder: "npm:^1.1.1"
+ util-deprecate: "npm:^1.0.1"
+ checksum: 10c0/e37be5c79c376fdd088a45fa31ea2e423e5d48854be7a22a58869b4e84d25047b193f6acb54f1012331e1bcd667ffb569c01b99d36b0bd59658fb33f513511b7
+ languageName: node
+ linkType: hard
+
+"readable-stream@npm:~2.3.6":
+ version: 2.3.8
+ resolution: "readable-stream@npm:2.3.8"
+ dependencies:
+ core-util-is: "npm:~1.0.0"
+ inherits: "npm:~2.0.3"
+ isarray: "npm:~1.0.0"
+ process-nextick-args: "npm:~2.0.0"
+ safe-buffer: "npm:~5.1.1"
+ string_decoder: "npm:~1.1.1"
+ util-deprecate: "npm:~1.0.1"
+ checksum: 10c0/7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa
+ languageName: node
+ linkType: hard
+
+"readline@npm:^1.3.0":
+ version: 1.3.0
+ resolution: "readline@npm:1.3.0"
+ checksum: 10c0/7404c9edc3fd29430221ef1830867c8d87e50612e4ce70f84ecd55686f7db1c81d67c6a4dcb407839f4c459ad05dd34524a2c7a97681e91878367c68d0e38665
+ languageName: node
+ linkType: hard
+
+"recast@npm:^0.21.0":
+ version: 0.21.5
+ resolution: "recast@npm:0.21.5"
+ dependencies:
+ ast-types: "npm:0.15.2"
+ esprima: "npm:~4.0.0"
+ source-map: "npm:~0.6.1"
+ tslib: "npm:^2.0.1"
+ checksum: 10c0/a45168c82195f24fa2c70293a624fece0069a2e8e8adb637f9963777735f81cb3bb62e55172db677ec3573b08b2daaf1eddd85b74da6fe0bd37c9b15eeaf94b4
+ languageName: node
+ linkType: hard
+
+"rechoir@npm:^0.6.2":
+ version: 0.6.2
+ resolution: "rechoir@npm:0.6.2"
+ dependencies:
+ resolve: "npm:^1.1.6"
+ checksum: 10c0/22c4bb32f4934a9468468b608417194f7e3ceba9a508512125b16082c64f161915a28467562368eeb15dc16058eb5b7c13a20b9eb29ff9927d1ebb3b5aa83e84
+ languageName: node
+ linkType: hard
+
+"redent@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "redent@npm:3.0.0"
+ dependencies:
+ indent-string: "npm:^4.0.0"
+ strip-indent: "npm:^3.0.0"
+ checksum: 10c0/d64a6b5c0b50eb3ddce3ab770f866658a2b9998c678f797919ceb1b586bab9259b311407280bd80b804e2a7c7539b19238ae6a2a20c843f1a7fcff21d48c2eae
+ languageName: node
+ linkType: hard
+
+"reflect.getprototypeof@npm:^1.0.6, reflect.getprototypeof@npm:^1.0.9":
+ version: 1.0.10
+ resolution: "reflect.getprototypeof@npm:1.0.10"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.9"
+ es-errors: "npm:^1.3.0"
+ es-object-atoms: "npm:^1.0.0"
+ get-intrinsic: "npm:^1.2.7"
+ get-proto: "npm:^1.0.1"
+ which-builtin-type: "npm:^1.2.1"
+ checksum: 10c0/7facec28c8008876f8ab98e80b7b9cb4b1e9224353fd4756dda5f2a4ab0d30fa0a5074777c6df24e1e0af463a2697513b0a11e548d99cf52f21f7bc6ba48d3ac
+ languageName: node
+ linkType: hard
+
+"regenerate-unicode-properties@npm:^10.2.2":
+ version: 10.2.2
+ resolution: "regenerate-unicode-properties@npm:10.2.2"
+ dependencies:
+ regenerate: "npm:^1.4.2"
+ checksum: 10c0/66a1d6a1dbacdfc49afd88f20b2319a4c33cee56d245163e4d8f5f283e0f45d1085a78f7f7406dd19ea3a5dd7a7799cd020cd817c97464a7507f9d10fbdce87c
+ languageName: node
+ linkType: hard
+
+"regenerate@npm:^1.4.2":
+ version: 1.4.2
+ resolution: "regenerate@npm:1.4.2"
+ checksum: 10c0/f73c9eba5d398c818edc71d1c6979eaa05af7a808682749dd079f8df2a6d91a9b913db216c2c9b03e0a8ba2bba8701244a93f45211afbff691c32c7b275db1b8
+ languageName: node
+ linkType: hard
+
+"regenerator-runtime@npm:^0.13.2":
+ version: 0.13.11
+ resolution: "regenerator-runtime@npm:0.13.11"
+ checksum: 10c0/12b069dc774001fbb0014f6a28f11c09ebfe3c0d984d88c9bced77fdb6fedbacbca434d24da9ae9371bfbf23f754869307fb51a4c98a8b8b18e5ef748677ca24
+ languageName: node
+ linkType: hard
+
+"regexp.prototype.flags@npm:^1.5.3, regexp.prototype.flags@npm:^1.5.4":
+ version: 1.5.4
+ resolution: "regexp.prototype.flags@npm:1.5.4"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ define-properties: "npm:^1.2.1"
+ es-errors: "npm:^1.3.0"
+ get-proto: "npm:^1.0.1"
+ gopd: "npm:^1.2.0"
+ set-function-name: "npm:^2.0.2"
+ checksum: 10c0/83b88e6115b4af1c537f8dabf5c3744032cb875d63bc05c288b1b8c0ef37cbe55353f95d8ca817e8843806e3e150b118bc624e4279b24b4776b4198232735a77
+ languageName: node
+ linkType: hard
+
+"regexpu-core@npm:^6.3.1":
+ version: 6.4.0
+ resolution: "regexpu-core@npm:6.4.0"
+ dependencies:
+ regenerate: "npm:^1.4.2"
+ regenerate-unicode-properties: "npm:^10.2.2"
+ regjsgen: "npm:^0.8.0"
+ regjsparser: "npm:^0.13.0"
+ unicode-match-property-ecmascript: "npm:^2.0.0"
+ unicode-match-property-value-ecmascript: "npm:^2.2.1"
+ checksum: 10c0/1eed9783c023dd06fb1f3ce4b6e3fdf0bc1e30cb036f30aeb2019b351e5e0b74355b40462282ea5db092c79a79331c374c7e9897e44a5ca4509e9f0b570263de
+ languageName: node
+ linkType: hard
+
+"registry-auth-token@npm:^5.0.1":
+ version: 5.1.1
+ resolution: "registry-auth-token@npm:5.1.1"
+ dependencies:
+ "@pnpm/npm-conf": "npm:^3.0.2"
+ checksum: 10c0/86b0f7fd87d327cb4177fee69bcf96563147ea72e206bc9c7a6a50a51c785a31b83a6c45956a489ed292d23b908b2755a075d0b2f7fec1ba91b1fb800b24cee3
+ languageName: node
+ linkType: hard
+
+"registry-url@npm:^6.0.0":
+ version: 6.0.1
+ resolution: "registry-url@npm:6.0.1"
+ dependencies:
+ rc: "npm:1.2.8"
+ checksum: 10c0/66e2221c8113fc35ee9d23fe58cb516fc8d556a189fb8d6f1011a02efccc846c4c9b5075b4027b99a5d5c9ad1345ac37f297bea3c0ca30d607ec8084bf561b90
+ languageName: node
+ linkType: hard
+
+"regjsgen@npm:^0.8.0":
+ version: 0.8.0
+ resolution: "regjsgen@npm:0.8.0"
+ checksum: 10c0/44f526c4fdbf0b29286101a282189e4dbb303f4013cf3fea058668d96d113b9180d3d03d1e13f6d4cbde38b7728bf951aecd9dc199938c080093a9a6f0d7a6bd
+ languageName: node
+ linkType: hard
+
+"regjsparser@npm:^0.13.0":
+ version: 0.13.1
+ resolution: "regjsparser@npm:0.13.1"
+ dependencies:
+ jsesc: "npm:~3.1.0"
+ bin:
+ regjsparser: bin/parser
+ checksum: 10c0/1276c983f00de49e37ef76b181df4390699b46e3666fbe6b8b5512bd75919112574cf023f28ac720d427be158af60dba6a77cce9a8aaff14967263636e667356
+ languageName: node
+ linkType: hard
+
+"release-it@npm:^15.0.0":
+ version: 15.11.0
+ resolution: "release-it@npm:15.11.0"
+ dependencies:
+ "@iarna/toml": "npm:2.2.5"
+ "@octokit/rest": "npm:19.0.11"
+ async-retry: "npm:1.3.3"
+ chalk: "npm:5.2.0"
+ cosmiconfig: "npm:8.1.3"
+ execa: "npm:7.1.1"
+ git-url-parse: "npm:13.1.0"
+ globby: "npm:13.1.4"
+ got: "npm:12.6.1"
+ inquirer: "npm:9.2.6"
+ is-ci: "npm:3.0.1"
+ issue-parser: "npm:6.0.0"
+ lodash: "npm:4.17.21"
+ mime-types: "npm:2.1.35"
+ new-github-release-url: "npm:2.0.0"
+ node-fetch: "npm:3.3.1"
+ open: "npm:9.1.0"
+ ora: "npm:6.3.1"
+ os-name: "npm:5.1.0"
+ promise.allsettled: "npm:1.0.6"
+ proxy-agent: "npm:6.2.1"
+ semver: "npm:7.5.1"
+ shelljs: "npm:0.8.5"
+ update-notifier: "npm:6.0.2"
+ url-join: "npm:5.0.0"
+ wildcard-match: "npm:5.1.2"
+ yargs-parser: "npm:21.1.1"
+ bin:
+ release-it: bin/release-it.js
+ checksum: 10c0/812f6f538d50507bd2c39f01ef2919f660920aca7058d6be454419a6e176086149483995ccb6f473d3e05e341e1711ceabafc0c204d5838c5c51d68c5ff497c2
+ languageName: node
+ linkType: hard
+
+"require-directory@npm:^2.1.1":
+ version: 2.1.1
+ resolution: "require-directory@npm:2.1.1"
+ checksum: 10c0/83aa76a7bc1531f68d92c75a2ca2f54f1b01463cb566cf3fbc787d0de8be30c9dbc211d1d46be3497dac5785fe296f2dd11d531945ac29730643357978966e99
+ languageName: node
+ linkType: hard
+
+"require-from-string@npm:^2.0.2":
+ version: 2.0.2
+ resolution: "require-from-string@npm:2.0.2"
+ checksum: 10c0/aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2
+ languageName: node
+ linkType: hard
+
+"resolve-alpn@npm:^1.2.0":
+ version: 1.2.1
+ resolution: "resolve-alpn@npm:1.2.1"
+ checksum: 10c0/b70b29c1843bc39781ef946c8cd4482e6d425976599c0f9c138cec8209e4e0736161bf39319b01676a847000085dfdaf63583c6fb4427bf751a10635bd2aa0c4
+ languageName: node
+ linkType: hard
+
+"resolve-cwd@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "resolve-cwd@npm:3.0.0"
+ dependencies:
+ resolve-from: "npm:^5.0.0"
+ checksum: 10c0/e608a3ebd15356264653c32d7ecbc8fd702f94c6703ea4ac2fb81d9c359180cba0ae2e6b71faa446631ed6145454d5a56b227efc33a2d40638ac13f8beb20ee4
+ languageName: node
+ linkType: hard
+
+"resolve-from@npm:5.0.0, resolve-from@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "resolve-from@npm:5.0.0"
+ checksum: 10c0/b21cb7f1fb746de8107b9febab60095187781137fd803e6a59a76d421444b1531b641bba5857f5dc011974d8a5c635d61cec49e6bd3b7fc20e01f0fafc4efbf2
+ languageName: node
+ linkType: hard
+
+"resolve-from@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "resolve-from@npm:3.0.0"
+ checksum: 10c0/24affcf8e81f4c62f0dcabc774afe0e19c1f38e34e43daac0ddb409d79435fc3037f612b0cc129178b8c220442c3babd673e88e870d27215c99454566e770ebc
+ languageName: node
+ linkType: hard
+
+"resolve-from@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "resolve-from@npm:4.0.0"
+ checksum: 10c0/8408eec31a3112ef96e3746c37be7d64020cda07c03a920f5024e77290a218ea758b26ca9529fd7b1ad283947f34b2291c1c0f6aa0ed34acfdda9c6014c8d190
+ languageName: node
+ linkType: hard
+
+"resolve-global@npm:1.0.0, resolve-global@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "resolve-global@npm:1.0.0"
+ dependencies:
+ global-dirs: "npm:^0.1.1"
+ checksum: 10c0/fda6ba81a07a0124756ce956dd871ca83763973326d8617143dab38d9c9afc666926604bfe8f0bfd046a9a285347568f32ceb3d4c55a1cb9de5614cca001a21c
+ languageName: node
+ linkType: hard
+
+"resolve.exports@npm:^2.0.0":
+ version: 2.0.3
+ resolution: "resolve.exports@npm:2.0.3"
+ checksum: 10c0/1ade1493f4642a6267d0a5e68faeac20b3d220f18c28b140343feb83694d8fed7a286852aef43689d16042c61e2ddb270be6578ad4a13990769e12065191200d
+ languageName: node
+ linkType: hard
+
+"resolve@npm:^1.1.6, resolve@npm:^1.10.0, resolve@npm:^1.20.0, resolve@npm:^1.22.11, resolve@npm:~1.22.1, resolve@npm:~1.22.2":
+ version: 1.22.12
+ resolution: "resolve@npm:1.22.12"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ is-core-module: "npm:^2.16.1"
+ path-parse: "npm:^1.0.7"
+ supports-preserve-symlinks-flag: "npm:^1.0.0"
+ bin:
+ resolve: bin/resolve
+ checksum: 10c0/b16dc9b537c02e8c3388f7d3dcff9741d3071625f9a97ac1c885f2b0ca51e78df22328fb6d6ef214dd9101fb7cfc19aa2836fe3410402a94f3f7b8639c7149bf
+ languageName: node
+ linkType: hard
+
+"resolve@npm:^2.0.0-next.5":
+ version: 2.0.0-next.6
+ resolution: "resolve@npm:2.0.0-next.6"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ is-core-module: "npm:^2.16.1"
+ node-exports-info: "npm:^1.6.0"
+ object-keys: "npm:^1.1.1"
+ path-parse: "npm:^1.0.7"
+ supports-preserve-symlinks-flag: "npm:^1.0.0"
+ bin:
+ resolve: bin/resolve
+ checksum: 10c0/4e44cb84aa9a3c7c82d4a98e8111879671150496160a53ca6cdbed6101bf239f19105f8b8b84e40c0b76d46b0d9626813510b19a80e01f4ae18692e9d0b47749
+ languageName: node
+ linkType: hard
+
+"resolve@patch:resolve@npm%3A^1.1.6#optional!builtin, resolve@patch:resolve@npm%3A^1.10.0#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.11#optional!builtin, resolve@patch:resolve@npm%3A~1.22.1#optional!builtin, resolve@patch:resolve@npm%3A~1.22.2#optional!builtin":
+ version: 1.22.12
+ resolution: "resolve@patch:resolve@npm%3A1.22.12#optional!builtin::version=1.22.12&hash=c3c19d"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ is-core-module: "npm:^2.16.1"
+ path-parse: "npm:^1.0.7"
+ supports-preserve-symlinks-flag: "npm:^1.0.0"
+ bin:
+ resolve: bin/resolve
+ checksum: 10c0/fc6519984ae1f894d877c0060ba8b1f5ba3bc0e85a02f74e141929c118c23d74d9735619a9cc2965397387e514884245c65d72a40731dcb6cfc84c7bcdc8321e
+ languageName: node
+ linkType: hard
+
+"resolve@patch:resolve@npm%3A^2.0.0-next.5#optional!builtin":
+ version: 2.0.0-next.6
+ resolution: "resolve@patch:resolve@npm%3A2.0.0-next.6#optional!builtin::version=2.0.0-next.6&hash=c3c19d"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ is-core-module: "npm:^2.16.1"
+ node-exports-info: "npm:^1.6.0"
+ object-keys: "npm:^1.1.1"
+ path-parse: "npm:^1.0.7"
+ supports-preserve-symlinks-flag: "npm:^1.0.0"
+ bin:
+ resolve: bin/resolve
+ checksum: 10c0/dca533e38820b0d8d636f269824cef3b7435802ab7401211c6f10af03be0e2f7e216047234e1623046c0a6791577079767e0c04f0d36e42c7f567b1bff7b0742
+ languageName: node
+ linkType: hard
+
+"responselike@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "responselike@npm:3.0.0"
+ dependencies:
+ lowercase-keys: "npm:^3.0.0"
+ checksum: 10c0/8af27153f7e47aa2c07a5f2d538cb1e5872995f0e9ff77def858ecce5c3fe677d42b824a62cde502e56d275ab832b0a8bd350d5cd6b467ac0425214ac12ae658
+ languageName: node
+ linkType: hard
+
+"restore-cursor@npm:^3.1.0":
+ version: 3.1.0
+ resolution: "restore-cursor@npm:3.1.0"
+ dependencies:
+ onetime: "npm:^5.1.0"
+ signal-exit: "npm:^3.0.2"
+ checksum: 10c0/8051a371d6aa67ff21625fa94e2357bd81ffdc96267f3fb0fc4aaf4534028343836548ef34c240ffa8c25b280ca35eb36be00b3cb2133fa4f51896d7e73c6b4f
+ languageName: node
+ linkType: hard
+
+"restore-cursor@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "restore-cursor@npm:4.0.0"
+ dependencies:
+ onetime: "npm:^5.1.0"
+ signal-exit: "npm:^3.0.2"
+ checksum: 10c0/6f7da8c5e422ac26aa38354870b1afac09963572cf2879443540449068cb43476e9cbccf6f8de3e0171e0d6f7f533c2bc1a0a008003c9a525bbc098e89041318
+ languageName: node
+ linkType: hard
+
+"retry@npm:0.13.1":
+ version: 0.13.1
+ resolution: "retry@npm:0.13.1"
+ checksum: 10c0/9ae822ee19db2163497e074ea919780b1efa00431d197c7afdb950e42bf109196774b92a49fc9821f0b8b328a98eea6017410bfc5e8a0fc19c85c6d11adb3772
+ languageName: node
+ linkType: hard
+
+"reusify@npm:^1.0.4":
+ version: 1.1.0
+ resolution: "reusify@npm:1.1.0"
+ checksum: 10c0/4eff0d4a5f9383566c7d7ec437b671cc51b25963bd61bf127c3f3d3f68e44a026d99b8d2f1ad344afff8d278a8fe70a8ea092650a716d22287e8bef7126bb2fa
+ languageName: node
+ linkType: hard
+
+"rimraf@npm:^3.0.2":
+ version: 3.0.2
+ resolution: "rimraf@npm:3.0.2"
+ dependencies:
+ glob: "npm:^7.1.3"
+ bin:
+ rimraf: bin.js
+ checksum: 10c0/9cb7757acb489bd83757ba1a274ab545eafd75598a9d817e0c3f8b164238dd90eba50d6b848bd4dcc5f3040912e882dc7ba71653e35af660d77b25c381d402e8
+ languageName: node
+ linkType: hard
+
+"rimraf@npm:~2.6.2":
+ version: 2.6.3
+ resolution: "rimraf@npm:2.6.3"
+ dependencies:
+ glob: "npm:^7.1.3"
+ bin:
+ rimraf: ./bin.js
+ checksum: 10c0/f1e646f8c567795f2916aef7aadf685b543da6b9a53e482bb04b07472c7eef2b476045ba1e29f401c301c66b630b22b815ab31fdd60c5e1ae6566ff523debf45
+ languageName: node
+ linkType: hard
+
+"run-applescript@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "run-applescript@npm:5.0.0"
+ dependencies:
+ execa: "npm:^5.0.0"
+ checksum: 10c0/f9977db5770929f3f0db434b8e6aa266498c70dec913c84320c0a06add510cf44e3a048c44da088abee312006f9cbf572fd065cdc8f15d7682afda8755f4114c
+ languageName: node
+ linkType: hard
+
+"run-async@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "run-async@npm:3.0.0"
+ checksum: 10c0/b18b562ae37c3020083dcaae29642e4cc360c824fbfb6b7d50d809a9d5227bb986152d09310255842c8dce40526e82ca768f02f00806c91ba92a8dfa6159cb85
+ languageName: node
+ linkType: hard
+
+"run-parallel@npm:^1.1.9":
+ version: 1.2.0
+ resolution: "run-parallel@npm:1.2.0"
+ dependencies:
+ queue-microtask: "npm:^1.2.2"
+ checksum: 10c0/200b5ab25b5b8b7113f9901bfe3afc347e19bb7475b267d55ad0eb86a62a46d77510cb0f232507c9e5d497ebda569a08a9867d0d14f57a82ad5564d991588b39
+ languageName: node
+ linkType: hard
+
+"rxjs@npm:^7.8.1":
+ version: 7.8.2
+ resolution: "rxjs@npm:7.8.2"
+ dependencies:
+ tslib: "npm:^2.1.0"
+ checksum: 10c0/1fcd33d2066ada98ba8f21fcbbcaee9f0b271de1d38dc7f4e256bfbc6ffcdde68c8bfb69093de7eeb46f24b1fb820620bf0223706cff26b4ab99a7ff7b2e2c45
+ languageName: node
+ linkType: hard
+
+"safe-array-concat@npm:^1.1.3":
+ version: 1.1.4
+ resolution: "safe-array-concat@npm:1.1.4"
+ dependencies:
+ call-bind: "npm:^1.0.9"
+ call-bound: "npm:^1.0.4"
+ get-intrinsic: "npm:^1.3.0"
+ has-symbols: "npm:^1.1.0"
+ isarray: "npm:^2.0.5"
+ checksum: 10c0/95fb4904ab1d9360a666fe5ba6d88f1c4a3a39682739e4512cff809fc6b5722a94bd95189211015bfb45859a7ffbc3340ea303ae22721c91c59e8946d310975a
+ languageName: node
+ linkType: hard
+
+"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1":
+ version: 5.1.2
+ resolution: "safe-buffer@npm:5.1.2"
+ checksum: 10c0/780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21
+ languageName: node
+ linkType: hard
+
+"safe-buffer@npm:~5.2.0":
+ version: 5.2.1
+ resolution: "safe-buffer@npm:5.2.1"
+ checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3
+ languageName: node
+ linkType: hard
+
+"safe-push-apply@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "safe-push-apply@npm:1.0.0"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ isarray: "npm:^2.0.5"
+ checksum: 10c0/831f1c9aae7436429e7862c7e46f847dfe490afac20d0ee61bae06108dbf5c745a0de3568ada30ccdd3eeb0864ca8331b2eef703abd69bfea0745b21fd320750
+ languageName: node
+ linkType: hard
+
+"safe-regex-test@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "safe-regex-test@npm:1.1.0"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ es-errors: "npm:^1.3.0"
+ is-regex: "npm:^1.2.1"
+ checksum: 10c0/f2c25281bbe5d39cddbbce7f86fca5ea9b3ce3354ea6cd7c81c31b006a5a9fff4286acc5450a3b9122c56c33eba69c56b9131ad751457b2b4a585825e6a10665
+ languageName: node
+ linkType: hard
+
+"safer-buffer@npm:>= 2.1.2 < 3":
+ version: 2.1.2
+ resolution: "safer-buffer@npm:2.1.2"
+ checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4
+ languageName: node
+ linkType: hard
+
+"scheduler@npm:0.24.0-canary-efb381bbf-20230505":
+ version: 0.24.0-canary-efb381bbf-20230505
+ resolution: "scheduler@npm:0.24.0-canary-efb381bbf-20230505"
+ dependencies:
+ loose-envify: "npm:^1.1.0"
+ checksum: 10c0/4fb594d64c692199117160bbd1a5261f03287f8ec59d9ca079a772e5fbb3139495ebda843324d7c8957c07390a0825acb6f72bd29827fb9e155d793db6c2e2bc
+ languageName: node
+ linkType: hard
+
+"scheduler@npm:^0.23.0":
+ version: 0.23.2
+ resolution: "scheduler@npm:0.23.2"
+ dependencies:
+ loose-envify: "npm:^1.1.0"
+ checksum: 10c0/26383305e249651d4c58e6705d5f8425f153211aef95f15161c151f7b8de885f24751b377e4a0b3dd42cce09aad3f87a61dab7636859c0d89b7daf1a1e2a5c78
+ languageName: node
+ linkType: hard
+
+"selfsigned@npm:^2.4.1":
+ version: 2.4.1
+ resolution: "selfsigned@npm:2.4.1"
+ dependencies:
+ "@types/node-forge": "npm:^1.3.0"
+ node-forge: "npm:^1"
+ checksum: 10c0/521829ec36ea042f7e9963bf1da2ed040a815cf774422544b112ec53b7edc0bc50a0f8cc2ae7aa6cc19afa967c641fd96a15de0fc650c68651e41277d2e1df09
+ languageName: node
+ linkType: hard
+
+"semver-diff@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "semver-diff@npm:4.0.0"
+ dependencies:
+ semver: "npm:^7.3.5"
+ checksum: 10c0/3ed1bb22f39b4b6e98785bb066e821eabb9445d3b23e092866c50e7df8b9bd3eda617b242f81db4159586e0e39b0deb908dd160a24f783bd6f52095b22cd68ea
+ languageName: node
+ linkType: hard
+
+"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.6.0":
+ version: 5.7.2
+ resolution: "semver@npm:5.7.2"
+ bin:
+ semver: bin/semver
+ checksum: 10c0/e4cf10f86f168db772ae95d86ba65b3fd6c5967c94d97c708ccb463b778c2ee53b914cd7167620950fc07faf5a564e6efe903836639e512a1aa15fbc9667fa25
+ languageName: node
+ linkType: hard
+
+"semver@npm:7.3.8":
+ version: 7.3.8
+ resolution: "semver@npm:7.3.8"
+ dependencies:
+ lru-cache: "npm:^6.0.0"
+ bin:
+ semver: bin/semver.js
+ checksum: 10c0/7e581d679530db31757301c2117721577a2bb36a301a443aac833b8efad372cda58e7f2a464fe4412ae1041cc1f63a6c1fe0ced8c57ce5aca1e0b57bb0d627b9
+ languageName: node
+ linkType: hard
+
+"semver@npm:7.5.1":
+ version: 7.5.1
+ resolution: "semver@npm:7.5.1"
+ dependencies:
+ lru-cache: "npm:^6.0.0"
+ bin:
+ semver: bin/semver.js
+ checksum: 10c0/ae6aca3cfba9b4d0e0a8fa789c7fa4a8412e39f24ecc19500db291a0a31bb43c151021e4fdbb68a85dcd06c1297f6daeeb09647cea4253eba0ccc0106eb7cd67
+ languageName: node
+ linkType: hard
+
+"semver@npm:7.5.4":
+ version: 7.5.4
+ resolution: "semver@npm:7.5.4"
+ dependencies:
+ lru-cache: "npm:^6.0.0"
+ bin:
+ semver: bin/semver.js
+ checksum: 10c0/5160b06975a38b11c1ab55950cb5b8a23db78df88275d3d8a42ccf1f29e55112ac995b3a26a522c36e3b5f76b0445f1eef70d696b8c7862a2b4303d7b0e7609e
+ languageName: node
+ linkType: hard
+
+"semver@npm:^6.0.0, semver@npm:^6.3.0, semver@npm:^6.3.1":
+ version: 6.3.1
+ resolution: "semver@npm:6.3.1"
+ bin:
+ semver: bin/semver.js
+ checksum: 10c0/e3d79b609071caa78bcb6ce2ad81c7966a46a7431d9d58b8800cfa9cb6a63699b3899a0e4bcce36167a284578212d9ae6942b6929ba4aa5015c079a67751d42d
+ languageName: node
+ linkType: hard
+
+"semver@npm:^7.1.3, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:~7.7.4":
+ version: 7.7.4
+ resolution: "semver@npm:7.7.4"
+ bin:
+ semver: bin/semver.js
+ checksum: 10c0/5215ad0234e2845d4ea5bb9d836d42b03499546ddafb12075566899fc617f68794bb6f146076b6881d755de17d6c6cc73372555879ec7dce2c2feee947866ad2
+ languageName: node
+ linkType: hard
+
+"send@npm:~0.19.1":
+ version: 0.19.2
+ resolution: "send@npm:0.19.2"
+ dependencies:
+ debug: "npm:2.6.9"
+ depd: "npm:2.0.0"
+ destroy: "npm:1.2.0"
+ encodeurl: "npm:~2.0.0"
+ escape-html: "npm:~1.0.3"
+ etag: "npm:~1.8.1"
+ fresh: "npm:~0.5.2"
+ http-errors: "npm:~2.0.1"
+ mime: "npm:1.6.0"
+ ms: "npm:2.1.3"
+ on-finished: "npm:~2.4.1"
+ range-parser: "npm:~1.2.1"
+ statuses: "npm:~2.0.2"
+ checksum: 10c0/20c2389fe0fdf3fc499938cac598bc32272287e993c4960717381a10de8550028feadfb9076f959a3a3ebdea42e1f690e116f0d16468fa56b9fd41866d3dc267
+ languageName: node
+ linkType: hard
+
+"serialize-error@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "serialize-error@npm:2.1.0"
+ checksum: 10c0/919c40d293cd36b16bb3fce38a3a460e0c51a34cf0ee59815bbeec7c48ffe0a66ea2dec08aa5340ef6dfc1f22e7317f6e1ed76cdbb2ec3c494c0c4debfb344f8
+ languageName: node
+ linkType: hard
+
+"serve-static@npm:^1.13.1":
+ version: 1.16.3
+ resolution: "serve-static@npm:1.16.3"
+ dependencies:
+ encodeurl: "npm:~2.0.0"
+ escape-html: "npm:~1.0.3"
+ parseurl: "npm:~1.3.3"
+ send: "npm:~0.19.1"
+ checksum: 10c0/36320397a073c71bedf58af48a4a100fe6d93f07459af4d6f08b9a7217c04ce2a4939e0effd842dc7bece93ffcd59eb52f58c4fff2a8e002dc29ae6b219cd42b
+ languageName: node
+ linkType: hard
+
+"set-function-length@npm:^1.2.2":
+ version: 1.2.2
+ resolution: "set-function-length@npm:1.2.2"
+ dependencies:
+ define-data-property: "npm:^1.1.4"
+ es-errors: "npm:^1.3.0"
+ function-bind: "npm:^1.1.2"
+ get-intrinsic: "npm:^1.2.4"
+ gopd: "npm:^1.0.1"
+ has-property-descriptors: "npm:^1.0.2"
+ checksum: 10c0/82850e62f412a258b71e123d4ed3873fa9377c216809551192bb6769329340176f109c2eeae8c22a8d386c76739855f78e8716515c818bcaef384b51110f0f3c
+ languageName: node
+ linkType: hard
+
+"set-function-name@npm:^2.0.2":
+ version: 2.0.2
+ resolution: "set-function-name@npm:2.0.2"
+ dependencies:
+ define-data-property: "npm:^1.1.4"
+ es-errors: "npm:^1.3.0"
+ functions-have-names: "npm:^1.2.3"
+ has-property-descriptors: "npm:^1.0.2"
+ checksum: 10c0/fce59f90696c450a8523e754abb305e2b8c73586452619c2bad5f7bf38c7b6b4651895c9db895679c5bef9554339cf3ef1c329b66ece3eda7255785fbe299316
+ languageName: node
+ linkType: hard
+
+"set-proto@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "set-proto@npm:1.0.0"
+ dependencies:
+ dunder-proto: "npm:^1.0.1"
+ es-errors: "npm:^1.3.0"
+ es-object-atoms: "npm:^1.0.0"
+ checksum: 10c0/ca5c3ccbba479d07c30460e367e66337cec825560b11e8ba9c5ebe13a2a0d6021ae34eddf94ff3dfe17a3104dc1f191519cb6c48378b503e5c3f36393938776a
+ languageName: node
+ linkType: hard
+
+"setprototypeof@npm:~1.2.0":
+ version: 1.2.0
+ resolution: "setprototypeof@npm:1.2.0"
+ checksum: 10c0/68733173026766fa0d9ecaeb07f0483f4c2dc70ca376b3b7c40b7cda909f94b0918f6c5ad5ce27a9160bdfb475efaa9d5e705a11d8eaae18f9835d20976028bc
+ languageName: node
+ linkType: hard
+
+"shallow-clone@npm:^3.0.0":
+ version: 3.0.1
+ resolution: "shallow-clone@npm:3.0.1"
+ dependencies:
+ kind-of: "npm:^6.0.2"
+ checksum: 10c0/7bab09613a1b9f480c85a9823aebec533015579fa055ba6634aa56ba1f984380670eaf33b8217502931872aa1401c9fcadaa15f9f604d631536df475b05bcf1e
+ languageName: node
+ linkType: hard
+
+"shebang-command@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "shebang-command@npm:2.0.0"
+ dependencies:
+ shebang-regex: "npm:^3.0.0"
+ checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e
+ languageName: node
+ linkType: hard
+
+"shebang-regex@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "shebang-regex@npm:3.0.0"
+ checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690
+ languageName: node
+ linkType: hard
+
+"shell-quote@npm:^1.6.1":
+ version: 1.8.3
+ resolution: "shell-quote@npm:1.8.3"
+ checksum: 10c0/bee87c34e1e986cfb4c30846b8e6327d18874f10b535699866f368ade11ea4ee45433d97bf5eada22c4320c27df79c3a6a7eb1bf3ecfc47f2c997d9e5e2672fd
+ languageName: node
+ linkType: hard
+
+"shelljs@npm:0.8.5":
+ version: 0.8.5
+ resolution: "shelljs@npm:0.8.5"
+ dependencies:
+ glob: "npm:^7.0.0"
+ interpret: "npm:^1.0.0"
+ rechoir: "npm:^0.6.2"
+ bin:
+ shjs: bin/shjs
+ checksum: 10c0/feb25289a12e4bcd04c40ddfab51aff98a3729f5c2602d5b1a1b95f6819ec7804ac8147ebd8d9a85dfab69d501bcf92d7acef03247320f51c1552cec8d8e2382
+ languageName: node
+ linkType: hard
+
+"side-channel-list@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "side-channel-list@npm:1.0.1"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ object-inspect: "npm:^1.13.4"
+ checksum: 10c0/d346c787fd2f9f1c2fdea14f00e8250118db0e7596d85a6cb9faa75f105d31a73a8f7a341c93d7df2a2429098c3d37a77bd3be9e88c37094b8c01807bc77c7a2
+ languageName: node
+ linkType: hard
+
+"side-channel-map@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "side-channel-map@npm:1.0.1"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ es-errors: "npm:^1.3.0"
+ get-intrinsic: "npm:^1.2.5"
+ object-inspect: "npm:^1.13.3"
+ checksum: 10c0/010584e6444dd8a20b85bc926d934424bd809e1a3af941cace229f7fdcb751aada0fb7164f60c2e22292b7fa3c0ff0bce237081fd4cdbc80de1dc68e95430672
+ languageName: node
+ linkType: hard
+
+"side-channel-weakmap@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "side-channel-weakmap@npm:1.0.2"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ es-errors: "npm:^1.3.0"
+ get-intrinsic: "npm:^1.2.5"
+ object-inspect: "npm:^1.13.3"
+ side-channel-map: "npm:^1.0.1"
+ checksum: 10c0/71362709ac233e08807ccd980101c3e2d7efe849edc51455030327b059f6c4d292c237f94dc0685031dd11c07dd17a68afde235d6cf2102d949567f98ab58185
+ languageName: node
+ linkType: hard
+
+"side-channel@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "side-channel@npm:1.1.0"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ object-inspect: "npm:^1.13.3"
+ side-channel-list: "npm:^1.0.0"
+ side-channel-map: "npm:^1.0.1"
+ side-channel-weakmap: "npm:^1.0.2"
+ checksum: 10c0/cb20dad41eb032e6c24c0982e1e5a24963a28aa6122b4f05b3f3d6bf8ae7fd5474ef382c8f54a6a3ab86e0cac4d41a23bd64ede3970e5bfb50326ba02a7996e6
+ languageName: node
+ linkType: hard
+
+"signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7":
+ version: 3.0.7
+ resolution: "signal-exit@npm:3.0.7"
+ checksum: 10c0/25d272fa73e146048565e08f3309d5b942c1979a6f4a58a8c59d5fa299728e9c2fcd1a759ec870863b1fd38653670240cd420dad2ad9330c71f36608a6a1c912
+ languageName: node
+ linkType: hard
+
+"sisteransi@npm:^1.0.5":
+ version: 1.0.5
+ resolution: "sisteransi@npm:1.0.5"
+ checksum: 10c0/230ac975cca485b7f6fe2b96a711aa62a6a26ead3e6fb8ba17c5a00d61b8bed0d7adc21f5626b70d7c33c62ff4e63933017a6462942c719d1980bb0b1207ad46
+ languageName: node
+ linkType: hard
+
+"slash@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "slash@npm:3.0.0"
+ checksum: 10c0/e18488c6a42bdfd4ac5be85b2ced3ccd0224773baae6ad42cfbb9ec74fc07f9fa8396bd35ee638084ead7a2a0818eb5e7151111544d4731ce843019dab4be47b
+ languageName: node
+ linkType: hard
+
+"slash@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "slash@npm:4.0.0"
+ checksum: 10c0/b522ca75d80d107fd30d29df0549a7b2537c83c4c4ecd12cd7d4ea6c8aaca2ab17ada002e7a1d78a9d736a0261509f26ea5b489082ee443a3a810586ef8eff18
+ languageName: node
+ linkType: hard
+
+"smart-buffer@npm:^4.2.0":
+ version: 4.2.0
+ resolution: "smart-buffer@npm:4.2.0"
+ checksum: 10c0/a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539
+ languageName: node
+ linkType: hard
+
+"socks-proxy-agent@npm:^8.0.1":
+ version: 8.0.5
+ resolution: "socks-proxy-agent@npm:8.0.5"
+ dependencies:
+ agent-base: "npm:^7.1.2"
+ debug: "npm:^4.3.4"
+ socks: "npm:^2.8.3"
+ checksum: 10c0/5d2c6cecba6821389aabf18728325730504bf9bb1d9e342e7987a5d13badd7a98838cc9a55b8ed3cb866ad37cc23e1086f09c4d72d93105ce9dfe76330e9d2a6
+ languageName: node
+ linkType: hard
+
+"socks@npm:^2.8.3":
+ version: 2.8.7
+ resolution: "socks@npm:2.8.7"
+ dependencies:
+ ip-address: "npm:^10.0.1"
+ smart-buffer: "npm:^4.2.0"
+ checksum: 10c0/2805a43a1c4bcf9ebf6e018268d87b32b32b06fbbc1f9282573583acc155860dc361500f89c73bfbb157caa1b4ac78059eac0ef15d1811eb0ca75e0bdadbc9d2
+ languageName: node
+ linkType: hard
+
+"source-map-support@npm:0.5.13":
+ version: 0.5.13
+ resolution: "source-map-support@npm:0.5.13"
+ dependencies:
+ buffer-from: "npm:^1.0.0"
+ source-map: "npm:^0.6.0"
+ checksum: 10c0/137539f8c453fa0f496ea42049ab5da4569f96781f6ac8e5bfda26937be9494f4e8891f523c5f98f0e85f71b35d74127a00c46f83f6a4f54672b58d53202565e
+ languageName: node
+ linkType: hard
+
+"source-map-support@npm:^0.5.16, source-map-support@npm:~0.5.20":
+ version: 0.5.21
+ resolution: "source-map-support@npm:0.5.21"
+ dependencies:
+ buffer-from: "npm:^1.0.0"
+ source-map: "npm:^0.6.0"
+ checksum: 10c0/9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d
+ languageName: node
+ linkType: hard
+
+"source-map@npm:^0.5.6":
+ version: 0.5.7
+ resolution: "source-map@npm:0.5.7"
+ checksum: 10c0/904e767bb9c494929be013017380cbba013637da1b28e5943b566031e29df04fba57edf3f093e0914be094648b577372bd8ad247fa98cfba9c600794cd16b599
+ languageName: node
+ linkType: hard
+
+"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.1":
+ version: 0.6.1
+ resolution: "source-map@npm:0.6.1"
+ checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011
+ languageName: node
+ linkType: hard
+
+"spdx-correct@npm:^3.0.0":
+ version: 3.2.0
+ resolution: "spdx-correct@npm:3.2.0"
+ dependencies:
+ spdx-expression-parse: "npm:^3.0.0"
+ spdx-license-ids: "npm:^3.0.0"
+ checksum: 10c0/49208f008618b9119208b0dadc9208a3a55053f4fd6a0ae8116861bd22696fc50f4142a35ebfdb389e05ccf2de8ad142573fefc9e26f670522d899f7b2fe7386
+ languageName: node
+ linkType: hard
+
+"spdx-exceptions@npm:^2.1.0":
+ version: 2.5.0
+ resolution: "spdx-exceptions@npm:2.5.0"
+ checksum: 10c0/37217b7762ee0ea0d8b7d0c29fd48b7e4dfb94096b109d6255b589c561f57da93bf4e328c0290046115961b9209a8051ad9f525e48d433082fc79f496a4ea940
+ languageName: node
+ linkType: hard
+
+"spdx-expression-parse@npm:^3.0.0":
+ version: 3.0.1
+ resolution: "spdx-expression-parse@npm:3.0.1"
+ dependencies:
+ spdx-exceptions: "npm:^2.1.0"
+ spdx-license-ids: "npm:^3.0.0"
+ checksum: 10c0/6f8a41c87759fa184a58713b86c6a8b028250f158159f1d03ed9d1b6ee4d9eefdc74181c8ddc581a341aa971c3e7b79e30b59c23b05d2436d5de1c30bdef7171
+ languageName: node
+ linkType: hard
+
+"spdx-license-ids@npm:^3.0.0":
+ version: 3.0.23
+ resolution: "spdx-license-ids@npm:3.0.23"
+ checksum: 10c0/8495620f6f2a237749cce922ea2d593a66f7885c301b1a0f5542183e7041182f27f616a8f13345cefdea0c9b3e0899328e0aa8cec100cf4f3fac4bb3bd975515
+ languageName: node
+ linkType: hard
+
+"split2@npm:^3.0.0, split2@npm:^3.2.2":
+ version: 3.2.2
+ resolution: "split2@npm:3.2.2"
+ dependencies:
+ readable-stream: "npm:^3.0.0"
+ checksum: 10c0/2dad5603c52b353939befa3e2f108f6e3aff42b204ad0f5f16dd12fd7c2beab48d117184ce6f7c8854f9ee5ffec6faae70d243711dd7d143a9f635b4a285de4e
+ languageName: node
+ linkType: hard
+
+"split@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "split@npm:1.0.1"
+ dependencies:
+ through: "npm:2"
+ checksum: 10c0/7f489e7ed5ff8a2e43295f30a5197ffcb2d6202c9cf99357f9690d645b19c812bccf0be3ff336fea5054cda17ac96b91d67147d95dbfc31fbb5804c61962af85
+ languageName: node
+ linkType: hard
+
+"sprintf-js@npm:~1.0.2":
+ version: 1.0.3
+ resolution: "sprintf-js@npm:1.0.3"
+ checksum: 10c0/ecadcfe4c771890140da5023d43e190b7566d9cf8b2d238600f31bec0fc653f328da4450eb04bd59a431771a8e9cc0e118f0aa3974b683a4981b4e07abc2a5bb
+ languageName: node
+ linkType: hard
+
+"stack-utils@npm:^2.0.3":
+ version: 2.0.6
+ resolution: "stack-utils@npm:2.0.6"
+ dependencies:
+ escape-string-regexp: "npm:^2.0.0"
+ checksum: 10c0/651c9f87667e077584bbe848acaecc6049bc71979f1e9a46c7b920cad4431c388df0f51b8ad7cfd6eed3db97a2878d0fc8b3122979439ea8bac29c61c95eec8a
+ languageName: node
+ linkType: hard
+
+"stackframe@npm:^1.3.4":
+ version: 1.3.4
+ resolution: "stackframe@npm:1.3.4"
+ checksum: 10c0/18410f7a1e0c5d211a4effa83bdbf24adbe8faa8c34db52e1cd3e89837518c592be60b60d8b7270ac53eeeb8b807cd11b399a41667f6c9abb41059c3ccc8a989
+ languageName: node
+ linkType: hard
+
+"stacktrace-parser@npm:^0.1.10":
+ version: 0.1.11
+ resolution: "stacktrace-parser@npm:0.1.11"
+ dependencies:
+ type-fest: "npm:^0.7.1"
+ checksum: 10c0/4633d9afe8cd2f6c7fb2cebdee3cc8de7fd5f6f9736645fd08c0f66872a303061ce9cc0ccf46f4216dc94a7941b56e331012398dc0024dc25e46b5eb5d4ff018
+ languageName: node
+ linkType: hard
+
+"statuses@npm:~1.5.0":
+ version: 1.5.0
+ resolution: "statuses@npm:1.5.0"
+ checksum: 10c0/e433900956357b3efd79b1c547da4d291799ac836960c016d10a98f6a810b1b5c0dcc13b5a7aa609a58239b5190e1ea176ad9221c2157d2fd1c747393e6b2940
+ languageName: node
+ linkType: hard
+
+"statuses@npm:~2.0.2":
+ version: 2.0.2
+ resolution: "statuses@npm:2.0.2"
+ checksum: 10c0/a9947d98ad60d01f6b26727570f3bcceb6c8fa789da64fe6889908fe2e294d57503b14bf2b5af7605c2d36647259e856635cd4c49eab41667658ec9d0080ec3f
+ languageName: node
+ linkType: hard
+
+"stdin-discarder@npm:^0.1.0":
+ version: 0.1.0
+ resolution: "stdin-discarder@npm:0.1.0"
+ dependencies:
+ bl: "npm:^5.0.0"
+ checksum: 10c0/3bbf7f8107e49c05b4a46bd739afdd34605cf1f06a038c8b2a33d034bf146344fc0ebc5149df1e6422510dd219971a220f25b1102413ef5128fe267683fbef9d
+ languageName: node
+ linkType: hard
+
+"stop-iteration-iterator@npm:^1.0.0, stop-iteration-iterator@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "stop-iteration-iterator@npm:1.1.0"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ internal-slot: "npm:^1.1.0"
+ checksum: 10c0/de4e45706bb4c0354a4b1122a2b8cc45a639e86206807ce0baf390ee9218d3ef181923fa4d2b67443367c491aa255c5fbaa64bb74648e3c5b48299928af86c09
+ languageName: node
+ linkType: hard
+
+"string-argv@npm:~0.3.1":
+ version: 0.3.2
+ resolution: "string-argv@npm:0.3.2"
+ checksum: 10c0/75c02a83759ad1722e040b86823909d9a2fc75d15dd71ec4b537c3560746e33b5f5a07f7332d1e3f88319909f82190843aa2f0a0d8c8d591ec08e93d5b8dec82
+ languageName: node
+ linkType: hard
+
+"string-length@npm:^4.0.1":
+ version: 4.0.2
+ resolution: "string-length@npm:4.0.2"
+ dependencies:
+ char-regex: "npm:^1.0.2"
+ strip-ansi: "npm:^6.0.0"
+ checksum: 10c0/1cd77409c3d7db7bc59406f6bcc9ef0783671dcbabb23597a1177c166906ef2ee7c8290f78cae73a8aec858768f189d2cb417797df5e15ec4eb5e16b3346340c
+ languageName: node
+ linkType: hard
+
+"string-natural-compare@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "string-natural-compare@npm:3.0.1"
+ checksum: 10c0/85a6a9195736be500af5d817c7ea36b7e1ac278af079a807f70f79a56602359ee6743ca409af6291b94557de550ff60d1ec31b3c4fc8e7a08d0e12cdab57c149
+ languageName: node
+ linkType: hard
+
+"string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3":
+ version: 4.2.3
+ resolution: "string-width@npm:4.2.3"
+ dependencies:
+ emoji-regex: "npm:^8.0.0"
+ is-fullwidth-code-point: "npm:^3.0.0"
+ strip-ansi: "npm:^6.0.1"
+ checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b
+ languageName: node
+ linkType: hard
+
+"string-width@npm:^5.0.1, string-width@npm:^5.1.2":
+ version: 5.1.2
+ resolution: "string-width@npm:5.1.2"
+ dependencies:
+ eastasianwidth: "npm:^0.2.0"
+ emoji-regex: "npm:^9.2.2"
+ strip-ansi: "npm:^7.0.1"
+ checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca
+ languageName: node
+ linkType: hard
+
+"string.prototype.matchall@npm:^4.0.12":
+ version: 4.0.12
+ resolution: "string.prototype.matchall@npm:4.0.12"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.3"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.6"
+ es-errors: "npm:^1.3.0"
+ es-object-atoms: "npm:^1.0.0"
+ get-intrinsic: "npm:^1.2.6"
+ gopd: "npm:^1.2.0"
+ has-symbols: "npm:^1.1.0"
+ internal-slot: "npm:^1.1.0"
+ regexp.prototype.flags: "npm:^1.5.3"
+ set-function-name: "npm:^2.0.2"
+ side-channel: "npm:^1.1.0"
+ checksum: 10c0/1a53328ada73f4a77f1fdf1c79414700cf718d0a8ef6672af5603e709d26a24f2181208144aed7e858b1bcc1a0d08567a570abfb45567db4ae47637ed2c2f85c
+ languageName: node
+ linkType: hard
+
+"string.prototype.repeat@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "string.prototype.repeat@npm:1.0.0"
+ dependencies:
+ define-properties: "npm:^1.1.3"
+ es-abstract: "npm:^1.17.5"
+ checksum: 10c0/94c7978566cffa1327d470fd924366438af9b04b497c43a9805e476e2e908aa37a1fd34cc0911156c17556dab62159d12c7b92b3cc304c3e1281fe4c8e668f40
+ languageName: node
+ linkType: hard
+
+"string.prototype.trim@npm:^1.2.10":
+ version: 1.2.10
+ resolution: "string.prototype.trim@npm:1.2.10"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.2"
+ define-data-property: "npm:^1.1.4"
+ define-properties: "npm:^1.2.1"
+ es-abstract: "npm:^1.23.5"
+ es-object-atoms: "npm:^1.0.0"
+ has-property-descriptors: "npm:^1.0.2"
+ checksum: 10c0/8a8854241c4b54a948e992eb7dd6b8b3a97185112deb0037a134f5ba57541d8248dd610c966311887b6c2fd1181a3877bffb14d873ce937a344535dabcc648f8
+ languageName: node
+ linkType: hard
+
+"string.prototype.trimend@npm:^1.0.9":
+ version: 1.0.9
+ resolution: "string.prototype.trimend@npm:1.0.9"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.2"
+ define-properties: "npm:^1.2.1"
+ es-object-atoms: "npm:^1.0.0"
+ checksum: 10c0/59e1a70bf9414cb4c536a6e31bef5553c8ceb0cf44d8b4d0ed65c9653358d1c64dd0ec203b100df83d0413bbcde38b8c5d49e14bc4b86737d74adc593a0d35b6
+ languageName: node
+ linkType: hard
+
+"string.prototype.trimstart@npm:^1.0.8":
+ version: 1.0.8
+ resolution: "string.prototype.trimstart@npm:1.0.8"
+ dependencies:
+ call-bind: "npm:^1.0.7"
+ define-properties: "npm:^1.2.1"
+ es-object-atoms: "npm:^1.0.0"
+ checksum: 10c0/d53af1899959e53c83b64a5fd120be93e067da740e7e75acb433849aa640782fb6c7d4cd5b84c954c84413745a3764df135a8afeb22908b86a835290788d8366
+ languageName: node
+ linkType: hard
+
+"string_decoder@npm:^1.1.1":
+ version: 1.3.0
+ resolution: "string_decoder@npm:1.3.0"
+ dependencies:
+ safe-buffer: "npm:~5.2.0"
+ checksum: 10c0/810614ddb030e271cd591935dcd5956b2410dd079d64ff92a1844d6b7588bf992b3e1b69b0f4d34a3e06e0bd73046ac646b5264c1987b20d0601f81ef35d731d
+ languageName: node
+ linkType: hard
+
+"string_decoder@npm:~1.1.1":
+ version: 1.1.1
+ resolution: "string_decoder@npm:1.1.1"
+ dependencies:
+ safe-buffer: "npm:~5.1.0"
+ checksum: 10c0/b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e
+ languageName: node
+ linkType: hard
+
+"strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1":
+ version: 6.0.1
+ resolution: "strip-ansi@npm:6.0.1"
+ dependencies:
+ ansi-regex: "npm:^5.0.1"
+ checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952
+ languageName: node
+ linkType: hard
+
+"strip-ansi@npm:^7.0.1":
+ version: 7.2.0
+ resolution: "strip-ansi@npm:7.2.0"
+ dependencies:
+ ansi-regex: "npm:^6.2.2"
+ checksum: 10c0/544d13b7582f8254811ea97db202f519e189e59d35740c46095897e254e4f1aa9fe1524a83ad6bc5ad67d4dd6c0281d2e0219ed62b880a6238a16a17d375f221
+ languageName: node
+ linkType: hard
+
+"strip-bom@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "strip-bom@npm:3.0.0"
+ checksum: 10c0/51201f50e021ef16672593d7434ca239441b7b760e905d9f33df6e4f3954ff54ec0e0a06f100d028af0982d6f25c35cd5cda2ce34eaebccd0250b8befb90d8f1
+ languageName: node
+ linkType: hard
+
+"strip-bom@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "strip-bom@npm:4.0.0"
+ checksum: 10c0/26abad1172d6bc48985ab9a5f96c21e440f6e7e476686de49be813b5a59b3566dccb5c525b831ec54fe348283b47f3ffb8e080bc3f965fde12e84df23f6bb7ef
+ languageName: node
+ linkType: hard
+
+"strip-final-newline@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "strip-final-newline@npm:2.0.0"
+ checksum: 10c0/bddf8ccd47acd85c0e09ad7375409d81653f645fda13227a9d459642277c253d877b68f2e5e4d819fe75733b0e626bac7e954c04f3236f6d196f79c94fa4a96f
+ languageName: node
+ linkType: hard
+
+"strip-final-newline@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "strip-final-newline@npm:3.0.0"
+ checksum: 10c0/a771a17901427bac6293fd416db7577e2bc1c34a19d38351e9d5478c3c415f523f391003b42ed475f27e33a78233035df183525395f731d3bfb8cdcbd4da08ce
+ languageName: node
+ linkType: hard
+
+"strip-indent@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "strip-indent@npm:3.0.0"
+ dependencies:
+ min-indent: "npm:^1.0.0"
+ checksum: 10c0/ae0deaf41c8d1001c5d4fbe16cb553865c1863da4fae036683b474fa926af9fc121e155cb3fc57a68262b2ae7d5b8420aa752c97a6428c315d00efe2a3875679
+ languageName: node
+ linkType: hard
+
+"strip-json-comments@npm:^3.1.1":
+ version: 3.1.1
+ resolution: "strip-json-comments@npm:3.1.1"
+ checksum: 10c0/9681a6257b925a7fa0f285851c0e613cc934a50661fa7bb41ca9cbbff89686bb4a0ee366e6ecedc4daafd01e83eee0720111ab294366fe7c185e935475ebcecd
+ languageName: node
+ linkType: hard
+
+"strip-json-comments@npm:~2.0.1":
+ version: 2.0.1
+ resolution: "strip-json-comments@npm:2.0.1"
+ checksum: 10c0/b509231cbdee45064ff4f9fd73609e2bcc4e84a4d508e9dd0f31f70356473fde18abfb5838c17d56fb236f5a06b102ef115438de0600b749e818a35fbbc48c43
+ languageName: node
+ linkType: hard
+
+"supports-color@npm:^7.1.0":
+ version: 7.2.0
+ resolution: "supports-color@npm:7.2.0"
+ dependencies:
+ has-flag: "npm:^4.0.0"
+ checksum: 10c0/afb4c88521b8b136b5f5f95160c98dee7243dc79d5432db7efc27efb219385bbc7d9427398e43dd6cc730a0f87d5085ce1652af7efbe391327bc0a7d0f7fc124
+ languageName: node
+ linkType: hard
+
+"supports-color@npm:^8.0.0, supports-color@npm:~8.1.1":
+ version: 8.1.1
+ resolution: "supports-color@npm:8.1.1"
+ dependencies:
+ has-flag: "npm:^4.0.0"
+ checksum: 10c0/ea1d3c275dd604c974670f63943ed9bd83623edc102430c05adb8efc56ba492746b6e95386e7831b872ec3807fd89dd8eb43f735195f37b5ec343e4234cc7e89
+ languageName: node
+ linkType: hard
+
+"supports-preserve-symlinks-flag@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "supports-preserve-symlinks-flag@npm:1.0.0"
+ checksum: 10c0/6c4032340701a9950865f7ae8ef38578d8d7053f5e10518076e6554a9381fa91bd9c6850193695c141f32b21f979c985db07265a758867bac95de05f7d8aeb39
+ languageName: node
+ linkType: hard
+
+"tar@npm:^7.5.4":
+ version: 7.5.22
+ resolution: "tar@npm:7.5.22"
+ dependencies:
+ "@isaacs/fs-minipass": "npm:^4.0.0"
+ chownr: "npm:^3.0.0"
+ minipass: "npm:^7.1.2"
+ minizlib: "npm:^3.1.0"
+ yallist: "npm:^5.0.0"
+ checksum: 10c0/1311f6be85a8157ac4c9147bae43e13923d2a1aae15e4aa1bd5239e4e03d2cf53cfe103dde7f35832fbb4c938b042856bc8e9a0afd29abd05e2d1608788c4fea
+ languageName: node
+ linkType: hard
+
+"temp@npm:^0.8.4":
+ version: 0.8.4
+ resolution: "temp@npm:0.8.4"
+ dependencies:
+ rimraf: "npm:~2.6.2"
+ checksum: 10c0/7f071c963031bfece37e13c5da11e9bb451e4ddfc4653e23e327a2f91594102dc826ef6a693648e09a6e0eb856f507967ec759ae55635e0878091eccf411db37
+ languageName: node
+ linkType: hard
+
+"terser@npm:^5.15.0":
+ version: 5.46.2
+ resolution: "terser@npm:5.46.2"
+ dependencies:
+ "@jridgewell/source-map": "npm:^0.3.3"
+ acorn: "npm:^8.15.0"
+ commander: "npm:^2.20.0"
+ source-map-support: "npm:~0.5.20"
+ bin:
+ terser: bin/terser
+ checksum: 10c0/476f1820160c42e6b2f611410115b00321c4666d421f12db87f13810f8789de45cb254e3ad5178650696d0ba6b706f5a0a239272255d6d1be95816c660f8cbbb
+ languageName: node
+ linkType: hard
+
+"test-exclude@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "test-exclude@npm:6.0.0"
+ dependencies:
+ "@istanbuljs/schema": "npm:^0.1.2"
+ glob: "npm:^7.1.4"
+ minimatch: "npm:^3.0.4"
+ checksum: 10c0/019d33d81adff3f9f1bfcff18125fb2d3c65564f437d9be539270ee74b994986abb8260c7c2ce90e8f30162178b09dbbce33c6389273afac4f36069c48521f57
+ languageName: node
+ linkType: hard
+
+"text-extensions@npm:^1.0.0":
+ version: 1.9.0
+ resolution: "text-extensions@npm:1.9.0"
+ checksum: 10c0/9ad5a9f723a871e2d884e132d7e93f281c60b5759c95f3f6b04704856548715d93a36c10dbaf5f12b91bf405f0cf3893bf169d4d143c0f5509563b992d385443
+ languageName: node
+ linkType: hard
+
+"text-table@npm:^0.2.0":
+ version: 0.2.0
+ resolution: "text-table@npm:0.2.0"
+ checksum: 10c0/02805740c12851ea5982686810702e2f14369a5f4c5c40a836821e3eefc65ffeec3131ba324692a37608294b0fd8c1e55a2dd571ffed4909822787668ddbee5c
+ languageName: node
+ linkType: hard
+
+"throat@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "throat@npm:5.0.0"
+ checksum: 10c0/1b9c661dabf93ff9026fecd781ccfd9b507c41b9d5e581614884fffd09f3f9ebfe26d3be668ccf904fd324dd3f6efe1a3ec7f83e91b1dff9fdcc6b7d39b8bfe3
+ languageName: node
+ linkType: hard
+
+"through2@npm:^2.0.0":
+ version: 2.0.5
+ resolution: "through2@npm:2.0.5"
+ dependencies:
+ readable-stream: "npm:~2.3.6"
+ xtend: "npm:~4.0.1"
+ checksum: 10c0/cbfe5b57943fa12b4f8c043658c2a00476216d79c014895cef1ac7a1d9a8b31f6b438d0e53eecbb81054b93128324a82ecd59ec1a4f91f01f7ac113dcb14eade
+ languageName: node
+ linkType: hard
+
+"through2@npm:^4.0.0":
+ version: 4.0.2
+ resolution: "through2@npm:4.0.2"
+ dependencies:
+ readable-stream: "npm:3"
+ checksum: 10c0/3741564ae99990a4a79097fe7a4152c22348adc4faf2df9199a07a66c81ed2011da39f631e479fdc56483996a9d34a037ad64e76d79f18c782ab178ea9b6778c
+ languageName: node
+ linkType: hard
+
+"through@npm:2, through@npm:>=2.2.7 <3, through@npm:^2.3.6":
+ version: 2.3.8
+ resolution: "through@npm:2.3.8"
+ checksum: 10c0/4b09f3774099de0d4df26d95c5821a62faee32c7e96fb1f4ebd54a2d7c11c57fe88b0a0d49cf375de5fee5ae6bf4eb56dbbf29d07366864e2ee805349970d3cc
+ languageName: node
+ linkType: hard
+
+"tinyglobby@npm:^0.2.12":
+ version: 0.2.17
+ resolution: "tinyglobby@npm:0.2.17"
+ dependencies:
+ fdir: "npm:^6.5.0"
+ picomatch: "npm:^4.0.4"
+ checksum: 10c0/7f7bb0f197c88bc4b20c231e0deca4240ca3bf313a88f5a7fee93a872b84966a4d50220947c0455ad07a60b3b360961c5b7fd979222aeb716a9f99b412002e4c
+ languageName: node
+ linkType: hard
+
+"titleize@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "titleize@npm:3.0.0"
+ checksum: 10c0/5ae6084ba299b5782f95e3fe85ea9f0fa4d74b8ae722b6b3208157e975589fbb27733aeba4e5080fa9314a856044ef52caa61b87caea4b1baade951a55c06336
+ languageName: node
+ linkType: hard
+
+"tmp@npm:^0.0.33":
+ version: 0.0.33
+ resolution: "tmp@npm:0.0.33"
+ dependencies:
+ os-tmpdir: "npm:~1.0.2"
+ checksum: 10c0/69863947b8c29cabad43fe0ce65cec5bb4b481d15d4b4b21e036b060b3edbf3bc7a5541de1bacb437bb3f7c4538f669752627fdf9b4aaf034cebd172ba373408
+ languageName: node
+ linkType: hard
+
+"tmpl@npm:1.0.5":
+ version: 1.0.5
+ resolution: "tmpl@npm:1.0.5"
+ checksum: 10c0/f935537799c2d1922cb5d6d3805f594388f75338fe7a4a9dac41504dd539704ca4db45b883b52e7b0aa5b2fd5ddadb1452bf95cd23a69da2f793a843f9451cc9
+ languageName: node
+ linkType: hard
+
+"to-regex-range@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "to-regex-range@npm:5.0.1"
+ dependencies:
+ is-number: "npm:^7.0.0"
+ checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892
+ languageName: node
+ linkType: hard
+
+"toidentifier@npm:~1.0.1":
+ version: 1.0.1
+ resolution: "toidentifier@npm:1.0.1"
+ checksum: 10c0/93937279934bd66cc3270016dd8d0afec14fb7c94a05c72dc57321f8bd1fa97e5bea6d1f7c89e728d077ca31ea125b78320a616a6c6cd0e6b9cb94cb864381c1
+ languageName: node
+ linkType: hard
+
+"tr46@npm:~0.0.3":
+ version: 0.0.3
+ resolution: "tr46@npm:0.0.3"
+ checksum: 10c0/047cb209a6b60c742f05c9d3ace8fa510bff609995c129a37ace03476a9b12db4dbf975e74600830ef0796e18882b2381fb5fb1f6b4f96b832c374de3ab91a11
+ languageName: node
+ linkType: hard
+
+"trim-newlines@npm:^3.0.0":
+ version: 3.0.1
+ resolution: "trim-newlines@npm:3.0.1"
+ checksum: 10c0/03cfefde6c59ff57138412b8c6be922ecc5aec30694d784f2a65ef8dcbd47faef580b7de0c949345abdc56ec4b4abf64dd1e5aea619b200316e471a3dd5bf1f6
+ languageName: node
+ linkType: hard
+
+"ts-node@npm:^10.8.1":
+ version: 10.9.2
+ resolution: "ts-node@npm:10.9.2"
+ dependencies:
+ "@cspotcode/source-map-support": "npm:^0.8.0"
+ "@tsconfig/node10": "npm:^1.0.7"
+ "@tsconfig/node12": "npm:^1.0.7"
+ "@tsconfig/node14": "npm:^1.0.0"
+ "@tsconfig/node16": "npm:^1.0.2"
+ acorn: "npm:^8.4.1"
+ acorn-walk: "npm:^8.1.1"
+ arg: "npm:^4.1.0"
+ create-require: "npm:^1.1.0"
+ diff: "npm:^4.0.1"
+ make-error: "npm:^1.1.1"
+ v8-compile-cache-lib: "npm:^3.0.1"
+ yn: "npm:3.1.1"
+ 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
+ bin:
+ ts-node: dist/bin.js
+ ts-node-cwd: dist/bin-cwd.js
+ ts-node-esm: dist/bin-esm.js
+ ts-node-script: dist/bin-script.js
+ ts-node-transpile-only: dist/bin-transpile.js
+ ts-script: dist/bin-script-deprecated.js
+ checksum: 10c0/5f29938489f96982a25ba650b64218e83a3357d76f7bede80195c65ab44ad279c8357264639b7abdd5d7e75fc269a83daa0e9c62fd8637a3def67254ecc9ddc2
+ languageName: node
+ linkType: hard
+
+"tslib@npm:^1.8.1":
+ version: 1.14.1
+ resolution: "tslib@npm:1.14.1"
+ checksum: 10c0/69ae09c49eea644bc5ebe1bca4fa4cc2c82b7b3e02f43b84bd891504edf66dbc6b2ec0eef31a957042de2269139e4acff911e6d186a258fb14069cd7f6febce2
+ languageName: node
+ linkType: hard
+
+"tslib@npm:^2.0.1, tslib@npm:^2.1.0":
+ version: 2.8.1
+ resolution: "tslib@npm:2.8.1"
+ checksum: 10c0/9c4759110a19c53f992d9aae23aac5ced636e99887b51b9e61def52611732872ff7668757d4e4c61f19691e36f4da981cd9485e869b4a7408d689f6bf1f14e62
+ languageName: node
+ linkType: hard
+
+"tsutils@npm:^3.21.0":
+ version: 3.21.0
+ resolution: "tsutils@npm:3.21.0"
+ dependencies:
+ tslib: "npm:^1.8.1"
+ 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"
+ checksum: 10c0/02f19e458ec78ead8fffbf711f834ad8ecd2cc6ade4ec0320790713dccc0a412b99e7fd907c4cda2a1dc602c75db6f12e0108e87a5afad4b2f9e90a24cabd5a2
+ languageName: node
+ linkType: hard
+
+"type-check@npm:^0.4.0, type-check@npm:~0.4.0":
+ version: 0.4.0
+ resolution: "type-check@npm:0.4.0"
+ dependencies:
+ prelude-ls: "npm:^1.2.1"
+ checksum: 10c0/7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58
+ languageName: node
+ linkType: hard
+
+"type-check@npm:~0.3.2":
+ version: 0.3.2
+ resolution: "type-check@npm:0.3.2"
+ dependencies:
+ prelude-ls: "npm:~1.1.2"
+ checksum: 10c0/776217116b2b4e50e368c7ee0c22c0a85e982881c16965b90d52f216bc296d6a52ef74f9202d22158caacc092a7645b0b8d5fe529a96e3fe35d0fb393966c875
+ languageName: node
+ linkType: hard
+
+"type-detect@npm:4.0.8":
+ version: 4.0.8
+ resolution: "type-detect@npm:4.0.8"
+ checksum: 10c0/8fb9a51d3f365a7de84ab7f73b653534b61b622aa6800aecdb0f1095a4a646d3f5eb295322127b6573db7982afcd40ab492d038cf825a42093a58b1e1353e0bd
+ languageName: node
+ linkType: hard
+
+"type-fest@npm:^0.18.0":
+ version: 0.18.1
+ resolution: "type-fest@npm:0.18.1"
+ checksum: 10c0/303f5ecf40d03e1d5b635ce7660de3b33c18ed8ebc65d64920c02974d9e684c72483c23f9084587e9dd6466a2ece1da42ddc95b412a461794dd30baca95e2bac
+ languageName: node
+ linkType: hard
+
+"type-fest@npm:^0.20.2":
+ version: 0.20.2
+ resolution: "type-fest@npm:0.20.2"
+ checksum: 10c0/dea9df45ea1f0aaa4e2d3bed3f9a0bfe9e5b2592bddb92eb1bf06e50bcf98dbb78189668cd8bc31a0511d3fc25539b4cd5c704497e53e93e2d40ca764b10bfc3
+ languageName: node
+ linkType: hard
+
+"type-fest@npm:^0.21.3":
+ version: 0.21.3
+ resolution: "type-fest@npm:0.21.3"
+ checksum: 10c0/902bd57bfa30d51d4779b641c2bc403cdf1371fb9c91d3c058b0133694fcfdb817aef07a47f40faf79039eecbaa39ee9d3c532deff244f3a19ce68cea71a61e8
+ languageName: node
+ linkType: hard
+
+"type-fest@npm:^0.6.0":
+ version: 0.6.0
+ resolution: "type-fest@npm:0.6.0"
+ checksum: 10c0/0c585c26416fce9ecb5691873a1301b5aff54673c7999b6f925691ed01f5b9232db408cdbb0bd003d19f5ae284322523f44092d1f81ca0a48f11f7cf0be8cd38
+ languageName: node
+ linkType: hard
+
+"type-fest@npm:^0.7.1":
+ version: 0.7.1
+ resolution: "type-fest@npm:0.7.1"
+ checksum: 10c0/ce6b5ef806a76bf08d0daa78d65e61f24d9a0380bd1f1df36ffb61f84d14a0985c3a921923cf4b97831278cb6fa9bf1b89c751df09407e0510b14e8c081e4e0f
+ languageName: node
+ linkType: hard
+
+"type-fest@npm:^0.8.1":
+ version: 0.8.1
+ resolution: "type-fest@npm:0.8.1"
+ checksum: 10c0/dffbb99329da2aa840f506d376c863bd55f5636f4741ad6e65e82f5ce47e6914108f44f340a0b74009b0cb5d09d6752ae83203e53e98b1192cf80ecee5651636
+ languageName: node
+ linkType: hard
+
+"type-fest@npm:^1.0.1":
+ version: 1.4.0
+ resolution: "type-fest@npm:1.4.0"
+ checksum: 10c0/a3c0f4ee28ff6ddf800d769eafafcdeab32efa38763c1a1b8daeae681920f6e345d7920bf277245235561d8117dab765cb5f829c76b713b4c9de0998a5397141
+ languageName: node
+ linkType: hard
+
+"type-fest@npm:^2.13.0, type-fest@npm:^2.5.1":
+ version: 2.19.0
+ resolution: "type-fest@npm:2.19.0"
+ checksum: 10c0/a5a7ecf2e654251613218c215c7493574594951c08e52ab9881c9df6a6da0aeca7528c213c622bc374b4e0cb5c443aa3ab758da4e3c959783ce884c3194e12cb
+ languageName: node
+ linkType: hard
+
+"typed-array-buffer@npm:^1.0.3":
+ version: 1.0.3
+ resolution: "typed-array-buffer@npm:1.0.3"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ es-errors: "npm:^1.3.0"
+ is-typed-array: "npm:^1.1.14"
+ checksum: 10c0/1105071756eb248774bc71646bfe45b682efcad93b55532c6ffa4518969fb6241354e4aa62af679ae83899ec296d69ef88f1f3763657cdb3a4d29321f7b83079
+ languageName: node
+ linkType: hard
+
+"typed-array-byte-length@npm:^1.0.3":
+ version: 1.0.3
+ resolution: "typed-array-byte-length@npm:1.0.3"
+ dependencies:
+ call-bind: "npm:^1.0.8"
+ for-each: "npm:^0.3.3"
+ gopd: "npm:^1.2.0"
+ has-proto: "npm:^1.2.0"
+ is-typed-array: "npm:^1.1.14"
+ checksum: 10c0/6ae083c6f0354f1fce18b90b243343b9982affd8d839c57bbd2c174a5d5dc71be9eb7019ffd12628a96a4815e7afa85d718d6f1e758615151d5f35df841ffb3e
+ languageName: node
+ linkType: hard
+
+"typed-array-byte-offset@npm:^1.0.4":
+ version: 1.0.4
+ resolution: "typed-array-byte-offset@npm:1.0.4"
+ dependencies:
+ available-typed-arrays: "npm:^1.0.7"
+ call-bind: "npm:^1.0.8"
+ for-each: "npm:^0.3.3"
+ gopd: "npm:^1.2.0"
+ has-proto: "npm:^1.2.0"
+ is-typed-array: "npm:^1.1.15"
+ reflect.getprototypeof: "npm:^1.0.9"
+ checksum: 10c0/3d805b050c0c33b51719ee52de17c1cd8e6a571abdf0fffb110e45e8dd87a657e8b56eee94b776b13006d3d347a0c18a730b903cf05293ab6d92e99ff8f77e53
+ languageName: node
+ linkType: hard
+
+"typed-array-length@npm:^1.0.7":
+ version: 1.0.7
+ resolution: "typed-array-length@npm:1.0.7"
+ dependencies:
+ call-bind: "npm:^1.0.7"
+ for-each: "npm:^0.3.3"
+ gopd: "npm:^1.0.1"
+ is-typed-array: "npm:^1.1.13"
+ possible-typed-array-names: "npm:^1.0.0"
+ reflect.getprototypeof: "npm:^1.0.6"
+ checksum: 10c0/e38f2ae3779584c138a2d8adfa8ecf749f494af3cd3cdafe4e688ce51418c7d2c5c88df1bd6be2bbea099c3f7cea58c02ca02ed438119e91f162a9de23f61295
+ languageName: node
+ linkType: hard
+
+"typedarray-to-buffer@npm:^3.1.5":
+ version: 3.1.5
+ resolution: "typedarray-to-buffer@npm:3.1.5"
+ dependencies:
+ is-typedarray: "npm:^1.0.0"
+ checksum: 10c0/4ac5b7a93d604edabf3ac58d3a2f7e07487e9f6e98195a080e81dbffdc4127817f470f219d794a843b87052cedef102b53ac9b539855380b8c2172054b7d5027
+ languageName: node
+ linkType: hard
+
+"typedarray@npm:^0.0.6":
+ version: 0.0.6
+ resolution: "typedarray@npm:0.0.6"
+ checksum: 10c0/6005cb31df50eef8b1f3c780eb71a17925f3038a100d82f9406ac2ad1de5eb59f8e6decbdc145b3a1f8e5836e17b0c0002fb698b9fe2516b8f9f9ff602d36412
+ languageName: node
+ linkType: hard
+
+"typescript@npm:5.6.3, typescript@npm:^4.6.4 || ^5.2.2":
+ version: 5.6.3
+ resolution: "typescript@npm:5.6.3"
+ bin:
+ tsc: bin/tsc
+ tsserver: bin/tsserver
+ checksum: 10c0/44f61d3fb15c35359bc60399cb8127c30bae554cd555b8e2b46d68fa79d680354b83320ad419ff1b81a0bdf324197b29affe6cc28988cd6a74d4ac60c94f9799
+ languageName: node
+ linkType: hard
+
+"typescript@npm:5.9.3":
+ version: 5.9.3
+ resolution: "typescript@npm:5.9.3"
+ bin:
+ tsc: bin/tsc
+ tsserver: bin/tsserver
+ checksum: 10c0/6bd7552ce39f97e711db5aa048f6f9995b53f1c52f7d8667c1abdc1700c68a76a308f579cd309ce6b53646deb4e9a1be7c813a93baaf0a28ccd536a30270e1c5
+ languageName: node
+ linkType: hard
+
+"typescript@patch:typescript@npm%3A5.6.3#optional!builtin, typescript@patch:typescript@npm%3A^4.6.4 || ^5.2.2#optional!builtin":
+ version: 5.6.3
+ resolution: "typescript@patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"
+ bin:
+ tsc: bin/tsc
+ tsserver: bin/tsserver
+ checksum: 10c0/7c9d2e07c81226d60435939618c91ec2ff0b75fbfa106eec3430f0fcf93a584bc6c73176676f532d78c3594fe28a54b36eb40b3d75593071a7ec91301533ace7
+ languageName: node
+ linkType: hard
+
+"typescript@patch:typescript@npm%3A5.9.3#optional!builtin":
+ version: 5.9.3
+ resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin::version=5.9.3&hash=cef18b"
+ bin:
+ tsc: bin/tsc
+ tsserver: bin/tsserver
+ checksum: 10c0/6f7e53bf0d9702350deeb6f35e08b69cbc8b958c33e0ec77bdc0ad6a6c8e280f3959dcbfde6f5b0848bece57810696489deaaa53d75de3578ff255d168c1efbd
+ languageName: node
+ linkType: hard
+
+"uglify-js@npm:^3.1.4":
+ version: 3.19.3
+ resolution: "uglify-js@npm:3.19.3"
+ bin:
+ uglifyjs: bin/uglifyjs
+ checksum: 10c0/83b0a90eca35f778e07cad9622b80c448b6aad457c9ff8e568afed978212b42930a95f9e1be943a1ffa4258a3340fbb899f41461131c05bb1d0a9c303aed8479
+ languageName: node
+ linkType: hard
+
+"unbox-primitive@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "unbox-primitive@npm:1.1.0"
+ dependencies:
+ call-bound: "npm:^1.0.3"
+ has-bigints: "npm:^1.0.2"
+ has-symbols: "npm:^1.1.0"
+ which-boxed-primitive: "npm:^1.1.1"
+ checksum: 10c0/7dbd35ab02b0e05fe07136c72cb9355091242455473ec15057c11430129bab38b7b3624019b8778d02a881c13de44d63cd02d122ee782fb519e1de7775b5b982
+ languageName: node
+ linkType: hard
+
+"unc-path-regex@npm:^0.1.2":
+ version: 0.1.2
+ resolution: "unc-path-regex@npm:0.1.2"
+ checksum: 10c0/bf9c781c4e2f38e6613ea17a51072e4b416840fbe6eeb244597ce9b028fac2fb6cfd3dde1f14111b02c245e665dc461aab8168ecc30b14364d02caa37f812996
+ languageName: node
+ linkType: hard
+
+"undici@npm:^8.4.1":
+ version: 8.10.0
+ resolution: "undici@npm:8.10.0"
+ checksum: 10c0/37ae2b1db8f65c3a003504e2040e96887b99f9db16ba07dcf49c37ed8b7f8c72f4452f2d46f52f7c9e49518fe8325e3b5e7e02ac3a2424886bd67d4b62a0ecab
+ languageName: node
+ linkType: hard
+
+"unicode-canonical-property-names-ecmascript@npm:^2.0.0":
+ version: 2.0.1
+ resolution: "unicode-canonical-property-names-ecmascript@npm:2.0.1"
+ checksum: 10c0/f83bc492fdbe662860795ef37a85910944df7310cac91bd778f1c19ebc911e8b9cde84e703de631e5a2fcca3905e39896f8fc5fc6a44ddaf7f4aff1cda24f381
+ languageName: node
+ linkType: hard
+
+"unicode-match-property-ecmascript@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "unicode-match-property-ecmascript@npm:2.0.0"
+ dependencies:
+ unicode-canonical-property-names-ecmascript: "npm:^2.0.0"
+ unicode-property-aliases-ecmascript: "npm:^2.0.0"
+ checksum: 10c0/4d05252cecaf5c8e36d78dc5332e03b334c6242faf7cf16b3658525441386c0a03b5f603d42cbec0f09bb63b9fd25c9b3b09667aee75463cac3efadae2cd17ec
+ languageName: node
+ linkType: hard
+
+"unicode-match-property-value-ecmascript@npm:^2.2.1":
+ version: 2.2.1
+ resolution: "unicode-match-property-value-ecmascript@npm:2.2.1"
+ checksum: 10c0/93acd1ad9496b600e5379d1aaca154cf551c5d6d4a0aefaf0984fc2e6288e99220adbeb82c935cde461457fb6af0264a1774b8dfd4d9a9e31548df3352a4194d
+ languageName: node
+ linkType: hard
+
+"unicode-property-aliases-ecmascript@npm:^2.0.0":
+ version: 2.2.0
+ resolution: "unicode-property-aliases-ecmascript@npm:2.2.0"
+ checksum: 10c0/b338529831c988ac696f2bdbcd4579d1c5cc844b24eda7269973c457fa81989bdb49a366af37a448eb1a60f1dae89559ea2a5854db2797e972a0162eee0778c6
+ languageName: node
+ linkType: hard
+
+"unique-string@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "unique-string@npm:3.0.0"
+ dependencies:
+ crypto-random-string: "npm:^4.0.0"
+ checksum: 10c0/b35ea034b161b2a573666ec16c93076b4b6106b8b16c2415808d747ab3a0566b5db0c4be231d4b11cfbc16d7fd915c9d8a45884bff0e2db11b799775b2e1e017
+ languageName: node
+ linkType: hard
+
+"universal-user-agent@npm:^6.0.0":
+ version: 6.0.1
+ resolution: "universal-user-agent@npm:6.0.1"
+ checksum: 10c0/5c9c46ffe19a975e11e6443640ed4c9e0ce48fcc7203325757a8414ac49940ebb0f4667f2b1fa561489d1eb22cb2d05a0f7c82ec20c5cba42e58e188fb19b187
+ languageName: node
+ linkType: hard
+
+"universalify@npm:^2.0.0":
+ version: 2.0.1
+ resolution: "universalify@npm:2.0.1"
+ checksum: 10c0/73e8ee3809041ca8b818efb141801a1004e3fc0002727f1531f4de613ea281b494a40909596dae4a042a4fb6cd385af5d4db2e137b1362e0e91384b828effd3a
+ languageName: node
+ linkType: hard
+
+"unpipe@npm:~1.0.0":
+ version: 1.0.0
+ resolution: "unpipe@npm:1.0.0"
+ checksum: 10c0/193400255bd48968e5c5383730344fbb4fa114cdedfab26e329e50dd2d81b134244bb8a72c6ac1b10ab0281a58b363d06405632c9d49ca9dfd5e90cbd7d0f32c
+ languageName: node
+ linkType: hard
+
+"untildify@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "untildify@npm:4.0.0"
+ checksum: 10c0/d758e624c707d49f76f7511d75d09a8eda7f2020d231ec52b67ff4896bcf7013be3f9522d8375f57e586e9a2e827f5641c7e06ee46ab9c435fc2b2b2e9de517a
+ languageName: node
+ linkType: hard
+
+"update-browserslist-db@npm:^1.2.3":
+ version: 1.2.3
+ resolution: "update-browserslist-db@npm:1.2.3"
+ dependencies:
+ escalade: "npm:^3.2.0"
+ picocolors: "npm:^1.1.1"
+ peerDependencies:
+ browserslist: ">= 4.21.0"
+ bin:
+ update-browserslist-db: cli.js
+ checksum: 10c0/13a00355ea822388f68af57410ce3255941d5fb9b7c49342c4709a07c9f230bbef7f7499ae0ca7e0de532e79a82cc0c4edbd125f1a323a1845bf914efddf8bec
+ languageName: node
+ linkType: hard
+
+"update-notifier@npm:6.0.2":
+ version: 6.0.2
+ resolution: "update-notifier@npm:6.0.2"
+ dependencies:
+ boxen: "npm:^7.0.0"
+ chalk: "npm:^5.0.1"
+ configstore: "npm:^6.0.0"
+ has-yarn: "npm:^3.0.0"
+ import-lazy: "npm:^4.0.0"
+ is-ci: "npm:^3.0.1"
+ is-installed-globally: "npm:^0.4.0"
+ is-npm: "npm:^6.0.0"
+ is-yarn-global: "npm:^0.4.0"
+ latest-version: "npm:^7.0.0"
+ pupa: "npm:^3.1.0"
+ semver: "npm:^7.3.7"
+ semver-diff: "npm:^4.0.0"
+ xdg-basedir: "npm:^5.1.0"
+ checksum: 10c0/ad3980073312df904133a6e6c554a7f9d0832ed6275e55f5a546313fe77a0f20f23a7b1b4aeb409e20a78afb06f4d3b2b28b332d9cfb55745b5d1ea155810bcc
+ languageName: node
+ linkType: hard
+
+"uri-js@npm:^4.2.2":
+ version: 4.4.1
+ resolution: "uri-js@npm:4.4.1"
+ dependencies:
+ punycode: "npm:^2.1.0"
+ checksum: 10c0/4ef57b45aa820d7ac6496e9208559986c665e49447cb072744c13b66925a362d96dd5a46c4530a6b8e203e5db5fe849369444440cb22ecfc26c679359e5dfa3c
+ languageName: node
+ linkType: hard
+
+"url-join@npm:5.0.0":
+ version: 5.0.0
+ resolution: "url-join@npm:5.0.0"
+ checksum: 10c0/ed2b166b4b5a98adcf6828a48b6bd6df1dac4c8a464a73cf4d8e2457ed410dd8da6be0d24855b86026cd7f5c5a3657c1b7b2c7a7c5b8870af17635a41387b04c
+ languageName: node
+ linkType: hard
+
+"util-deprecate@npm:^1.0.1, util-deprecate@npm:~1.0.1":
+ version: 1.0.2
+ resolution: "util-deprecate@npm:1.0.2"
+ checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942
+ languageName: node
+ linkType: hard
+
+"utils-merge@npm:1.0.1":
+ version: 1.0.1
+ resolution: "utils-merge@npm:1.0.1"
+ checksum: 10c0/02ba649de1b7ca8854bfe20a82f1dfbdda3fb57a22ab4a8972a63a34553cf7aa51bc9081cf7e001b035b88186d23689d69e71b510e610a09a4c66f68aa95b672
+ languageName: node
+ linkType: hard
+
+"v8-compile-cache-lib@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "v8-compile-cache-lib@npm:3.0.1"
+ checksum: 10c0/bdc36fb8095d3b41df197f5fb6f11e3a26adf4059df3213e3baa93810d8f0cc76f9a74aaefc18b73e91fe7e19154ed6f134eda6fded2e0f1c8d2272ed2d2d391
+ languageName: node
+ linkType: hard
+
+"v8-to-istanbul@npm:^9.0.1":
+ version: 9.3.0
+ resolution: "v8-to-istanbul@npm:9.3.0"
+ dependencies:
+ "@jridgewell/trace-mapping": "npm:^0.3.12"
+ "@types/istanbul-lib-coverage": "npm:^2.0.1"
+ convert-source-map: "npm:^2.0.0"
+ checksum: 10c0/968bcf1c7c88c04df1ffb463c179558a2ec17aa49e49376120504958239d9e9dad5281aa05f2a78542b8557f2be0b0b4c325710262f3b838b40d703d5ed30c23
+ languageName: node
+ linkType: hard
+
+"validate-npm-package-license@npm:^3.0.1":
+ version: 3.0.4
+ resolution: "validate-npm-package-license@npm:3.0.4"
+ dependencies:
+ spdx-correct: "npm:^3.0.0"
+ spdx-expression-parse: "npm:^3.0.0"
+ checksum: 10c0/7b91e455a8de9a0beaa9fe961e536b677da7f48c9a493edf4d4d4a87fd80a7a10267d438723364e432c2fcd00b5650b5378275cded362383ef570276e6312f4f
+ languageName: node
+ linkType: hard
+
+"vlq@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "vlq@npm:1.0.1"
+ checksum: 10c0/a8ec5c95d747c840198f20b4973327fa317b98397f341e7a2f352bfcf385aeb73c0eea01cc6d406c20169298375397e259efc317aec53c8ffc001ec998204aed
+ languageName: node
+ linkType: hard
+
+"vm2@npm:^3.9.19":
+ version: 3.10.5
+ resolution: "vm2@npm:3.10.5"
+ dependencies:
+ acorn: "npm:^8.15.0"
+ acorn-walk: "npm:^8.3.4"
+ bin:
+ vm2: bin/vm2
+ checksum: 10c0/10fe8e72ab778c4e836b254d5995e5135a7fa93815876500dfc6242bce5223d3d8f0dd0138d1392b683190f7ed053b7707d608688fd30f04d0b0e97de1fc0630
+ languageName: node
+ linkType: hard
+
+"walker@npm:^1.0.7, walker@npm:^1.0.8":
+ version: 1.0.8
+ resolution: "walker@npm:1.0.8"
+ dependencies:
+ makeerror: "npm:1.0.12"
+ checksum: 10c0/a17e037bccd3ca8a25a80cb850903facdfed0de4864bd8728f1782370715d679fa72e0a0f5da7c1c1379365159901e5935f35be531229da53bbfc0efdabdb48e
+ languageName: node
+ linkType: hard
+
+"wcwidth@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "wcwidth@npm:1.0.1"
+ dependencies:
+ defaults: "npm:^1.0.3"
+ checksum: 10c0/5b61ca583a95e2dd85d7078400190efd452e05751a64accb8c06ce4db65d7e0b0cde9917d705e826a2e05cc2548f61efde115ffa374c3e436d04be45c889e5b4
+ languageName: node
+ linkType: hard
+
+"web-streams-polyfill@npm:^3.0.3":
+ version: 3.3.3
+ resolution: "web-streams-polyfill@npm:3.3.3"
+ checksum: 10c0/64e855c47f6c8330b5436147db1c75cb7e7474d924166800e8e2aab5eb6c76aac4981a84261dd2982b3e754490900b99791c80ae1407a9fa0dcff74f82ea3a7f
+ languageName: node
+ linkType: hard
+
+"webidl-conversions@npm:^3.0.0":
+ version: 3.0.1
+ resolution: "webidl-conversions@npm:3.0.1"
+ checksum: 10c0/5612d5f3e54760a797052eb4927f0ddc01383550f542ccd33d5238cfd65aeed392a45ad38364970d0a0f4fea32e1f4d231b3d8dac4a3bdd385e5cf802ae097db
+ languageName: node
+ linkType: hard
+
+"whatwg-fetch@npm:^3.0.0":
+ version: 3.6.20
+ resolution: "whatwg-fetch@npm:3.6.20"
+ checksum: 10c0/fa972dd14091321d38f36a4d062298df58c2248393ef9e8b154493c347c62e2756e25be29c16277396046d6eaa4b11bd174f34e6403fff6aaca9fb30fa1ff46d
+ languageName: node
+ linkType: hard
+
+"whatwg-url@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "whatwg-url@npm:5.0.0"
+ dependencies:
+ tr46: "npm:~0.0.3"
+ webidl-conversions: "npm:^3.0.0"
+ checksum: 10c0/1588bed84d10b72d5eec1d0faa0722ba1962f1821e7539c535558fb5398d223b0c50d8acab950b8c488b4ba69043fd833cc2697056b167d8ad46fac3995a55d5
+ languageName: node
+ linkType: hard
+
+"which-boxed-primitive@npm:^1.1.0, which-boxed-primitive@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "which-boxed-primitive@npm:1.1.1"
+ dependencies:
+ is-bigint: "npm:^1.1.0"
+ is-boolean-object: "npm:^1.2.1"
+ is-number-object: "npm:^1.1.1"
+ is-string: "npm:^1.1.1"
+ is-symbol: "npm:^1.1.1"
+ checksum: 10c0/aceea8ede3b08dede7dce168f3883323f7c62272b49801716e8332ff750e7ae59a511ae088840bc6874f16c1b7fd296c05c949b0e5b357bfe3c431b98c417abe
+ languageName: node
+ linkType: hard
+
+"which-builtin-type@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "which-builtin-type@npm:1.2.1"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ function.prototype.name: "npm:^1.1.6"
+ has-tostringtag: "npm:^1.0.2"
+ is-async-function: "npm:^2.0.0"
+ is-date-object: "npm:^1.1.0"
+ is-finalizationregistry: "npm:^1.1.0"
+ is-generator-function: "npm:^1.0.10"
+ is-regex: "npm:^1.2.1"
+ is-weakref: "npm:^1.0.2"
+ isarray: "npm:^2.0.5"
+ which-boxed-primitive: "npm:^1.1.0"
+ which-collection: "npm:^1.0.2"
+ which-typed-array: "npm:^1.1.16"
+ checksum: 10c0/8dcf323c45e5c27887800df42fbe0431d0b66b1163849bb7d46b5a730ad6a96ee8bfe827d078303f825537844ebf20c02459de41239a0a9805e2fcb3cae0d471
+ languageName: node
+ linkType: hard
+
+"which-collection@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "which-collection@npm:1.0.2"
+ dependencies:
+ is-map: "npm:^2.0.3"
+ is-set: "npm:^2.0.3"
+ is-weakmap: "npm:^2.0.2"
+ is-weakset: "npm:^2.0.3"
+ checksum: 10c0/3345fde20964525a04cdf7c4a96821f85f0cc198f1b2ecb4576e08096746d129eb133571998fe121c77782ac8f21cbd67745a3d35ce100d26d4e684c142ea1f2
+ languageName: node
+ linkType: hard
+
+"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.19":
+ version: 1.1.20
+ resolution: "which-typed-array@npm:1.1.20"
+ dependencies:
+ available-typed-arrays: "npm:^1.0.7"
+ call-bind: "npm:^1.0.8"
+ call-bound: "npm:^1.0.4"
+ for-each: "npm:^0.3.5"
+ get-proto: "npm:^1.0.1"
+ gopd: "npm:^1.2.0"
+ has-tostringtag: "npm:^1.0.2"
+ checksum: 10c0/16fcdada95c8afb821cd1117f0ab50b4d8551677ac08187f21d4e444530913c9ffd2dac634f0c1183345f96344b69280f40f9a8bc52164ef409e555567c2604b
+ languageName: node
+ linkType: hard
+
+"which@npm:^2.0.1, which@npm:^2.0.2":
+ version: 2.0.2
+ resolution: "which@npm:2.0.2"
+ dependencies:
+ isexe: "npm:^2.0.0"
+ bin:
+ node-which: ./bin/node-which
+ checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f
+ languageName: node
+ linkType: hard
+
+"which@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "which@npm:7.0.0"
+ dependencies:
+ isexe: "npm:^4.0.0"
+ bin:
+ node-which: bin/which.js
+ checksum: 10c0/ca0b54f198f78bbc4b7c02e34bda8d335cb352e0adb4cbca1c37b1a957af3a879a82c4c27ca6525bc942f548d8b64f816ef6528360af9f3de55ffb9b979b620d
+ languageName: node
+ linkType: hard
+
+"widest-line@npm:^4.0.1":
+ version: 4.0.1
+ resolution: "widest-line@npm:4.0.1"
+ dependencies:
+ string-width: "npm:^5.0.1"
+ checksum: 10c0/7da9525ba45eaf3e4ed1a20f3dcb9b85bd9443962450694dae950f4bdd752839747bbc14713522b0b93080007de8e8af677a61a8c2114aa553ad52bde72d0f9c
+ languageName: node
+ linkType: hard
+
+"wildcard-match@npm:5.1.2":
+ version: 5.1.2
+ resolution: "wildcard-match@npm:5.1.2"
+ checksum: 10c0/47e54e5a0307c844f1b87844fc632d9481bc936235f85a83310aeb0b52f8d47b6aa06e3e0aa7681e3f3a8c724b9c90a89db58f8891a585ebe6aefe4484ff0289
+ languageName: node
+ linkType: hard
+
+"windows-release@npm:^5.0.1":
+ version: 5.1.1
+ resolution: "windows-release@npm:5.1.1"
+ dependencies:
+ execa: "npm:^5.1.1"
+ checksum: 10c0/934fcd8620fc7cedec6939601c5735a9589d03fa0500874860e13797cc934d48771a97f677d5c162b4c8d72a594bbd522a69b6a1fcd0bc7ff8dfbbdbc1146ba5
+ languageName: node
+ linkType: hard
+
+"word-wrap@npm:^1.2.5, word-wrap@npm:~1.2.3":
+ version: 1.2.5
+ resolution: "word-wrap@npm:1.2.5"
+ checksum: 10c0/e0e4a1ca27599c92a6ca4c32260e8a92e8a44f4ef6ef93f803f8ed823f486e0889fc0b93be4db59c8d51b3064951d25e43d434e95dc8c960cc3a63d65d00ba20
+ languageName: node
+ linkType: hard
+
+"wordwrap@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "wordwrap@npm:1.0.0"
+ checksum: 10c0/7ed2e44f3c33c5c3e3771134d2b0aee4314c9e49c749e37f464bf69f2bcdf0cbf9419ca638098e2717cff4875c47f56a007532f6111c3319f557a2ca91278e92
+ languageName: node
+ linkType: hard
+
+"wrap-ansi@npm:^6.0.1":
+ version: 6.2.0
+ resolution: "wrap-ansi@npm:6.2.0"
+ dependencies:
+ ansi-styles: "npm:^4.0.0"
+ string-width: "npm:^4.1.0"
+ strip-ansi: "npm:^6.0.0"
+ checksum: 10c0/baad244e6e33335ea24e86e51868fe6823626e3a3c88d9a6674642afff1d34d9a154c917e74af8d845fd25d170c4ea9cf69a47133c3f3656e1252b3d462d9f6c
+ languageName: node
+ linkType: hard
+
+"wrap-ansi@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "wrap-ansi@npm:7.0.0"
+ dependencies:
+ ansi-styles: "npm:^4.0.0"
+ string-width: "npm:^4.1.0"
+ strip-ansi: "npm:^6.0.0"
+ checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da
+ languageName: node
+ linkType: hard
+
+"wrap-ansi@npm:^8.1.0":
+ version: 8.1.0
+ resolution: "wrap-ansi@npm:8.1.0"
+ dependencies:
+ ansi-styles: "npm:^6.1.0"
+ string-width: "npm:^5.0.1"
+ strip-ansi: "npm:^7.0.1"
+ checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60
+ languageName: node
+ linkType: hard
+
+"wrappy@npm:1":
+ version: 1.0.2
+ resolution: "wrappy@npm:1.0.2"
+ checksum: 10c0/56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0
+ languageName: node
+ linkType: hard
+
+"write-file-atomic@npm:^2.3.0":
+ version: 2.4.3
+ resolution: "write-file-atomic@npm:2.4.3"
+ dependencies:
+ graceful-fs: "npm:^4.1.11"
+ imurmurhash: "npm:^0.1.4"
+ signal-exit: "npm:^3.0.2"
+ checksum: 10c0/8cb4bba0c1ab814a9b127844da0db4fb8c5e06ddbe6317b8b319377c73b283673036c8b9360120062898508b9428d81611cf7fa97584504a00bc179b2a580b92
+ languageName: node
+ linkType: hard
+
+"write-file-atomic@npm:^3.0.3":
+ version: 3.0.3
+ resolution: "write-file-atomic@npm:3.0.3"
+ dependencies:
+ imurmurhash: "npm:^0.1.4"
+ is-typedarray: "npm:^1.0.0"
+ signal-exit: "npm:^3.0.2"
+ typedarray-to-buffer: "npm:^3.1.5"
+ checksum: 10c0/7fb67affd811c7a1221bed0c905c26e28f0041e138fb19ccf02db57a0ef93ea69220959af3906b920f9b0411d1914474cdd90b93a96e5cd9e8368d9777caac0e
+ languageName: node
+ linkType: hard
+
+"write-file-atomic@npm:^4.0.2":
+ version: 4.0.2
+ resolution: "write-file-atomic@npm:4.0.2"
+ dependencies:
+ imurmurhash: "npm:^0.1.4"
+ signal-exit: "npm:^3.0.7"
+ checksum: 10c0/a2c282c95ef5d8e1c27b335ae897b5eca00e85590d92a3fd69a437919b7b93ff36a69ea04145da55829d2164e724bc62202cdb5f4b208b425aba0807889375c7
+ languageName: node
+ linkType: hard
+
+"ws@npm:^6.2.3":
+ version: 6.2.3
+ resolution: "ws@npm:6.2.3"
+ dependencies:
+ async-limiter: "npm:~1.0.0"
+ checksum: 10c0/56a35b9799993cea7ce2260197e7879f21bbbb194a967f31acbbda6f7f46ecda4365951966fb062044c95197e19fb2f053be6f65c172435455186835f494de41
+ languageName: node
+ linkType: hard
+
+"ws@npm:^7, ws@npm:^7.5.10":
+ version: 7.5.10
+ resolution: "ws@npm:7.5.10"
+ peerDependencies:
+ bufferutil: ^4.0.1
+ utf-8-validate: ^5.0.2
+ peerDependenciesMeta:
+ bufferutil:
+ optional: true
+ utf-8-validate:
+ optional: true
+ checksum: 10c0/bd7d5f4aaf04fae7960c23dcb6c6375d525e00f795dd20b9385902bd008c40a94d3db3ce97d878acc7573df852056ca546328b27b39f47609f80fb22a0a9b61d
+ languageName: node
+ linkType: hard
+
+"xdg-basedir@npm:^5.0.1, xdg-basedir@npm:^5.1.0":
+ version: 5.1.0
+ resolution: "xdg-basedir@npm:5.1.0"
+ checksum: 10c0/c88efabc71ffd996ba9ad8923a8cc1c7c020a03e2c59f0ffa72e06be9e724ad2a0fccef488757bc6ed3d8849d753dd25082d1035d95cb179e79eae4d034d0b80
+ languageName: node
+ linkType: hard
+
+"xtend@npm:~4.0.1":
+ version: 4.0.2
+ resolution: "xtend@npm:4.0.2"
+ checksum: 10c0/366ae4783eec6100f8a02dff02ac907bf29f9a00b82ac0264b4d8b832ead18306797e283cf19de776538babfdcb2101375ec5646b59f08c52128ac4ab812ed0e
+ languageName: node
+ linkType: hard
+
+"y18n@npm:^5.0.5":
+ version: 5.0.8
+ resolution: "y18n@npm:5.0.8"
+ checksum: 10c0/4df2842c36e468590c3691c894bc9cdbac41f520566e76e24f59401ba7d8b4811eb1e34524d57e54bc6d864bcb66baab7ffd9ca42bf1eda596618f9162b91249
+ languageName: node
+ linkType: hard
+
+"yallist@npm:^3.0.2":
+ version: 3.1.1
+ resolution: "yallist@npm:3.1.1"
+ checksum: 10c0/c66a5c46bc89af1625476f7f0f2ec3653c1a1791d2f9407cfb4c2ba812a1e1c9941416d71ba9719876530e3340a99925f697142989371b72d93b9ee628afd8c1
+ languageName: node
+ linkType: hard
+
+"yallist@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "yallist@npm:4.0.0"
+ checksum: 10c0/2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a
+ languageName: node
+ linkType: hard
+
+"yallist@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "yallist@npm:5.0.0"
+ checksum: 10c0/a499c81ce6d4a1d260d4ea0f6d49ab4da09681e32c3f0472dee16667ed69d01dae63a3b81745a24bd78476ec4fcf856114cb4896ace738e01da34b2c42235416
+ languageName: node
+ linkType: hard
+
+"yargs-parser@npm:21.1.1, yargs-parser@npm:^21.1.1":
+ version: 21.1.1
+ resolution: "yargs-parser@npm:21.1.1"
+ checksum: 10c0/f84b5e48169479d2f402239c59f084cfd1c3acc197a05c59b98bab067452e6b3ea46d4dd8ba2985ba7b3d32a343d77df0debd6b343e5dae3da2aab2cdf5886b2
+ languageName: node
+ linkType: hard
+
+"yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3":
+ version: 20.2.9
+ resolution: "yargs-parser@npm:20.2.9"
+ checksum: 10c0/0685a8e58bbfb57fab6aefe03c6da904a59769bd803a722bb098bd5b0f29d274a1357762c7258fb487512811b8063fb5d2824a3415a0a4540598335b3b086c72
+ languageName: node
+ linkType: hard
+
+"yargs@npm:^16.2.0":
+ version: 16.2.0
+ resolution: "yargs@npm:16.2.0"
+ dependencies:
+ cliui: "npm:^7.0.2"
+ escalade: "npm:^3.1.1"
+ get-caller-file: "npm:^2.0.5"
+ require-directory: "npm:^2.1.1"
+ string-width: "npm:^4.2.0"
+ y18n: "npm:^5.0.5"
+ yargs-parser: "npm:^20.2.2"
+ checksum: 10c0/b1dbfefa679848442454b60053a6c95d62f2d2e21dd28def92b647587f415969173c6e99a0f3bab4f1b67ee8283bf735ebe3544013f09491186ba9e8a9a2b651
+ languageName: node
+ linkType: hard
+
+"yargs@npm:^17.0.0, yargs@npm:^17.3.1, yargs@npm:^17.5.1, yargs@npm:^17.6.2":
+ version: 17.7.2
+ resolution: "yargs@npm:17.7.2"
+ dependencies:
+ cliui: "npm:^8.0.1"
+ escalade: "npm:^3.1.1"
+ get-caller-file: "npm:^2.0.5"
+ require-directory: "npm:^2.1.1"
+ string-width: "npm:^4.2.3"
+ y18n: "npm:^5.0.5"
+ yargs-parser: "npm:^21.1.1"
+ checksum: 10c0/ccd7e723e61ad5965fffbb791366db689572b80cca80e0f96aad968dfff4156cd7cd1ad18607afe1046d8241e6fb2d6c08bf7fa7bfb5eaec818735d8feac8f05
+ languageName: node
+ linkType: hard
+
+"yn@npm:3.1.1":
+ version: 3.1.1
+ resolution: "yn@npm:3.1.1"
+ checksum: 10c0/0732468dd7622ed8a274f640f191f3eaf1f39d5349a1b72836df484998d7d9807fbea094e2f5486d6b0cd2414aad5775972df0e68f8604db89a239f0f4bf7443
+ languageName: node
+ linkType: hard
+
+"yocto-queue@npm:^0.1.0":
+ version: 0.1.0
+ resolution: "yocto-queue@npm:0.1.0"
+ checksum: 10c0/dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f
+ languageName: node
+ linkType: hard