diff --git a/jest.config.js b/jest.config.js index bb6a105..9eba87c 100644 --- a/jest.config.js +++ b/jest.config.js @@ -17,10 +17,10 @@ module.exports = { testMatch: ['**/__tests__/*.spec.+(ts|tsx)'], coverageThreshold: { global: { - branches: 50, - functions: 70, - lines: 75, - statements: 75, + branches: 80, + functions: 90, + lines: 90, + statements: 90, }, }, unmockedModulePathPatterns: ['react'], diff --git a/package.json b/package.json index c3a2278..e5b420c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@platformbuilders/helpers", - "version": "0.8.2", + "version": "0.9.0", "description": "Builders helpers library", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -46,8 +46,8 @@ "react": ">=18", "react-dom": ">=18", "react-native": ">=0.69.3", - "react-native-device-info": ">=10.4.0", "react-native-haptic": ">=1.0.1", + "react-native-safe-area-context": ">=4.5.3", "react-native-size-matters": ">=0.3.0", "styled-components": ">=5" }, @@ -61,6 +61,8 @@ "@babel/preset-react": "7.18.6", "@babel/runtime": "7.20.1", "@platformbuilders/eslint-config-builders": "^0.1.2", + "@platformbuilders/theme-toolkit": "^0.2.0", + "@testing-library/react-hooks": "^8.0.1", "@types/dompurify": "^2.4.0", "@types/jest": "29.2.3", "@types/lodash": "4.14.189", @@ -69,6 +71,7 @@ "@types/react-dom": "18.0.9", "@types/react-native": "0.70.6", "@types/styled-components": "5.1.26", + "@types/styled-components-react-native": "5.1.3", "@typescript-eslint/eslint-plugin": "5.43.0", "@typescript-eslint/parser": "5.43.0", "babel-jest": "29.3.1", @@ -94,13 +97,16 @@ "mz": "2.7.0", "numeral": "2.0.6", "prettier": "2.7.1", + "react": "18.2.0", "react-native": "0.70.6", - "react-native-device-info": "10.4.0", "react-native-haptic": "1.0.1", + "react-native-safe-area-context": "^4.5.3", "react-native-size-matters": "0.4.0", + "react-test-renderer": "18.2.0", "rmfr": "2.0.0", "rollup": "3.3.0", "rollup-plugin-typescript2": "0.34.1", + "styled-components": "^5.3.6", "ts-jest": "29.0.3", "typescript": "4.9.3", "uglify-js": "3.17.4" diff --git a/src/@types/styled-components.d.ts b/src/@types/styled-components.d.ts deleted file mode 100644 index df78eee..0000000 --- a/src/@types/styled-components.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import 'styled-components'; - -declare module 'styled-components' { - export interface DefaultTheme { - white: string; - } -} diff --git a/src/index.ts b/src/index.ts index b80c83a..9b15311 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1 +1,9 @@ +import 'styled-components'; + +declare module 'styled-components' { + export interface DefaultTheme { + white: string; + } +} + export * from './web'; diff --git a/src/native/__tests__/useSpacingsWithSafeArea.spec.ts b/src/native/__tests__/useSpacingsWithSafeArea.spec.ts new file mode 100644 index 0000000..6a1158f --- /dev/null +++ b/src/native/__tests__/useSpacingsWithSafeArea.spec.ts @@ -0,0 +1,35 @@ +import { renderHook } from '@testing-library/react-hooks'; +import { useSpacingsWithSafeArea } from '../useSpacingsWithSafeArea'; + +jest.mock('react', () => ({ + ...jest.requireActual('react'), + useContext: () => ({ + spacing: { + lg: 24, + sm: 8, + }, + }), +})); + +jest.mock('react-native-safe-area-context', () => { + const { + default: mockSafeAreaContext, + } = require('react-native-safe-area-context/jest/mock'); + return mockSafeAreaContext; +}); + +describe('useSpacingsWithSafeArea', () => { + test("should return spacing lg value when don't have safe area value", async () => { + const { result } = renderHook(() => useSpacingsWithSafeArea()); + + expect(result.current.topSpacing).toBe(24); + expect(result.current.bottomSpacing).toBe(24); + }); + + test('should return spacing sm value when pass sm as parameter', async () => { + const { result } = renderHook(() => useSpacingsWithSafeArea('sm')); + + expect(result.current.topSpacing).toBe(8); + expect(result.current.bottomSpacing).toBe(8); + }); +}); diff --git a/src/native/index.ts b/src/native/index.ts index 48d2350..3fc7124 100644 --- a/src/native/index.ts +++ b/src/native/index.ts @@ -3,4 +3,4 @@ export * from './isIOS'; export * from './generateHaptic'; export * from './getShadow'; export * from '../shared'; -export * from './iphoneHelper'; +export * from './useSpacingsWithSafeArea'; diff --git a/src/native/iphoneHelper.ts b/src/native/iphoneHelper.ts deleted file mode 100644 index 6f819e9..0000000 --- a/src/native/iphoneHelper.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { Platform, StatusBar } from 'react-native'; -import { - hasNotch, - hasDynamicIsland, - getDeviceId, -} from 'react-native-device-info'; - -const isIphone = Platform.OS === 'ios' && !Platform.isPad && !Platform.isTV; - -const isIphoneXAbove = () => isIphone && (hasNotch() || hasDynamicIsland()); - -const getIphoneStatusBar = () => { - const deviceId = getDeviceId(); - - if (!!iphonesStatusbarHeight[deviceId]) { - return iphonesStatusbarHeight[deviceId]; - } - - return 20; -}; - -export const getStatusBarHeight = () => { - return Platform.select({ - ios: getIphoneStatusBar(), - android: StatusBar.currentHeight, - default: 0, - }); -}; - -export const getBottomSpace = () => (isIphoneXAbove() ? 34 : 0); - -const iphonesStatusbarHeight = { - 'iPhone10,3': 44, // iPhone X - 'iPhone10,6': 44, // iPhone X - 'iPhone11,2': 44, // iPhone XS - 'iPhone11,4': 44, // iPhone XS MAX - 'iPhone11,6': 44, // // iPhone XS MAX - 'iPhone11,8': 48, // iPhone XR - 'iPhone12,1': 48, // iPhone 11 - 'iPhone12,3': 44, // iPhone 11 Pro - 'iPhone12,5': 44, // iPhone 11 Pro Max - 'iPhone13,1': 50, // iPhone 12 Mini - 'iPhone13,2': 47, // iPhone 12 - 'iPhone13,3': 47, // iPhone 12 Pro - 'iPhone13,4': 47, // iPhone 12 Pro Max - 'iPhone14,4': 50, // iPhone 13 Mini - 'iPhone14,5': 47, // iPhone 13 - 'iPhone14,2': 47, // iPhone 13 Pro - 'iPhone14,3': 47, // iPhone 13 Pro Max - 'iPhone14,7': 47, // iPhone 14 - 'iPhone14,8': 47, // iPhone 14 Plus - 'iPhone15,2': 54, // iPhone 14 Pro - 'iPhone15,3': 54, // iPhone 14 Pro Max -}; diff --git a/src/native/useSpacingsWithSafeArea.ts b/src/native/useSpacingsWithSafeArea.ts new file mode 100644 index 0000000..d636d37 --- /dev/null +++ b/src/native/useSpacingsWithSafeArea.ts @@ -0,0 +1,38 @@ +import { useContext, useEffect, useState } from 'react'; +import { useSafeAreaInsets } from 'react-native-safe-area-context'; +import { ThemeContext } from 'styled-components/native'; +import { FluidTheme } from '@platformbuilders/theme-toolkit'; + +export type SpacingValue = + | 'min' + | 'xxs' + | 'xs' + | 'sm' + | 'md' + | 'lg' + | 'xl' + | 'xxl' + | 'max'; + +export const useSpacingsWithSafeArea = (customSpacing: SpacingValue = 'lg') => { + const { bottom, top } = useSafeAreaInsets(); + const themeContext: unknown = useContext(ThemeContext); + const [spacings, setSpacings] = useState({ + topSpacing: 0, + bottomSpacing: 0, + }); + const themeFluid = themeContext as FluidTheme; + const spacingFluid = themeFluid.spacing[customSpacing]; + + useEffect(() => { + setSpacings({ + topSpacing: top + spacingFluid, + bottomSpacing: bottom + spacingFluid, + }); + }, [bottom, top]); + + return { + topSpacing: spacings.topSpacing, + bottomSpacing: spacings.bottomSpacing, + }; +}; diff --git a/src/__tests__/addMaskToCardNumber.spec.ts b/src/shared/__tests__/addMaskToCardNumber.spec.ts similarity index 87% rename from src/__tests__/addMaskToCardNumber.spec.ts rename to src/shared/__tests__/addMaskToCardNumber.spec.ts index ad0e5b7..0ceedde 100644 --- a/src/__tests__/addMaskToCardNumber.spec.ts +++ b/src/shared/__tests__/addMaskToCardNumber.spec.ts @@ -1,4 +1,4 @@ -import { addMaskToCardNumber } from '../shared/addMaskToCardNumber'; +import { addMaskToCardNumber } from '../addMaskToCardNumber'; const expected = '**** **** **** 1234'; diff --git a/src/__tests__/base64.spec.ts b/src/shared/__tests__/base64.spec.ts similarity index 92% rename from src/__tests__/base64.spec.ts rename to src/shared/__tests__/base64.spec.ts index e869256..893c435 100644 --- a/src/__tests__/base64.spec.ts +++ b/src/shared/__tests__/base64.spec.ts @@ -1,4 +1,4 @@ -import { formatToBase64 } from '../shared/base64'; +import { formatToBase64 } from '../base64'; describe('base64 helpers tests', () => { it('should return a formatted string when no string sent', () => { diff --git a/src/__tests__/currencyParser.spec.ts b/src/shared/__tests__/currencyParser.spec.ts similarity index 97% rename from src/__tests__/currencyParser.spec.ts rename to src/shared/__tests__/currencyParser.spec.ts index cb9eafc..f715165 100644 --- a/src/__tests__/currencyParser.spec.ts +++ b/src/shared/__tests__/currencyParser.spec.ts @@ -1,4 +1,4 @@ -import { currencyParser } from '../shared/currencyParser'; +import { currencyParser } from '../currencyParser'; describe('currencyParser tests', () => { describe('with string', () => { diff --git a/src/__tests__/currencyToNumber.spec.ts b/src/shared/__tests__/currencyToNumber.spec.ts similarity index 90% rename from src/__tests__/currencyToNumber.spec.ts rename to src/shared/__tests__/currencyToNumber.spec.ts index 1cee175..7330720 100644 --- a/src/__tests__/currencyToNumber.spec.ts +++ b/src/shared/__tests__/currencyToNumber.spec.ts @@ -1,4 +1,4 @@ -import { currencyToNumber } from '../shared/currencyToNumber'; +import { currencyToNumber } from '../currencyToNumber'; describe('currencyToNumber tests', () => { it('should parse to thousands', () => { diff --git a/src/__tests__/formatCardNumber.spec.ts b/src/shared/__tests__/formatCardNumber.spec.ts similarity index 87% rename from src/__tests__/formatCardNumber.spec.ts rename to src/shared/__tests__/formatCardNumber.spec.ts index fd40445..46cadf6 100644 --- a/src/__tests__/formatCardNumber.spec.ts +++ b/src/shared/__tests__/formatCardNumber.spec.ts @@ -1,4 +1,4 @@ -import { formatCardNumber } from '../shared/formatCardNumber'; +import { formatCardNumber } from '../formatCardNumber'; describe('formatCardNumber tests', () => { it('should apply mask credit card number 5363 5085 9979 9238', () => { diff --git a/src/__tests__/formatToMonogram.spec.ts b/src/shared/__tests__/formatToMonogram.spec.ts similarity index 93% rename from src/__tests__/formatToMonogram.spec.ts rename to src/shared/__tests__/formatToMonogram.spec.ts index f0dde80..834deb9 100644 --- a/src/__tests__/formatToMonogram.spec.ts +++ b/src/shared/__tests__/formatToMonogram.spec.ts @@ -1,4 +1,4 @@ -import { formatToMonogram } from '../shared/formatToMonogram'; +import { formatToMonogram } from '../formatToMonogram'; describe('formatToMonogram tests', () => { it('should format to monogram', () => { diff --git a/src/__tests__/formatToPhone.spec.ts b/src/shared/__tests__/formatToPhone.spec.ts similarity index 89% rename from src/__tests__/formatToPhone.spec.ts rename to src/shared/__tests__/formatToPhone.spec.ts index 3f894d6..d61036d 100644 --- a/src/__tests__/formatToPhone.spec.ts +++ b/src/shared/__tests__/formatToPhone.spec.ts @@ -1,4 +1,4 @@ -import { formatToPhone } from '../shared/formatToPhone'; +import { formatToPhone } from '../formatToPhone'; const expected = '(11) 99999-8888'; diff --git a/src/__tests__/parseToThousands.spec.ts b/src/shared/__tests__/parseToThousands.spec.ts similarity index 83% rename from src/__tests__/parseToThousands.spec.ts rename to src/shared/__tests__/parseToThousands.spec.ts index 9527588..be62669 100644 --- a/src/__tests__/parseToThousands.spec.ts +++ b/src/shared/__tests__/parseToThousands.spec.ts @@ -1,4 +1,4 @@ -import { parseToThousands } from '../shared/parseToThousands'; +import { parseToThousands } from '../parseToThousands'; describe('parseToThousands tests', () => { it('should parse to thousands', () => { diff --git a/src/__tests__/removeWhiteSpaces.spec.ts b/src/shared/__tests__/removeWhiteSpaces.spec.ts similarity index 83% rename from src/__tests__/removeWhiteSpaces.spec.ts rename to src/shared/__tests__/removeWhiteSpaces.spec.ts index e57f055..f6b323a 100644 --- a/src/__tests__/removeWhiteSpaces.spec.ts +++ b/src/shared/__tests__/removeWhiteSpaces.spec.ts @@ -1,4 +1,4 @@ -import { removeWhiteSpaces } from '../shared/removeWhiteSpaces'; +import { removeWhiteSpaces } from '../removeWhiteSpaces'; describe('removeWhiteSpaces tests', () => { it('should remove white empty spaces properly', () => { diff --git a/src/__tests__/sanitizer.spec.ts b/src/shared/__tests__/sanitizer.spec.ts similarity index 94% rename from src/__tests__/sanitizer.spec.ts rename to src/shared/__tests__/sanitizer.spec.ts index 0d68ac3..cf705e1 100644 --- a/src/__tests__/sanitizer.spec.ts +++ b/src/shared/__tests__/sanitizer.spec.ts @@ -1,4 +1,4 @@ -import { isSecureLink, sanitizeValues } from '../shared/sanitizer'; +import { isSecureLink, sanitizeValues } from '../sanitizer'; describe('Sanitizer', () => { describe('isSecureLink', () => { diff --git a/src/__tests__/toOnlyNumbers.spec.ts b/src/shared/__tests__/toOnlyNumbers.spec.ts similarity index 94% rename from src/__tests__/toOnlyNumbers.spec.ts rename to src/shared/__tests__/toOnlyNumbers.spec.ts index b5f4988..415b524 100644 --- a/src/__tests__/toOnlyNumbers.spec.ts +++ b/src/shared/__tests__/toOnlyNumbers.spec.ts @@ -1,4 +1,4 @@ -import { toOnlyNumbers } from '../shared/toOnlyNumbers'; +import { toOnlyNumbers } from '../toOnlyNumbers'; describe('toOnlyNumbers tests', () => { it('should format to string empty properly', () => { diff --git a/tsconfig.json b/tsconfig.json index 1cae404..7eecbc5 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -4,7 +4,7 @@ "target": "es6", "module": "es6", "lib": ["esnext", "DOM"], - "types": ["react", "jest"], + "types": ["react", "jest", "@types/styled-components-react-native"], "jsx": "react", "declaration": true, "declarationMap": true, @@ -22,7 +22,6 @@ "strictPropertyInitialization": true, "noImplicitThis": true, "alwaysStrict": true, - "suppressImplicitAnyIndexErrors": true, /* Additional Checks */ "noUnusedLocals": true, "noUnusedParameters": true, diff --git a/yarn.lock b/yarn.lock index e9703a1..b738605 100644 --- a/yarn.lock +++ b/yarn.lock @@ -17,6 +17,13 @@ dependencies: "@babel/highlight" "^7.18.6" +"@babel/code-frame@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.5.tgz#234d98e1551960604f1246e6475891a570ad5658" + integrity sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ== + dependencies: + "@babel/highlight" "^7.22.5" + "@babel/compat-data@^7.17.7", "@babel/compat-data@^7.18.8", "@babel/compat-data@^7.19.3": version "7.19.3" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.19.3.tgz#707b939793f867f5a73b2666e6d9a3396eb03151" @@ -123,6 +130,16 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" +"@babel/generator@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.5.tgz#1e7bf768688acfb05cf30b2369ef855e82d984f7" + integrity sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA== + dependencies: + "@babel/types" "^7.22.5" + "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" + jsesc "^2.5.1" + "@babel/helper-annotate-as-pure@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" @@ -207,6 +224,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== +"@babel/helper-environment-visitor@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz#f06dd41b7c1f44e1f8da6c4055b41ab3a09a7e98" + integrity sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q== + "@babel/helper-explode-assignable-expression@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz#41f8228ef0a6f1a036b8dfdfec7ce94f9a6bc096" @@ -230,6 +252,14 @@ "@babel/template" "^7.20.7" "@babel/types" "^7.21.0" +"@babel/helper-function-name@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz#ede300828905bb15e582c037162f99d5183af1be" + integrity sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ== + dependencies: + "@babel/template" "^7.22.5" + "@babel/types" "^7.22.5" + "@babel/helper-hoist-variables@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" @@ -237,6 +267,13 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-hoist-variables@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" + integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-member-expression-to-functions@^7.18.9": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz#1531661e8375af843ad37ac692c132841e2fd815" @@ -244,6 +281,13 @@ dependencies: "@babel/types" "^7.18.9" +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.21.4": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz#1a8f4c9f4027d23f520bd76b364d44434a72660c" + integrity sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-module-imports@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" @@ -359,6 +403,13 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-split-export-declaration@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.5.tgz#88cf11050edb95ed08d596f7a044462189127a08" + integrity sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-string-parser@^7.18.10": version "7.18.10" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz#181f22d28ebe1b3857fa575f5c290b1aaf659b56" @@ -369,11 +420,21 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== +"@babel/helper-string-parser@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" + integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== + "@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": version "7.19.1" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== +"@babel/helper-validator-identifier@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193" + integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ== + "@babel/helper-validator-option@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" @@ -425,6 +486,15 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@babel/highlight@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.5.tgz#aa6c05c5407a67ebce408162b7ede789b4d22031" + integrity sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw== + dependencies: + "@babel/helper-validator-identifier" "^7.22.5" + chalk "^2.0.0" + js-tokens "^4.0.0" + "@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.10", "@babel/parser@^7.19.3": version "7.19.3" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.19.3.tgz#8dd36d17c53ff347f9e55c328710321b49479a9a" @@ -440,6 +510,11 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.3.tgz#1d285d67a19162ff9daa358d4cb41d50c06220b3" integrity sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ== +"@babel/parser@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.5.tgz#721fd042f3ce1896238cf1b341c77eb7dee7dbea" + integrity sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q== + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2" @@ -1302,6 +1377,13 @@ dependencies: regenerator-runtime "^0.13.4" +"@babel/runtime@^7.12.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.5.tgz#8564dd588182ce0047d55d7a75e93921107b57ec" + integrity sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA== + dependencies: + regenerator-runtime "^0.13.11" + "@babel/runtime@^7.20.7": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.21.0.tgz#5b55c9d394e5fcf304909a8b00c07dc217b56673" @@ -1327,6 +1409,15 @@ "@babel/parser" "^7.20.7" "@babel/types" "^7.20.7" +"@babel/template@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.5.tgz#0c8c4d944509875849bd0344ff0050756eefc6ec" + integrity sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw== + dependencies: + "@babel/code-frame" "^7.22.5" + "@babel/parser" "^7.22.5" + "@babel/types" "^7.22.5" + "@babel/traverse@^7.14.0", "@babel/traverse@^7.19.0", "@babel/traverse@^7.19.1", "@babel/traverse@^7.19.3", "@babel/traverse@^7.7.2": version "7.19.3" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.19.3.tgz#3a3c5348d4988ba60884e8494b0592b2f15a04b4" @@ -1375,6 +1466,22 @@ debug "^4.1.0" globals "^11.1.0" +"@babel/traverse@^7.4.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.5.tgz#44bd276690db6f4940fdb84e1cb4abd2f729ccd1" + integrity sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ== + dependencies: + "@babel/code-frame" "^7.22.5" + "@babel/generator" "^7.22.5" + "@babel/helper-environment-visitor" "^7.22.5" + "@babel/helper-function-name" "^7.22.5" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.5" + "@babel/parser" "^7.22.5" + "@babel/types" "^7.22.5" + debug "^4.1.0" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.19.3", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.19.3" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.19.3.tgz#fc420e6bbe54880bce6779ffaf315f5e43ec9624" @@ -1402,11 +1509,42 @@ "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" +"@babel/types@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.5.tgz#cd93eeaab025880a3a47ec881f4b096a5b786fbe" + integrity sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA== + dependencies: + "@babel/helper-string-parser" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.5" + to-fast-properties "^2.0.0" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +"@emotion/is-prop-valid@^1.1.0": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz#23116cf1ed18bfeac910ec6436561ecb1a3885cc" + integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== + dependencies: + "@emotion/memoize" "^0.8.1" + +"@emotion/memoize@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17" + integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== + +"@emotion/stylis@^0.8.4": + version "0.8.5" + resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" + integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ== + +"@emotion/unitless@^0.7.4": + version "0.7.5" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" + integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== + "@eslint-community/eslint-utils@^4.2.0": version "4.2.0" resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.2.0.tgz#a831e6e468b4b2b5ae42bf658bea015bf10bc518" @@ -1823,6 +1961,21 @@ eslint-plugin-react "^7.32.0" eslint-plugin-sonarjs "^0.18.0" +"@platformbuilders/helpers@^0.8.2": + version "0.8.2" + resolved "https://npm.pkg.github.com/download/@platformbuilders/helpers/0.8.2/d9986f1b926f8408ae6b22a4d8724d79878370f7#d9986f1b926f8408ae6b22a4d8724d79878370f7" + integrity sha512-wgt1u47aY5CfnNXS/V7rqCMxItWzK/H8sPtN3Lhenanj8lZH1vNttLsi+10ckzKKIPM962DLTGj14XMnQoGkLg== + dependencies: + lint-staged "^13.2.2" + +"@platformbuilders/theme-toolkit@^0.2.0": + version "0.2.0" + resolved "https://npm.pkg.github.com/download/@platformbuilders/theme-toolkit/0.2.0/0ff57aab4aafd0d5e90f55271cbff79c4a8ee6b3#0ff57aab4aafd0d5e90f55271cbff79c4a8ee6b3" + integrity sha512-Nrju5pMSUmo62wltRGuhVZ85OYHSkVhYNyI+ZcgAxTZWuQeKVFgxPjAeoZSO4cMOV6MW246oQ5dTClBOZZk5hQ== + dependencies: + "@platformbuilders/helpers" "^0.8.2" + lodash "4.17.21" + "@react-native-community/cli-clean@^9.2.1": version "9.2.1" resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-9.2.1.tgz#198c5dd39c432efb5374582073065ff75d67d018" @@ -2043,6 +2196,14 @@ dependencies: "@sinonjs/commons" "^1.7.0" +"@testing-library/react-hooks@^8.0.1": + version "8.0.1" + resolved "https://registry.yarnpkg.com/@testing-library/react-hooks/-/react-hooks-8.0.1.tgz#0924bbd5b55e0c0c0502d1754657ada66947ca12" + integrity sha512-Aqhl2IVmLt8IovEVarNDFuJDVWVvhnr9/GCU6UUnrYXwgDFF9h2L2o2P9KBni1AST5sT6riAyoukFLyjQUgD/g== + dependencies: + "@babel/runtime" "^7.12.5" + react-error-boundary "^3.1.0" + "@types/babel__core@^7.1.14": version "7.1.19" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460" @@ -2174,6 +2335,13 @@ dependencies: "@types/react" "*" +"@types/react-native@^0.65": + version "0.65.31" + resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.65.31.tgz#b75d64144ce1b47b9ae7556c3b15fd1d504517d4" + integrity sha512-3hc6910BWlse/IQxeG2uvV76n2TMfbrcyAMIuXf2u3ICKd5f6X7Sjhh2Oi7orsZWGW3+y9pSac/dM6BUPuORtA== + dependencies: + "@types/react" "^17" + "@types/react@*": version "18.0.21" resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.21.tgz#b8209e9626bb00a34c76f55482697edd2b43cc67" @@ -2192,6 +2360,15 @@ "@types/scheduler" "*" csstype "^3.0.2" +"@types/react@^17": + version "17.0.62" + resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.62.tgz#2efe8ddf8533500ec44b1334dd1a97caa2f860e3" + integrity sha512-eANCyz9DG8p/Vdhr0ZKST8JV12PhH2ACCDYlFw6DIO+D+ca+uP4jtEDEpVqXZrh/uZdXQGwk7whJa3ah5DtyLw== + dependencies: + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" + "@types/scheduler@*": version "0.16.2" resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" @@ -2207,7 +2384,16 @@ resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== -"@types/styled-components@5.1.26": +"@types/styled-components-react-native@5.1.3": + version "5.1.3" + resolved "https://registry.yarnpkg.com/@types/styled-components-react-native/-/styled-components-react-native-5.1.3.tgz#a340208914a2bbb73f05abd6c8b8accffa9c7412" + integrity sha512-IXaogtizUkHJNzSxihG4KK3Z+jaHFp4XyHYIh/I7SUHCc1DsBxToQpE33JITPkgP6DzfgeDn9JkGBGhDIy+GIQ== + dependencies: + "@types/react" "*" + "@types/react-native" "^0.65" + "@types/styled-components" "*" + +"@types/styled-components@*", "@types/styled-components@5.1.26": version "5.1.26" resolved "https://registry.yarnpkg.com/@types/styled-components/-/styled-components-5.1.26.tgz#5627e6812ee96d755028a98dae61d28e57c233af" integrity sha512-KuKJ9Z6xb93uJiIyxo/+ksS7yLjS1KzG6iv5i78dhVg/X3u5t1H7juRWqVmodIdz6wGVaIApo1u01kmFRdJHVw== @@ -2918,6 +3104,22 @@ babel-plugin-polyfill-regenerator@^0.4.1: dependencies: "@babel/helper-define-polyfill-provider" "^0.3.3" +"babel-plugin-styled-components@>= 1.12.0": + version "2.1.3" + resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-2.1.3.tgz#f5616bee99efca6685e500fe45db87f26cb42ba7" + integrity sha512-jBioLwBVHpOMU4NsueH/ADcHrjS0Y/WTpt2eGVmmuSFNEv2DF3XhcMncuZlbbjxQ4vzxg+yEr6E6TNjrIQbsJQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-module-imports" "^7.21.4" + babel-plugin-syntax-jsx "^6.18.0" + lodash "^4.17.21" + picomatch "^2.3.1" + +babel-plugin-syntax-jsx@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" + integrity sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw== + babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: version "7.0.0-beta.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" @@ -3211,6 +3413,11 @@ camelcase@^6.0.0, camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== +camelize@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.1.tgz#89b7e16884056331a35d6b5ad064332c91daa6c3" + integrity sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ== + caniuse-lite@^1.0.30001400: version "1.0.30001412" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001412.tgz#30f67d55a865da43e0aeec003f073ea8764d5d7c" @@ -3535,6 +3742,20 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" +css-color-keywords@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" + integrity sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg== + +css-to-react-native@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-3.2.0.tgz#cdd8099f71024e149e4f6fe17a7d46ecd55f1e32" + integrity sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ== + dependencies: + camelize "^1.0.0" + css-color-keywords "^1.0.0" + postcss-value-parser "^4.0.2" + csstype@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" @@ -4950,7 +5171,7 @@ hermes-profile-transformer@^0.0.6: dependencies: source-map "^0.7.3" -hoist-non-react-statics@^3.3.0: +hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.3.0: version "3.3.2" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== @@ -6253,7 +6474,7 @@ lodash.throttle@^4.1.1: resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4" integrity sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ== -lodash@^4.17.21, lodash@^4.17.4: +lodash@4.17.21, lodash@^4.17.21, lodash@^4.17.4: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -7298,6 +7519,11 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== +postcss-value-parser@^4.0.2: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -7403,7 +7629,14 @@ react-devtools-core@4.24.0: shell-quote "^1.6.1" ws "^7" -"react-is@^16.12.0 || ^17.0.0 || ^18.0.0", react-is@^18.0.0: +react-error-boundary@^3.1.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/react-error-boundary/-/react-error-boundary-3.1.4.tgz#255db92b23197108757a888b01e5b729919abde0" + integrity sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA== + dependencies: + "@babel/runtime" "^7.12.5" + +"react-is@^16.12.0 || ^17.0.0 || ^18.0.0", react-is@^18.0.0, react-is@^18.2.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== @@ -7428,11 +7661,6 @@ react-native-codegen@^0.70.6: jscodeshift "^0.13.1" nullthrows "^1.1.1" -react-native-device-info@10.4.0: - version "10.4.0" - resolved "https://registry.yarnpkg.com/react-native-device-info/-/react-native-device-info-10.4.0.tgz#9d90706641941d7da8ab7b316a37d3111eb231e4" - integrity sha512-Z37e0HtpBvfkPRgv4xN7lXpvmJyzjwCXSFTXEkw6m2UgnnIsWlOD02Avu4hJXBlIMMazaW3ZLKal3o9h3AYvCw== - react-native-gradle-plugin@^0.70.3: version "0.70.3" resolved "https://registry.yarnpkg.com/react-native-gradle-plugin/-/react-native-gradle-plugin-0.70.3.tgz#cbcf0619cbfbddaa9128701aa2d7b4145f9c4fc8" @@ -7443,6 +7671,11 @@ react-native-haptic@1.0.1: resolved "https://registry.yarnpkg.com/react-native-haptic/-/react-native-haptic-1.0.1.tgz#5ecedb6049c1b0cdeca5e31e4fbde16a622675f3" integrity sha512-Eg5omAZYZsIGe+QsVkQrK3Krgv96qejYyfgPUfyIELZ1j6W7RnisduJJ+65aV9Nw/k6gxrmvEUC/Uuap4qf8JA== +react-native-safe-area-context@^4.5.3: + version "4.5.3" + resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.5.3.tgz#e98eb1a73a6b3846d296545fe74760754dbaaa69" + integrity sha512-ihYeGDEBSkYH+1aWnadNhVtclhppVgd/c0tm4mj0+HV11FoiWJ8N6ocnnZnRLvM5Fxc+hUqxR9bm5AXU3rXiyA== + react-native-size-matters@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/react-native-size-matters/-/react-native-size-matters-0.4.0.tgz#01bfd0d59454318f4e0b13fe9c1eb0523d70f2e0" @@ -7499,6 +7732,22 @@ react-shallow-renderer@^16.15.0: object-assign "^4.1.1" react-is "^16.12.0 || ^17.0.0 || ^18.0.0" +react-test-renderer@18.2.0: + version "18.2.0" + resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-18.2.0.tgz#1dd912bd908ff26da5b9fca4fd1c489b9523d37e" + integrity sha512-JWD+aQ0lh2gvh4NM3bBM42Kx+XybOxCpgYK7F8ugAlpaTSnWsX+39Z4XkOykGZAHrjwwTZT3x3KxswVWxHPUqA== + dependencies: + react-is "^18.2.0" + react-shallow-renderer "^16.15.0" + scheduler "^0.23.0" + +react@18.2.0: + version "18.2.0" + resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5" + integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== + dependencies: + loose-envify "^1.1.0" + readable-stream@^3.4.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" @@ -7821,6 +8070,13 @@ scheduler@^0.22.0: dependencies: loose-envify "^1.1.0" +scheduler@^0.23.0: + version "0.23.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe" + integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw== + dependencies: + loose-envify "^1.1.0" + semver@7.x, semver@^7.3.5, semver@^7.3.7: version "7.3.7" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" @@ -7899,6 +8155,11 @@ shallow-clone@^3.0.0: dependencies: kind-of "^6.0.2" +shallowequal@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" + integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== + shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -8301,6 +8562,22 @@ strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== +styled-components@^5.3.6: + version "5.3.11" + resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-5.3.11.tgz#9fda7bf1108e39bf3f3e612fcc18170dedcd57a8" + integrity sha512-uuzIIfnVkagcVHv9nE0VPlHPSCmXIUGKfJ42LNjxCCTDTL5sgnJ8Z7GZBq0EnLYGln77tPpEpExt2+qa+cZqSw== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/traverse" "^7.4.5" + "@emotion/is-prop-valid" "^1.1.0" + "@emotion/stylis" "^0.8.4" + "@emotion/unitless" "^0.7.4" + babel-plugin-styled-components ">= 1.12.0" + css-to-react-native "^3.0.0" + hoist-non-react-statics "^3.0.0" + shallowequal "^1.1.0" + supports-color "^5.5.0" + sudo-prompt@^9.0.0: version "9.2.1" resolved "https://registry.yarnpkg.com/sudo-prompt/-/sudo-prompt-9.2.1.tgz#77efb84309c9ca489527a4e749f287e6bdd52afd" @@ -8311,7 +8588,7 @@ supports-color@^2.0.0: resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== -supports-color@^5.3.0: +supports-color@^5.3.0, supports-color@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==