From 5e125c2080b4e6ce0e8a4b7f85735ccdb3068573 Mon Sep 17 00:00:00 2001 From: JoseLion Date: Sat, 27 Jan 2024 15:50:05 -0500 Subject: [PATCH] feat(core): Mock React Native --- .gitignore | 1 + package.json | 36 +- register.js | 8 + src/helpers/commons.ts | 44 + src/helpers/mockComponent.ts | 66 + src/helpers/mockModal.tsx | 23 + src/helpers/mockNativeComponent.ts | 27 + src/helpers/mockNativeMethods.ts | 10 + src/lib/Components/AccessibilityInfo.ts | 18 + src/lib/Components/ActivityIndicator.ts | 5 + src/lib/Components/AppState.ts | 9 + src/lib/Components/Clipboard.ts | 6 + src/lib/Components/Image.ts | 16 + src/lib/Components/Linking.ts | 10 + src/lib/Components/Modal.ts | 8 + src/lib/Components/RefreshControl.ts | 17 + src/lib/Components/ScrollView.ts | 38 + src/lib/Components/Text.ts | 6 + src/lib/Components/TextInput.ts | 12 + src/lib/Components/Vibration.ts | 6 + src/lib/Components/View.ts | 6 + src/lib/Components/ViewNativeComponent.ts | 18 + src/lib/Core/NativeComponentRegistry.ts | 11 + src/lib/Core/NativeModules.ts | 134 ++ src/lib/Core/UIManager.ts | 54 + .../verifyComponentAttributeEquivalence.ts | 7 + src/lib/babelRegister.ts | 27 + src/lib/coreMocks.ts | 19 + src/lib/polyfills.ts | 44 + src/main.ts | 34 + test/unit/main.test.ts | 3 - test/unit/main.test.tsx | 20 + tsconfig.json | 3 +- yarn.lock | 1315 ++++++++++------- 34 files changed, 1485 insertions(+), 576 deletions(-) create mode 100644 register.js create mode 100644 src/helpers/commons.ts create mode 100644 src/helpers/mockComponent.ts create mode 100644 src/helpers/mockModal.tsx create mode 100644 src/helpers/mockNativeComponent.ts create mode 100644 src/helpers/mockNativeMethods.ts create mode 100644 src/lib/Components/AccessibilityInfo.ts create mode 100644 src/lib/Components/ActivityIndicator.ts create mode 100644 src/lib/Components/AppState.ts create mode 100644 src/lib/Components/Clipboard.ts create mode 100644 src/lib/Components/Image.ts create mode 100644 src/lib/Components/Linking.ts create mode 100644 src/lib/Components/Modal.ts create mode 100644 src/lib/Components/RefreshControl.ts create mode 100644 src/lib/Components/ScrollView.ts create mode 100644 src/lib/Components/Text.ts create mode 100644 src/lib/Components/TextInput.ts create mode 100644 src/lib/Components/Vibration.ts create mode 100644 src/lib/Components/View.ts create mode 100644 src/lib/Components/ViewNativeComponent.ts create mode 100644 src/lib/Core/NativeComponentRegistry.ts create mode 100644 src/lib/Core/NativeModules.ts create mode 100644 src/lib/Core/UIManager.ts create mode 100644 src/lib/Core/verifyComponentAttributeEquivalence.ts create mode 100644 src/lib/babelRegister.ts create mode 100644 src/lib/coreMocks.ts create mode 100644 src/lib/polyfills.ts delete mode 100644 test/unit/main.test.ts create mode 100644 test/unit/main.test.tsx diff --git a/.gitignore b/.gitignore index 76fe9aa..0289eab 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ node_modules/ # Generated build/ dist/ +*.tgz # VSCode .vscode/ diff --git a/package.json b/package.json index 30e674c..9a4e2a2 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,11 @@ "engines": { "node": ">=18" }, + "files": [ + "dist/", + "src/", + "register.js" + ], "scripts": { "build": "tsc -p tsconfig.prod.json", "check": "yarn compile && yarn lint && yarn test", @@ -25,28 +30,41 @@ "test": "NODE_ENV=test mocha" }, "packageManager": "yarn@4.0.2", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/preset-react": "^7.23.3", + "@babel/register": "^7.23.7", + "@react-native/babel-preset": "^0.73.20", + "babel-plugin-module-resolver": "^5.0.0", + "dot-prop-immutable": "^2.1.1" + }, "devDependencies": { "@assertive-ts/core": "^2.0.0", - "@types/eslint": "^8", + "@testing-library/react-native": "^12.4.3", + "@types/babel__core": "^7.20.5", + "@types/babel__register": "^7.17.3", + "@types/eslint": "^8.56.2", "@types/mocha": "^10.0.6", - "@types/node": "^20.10.6", - "@types/react": "^18", - "@types/sinon": "^17.0.2", - "@typescript-eslint/eslint-plugin": "^6.17.0", - "@typescript-eslint/parser": "^6.17.0", + "@types/node": "^20.11.7", + "@types/react": "^18.2.48", + "@types/react-test-renderer": "^18.0.7", + "@types/sinon": "^17.0.3", + "@typescript-eslint/eslint-plugin": "^6.19.1", + "@typescript-eslint/parser": "^6.19.1", "eslint": "^8.56.0", "eslint-import-resolver-typescript": "^3.6.1", "eslint-plugin-etc": "^2.0.3", "eslint-plugin-import": "^2.29.1", - "eslint-plugin-jsdoc": "^47.0.2", + "eslint-plugin-jsdoc": "^48.0.4", "eslint-plugin-sonarjs": "^0.23.0", "mocha": "^10.2.0", "react": "18.2.0", - "react-native": "^0.73.1", + "react-native": "^0.73.2", + "react-test-renderer": "^18.2.0", "sinon": "^17.0.1", "ts-node": "^10.9.2", "tslib": "^2.6.2", - "typedoc": "^0.25.6", + "typedoc": "^0.25.7", "typedoc-plugin-markdown": "^3.17.1", "typedoc-plugin-merge-modules": "^5.1.0", "typescript": "^5.3.3" diff --git a/register.js b/register.js new file mode 100644 index 0000000..e1bdfa0 --- /dev/null +++ b/register.js @@ -0,0 +1,8 @@ +const start = Date.now(); +require("./dist/main"); + +const end = Date.now(); +const diff = (end - start) / 1000; + +// eslint-disable-next-line no-console +console.info(`React Native testing mocks registered! (${diff}s)`); diff --git a/src/helpers/commons.ts b/src/helpers/commons.ts new file mode 100644 index 0000000..c75180c --- /dev/null +++ b/src/helpers/commons.ts @@ -0,0 +1,44 @@ +/* eslint-disable @typescript-eslint/no-var-requires */ +import path from "path"; + +/** + * A simple no-operation function + */ +export function noop(): void { + // do nothing... +} + +/** + * Replaces a module with a given `exports` value or another module path. + * + * @param modulePath the path to the module + * @param other the exports to replace or another module path + */ +export function replace(modulePath: string, other: T | string): void { + const exports = typeof other === "string" + ? require(other) as T + : other; + const id = resolveId(modulePath); + + require.cache[id] = { + children: [], + exports, + filename: id, + id, + isPreloading: false, + loaded: true, + parent: require.main, + path: path.dirname(id), + paths: [], + require, + }; +} + +function resolveId(modulePath: string): string { + try { + return require.resolve(modulePath); + } catch (error) { + const hastePath = require.resolve(`${modulePath}.ios`); + return hastePath.slice(0, -4); + } +} diff --git a/src/helpers/mockComponent.ts b/src/helpers/mockComponent.ts new file mode 100644 index 0000000..6f2b40e --- /dev/null +++ b/src/helpers/mockComponent.ts @@ -0,0 +1,66 @@ +import { get } from "dot-prop-immutable"; +import { + Component, + ComponentClass, + PropsWithChildren, + ReactNode, + createElement, +} from "react"; + +export function mockComponent>>( + RealComponent: C, + instanceMethods?: object | null, +): C { + const SuperClass: ComponentClass> = typeof RealComponent === "function" + ? RealComponent + : Component; + const name = RealComponent.displayName + || RealComponent.name + || get(RealComponent, "render.displayName", "") + || get(RealComponent, "render.name", "") + || "Unknown"; + const nameWithoutPrefix = name.replace(/^(RCT|RK)/, ""); + + class Mock extends SuperClass { + + public static displayName = "Component"; + + public render(): ReactNode { + const props = { ...RealComponent.defaultProps }; + + if (this.props) { + Object.keys(this.props).forEach(key => { + // We can't just assign props on top of defaultProps + // because React treats undefined as special and different from null. + // If a prop is specified but set to undefined it is ignored and the + // default prop is used instead. If it is set to null, then the + // null value overwrites the default value. + + const prop: unknown = get(this.props, key); + + if (prop !== undefined) { + Object.assign(props, { [key]: prop }); + } + }); + } + + return createElement(nameWithoutPrefix, props, this.props.children); + } + } + + Mock.displayName = nameWithoutPrefix; + + Object.keys(RealComponent).forEach(key => { + const staticProp: unknown = get(RealComponent, key); + + if (staticProp !== undefined) { + Object.assign(Mock, { [key]: staticProp }); + } + }); + + if (instanceMethods) { + Object.assign(Component.prototype, instanceMethods); + } + + return Mock as unknown as C; +} diff --git a/src/helpers/mockModal.tsx b/src/helpers/mockModal.tsx new file mode 100644 index 0000000..d161400 --- /dev/null +++ b/src/helpers/mockModal.tsx @@ -0,0 +1,23 @@ +import { get } from "dot-prop-immutable"; +import { Component, ComponentClass, PropsWithChildren, ReactNode } from "react"; + +export function mockModal>(Base: C): C { + const BaseComponent = Base as ComponentClass>; + + class Mock extends BaseComponent { + + public render(): ReactNode { + if (get(this.props, "visible") === false) { + return null; + } + + return ( + + {this.props.children} + + ); + } + } + + return Mock as C; +} diff --git a/src/helpers/mockNativeComponent.ts b/src/helpers/mockNativeComponent.ts new file mode 100644 index 0000000..b0be6ff --- /dev/null +++ b/src/helpers/mockNativeComponent.ts @@ -0,0 +1,27 @@ +import { Component, ComponentClass, PropsWithChildren, ReactNode, createElement } from "react"; + +const native = { tag: 1 }; + +export function mockNativeComponent(viewName: string): ComponentClass { + return class extends Component> { + + public static displayName = viewName === "RCTView" ? "View" : viewName; + + protected _nativeTag = native.tag++; + + public constructor(props: PropsWithChildren) { + super(props); + } + + public render(): ReactNode { + return createElement(viewName, this.props, this.props.children); + } + + public blur(): void { /* noop */ } + public focus(): void { /* noop */ } + public measure(): void { /* noop */ } + public measureInWindow(): void { /* noop */ } + public measureLayout(): void { /* noop */ } + public setNativeProps(): void { /* noop */ } + }; +} diff --git a/src/helpers/mockNativeMethods.ts b/src/helpers/mockNativeMethods.ts new file mode 100644 index 0000000..0f68a49 --- /dev/null +++ b/src/helpers/mockNativeMethods.ts @@ -0,0 +1,10 @@ +import { noop } from "./commons"; + +export const MockNativeMethods = { + blur: noop, + focus: noop, + measure: noop, + measureInWindow: noop, + measureLayout: noop, + setNativeProps: noop, +}; diff --git a/src/lib/Components/AccessibilityInfo.ts b/src/lib/Components/AccessibilityInfo.ts new file mode 100644 index 0000000..db63d0d --- /dev/null +++ b/src/lib/Components/AccessibilityInfo.ts @@ -0,0 +1,18 @@ +/* eslint-disable sort-keys */ +import { noop } from "../../helpers/commons"; + +export const AccessibilityInfoMock = { + addEventListener: noop, + announceForAccessibility: noop, + isAccessibilityServiceEnabled: noop, + isBoldTextEnabled: noop, + isGrayscaleEnabled: noop, + isInvertColorsEnabled: noop, + isReduceMotionEnabled: noop, + prefersCrossFadeTransitions: noop, + isReduceTransparencyEnabled: noop, + isScreenReaderEnabled: (): Promise => Promise.resolve(false), + setAccessibilityFocus: noop, + sendAccessibilityEvent: noop, + getRecommendedTimeoutMillis: noop, +}; diff --git a/src/lib/Components/ActivityIndicator.ts b/src/lib/Components/ActivityIndicator.ts new file mode 100644 index 0000000..8463563 --- /dev/null +++ b/src/lib/Components/ActivityIndicator.ts @@ -0,0 +1,5 @@ +import { ActivityIndicator } from "react-native"; + +import { mockComponent } from "../../helpers/mockComponent"; + +export const ActivityIndicatorMock = mockComponent(ActivityIndicator, null); diff --git a/src/lib/Components/AppState.ts b/src/lib/Components/AppState.ts new file mode 100644 index 0000000..c0adc4d --- /dev/null +++ b/src/lib/Components/AppState.ts @@ -0,0 +1,9 @@ +import { NativeEventSubscription } from "react-native"; + +import { noop } from "../../helpers/commons"; + +export const AppStateMock = { + addEventListener: (): NativeEventSubscription => ({ remove: noop }), + currentState: noop, + removeEventListener: noop, +}; diff --git a/src/lib/Components/Clipboard.ts b/src/lib/Components/Clipboard.ts new file mode 100644 index 0000000..3c441cd --- /dev/null +++ b/src/lib/Components/Clipboard.ts @@ -0,0 +1,6 @@ +import { noop } from "../../helpers/commons"; + +export const ClipboardMock = { + getString: (): string => "", + setString: noop, +}; diff --git a/src/lib/Components/Image.ts b/src/lib/Components/Image.ts new file mode 100644 index 0000000..53d14e4 --- /dev/null +++ b/src/lib/Components/Image.ts @@ -0,0 +1,16 @@ +import { ComponentClass } from "react"; +import { Image } from "react-native"; + +import { noop } from "../../helpers/commons"; +import { mockComponent } from "../../helpers/mockComponent"; + +const Mock = mockComponent(Image as ComponentClass); + +export const ImageMock = Object.assign(Mock, { + getSize: noop, + getSizeWithHeaders: noop, + prefetch: noop, + prefetchWithMetadata: noop, + queryCache: noop, + resolveAssetSource: noop, +}); diff --git a/src/lib/Components/Linking.ts b/src/lib/Components/Linking.ts new file mode 100644 index 0000000..85df0b2 --- /dev/null +++ b/src/lib/Components/Linking.ts @@ -0,0 +1,10 @@ +import { noop } from "../../helpers/commons"; + +export const LinkingMock = { + addEventListener: noop, + canOpenURL: (): Promise => Promise.resolve(true), + getInitialURL: (): Promise => Promise.resolve(), + openSettings: noop, + openURL: noop, + sendIntent: noop, +}; diff --git a/src/lib/Components/Modal.ts b/src/lib/Components/Modal.ts new file mode 100644 index 0000000..3a7db67 --- /dev/null +++ b/src/lib/Components/Modal.ts @@ -0,0 +1,8 @@ +import { Modal } from "react-native"; + +import { mockComponent } from "../../helpers/mockComponent"; +import { mockModal } from "../../helpers/mockModal"; + +const BaseMock = mockComponent(Modal); + +export const ModalMock = mockModal(BaseMock); diff --git a/src/lib/Components/RefreshControl.ts b/src/lib/Components/RefreshControl.ts new file mode 100644 index 0000000..30c74e7 --- /dev/null +++ b/src/lib/Components/RefreshControl.ts @@ -0,0 +1,17 @@ +import { Component, ReactNode, createElement } from "react"; +import { requireNativeComponent } from "react-native"; + +const RCTRefreshControl = requireNativeComponent("RCTRefreshControl"); + +export class RefreshControlMock extends Component { + + public static latestRef?: RefreshControlMock; + + public componentDidMount(): void { + RefreshControlMock.latestRef = this; + } + + public render(): ReactNode { + return createElement(RCTRefreshControl); + } +} diff --git a/src/lib/Components/ScrollView.ts b/src/lib/Components/ScrollView.ts new file mode 100644 index 0000000..8c4b595 --- /dev/null +++ b/src/lib/Components/ScrollView.ts @@ -0,0 +1,38 @@ +/* eslint-disable sort-keys */ +import { PropsWithChildren, ReactNode, createElement } from "react"; +import { ScrollView, View, requireNativeComponent } from "react-native"; + +import { noop } from "../../helpers/commons"; +import { mockComponent } from "../../helpers/mockComponent"; +import { MockNativeMethods } from "../../helpers/mockNativeMethods"; + +const RCTScrollView = requireNativeComponent("RCTScrollView"); +const BaseMock = mockComponent(ScrollView, { + ...MockNativeMethods, + getScrollResponder: noop, + getScrollableNode: noop, + getInnerViewNode: noop, + getInnerViewRef: noop, + getNativeScrollRef: noop, + scrollTo: noop, + scrollToEnd: noop, + flashScrollIndicators: noop, + scrollResponderZoomTo: noop, + scrollResponderScrollNativeHandleToKeyboard: noop, +}); + +export class ScrollViewMock

extends BaseMock { + + public constructor(props: PropsWithChildren

) { + super(props); + } + + public render(): ReactNode { + return createElement( + RCTScrollView, + this.props as object, + this.props.refreshControl, + createElement(mockComponent(View), {}, this.props.children), + ); + } +} diff --git a/src/lib/Components/Text.ts b/src/lib/Components/Text.ts new file mode 100644 index 0000000..2aaa993 --- /dev/null +++ b/src/lib/Components/Text.ts @@ -0,0 +1,6 @@ +import { Text } from "react-native"; + +import { mockComponent } from "../../helpers/mockComponent"; +import { MockNativeMethods } from "../../helpers/mockNativeMethods"; + +export const TextMock = mockComponent(Text, MockNativeMethods); diff --git a/src/lib/Components/TextInput.ts b/src/lib/Components/TextInput.ts new file mode 100644 index 0000000..1ebba3e --- /dev/null +++ b/src/lib/Components/TextInput.ts @@ -0,0 +1,12 @@ +import { TextInput } from "react-native"; + +import { noop } from "../../helpers/commons"; +import { mockComponent } from "../../helpers/mockComponent"; +import { MockNativeMethods } from "../../helpers/mockNativeMethods"; + +export const TextInputMock = mockComponent(TextInput, { + ...MockNativeMethods, + clear: noop, + getNativeRef: noop, + isFocused: noop, +}); diff --git a/src/lib/Components/Vibration.ts b/src/lib/Components/Vibration.ts new file mode 100644 index 0000000..1cb8c71 --- /dev/null +++ b/src/lib/Components/Vibration.ts @@ -0,0 +1,6 @@ +import { noop } from "../../helpers/commons"; + +export const VibrationMock = { + cancel: noop, + vibrate: noop, +}; diff --git a/src/lib/Components/View.ts b/src/lib/Components/View.ts new file mode 100644 index 0000000..069ade7 --- /dev/null +++ b/src/lib/Components/View.ts @@ -0,0 +1,6 @@ +import { View } from "react-native"; + +import { mockComponent } from "../../helpers/mockComponent"; +import { MockNativeMethods } from "../../helpers/mockNativeMethods"; + +export const ViewMock = mockComponent(View, MockNativeMethods); diff --git a/src/lib/Components/ViewNativeComponent.ts b/src/lib/Components/ViewNativeComponent.ts new file mode 100644 index 0000000..b443fa5 --- /dev/null +++ b/src/lib/Components/ViewNativeComponent.ts @@ -0,0 +1,18 @@ +import { Component, PropsWithChildren, ReactNode, createElement } from "react"; + +class Mock extends Component { + + public static displayName = "View"; + + public constructor(props: PropsWithChildren) { + super(props); + } + + public render(): ReactNode { + return createElement("View", this.props, this.props.children); + } +} + +export const ViewNativeComponentMock = { + default: Mock, +}; diff --git a/src/lib/Core/NativeComponentRegistry.ts b/src/lib/Core/NativeComponentRegistry.ts new file mode 100644 index 0000000..351167a --- /dev/null +++ b/src/lib/Core/NativeComponentRegistry.ts @@ -0,0 +1,11 @@ +/* eslint-disable camelcase */ +import { ComponentClass } from "react"; + +import { noop } from "../../helpers/commons"; +import { mockNativeComponent } from "../../helpers/mockNativeComponent"; + +export const NativeComponentRegistryMock = { + get: (name: string): ComponentClass => mockNativeComponent(name), + getWithFallback_DEPRECATED: (name: string): ComponentClass => mockNativeComponent(name), + setRuntimeConfigProvider: noop, +}; diff --git a/src/lib/Core/NativeModules.ts b/src/lib/Core/NativeModules.ts new file mode 100644 index 0000000..a3a19d0 --- /dev/null +++ b/src/lib/Core/NativeModules.ts @@ -0,0 +1,134 @@ +/* eslint-disable sort-keys */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +import { noop } from "../../helpers/commons"; + +type CB = (...args: unknown[]) => unknown; + +export const NativeModulesMock = { + AlertManager: { + alertWithArgs: noop, + }, + AsyncLocalStorage: { + multiGet: (_keys: string, callback: CB) => process.nextTick(() => callback(null, [])), + multiSet: (_entries: [], callback: CB) => process.nextTick(() => callback(null)), + multiRemove: (_keys: string, callback: CB) => process.nextTick(() => callback(null)), + multiMerge: (_entries: [], callback: CB) => process.nextTick(() => callback(null)), + clear: (callback: CB) => process.nextTick(() => callback(null)), + getAllKeys: (callback: CB) => process.nextTick(() => callback(null, [])), + }, + DeviceInfo: { + getConstants() { + return { + Dimensions: { + window: { + fontScale: 2, + height: 1334, + scale: 2, + width: 750, + }, + screen: { + fontScale: 2, + height: 1334, + scale: 2, + width: 750, + }, + }, + }; + }, + }, + DevSettings: { + addMenuItem: noop, + reload: noop, + }, + ImageLoader: { + getSize: () => Promise.resolve([320, 240]), + prefetchImage: noop, + }, + ImageViewManager: { + getSize: (_uri: string, success: CB) => process.nextTick(() => success(320, 240)), + prefetchImage: noop, + }, + KeyboardObserver: { + addListener: noop, + removeListeners: noop, + }, + Networking: { + sendRequest: noop, + abortRequest: noop, + addListener: noop, + removeListeners: noop, + }, + PlatformConstants: { + getConstants() { + return {}; + }, + }, + PushNotificationManager: { + presentLocalNotification: noop, + scheduleLocalNotification: noop, + cancelAllLocalNotifications: noop, + removeAllDeliveredNotifications: noop, + getDeliveredNotifications: () => process.nextTick(() => []), + removeDeliveredNotifications: noop, + setApplicationIconBadgeNumber: noop, + getApplicationIconBadgeNumber: (callback: CB) => process.nextTick(() => callback(0)), + cancelLocalNotifications: noop, + getScheduledLocalNotifications: (callback: CB) => process.nextTick(() => callback()), + requestPermissions: () => Promise.resolve({ alert: true, badge: true, sound: true }), + abandonPermissions: noop, + checkPermissions: (callback: CB) => process.nextTick(() => callback({ alert: true, badge: true, sound: true })), + getInitialNotification: () => Promise.resolve(null), + addListener: noop, + removeListeners: noop, + }, + SourceCode: { + getConstants() { + return { + scriptURL: null, + }; + }, + }, + StatusBarManager: { + setColor: noop, + setStyle: noop, + setHidden: noop, + setNetworkActivityIndicatorVisible: noop, + setBackgroundColor: noop, + setTranslucent: noop, + getConstants: () => ({ + HEIGHT: 42, + }), + }, + Timing: { + createTimer: noop, + deleteTimer: noop, + }, + UIManager: {}, + BlobModule: { + getConstants: () => ({ BLOB_URI_SCHEME: "content", BLOB_URI_HOST: null }), + addNetworkingHandler: noop, + enableBlobSupport: noop, + disableBlobSupport: noop, + createFromParts: noop, + sendBlob: noop, + release: noop, + }, + WebSocketModule: { + connect: noop, + send: noop, + sendBinary: noop, + ping: noop, + close: noop, + addListener: noop, + removeListeners: noop, + }, + I18nManager: { + allowRTL: noop, + forceRTL: noop, + swapLeftAndRightInRTL: noop, + getConstants: () => ({ + isRTL: false, + doLeftAndRightSwapInRTL: true, + }), + }, +}; diff --git a/src/lib/Core/UIManager.ts b/src/lib/Core/UIManager.ts new file mode 100644 index 0000000..7309ec8 --- /dev/null +++ b/src/lib/Core/UIManager.ts @@ -0,0 +1,54 @@ +/* eslint-disable sort-keys */ +import { noop } from "../../helpers/commons"; + +export const UIManagerMock = { + AndroidViewPager: { + Commands: { + setPage: noop, + setPageWithoutAnimation: noop, + }, + }, + blur: noop, + createView: noop, + customBubblingEventTypes: {}, + customDirectEventTypes: {}, + dispatchViewManagerCommand: noop, + focus: noop, + getViewManagerConfig: (name: string): unknown => { + if (name === "AndroidDrawerLayout") { + return { + Constants: { + DrawerPosition: { + Left: 10, + }, + }, + }; + } + return undefined; + }, + hasViewManagerConfig: (name: string): boolean => { + return name === "AndroidDrawerLayout"; + }, + measure: noop, + manageChildren: noop, + removeSubviewsFromContainerWithID: noop, + replaceExistingNonRootView: noop, + setChildren: noop, + updateView: noop, + AndroidDrawerLayout: { + Constants: { + DrawerPosition: { + Left: 10, + }, + }, + }, + AndroidTextInput: { + Commands: { }, + }, + ScrollView: { + Constants: { }, + }, + View: { + Constants: { }, + }, +}; diff --git a/src/lib/Core/verifyComponentAttributeEquivalence.ts b/src/lib/Core/verifyComponentAttributeEquivalence.ts new file mode 100644 index 0000000..61c7eca --- /dev/null +++ b/src/lib/Core/verifyComponentAttributeEquivalence.ts @@ -0,0 +1,7 @@ +import { noop } from "../../helpers/commons"; + +export const verifyComponentAttrEqMock = { + default: noop, + getConfigWithoutViewProps: noop, + stringifyViewConfig: noop, +}; diff --git a/src/lib/babelRegister.ts b/src/lib/babelRegister.ts new file mode 100644 index 0000000..579ba84 --- /dev/null +++ b/src/lib/babelRegister.ts @@ -0,0 +1,27 @@ +import register from "@babel/register"; + +register({ + cache: true, + only: [/node_modules[/\\](react-native|@react-native).*/], + plugins: [ + ["module-resolver", { + resolvePath(sourcePath: string) { + if (sourcePath.startsWith(".")) { + const hastePaths = [ + "/Image", + "/Platform", + "/PlatformColorValueTypes", + "/BaseViewConfig", + ]; + + return hastePaths.some(path => sourcePath.endsWith(path)) + ? `${sourcePath}.ios` + : undefined; + } + + return undefined; + }, + }], + ], + presets: ["module:@react-native/babel-preset"], +}); diff --git a/src/lib/coreMocks.ts b/src/lib/coreMocks.ts new file mode 100644 index 0000000..e26c206 --- /dev/null +++ b/src/lib/coreMocks.ts @@ -0,0 +1,19 @@ +import { replace } from "../helpers/commons"; +import { mockNativeComponent } from "../helpers/mockNativeComponent"; + +import { NativeComponentRegistryMock } from "./Core/NativeComponentRegistry"; +import { NativeModulesMock } from "./Core/NativeModules"; +import { UIManagerMock } from "./Core/UIManager"; +import { verifyComponentAttrEqMock } from "./Core/verifyComponentAttributeEquivalence"; + +replace("react-native/Libraries/Core/InitializeCore", { }); +replace("react-native/Libraries/Core/NativeExceptionsManager", { }); +replace("react-native/Libraries/ReactNative/UIManager", UIManagerMock); +replace("react-native/Libraries/BatchedBridge/NativeModules", NativeModulesMock); +replace("react-native/Libraries/NativeComponent/NativeComponentRegistry", NativeComponentRegistryMock); +replace("react-native/Libraries/ReactNative/requireNativeComponent", { default: mockNativeComponent }); +replace("react-native/Libraries/Utilities/verifyComponentAttributeEquivalence", verifyComponentAttrEqMock); +replace( + "react-native/Libraries/ReactNative/RendererProxy", + "react-native/Libraries/ReactNative/RendererImplementation", +); diff --git a/src/lib/polyfills.ts b/src/lib/polyfills.ts new file mode 100644 index 0000000..b3b5442 --- /dev/null +++ b/src/lib/polyfills.ts @@ -0,0 +1,44 @@ +/* eslint-disable @typescript-eslint/no-var-requires */ +import "@react-native/js-polyfills/Object.es8"; +import "@react-native/js-polyfills/error-guard"; + +Object.defineProperties(global, { + __DEV__: { + configurable: true, + enumerable: true, + value: true, + writable: true, + }, + cancelAnimationFrame: { + configurable: true, + enumerable: true, + value: clearTimeout, + writable: true, + }, + performance: { + configurable: true, + enumerable: true, + value: { + now: Date.now, + }, + writable: true, + }, + regeneratorRuntime: { + configurable: true, + enumerable: true, + value: require("regenerator-runtime/runtime") as unknown, + writable: true, + }, + requestAnimationFrame: { + configurable: true, + enumerable: true, + value: (callback: (ms: number) => void) => setTimeout(() => callback(Date.now()), 0), + writable: true, + }, + window: { + configurable: true, + enumerable: true, + value: global, + writable: true, + }, +}); diff --git a/src/main.ts b/src/main.ts index e69de29..334404d 100644 --- a/src/main.ts +++ b/src/main.ts @@ -0,0 +1,34 @@ +import "./lib/babelRegister"; +import "./lib/polyfills"; +import "./lib/coreMocks"; + +import { replace } from "./helpers/commons"; +import { AccessibilityInfoMock } from "./lib/Components/AccessibilityInfo"; +import { ActivityIndicatorMock } from "./lib/Components/ActivityIndicator"; +import { AppStateMock } from "./lib/Components/AppState"; +import { ClipboardMock } from "./lib/Components/Clipboard"; +import { ImageMock } from "./lib/Components/Image"; +import { LinkingMock } from "./lib/Components/Linking"; +import { ModalMock } from "./lib/Components/Modal"; +import { RefreshControlMock } from "./lib/Components/RefreshControl"; +import { ScrollViewMock } from "./lib/Components/ScrollView"; +import { TextMock } from "./lib/Components/Text"; +import { TextInputMock } from "./lib/Components/TextInput"; +import { VibrationMock } from "./lib/Components/Vibration"; +import { ViewMock } from "./lib/Components/View"; +import { ViewNativeComponentMock } from "./lib/Components/ViewNativeComponent"; + +replace("react-native/Libraries/Image/Image", ImageMock); +replace("react-native/Libraries/Text/Text", TextMock); +replace("react-native/Libraries/Components/TextInput/TextInput", TextInputMock); +replace("react-native/Libraries/Modal/Modal", ModalMock); +replace("react-native/Libraries/Components/AccessibilityInfo/AccessibilityInfo", { default: AccessibilityInfoMock }); +replace("react-native/Libraries/Components/Clipboard/Clipboard", ClipboardMock); +replace("react-native/Libraries/Components/RefreshControl/RefreshControl", RefreshControlMock); +replace("react-native/Libraries/Components/ScrollView/ScrollView", ScrollViewMock); +replace("react-native/Libraries/Components/ActivityIndicator/ActivityIndicator", { default: ActivityIndicatorMock }); +replace("react-native/Libraries/AppState/AppState", AppStateMock); +replace("react-native/Libraries/Linking/Linking", LinkingMock); +replace("react-native/Libraries/Vibration/Vibration", VibrationMock); +replace("react-native/Libraries/Components/View/View", ViewMock); +replace("react-native/Libraries/Components/View/ViewNativeComponent", ViewNativeComponentMock); diff --git a/test/unit/main.test.ts b/test/unit/main.test.ts deleted file mode 100644 index 4b5aaca..0000000 --- a/test/unit/main.test.ts +++ /dev/null @@ -1,3 +0,0 @@ -describe("[Unit] main.test.ts", () => { - // ...nothing to test -}); diff --git a/test/unit/main.test.tsx b/test/unit/main.test.tsx new file mode 100644 index 0000000..eecb98d --- /dev/null +++ b/test/unit/main.test.tsx @@ -0,0 +1,20 @@ +import "../../src/main"; + +import { expect } from "@assertive-ts/core"; +import { render } from "@testing-library/react-native"; +import { Text, View } from "react-native"; + +describe("[Unit] main.test.ts", () => { + context("when main is called", () => { + it("mocks react native so it can render on Node.js", () => { + const { getByText } = render( + + {"Hello world!"} + , + ); + + expect(getByText("Hello world!")).toBePresent(); + expect(() => getByText("foo")).toThrowError(); + }); + }); +}); diff --git a/tsconfig.json b/tsconfig.json index 001710d..bbe6606 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -7,6 +7,7 @@ "importHelpers": true, "incremental": true, "lib": ["DOM", "ES2019", "ES2020", "ES2021", "ES2022", "ES2023"], + "jsx": "react-jsx", "module": "CommonJS", "moduleResolution": "Node", "noImplicitReturns": true, @@ -19,7 +20,7 @@ "skipLibCheck": true, "sourceMap": true, "strict": true, - "target": "ES6", + "target": "ES5", "typeRoots" : [ "./node_modules/@types/", "./typings/" diff --git a/yarn.lock b/yarn.lock index 9d8e14f..ff247de 100644 --- a/yarn.lock +++ b/yarn.lock @@ -32,7 +32,7 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.13, @babel/code-frame@npm:^7.23.5": +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.23.5": version: 7.23.5 resolution: "@babel/code-frame@npm:7.23.5" dependencies: @@ -49,26 +49,26 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.13.16, @babel/core@npm:^7.20.0": - version: 7.23.7 - resolution: "@babel/core@npm:7.23.7" +"@babel/core@npm:^7.13.16, @babel/core@npm:^7.20.0, @babel/core@npm:^7.23.9": + version: 7.23.9 + resolution: "@babel/core@npm:7.23.9" dependencies: "@ampproject/remapping": "npm:^2.2.0" "@babel/code-frame": "npm:^7.23.5" "@babel/generator": "npm:^7.23.6" "@babel/helper-compilation-targets": "npm:^7.23.6" "@babel/helper-module-transforms": "npm:^7.23.3" - "@babel/helpers": "npm:^7.23.7" - "@babel/parser": "npm:^7.23.6" - "@babel/template": "npm:^7.22.15" - "@babel/traverse": "npm:^7.23.7" - "@babel/types": "npm:^7.23.6" + "@babel/helpers": "npm:^7.23.9" + "@babel/parser": "npm:^7.23.9" + "@babel/template": "npm:^7.23.9" + "@babel/traverse": "npm:^7.23.9" + "@babel/types": "npm:^7.23.9" 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: 956841695ea801c8b4196d01072e6c1062335960715a6fcfd4009831003b526b00627c78b373ed49b1658c3622c71142f7ff04235fe839cac4a1a25ed51b90aa + checksum: 268cdbb86bef1b8ea5b1300f2f325e56a1740a5051360cb228ffeaa0f80282b6674f3a2b4d6466adb0691183759b88d4c37b4a4f77232c84a49ed771c84cdc27 languageName: node linkType: hard @@ -107,8 +107,8 @@ __metadata: linkType: hard "@babel/helper-create-class-features-plugin@npm:^7.18.6, @babel/helper-create-class-features-plugin@npm:^7.22.15, @babel/helper-create-class-features-plugin@npm:^7.23.6": - version: 7.23.7 - resolution: "@babel/helper-create-class-features-plugin@npm:7.23.7" + version: 7.23.9 + resolution: "@babel/helper-create-class-features-plugin@npm:7.23.9" dependencies: "@babel/helper-annotate-as-pure": "npm:^7.22.5" "@babel/helper-environment-visitor": "npm:^7.22.20" @@ -121,7 +121,7 @@ __metadata: semver: "npm:^6.3.1" peerDependencies: "@babel/core": ^7.0.0 - checksum: c8b3ef58fca399a25f00d703b0fb2ac1d86642d9e3bd7af04df77857641ed08aaca042ffb271ef93771f9272481fd1cf102a9bddfcee407fb126c927deeef6a7 + checksum: 91c8aa8888780bd90aa50f511917cb0953ccd61b2ea4abf61915c1d68d99bb14b472969a8ae5b391d7890759dfc22be79104297be07919c38351714a4ce2fe74 languageName: node linkType: hard @@ -138,9 +138,9 @@ __metadata: languageName: node linkType: hard -"@babel/helper-define-polyfill-provider@npm:^0.4.4": - version: 0.4.4 - resolution: "@babel/helper-define-polyfill-provider@npm:0.4.4" +"@babel/helper-define-polyfill-provider@npm:^0.5.0": + version: 0.5.0 + resolution: "@babel/helper-define-polyfill-provider@npm:0.5.0" dependencies: "@babel/helper-compilation-targets": "npm:^7.22.6" "@babel/helper-plugin-utils": "npm:^7.22.5" @@ -149,7 +149,7 @@ __metadata: resolve: "npm:^1.14.2" peerDependencies: "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 16c312e40ecf2ead81f3ab7275387079071012d2363022c04cf16d56fe0d781185f3a517b928f4556c716ae45e0567b817b636d5cd2fee8fb2ce2b18a04c5bcd + checksum: f849e816ec4b182a3e8fa8e09ff016f88bb95259cd6b2190b815c48f83c3d3b68e973a8ec72acc5086bfe93705cbd46ec089c06476421d858597780e42235a03 languageName: node linkType: hard @@ -221,7 +221,7 @@ __metadata: languageName: node linkType: hard -"@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.22.5, @babel/helper-plugin-utils@npm:^7.8.0": +"@babel/helper-plugin-utils@npm:^7.10.4, @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.22.5, @babel/helper-plugin-utils@npm:^7.8.0": version: 7.22.5 resolution: "@babel/helper-plugin-utils@npm:7.22.5" checksum: ab220db218089a2aadd0582f5833fd17fa300245999f5f8784b10f5a75267c4e808592284a29438a0da365e702f05acb369f99e1c915c02f9f9210ec60eab8ea @@ -313,14 +313,14 @@ __metadata: languageName: node linkType: hard -"@babel/helpers@npm:^7.23.7": - version: 7.23.7 - resolution: "@babel/helpers@npm:7.23.7" +"@babel/helpers@npm:^7.23.9": + version: 7.23.9 + resolution: "@babel/helpers@npm:7.23.9" dependencies: - "@babel/template": "npm:^7.22.15" - "@babel/traverse": "npm:^7.23.7" - "@babel/types": "npm:^7.23.6" - checksum: ec07061dc871d406ed82c8757c4d7a510aaf15145799fb0a2c3bd3c72ca101fe82a02dd5f83ca604fbbba5de5408dd731bb1452150562bed4f3b0a2846f81f61 + "@babel/template": "npm:^7.23.9" + "@babel/traverse": "npm:^7.23.9" + "@babel/types": "npm:^7.23.9" + checksum: dd56daac8bbd7ed174bb00fd185926fd449e591d9a00edaceb7ac6edbdd7a8db57e2cb365b4fafda382201752789ced2f7ae010f667eab0f198a4571cda4d2c5 languageName: node linkType: hard @@ -335,12 +335,12 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.13.16, @babel/parser@npm:^7.20.0, @babel/parser@npm:^7.22.15, @babel/parser@npm:^7.23.6": - version: 7.23.6 - resolution: "@babel/parser@npm:7.23.6" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.13.16, @babel/parser@npm:^7.20.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9": + version: 7.23.9 + resolution: "@babel/parser@npm:7.23.9" bin: parser: ./bin/babel-parser.js - checksum: 6be3a63d3c9d07b035b5a79c022327cb7e16cbd530140ecb731f19a650c794c315a72c699a22413ebeafaff14aa8f53435111898d59e01a393d741b85629fa7d + checksum: 727a7a807100f6a26df859e2f009c4ddbd0d3363287b45daa50bd082ccd0d431d0c4d0e610a91f806e04a1918726cd0f5a0592c9b902a815337feed12e1cafd9 languageName: node linkType: hard @@ -358,7 +358,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-class-properties@npm:^7.0.0, @babel/plugin-proposal-class-properties@npm:^7.13.0, @babel/plugin-proposal-class-properties@npm:^7.18.0": +"@babel/plugin-proposal-class-properties@npm:^7.13.0, @babel/plugin-proposal-class-properties@npm:^7.18.0": version: 7.18.6 resolution: "@babel/plugin-proposal-class-properties@npm:7.18.6" dependencies: @@ -406,7 +406,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-object-rest-spread@npm:^7.0.0, @babel/plugin-proposal-object-rest-spread@npm:^7.20.0": +"@babel/plugin-proposal-object-rest-spread@npm:^7.20.0": version: 7.20.7 resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.20.7" dependencies: @@ -457,17 +457,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-class-properties@npm:^7.0.0": - 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: 24f34b196d6342f28d4bad303612d7ff566ab0a013ce89e775d98d6f832969462e7235f3e7eaf17678a533d4be0ba45d3ae34ab4e5a9dcbda5d98d49e5efa2fc - languageName: node - linkType: hard - "@babel/plugin-syntax-dynamic-import@npm:^7.8.0": version: 7.8.3 resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3" @@ -490,7 +479,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-flow@npm:^7.0.0, @babel/plugin-syntax-flow@npm:^7.12.1, @babel/plugin-syntax-flow@npm:^7.18.0, @babel/plugin-syntax-flow@npm:^7.23.3": +"@babel/plugin-syntax-flow@npm:^7.12.1, @babel/plugin-syntax-flow@npm:^7.18.0, @babel/plugin-syntax-flow@npm:^7.23.3": version: 7.23.3 resolution: "@babel/plugin-syntax-flow@npm:7.23.3" dependencies: @@ -501,7 +490,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-jsx@npm:^7.0.0, @babel/plugin-syntax-jsx@npm:^7.23.3": +"@babel/plugin-syntax-jsx@npm:^7.23.3": version: 7.23.3 resolution: "@babel/plugin-syntax-jsx@npm:7.23.3" dependencies: @@ -534,7 +523,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-object-rest-spread@npm:^7.0.0, @babel/plugin-syntax-object-rest-spread@npm:^7.8.3": +"@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: @@ -613,17 +602,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-block-scoped-functions@npm:^7.0.0": - version: 7.23.3 - resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.23.3" - dependencies: - "@babel/helper-plugin-utils": "npm:^7.22.5" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e63b16d94ee5f4d917e669da3db5ea53d1e7e79141a2ec873c1e644678cdafe98daa556d0d359963c827863d6b3665d23d4938a94a4c5053a1619c4ebd01d020 - languageName: node - linkType: hard - "@babel/plugin-transform-block-scoping@npm:^7.0.0": version: 7.23.4 resolution: "@babel/plugin-transform-block-scoping@npm:7.23.4" @@ -636,21 +614,20 @@ __metadata: linkType: hard "@babel/plugin-transform-classes@npm:^7.0.0": - version: 7.23.5 - resolution: "@babel/plugin-transform-classes@npm:7.23.5" + version: 7.23.8 + resolution: "@babel/plugin-transform-classes@npm:7.23.8" dependencies: "@babel/helper-annotate-as-pure": "npm:^7.22.5" - "@babel/helper-compilation-targets": "npm:^7.22.15" + "@babel/helper-compilation-targets": "npm:^7.23.6" "@babel/helper-environment-visitor": "npm:^7.22.20" "@babel/helper-function-name": "npm:^7.23.0" - "@babel/helper-optimise-call-expression": "npm:^7.22.5" "@babel/helper-plugin-utils": "npm:^7.22.5" "@babel/helper-replace-supers": "npm:^7.22.20" "@babel/helper-split-export-declaration": "npm:^7.22.6" globals: "npm:^11.1.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f6c4fed2f48bdd46a4726b829ea2ddb5c9c97edd0e55dc53791d82927daad5725052b7e785a8b7e90a53b0606166b9c554469dc94f10fba59ca9642e997d97ee + checksum: 4bb4b19e7a39871c4414fb44fc5f2cc47c78f993b74c43238dfb99c9dac2d15cb99b43f8a3d42747580e1807d2b8f5e13ce7e95e593fd839bd176aa090bf9a23 languageName: node linkType: hard @@ -666,7 +643,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-destructuring@npm:^7.0.0, @babel/plugin-transform-destructuring@npm:^7.20.0": +"@babel/plugin-transform-destructuring@npm:^7.20.0": version: 7.23.3 resolution: "@babel/plugin-transform-destructuring@npm:7.23.3" dependencies: @@ -677,7 +654,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-flow-strip-types@npm:^7.0.0, @babel/plugin-transform-flow-strip-types@npm:^7.20.0, @babel/plugin-transform-flow-strip-types@npm:^7.23.3": +"@babel/plugin-transform-flow-strip-types@npm:^7.20.0, @babel/plugin-transform-flow-strip-types@npm:^7.23.3": version: 7.23.3 resolution: "@babel/plugin-transform-flow-strip-types@npm:7.23.3" dependencies: @@ -689,18 +666,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-for-of@npm:^7.0.0": - version: 7.23.6 - resolution: "@babel/plugin-transform-for-of@npm:7.23.6" - dependencies: - "@babel/helper-plugin-utils": "npm:^7.22.5" - "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.22.5" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b84ef1f26a2db316237ae6d10fa7c22c70ac808ed0b8e095a8ecf9101551636cbb026bee9fb95a0a7944f3b8278ff9636a9088cb4a4ac5b84830a13829242735 - languageName: node - linkType: hard - "@babel/plugin-transform-function-name@npm:^7.0.0": version: 7.23.3 resolution: "@babel/plugin-transform-function-name@npm:7.23.3" @@ -725,17 +690,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-member-expression-literals@npm:^7.0.0": - version: 7.23.3 - resolution: "@babel/plugin-transform-member-expression-literals@npm:7.23.3" - dependencies: - "@babel/helper-plugin-utils": "npm:^7.22.5" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 95cec13c36d447c5aa6b8e4c778b897eeba66dcb675edef01e0d2afcec9e8cb9726baf4f81b4bbae7a782595aed72e6a0d44ffb773272c3ca180fada99bf92db - languageName: node - linkType: hard - "@babel/plugin-transform-modules-commonjs@npm:^7.0.0, @babel/plugin-transform-modules-commonjs@npm:^7.13.8, @babel/plugin-transform-modules-commonjs@npm:^7.23.3": version: 7.23.3 resolution: "@babel/plugin-transform-modules-commonjs@npm:7.23.3" @@ -761,18 +715,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-object-super@npm:^7.0.0": - version: 7.23.3 - resolution: "@babel/plugin-transform-object-super@npm:7.23.3" - dependencies: - "@babel/helper-plugin-utils": "npm:^7.22.5" - "@babel/helper-replace-supers": "npm:^7.22.20" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e495497186f621fa79026e183b4f1fbb172fd9df812cbd2d7f02c05b08adbe58012b1a6eb6dd58d11a30343f6ec80d0f4074f9b501d70aa1c94df76d59164c53 - languageName: node - linkType: hard - "@babel/plugin-transform-parameters@npm:^7.0.0, @babel/plugin-transform-parameters@npm:^7.20.7": version: 7.23.3 resolution: "@babel/plugin-transform-parameters@npm:7.23.3" @@ -810,25 +752,25 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-property-literals@npm:^7.0.0": +"@babel/plugin-transform-react-display-name@npm:^7.0.0, @babel/plugin-transform-react-display-name@npm:^7.23.3": version: 7.23.3 - resolution: "@babel/plugin-transform-property-literals@npm:7.23.3" + resolution: "@babel/plugin-transform-react-display-name@npm:7.23.3" dependencies: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 16b048c8e87f25095f6d53634ab7912992f78e6997a6ff549edc3cf519db4fca01c7b4e0798530d7f6a05228ceee479251245cdd850a5531c6e6f404104d6cc9 + checksum: 7f86964e8434d3ddbd3c81d2690c9b66dbf1cd8bd9512e2e24500e9fa8cf378bc52c0853270b3b82143aba5965aec04721df7abdb768f952b44f5c6e0b198779 languageName: node linkType: hard -"@babel/plugin-transform-react-display-name@npm:^7.0.0": - version: 7.23.3 - resolution: "@babel/plugin-transform-react-display-name@npm:7.23.3" +"@babel/plugin-transform-react-jsx-development@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/plugin-transform-react-jsx-development@npm:7.22.5" dependencies: - "@babel/helper-plugin-utils": "npm:^7.22.5" + "@babel/plugin-transform-react-jsx": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 7f86964e8434d3ddbd3c81d2690c9b66dbf1cd8bd9512e2e24500e9fa8cf378bc52c0853270b3b82143aba5965aec04721df7abdb768f952b44f5c6e0b198779 + checksum: 36bc3ff0b96bb0ef4723070a50cfdf2e72cfd903a59eba448f9fe92fea47574d6f22efd99364413719e1f3fb3c51b6c9b2990b87af088f8486a84b2a5f9e4560 languageName: node linkType: hard @@ -854,7 +796,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-jsx@npm:^7.0.0": +"@babel/plugin-transform-react-jsx@npm:^7.0.0, @babel/plugin-transform-react-jsx@npm:^7.22.15, @babel/plugin-transform-react-jsx@npm:^7.22.5": version: 7.23.4 resolution: "@babel/plugin-transform-react-jsx@npm:7.23.4" dependencies: @@ -869,19 +811,31 @@ __metadata: languageName: node linkType: hard +"@babel/plugin-transform-react-pure-annotations@npm:^7.23.3": + version: 7.23.3 + resolution: "@babel/plugin-transform-react-pure-annotations@npm:7.23.3" + dependencies: + "@babel/helper-annotate-as-pure": "npm:^7.22.5" + "@babel/helper-plugin-utils": "npm:^7.22.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 9ea3698b1d422561d93c0187ac1ed8f2367e4250b10e259785ead5aa643c265830fd0f4cf5087a5bedbc4007444c06da2f2006686613220acf0949895f453666 + languageName: node + linkType: hard + "@babel/plugin-transform-runtime@npm:^7.0.0": - version: 7.23.7 - resolution: "@babel/plugin-transform-runtime@npm:7.23.7" + version: 7.23.9 + resolution: "@babel/plugin-transform-runtime@npm:7.23.9" dependencies: "@babel/helper-module-imports": "npm:^7.22.15" "@babel/helper-plugin-utils": "npm:^7.22.5" - babel-plugin-polyfill-corejs2: "npm:^0.4.7" - babel-plugin-polyfill-corejs3: "npm:^0.8.7" - babel-plugin-polyfill-regenerator: "npm:^0.5.4" + babel-plugin-polyfill-corejs2: "npm:^0.4.8" + babel-plugin-polyfill-corejs3: "npm:^0.9.0" + babel-plugin-polyfill-regenerator: "npm:^0.5.5" semver: "npm:^6.3.1" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 1e0b21c943e565e6a2a859991059f5b5a8b917689aab9b3beb172babece1843b42f9ae9ff9913f01134fb201fd67ac2831559578949c7287e7c782e6d6740de8 + checksum: d942e5852f100d0de5021c4d1fda9e30c28b94aa846e09588476dd82c058fb6869a30be0cf915362bf23b5f3504aa150ca3c3b0299dbd0a86b3b1f5f744c2333 languageName: node linkType: hard @@ -919,17 +873,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-template-literals@npm:^7.0.0": - version: 7.23.3 - resolution: "@babel/plugin-transform-template-literals@npm:7.23.3" - dependencies: - "@babel/helper-plugin-utils": "npm:^7.22.5" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b16c5cb0b8796be0118e9c144d15bdc0d20a7f3f59009c6303a6e9a8b74c146eceb3f05186f5b97afcba7cfa87e34c1585a22186e3d5b22f2fd3d27d959d92b2 - languageName: node - linkType: hard - "@babel/plugin-transform-typescript@npm:^7.23.3, @babel/plugin-transform-typescript@npm:^7.5.0": version: 7.23.6 resolution: "@babel/plugin-transform-typescript@npm:7.23.6" @@ -969,6 +912,22 @@ __metadata: languageName: node linkType: hard +"@babel/preset-react@npm:^7.23.3": + version: 7.23.3 + resolution: "@babel/preset-react@npm:7.23.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.22.5" + "@babel/helper-validator-option": "npm:^7.22.15" + "@babel/plugin-transform-react-display-name": "npm:^7.23.3" + "@babel/plugin-transform-react-jsx": "npm:^7.22.15" + "@babel/plugin-transform-react-jsx-development": "npm:^7.22.5" + "@babel/plugin-transform-react-pure-annotations": "npm:^7.23.3" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ef6aef131b2f36e2883e9da0d832903643cb3c9ad4f32e04fb3eecae59e4221d583139e8d8f973e25c28d15aafa6b3e60fe9f25c5fd09abd3e2df03b8637bdd2 + languageName: node + linkType: hard + "@babel/preset-typescript@npm:^7.13.0": version: 7.23.3 resolution: "@babel/preset-typescript@npm:7.23.3" @@ -984,7 +943,7 @@ __metadata: languageName: node linkType: hard -"@babel/register@npm:^7.13.16": +"@babel/register@npm:^7.13.16, @babel/register@npm:^7.23.7": version: 7.23.7 resolution: "@babel/register@npm:7.23.7" dependencies: @@ -1007,28 +966,28 @@ __metadata: linkType: hard "@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.7.2": - version: 7.23.7 - resolution: "@babel/runtime@npm:7.23.7" + version: 7.23.9 + resolution: "@babel/runtime@npm:7.23.9" dependencies: regenerator-runtime: "npm:^0.14.0" - checksum: b29cf3ca6277aea8c5c823d9b86e7f7153757f07eaaa81d726f125de00ac0e7451c90845770f919826a94ade8f71a6bda9c0421410dfcc285ee17a40f8f8ca00 + checksum: 9a520fe1bf72249f7dd60ff726434251858de15cccfca7aa831bd19d0d3fb17702e116ead82724659b8da3844977e5e13de2bae01eb8a798f2823a669f122be6 languageName: node linkType: hard -"@babel/template@npm:^7.0.0, @babel/template@npm:^7.22.15": - version: 7.22.15 - resolution: "@babel/template@npm:7.22.15" +"@babel/template@npm:^7.0.0, @babel/template@npm:^7.22.15, @babel/template@npm:^7.23.9": + version: 7.23.9 + resolution: "@babel/template@npm:7.23.9" dependencies: - "@babel/code-frame": "npm:^7.22.13" - "@babel/parser": "npm:^7.22.15" - "@babel/types": "npm:^7.22.15" - checksum: 21e768e4eed4d1da2ce5d30aa51db0f4d6d8700bc1821fec6292587df7bba2fe1a96451230de8c64b989740731888ebf1141138bfffb14cacccf4d05c66ad93f + "@babel/code-frame": "npm:^7.23.5" + "@babel/parser": "npm:^7.23.9" + "@babel/types": "npm:^7.23.9" + checksum: 1b011ba9354dc2e646561d54b6862e0df51760e6179faadd79be05825b0b6da04911e4e192df943f1766748da3037fd8493615b38707f7cadb0cf0c96601c170 languageName: node linkType: hard -"@babel/traverse@npm:^7.20.0, @babel/traverse@npm:^7.23.7": - version: 7.23.7 - resolution: "@babel/traverse@npm:7.23.7" +"@babel/traverse@npm:^7.20.0, @babel/traverse@npm:^7.23.9": + version: 7.23.9 + resolution: "@babel/traverse@npm:7.23.9" dependencies: "@babel/code-frame": "npm:^7.23.5" "@babel/generator": "npm:^7.23.6" @@ -1036,22 +995,22 @@ __metadata: "@babel/helper-function-name": "npm:^7.23.0" "@babel/helper-hoist-variables": "npm:^7.22.5" "@babel/helper-split-export-declaration": "npm:^7.22.6" - "@babel/parser": "npm:^7.23.6" - "@babel/types": "npm:^7.23.6" + "@babel/parser": "npm:^7.23.9" + "@babel/types": "npm:^7.23.9" debug: "npm:^4.3.1" globals: "npm:^11.1.0" - checksum: 3215e59429963c8dac85c26933372cdd322952aa9930e4bc5ef2d0e4bd7a1510d1ecf8f8fd860ace5d4d9fe496d23805a1ea019a86410aee4111de5f63ee84f9 + checksum: e2bb845f7f229feb7c338f7e150f5f1abc5395dcd3a6a47f63a25242ec3ec6b165f04a6df7d4849468547faee34eb3cf52487eb0bd867a7d3c42fec2a648266f languageName: node linkType: hard -"@babel/types@npm:^7.20.0, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.19, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.23.4, @babel/types@npm:^7.23.6, @babel/types@npm:^7.8.3": - version: 7.23.6 - resolution: "@babel/types@npm:7.23.6" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.19, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.23.4, @babel/types@npm:^7.23.6, @babel/types@npm:^7.23.9, @babel/types@npm:^7.8.3": + version: 7.23.9 + resolution: "@babel/types@npm:7.23.9" dependencies: "@babel/helper-string-parser": "npm:^7.23.4" "@babel/helper-validator-identifier": "npm:^7.22.20" to-fast-properties: "npm:^2.0.0" - checksum: 07e70bb94d30b0231396b5e9a7726e6d9227a0a62e0a6830c0bd3232f33b024092e3d5a7d1b096a65bbf2bb43a9ab4c721bf618e115bfbb87b454fa060f88cbf + checksum: bed9634e5fd0f9dc63c84cfa83316c4cb617192db9fedfea464fca743affe93736d7bf2ebf418ee8358751a9d388e303af87a0c050cb5d87d5870c1b0154f6cb languageName: node linkType: hard @@ -1126,14 +1085,14 @@ __metadata: languageName: node linkType: hard -"@hapi/hoek@npm:^9.0.0": +"@hapi/hoek@npm:^9.0.0, @hapi/hoek@npm:^9.3.0": version: 9.3.0 resolution: "@hapi/hoek@npm:9.3.0" checksum: ad83a223787749f3873bce42bd32a9a19673765bf3edece0a427e138859ff729469e68d5fdf9ff6bbee6fb0c8e21bab61415afa4584f527cfc40b59ea1957e70 languageName: node linkType: hard -"@hapi/topo@npm:^5.0.0": +"@hapi/topo@npm:^5.1.0": version: 5.1.0 resolution: "@hapi/topo@npm:5.1.0" dependencies: @@ -1143,13 +1102,13 @@ __metadata: linkType: hard "@humanwhocodes/config-array@npm:^0.11.13": - version: 0.11.13 - resolution: "@humanwhocodes/config-array@npm:0.11.13" + version: 0.11.14 + resolution: "@humanwhocodes/config-array@npm:0.11.14" dependencies: - "@humanwhocodes/object-schema": "npm:^2.0.1" - debug: "npm:^4.1.1" + "@humanwhocodes/object-schema": "npm:^2.0.2" + debug: "npm:^4.3.1" minimatch: "npm:^3.0.5" - checksum: 9f655e1df7efa5a86822cd149ca5cef57240bb8ffd728f0c07cc682cc0a15c6bdce68425fbfd58f9b3e8b16f79b3fd8cb1e96b10c434c9a76f20b2a89f213272 + checksum: 3ffb24ecdfab64014a230e127118d50a1a04d11080cbb748bc21629393d100850496456bbcb4e8c438957fe0934430d731042f1264d6a167b62d32fc2863580a languageName: node linkType: hard @@ -1160,10 +1119,10 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/object-schema@npm:^2.0.1": - version: 2.0.1 - resolution: "@humanwhocodes/object-schema@npm:2.0.1" - checksum: dbddfd0465aecf92ed845ec30d06dba3f7bb2496d544b33b53dac7abc40370c0e46b8787b268d24a366730d5eeb5336ac88967232072a183905ee4abf7df4dab +"@humanwhocodes/object-schema@npm:^2.0.2": + version: 2.0.2 + resolution: "@humanwhocodes/object-schema@npm:2.0.2" + checksum: ef915e3e2f34652f3d383b28a9a99cfea476fa991482370889ab14aac8ecd2b38d47cc21932526c6d949da0daf4a4a6bf629d30f41b0caca25e146819cbfa70e languageName: node linkType: hard @@ -1312,12 +1271,12 @@ __metadata: linkType: hard "@jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.9": - version: 0.3.20 - resolution: "@jridgewell/trace-mapping@npm:0.3.20" + version: 0.3.22 + resolution: "@jridgewell/trace-mapping@npm:0.3.22" dependencies: "@jridgewell/resolve-uri": "npm:^3.1.0" "@jridgewell/sourcemap-codec": "npm:^1.4.14" - checksum: 683117e4e6707ef50c725d6d0ec4234687ff751f36fa46c2b3068931eb6a86b49af374d3030200777666579a992b7470d1bd1c591e9bf64d764dda5295f33093 + checksum: 48d3e3db00dbecb211613649a1849876ba5544a3f41cf5e6b99ea1130272d6cf18591b5b67389bce20f1c871b4ede5900c3b6446a7aab6d0a3b2fe806a834db7 languageName: node linkType: hard @@ -1567,25 +1526,34 @@ __metadata: languageName: node linkType: hard -"@react-native/assets-registry@npm:^0.73.1": +"@react-native/assets-registry@npm:0.73.1": version: 0.73.1 resolution: "@react-native/assets-registry@npm:0.73.1" checksum: e84dc35e4d496069eae7fcb2d812aa8c8e0f304a8dddb4cbe8e3d642a0266255de24fde57528193fb439309aaf24782ba7a0746f2c42a4e4f6bc240b4d589a52 languageName: node linkType: hard -"@react-native/babel-plugin-codegen@npm:*": - version: 0.74.0 - resolution: "@react-native/babel-plugin-codegen@npm:0.74.0" +"@react-native/babel-plugin-codegen@npm:0.73.2": + version: 0.73.2 + resolution: "@react-native/babel-plugin-codegen@npm:0.73.2" + dependencies: + "@react-native/codegen": "npm:0.73.2" + checksum: 0951dd53499342d2ac7c10bf7a764dac9e534b38d0bba673f9fa9cec80171a9bc8ad9dcea86e832453f04bcfa2bf7bf607a1b33056aa431e8666c05aa5f668af + languageName: node + linkType: hard + +"@react-native/babel-plugin-codegen@npm:0.73.3": + version: 0.73.3 + resolution: "@react-native/babel-plugin-codegen@npm:0.73.3" dependencies: - "@react-native/codegen": "npm:*" - checksum: 4663bd2395503ce0e14908b718107bc5d82708be709db746eba448b57193e5dfce7a404688b12b319bf6c9e37ca4db5dd9591f471daba9dfe219970eb8ed2bf7 + "@react-native/codegen": "npm:0.73.2" + checksum: 3a9fd4b63703212aa451158c72d428d97e1090b268781e6c8e62c98f6aa9cbda6365781f2865618ce9f4fe48febcd73959ccd6e33ac5abf395fd6d88c45f7ca4 languageName: node linkType: hard -"@react-native/babel-preset@npm:*": - version: 0.74.0 - resolution: "@react-native/babel-preset@npm:0.74.0" +"@react-native/babel-preset@npm:0.73.19": + version: 0.73.19 + resolution: "@react-native/babel-preset@npm:0.73.19" dependencies: "@babel/core": "npm:^7.20.0" "@babel/plugin-proposal-async-generator-functions": "npm:^7.0.0" @@ -1626,30 +1594,68 @@ __metadata: "@babel/plugin-transform-typescript": "npm:^7.5.0" "@babel/plugin-transform-unicode-regex": "npm:^7.0.0" "@babel/template": "npm:^7.0.0" - "@react-native/babel-plugin-codegen": "npm:*" + "@react-native/babel-plugin-codegen": "npm:0.73.2" babel-plugin-transform-flow-enums: "npm:^0.0.2" react-refresh: "npm:^0.14.0" peerDependencies: "@babel/core": "*" - checksum: 31c6aa22c919620615f5fea7e847f1ee4628c2cf102a14eff17f8830d6bcb125102217c217f8d1c945accbd439997977c46953e6c6e20bd40609f976e6a254f7 + checksum: 4473dca00c66031ca84c93c7b02bc3dc0040a38033bd67f9bca4c1a9ac26ad1359a1c0ccf082ee2e793e8d03ff8f11ebf2573173694169d2495979688207e1ef languageName: node linkType: hard -"@react-native/codegen@npm:*": - version: 0.74.0 - resolution: "@react-native/codegen@npm:0.74.0" +"@react-native/babel-preset@npm:^0.73.20": + version: 0.73.20 + resolution: "@react-native/babel-preset@npm:0.73.20" dependencies: - "@babel/parser": "npm:^7.20.0" - flow-parser: "npm:^0.206.0" - jscodeshift: "npm:^0.14.0" - nullthrows: "npm:^1.1.1" + "@babel/core": "npm:^7.20.0" + "@babel/plugin-proposal-async-generator-functions": "npm:^7.0.0" + "@babel/plugin-proposal-class-properties": "npm:^7.18.0" + "@babel/plugin-proposal-export-default-from": "npm:^7.0.0" + "@babel/plugin-proposal-nullish-coalescing-operator": "npm:^7.18.0" + "@babel/plugin-proposal-numeric-separator": "npm:^7.0.0" + "@babel/plugin-proposal-object-rest-spread": "npm:^7.20.0" + "@babel/plugin-proposal-optional-catch-binding": "npm:^7.0.0" + "@babel/plugin-proposal-optional-chaining": "npm:^7.20.0" + "@babel/plugin-syntax-dynamic-import": "npm:^7.8.0" + "@babel/plugin-syntax-export-default-from": "npm:^7.0.0" + "@babel/plugin-syntax-flow": "npm:^7.18.0" + "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.0.0" + "@babel/plugin-syntax-optional-chaining": "npm:^7.0.0" + "@babel/plugin-transform-arrow-functions": "npm:^7.0.0" + "@babel/plugin-transform-async-to-generator": "npm:^7.20.0" + "@babel/plugin-transform-block-scoping": "npm:^7.0.0" + "@babel/plugin-transform-classes": "npm:^7.0.0" + "@babel/plugin-transform-computed-properties": "npm:^7.0.0" + "@babel/plugin-transform-destructuring": "npm:^7.20.0" + "@babel/plugin-transform-flow-strip-types": "npm:^7.20.0" + "@babel/plugin-transform-function-name": "npm:^7.0.0" + "@babel/plugin-transform-literals": "npm:^7.0.0" + "@babel/plugin-transform-modules-commonjs": "npm:^7.0.0" + "@babel/plugin-transform-named-capturing-groups-regex": "npm:^7.0.0" + "@babel/plugin-transform-parameters": "npm:^7.0.0" + "@babel/plugin-transform-private-methods": "npm:^7.22.5" + "@babel/plugin-transform-private-property-in-object": "npm:^7.22.11" + "@babel/plugin-transform-react-display-name": "npm:^7.0.0" + "@babel/plugin-transform-react-jsx": "npm:^7.0.0" + "@babel/plugin-transform-react-jsx-self": "npm:^7.0.0" + "@babel/plugin-transform-react-jsx-source": "npm:^7.0.0" + "@babel/plugin-transform-runtime": "npm:^7.0.0" + "@babel/plugin-transform-shorthand-properties": "npm:^7.0.0" + "@babel/plugin-transform-spread": "npm:^7.0.0" + "@babel/plugin-transform-sticky-regex": "npm:^7.0.0" + "@babel/plugin-transform-typescript": "npm:^7.5.0" + "@babel/plugin-transform-unicode-regex": "npm:^7.0.0" + "@babel/template": "npm:^7.0.0" + "@react-native/babel-plugin-codegen": "npm:0.73.3" + babel-plugin-transform-flow-enums: "npm:^0.0.2" + react-refresh: "npm:^0.14.0" peerDependencies: - "@babel/preset-env": ^7.1.6 - checksum: 585cc1252c75e624e25c04c67bc6296bb7a8caf46f8e2661ba5b00ea5089ec20cd90ab773fbe4d5f6200ce16da2472dcf06ca761a0111b01b89d2693bbaf3bf5 + "@babel/core": "*" + checksum: 03acc2f0a0c51e007494c2b5b3f58d2de5506605e0b4a7e17d5e4f40709289544f9e6ebfdbf81e5bf0d1b3b378c9bfa36674b013da306fee8e71759af69e5355 languageName: node linkType: hard -"@react-native/codegen@npm:^0.73.2": +"@react-native/codegen@npm:0.73.2": version: 0.73.2 resolution: "@react-native/codegen@npm:0.73.2" dependencies: @@ -1666,38 +1672,38 @@ __metadata: languageName: node linkType: hard -"@react-native/community-cli-plugin@npm:0.73.11": - version: 0.73.11 - resolution: "@react-native/community-cli-plugin@npm:0.73.11" +"@react-native/community-cli-plugin@npm:0.73.12": + version: 0.73.12 + resolution: "@react-native/community-cli-plugin@npm:0.73.12" dependencies: "@react-native-community/cli-server-api": "npm:12.3.0" "@react-native-community/cli-tools": "npm:12.3.0" - "@react-native/dev-middleware": "npm:^0.73.6" - "@react-native/metro-babel-transformer": "npm:^0.73.12" + "@react-native/dev-middleware": "npm:0.73.7" + "@react-native/metro-babel-transformer": "npm:0.73.13" chalk: "npm:^4.0.0" execa: "npm:^5.1.1" - metro: "npm:^0.80.0" - metro-config: "npm:^0.80.0" - metro-core: "npm:^0.80.0" + metro: "npm:^0.80.3" + metro-config: "npm:^0.80.3" + metro-core: "npm:^0.80.3" node-fetch: "npm:^2.2.0" readline: "npm:^1.3.0" - checksum: 77446894e598cf2eaa3ea8eec5dc8f02a1ce56e6d06e3e8bc667d8d5269c3b9c799d7c88904a7784aca2a256262a64245f90bb340ecebd712a883875e3c277bf + checksum: 54a6caf7fb469d0f09183db52f559fbad510b95bb4ef0c938f012951af0d715ee1fbb7bb302d67058606be65aff5e92aea466f048147fb0185a85402ae583576 languageName: node linkType: hard -"@react-native/debugger-frontend@npm:^0.73.3": +"@react-native/debugger-frontend@npm:0.73.3": version: 0.73.3 resolution: "@react-native/debugger-frontend@npm:0.73.3" checksum: eae79ba9d5ed08d4f2c925a649aaa36166d35848edc500475b1d1e36418f496d9a5a9e83d45b10041263da3de7f51eef893327e996d2e6d98c13deada1401cb8 languageName: node linkType: hard -"@react-native/dev-middleware@npm:^0.73.6": - version: 0.73.6 - resolution: "@react-native/dev-middleware@npm:0.73.6" +"@react-native/dev-middleware@npm:0.73.7": + version: 0.73.7 + resolution: "@react-native/dev-middleware@npm:0.73.7" dependencies: "@isaacs/ttlcache": "npm:^1.4.1" - "@react-native/debugger-frontend": "npm:^0.73.3" + "@react-native/debugger-frontend": "npm:0.73.3" chrome-launcher: "npm:^0.15.2" chromium-edge-launcher: "npm:^1.0.0" connect: "npm:^3.6.5" @@ -1706,47 +1712,46 @@ __metadata: open: "npm:^7.0.3" serve-static: "npm:^1.13.1" temp-dir: "npm:^2.0.0" - checksum: 9ce3a117132ea284216ccf5c0ec5115d8a56545b382796d200aee276173d3097cc036d89604a20347c6a792a10ad02dd7b73b18d93a279ece789ef4c22f5b895 + checksum: 9a564a9f791c5a142b801f99d886e1125a3b73ce511f67eb5cdc65b548af4088176a6d5467500182d3fbe9c9d89583a0a88cfd57a7be38a58f582ee9049562a2 languageName: node linkType: hard -"@react-native/gradle-plugin@npm:^0.73.4": +"@react-native/gradle-plugin@npm:0.73.4": version: 0.73.4 resolution: "@react-native/gradle-plugin@npm:0.73.4" checksum: eed3a2fe4d7a8a71552003618976f4de9b4412861a96e65ec80641b94bd6e4a0d1dd4b0b9c44a8e45ac9de79495e2f85a3f9993d2403b227bca6d0efb60b6d11 languageName: node linkType: hard -"@react-native/js-polyfills@npm:^0.73.1": +"@react-native/js-polyfills@npm:0.73.1": version: 0.73.1 resolution: "@react-native/js-polyfills@npm:0.73.1" checksum: 2afbff4bb226dcdaf455555a233fd06199ff788e07cd1da4a672eeb28e31649f3d95536515b40f1d6fd95d6d349128038aec6468eecf76388eee1bc12b5e9566 languageName: node linkType: hard -"@react-native/metro-babel-transformer@npm:^0.73.12": - version: 0.73.12 - resolution: "@react-native/metro-babel-transformer@npm:0.73.12" +"@react-native/metro-babel-transformer@npm:0.73.13": + version: 0.73.13 + resolution: "@react-native/metro-babel-transformer@npm:0.73.13" dependencies: "@babel/core": "npm:^7.20.0" - "@react-native/babel-preset": "npm:*" - babel-preset-fbjs: "npm:^3.4.0" + "@react-native/babel-preset": "npm:0.73.19" hermes-parser: "npm:0.15.0" nullthrows: "npm:^1.1.1" peerDependencies: "@babel/core": "*" - checksum: 38d9efe8ff8bc17f334d6331f04cf30a799c63e3f67c7c7ed36d1ff4ebce93ae402a3862b1c081e5c2e68a98c67b6aec343605ce474438309fc9b3efb47841f0 + checksum: 9cb4340c381e2d8683c67e9ede1f5bd602d39567323ef60b873cfb26de22eaf5f6300f722b47cfe75f4a257315cceca68daef72b308a53ccfd11e76fcf1813d1 languageName: node linkType: hard -"@react-native/normalize-colors@npm:^0.73.0, @react-native/normalize-colors@npm:^0.73.2": +"@react-native/normalize-colors@npm:0.73.2, @react-native/normalize-colors@npm:^0.73.0": version: 0.73.2 resolution: "@react-native/normalize-colors@npm:0.73.2" checksum: 9d0327575e07287be32c0182ac28819ddba4727a3161ec266a901d994fa7998823ae37410d77616e0a15d82849b50664568c7617aa616d9ea095f2cba040be02 languageName: node linkType: hard -"@react-native/virtualized-lists@npm:^0.73.4": +"@react-native/virtualized-lists@npm:0.73.4": version: 0.73.4 resolution: "@react-native/virtualized-lists@npm:0.73.4" dependencies: @@ -1758,7 +1763,7 @@ __metadata: languageName: node linkType: hard -"@sideway/address@npm:^4.1.3": +"@sideway/address@npm:^4.1.4": version: 4.1.4 resolution: "@sideway/address@npm:4.1.4" dependencies: @@ -1798,11 +1803,11 @@ __metadata: linkType: hard "@sinonjs/commons@npm:^3.0.0": - version: 3.0.0 - resolution: "@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: 086720ae0bc370829322df32612205141cdd44e592a8a9ca97197571f8f970352ea39d3bda75b347c43789013ddab36b34b59e40380a49bdae1c2df3aa85fe4f + checksum: a0af217ba7044426c78df52c23cedede6daf377586f3ac58857c565769358ab1f44ebf95ba04bbe38814fba6e316ca6f02870a009328294fc2c555d0f85a7117 languageName: node linkType: hard @@ -1835,13 +1840,32 @@ __metadata: languageName: node linkType: hard -"@sinonjs/text-encoding@npm:^0.7.1": +"@sinonjs/text-encoding@npm:^0.7.2": version: 0.7.2 resolution: "@sinonjs/text-encoding@npm:0.7.2" checksum: ec713fb44888c852d84ca54f6abf9c14d036c11a5d5bfab7825b8b9d2b22127dbe53412c68f4dbb0c05ea5ed61c64679bd2845c177d81462db41e0d3d7eca499 languageName: node linkType: hard +"@testing-library/react-native@npm:^12.4.3": + version: 12.4.3 + resolution: "@testing-library/react-native@npm:12.4.3" + dependencies: + jest-matcher-utils: "npm:^29.7.0" + pretty-format: "npm:^29.7.0" + redent: "npm:^3.0.0" + peerDependencies: + jest: ">=28.0.0" + react: ">=16.8.0" + react-native: ">=0.59" + react-test-renderer: ">=16.8.0" + peerDependenciesMeta: + jest: + optional: true + checksum: f60b6158c63aa32470e6e40016c823917b7de3e8cc4aac8b7c906153a6edae40727092ae3e2750c468182ad84cb39ccb2329e8e03e13563c920f18b5485c754a + languageName: node + linkType: hard + "@tsconfig/node10@npm:^1.0.7": version: 1.0.9 resolution: "@tsconfig/node10@npm:1.0.9" @@ -1870,13 +1894,63 @@ __metadata: languageName: node linkType: hard -"@types/eslint@npm:^8": - version: 8.56.0 - resolution: "@types/eslint@npm:8.56.0" +"@types/babel__core@npm:*, @types/babel__core@npm:^7.20.5": + 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: c32838d280b5ab59d62557f9e331d3831f8e547ee10b4f85cb78753d97d521270cebfc73ce501e9fb27fe71884d1ba75e18658692c2f4117543f0fc4e3e118b3 + languageName: node + linkType: hard + +"@types/babel__generator@npm:*": + version: 7.6.8 + resolution: "@types/babel__generator@npm:7.6.8" + dependencies: + "@babel/types": "npm:^7.0.0" + checksum: b53c215e9074c69d212402990b0ca8fa57595d09e10d94bda3130aa22b55d796e50449199867879e4ea0ee968f3a2099e009cfb21a726a53324483abbf25cd30 + languageName: node + linkType: hard + +"@types/babel__register@npm:^7.17.3": + version: 7.17.3 + resolution: "@types/babel__register@npm:7.17.3" + dependencies: + "@types/babel__core": "npm:*" + checksum: b59e2767e3270fcb0b03bff7a2a561b222fb94a3c15b5a558f0afa0baacce84d99822e7b510e45a8ff8008f4b3b9bb64e5cd508e46e1df9352f1f18fdbdabb89 + 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: d7a02d2a9b67e822694d8e6a7ddb8f2b71a1d6962dfd266554d2513eefbb205b33ca71a0d163b1caea3981ccf849211f9964d8bd0727124d18ace45aa6c9ae29 + languageName: node + linkType: hard + +"@types/babel__traverse@npm:*": + version: 7.20.5 + resolution: "@types/babel__traverse@npm:7.20.5" + dependencies: + "@babel/types": "npm:^7.20.7" + checksum: f0352d537448e1e37f27e6bb8c962d7893720a92fde9d8601a68a93dbc14e15c088b4c0c8f71021d0966d09fba802ef3de11fdb6766c33993f8cf24f1277c6a9 + languageName: node + linkType: hard + +"@types/eslint@npm:^8.56.2": + version: 8.56.2 + resolution: "@types/eslint@npm:8.56.2" dependencies: "@types/estree": "npm:*" "@types/json-schema": "npm:*" - checksum: 0405403788b9b8b3dbce59b668cdf5f7dc3b3fe5f82a4bf335cd7c936b95df83d892bd70af69f0d4f463125b45d15084dc5c0eeda9982d80ddbd988aa6758b63 + checksum: 9e4805e770ea90a561e1f69e5edce28b8f66e92e290705100e853c7c252cf87bef654168d0d47fc60c0effbe4517dd7a8d2fa6d3f04c7f831367d568009fd368 languageName: node linkType: hard @@ -1933,12 +2007,12 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:*, @types/node@npm:^20.10.6": - version: 20.10.6 - resolution: "@types/node@npm:20.10.6" +"@types/node@npm:*, @types/node@npm:^20.11.7": + version: 20.11.7 + resolution: "@types/node@npm:20.11.7" dependencies: undici-types: "npm:~5.26.4" - checksum: 08471220d3cbbb6669835c4b78541edf5eface8f2c2e36c550cfa4ff73da73071c90e200a06359fac25d6564127597c23e178128058fb676824ec23d5178a017 + checksum: ff0428c093987f1f6e3400b91450077cf006d7f0e4ff316e20636218562c53761565ceb06bd7a161badf46e6884d78b554c7b1c3a7717cf5cb8c97f461ecd754 languageName: node linkType: hard @@ -1956,14 +2030,23 @@ __metadata: languageName: node linkType: hard -"@types/react@npm:^18": - version: 18.2.46 - resolution: "@types/react@npm:18.2.46" +"@types/react-test-renderer@npm:^18.0.7": + version: 18.0.7 + resolution: "@types/react-test-renderer@npm:18.0.7" + dependencies: + "@types/react": "npm:*" + checksum: 701d7d815fe7b921712ebdb2c4434e99b92403d37c51b33a01ce1b62fed7d1efbf9f749971d9031a5b137c6d5e194249c378106768aa69725a01f150fef0ec7f + languageName: node + linkType: hard + +"@types/react@npm:*, @types/react@npm:^18.2.48": + version: 18.2.48 + resolution: "@types/react@npm:18.2.48" dependencies: "@types/prop-types": "npm:*" "@types/scheduler": "npm:*" csstype: "npm:^3.0.2" - checksum: 10fb28a5b8504106512ce3b154c45d1ac045c31633786773a29f003b3079b434060368bb56f95ef6c39510835ceec4fb8fdc271d6ca2b9cdd979379cf53f126b + checksum: 2e56ea6bd821ae96bd943f727a59d85384eaf5f8a3e6fce4fa1d34453e32d8eedda742432b3857fa0de7a4214bf84ce4239757eb52918e76452c00384731e585 languageName: node linkType: hard @@ -1981,12 +2064,12 @@ __metadata: languageName: node linkType: hard -"@types/sinon@npm:^17.0.2": - version: 17.0.2 - resolution: "@types/sinon@npm:17.0.2" +"@types/sinon@npm:^17.0.3": + version: 17.0.3 + resolution: "@types/sinon@npm:17.0.3" dependencies: "@types/sinonjs__fake-timers": "npm:*" - checksum: 03e4c99f249123e8fd2f1f7a74a084c0a09420b06b4d9a385989eb14276ec7ca8ef8415dcf70292140b3e9d7c2fb04ab923b0218a2f7f70c8276d3ff5649df97 + checksum: 3f82b4a477c0c57fa4f4f4fb7585cb72c2a65a7e41e5271b54edca296c8dc242c2d8e709de7a8f16af8693c87cb3ad9d96981069ae683f7197a1134892035833 languageName: node linkType: hard @@ -2029,15 +2112,15 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^6.17.0": - version: 6.17.0 - resolution: "@typescript-eslint/eslint-plugin@npm:6.17.0" +"@typescript-eslint/eslint-plugin@npm:^6.19.1": + version: 6.19.1 + resolution: "@typescript-eslint/eslint-plugin@npm:6.19.1" dependencies: "@eslint-community/regexpp": "npm:^4.5.1" - "@typescript-eslint/scope-manager": "npm:6.17.0" - "@typescript-eslint/type-utils": "npm:6.17.0" - "@typescript-eslint/utils": "npm:6.17.0" - "@typescript-eslint/visitor-keys": "npm:6.17.0" + "@typescript-eslint/scope-manager": "npm:6.19.1" + "@typescript-eslint/type-utils": "npm:6.19.1" + "@typescript-eslint/utils": "npm:6.19.1" + "@typescript-eslint/visitor-keys": "npm:6.19.1" debug: "npm:^4.3.4" graphemer: "npm:^1.4.0" ignore: "npm:^5.2.4" @@ -2050,7 +2133,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: f2a5774e9cc03e491a5a488501e5622c7eebd766f5a4fc2c30642864a3b89b0807946bde33a678f326ba7032f3f6a51aa0bf9c2d10adc823804fc9fb47db55a6 + checksum: e88a35527b066a42d0253d153183a360faedc1cd39867c541ce7cb1f7b22f8446bb913b998fcdeba269d5d4217888af42e6d64da5c0592b1f49ed5648d2e3e84 languageName: node linkType: hard @@ -2065,21 +2148,21 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/parser@npm:^6.17.0": - version: 6.17.0 - resolution: "@typescript-eslint/parser@npm:6.17.0" +"@typescript-eslint/parser@npm:^6.19.1": + version: 6.19.1 + resolution: "@typescript-eslint/parser@npm:6.19.1" dependencies: - "@typescript-eslint/scope-manager": "npm:6.17.0" - "@typescript-eslint/types": "npm:6.17.0" - "@typescript-eslint/typescript-estree": "npm:6.17.0" - "@typescript-eslint/visitor-keys": "npm:6.17.0" + "@typescript-eslint/scope-manager": "npm:6.19.1" + "@typescript-eslint/types": "npm:6.19.1" + "@typescript-eslint/typescript-estree": "npm:6.19.1" + "@typescript-eslint/visitor-keys": "npm:6.19.1" debug: "npm:^4.3.4" peerDependencies: eslint: ^7.0.0 || ^8.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 2ed0ed4a5b30e953430ce3279df3655af09fa1caed2abf11804d239717daefc32a22864f6620ef57bb9c684c74a99a13241384fea5096e961385e3678fc2e920 + checksum: 63ff00a56586879a62e40b27b55c94501173fcf2fb5a620d01e7505851b4bb20feb1e7fbad36010af97aefc0a722267d9ce3aa004abab22cb7eb23eebb0102ce languageName: node linkType: hard @@ -2093,22 +2176,22 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:6.17.0": - version: 6.17.0 - resolution: "@typescript-eslint/scope-manager@npm:6.17.0" +"@typescript-eslint/scope-manager@npm:6.19.1": + version: 6.19.1 + resolution: "@typescript-eslint/scope-manager@npm:6.19.1" dependencies: - "@typescript-eslint/types": "npm:6.17.0" - "@typescript-eslint/visitor-keys": "npm:6.17.0" - checksum: fe09c628553c9336e6a36d32c1d34e78ebd20aa02130a6bf535329621ba5a98aaac171f607bc6e4d17b3478c42e7de6476376636897ce3f227c754eb99acd07e + "@typescript-eslint/types": "npm:6.19.1" + "@typescript-eslint/visitor-keys": "npm:6.19.1" + checksum: 2a17f68d3c41582bfac7ecd192e2c2539cf4d2c9728a7018d842da7a8a23986b8a1f8cfcb59862c909b483140a2d164a4ba44451905e0a141378e5dd0df056cc languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:6.17.0": - version: 6.17.0 - resolution: "@typescript-eslint/type-utils@npm:6.17.0" +"@typescript-eslint/type-utils@npm:6.19.1": + version: 6.19.1 + resolution: "@typescript-eslint/type-utils@npm:6.19.1" dependencies: - "@typescript-eslint/typescript-estree": "npm:6.17.0" - "@typescript-eslint/utils": "npm:6.17.0" + "@typescript-eslint/typescript-estree": "npm:6.19.1" + "@typescript-eslint/utils": "npm:6.19.1" debug: "npm:^4.3.4" ts-api-utils: "npm:^1.0.1" peerDependencies: @@ -2116,7 +2199,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: dc7938429193acfda61b7282197ec046039e2c4da41cdcddf4daaf300d10229e4e23bb0fcf0503b19c0b99a874849c8a9f5bb35ce106260f56a14106d2b41d8c + checksum: 5150b897d8b3778c549c6b964b031981da1039dfa0fb89a0eb92702735ca55793d2f840af14b340eccbca81669ba3dd02d7f09fb420fb66b18ec9f1f211b3243 languageName: node linkType: hard @@ -2127,10 +2210,10 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:6.17.0": - version: 6.17.0 - resolution: "@typescript-eslint/types@npm:6.17.0" - checksum: 87ab1b5a3270ab34b917c22a2fb90a9ad7d9f3b19d73a337bc9efbe65f924da13482c97e8ccbe3bd3d081aa96039eeff50de41c1da2a2128066429b931cdb21d +"@typescript-eslint/types@npm:6.19.1": + version: 6.19.1 + resolution: "@typescript-eslint/types@npm:6.19.1" + checksum: 93f3ded80b81a1b8686866b93e36ddf9bac04604d09e88d7ed1ec25b6b2f49ff64747d8d194ba1f3215e231fd0790b88fb5ecadcc6ed53ff584f8c0b87423216 languageName: node linkType: hard @@ -2152,12 +2235,12 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:6.17.0": - version: 6.17.0 - resolution: "@typescript-eslint/typescript-estree@npm:6.17.0" +"@typescript-eslint/typescript-estree@npm:6.19.1": + version: 6.19.1 + resolution: "@typescript-eslint/typescript-estree@npm:6.19.1" dependencies: - "@typescript-eslint/types": "npm:6.17.0" - "@typescript-eslint/visitor-keys": "npm:6.17.0" + "@typescript-eslint/types": "npm:6.19.1" + "@typescript-eslint/visitor-keys": "npm:6.19.1" debug: "npm:^4.3.4" globby: "npm:^11.1.0" is-glob: "npm:^4.0.3" @@ -2167,7 +2250,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 1671b0d2f2fdf07074fb1e2524d61935cec173bd8db6e482cc5b2dcc77aed3ffa831396736ffa0ee2fdbddd8585ae9ca8d6c97bcaea1385b23907a1ec0508f83 + checksum: 3ce91dd477ccb2cc3cf5d07ac8d23792988f4fad78bfd39783292846f32daea5081d3790ba9cc795d9de89ea2e1d55dc9c3d2aeaa8597093b0f6ac3a206195e9 languageName: node linkType: hard @@ -2189,20 +2272,20 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:6.17.0": - version: 6.17.0 - resolution: "@typescript-eslint/utils@npm:6.17.0" +"@typescript-eslint/utils@npm:6.19.1": + version: 6.19.1 + resolution: "@typescript-eslint/utils@npm:6.19.1" dependencies: "@eslint-community/eslint-utils": "npm:^4.4.0" "@types/json-schema": "npm:^7.0.12" "@types/semver": "npm:^7.5.0" - "@typescript-eslint/scope-manager": "npm:6.17.0" - "@typescript-eslint/types": "npm:6.17.0" - "@typescript-eslint/typescript-estree": "npm:6.17.0" + "@typescript-eslint/scope-manager": "npm:6.19.1" + "@typescript-eslint/types": "npm:6.19.1" + "@typescript-eslint/typescript-estree": "npm:6.19.1" semver: "npm:^7.5.4" peerDependencies: eslint: ^7.0.0 || ^8.0.0 - checksum: 37c63afcf66124bf84808699997953b8c84a378aa2c490a771b611d82cdac8499c58fac8eeb8378528e97660b59563d99297bfec4b982cd68760b0ffe54aa714 + checksum: f8931df675defa84af373c81bbb13cc34c2fcf0803c687a38b982e85335dbf2fb8415667fbabaa043df0326ba3e98ed974104bbd21f09ec538304fc3adeed0c3 languageName: node linkType: hard @@ -2216,13 +2299,13 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:6.17.0": - version: 6.17.0 - resolution: "@typescript-eslint/visitor-keys@npm:6.17.0" +"@typescript-eslint/visitor-keys@npm:6.19.1": + version: 6.19.1 + resolution: "@typescript-eslint/visitor-keys@npm:6.19.1" dependencies: - "@typescript-eslint/types": "npm:6.17.0" + "@typescript-eslint/types": "npm:6.19.1" eslint-visitor-keys: "npm:^3.4.1" - checksum: a2aed0e1437fdab8858ab9c7c8e355f8b72a5fa4b0adc54f28b8a2bbc29d4bb93214968ee940f83d013d0a4b83d00cd4eeeb05fb4c2c7d0ead324c6793f7d6d4 + checksum: b41f3247520e1e4d3e43876843b03f0d887e544d4ac8a9e1f4b25d08568da36fedde883fa226488a595f688198859cd0290d0f1351c2ca6cbc30cca2c90adf21 languageName: node linkType: hard @@ -2269,9 +2352,9 @@ __metadata: linkType: hard "acorn-walk@npm:^8.1.1": - version: 8.3.1 - resolution: "acorn-walk@npm:8.3.1" - checksum: 64187f1377afcba01ec6a57950e3f6a31fff50e429cdb9c9ab2c24343375e711f0d552e5fce5b6ecf21f754566e7526b6d79e4da80bd83c7ad15644d285b2ad5 + version: 8.3.2 + resolution: "acorn-walk@npm:8.3.2" + checksum: 57dbe2fd8cf744f562431775741c5c087196cd7a65ce4ccb3f3981cdfad25cd24ad2bad404997b88464ac01e789a0a61e5e355b2a84876f13deef39fb39686ca languageName: node linkType: hard @@ -2586,46 +2669,52 @@ __metadata: languageName: node linkType: hard -"babel-plugin-polyfill-corejs2@npm:^0.4.7": - version: 0.4.7 - resolution: "babel-plugin-polyfill-corejs2@npm:0.4.7" +"babel-plugin-module-resolver@npm:^5.0.0": + version: 5.0.0 + resolution: "babel-plugin-module-resolver@npm:5.0.0" + dependencies: + find-babel-config: "npm:^2.0.0" + glob: "npm:^8.0.3" + pkg-up: "npm:^3.1.0" + reselect: "npm:^4.1.7" + resolve: "npm:^1.22.1" + checksum: 13924d6ec9958405b2ac1a471639f75a7e486f643a6a50363b26dca7b66abd2cf1d9fe301c4e7b50c817e37e782fa06c209d958a4e0570c9ded36e0b8b6c2e48 + languageName: node + linkType: hard + +"babel-plugin-polyfill-corejs2@npm:^0.4.8": + version: 0.4.8 + resolution: "babel-plugin-polyfill-corejs2@npm:0.4.8" dependencies: "@babel/compat-data": "npm:^7.22.6" - "@babel/helper-define-polyfill-provider": "npm:^0.4.4" + "@babel/helper-define-polyfill-provider": "npm:^0.5.0" semver: "npm:^6.3.1" peerDependencies: "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 3b61cdb275592f61b29d582ee8c738a13d9897c5dd201cddb0610b381f3ae139ebc988ac96f72978fc143c3d50c15d46618df865822e282c8e76c236e7378b63 + checksum: 6b5a79bdc1c43edf857fd3a82966b3c7ff4a90eee00ca8d663e0a98304d6e285a05759d64a4dbc16e04a2a5ea1f248673d8bf789711be5e694e368f19884887c languageName: node linkType: hard -"babel-plugin-polyfill-corejs3@npm:^0.8.7": - version: 0.8.7 - resolution: "babel-plugin-polyfill-corejs3@npm:0.8.7" +"babel-plugin-polyfill-corejs3@npm:^0.9.0": + version: 0.9.0 + resolution: "babel-plugin-polyfill-corejs3@npm:0.9.0" dependencies: - "@babel/helper-define-polyfill-provider": "npm:^0.4.4" - core-js-compat: "npm:^3.33.1" + "@babel/helper-define-polyfill-provider": "npm:^0.5.0" + core-js-compat: "npm:^3.34.0" peerDependencies: "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: defbc6de3d309c9639dd31223b5011707fcc0384037ac5959a1aefe16eb314562e1c1e5cfbce0af14a220d639ef92dfe5baf66664e9e6054656aca2841677622 + checksum: efdf9ba82e7848a2c66e0522adf10ac1646b16f271a9006b61a22f976b849de22a07c54c8826887114842ccd20cc9a4617b61e8e0789227a74378ab508e715cd languageName: node linkType: hard -"babel-plugin-polyfill-regenerator@npm:^0.5.4": - version: 0.5.4 - resolution: "babel-plugin-polyfill-regenerator@npm:0.5.4" +"babel-plugin-polyfill-regenerator@npm:^0.5.5": + version: 0.5.5 + resolution: "babel-plugin-polyfill-regenerator@npm:0.5.5" dependencies: - "@babel/helper-define-polyfill-provider": "npm:^0.4.4" + "@babel/helper-define-polyfill-provider": "npm:^0.5.0" peerDependencies: "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 461b735c6c0eca3c7b4434d14bfa98c2ab80f00e2bdc1c69eb46d1d300092a9786d76bbd3ee55e26d2d1a2380c14592d8d638e271dfd2a2b78a9eacffa3645d1 - languageName: node - linkType: hard - -"babel-plugin-syntax-trailing-function-commas@npm:^7.0.0-beta.0": - version: 7.0.0-beta.0 - resolution: "babel-plugin-syntax-trailing-function-commas@npm:7.0.0-beta.0" - checksum: e37509156ca945dd9e4b82c66dd74f2d842ad917bd280cb5aa67960942300cd065eeac476d2514bdcdedec071277a358f6d517c31d9f9244d9bbc3619a8ecf8a + checksum: 3a9b4828673b23cd648dcfb571eadcd9d3fadfca0361d0a7c6feeb5a30474e92faaa49f067a6e1c05e49b6a09812879992028ff3ef3446229ff132d6e1de7eb6 languageName: node linkType: hard @@ -2638,43 +2727,6 @@ __metadata: languageName: node linkType: hard -"babel-preset-fbjs@npm:^3.4.0": - version: 3.4.0 - resolution: "babel-preset-fbjs@npm:3.4.0" - dependencies: - "@babel/plugin-proposal-class-properties": "npm:^7.0.0" - "@babel/plugin-proposal-object-rest-spread": "npm:^7.0.0" - "@babel/plugin-syntax-class-properties": "npm:^7.0.0" - "@babel/plugin-syntax-flow": "npm:^7.0.0" - "@babel/plugin-syntax-jsx": "npm:^7.0.0" - "@babel/plugin-syntax-object-rest-spread": "npm:^7.0.0" - "@babel/plugin-transform-arrow-functions": "npm:^7.0.0" - "@babel/plugin-transform-block-scoped-functions": "npm:^7.0.0" - "@babel/plugin-transform-block-scoping": "npm:^7.0.0" - "@babel/plugin-transform-classes": "npm:^7.0.0" - "@babel/plugin-transform-computed-properties": "npm:^7.0.0" - "@babel/plugin-transform-destructuring": "npm:^7.0.0" - "@babel/plugin-transform-flow-strip-types": "npm:^7.0.0" - "@babel/plugin-transform-for-of": "npm:^7.0.0" - "@babel/plugin-transform-function-name": "npm:^7.0.0" - "@babel/plugin-transform-literals": "npm:^7.0.0" - "@babel/plugin-transform-member-expression-literals": "npm:^7.0.0" - "@babel/plugin-transform-modules-commonjs": "npm:^7.0.0" - "@babel/plugin-transform-object-super": "npm:^7.0.0" - "@babel/plugin-transform-parameters": "npm:^7.0.0" - "@babel/plugin-transform-property-literals": "npm:^7.0.0" - "@babel/plugin-transform-react-display-name": "npm:^7.0.0" - "@babel/plugin-transform-react-jsx": "npm:^7.0.0" - "@babel/plugin-transform-shorthand-properties": "npm:^7.0.0" - "@babel/plugin-transform-spread": "npm:^7.0.0" - "@babel/plugin-transform-template-literals": "npm:^7.0.0" - babel-plugin-syntax-trailing-function-commas: "npm:^7.0.0-beta.0" - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 1e73ebaaeac805aad15793d06a40a63be096730f58708ec434f08578b5ccba890190cda8fdf1c626ab081a8e1cfd376c9db82eaf78a0fafdbcc2362eb2963804 - languageName: node - linkType: hard - "balanced-match@npm:^1.0.0": version: 1.0.2 resolution: "balanced-match@npm:1.0.2" @@ -2743,16 +2795,16 @@ __metadata: linkType: hard "browserslist@npm:^4.22.2": - version: 4.22.2 - resolution: "browserslist@npm:4.22.2" + version: 4.22.3 + resolution: "browserslist@npm:4.22.3" dependencies: - caniuse-lite: "npm:^1.0.30001565" - electron-to-chromium: "npm:^1.4.601" + caniuse-lite: "npm:^1.0.30001580" + electron-to-chromium: "npm:^1.4.648" node-releases: "npm:^2.0.14" update-browserslist-db: "npm:^1.0.13" bin: browserslist: cli.js - checksum: e3590793db7f66ad3a50817e7b7f195ce61e029bd7187200244db664bfbe0ac832f784e4f6b9c958aef8ea4abe001ae7880b7522682df521f4bc0a5b67660b5e + checksum: d46a906c79dfe95d9702c020afbe5b7b4dbe2019b85432e7a020326adff27e63e3c0a52dc8d4e73247060bbe2c13f000714741903cf96a16baae9c216dc74c75 languageName: node linkType: hard @@ -2797,8 +2849,8 @@ __metadata: linkType: hard "cacache@npm:^18.0.0": - version: 18.0.1 - resolution: "cacache@npm:18.0.1" + version: 18.0.2 + resolution: "cacache@npm:18.0.2" dependencies: "@npmcli/fs": "npm:^3.1.0" fs-minipass: "npm:^3.0.0" @@ -2812,7 +2864,7 @@ __metadata: ssri: "npm:^10.0.0" tar: "npm:^6.1.11" unique-filename: "npm:^3.0.0" - checksum: aecafd368fbfb2fc0cda1f2f831fe5a1d8161d2121317c92ac089bcd985085e8a588e810b4471e69946f91c6d2661849400e963231563c519aa1e3dac2cf6187 + checksum: 5ca58464f785d4d64ac2019fcad95451c8c89bea25949f63acd8987fcc3493eaef1beccc0fa39e673506d879d3fc1ab420760f8a14f8ddf46ea2d121805a5e96 languageName: node linkType: hard @@ -2873,10 +2925,10 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001565": - version: 1.0.30001572 - resolution: "caniuse-lite@npm:1.0.30001572" - checksum: cf27b354c0af58d5468cdc0ecea5bff381bc382378016b36b05790929f80e321ee712470a536911dee82e946ad4be246a21326835f1da599c6ee12ec150ae8b7 +"caniuse-lite@npm:^1.0.30001580": + version: 1.0.30001580 + resolution: "caniuse-lite@npm:1.0.30001580" + checksum: b626d25d792c766383a47c9efe1384f7d3c3b23e0ee70bf121e8b3a628806a96a21def16a44e58b75f4a5e23b5e008f51c2cc1e8be477b8c8d9493dcc170dd0e languageName: node linkType: hard @@ -3167,12 +3219,12 @@ __metadata: languageName: node linkType: hard -"core-js-compat@npm:^3.33.1": - version: 3.35.0 - resolution: "core-js-compat@npm:3.35.0" +"core-js-compat@npm:^3.34.0": + version: 3.35.1 + resolution: "core-js-compat@npm:3.35.1" dependencies: browserslist: "npm:^4.22.2" - checksum: aa21ad2f0c946be7a8ecef92233bc003a38fa27e43a925fcd9b79e32ae49b879e0f5c23459ffc310df38ee547389b8e5e43a6a8be0b2369b9b9ebf3d04ae69b9 + checksum: 9a153c66591e23703e182b258ec6bdaff0a7c578dc5f9ac152fdfef2d09e8ec277f192e28d4634a8b576c8e1a6d3b1ac76ff6b8776e72b71b334e609e177a05e languageName: node linkType: hard @@ -3361,6 +3413,13 @@ __metadata: languageName: node linkType: hard +"diff-sequences@npm:^29.6.3": + version: 29.6.3 + resolution: "diff-sequences@npm:29.6.3" + checksum: 179daf9d2f9af5c57ad66d97cb902a538bcf8ed64963fa7aa0c329b3de3665ce2eb6ffdc2f69f29d445fa4af2517e5e55e5b6e00c00a9ae4f43645f97f7078cb + languageName: node + linkType: hard + "diff@npm:5.0.0": version: 5.0.0 resolution: "diff@npm:5.0.0" @@ -3409,6 +3468,13 @@ __metadata: languageName: node linkType: hard +"dot-prop-immutable@npm:^2.1.1": + version: 2.1.1 + resolution: "dot-prop-immutable@npm:2.1.1" + checksum: edf95f62435497e1437bb6931abf4964bb9cbd8d44b3d67fbe6d964b064a86170a4c23286b3fdbef9dcab57ccd4905aa911c4d502f572eb243546d8a9e1d742e + languageName: node + linkType: hard + "eastasianwidth@npm:^0.2.0": version: 0.2.0 resolution: "eastasianwidth@npm:0.2.0" @@ -3423,10 +3489,10 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.4.601": - version: 1.4.616 - resolution: "electron-to-chromium@npm:1.4.616" - checksum: 7793eda8ebfb66621300339fe830bc2b1658530b9e295a7aa37ef7fc1ca7defab4070cf407977f9112d784004a8e2efdcceb793d7e0a81096a7eb06c844db0ba +"electron-to-chromium@npm:^1.4.648": + version: 1.4.648 + resolution: "electron-to-chromium@npm:1.4.648" + checksum: a18f06bafce9017ac7b587f76dac77063a0beb7dfcdf9d5971f72b322f56af6315e4fc3c59154a260a9188c168ac7632538797d57a8c53ab57025ace0c9441f2 languageName: node linkType: hard @@ -3733,9 +3799,9 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-jsdoc@npm:^47.0.2": - version: 47.0.2 - resolution: "eslint-plugin-jsdoc@npm:47.0.2" +"eslint-plugin-jsdoc@npm:^48.0.4": + version: 48.0.4 + resolution: "eslint-plugin-jsdoc@npm:48.0.4" dependencies: "@es-joy/jsdoccomment": "npm:~0.41.0" are-docs-informative: "npm:^0.0.2" @@ -3748,7 +3814,7 @@ __metadata: spdx-expression-parse: "npm:^4.0.0" peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 - checksum: 6adc8c1394a9ab3ba18e6312c753b85fca95aa36cec18460f321e51efbf8d3d536864513ad8b811349d1e49c54207e18c03546f762365ec907fdb16e0b214e97 + checksum: 08a4c3d986f9643447e0248236548a3567a2b775e99176985c6d1dca63c69c93ccc9e1fb63105f9936ccc340a435f1309818b725e938eeb2d7c5c4769a054999 languageName: node linkType: hard @@ -3969,22 +4035,22 @@ __metadata: linkType: hard "fast-xml-parser@npm:^4.0.12, fast-xml-parser@npm:^4.2.4": - version: 4.3.2 - resolution: "fast-xml-parser@npm:4.3.2" + version: 4.3.3 + resolution: "fast-xml-parser@npm:4.3.3" dependencies: strnum: "npm:^1.0.5" bin: fxparser: src/cli/cli.js - checksum: cb3d9ad7d5508e7ec1e6ee4b4753f659c7b7c93c3eb76439cb03072532d07521d53a7e35f243b490dce3fcc16519415bf1f99c6a1004a6de1dccd3d3647c336f + checksum: 501de1f38d9d22c98b8f722fe27a3bb6907cf82a4e37639aa5702f725721424123a1a05a3cc19ec5f3c995ba65fadc7891b10d425eb0dc833580d32aff373777 languageName: node linkType: hard "fastq@npm:^1.6.0": - version: 1.16.0 - resolution: "fastq@npm:1.16.0" + version: 1.17.0 + resolution: "fastq@npm:1.17.0" dependencies: reusify: "npm:^1.0.4" - checksum: de151543aab9d91900ed5da88860c46987ece925c628df586fac664235f25e020ec20729e1c032edb5fd2520fd4aa5b537d69e39b689e65e82112cfbecb4479e + checksum: f81e9fdb1395806f49f0caa30a06978d4949fd723709e1b564c7d0f8e6d0c7681d7c632540d56e81bc22321f7f51160b47c9bc5814c058102a65dd345b5d9f0a languageName: node linkType: hard @@ -4030,6 +4096,16 @@ __metadata: languageName: node linkType: hard +"find-babel-config@npm:^2.0.0": + version: 2.0.0 + resolution: "find-babel-config@npm:2.0.0" + dependencies: + json5: "npm:^2.1.1" + path-exists: "npm:^4.0.0" + checksum: 06e50e920a2b35ff1c90fe33382e48aae70db4bdb6bbb58a4fdb5e687b50074e8b791a8ef2d9bb4b582c8d624d34b0cc763613c7cb585eeb352cd4521976f35a + languageName: node + linkType: hard + "find-cache-dir@npm:^2.0.0": version: 2.1.0 resolution: "find-cache-dir@npm:2.1.0" @@ -4105,9 +4181,9 @@ __metadata: linkType: hard "flow-parser@npm:0.*": - version: 0.225.1 - resolution: "flow-parser@npm:0.225.1" - checksum: 9de425b5f97bf25b632eafce5af5398fe04411d9f6247236801fd1a3709ba28b00c12d123e79fdb183952be135009f2594278cc3b7aea6d0b673397c7f4bfb26 + version: 0.227.0 + resolution: "flow-parser@npm:0.227.0" + checksum: 3b0775f972d19503c43a6409f77900380ee38f11ffcdf20ec1322bcdd8ae4bf12f786becb429f5928cab756135ccd8ad67190c13b27e38227a0f00c724b334ce languageName: node linkType: hard @@ -4338,6 +4414,19 @@ __metadata: 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: 9aab1c75eb087c35dbc41d1f742e51d0507aa2b14c910d96fb8287107a10a22f4bbdce26fc0a3da4c69a20f7b26d62f1640b346a4f6e6becfff47f335bb1dc5e + languageName: node + linkType: hard + "globals@npm:^11.1.0": version: 11.12.0 resolution: "globals@npm:11.12.0" @@ -4439,7 +4528,7 @@ __metadata: languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.0": +"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.1": version: 1.0.1 resolution: "has-property-descriptors@npm:1.0.1" dependencies: @@ -4496,10 +4585,10 @@ __metadata: languageName: node linkType: hard -"hermes-estree@npm:0.18.0": - version: 0.18.0 - resolution: "hermes-estree@npm:0.18.0" - checksum: c445a7a7c24eca3e4a1808822c7cafc999d107ee12a9d6cefe0644df1013e5699fd244f29b0e85c2705f1647a6c999d8bd169db42461efe55e62229ab042c124 +"hermes-estree@npm:0.18.2": + version: 0.18.2 + resolution: "hermes-estree@npm:0.18.2" + checksum: 95b7275f38738792648c198445711d823ab1f502735c0bb5375ad611f5718dd0c0c8644f8b44a475283b8650c19a807cd55eeab46ad9b7ad2d93e460e9292df8 languageName: node linkType: hard @@ -4512,12 +4601,12 @@ __metadata: languageName: node linkType: hard -"hermes-parser@npm:0.18.0": - version: 0.18.0 - resolution: "hermes-parser@npm:0.18.0" +"hermes-parser@npm:0.18.2": + version: 0.18.2 + resolution: "hermes-parser@npm:0.18.2" dependencies: - hermes-estree: "npm:0.18.0" - checksum: 453c7e8d9970d993db5bdbb6047ee76ece62ae1168be0040b80aed186d8e56cb17b1da213d349c4678dd2abdf65482c0fa2f8f33cd6a80a5378ccc319cdd3e4b + hermes-estree: "npm:0.18.2" + checksum: 79df5ff751bf7a0033229df389f3d6556b7e5d4b99cd1aa72fcf78c0ec0717246f24d32d5eaf7c0c7ac3009c0dd66aeb4ef0bf8907827cf6f0ebcd74fa067e88 languageName: node linkType: hard @@ -4601,13 +4690,13 @@ __metadata: linkType: hard "image-size@npm:^1.0.2": - version: 1.1.0 - resolution: "image-size@npm:1.1.0" + version: 1.1.1 + resolution: "image-size@npm:1.1.1" dependencies: queue: "npm:6.0.2" bin: image-size: bin/image-size.js - checksum: 7a56fd758bde2a96e1315b3078c7920e0307a241b563393ae27b97239964bce01553ee930d4334ae352e688f75182a8181dbbafaf56a133c2cefeb5cc45b737b + checksum: f28966dd3f6d4feccc4028400bb7e8047c28b073ab0aa90c7c53039288139dd416c6bc254a976d4bf61113d4bc84871786804113099701cbfe9ccf377effdb54 languageName: node linkType: hard @@ -4967,13 +5056,6 @@ __metadata: languageName: node linkType: hard -"isarray@npm:0.0.1": - version: 0.0.1 - resolution: "isarray@npm:0.0.1" - checksum: 49191f1425681df4a18c2f0f93db3adb85573bcdd6a4482539d98eac9e705d8961317b01175627e860516a2fc45f8f9302db26e5a380a97a520e272e2a40a8d4 - languageName: node - linkType: hard - "isarray@npm:^2.0.5": version: 2.0.5 resolution: "isarray@npm:2.0.5" @@ -5022,6 +5104,18 @@ __metadata: 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: 6f3a7eb9cd9de5ea9e5aa94aed535631fa6f80221832952839b3cb59dd419b91c20b73887deb0b62230d06d02d6b6cf34ebb810b88d904bb4fe1e2e4f0905c98 + languageName: node + linkType: hard + "jest-environment-node@npm:^29.6.3": version: 29.7.0 resolution: "jest-environment-node@npm:29.7.0" @@ -5043,6 +5137,18 @@ __metadata: 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: 981904a494299cf1e3baed352f8a3bd8b50a8c13a662c509b6a53c31461f94ea3bfeffa9d5efcfeb248e384e318c87de7e3baa6af0f79674e987482aa189af40 + languageName: node + linkType: hard + "jest-message-util@npm:^29.7.0": version: 29.7.0 resolution: "jest-message-util@npm:29.7.0" @@ -5112,15 +5218,15 @@ __metadata: linkType: hard "joi@npm:^17.2.1": - version: 17.11.0 - resolution: "joi@npm:17.11.0" + version: 17.12.0 + resolution: "joi@npm:17.12.0" dependencies: - "@hapi/hoek": "npm:^9.0.0" - "@hapi/topo": "npm:^5.0.0" - "@sideway/address": "npm:^4.1.3" + "@hapi/hoek": "npm:^9.3.0" + "@hapi/topo": "npm:^5.1.0" + "@sideway/address": "npm:^4.1.4" "@sideway/formula": "npm:^3.0.1" "@sideway/pinpoint": "npm:^2.0.0" - checksum: 392e897693aa49a401a869180d6b57bdb7ccf616be07c3a2c2c81a2df7a744962249dbaa4a718c07e0fe23b17a04795cbfbd75b79be5829627402eed074db6c9 + checksum: bedb7bcadd7c6d9d4852f5f37e5951f2453830420bcf77ec62f4a2d61af335254aa327888fd08f572cb2675ad3598cf87d57927334b7c7dcd48b9e60839524ae languageName: node linkType: hard @@ -5270,7 +5376,7 @@ __metadata: languageName: node linkType: hard -"json5@npm:^2.2.3": +"json5@npm:^2.1.1, json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" bin: @@ -5280,9 +5386,9 @@ __metadata: linkType: hard "jsonc-parser@npm:^3.2.0": - version: 3.2.0 - resolution: "jsonc-parser@npm:3.2.0" - checksum: bd68b902e5f9394f01da97921f49c5084b2dc03a0c5b4fdb2a429f8d6f292686c1bf87badaeb0a8148d024192a88f5ad2e57b2918ba43fe25cf15f3371db64d4 + version: 3.2.1 + resolution: "jsonc-parser@npm:3.2.1" + checksum: fe2df6f39e21653781d52cae20c5b9e0ab62461918d97f9430b216cea9b6500efc1d8b42c6584cc0a7548b4c996055e9cdc39f09b9782fa6957af2f45306c530 languageName: node linkType: hard @@ -5298,10 +5404,10 @@ __metadata: languageName: node linkType: hard -"just-extend@npm:^4.0.2": - version: 4.2.1 - resolution: "just-extend@npm:4.2.1" - checksum: 375389c0847d56300873fa622fbc5c5e208933e372bbedb39c82f583299cdad4fe9c4773bc35fcd9c42cd85744f07474ca4163aa0f9125dd5be37bc09075eb49 +"just-extend@npm:^6.2.0": + version: 6.2.0 + resolution: "just-extend@npm:6.2.0" + checksum: 1f487b074b9e5773befdd44dc5d1b446f01f24f7d4f1f255d51c0ef7f686e8eb5f95d983b792b9ca5c8b10cd7e60a924d64103725759eddbd7f18bcb22743f92 languageName: node linkType: hard @@ -5453,9 +5559,9 @@ __metadata: linkType: hard "lru-cache@npm:^10.0.1, lru-cache@npm:^9.1.1 || ^10.0.0": - version: 10.1.0 - resolution: "lru-cache@npm:10.1.0" - checksum: 207278d6fa711fb1f94a0835d4d4737441d2475302482a14785b10515e4c906a57ebf9f35bf060740c9560e91c7c1ad5a04fd7ed030972a9ba18bce2a228e95b + version: 10.2.0 + resolution: "lru-cache@npm:10.2.0" + checksum: 502ec42c3309c0eae1ce41afca471f831c278566d45a5273a0c51102dee31e0e250a62fa9029c3370988df33a14188a38e682c16143b794de78668de3643e302 languageName: node linkType: hard @@ -5566,62 +5672,62 @@ __metadata: languageName: node linkType: hard -"metro-babel-transformer@npm:0.80.2": - version: 0.80.2 - resolution: "metro-babel-transformer@npm:0.80.2" +"metro-babel-transformer@npm:0.80.5": + version: 0.80.5 + resolution: "metro-babel-transformer@npm:0.80.5" dependencies: "@babel/core": "npm:^7.20.0" - hermes-parser: "npm:0.18.0" + hermes-parser: "npm:0.18.2" nullthrows: "npm:^1.1.1" - checksum: 158bf2149f343cddb92f13be3d6ba536ca86f689f8a9495526c313b6e7725624fd056ed13a2e27fa824294a3fa731dafba14898b66088daec90dae6fa0775d91 + checksum: b70f941ac3fdeec0b863b7bbb797b5ddb69a037371b576b2699e340f73add19f2db62881ce3b0e7c9ae70c402ea7607544c4f0210056cc23f8db6405193b7b38 languageName: node linkType: hard -"metro-cache-key@npm:0.80.2": - version: 0.80.2 - resolution: "metro-cache-key@npm:0.80.2" - checksum: 8b70b8be0006d4ddc3f796efcb43cb49e2aaf20a37b5d30bf6377e044e711f9cff8ded2393997c395851f2a11ea0a2f8b1e372dbde482ade3f971854b0e75a7d +"metro-cache-key@npm:0.80.5": + version: 0.80.5 + resolution: "metro-cache-key@npm:0.80.5" + checksum: 13437f7860874ee1647e49a216896e2e03db13b1810b17b1e2b25427a2dfc03bed279f9b8f0e1b0aeda2994c3035f48437dd841e989cf425dc6d7ecfb87622eb languageName: node linkType: hard -"metro-cache@npm:0.80.2": - version: 0.80.2 - resolution: "metro-cache@npm:0.80.2" +"metro-cache@npm:0.80.5": + version: 0.80.5 + resolution: "metro-cache@npm:0.80.5" dependencies: - metro-core: "npm:0.80.2" + metro-core: "npm:0.80.5" rimraf: "npm:^3.0.2" - checksum: 7a2c64b671e55e962d20848fc954db81fae0b9679f0bd4916c765e1bf8e1bb8141a3d3705efb4e02a513e61a00b8bb85dfb55f9989d6daf14df912554d2c8eb5 + checksum: badd0249212f1ee992f0d378ebc2d3b047f641464dc74d30fb09e12321f0a0979c78dcee408eef1953059ad076e80227d77c791af16de2b3894c6b754608839f languageName: node linkType: hard -"metro-config@npm:0.80.2, metro-config@npm:^0.80.0": - version: 0.80.2 - resolution: "metro-config@npm:0.80.2" +"metro-config@npm:0.80.5, metro-config@npm:^0.80.3": + version: 0.80.5 + resolution: "metro-config@npm:0.80.5" dependencies: connect: "npm:^3.6.5" cosmiconfig: "npm:^5.0.5" jest-validate: "npm:^29.6.3" - metro: "npm:0.80.2" - metro-cache: "npm:0.80.2" - metro-core: "npm:0.80.2" - metro-runtime: "npm:0.80.2" - checksum: 2ab729840e0b9f4944bcd8812fda231db60947445515a4327dabf4559c07c0d3e912e2d71706adcf5fee846e31061d1a37cce366a5357ddc16e1a4b11a284d00 + metro: "npm:0.80.5" + metro-cache: "npm:0.80.5" + metro-core: "npm:0.80.5" + metro-runtime: "npm:0.80.5" + checksum: 14417ef480a2ccd6e31fcff8d396709a84dde71a235015e2a26ba5f4e71656bf711a02976936ecdfdd3d81f417f2c77eae94e8d2c4916938c83dbbbb7a5a4a3a languageName: node linkType: hard -"metro-core@npm:0.80.2, metro-core@npm:^0.80.0": - version: 0.80.2 - resolution: "metro-core@npm:0.80.2" +"metro-core@npm:0.80.5, metro-core@npm:^0.80.3": + version: 0.80.5 + resolution: "metro-core@npm:0.80.5" dependencies: lodash.throttle: "npm:^4.1.1" - metro-resolver: "npm:0.80.2" - checksum: e0e230f1d7e64041381b2f4b0f638591f099916f9dc723bdee2da5bc089a95831489280f60b2a6ce9afccb745ebbcd281674f1f1394b5e9512fd82e951e182a3 + metro-resolver: "npm:0.80.5" + checksum: ffa2a35ac8355c214065c29d30a5c91b566cc23858d789e371016f8168b974fb693d0d55c890b0475c35cac791b98f2f3acce4e4347293e87d76b7725eef0163 languageName: node linkType: hard -"metro-file-map@npm:0.80.2": - version: 0.80.2 - resolution: "metro-file-map@npm:0.80.2" +"metro-file-map@npm:0.80.5": + version: 0.80.5 + resolution: "metro-file-map@npm:0.80.5" dependencies: anymatch: "npm:^3.0.3" debug: "npm:^2.2.0" @@ -5637,102 +5743,103 @@ __metadata: dependenciesMeta: fsevents: optional: true - checksum: 3338a8d497dabca05afc352186c111fc57035e1b0bdfc788f3128d07057d72d4bfa4ce2fdaf9c7b3335f4fa920ad0f53b87db05531a5ce9c78fc190c7c5c0f49 + checksum: de64af653817b5c5d4de5be9a601bc55c70f1624beaf93452c75587a6bdce7348b9c374fd7a868188a979ee4a0d2f7af140e5b14d783eb7546d4b2d629e4f675 languageName: node linkType: hard -"metro-minify-terser@npm:0.80.2": - version: 0.80.2 - resolution: "metro-minify-terser@npm:0.80.2" +"metro-minify-terser@npm:0.80.5": + version: 0.80.5 + resolution: "metro-minify-terser@npm:0.80.5" dependencies: terser: "npm:^5.15.0" - checksum: 14dbc855e1c189b3fc47eca3aeb84f4d79bddf58c0b22469b73ca724354f9bba06596c586a7b3c3c265a7f69c511302227b3743318b4a7e81813300feaa736e1 + checksum: f9173e874484d0d948c928bb0b6b79c84d1208f655411927dd26cc6678ffae4d60deb7c4c7a0648287143348f75825597cd1fc6edeeb882d6dcd839cd50c96d6 languageName: node linkType: hard -"metro-resolver@npm:0.80.2": - version: 0.80.2 - resolution: "metro-resolver@npm:0.80.2" - checksum: b9e72edb9635db938e9dc283bb06e7d3422778571a17ecbcee80268ae7be380a396a65ea588536d0cd5f1d042fb630dfaea71a6801607cdcd22b6de85ba0fe71 +"metro-resolver@npm:0.80.5": + version: 0.80.5 + resolution: "metro-resolver@npm:0.80.5" + checksum: bdbfab8d3c80c1f6bf27493cadb16a3bbb67981934490d5763e7631beb736de63749b2c1f3abf3d5ac90c9744cef779328f81a65615d56ad0bd5ed26a232bcdb languageName: node linkType: hard -"metro-runtime@npm:0.80.2, metro-runtime@npm:^0.80.0": - version: 0.80.2 - resolution: "metro-runtime@npm:0.80.2" +"metro-runtime@npm:0.80.5, metro-runtime@npm:^0.80.3": + version: 0.80.5 + resolution: "metro-runtime@npm:0.80.5" dependencies: "@babel/runtime": "npm:^7.0.0" - checksum: 1058bfb3bd608b425b0d21ca72a17353979a8c58e6549f9943d30b0ff9fa77b7352da18b0c8456b738eded446af59d2b1289aee5bdcb62e495b01687d79fb1e2 + checksum: 7a45eff51d5176f3926c0f69c4cb5925a2b6854662917eb27224c43b52a92c8978c08323a50772a6fdd300a93277bd495645e4b61b9c0fb7c3e50d28cd934b81 languageName: node linkType: hard -"metro-source-map@npm:0.80.2, metro-source-map@npm:^0.80.0": - version: 0.80.2 - resolution: "metro-source-map@npm:0.80.2" +"metro-source-map@npm:0.80.5, metro-source-map@npm:^0.80.3": + version: 0.80.5 + resolution: "metro-source-map@npm:0.80.5" dependencies: "@babel/traverse": "npm:^7.20.0" "@babel/types": "npm:^7.20.0" invariant: "npm:^2.2.4" - metro-symbolicate: "npm:0.80.2" + metro-symbolicate: "npm:0.80.5" nullthrows: "npm:^1.1.1" - ob1: "npm:0.80.2" + ob1: "npm:0.80.5" source-map: "npm:^0.5.6" vlq: "npm:^1.0.0" - checksum: 0597af3b404146cae46c17bfc9003091d5532d0f3f46b52bc9a43debf230c085b09332f0f0e66dd638d0e3027e159228070d95210e3bc9841999e0db80c25376 + checksum: 347f0551baa076db8cb4a63494ae1e7909391b46010a589cc1cf63c5515f4217a7c249d4cd209806500b18af9d78bb020e040ce1e7870dbf9f19cc7086670eab languageName: node linkType: hard -"metro-symbolicate@npm:0.80.2": - version: 0.80.2 - resolution: "metro-symbolicate@npm:0.80.2" +"metro-symbolicate@npm:0.80.5": + version: 0.80.5 + resolution: "metro-symbolicate@npm:0.80.5" dependencies: invariant: "npm:^2.2.4" - metro-source-map: "npm:0.80.2" + metro-source-map: "npm:0.80.5" nullthrows: "npm:^1.1.1" source-map: "npm:^0.5.6" through2: "npm:^2.0.1" vlq: "npm:^1.0.0" bin: metro-symbolicate: src/index.js - checksum: 99670198109b8cd936a9c23777e61c98909d30199ac9fc3459dd8a083fbbee01bc535eaf165461bbfc9a6b74237fecb5875a9e00b4eff8122963a2680e6514c0 + checksum: c7ab2480420c0940c975dc09dd5b16e66eaa85655f07923943ae246ea67d108b0b49582336de44b3cac2f46025a4d75b70748bebb9e4f80f2708658539e21547 languageName: node linkType: hard -"metro-transform-plugins@npm:0.80.2": - version: 0.80.2 - resolution: "metro-transform-plugins@npm:0.80.2" +"metro-transform-plugins@npm:0.80.5": + version: 0.80.5 + resolution: "metro-transform-plugins@npm:0.80.5" dependencies: "@babel/core": "npm:^7.20.0" "@babel/generator": "npm:^7.20.0" "@babel/template": "npm:^7.0.0" "@babel/traverse": "npm:^7.20.0" nullthrows: "npm:^1.1.1" - checksum: da835f207ed7b17130857a464d902dd3cd5a5241124ab56816dd452c68aab0108c2df6f7220da4b55a91a744c1deacbcef12ff65928de1b3134f920d8e7f1859 + checksum: 08d41de130b7275dac1a4f7cc192c576842cda022a884ccd38955df01335980af100c1c01fdbc3bae1d9c89b9a8d039935eff625afaab6fd4fbc21d4813638f8 languageName: node linkType: hard -"metro-transform-worker@npm:0.80.2": - version: 0.80.2 - resolution: "metro-transform-worker@npm:0.80.2" +"metro-transform-worker@npm:0.80.5": + version: 0.80.5 + resolution: "metro-transform-worker@npm:0.80.5" dependencies: "@babel/core": "npm:^7.20.0" "@babel/generator": "npm:^7.20.0" "@babel/parser": "npm:^7.20.0" "@babel/types": "npm:^7.20.0" - metro: "npm:0.80.2" - metro-babel-transformer: "npm:0.80.2" - metro-cache: "npm:0.80.2" - metro-cache-key: "npm:0.80.2" - metro-source-map: "npm:0.80.2" - metro-transform-plugins: "npm:0.80.2" + metro: "npm:0.80.5" + metro-babel-transformer: "npm:0.80.5" + metro-cache: "npm:0.80.5" + metro-cache-key: "npm:0.80.5" + metro-minify-terser: "npm:0.80.5" + metro-source-map: "npm:0.80.5" + metro-transform-plugins: "npm:0.80.5" nullthrows: "npm:^1.1.1" - checksum: 891b2b007c8ad8b9eddf899076cd19ca235f529131bd27842b3aa30ad54e09b5fb9a8246ed38f51bf50ec97fd5a50e865c3a5cd0d9ff73dc779f5edd44503470 + checksum: 9328abb4b514dccb43425f43b4352d84364f1276504d373267e4c43c781dbb464b67610f08791e88d8c9a1adc66f8638098f57d73a07971047581aa9490a3f8c languageName: node linkType: hard -"metro@npm:0.80.2, metro@npm:^0.80.0": - version: 0.80.2 - resolution: "metro@npm:0.80.2" +"metro@npm:0.80.5, metro@npm:^0.80.3": + version: 0.80.5 + resolution: "metro@npm:0.80.5" dependencies: "@babel/code-frame": "npm:^7.0.0" "@babel/core": "npm:^7.20.0" @@ -5749,25 +5856,24 @@ __metadata: denodeify: "npm:^1.2.1" error-stack-parser: "npm:^2.0.6" graceful-fs: "npm:^4.2.4" - hermes-parser: "npm:0.18.0" + hermes-parser: "npm:0.18.2" image-size: "npm:^1.0.2" invariant: "npm:^2.2.4" jest-worker: "npm:^29.6.3" jsc-safe-url: "npm:^0.2.2" lodash.throttle: "npm:^4.1.1" - metro-babel-transformer: "npm:0.80.2" - metro-cache: "npm:0.80.2" - metro-cache-key: "npm:0.80.2" - metro-config: "npm:0.80.2" - metro-core: "npm:0.80.2" - metro-file-map: "npm:0.80.2" - metro-minify-terser: "npm:0.80.2" - metro-resolver: "npm:0.80.2" - metro-runtime: "npm:0.80.2" - metro-source-map: "npm:0.80.2" - metro-symbolicate: "npm:0.80.2" - metro-transform-plugins: "npm:0.80.2" - metro-transform-worker: "npm:0.80.2" + metro-babel-transformer: "npm:0.80.5" + metro-cache: "npm:0.80.5" + metro-cache-key: "npm:0.80.5" + metro-config: "npm:0.80.5" + metro-core: "npm:0.80.5" + metro-file-map: "npm:0.80.5" + metro-resolver: "npm:0.80.5" + metro-runtime: "npm:0.80.5" + metro-source-map: "npm:0.80.5" + metro-symbolicate: "npm:0.80.5" + metro-transform-plugins: "npm:0.80.5" + metro-transform-worker: "npm:0.80.5" mime-types: "npm:^2.1.27" node-fetch: "npm:^2.2.0" nullthrows: "npm:^1.1.1" @@ -5780,7 +5886,7 @@ __metadata: yargs: "npm:^17.6.2" bin: metro: src/cli.js - checksum: 83f8e733f6b830289a9ab68a0e5f2dabed764857edf46e370931d23b0ccded133e34c0ed50d0ff35dc23290a2471aa4bcd5f732918bc63a5e514101d13752629 + checksum: 0b154b60db611122b471c136c5f7a34eade896a80f3680745f157e297f11fb2bb2b9627908194aad4b089239b30b2985ef434cc8dec4109997467dda216db973 languageName: node linkType: hard @@ -5835,6 +5941,13 @@ __metadata: languageName: node linkType: hard +"min-indent@npm:^1.0.0": + version: 1.0.1 + resolution: "min-indent@npm:1.0.1" + checksum: bfc6dd03c5eaf623a4963ebd94d087f6f4bbbfd8c41329a7f09706b0cb66969c4ddd336abeb587bc44bc6f08e13bf90f0b374f9d71f9f01e04adc2cd6f083ef1 + languageName: node + linkType: hard + "minimatch@npm:5.0.1": version: 5.0.1 resolution: "minimatch@npm:5.0.1" @@ -5862,6 +5975,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:^5.0.1": + version: 5.1.6 + resolution: "minimatch@npm:5.1.6" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 126b36485b821daf96d33b5c821dac600cc1ab36c87e7a532594f9b1652b1fa89a1eebcaad4dff17c764dce1a7ac1531327f190fed5f97d8f6e5f889c116c429 + 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" @@ -6057,15 +6179,15 @@ __metadata: linkType: hard "nise@npm:^5.1.5": - version: 5.1.5 - resolution: "nise@npm:5.1.5" + version: 5.1.7 + resolution: "nise@npm:5.1.7" dependencies: - "@sinonjs/commons": "npm:^2.0.0" - "@sinonjs/fake-timers": "npm:^10.0.2" - "@sinonjs/text-encoding": "npm:^0.7.1" - just-extend: "npm:^4.0.2" - path-to-regexp: "npm:^1.7.0" - checksum: c6afe82b919a2c1985916d5bb3a738a7b2cfb017a6ab9479ec1ede62343051b40da88a1321517bb5d912c13e08b8d9ce9cdef9583edeb44d640af7273c35ebf2 + "@sinonjs/commons": "npm:^3.0.0" + "@sinonjs/fake-timers": "npm:^11.2.2" + "@sinonjs/text-encoding": "npm:^0.7.2" + just-extend: "npm:^6.2.0" + path-to-regexp: "npm:^6.2.1" + checksum: 4754e3ae52654f66e947d44d0dd40ae823e594c201474ad7c5115acb2188c839c9b8617504327051857aea8042befac946e82918e1e53b99350cb275140332d0 languageName: node linkType: hard @@ -6181,10 +6303,10 @@ __metadata: languageName: node linkType: hard -"ob1@npm:0.80.2": - version: 0.80.2 - resolution: "ob1@npm:0.80.2" - checksum: 7d44803c848a42590aee7bb2819171aaa9602b741301b32a5f06cdd7d6890afcb1b7c74b66aa90d9afd8614639eb0c5a0eaf0deb572215456d3735cfe3379b3c +"ob1@npm:0.80.5": + version: 0.80.5 + resolution: "ob1@npm:0.80.5" + checksum: 3c4232b6d92d0ee92e2278f79c8adde8572405d644674c4280ad37dcc765eca57d8a57b5c9bb5c58dad7508de1eb406cdad58e6e04205a413d4dd4f092a152e0 languageName: node linkType: hard @@ -6492,12 +6614,10 @@ __metadata: languageName: node linkType: hard -"path-to-regexp@npm:^1.7.0": - version: 1.8.0 - resolution: "path-to-regexp@npm:1.8.0" - dependencies: - isarray: "npm:0.0.1" - checksum: 45a01690f72919163cf89714e31a285937b14ad54c53734c826363fcf7beba9d9d0f2de802b4986b1264374562d6a3398a2e5289753a764e3a256494f1e52add +"path-to-regexp@npm:^6.2.1": + version: 6.2.1 + resolution: "path-to-regexp@npm:6.2.1" + checksum: 1e266be712d1a08086ee77beab12a1804842ec635dfed44f9ee1ba960a0e01cec8063fb8c92561115cdc0ce73158cdc7766e353ffa039340b4a85b370084c4d4 languageName: node linkType: hard @@ -6545,6 +6665,15 @@ __metadata: languageName: node linkType: hard +"pkg-up@npm:^3.1.0": + version: 3.1.0 + resolution: "pkg-up@npm:3.1.0" + dependencies: + find-up: "npm:^3.0.0" + checksum: 5bac346b7c7c903613c057ae3ab722f320716199d753f4a7d053d38f2b5955460f3e6ab73b4762c62fd3e947f58e04f1343e92089e7bb6091c90877406fcd8c8 + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" @@ -6678,7 +6807,7 @@ __metadata: 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:^16.12.0 || ^17.0.0 || ^18.0.0, react-is@npm:^18.0.0, react-is@npm:^18.2.0": version: 18.2.0 resolution: "react-is@npm:18.2.0" checksum: 200cd65bf2e0be7ba6055f647091b725a45dd2a6abef03bf2380ce701fd5edccee40b49b9d15edab7ac08a762bf83cb4081e31ec2673a5bfb549a36ba21570df @@ -6704,26 +6833,37 @@ __metadata: resolution: "react-native-test-mocks@workspace:." dependencies: "@assertive-ts/core": "npm:^2.0.0" - "@types/eslint": "npm:^8" + "@babel/core": "npm:^7.23.9" + "@babel/preset-react": "npm:^7.23.3" + "@babel/register": "npm:^7.23.7" + "@react-native/babel-preset": "npm:^0.73.20" + "@testing-library/react-native": "npm:^12.4.3" + "@types/babel__core": "npm:^7.20.5" + "@types/babel__register": "npm:^7.17.3" + "@types/eslint": "npm:^8.56.2" "@types/mocha": "npm:^10.0.6" - "@types/node": "npm:^20.10.6" - "@types/react": "npm:^18" - "@types/sinon": "npm:^17.0.2" - "@typescript-eslint/eslint-plugin": "npm:^6.17.0" - "@typescript-eslint/parser": "npm:^6.17.0" + "@types/node": "npm:^20.11.7" + "@types/react": "npm:^18.2.48" + "@types/react-test-renderer": "npm:^18.0.7" + "@types/sinon": "npm:^17.0.3" + "@typescript-eslint/eslint-plugin": "npm:^6.19.1" + "@typescript-eslint/parser": "npm:^6.19.1" + babel-plugin-module-resolver: "npm:^5.0.0" + dot-prop-immutable: "npm:^2.1.1" eslint: "npm:^8.56.0" eslint-import-resolver-typescript: "npm:^3.6.1" eslint-plugin-etc: "npm:^2.0.3" eslint-plugin-import: "npm:^2.29.1" - eslint-plugin-jsdoc: "npm:^47.0.2" + eslint-plugin-jsdoc: "npm:^48.0.4" eslint-plugin-sonarjs: "npm:^0.23.0" mocha: "npm:^10.2.0" react: "npm:18.2.0" - react-native: "npm:^0.73.1" + react-native: "npm:^0.73.2" + react-test-renderer: "npm:^18.2.0" sinon: "npm:^17.0.1" ts-node: "npm:^10.9.2" tslib: "npm:^2.6.2" - typedoc: "npm:^0.25.6" + typedoc: "npm:^0.25.7" typedoc-plugin-markdown: "npm:^3.17.1" typedoc-plugin-merge-modules: "npm:^5.1.0" typescript: "npm:^5.3.3" @@ -6733,21 +6873,21 @@ __metadata: languageName: unknown linkType: soft -"react-native@npm:^0.73.1": - version: 0.73.1 - resolution: "react-native@npm:0.73.1" +"react-native@npm:^0.73.2": + version: 0.73.2 + resolution: "react-native@npm:0.73.2" dependencies: "@jest/create-cache-key-function": "npm:^29.6.3" "@react-native-community/cli": "npm:12.3.0" "@react-native-community/cli-platform-android": "npm:12.3.0" "@react-native-community/cli-platform-ios": "npm:12.3.0" - "@react-native/assets-registry": "npm:^0.73.1" - "@react-native/codegen": "npm:^0.73.2" - "@react-native/community-cli-plugin": "npm:0.73.11" - "@react-native/gradle-plugin": "npm:^0.73.4" - "@react-native/js-polyfills": "npm:^0.73.1" - "@react-native/normalize-colors": "npm:^0.73.2" - "@react-native/virtualized-lists": "npm:^0.73.4" + "@react-native/assets-registry": "npm:0.73.1" + "@react-native/codegen": "npm:0.73.2" + "@react-native/community-cli-plugin": "npm:0.73.12" + "@react-native/gradle-plugin": "npm:0.73.4" + "@react-native/js-polyfills": "npm:0.73.1" + "@react-native/normalize-colors": "npm:0.73.2" + "@react-native/virtualized-lists": "npm:0.73.4" abort-controller: "npm:^3.0.0" anser: "npm:^1.4.9" ansi-regex: "npm:^5.0.0" @@ -6759,8 +6899,8 @@ __metadata: jest-environment-node: "npm:^29.6.3" jsc-android: "npm:^250231.0.0" memoize-one: "npm:^5.0.0" - metro-runtime: "npm:^0.80.0" - metro-source-map: "npm:^0.80.0" + metro-runtime: "npm:^0.80.3" + metro-source-map: "npm:^0.80.3" mkdirp: "npm:^0.5.1" nullthrows: "npm:^1.1.1" pretty-format: "npm:^26.5.2" @@ -6778,7 +6918,7 @@ __metadata: react: 18.2.0 bin: react-native: cli.js - checksum: 96182e2edaec09f1fba2fb2fb5cf3f8234be01849577fa10e5103fc0342541eb02dcb3a00b18345fbe4c19e4b292d3ce91dd3fd72a86ed97c5c8fc39a1e0f1f9 + checksum: 4fc5025ed7fa315c8db4c7309439bd7f761fd49694f5677e6b9412bf0222a620dd01607abfba9e09d8a5339afbf9402a5f9e455e23253ce2aca9c2927bd6972e languageName: node linkType: hard @@ -6801,6 +6941,19 @@ __metadata: 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: 39473e43f64eec92da35db9d4411f3887b368038670787d49dd23172eb3a29953eb13767d1bfa34cbe2665b6e25632cad146e362e8910ce33755d343537763ae + languageName: node + linkType: hard + "react@npm:18.2.0": version: 18.2.0 resolution: "react@npm:18.2.0" @@ -6864,6 +7017,16 @@ __metadata: 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: fa1ef20404a2d399235e83cc80bd55a956642e37dd197b4b612ba7327bf87fa32745aeb4a1634b2bab25467164ab4ed9c15be2c307923dd08b0fe7c52431ae6b + languageName: node + linkType: hard + "regenerate-unicode-properties@npm:^10.1.0": version: 10.1.1 resolution: "regenerate-unicode-properties@npm:10.1.1" @@ -6951,6 +7114,13 @@ __metadata: languageName: node linkType: hard +"reselect@npm:^4.1.7": + version: 4.1.8 + resolution: "reselect@npm:4.1.8" + checksum: 199984d9872f71cd207f4aa6e6fd2bd48d95154f7aa9b3aee3398335f39f5491059e732f28c12e9031d5d434adab2c458dc8af5afb6564d0ad37e1644445e09c + languageName: node + linkType: hard + "resolve-from@npm:^3.0.0": version: 3.0.0 resolution: "resolve-from@npm:3.0.0" @@ -6972,7 +7142,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.12.0, resolve@npm:^1.14.2, resolve@npm:^1.22.4": +"resolve@npm:^1.12.0, resolve@npm:^1.14.2, resolve@npm:^1.22.1, resolve@npm:^1.22.4": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -6985,7 +7155,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@npm%3A^1.12.0#optional!builtin, resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.22.4#optional!builtin": +"resolve@patch:resolve@npm%3A^1.12.0#optional!builtin, resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.22.1#optional!builtin, resolve@patch:resolve@npm%3A^1.22.4#optional!builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" dependencies: @@ -7054,14 +7224,14 @@ __metadata: linkType: hard "safe-array-concat@npm:^1.0.1": - version: 1.0.1 - resolution: "safe-array-concat@npm:1.0.1" + version: 1.1.0 + resolution: "safe-array-concat@npm:1.1.0" dependencies: - call-bind: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.1" + call-bind: "npm:^1.0.5" + get-intrinsic: "npm:^1.2.2" has-symbols: "npm:^1.0.3" isarray: "npm:^2.0.5" - checksum: 44f073d85ca12458138e6eff103ac63cec619c8261b6579bd2fa3ae7b6516cf153f02596d68e40c5bbe322a29c930017800efff652734ddcb8c0f33b2a71f89c + checksum: 41ac35ce46c44e2e8637b1805b0697d5269507779e3082b7afb92c01605fd73ab813bbc799510c56e300cfc941b1447fd98a338205db52db7fd1322ab32d7c9f languageName: node linkType: hard @@ -7080,13 +7250,13 @@ __metadata: linkType: hard "safe-regex-test@npm:^1.0.0": - version: 1.0.0 - resolution: "safe-regex-test@npm:1.0.0" + version: 1.0.2 + resolution: "safe-regex-test@npm:1.0.2" dependencies: - call-bind: "npm:^1.0.2" - get-intrinsic: "npm:^1.1.3" + call-bind: "npm:^1.0.5" + get-intrinsic: "npm:^1.2.2" is-regex: "npm:^1.1.4" - checksum: c7248dfa07891aa634c8b9c55da696e246f8589ca50e7fd14b22b154a106e83209ddf061baf2fa45ebfbd485b094dc7297325acfc50724de6afe7138451b42a9 + checksum: 0e6a472caa8f44a502c7842ea19749de42c2eb1b41cb00456061dc3746cf3468e907522f56e97a15f3b41d88f660bd3d4f9bdec064a39895f7babae0f7aafc6a languageName: node linkType: hard @@ -7106,6 +7276,15 @@ __metadata: languageName: node linkType: hard +"scheduler@npm:^0.23.0": + version: 0.23.0 + resolution: "scheduler@npm:0.23.0" + dependencies: + loose-envify: "npm:^1.1.0" + checksum: 0c4557aa37bafca44ff21dc0ea7c92e2dbcb298bc62eae92b29a39b029134f02fb23917d6ebc8b1fa536b4184934314c20d8864d156a9f6357f3398aaf7bfda8 + languageName: node + linkType: hard + "semver@npm:^5.6.0": version: 5.7.2 resolution: "semver@npm:5.7.2" @@ -7192,14 +7371,15 @@ __metadata: linkType: hard "set-function-length@npm:^1.1.1": - version: 1.1.1 - resolution: "set-function-length@npm:1.1.1" + version: 1.2.0 + resolution: "set-function-length@npm:1.2.0" dependencies: define-data-property: "npm:^1.1.1" - get-intrinsic: "npm:^1.2.1" + function-bind: "npm:^1.1.2" + get-intrinsic: "npm:^1.2.2" gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.0" - checksum: 745ed1d7dc69a6185e0820082fe73838ab3dfd01e75cce83a41e4c1d68bbf34bc5fb38f32ded542ae0b557536b5d2781594499b5dcd19e7db138e06292a76c7b + has-property-descriptors: "npm:^1.0.1" + checksum: 6d609cd060c488d7d2178a5d4c3689f8a6afa26fa4c48ff4a0516664ff9b84c1c0898915777f5628092dab55c4fcead205525e2edd15c659423bf86f790fdcae languageName: node linkType: hard @@ -7389,9 +7569,9 @@ __metadata: linkType: hard "spdx-exceptions@npm:^2.1.0": - version: 2.3.0 - resolution: "spdx-exceptions@npm:2.3.0" - checksum: cb69a26fa3b46305637123cd37c85f75610e8c477b6476fa7354eb67c08128d159f1d36715f19be6f9daf4b680337deb8c65acdcae7f2608ba51931540687ac0 + version: 2.4.0 + resolution: "spdx-exceptions@npm:2.4.0" + checksum: b1b650a8d94424473bf9629cf972c86a91c03cccc260f5c901bce0e4b92d831627fec28c9e0a1e9c34c5ebad0a12cf2eab887bec088e0a862abb9d720c2fd0a1 languageName: node linkType: hard @@ -7581,6 +7761,15 @@ __metadata: 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: 18f045d57d9d0d90cd16f72b2313d6364fd2cb4bf85b9f593523ad431c8720011a4d5f08b6591c9d580f446e78855c5334a30fb91aa1560f5d9f95ed1b4a0530 + languageName: node + linkType: hard + "strip-json-comments@npm:3.1.1, strip-json-comments@npm:^3.1.1": version: 3.1.1 resolution: "strip-json-comments@npm:3.1.1" @@ -7674,8 +7863,8 @@ __metadata: linkType: hard "terser@npm:^5.15.0": - version: 5.26.0 - resolution: "terser@npm:5.26.0" + version: 5.27.0 + resolution: "terser@npm:5.27.0" dependencies: "@jridgewell/source-map": "npm:^0.3.3" acorn: "npm:^8.8.2" @@ -7683,7 +7872,7 @@ __metadata: source-map-support: "npm:~0.5.20" bin: terser: bin/terser - checksum: 0282c5c065cbfa1e725d5609b99579252bc20b83cd1d75e8ab8b46d5da2c9d0fcfc453a12624f2d2d4c1240bfa0017a90fcf1e3b88258e5842fca1b0b82be8d8 + checksum: 9b2c5cb00747dea5994034ca064fb3cc7efc1be6b79a35247662d51ab43bdbe9cbf002bbf29170b5f3bd068c811d0212e22d94acd2cf0d8562687b96f1bffc9f languageName: node linkType: hard @@ -7945,9 +8134,9 @@ __metadata: languageName: node linkType: hard -"typedoc@npm:^0.25.6": - version: 0.25.6 - resolution: "typedoc@npm:0.25.6" +"typedoc@npm:^0.25.7": + version: 0.25.7 + resolution: "typedoc@npm:0.25.7" dependencies: lunr: "npm:^2.3.9" marked: "npm:^4.3.0" @@ -7957,7 +8146,7 @@ __metadata: typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x bin: typedoc: bin/typedoc - checksum: 4d3858152859598e0a7ed34f3ed023a4ad83b4fa0c684b14752e23b59c3102d265596eb510f2ab8665e7b8e67b5a601fe3f70c9eab1b0a2fece63c33088ea848 + checksum: fa88c808e9912ef248cc45b4defea49522e93b97b4bb67423670257a4507ccabdc25c1518a39f6058a728d08675ee0947de55944419fa4bb9f870d84ba4db764 languageName: node linkType: hard