From 6ab4d6f04d318b38d5300ed33c3cbdaa853c6560 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Mon, 21 Aug 2023 16:17:00 +0530 Subject: [PATCH 01/38] feat: babel example --- .../babel.config.js | 50 +- .../webpack.config.js | 18 +- example/ui-examples-babel/.gitignore | 79 ++ example/ui-examples-babel/App.tsx | 43 ++ example/ui-examples-babel/app.json | 38 + .../assets/adaptive-icon.png | Bin 0 -> 17547 bytes example/ui-examples-babel/assets/favicon.png | Bin 0 -> 1466 bytes example/ui-examples-babel/assets/icon.png | Bin 0 -> 22380 bytes example/ui-examples-babel/assets/splash.png | Bin 0 -> 47346 bytes example/ui-examples-babel/babel.config.js | 48 ++ .../ui-examples-babel/gluestack-ui.config.ts | 731 ++++++++++++++++++ example/ui-examples-babel/index.js | 46 ++ example/ui-examples-babel/metro.config.js | 33 + example/ui-examples-babel/package.json | 85 ++ example/ui-examples-babel/readme.md | 1 + example/ui-examples-babel/src/core/styled.tsx | 1 + example/ui-examples-babel/src/index.tsx | 43 ++ example/ui-examples-babel/styles/index.ts | 2 + example/ui-examples-babel/styles/index.web.ts | 1 + example/ui-examples-babel/styles/main.css | 33 + example/ui-examples-babel/timing.ts | 0 example/ui-examples-babel/tsconfig.json | 13 + .../ui-examples-babel/use-get-mount-time.ts | 45 ++ example/ui-examples-babel/webpack.config.js | 50 ++ example/ui-examples/App.tsx | 71 +- example/ui-examples/babel.config.js | 20 +- 26 files changed, 1353 insertions(+), 98 deletions(-) create mode 100644 example/ui-examples-babel/.gitignore create mode 100644 example/ui-examples-babel/App.tsx create mode 100644 example/ui-examples-babel/app.json create mode 100644 example/ui-examples-babel/assets/adaptive-icon.png create mode 100644 example/ui-examples-babel/assets/favicon.png create mode 100644 example/ui-examples-babel/assets/icon.png create mode 100644 example/ui-examples-babel/assets/splash.png create mode 100644 example/ui-examples-babel/babel.config.js create mode 100644 example/ui-examples-babel/gluestack-ui.config.ts create mode 100644 example/ui-examples-babel/index.js create mode 100644 example/ui-examples-babel/metro.config.js create mode 100644 example/ui-examples-babel/package.json create mode 100644 example/ui-examples-babel/readme.md create mode 100644 example/ui-examples-babel/src/core/styled.tsx create mode 100644 example/ui-examples-babel/src/index.tsx create mode 100644 example/ui-examples-babel/styles/index.ts create mode 100644 example/ui-examples-babel/styles/index.web.ts create mode 100644 example/ui-examples-babel/styles/main.css create mode 100644 example/ui-examples-babel/timing.ts create mode 100644 example/ui-examples-babel/tsconfig.json create mode 100644 example/ui-examples-babel/use-get-mount-time.ts create mode 100644 example/ui-examples-babel/webpack.config.js diff --git a/example/babel-plugin-styled-resolver-expo/babel.config.js b/example/babel-plugin-styled-resolver-expo/babel.config.js index 1b4156c5f..5a3fbf093 100644 --- a/example/babel-plugin-styled-resolver-expo/babel.config.js +++ b/example/babel-plugin-styled-resolver-expo/babel.config.js @@ -1,34 +1,34 @@ -const path = require('path'); -const myBabel = require('../../packages/babel-plugin-styled-resolver/src/index.js'); +// const path = require('path'); +// const myBabel = require('../../packages/babel-plugin-styled-resolver/src/index.js'); module.exports = function (api) { api.cache(true); return { presets: ['babel-preset-expo'], plugins: [ // process.env.NODE_ENV === "production" ? myBabel : {}, - [ - myBabel, - { - web: true, - configPath: path.join(__dirname, './src/styled.config.ts'), - configThemePath: ['config', 'theme'], - outputLibrary: 'test', - // libraryName: '../../styled', - // filename: path.join(__dirname, './core/styled'), - }, - ], - [ - 'module-resolver', - { - alias: { - // For development, we want to alias the library to the source - // ['@gluestack-style/react']: path.join( - // __dirname, - // '../../../styled/src/index' - // ), - }, - }, - ], + // [ + // myBabel, + // { + // web: true, + // configPath: path.join(__dirname, './src/styled.config.ts'), + // configThemePath: ['config', 'theme'], + // outputLibrary: 'test', + // // libraryName: '../../styled', + // // filename: path.join(__dirname, './core/styled'), + // }, + // ], + // [ + // 'module-resolver', + // { + // alias: { + // // For development, we want to alias the library to the source + // // ['@gluestack-style/react']: path.join( + // // __dirname, + // // '../../../styled/src/index' + // // ), + // }, + // }, + // ], // 'transform-remove-console', ], }; diff --git a/example/babel-plugin-styled-resolver-expo/webpack.config.js b/example/babel-plugin-styled-resolver-expo/webpack.config.js index d4e78e5d0..edd89fd33 100644 --- a/example/babel-plugin-styled-resolver-expo/webpack.config.js +++ b/example/babel-plugin-styled-resolver-expo/webpack.config.js @@ -4,23 +4,28 @@ const { resolver } = require('./metro.config'); const findWorkspaceRoot = require('find-yarn-workspace-root'); // Find the workspace root, this can be replaced with `find-yarn-workspace-root` -// const workspaceRoot = path.resolve(__dirname, "../../"); +// const workspaceRoot = path.resolve(__dirname, "../../.."); const workspaceRoot = findWorkspaceRoot(__dirname); -const root = path.resolve(__dirname, '../..'); -const node_modules = path.join(workspaceRoot, 'node_modules'); +const styledRoot = path.resolve(__dirname, '../../packages/react/src'); +const animationPluginRoot = path.resolve( + __dirname, + '../../packages/animation-plugin/src' +); +const node_modules = path.join(workspaceRoot, 'node_modules'); +// const designSystem = path.resolve(__dirname, "../../../glustack-design-system"); module.exports = async function (env, argv) { const config = await createExpoWebpackConfigAsync(env, argv); config.module.rules.push({ test: /\.(js|ts|tsx)$/, include: [ - path.resolve(root, 'src'), - path.resolve(workspaceRoot, 'node_modules/@gluestack-style/react'), + path.resolve(styledRoot), + path.resolve(animationPluginRoot), + // path.resolve(designSystem, "src"), ], - use: 'babel-loader', }); @@ -29,6 +34,7 @@ module.exports = async function (env, argv) { Object.assign(config.resolve.alias, { ...resolver.extraNodeModules, 'react-native-web': path.join(node_modules, 'react-native-web'), + // '@dank-style/react': path.join(node_modules, '@gluestack-style/react'), }); // Maybe you want to turn off compression in dev mode. diff --git a/example/ui-examples-babel/.gitignore b/example/ui-examples-babel/.gitignore new file mode 100644 index 000000000..bd8b89264 --- /dev/null +++ b/example/ui-examples-babel/.gitignore @@ -0,0 +1,79 @@ +node_modules/ +.expo/ +dist/ +npm-debug.* +*.jks +*.p8 +*.p12 +*.key +*.mobileprovision +*.orig.* +web-build/ +ios/ + +# macOS +.DS_Store + +# Temporary files created by Metro to check the health of the file watcher +.metro-health-check* + +# @generated expo-cli sync-647791c5bd841d5c91864afb91c302553d300921 +# The following patterns were generated by expo-cli + +# OSX +# +.DS_Store + +# Xcode +# +build/ +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata +*.xccheckout +*.moved-aside +DerivedData +*.hmap +*.ipa +*.xcuserstate +project.xcworkspace + +# Android/IntelliJ +# +build/ +.idea +.gradle +local.properties +*.iml +*.hprof +.cxx/ +*.keystore +!debug.keystore + +# node.js +# +node_modules/ +npm-debug.log +yarn-error.log + +# Bundle artifacts +*.jsbundle + +# CocoaPods +/ios/Pods/ + +# Temporary files created by Metro to check the health of the file watcher +.metro-health-check* + +# Expo +.expo/ +web-build/ +dist/ + +# @end expo-cli \ No newline at end of file diff --git a/example/ui-examples-babel/App.tsx b/example/ui-examples-babel/App.tsx new file mode 100644 index 000000000..bbf1f2285 --- /dev/null +++ b/example/ui-examples-babel/App.tsx @@ -0,0 +1,43 @@ +/* eslint-disable react-native/no-inline-styles */ +import React from 'react'; +import { SafeAreaView, StyleSheet, View } from 'react-native'; +import { config } from './gluestack-ui.config'; +import './styles'; +import { StyledProvider } from '@gluestack-style/react'; +import { styled } from './src/core/styled'; + +const Box = styled(View, { + bg: '$red500', + padding: '$10', +}); + +export default function App() { + return ( + <> + {/* top SafeAreaView */} + + {/* bottom SafeAreaView */} + + {/* gluestack-ui provider */} + + + + + + ); +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + overflow: 'hidden', + }, +}); diff --git a/example/ui-examples-babel/app.json b/example/ui-examples-babel/app.json new file mode 100644 index 000000000..b39b43dc3 --- /dev/null +++ b/example/ui-examples-babel/app.json @@ -0,0 +1,38 @@ +{ + "expo": { + "name": "kitchensink-app", + "slug": "kitchensink-app", + "version": "1.0.0", + "orientation": "portrait", + "icon": "./assets/icon.png", + "jsEngine": "hermes", + "userInterfaceStyle": "light", + "splash": { + "image": "./assets/splash.png", + "resizeMode": "contain", + "backgroundColor": "#ffffff" + }, + "assetBundlePatterns": ["**/*"], + "ios": { + "supportsTablet": true, + "jsEngine": "hermes", + "bundleIdentifier": "com.meenumakkar.ui-kitchensink" + }, + "android": { + "adaptiveIcon": { + "foregroundImage": "./assets/adaptive-icon.png", + "backgroundColor": "#ffffff" + }, + "package": "com.meenumakkar.clitestexpo" + }, + "web": { + "favicon": "./assets/favicon.png" + }, + "runtimeVersion": { + "policy": "sdkVersion" + }, + "updates": { + "url": "https://u.expo.dev/72e83d84-acc2-4675-a0a8-95d0f5fea5b4" + } + } +} diff --git a/example/ui-examples-babel/assets/adaptive-icon.png b/example/ui-examples-babel/assets/adaptive-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..03d6f6b6c6727954aec1d8206222769afd178d8d GIT binary patch literal 17547 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 literal 0 HcmV?d00001 diff --git a/example/ui-examples-babel/assets/icon.png b/example/ui-examples-babel/assets/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..a0b1526fc7b78680fd8d733dbc6113e1af695487 GIT binary patch literal 22380 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 literal 0 HcmV?d00001 diff --git a/example/ui-examples-babel/assets/splash.png b/example/ui-examples-babel/assets/splash.png new file mode 100644 index 0000000000000000000000000000000000000000..0e89705a9436743e42954d3744a0e7ff0d3d4701 GIT binary patch literal 47346 zcmeFZi96K&_XjK_r7THgZ=)=sY}ukdVw6J7XJ~gi6RV z#!d+_#@NO%)0pRj`~Lo(f8lwq+jY5I%;&wG_c^a~&g-0y1QR3OQz!UOFfcHj(!2YY z83V&nW(I~6&; zF(jiN^m|L+!Uf(&`suOcKb8H<#Jdj6-1?y&;5J~8X2 zz7CuJk}fVIaFPY~et#fWJ{T*j#nWee)9-McpR-W6OkCGj*gu<&Tv=bu3J1H0#ve0mwiSZ6 zR0Vwj+-m(w-WooXk=Hkl)m~qjKbT<&y0h$2gl8Qr#(JfoEZLZWVuB->i=`_OmFa@N$0#y%&3Gs?}-cn2#GejXLZ(_t6 zc>YO^T8Mc*haZ7l&}5__*3NNJImJz2C5V)Wq;~DsRz@FNxpJ509*pVqDsJ8* zjk&L{KPH`Lw3rG;gvEKuLm-f(4zCJg5DN}Ma+_oXYAU`w>C5i<;R_(HyYF>s2ZE=; zmCHdYmMwh~_g$MJBJD)l@jL5tREr|(@{pd*KV2RJ{TBBh02iSWHF~hy8{YLs_GfXQ zl6*S=X*Y;>9XVHoZ#~W|u18z$o$?EIXrF1sL57;jH)?ge1jO|1sMZqWFI z&$Ozre|eSx=*Tw=M{OA#ORXu7sKVi=%J|c#%44Foy%@^6fnLKynVqs^A zlblnDh40s(ZrIq`Mi~me=IoJ_&YT5yWAOrhlZLC?@$&Ez2 zgsRNCj|U=r5BAXOQEy|}Rn`QkcLjg1jyR@bijVO9Jg|Wmi|EkOZH&D?AsXue?8ZCM zIl#E?x4Xo3&q@B`K=0lILFZOCH%EY8=LkUJK}FVrjwYGieu)d0M!%Tl?Y)MgL@Do4;Z{ES-&>~<0JurBK zBc!EMyhbWA3;4iMqi19_4f`_iXH}wn5;i7qJk+Nid`S$hRo-pufjAQ!@4AKr;@nzq6|GT9LMxDfqA!Ic^)H5#tgJKB z022aBPRC=Z2(Pv1W3C39_G+(|>%9)||2HYWNwFX2_igh}J)rGI&J}n{MYBe9mR3Mb zO?kW38JhomIMD?@;1eEx6U`AR@=T2Lb;#sb|KyB}L*+~K4b`sRe%dIue@)zmN&9MY zfQ{NYAnds1*9U9p#!LWGAlBAR6<5HTXC@H5ym_xx^=ubJQ>>NF9h`*Qxg`JuqB`TN zfJwBfhRRk`fOX1o0#WEI6wR-j%cfY55u)ZpJL_$ct3CC)%aoa;v4=X;mq1#6l|a(t z#vf;i!({ARHyj5A5c)cgC-@AF1_IH`uS67>r|1zoR-TU9OyNly`&KKK29cCRE1ft% zUhbcim?=N#!%AEWSRto=0%1vt@Fwd5Fmi%f{7TPsXyRMSkQAc*J%2CQ($fETNRP3O zH)_JN?DMZc1Wt8bXYMR;r#`oBHLEI&Cnt&IO7j#q1Oj1+B~>4Li!3j1y{DZsA5Npy ztkAXdEgekvck}ank(^Mi#0AXel@|u3#aY=)c(-ZJ;2AT^=>mmfMNiH}XRu^c^CE z_#36;m87NTl>iKpQWcJwjRVzF-T>P1_I>_cf|eH**jsrR0*{r^QH}o7_^-Qg_w-x> z@amziZHEEiN=?!MIMMB?nPFuX=VUdKVXS~J!!Fz87la`b4fs(tKN_)KhnnDKJ zL6|y+lLbVmuRo7Zd>c)CuO8WyD9_E>x1sUPFTq<{M-l*KiNSI#|Ky<}8z!=C;z;XC z-3s6KF;KyE4CYYhUckd@vsXz39MN&Nzc*>4l;Heu}k4&#E ziWEXPF>{Z4g2xk3J$t~hNhj{@y$9`!Q<3kapFj$vJ7pi~Wf1@l7tIi7rto=TMS#A( z5$iv+3j>kWVyM`S|LYThFsCRIen}MguNOw z%gl&b%9vj!xZd2cud^q<@&$d+ynVT%J}=);^3ztikO~6NKrk#a$$PpnL|l(A;cK4FD{N zi`57?;U2xi?T zBf5&)crbse?2Z4@H0L^8D>s_{X(|}H5~Dn1+XQF@gE&|2++Q4GTX52ExHed!L&*^B0azpeu!a9XuMHX{b&M!monL+>QR!DW>6J%bs#d@QG;{2YEo5Y(^V;Uy z_b_1qCEf|3;9iHmuGY95K{bnX7xa3=-`mF=o3?L4=9R3>c=4mL>B#bz{#SeUWZv?0 z=KN~};zrBgYL+nvThul&KZEWEVP|W-y}cPR2_$}&STL(mApmvKJ<~J$X4q5Hs;B)< z2zC8XG(ZSDGCX}5fI+FWsbTyn4H4;{n*E!X?ij*{AgF!A%UUgV1oP)^=;?8qoFDcd z#g?mHMJx1268mZ>*8tZI!nW1e(wyt0RIhQq))G}VpHbmv9WmDVzbjCy6uC=K50C!o zxBqxI8B1Eug2Uo-5W8pQc(QliCZzV_k$0E21Cijy@@1e0y+*e3pmvg03@y@ zE+fj^8~}40LIFm0nzc{EFT<6d_O&J|>Cn3Zejru8I@*CU^eH0N57pLmCBh*IoH>uT zC?0Fls%m#o$T`k@U|#_P7TDRmGITo}Oa!I4S!Yg}WuhzHt#?lWTVTXkPscN2#-@|7 zaYccM>wZ80^r3w4v5H|iBL3$~bHJ2cX^@T9XsLcgH(-OuncX8qPB1IU`DssCFag%< zmTy(5k-doKxNl7aBAZOWIHvsSHElqkO3UYNb6QpKWq){AF}YAH;H+nBgeB+{b1X2d z>Rfn!yDDJkDGpl}#fi=wgd@$p>1&lJ7=O}{Iu{E8>Gww2>(Z0h%0{}|+DPWgk|($2LaYkVi1EqD))Ngy$!?Ey_Khw=N$ z0*>LrfiNG=fipoI@PGEb=ZJztU+<|21z=DLF=KlMJ2zm4_5;FT06CGWu2!NR2eAwR zbOz1gYQ0;g)<1&;g4q~H!I!3*&s`CKwL$eom8B(_m6ZJICl14gPoJ8jl?}@^^A^>C z$e~861#yJ}o#Dr2o&fN$;e3IDk;as{y1}~ zIOpr&NqB!Ur0Kw`xMjG`U-WdQd6b&BS}Fh@pT4R_q|LwI56OVz8UNp$R8MF19Us&3 zS60R*XFAojP3f&ySju?(O`hwK;74Q40TUAIfu~u3=mW#u2Z$$&fU9gjf6EtDF+pfI zR>(O(93TSF@ii1xj``j9>hX;IoPT)!a(VCs|EE#}zT zG>Ep-VHUDPViBnX+&5r!H2A=Zf#{A>_%w9_&BuDp0?Wfj@Nz(4(f);b>UE>5t0Jh2 z$iA3GR1smNAj@*&4l?7<(jttw(tj;fIEBhz@8zJ@WxoP=+_94^acKu0J^L4#Lr{6` zEkFdc|1K-dk61T1&WjGD5P3yZf_`6)=MahZtlJ`IHP|4tT&=f{4X_Kr?eoPJWQ@7{ zH3d;XP-K}r@%*B=efZB$36}2)nxw|}Q~3R;+dd zxYETNK0Q5X?@07?y`&@!PocS2=%+>6QCi7rv8G9PWCo$re7NQ$0+P!yW4=1~ zf)8K)9CZ-dT8)EHL#(%>&CZ}J>uq+C0~=8R-VxF6<6j^^Kn$U5Hej*telk7vNy@J35f3j0sxz|iKjNS&DRS!qyxgn!+Z8Zkxmmn{TMY=RYR zk&-3`y>}nv7qA_k=o2j@YU$D7p>e>SVObgt=S!O(+6$)vnL1H=8ouhEK|1M!Nh5UiycwGz<5I}w%9 z52C4Gf1_2SWzuYXN<=1aL{z3tldZus3c_q%E*)X5cjpEJ{yeL`WW#^VFKxZ#iqW*9 zaH#Xid*onzn87_wn0_4q@8R-(B$r7_py^gS|J?Y-Ms==^%hdbMQC{(wZY#by=j61d z=*qO}>s{aYR4u{ailpkG@bKO7^--Hl`gZeHggvi|e=-K&{fn=t2wAbW3g<(){7DT| z>)PbQxg@8Zouhrc9ju*9pX-m^v3=GbpDu1(+Mkr3m7=Ni^WlBk;#bE2%F3c4C{H+= zrKG5GlQ^dPz7Jst)#1n3j^&{FZ28Dd4>CU<3uRt4OsO+)OtTv_rLS7tx1I_<`W zn!!jH0}Co`PkJfZ&l}Y3DZs(M!>fSq+xB9HHLT7cMBw=P_&Jlm z8}q@G@ooT;*Zoj`?q_Bc+#?Ky+e5{SekLaoODCd2>J%FHoV^_GIZz*%S~w6$%X9@A zjc!2R)GXEeqclipA0vRNLw~7`qs*uwnWx%v^JmD*5o@$9vdFvcUDJqEO{28k^sQP= z!+yNGwyCDZ_=R!$P>=&GvyIGKG!%A>?is|YOS4?Ux8HRTsHoD1(fiBPZ`$yHMEELG zRbZ--E#kTUO5VAIy$e-Wd!`Gw{&1AEi%fo{=Ih`O}Q;qlcH}(eQ&0 zqNA#@w6rAQ9XrRQ#n#42WTxso%)h=Cw)zWOIq3bTC539HuC3V;(M$t>VMq1Tor4T}G5vGs=!G+@VMKa(@=-alVmaxCRLy*QT>nPvo+srM>qhj; z@q*&OwPT(>)MyHYJjl11$LHUdtV(qeyr;Qo#oyERe0hVkQ=%R5T2uJRqd5BI6en0g z^tM*AcNz2=yKZ82#f_6G)PmGN*{%*h6gffu8cc0!yJ(3jqBpk?KQu}UXm01|wBmR1 zN=C|cby*3x_$8y|Sh}qQT^=O&%ITDLM@QP>IPQ;)Lx#w!#{KJU@_jR^?Ak+CFw0~z zS6J7MNCDG&IA;Od`tIM++Y9S5t`|PrLa4ndb04llVSFZCi-wP1bf<~5i)qA<6R?O2 zVaffa9@g8rmfh~)sE|(g(H|Z04ss_r5m{+>I(EJ#J(7*)TA%}+&yUoFScNsBC?$9% zOh>$KjAQxA#1+nOHFLP)iB?51_v(mZT;#&IsVJZ1+J=A&b}H-vkRH=^phXowiE>7VLf?&+C}WXjH}A+Oc!Ei^B4tQ^a0 z8O~(vXLs;6l8qVfB+57UjiMzReRE*x*NouN*m>ZjH`+h%Xm-UoCi`=-E`&43Vv8gt zcin*l(qgq_yS{B6ja>@Ykhc>JTZ!4xHZljM*kfbDz*VZ5qwV;pdxM!P1S zb`y3d;&lmI4;#4BP^WeE>Ch1UK!a9iMn%7+NOu%(cVdc1|BQWWbW)(f!i8j8YwK|A z*RLLk^@kJwPtUuWszvUGxqfbxzBW>spg8?jaXMD;*1~%vJ5%pN-#V-`W1m&Nn*X{N zw?fX)o&pZ)J^2$VK%6lZKo`uRg^26xROp{QO_UvZGIPqKsJiGOH2I?3yHBIn`CXi; ze#CLooN=^oswLu76|OrNN%B~V!|P`?c-(w9Hk=eKUxjt-@b zs!T7d`pvERPC8HcCy&X6=&CB^qpk_0t>aNgbgh)^F{o&PwZ=TE+PV6jWNUKx=HQO@ zND~25>TrGU^|)j1T2fzBS03$~zDUeREg-_RzXIk=1y2ui0Bmfy>dtxgAJ4q;rz&eh zw@x2@6bQuxdI$6B;AjH%B_Swi-4rr&+&Yqm!%giCsx4X|-j6vWS~R`h`xAZzdXw%P z5@*KcoBdrOtpI`pq?f=G#UesZ)`hwR?y#)!u{#}i6dN|*qy;uAsaX7)z5O_qD_`1` zLt4s$`qpqW$~-S$nfn2uU}yYi^xW3Zu;k9ZBDRh=LzQD^A!9@CcRmr=jw8a5frINM z1jxTJJ@b^`dQ+p0rPn?qsLwV27b~AQo&8QV((Y)Ommo!ZNAcv3vklt{d2Gy7Dym#~ z?t4Jg=?BBEl9v1x4(i!n?YY#xDNk#v1dx!+EjURA&ToGkV}@&fr$@`xSt&|DgeE) z!4{a~o?`|3OCiTM)Ps8>2IYKt_Lb=RZ0AXO-=Z^1?Bb1+$IVZTATPCk2#{@%2^F47 zfO?}6I{s>&a&AAQbk6rI%Y4f0Q=Yc~CeihHxSjKe_blVJlT05*??rN10?$G*Hc zC{fPWv$yZ$TA4Ns_vKIi^7>#t2YRGhVxJY!v-XXyQ5_-s5z}i2TZ;vs0y5PbexyS> zgRFlqxAzgEvcT^yRILFL>n*%e) z&JaTI#{bK>?t!o~GCd$}d_sNBwYmh(D<9uj8?&Tx`z-F}JgOZBlFW#}UX0=6R_?g{ zyM!X>*c!p8N~xp!sj_UXz5iM_K)Z?p=~W4Tuh}{#b9+Nf-hnai?8iND4hmM*R7*K-qJv07|pE=c%X>~gyg%LyfGR4PQ zfl2_y$*{5j38(;Sqm`0;z%Q(D;{l3*sO$N_*I6C2c_+6~XV&MI17yS8_jg0m(ZR(T(%gmGxaE2r zBc{4`BEg-NWrE<`t`*P_DA^OC+4t};6)%S`cLVdK%UAD}d&zsFYU49AYa8%PM(&j? zu`XOEuSo@S7)9n`M($OA??uENlmPM%)%D`X8~}H%O}8{k`4@Q$r_EF&H$D%nUcEJI z0QELL7VA#!m*ra#%vR*H^>KwQ+Tnn;`~iBy{E#2=a-K>@i#6}ixbObXVjp@J0 z8C7u(b=p7df*b&p@a2Mk*!7z7oe(eM`_{WhvC8g+c7)vRU!wpxTSl()$E3f$38c_F zv26-aS>1&~{{ZwMK z0=`D$mRAclD6tvXSbR6~>tR9ZwG|8n@OD5<>@eOFob3jhbw*G{dL(xXS({!ntM1dD zWtvksFLyfeId~CfaDrv-k-*%D$D~9LC`J@ezi;pfWLtsQ2rPdQn??SKFNgp+HXD|j zt4D~<0%`p%QDrnMa}ju|Rk?9A$4g-SqrJU!_9BVw49tM0C7lGO7+v|K!iZ^q58umY zV=iq5&ptr$JBSAejMe1u0@&m|f+nHlKxPdF z0GDfZhSWb);4sBj8Cr-%%dop=hk#}y0OpID$rC#i;WwkQ_qvS-8kmTUja>fle4tTb z^v0n|tOIvd^!7cybZZe8LiHB%{W5BuHUb>=1vRvuBp3Z1*Cd`ksKSIcsxz;?5_Ky{<0me8J5dP59-XU8^K;x6J zIFpHkEBj-gPmTtl24)A)bi^(k@5B{xU#?W{$EC+j04gd47*xB3d=e5l^SmezHrWGt zHk8d1Gwa|!wkmi~{K*v`iDPA^zmvlIuQcEq8Yjbp2Csf((=F930f{P~zBTk7@O%v| z)FPpqIqHGM*qc>t_23Pdjr|vn63v3>KJuV%yk^!O^rwamaupg$FiA%KhOp_I_Ai(} zE9z3cqng@LisR#WF88e};qyrnv-M~rg!k>p_M?Rz+;A1GT~@5lSEX5!?RB4Uz|D@(o11})N@$^4&|TL+fge#G#wrGqW( z2Sen+t-%~fjuWB%)PPN>!Mk-zzxB2=9;< zvR5x>VY4hax|De1Cwpew%WqvmPDm%wbg{3n;^mGb)Wgm}n0jGD-C#)3KBIqHvc9dL`a1jCG zNYP1nRk%~&&)^%OolY0o%K^sqk-A28s`nAar!j%(55UDf(daX>I?s20cI|s=QWK+W zg>=}vlnT0%mp;Ld>d^v`uCLwR@y1tZhb=o-h}!xDllvcXHe^7(6Y(cjcT7w~fuNTm zGR#@s_6UwMN}I0^G;z28i6SX|^9-woIP>JVtn_koz=Fy1IJR{@uJX>Z4{X>rz2Lle z{+-a1MDMGSSHLLg*G>6Ow%o*T_?z{-A2CSw-1tJrP55{7T4A`$0o7&aEN)z$R=4SI z#QKQcZ+@ zyyQp7dJ6vU={u^ClgmW9II#Ug7L}e{9A1{j13>up%b&#Bz6h@YT5F z)M6Q!atd|S|EEfL2b0AGX4~vErW*@o{--QC{2pY?ce1j`fJfETo=5UNj%_#zknSHc z4ayf)IekttWwl^CmF0q4?&KP>#FRcgKP#Ber&>iK%zX;nng=Xz3ss4tovMV2 zKL!dU`;pZC=+KhhPqI~0)1h+t-62TM$-g+myaI1VQq260<+u6whK{ODf}`p-)3Q|f z1W8EBmn4)B`sSI}dfv{1q--fFPlJC*pI&=`eKGi$h>poe-YeAzuHMRD8fFHfP0Uxti5?gZT`?$d%n4d@*$8H9AA~n z%G!QbV0LdZnl<8JbQnd2gm~OI`R!eMpJV+iY;4wbPBk*W(n+|nFZpUuWWE2sttOC& zhOA67>s}?jj}@!c!vb$ospvDzecm(8vu&>^)5C?U$rI0Hf<=|1p{EKR6^sktXmJ9U z9`far%E#KLvTIu<)6L4>9^44VT>E~%Q;dt%{=S}?d3$Tm%TQeXcSMz=eDymtS_bge z*;!1!2j!9g3^$(gB|O_oDX+1mY83se-+%nO+fz_X>Dkl@wQ2|zC`+Xg7rwiVI|k$c z?%(KK^oAKrth)p5>5t&;tv|^SRpN*JT3t5VX3gNj-J!A;Am-gPK>&R%o|Z@7g#_4x zA%yL=`n;#OX~?qh>*ev-QwXg^*C(@MxQywC0_aTT^VC5ya{R=8ePZ;_C(2-D-MRc$ z)kP=A>@(vAwGsi1>S650zEjg}_0&7L$HhrTCx;fKIR)F^JvCYTyisB|=G7w$j9r;c zAgzhUokH34b#H&FPPv^s%1)^SBLC(r)Uke-ndVEhU61X*IxvC)!r$f6VjMk`?RH-X zuU$N_YUx*24u5!JQ^Zfmgd)Nx%v4YKE-yY-)E(bd5xEfA`!oC$pgBcOszHyZvflY0Kj>}fHZ0F&=X!t`=yYtwf&CpMo| zmHZR_A^bOF^Zr+FwrfE5K+z^YE4zd4(8%8W>J0uMsEM;pObGVLn3O&FdX6WUi`C7V zMqb)AZq}K+rLON$Yd?2Hs0il&8p#+0NZJl{+PQ2ssHYl=h?t1;_D7mLiM-*`1^TMxcaRFS*`q? zKza%+J9OtSF%4p{q`)HKuV3g9R7lR#jFA4DKKF%Fj7&A?4ZBIf>bIc#{cs^4K2g4b zf206%n$V*ar#~idT>ZE?hzfxx;CNb@U7FcyJH|2#* zedq+DqzYc;8K`%u0E@S-l18x`z-3}vHONmvso0RpZ0rGq^ofrMRMg}S;aPODxo~&9 zRk#|k%hRP~g9((N#Ngo5KSGJa4MD&E3WT#RT3+ zd=>Y;!=H^6ADQ50^{WFZH_Y|9NQ*s=i3d8fej6Z}W3w9l2|)Q%2U$~2nIC-6@cqn* zzPZgAk0e@%uh7WB(b>gEI*^YAgu3M7Ax{K2IB$;cb~pAa*Kx7hkGItesJHuT7fk3K zOF3B?7siERKh!+{Hjz^!O#|Q`Pl_aszd=qZs%_o3&yTxq5v#REX`B(W+pp z!~3Wa;>KSjtbECP0AG9BPYQQ(8RE{f#<6`$z{p zip5BF-?QV`HeghMIUkUqcv+_!Ha=p^}uJM#qoFL*kWMEk2B(-M99~WETPI zC7H9ZV)5f5;ZLr>6RE()&$~vtJgj|gb%{NCRYO>>xwiT$Sv6$jT%3-XLw+f)<~tCp zt#&-t5x4TEm9PV|I2wo9{?f9MM|fM`suK7D&-`n#Vc z^(=3Tl8m$~s(4~Xh3|DMQVKUcOb8)VsyQ86Hw z&3xIUL{9mU;^brYoV+yerP1bU1pi!`!oeharZr0{X%vG;o1Z*LhO|#j?Mn3zQ4k;3 z?tWgzI@R6Eg2;*H_2_Hmd6CH$MBb?ObkH%yi2NmdX|wfuPfETeC6qc-1RfZK(X&## zLB{1+d6a7H$5qBv?}zl%+L^sSnz@u;LuCaeZCGmXP`kNTnu8VEeus7gm)-JV5A44d zg~K)EuWgbn=wgdRNWU+@y7hF9?8dG99x7`W$=;iJpTA}!Q$AB3lmr|79q!jj)x<6> zS(I8JmT^n{1)s7rfeHnTEK*#(O7;9k^`k`cQxpAxqM3^`zfAk{=v6$Bug%H3MPKfx zI;6_U_k5Kp9*@?j?=PW7%6E+cy&m`X3l59BvqfbhnlJpQKep6F`Zlo~@4EkJ0sWu_ zZF_BeJwWl(IGNxn1(Su+@|LP+^7Ffy_S;C7@Z{2Ja@$tZeyeM{WW7=-&{a6(OT3%* zkh<|85JE|Ax(rR76m(h}AFuWQyjd?W_fT8|_OtfA6rB*fUzTw5^(8E0u~>u+5|gon zx4b{*Z;#$@P2MrkpNZ^j|I^d{$BELU33Q&y=oi3b^a$GPH-FQCV*exbS=P4S-wW@^ zBz!S_9OHR=J6(EUE2=VC8`HaVzej_q{%UbMf#j`M~ku3Pvnc{6qE1~Hi-z-|XPBsqTY z{(9k7J%`SkCC*#K2uAlXJtJbw{mHmEVW|`hzOaQa)mxga^}J5m1^TRR0|hniZQP{u3} zbpHB#^{OxT+EyD#yY~GtgeW22O5cTs=GF+2MO)Vg+X;E79B2+uKuD26%y&cA*PkXdl3HaJr&w+lKfe^TFMjH zt39gBAa2j+kA6(hL_taO-lckx(gIp~vv5?q6s|4TkD4d17%kZ~DE}_{MoRn4Gdab2 z)|2gm?LG-|%2UKe9hV2BR{)DUH05{B=|{KA$|@NrT!!c7=$3hS;Zm}kMi*tr)i{|3 zG@Uq7q{3y@M^p!0(9%64)BNpHiT%l2H`g;+S@+wMyWD|x#jm-8?ik|s9fMNi zt4klg`CV%E%qhE?7b%j{NY=3mO`J=8cyZ;~=69j!=LP)v6@48Evual^*jd-#c-SB5 z4u;>q8W2eBObf=r+)KQ^=RYJ)O4ha&JQI2W0$HnCB5jvQ2)a#A>+R{5hTE8j{vhJR ztj{v7ztBdvZ-o=n9iEk;ZXbAUhRAE2li>3nt)^mnbB-qPtM?f%b6+K`>pO(cXXtmx zwi-ytG*4lBu#5If%6*`xKOCgFs~;}**%h^|<~5)r@|+r#-Y1N;M8SMvoUfZq;i`h} z0ZBQ^Z4e2K`wvRRf=scq%JLT6A6qWVzx3h?MjOL*DYQLm$&34Ege!D@6k6mYBaUHz zZ8(wCg{R@dCrcvM%)LJDJj;0FWj(^!v#Z<$tJ&{G0iIFKeD- zo9C4}z5Ipm+*30eiegRLO)KjTv*Txlu3o&}_0>w!rQ*+q4xB-{Ckf7gZ3oW@1~H6>D5rd?JwDtZ8MQN#3S2z8*G=##Inf8!YgG@E}kVt zKTL0p|16Vd8yXhJPc4FLk=g=$OSx@tz)x;XpC@XYox5`6O+`5$$%_f4B9&XI3*pHF z8vf@aS&gdw2|U{5QXk}~E;q-yrC<2|p}&JZe10J}Hd@tm>2=%wOBf7V=jMh~u*@yP zdL;u#g!JMc2DMOw!%`E-Rh%S7`{K!W5m=gYuV*Hw76)RgN|N|ncbp{*qb-_>xpEx z*#^&o>x&~_$~`{Z_J@~-*Q-a+DpknUi-9vAPU}k?XYSdShBq#+K#;CfM>9?T&~HbD z@*NPq*FH@bIH@ZU4#+xyXR7q^D2fc8U7+oPghOtNS~d7{jSo+u%-GLa%Rru3))&wB zx~``EvkdcBqw?TNc7tZkOA{z6Y@fHZ$9%_+FVFx=h_$;4BmL~ zWUXRj67-+w3)@!-#W)VM@tB<-)ta%fX-LJl1}PWb3qaq^5XF}M^Zf5m5oO*o%Qiw* zII|yejF<@Oh&|YK#;g7hR8K#?h9*5eoILL=^d77Me8; zYHw4i1FsaN3r64mS76#=BhBDrVyoVKLdCMX2dmUTlU(x*w~#N*;{`MwFL_!&oQAR= zq@6&RtTmkwj1XuiT4wNsxn35!R8wc`d-+U^qe1%`4f@nc$RqUIlMtLr>lsk=tL|Sm zOXIMWt=H)~{WsGm0T9<7PooZX z=2iFhJ+1xmDp<>S3Cv?C`wb4>^ZWVfzB*M1z!QSARjQ5D42pl8C@QAHCEri7#msJa zcFC~HYeCkDC+hB_sQ^q8E7h?U^tqE#a>tecX)jP zNadBXm}I=pGP*sE+vNG2N&z=oSOl(FzsVvDp zSIPW!R*tZ&CFdXW#)3%u=^;W81yJZF#Xr0Zv@ADDVFYilh zp4z3S5#9Xi3lU>9mR$CFw?h9f-WLl`)M0-;G*+?wi=sVtXvYl2pHDKo#3^ldiV>R< zfZgF^9KVRlo?y7#nC@B%+D0mGsQ-%0I4)I0l?qF1&IZp&n5QUZ;DRt6+W&x7w$}Kk z<|##9=Z?74rtiPhl}v@MxG8YHq-~Esg}yamz0wm{5-T%ThpT}~;-CnkG|w|V5PV5L z!CkT{&qnkLHcSo_Ye>AD9n^T&%tY^hQs>6YZks$G6@B-kX*Ci`EJh!EV5X|Xu_o#nO9dHN$TDf~W zqi=8;jN`odF_4_%lH#G!p{mt%N5mP>(FNNOfuk`Bk8cG(Q8ZPs-hUy)_3oT<23xkz~DF~cDVUY?!ftTH{&oy z#P@x`M##ud9kDr4P#JMBT{u7FA9Jl}^5avjwzrXU81`)n7!nu83$xz449Z6{;^C~{ zCQuTv>6>x4^2lc=mmxnaC}6Xl%#a#lko}xo&r=sh*kKgIAojO>b)TwSLFRjvsvjMk zLF~**2yxn$#Lb=px1&~r54Og~wcs|Y=X~ERo&G6C0S}}@OV1N)ocaFw+qAXsyT`)~c1C_baOzO`9u)j$w4s0EEqlzY8P48d=0?B9 zz^@HsY-y@I533GMtb01P2YxCzOh}PO5tY2-^;HZJ!yWC051cz2Bf4*M43}3be%?Dd z!*A<6w&ireMFqs__9RBXXF(210oN89j+}NDx{c|b|2@RP4B69|V&~PH7XG082J+7h zi4pRxPyohOr?0zl@ISMrc(y4MsNXMheq&|AL2_2oO3ginUO?r{x2=6t&iK>-zAXw#5U`J1$w_m1&Y0W&eWTgru*H9Zlj%&9(iuQkZmTKf`u1-8Q8!3RDt z0fM;llQ@MsR%UJ^0b$|=i?U%-;-jPiwxS07u^h;?cJAreI(zpet z?^OHDU^qx47hEZI%D*YTJBs;dUgeUsg?lqqi^xys(*NB42T@rclS9TRi|`|Fxc(1;e8km+Isqs*feghdk1q+>5F4w;J*Vg?gli z{QX%m`z7-9B=?=BCA}2;RYrkLRG=Q7=dWm2f6MHlACocSN z0_J)ZlVWd?;Xt~Usk=wImC$JQAM0{2g1~YTj;(?xJT{Fpk@S1#`E+oq&2(m zJL}7hJgiTX43EVY?eTFxRg@R|1d?h1a;twd<>mdHJxy=WsXFJj_xKq8U~u4N(6PP; zGda6j0g0ek0Kml1>{%x_J9VPjp9YKiCD#bjm19KrWy)}QONxFjZ<{Si)8bB=`quIZ z-_vBD+#kyyOe3G@x&?n(vjSq|mY)SFAw02x;!uHJ=3zZ*Vu&H#;U6WrQs~l5hxeSG z`oyHIvJlJe3xbI9J@oikZh0)xx{_0EM%)F?jHs}|B5zj#j=qkfeQQGxXl4CJC*&fw zMe1%kS$l%uKB`W5x84uyV!}NBij~N!!JlPK zrM%NPmh=g2l-UxJbx=V9!b6YH@``Jb+nof+yPlW}Z!@)I-TME^%ip}TP;xt9Gx$MG zUsZD-cXH%Ic7E^En#Cv5qM zh}B^2Yhmv{@3y@PTGQ9o_aK#XCL`>97f5`#J+IcVjDMg$_B6-(caH*DJ0rfcpm@dO z;!TPn0e7$qWw&LQ0-nPurKvHFA5ZVO8Sxvj_Dkbv=P%woxH)aHv8TaWrFYbVG@Ptf zPWp~)8}CJt#@egdf%1Cd)TC!ylHP5Rhe*Dcn5t7!n|Mm?7!mOx$dtcz;+`u!bns|%!{AJs^$fNe6TAZcLddvl_?5(4<+h)~2@j1w=Qi2IHN@G&(t%KSvAaBc3nu4#X@iZr%AJNKc8^24S< z>|!&U8~v0+0cmT*;#EjUiB92Svs>EtzpO8JvfbI*z4>^*n}*>Li}+}-MOi1<-cxa` zQld^zt^8IIlLcJ1f^!RqMOxKLo7u;|D{u}&lmEpV(L6ZJ&FQ!=sL=3d%msd-H)c*mz{Ng`Q-+0~(SSJ`#v zPk-f8D5>rgbMTCNT`W!DAZs5r|7mRCEA|+2ePv|&I5SzNWJpa|;xz4#mz9pHevG5} z50d@y!GlNNhsFv4Z#On?Rey~fApD*3HS;7fhWlwJSX9}aCsskK2)k{aoe&UD#AXkjjCztII`W_hw2ng`zsRS>dYVd8> zqtSl;2-sPub?>)-yGQl)8btfc^0iLM_eu(OH+_};gNQ`$)i1l?nkpjW48F$AeoLY4 z^#EM>G;(>gaa=mx$IWSX!=aXvFpa&_GX({G^^$9BDwc%8%5GC|4s? zwHW@?P+Hmy*@LXT#Iy8&nOELR4{uYf5c*kwh?MV#y4MGe^j}8Oe}%uUTdb#Uw9e86 z>n(TsJ=30(iQyVbgqxR1DRpi9soz#v+4Z}2Vrr=;B_}hCc)~nC! z7HzP2&3?SnlKndpr9VPl4Cb>|)he#sw|3`N73B>Db#R2W#>VS5b^tRqR(!aSH z@_H}wqipMtJZ%CCn}JUk_?gn7>8-p?t7|M1_UJzOV?+x&w4Sn~I!qnoneroVgs8R} zpxx~vRwtWK`8OXfNH62}mVfEdo&TTq-uxZv_lqCzRTQ$lNcN?&z3eIb+G1ameP6Th zMwW&UlA@4(4cU!-tRpExBHPGVvz5V!7>qHWn|Ob}|H0?FK382=^#jkD`+4qjpXG5L z=iJ-b*z=G!Z421q5&REI?S^)%;u7m5Mu3xPtRIqoQ|-bLNN!9F`3_ z+62asA^DiXkgkCsOD{d4ZO?(EfXt5t%Pywtz7A|<6Nr1of;ZSz>WA4`cwAt##5o#q zhnL58Cx>7l9%RSf5SX!?t3)ia=X9YJW_%%f*{%>6p$FA=hz$Lv(Ux-XWoy6v9)_Y_ zH}o)TAAW5G@~bWgvm3Tdfhd~}rbIPhDP}MVj6@N_W!U^k41Q zb7r+iQMdFg0H8nLj5gXm{I(UAo1Uu#{!z7{CQ)~YCJJ{+*!k(rQOxZMgt@`*BDzz5 zk7JzBkUj|Y1`;N##B=6TeI_ zSqP|MBflHCDPf0HheNY>OZgg&D&t6_O{aDZV zlm**5yS(+gHCej4h}=_i8vcGh|Ih$Xmfrgc23PoH@<5tW-lPN#1f&4Ozr3>2k_SUq z^V?`zCY+=3K`W7QLuJ)kJ^v!T(bW3NBF$=#aLqzn@u-VhBo1Y7Qe~6bc6SAsO*RK~&|2zq^?ClMAp7fEjk-(&lfU~?pqcbByph2GZOQIbv`_^-3J?C^fn zwv_&p`%%Y6KlO$warh1Dgi%HkAxMzQaz$vrE62ELOhr0MBPOEF%s=4R17~&;m&*wTmq{v9 zg}dr-zFTAMOXAe#*X=0bB32`Lo(6~JcJFnzP2I)3g->Et{p;V5yiXFz%2Im{y|X6D zn#pdV8-=cDWG(qqbujI(6nnnVE*X`h&a7jq=?y-C;c_>K%yJ6LYIVho3^0iys;|p#WTJ5r%Y7yFH{Xs|PJ~V+e>F6`GQPGRPw_f=Edo3Y za6Cz?Fl(ed1FrVQ^K+xyf^FwI&X+y4>*B{zorFf3k{uqUe4dxV!%gM2aSlbzX@E$* z8`4~Pf2P#$`QVS=m|Yj8w$i7^`!YC9p2^XicR$#GapFharCOma29mCIh)G9{0aS;v zG9=Ki5SA9VEqfB~5&zJCjRcTr_1vAZ7ORw<(z@Fs9x;BzuOCRK^(hWMl}QWUgi1ij ziDW+)|58Bn}5bnZ|gD%chnf2 z{%2=K67IE>ab5NoEh*Xq(5P1|N8)_U$9+JN<5Pce_X8$%rHwz5E zkaNneKm7|rlKrxbK?+yX>3Id?ya&7WO8%Sq0=&>=$KCf(DC%e zI6RL<@=xyU@1;FGEs!VTF?~@fYZ0~6@Fgzl^57;f3usv~()JEs)MIZ`9l3d$Ms@u7 z7CN{z`}m0*1w_iZ5#%91>*k`89~e3Vs1{%!d*fc^W)`{?W*n)0@4fEh%(@JmnBH#j zoaT~0QrFv8>NF)nNNd^Vj4krCR(1e4=Rkr>k zRd>Yrhc-@wul|C|fu~Cl(K0HNTQ%k1xo1Ijxuo_Pf8|*hkfb_7dp4G)!$Pv6V>I(U z4aV4+LFzpEg6eZ{@|Hjt$B~wu;Zk)P7B4rdPdnhz@2e-DR|J_oNUQxCKM5F-ehG@4 ztt&kTAoh>AH~n$$g+B3LU0ild?W=ER#j>2Yb|NxcC2c{VoF zfb@$`8=uFVxI zl7rd-8vnp_-H3?@R?J$dK10 zX%W-vHRE6oUW4#oMFJ8H=DtG+vDm!+2awq=@ES#5;be%zI_aM>i%(7g)!vtbZ(W0a zjp|mcA9Am&A)!P?|4!7=B)gWDiN!))FW<>{qFCOr^3Hj?A`>qhLUWx*)SN=MkU_=uGint7+?-PJGR@PPr0Fq{wYI-}uA?C0?n*gj=7X8uM{6H* zHmAl9!`2#_s2?gc$hq*JZXiRnxcjvo#n`T7(ymBbt#v!@w{#Pn21@RRC9J9S2r>R5 zavmYNWPi+@l&LEqO6ooL6{CIke# z*YkN(6!?oM2lSk-xu@6Z2RJt!_G+@8y~WD!J74C|Pk$Qy1IWtVZ%tvPPG7{Ey(4Nz zly;aLU{nlW=RPc61%d$B)BQ-aCEw)T8TEuZS$I#IOyXH}B*p0|a%GwLEr4zGC_;5* z2~F5Dh_4NDyZ_wqL0V?MMid4+B{q7_UP>mD7=?eg^1Pn+BkAnd@xvJ{dGn_ycmQ`5 z)RvY0omi8(h(Dp~dN#xLl3ELId^{8vB;jjA{0av9z?uB z3Jrypc}B*b;xScnbzj#M!#+54QWyw|(@oS-;O^dbs;}I-a;@3OTZt}}zdHJ-n`#Co z5&=QPa|zOWRNaGk z_RA5`XOwBi`Wc_x+fQ|2ndq9nMG#=vx+0(-z~Sa zgz4kjcsd{5L!Nw)<~O-&ZRyd59w?DnRG?;b@X!@%mU-!|Z|?^!O255!hy_79I5Sozhq;5~hp*9^uzn>v~HS ziXv_|sh>~SOUZMxTJ>23-^)Rax;YK6j}QD{IlsPYHcXLWM@9Qe+}WD_4SlmV=F_HpJA9n$$*`RH-4wEp>d)#OQB=&%(si$v4~L%Z>A5hB&x+20 zs>T#qM`Nc!`pngLkFL9t-k=LVUYRC`IQ7U6`q`@y`bMmto0hax^l5s!C9WI{_5DtmZo@H}@6Lu7wOgL?OG|RL@p;`zrj}?@$QFW@ z0dtPekkz!mx&C3*nSoYM@3_GL)IUMRi!_=7tQ&UkwYB-v>xF!`vd(pExhHv#f4Ujb z;T$R6XMwXGvka3anvmWWWTm2wS?BlA=}di@a9Rp^o-z&U@J_gPbfcRwCyS8iYn;o< zZ1kHqoywxg)bSDeC6~%zo}(@H#^LV@4!t@;!dQK8EhFb{p1WltU1Wu1!Ey?~uAZYwbL zk`kZnFK5c+WXb%^InLW^S{=VsaelJY??${Bt0@{39x5o45QYng;?uR5(4xmnv!cpk z-kiw`9FZM-bteB~R zp^HVkF291bn}km+2=_~|Y7fR=MPuR?VXuw3jO~o2&|$NC4gBon9$9*m)j9$th_CDF zba_w_p{Fm;wsJP!p&zL*frxl6Em}nI} zfXL2jz0ZA%fllyH4rp)$96Gkpkyq+aQ+DZRrXkGTw;SC%E#uij!`}%z$19T3I@VwH znt+x$7+**zRba+MtF`;7?tL4BhW`N+LD&0$*-?p}WO|I5isr33fXgR9!xz|6m6C}Y z<(*2{71!_2O8+rh&97}xu|^>1vUV&qW)e!ZS+SIwt#Iw2|F3eqDbSX9Mj0t`<-ZT5 z^RtP8Wz^5{CJ$S15~0(A6}J_ocnidG+$|phwm?<>`keruDKnXg8#NoE50Z~sVvcH0 z=3&--GezjRt34X&g6%7OHT`^*O_W3r>nff^=t((!Vhc@HsHgU-o7`>sku)z=Mx==` zn^*Lzs6lY8r5Ljocle+SR_4odWKI?KlT3A-cE}6Zg4Ez|Ut`m_c6cdPYVsmoxbvIG zBBeh>X z_X}C}fD<@)FhFxH?-&{g-t>Fq};-;mN46&B4O5TP*>ry8c%m2x*f>W)(s|=@9Qu{ zW3?0R3@tB++64P6O36I+05wCu+AmeH3bci!7<_{#>?{q>ar}GT8NzW=RUn{!f^BRtm}42Z*lmwEc-Ld;!ksxGT>L2v3QSJhNn z;6i*7R5O_zIRoD*<=Zy|KDk+dPP?W1&1mc~E&a?HZe4%d3g~O=-k~}F?x44y?Lfb4 zk>{FH;!Z_jWm_>$Z?0hFooEvbMAp4LMl;Y#a?pfeOOj{X~l7ht%f z!dRhv5DBY@*9I2=)#Zexm0PZsGRc5Jh|Ij99D;Kkp2%baG^$-fn> zRDL*2t#4aTNWQ7VU`q3cMN%4jpB~`TV3RZWQ_9`&!dOlFl|Neb(#g(l9uj5KdJiA?EA58k^bk5LxGdcb1142_ zO7zdsWiPi~Bl%)shuVQu%CzPoFM8Ci9rjOEJ}h(Iheyv%WUctFHwX|OyHm|9H{+>_ zVT4@w3slV>yEdpD_8ol3EhL5fzfqk!CGDYIHQ@t0K|Awt^TLhmvl=#y`%eG`v{ZiC zHJkp?9l7-@C8>I$gi3%y7Rm4289)>6LJxID=S$Q)2#zc5p_Oa|_R-~o3GeXGiOG4) z_!664cf+ClULgX*K8lqpsiggu(~g(-w^SYoyza5tK2(3ehj}=pQU42rQU?3J)9ldH zotRzbQsyXuS}EAa{pwlgY7*=Vbq~-iY7hclItp;L3CEpES!iEFr(;1p_qGLUJJbpT zy^KpM4mOQ#F=FKB_Jqw+eZ(1lTV^`ce$mr@&#oKB!gCP0KOHLEHwRTXDA_;MDZ7qS zaakoGm_`x15(MaVl_Mwah}<+dv99ZrMu`oG<#L) zL?N1ImHIa29Z-0ck!|Oao8;m3DssXHnfvnbWj*usoYv*@dbCKw8w8^;Vu(Q(34 zrgQRzhikO?x}ILTA-6c~TAu%+S?@_zU?`u0O{+}94%g%ZbwtQr0Zw_|(eo7s#V#UIc6`#vEgD~J$Kbnsn$I%OmnX|N*qL;YxT1d-51y+HOv z?2SOHL@c}?+bmJq-hM0OKmXP7>e$`(<8=NVr2+dv72q7_M4nT=+gC-&!}i76xMHe^ zvo_i~4MA5kU`DA1)!3gsA{ocFZDnI6Qe(ImRE&q#Kz*`OT96sA7}*5*e^6e2yF~^2g$y(b8|T4=A6i*6xaC zOh3;^s*wec4krqCz+KJ*(*mFxI~-X(B2})!+y)m;oXVi81&G+HC^^@I-^#zWGvi!? zidT9h-MCFM>dFneAsw;)-oEc*@ zyv>>$R7`n!d5YAn?{FB`d2Uk;GyUYGu5%}()eS#^P@Kz0YQ5K+Yc6Fx2?q22ePOLF5z@Vq z&;YxVVHtI*-gPqohrSV`v1A5mvmB^mHU=#)O8;<;+;9OG<1_^tbz{bbo*)5 zG{C&2;r9VWwP1aVyDx{7m>F$WdwW0dyC~}G_KHT-_MM8HPNx#D{9D{7u^buq*zm-% zV4yY-=BS71g-YRcr%d_)cR1u zT@bhp8}m(${GlDcGk3PNoic5p`ttn>D-DUd*|!D)&Y|-VKB9grnVNQjw^V`sv+>o| zE788=4N$Mz3Q*Kf8F9VgU9ypsa&X+74giae7)WnOIP)4n`|QlXq#Q4AmI-@S@fxJg zm1%UI*3y6PQ9F~&(f!Tm!#C4Me%`b{$>1LN*=98!=u$F%t!fqmlYS^;e%R|jUi%8> zgD`=#G{E`eqyL~VwNV~W+i-?zWGr99o#$SKO7=s~ohqexwTDLzybezUA^)0ioB5lJ zAlKw%Ef`HASQoQH_W2$i?*;Vgw4D!ty+C=%Ir{0{ya#uJ9Zut|PFh#eVLfe2_n&@} zDu#4M*<2rJD(fh~F?B^OOz`XSSs8uT$s4P`EmAn-4NZ@Jy1Mu$o>ruwMOXcbflOSv zrX{HMJdvj^=IobMt`GT%PnRDt{<0)-UvT853pG*jBpn-~oF2SRty$*pCe}Jo1X9bB zG?P~?Wstj~Sv#e$LFslz=4kj=-{BH6A2yt!Al?A~dBHJ7Z>kwDZRs$R9#uyhnIU=C zUii3e^vs#JH$krT#r+Xzr2w54QkMjnCKf6#XCfUwY%xt7HFyMuzboeRLUmjL^k&l> zD^rHlYm)_ka+KVrikR)+RCFO|CS}{%}k@x31RZHPWcUOHjkT^GCAuQS+i~B+f%|j0!iIDNj}%=%LOPC#n`1K+h6idR>SR#DnFT7riF8~Dm&w~ zwO8`(jDGw-@$?jD%S@G9D)#-n)5CH-VAbEDWud!&vi98752gcy%0=(qRPt4Z<1S{; zlnIqGjW}7s)6iz6Ysr8?8;HFy88YNCx;A|`(z?sl^$t?R>+*>?Geu1-Yt5)5-b&F=ipBYLDH;v_H6Gsl=6oSM&Bodc z)5d=S8IPZ%MVISVOAFz`iz9L9v?+`}Egle4-MVw*)r)=OFqfnosvPe|O4W_6Axcxr9j*Q@6x z7i_qU4WRZDvaGwg2M0XvMPr-4`2~vp1-0DCYg^RkzkL5=a2~&pc>qlxdGa_K(+lG0cayDn@q`vq~TgxP7v z8gxdcBqQs_1NwM534S7G3L;^*h#%AmYVWHmI@SE2JlW|`J6FTEpFA01V|>AW5A$Ps zm6kRt)C{NH8xq?Wvl1 zkB4)C))8B|Jl;!54sV@p?iD@sOTb)@4Vxui<9zKyL(Q}kQ({Ct<_*zQFg-78_m8y& zlpoDGmty!i<$)Y|X3>eKkK!4tZL$w&G3=XxH^omYvqm4yq6xT_v3H30;Y9;Ts*z7j z@=Ar~tWf5IfutLCxG|^pcOziP;6nX%VRz*d(*nfeZqoG&M3^%r*cW?^D8?sCpE2?&ALp(XBRmb6=9r#&g} zJ_M!obMT8@N*eZwm0hwVBf5by;=5>ec*uJ*>8O(g)B$!}3tb7-!@k-~a?9V=2yBs$ zHpOV9d+k2oE3`6kz>WDJ&mx znnLohR7z6?gBUIPV`X(iY~^zDv?@E5eT1%XQwt2k-z%N%a8ueh%;tLkRjtq0D?rr; za90aFOBATS1|KQk8D3SbQU_bSOm`Y41`-D)M%HQ{Jqln0>d*Y1GtadD)wa4Sfc&-R z3G2|ozW;Ng6a{5HH{f70GmlvH;aIBzGTDapi|K8aEZYoSK~)Z8@-XWV6A=8``xR>_ z7fS9-1%E@#=1{vsX)@#{xwk|la1+{ci3J%;Oj3*e#g zxU5e29?u6mbLMr`+ANQY9^Mtn`Unb>!vg-Ch)(@%fafj1w<96iLQTPa*64VPNXq0} zC2)p>?n>svUPuIN_(VMN)rYUrjR`}5X@!a%P%ypSYAc_UPu3@)6$;j>3IxQ+P5s%1 zg(N+hFzM6n;a~)t;4wwCdkV*!HMBiEiQ2foOO`2Y;5&pzh;W`eJ~9hZUU!A^mm387 z6tp=~UyyYixS>Md{g4jr{Z|u{7ICMhOR)QRS~=i^E_{$aKrB-nc6jgWtZz4bG7}sZ zU)_Ek2Thtzj8hcJG4G2gA)D-|dCxAX{q96mO)>QZDA=1OfODw3J_mkUQ~CwNHKOpJ z02sO@#VT2wvo_au_T)Skhs_7f+^0piV*&lCt}D6N)a#pc_O(lsFB7fdIm*xfJ=+mL zL$o9-Cnr>Q0_(3IjY@T)O}F5{MZy^5e-iS3eX75K|qk7jX1ov+CD&q%la3!Zl$5?H(A4m(nQ6o)R54d9+6j0%z*=#vIwSp z7MVZXuB}sU=DU+o(-#95R*M=AiRfX$JM3?%$DYq@#)38IX~uBr7xbS#7o{49gYRdrh0NxIxvlTufGDXNcm? z@6J#sNu7j`?QFU9fpI=or>7^}f!NA0apg|jyh!zz+&gqB0{k9oT$4l>Y!)cG7J~2Q zWe`Pys&#l{akEJC0p6sD)zg4vhl)o&r@#AEw=DZk$ud20$h=E?>7DjQxqrB*-Mt7( zd_=L{Q?q@^i);<j$T+N9kUlb01#DUwN_TvYSyPVHlD&QWqs&mI=WYdQ{8&fR` zcA_PI;_hoxm)WpH_WoPbSa;u>LU%vXGmaIWKP5b*j>p!Xc^m+k*08Bop`at~VbS5E zsh&h;m{Dl&c2qz51t4GdG)PPraDS%~?^$eKFZ3yaed93#%*>khgGJ$#5*RcXj%u3(RBcV)fRA3g>_+7k6&61M2)HSW zVfA5*3a#H~f@HNx1Gsz`aAC#zJ7h+Yi2HIo5P%mVOGq)>D>y4mb0@Pb=64Gx=gTqx zrjrBiEI`7@I&Vmnz}mifpNAI*2g1#d@b!H*_)gHY``e#0LMi*rsEFC$tUi$daBpCp zE<9}2fUX5U0&p{Wzg;gh#0t7Dx8jSb20%Q~r3ThXW}?nu_uyUm?Pc8ijo;8pRA_s% zJV(kh#kx@r?$&k_I{n zi7n(hK^vEPfZbK!PcMMQ20x#Q7dym#3B8!@Gc_yK1gPDN581s5Sv&Zx11Q#xt6pic z?P1XRS8ZhAv`Cghg`Z&Pm(F&h6q%j$plo4C&~!|8(0WU#Pz#C&?f4Szxv-|wlY`E} zn8nR2q>aMo<+Hb;wU+!Qu(Gf1N-$LPBBV7?3FaF3qR$ojJ3R$?xDt_HZ7nObOZ7?e zid~d>hTYTWTo|g(4S7bZk>x%~Ul<0)_VT)uFH5sZ7nj)EDZvyptFh%PzSd) ze>`4vtP}=KnJ0&(Xmr`4lKT+aU5<=J4xf|DhDj@5Rhzd-n9H%D9Lm9uLjtLEtwNhx z**|e%DAxP~(l9U;3}You{WqIvh|Vi)$`SuxG^G6%mMxGf0edx2CjraTw9uwLT}y5^ z|6*lpx>)`&svmo^X#u+arXO9u;=WOTkaJ}B9?LP3s8jP^$<@rXr{SXIOEd4etHEs{ z`VaGkN1|$pq$tB&EW45FOCDNz(hbf==1BkiciP->`MDnM1m4Wxy(Mp63Ce}8E15)I zqG_+yDjZDi&2lGNrID1u_8vP2VLgdm^A)wUR26Pgezm_Ul<2dKVZV>;ws^QrtH(MY z*s1cUo!~6RH4cgB9@#b#Q#)*JW_!p&xVU2al238Ft-YX9IC^e{b_I?2j_ZV#!h-eW zb_j0~O9VsO{ZKCl0U?*%oB1E>+~zQ!~Fem*ho9U6p!*8-PQs1p`yx< z-Uj**qkxW?QMp2B$a=8u+HQF>HZi|X!E)8|85FkL%@_)un70p&&t8;8{gfiStxW7= zt>w98gQ~L3>Yp8u`UdI@V|zI&bWpy}TT-ugro3nLV6QTvWhENf4|ioCIqe2W&jm3- znER1BTHvt*qg%U8&;N1B-2Jwc$`P!_c5nX6OwjbKGo!>vcZk6JQw;1-@df|P{rOMW zk#0oU;hN0Ke#3KxjA&M<26Redv~iC@j16jGVTEFW9~y~u9k8zq5dI@MZ+ON<-S--Mkugt_=ili;~cS^agvDlL0^&gV_u8}4U-2Ixyr3MUd|*e!mc~c;sfEheRtf~ zUi2mzkOj}EOu}-5 zCi}@+M|r9BY3GVpwB-ynIT%8m%nU5_3-h_#Gs3K^7)f^W6-7vD&fQ9r^dt_)_bZCL z1UDDdtZn3sZfi+d-_^!|D-!UYW$`&wphOjTgPJ@7j!BKnc=UN+4x zqeY3E-=Pzr76d0_%O~v)2R#x7UH73HZEv-EU$c=s*sk3$ZVUUtOPz$=09B_K6!$nJ zgZhgugp2xrVh{zL0qma|zXx^}*=K%ZBx#NwW!M#DOc_D0k`P6399WIa<1s702*ZXP zKUBhUnI6)+wGbNjn+MF2u~L0xpt-?1T+yrX8g-JlMHg1&c_|F@8*igu!axuDBffu8 z^wJOGZTHe+k1eHypY50ft&{o|pzV^W>)V#WlNNCM!(K{g;5mci@MxzQ>0u_F8K4%x zi)>glq<@jZ6c78FFrNrxw?ZX5uQe7(+bu&v0ymlMYZ~zT*iZsi0*`A)c`^x_O^3Wl z7U{NPzE>=TuosoITw)2O$X^`joKyBIfyKPnZ2}1(>5P>e@Y3-fR%~*JLtH4P&7jiK zb9r0gFd8r3)Rj2=b$j{8{#MRI%lySrnE8au3qJD)+j@!EXjvFRp|3C-V^Mox&fPRJ z;2rAMlgE-_gsP&%AUO4t$mH{vWm|A|UqeDR>wR1{m*&?-cUT13AquN;@4w7El>QR@ zpjg;V2nt;snt}y4DcimO;%zJIzsh!hA))#Kmf9ZwvFMPwrURG1#NM#S>I0>Hb&r3!Oe2O}#Nt3U5rM=^ik`-87 z_UXL|)`9H=$z>qQg#|R@5{2(|Rd87ULAP=*p>`B1xRF*#iDJ$#${T7hpm__kKx6=b z34M|!l}PKaNZZp~XOq?y^KbVrkcb_KRJ;-*@02l+VXb#3ID+|5tbz$3+f@KryKMZ) zvemf9a`b4?!jjs%SHK&(tAx$|+eAWC3nFb54r9MbveO)_57MbK(SQwrErUSR+N6Uu zZl0hoglZrqx^WZ(S`vjXf`pqClzNWjeTG-Ino>Rwd^pCR6(m5M)W2J2od=j@c#2rnpU@s9|7phc0jVfrm+9SXynv<7KjSC_CR)GSi zIlw##axiA{F9_6Dluk**K3kY|!@Wpr)ktefqHraY>qb?x{4fRveSDJs=QAL>i6H$M<*-6#nv8&cinr7?>C<=l! z9zBaV`7rDA00tuY-^-+14(z=|pU(kk4iseKsP!4Q^usGn2E7XTE`*h9&j+wkSwvm&tE8VhgTOfA(~x>hOA{C^FLsF3*ime>-r3WZZlEa|#A@=eky64CFki%X_bF z*rKVKSxdt4A)T?_*qmB{?CSVHT7akl2C=pN_Ef|W97dvlqq9;bK)B-7mo4q~zAeL? zmwiC}Yme0b5Fyrx@(!N~up}S>>n8Sc4;!4tarerJeye+BZXh@q+Xdv(-DMEjO9K-3ApAEzGvgALfnlbLbArFyrLd{u#jYC2_ zy)qBO=XWo5&TWvHa%O?j)WV24kX2UP7F#zdK)KGZFj?xv7F;}g`u+D4SAyNmv{%V7 z;CN9)ccQh1Uny=}eCtd@@*wwi)hF~IqR%@VfLDhzQgL@UPNb~}UGTdPfr^lX%Q(I8 z(`y<<2gdh7R=_l-%SeiNy(_8lL}nRlkdX!>SiaKn?b2t?6nopY1;vA81*pANI1`{i z@EC#AEAz4%+~CUi(E-~Q#A$bvhOXe|bVg@LiG1VCl0Tm8kWEBK8n)Ska1Mc)(RM9J z%H@H{T?ums0)5S$Tj52lJOM$V?KbhU8c&fZ7FRTLy1k?k9kXpdw#zFkD;0Ih z56s$zy~9;ND#W;rg%4l-34lsw%4m3#2SKHh`JfS8V5tG@kRT&mduBOs+Wj;O-o`mj z(-Jvi3}{y$4l|j!L)J|P&TuKwVn`^p~6ovlb_H3Af&!2M~uX=xk*N=Z&j#4_s$!1^`2M6eVIF=LmbN zwE5iZe@5h!&3TY@+M)0n&M*8B7^^kOj_w7$P#)^fijmeKG;UIHp&((rGc*9Ko;Sbl zd~(l;>=}L3mz^RGH@Ho&)mBsjU?6vYivz5Hk7%pb9rpmWgK$R8NyuRq9}ZsqHg5=9 zp89jc?HNVVY>8I)x?6-aX7H6!{}P8&1zQrpoRM!pkIJ?uM=N3=HpTL*7lZR_0HXMfcPv1&>>K8;o|`pM#npPnp5go63Zre~Mcj%@ZR z`Z;9nwUf*t3GMzlTr{KPTHwpF%m<7+S@_(YN;J@EhT|@*H%G3deP+v$U|I>TgyeUA z^=LkM`4n17b?a4_Q1J>lSMh4p(A8+de@?%Q{e6oh;DJ&7YL z51OlMS_e!Fcbh1+as~zio|d$(~4|_hnn( zF@LNQc;JA=*G57V;lmF3R0D53KMxJIoxCH-w^3kC-Vjv}$`oSg7(ltX0B8-SViHh~Z} zdLbc1Id*{=?iReJe)19T0ov_iBJOtVev7oTn(L5T9_Z~Lcu70>kd4-jEyPTyC`ouc z*q4QEN7UiD{JtZVm-Fb64?neF92$|}Qp);c4|AlUm1u-nWry{K5m+;j#!6tB&L>0w zP_SVZ%RI|iY@ZTGYUpHw|7lF(1P1!{YV$Nc5ZNV61L1@3_oM(o83@rbfc*p&rhmJC z3WLUa8z2&3u@~cLr@{V1kL;3P%?D```$?u#{5naX=?0+cbz0kIeH8g(IRt!uZ+&&O z_w}P=8lf}ZfZg*z20jHLQ%ADH-h~BG@_8Cl&VfdUV(-4w5SrJ7PoNJ2Mi4v)zjjLt z^kQT2KY(M&o%oSEPZSR>5IqX;TMtLj8y>?qF;}QROL$~~u>+<48K!uKGZw`a&k#2-g(^S^-#|Gr`RTwZ53? zmJU4XFiY$GBU|zIzoMlb;Fuy>fYm+S=0xB`3s4mt3N^4xKSx6%(TWHy+A8)Tlb)=m$j?DNO<(z5;$GO z#LhG1HngYEJ8x*OD?=rXJ%D z92ytY#umnLloy=&$TQ}DiNxpSEpaK;58jz&KyiENEkQ`UZZ>BD&`)%81n|2*7wl~Y zWbi^wl2zO@ja;}3K38uXKhC8Z`9iZYB{`Xd=tib&;O6)HMW6W>L?Vt_*~5U3z#Xn- zFHcqMBm04Fe#;s1&O|TThW5JYeHEC$e4*<2GjzlC$3MxNgFsVF_Zlv_2k6qTAXCmM z;8QM3i5Znn1Cy73&Q+7L{67(o9^o4&kqz(MNXdQA`nVg?*l zW8Fwg|4|eqHq?V20Fyve=r4?&s_(Tl-M+)HRkLI*N}5;DKJ6?YVYxs+S+zb71}_Ll z+Y=q7ATRtj_su{ks<%_T@Gf0;t={{WSL3e-r}3LsIX<>}H~SeylefIcuC6XL zI4MVF7s)!!Q6zeNn2~G#!YQ%%|F&M3ZT69$KKzojUbC`9y_ee{Oi$}S4 z;fkchMn*=$MPfrQlJj90Gb<}cDe04lb35Va83}RmV)b5*Cy2TsQG|_w$BwsB3KYtc|@ zIZMoN&P$xK$8&9SiAsVJ)x@sc6({|N>&ZCzRiF}|hE@s-xq#*(;X(wjgWs& z-ieDv=CW3)RUgf`+mJRYoaA-}`8;%5QcS{XhRJAU2)BkEuT>D zJ?C!(%x0)Nk-^_Te%-w$jFY7Y&9kAyOp=C!~YMCKzF|Y literal 0 HcmV?d00001 diff --git a/example/ui-examples-babel/babel.config.js b/example/ui-examples-babel/babel.config.js new file mode 100644 index 000000000..2984e2d47 --- /dev/null +++ b/example/ui-examples-babel/babel.config.js @@ -0,0 +1,48 @@ +const myBabel = require('../../packages/babel-plugin-styled-resolver/src/index.js'); +const path = require('path'); + +module.exports = function (api) { + api.cache(true); + return { + presets: ['babel-preset-expo'], + plugins: [ + [ + myBabel, + { + configPath: path.join(__dirname, './gluestack-ui.config.ts'), + configThemePath: ['theme'], + filename: path.resolve(__dirname, './src/core/styled'), + outputLibrary: 'MEEEE', + }, + ], + [ + 'module-resolver', + { + alias: { + // For development, we want to alias the library to the source + // ['@gluestack-style/react']: path.join( + // __dirname, + // '../../packages/react/src' + // ), + // ['@gluestack-style/animation-plugin']: path.join( + // __dirname, + // '../../packages/animation-plugin/src' + // ), + // ['@dank-style/react']: path.join( + // __dirname, + // '../../packages/react/src' + // ), + // ['@gluestack-style/animation-plugin']: path.join( + // __dirname, + // '../../packages/animation-plugin/src' + // ), + // ['@dank-style/animation-plugin']: path.join( + // __dirname, + // '../../packages/animation-plugin/src' + // ), + }, + }, + ], + ], + }; +}; diff --git a/example/ui-examples-babel/gluestack-ui.config.ts b/example/ui-examples-babel/gluestack-ui.config.ts new file mode 100644 index 000000000..886f03a6c --- /dev/null +++ b/example/ui-examples-babel/gluestack-ui.config.ts @@ -0,0 +1,731 @@ +export const config = { + componentPath: '/components', + theme: { + aliases: { + bg: 'backgroundColor', + bgColor: 'backgroundColor', + // dimension + h: 'height', + w: 'width', + // padding + p: 'padding', + px: 'paddingHorizontal', + py: 'paddingVertical', + pt: 'paddingTop', + pb: 'paddingBottom', + pr: 'paddingRight', + pl: 'paddingLeft', + // margin + m: 'margin', + mx: 'marginHorizontal', + my: 'marginVertical', + mt: 'marginTop', + mb: 'marginBottom', + mr: 'marginRight', + ml: 'marginLeft', + // Borders + rounded: 'borderRadius', + } as const, + tokens: { + colors: { + rose50: '#fff1f2', + rose100: '#ffe4e6', + rose200: '#fecdd3', + rose300: '#fda4af', + rose400: '#fb7185', + rose500: '#f43f5e', + rose600: '#e11d48', + rose700: '#be123c', + rose800: '#9f1239', + rose900: '#881337', + pink50: '#fdf2f8', + pink100: '#fce7f3', + pink200: '#fbcfe8', + pink300: '#f9a8d4', + pink400: '#f472b6', + pink500: '#ec4899', + pink600: '#db2777', + pink700: '#be185d', + pink800: '#9d174d', + pink900: '#831843', + fuchsia50: '#fdf4ff', + fuchsia100: '#fae8ff', + fuchsia200: '#f5d0fe', + fuchsia300: '#f0abfc', + fuchsia400: '#e879f9', + fuchsia500: '#d946ef', + fuchsia600: '#c026d3', + fuchsia700: '#a21caf', + fuchsia800: '#86198f', + fuchsia900: '#701a75', + purple50: '#faf5ff', + purple100: '#f3e8ff', + purple200: '#e9d5ff', + purple300: '#d8b4fe', + purple400: '#c084fc', + purple500: '#a855f7', + purple600: '#9333ea', + purple700: '#7e22ce', + purple800: '#6b21a8', + purple900: '#581c87', + violet50: '#f5f3ff', + violet100: '#ede9fe', + violet200: '#ddd6fe', + violet300: '#c4b5fd', + violet400: '#a78bfa', + violet500: '#8b5cf6', + violet600: '#7c3aed', + violet700: '#6d28d9', + violet800: '#5b21b6', + violet900: '#4c1d95', + indigo50: '#eef2ff', + indigo100: '#e0e7ff', + indigo200: '#c7d2fe', + indigo300: '#a5b4fc', + indigo400: '#818cf8', + indigo500: '#6366f1', + indigo600: '#4f46e5', + indigo700: '#4338ca', + indigo800: '#3730a3', + indigo900: '#312e81', + blue50: '#eff6ff', + blue100: '#dbeafe', + blue200: '#bfdbfe', + blue300: '#93c5fd', + blue400: '#60a5fa', + blue500: '#3b82f6', + blue600: '#2563eb', + blue600_alpha10: '#06b6d41a', + blue600_alpha20: '#06b6d433', + blue700: '#1d4ed8', + blue800: '#1e40af', + blue900: '#1e3a8a', + lightBlue50: '#f0f9ff', + lightBlue100: '#e0f2fe', + lightBlue200: '#bae6fd', + lightBlue300: '#7dd3fc', + lightBlue400: '#38bdf8', + lightBlue500: '#0ea5e9', + lightBlue600: '#0284c7', + lightBlue700: '#0369a1', + lightBlue800: '#075985', + lightBlue900: '#0c4a6e', + darkBlue50: '#dbf4ff', + darkBlue100: '#addbff', + darkBlue200: '#7cc2ff', + darkBlue300: '#4aa9ff', + darkBlue400: '#1a91ff', + darkBlue500: '#0077e6', + darkBlue600: '#005db4', + darkBlue700: '#004282', + darkBlue800: '#002851', + darkBlue900: '#000e21', + cyan50: '#ecfeff', + cyan100: '#cffafe', + cyan200: '#a5f3fc', + cyan300: '#67e8f9', + cyan400: '#22d3ee', + cyan500: '#06b6d4', + cyan600: '#0891b2', + cyan700: '#0e7490', + cyan800: '#155e75', + cyan900: '#164e63', + teal50: '#f0fdfa', + teal100: '#ccfbf1', + teal200: '#99f6e4', + teal300: '#5eead4', + teal400: '#2dd4bf', + teal500: '#14b8a6', + teal600: '#0d9488', + teal700: '#0f766e', + teal800: '#115e59', + teal900: '#134e4a', + emerald50: '#ecfdf5', + emerald100: '#d1fae5', + emerald200: '#a7f3d0', + emerald300: '#6ee7b7', + emerald400: '#34d399', + emerald500: '#10b981', + emerald600: '#059669', + emerald700: '#047857', + emerald800: '#065f46', + emerald900: '#064e3b', + green50: '#f0fdf4', + green100: '#dcfce7', + green200: '#bbf7d0', + green300: '#86efac', + green400: '#4ade80', + green500: '#22c55e', + green600: '#16a34a', + green700: '#15803d', + green800: '#166534', + green900: '#14532d', + lime50: '#f7fee7', + lime100: '#ecfccb', + lime200: '#d9f99d', + lime300: '#bef264', + lime400: '#a3e635', + lime500: '#84cc16', + lime600: '#65a30d', + lime700: '#4d7c0f', + lime800: '#3f6212', + lime900: '#365314', + yellow50: '#fefce8', + yellow100: '#fef9c3', + yellow200: '#fef08a', + yellow300: '#fde047', + yellow400: '#facc15', + yellow500: '#eab308', + yellow600: '#ca8a04', + yellow700: '#a16207', + yellow800: '#854d0e', + yellow900: '#713f12', + amber50: '#fffbeb', + amber100: '#fef3c7', + amber200: '#fde68a', + amber300: '#fcd34d', + amber400: '#fbbf24', + amber500: '#f59e0b', + amber600: '#d97706', + amber700: '#b45309', + amber800: '#92400e', + amber900: '#78350f', + orange50: '#fff7ed', + orange100: '#ffedd5', + orange200: '#fed7aa', + orange300: '#fdba74', + orange400: '#fb923c', + orange500: '#f97316', + orange600: '#ea580c', + orange700: '#c2410c', + orange800: '#9a3412', + orange900: '#7c2d12', + red50: '#fef2f2', + red100: '#fee2e2', + red200: '#fecaca', + red300: '#fca5a5', + red400: '#f87171', + red500: '#ef4444', + red600: '#dc2626', + red700: '#b91c1c', + red800: '#991b1b', + red900: '#7f1d1d', + warmGray50: '#fafaf9', + warmGray100: '#f5f5f4', + warmGray200: '#e7e5e4', + warmGray300: '#d6d3d1', + warmGray400: '#a8a29e', + warmGray500: '#78716c', + warmGray600: '#57534e', + warmGray700: '#44403c', + warmGray800: '#292524', + warmGray900: '#1c1917', + trueGray50: '#fafafa', + trueGray100: '#f5f5f5', + trueGray200: '#e5e5e5', + trueGray300: '#d4d4d4', + trueGray400: '#a3a3a3', + trueGray500: '#737373', + trueGray600: '#525252', + trueGray700: '#404040', + trueGray800: '#262626', + trueGray900: '#171717', + gray50: '#fafafa', + gray100: '#f4f4f5', + gray200: '#e4e4e7', + gray300: '#d4d4d8', + gray400: '#a1a1aa', + gray500: '#71717a', + gray600: '#52525b', + gray700: '#3f3f46', + gray800: '#27272a', + gray900: '#18181b', + coolGray50: '#f9fafb', + coolGray100: '#f3f4f6', + coolGray200: '#e5e7eb', + coolGray300: '#d1d5db', + coolGray400: '#9ca3af', + coolGray500: '#6b7280', + coolGray600: '#4b5563', + coolGray700: '#374151', + coolGray800: '#1f2937', + coolGray900: '#111827', + blueGray50: '#f8fafc', + blueGray100: '#f1f5f9', + blueGray200: '#e2e8f0', + blueGray300: '#cbd5e1', + blueGray400: '#94a3b8', + blueGray500: '#64748b', + blueGray600: '#475569', + blueGray700: '#334155', + blueGray800: '#1e293b', + blueGray900: '#0f172a', + dark50: '#18181b', + dark100: '#27272a', + dark200: '#3f3f46', + dark300: '#52525b', + dark400: '#71717a', + dark500: '#a1a1aa', + dark600: '#d4d4d8', + dark700: '#e4e4e7', + dark800: '#f4f4f5', + dark900: '#fafafa', + + // Will keep following colors + white: '#FFFFFF', + black: '#000000', + secondary0: '#FCFCFC', + secondary50: '#F5F5F5', + secondary100: '#E5E5E5', + secondary200: '#DBDBDB', + secondary300: '#D4D4D4', + secondary400: '#A3A3A3', + secondary500: '#8C8C8C', + secondary600: '#737373', + secondary700: '#525252', + secondary800: '#404040', + secondary900: '#262626', + secondary950: '#171717', + tertiary50: '#ecfdf5', + tertiary100: '#d1fae5', + tertiary200: '#a7f3d0', + tertiary300: '#6ee7b7', + tertiary400: '#34d399', + tertiary500: '#10b981', + tertiary600: '#059669', + tertiary700: '#047857', + tertiary800: '#065f46', + tertiary900: '#064e3b', + danger50: '#fff1f2', + danger100: '#ffe4e6', + danger200: '#fecdd3', + danger300: '#fda4af', + danger400: '#fb7185', + danger500: '#f43f5e', + danger600: '#e11d48', + danger700: '#be123c', + danger800: '#9f1239', + danger900: '#881337', + error50: '#fef2f2', + error100: '#fee2e2', + error200: '#fecaca', + error300: '#fca5a5', + error400: '#f87171', + error500: '#ef4444', + error600: '#dc2626', + error700: '#b91c1c', + error800: '#991b1b', + error900: '#7f1d1d', + success50: '#f0fdf4', + success100: '#dcfce7', + success200: '#bbf7d0', + success300: '#86efac', + success400: '#4ade80', + success500: '#22c55e', + success600: '#16a34a', + success700: '#15803d', + success800: '#166534', + success900: '#14532d', + warning50: '#fff7ed', + warning100: '#ffedd5', + warning200: '#fed7aa', + warning300: '#fdba74', + warning400: '#fb923c', + warning500: '#f97316', + warning600: '#ea580c', + warning700: '#c2410c', + warning800: '#9a3412', + warning900: '#7c2d12', + muted50: '#fafafa', + muted100: '#f5f5f5', + muted200: '#e5e5e5', + muted300: '#d4d4d4', + muted400: '#a3a3a3', + muted500: '#737373', + muted600: '#525252', + muted700: '#404040', + muted800: '#262626', + muted900: '#171717', + info50: '#f0f9ff', + info100: '#e0f2fe', + info200: '#bae6fd', + info300: '#7dd3fc', + info400: '#38bdf8', + info500: '#0ea5e9', + info600: '#0284c7', + info700: '#0369a1', + info800: '#075985', + info900: '#0c4a6e', + light50: '#fafaf9', + light100: '#f5f5f4', + light200: '#e7e5e4', + light300: '#d6d3d1', + light400: '#a8a29e', + light500: '#78716c', + light600: '#57534e', + light700: '#44403c', + light800: '#292524', + light900: '#1c1917', + textLight0: '#FCFCFC', + textLight50: '#F5F5F5', + textLight100: '#E5E5E5', + textLight200: '#DBDBDB', + textLight300: '#D4D4D4', + textLight400: '#A3A3A3', + textLight500: '#8C8C8C', + textLight600: '#737373', + textLight700: '#525252', + textLight800: '#404040', + textLight900: '#262626', + textLight950: '#171717', + textDark0: '#FCFCFC', + textDark50: '#F5F5F5', + textDark100: '#E5E5E5', + textDark200: '#DBDBDB', + textDark300: '#D4D4D4', + textDark400: '#A3A3A3', + textDark500: '#8C8C8C', + textDark600: '#737373', + textDark700: '#525252', + textDark800: '#404040', + textDark900: '#262626', + textDark950: '#171717', + borderDark0: '#FCFCFC', + borderDark50: '#F5F5F5', + borderDark100: '#E5E5E5', + borderDark200: '#DBDBDB', + borderDark300: '#D4D4D4', + borderDark400: '#A3A3A3', + borderDark500: '#8C8C8C', + borderDark600: '#737373', + borderDark700: '#525252', + borderDark800: '#404040', + borderDark900: '#262626', + borderDark950: '#171717', + borderLight0: '#FCFCFC', + borderLight50: '#F5F5F5', + borderLight100: '#E5E5E5', + borderLight200: '#DBDBDB', + borderLight300: '#D4D4D4', + borderLight400: '#A3A3A3', + borderLight500: '#8C8C8C', + borderLight600: '#737373', + borderLight700: '#525252', + borderLight800: '#404040', + borderLight900: '#262626', + borderLight950: '#171717', + backgroundDark0: '#FCFCFC', + backgroundDark50: '#F5F5F5', + backgroundDark100: '#E5E5E5', + backgroundDark200: '#DBDBDB', + backgroundDark300: '#D4D4D4', + backgroundDark400: '#A3A3A3', + backgroundDark500: '#8C8C8C', + backgroundDark600: '#737373', + backgroundDark700: '#525252', + backgroundDark800: '#404040', + backgroundDark900: '#262626', + backgroundDark950: '#171717', + backgroundLight0: '#FCFCFC', + backgroundLight50: '#F5F5F5', + backgroundLight100: '#E5E5E5', + backgroundLight200: '#DBDBDB', + backgroundLight300: '#D4D4D4', + backgroundLight400: '#A3A3A3', + backgroundLight500: '#8C8C8C', + backgroundLight600: '#737373', + backgroundLight700: '#525252', + backgroundLight800: '#404040', + backgroundLight900: '#262626', + backgroundLight950: '#171717', + primary0: '#ffffff', + primary50: '#FFF1F2', + primary100: '#FFE4E6', + primary200: '#FECDD3', + primary300: '#FDA4AF', + primary400: '#EE596F', + primary500: '#F43F5E', + primary600: '#E11d48', + primary600_alpha60: '#5C93C8', + primary700: '#BE123C', + primary800: '#9F1239', + primary900: '#881337', + primary950: '#440A1C', + backgroundLightError: '#FEF1F1', + backgroundDarkError: '#2E2020', + backgroundLightWarning: '#FFF4EB', + backgroundDarkWarning: '#2E231B', + backgroundLightSuccess: '#EDFCF2', + backgroundDarkSuccess: '#1C2B21', + backgroundLightInfo: '#EBF8FE', + backgroundDarkInfo: '#1A282E', + backgroundLightMuted: '#F6F6F7', + backgroundDarkMuted: '#252526', + }, + space: { + 'px': '1px', + '0': 0, + '0.5': 2, + '1': 4, + '1.5': 6, + '2': 8, + '2.5': 10, + '3': 12, + '3.5': 14, + '4': 16, + '4.5': 18, + '5': 20, + '6': 24, + '7': 28, + '8': 32, + '9': 36, + '10': 40, + '11': 44, + '12': 48, + '16': 64, + '20': 80, + '24': 96, + '32': 128, + '40': 160, + '48': 192, + '56': 224, + '64': 256, + '72': 288, + '80': 320, + '96': 384, + '1/2': '50%', + '1/3': '33.333%', + '2/3': '66.666%', + '1/4': '25%', + '2/4': '50%', + '3/4': '75%', + '1/5': '20%', + '2/5': '40%', + '3/5': '60%', + '4/5': '80%', + '1/6': '16.666%', + '2/6': '33.333%', + '3/6': '50%', + '4/6': '66.666%', + '5/6': '83.333%', + 'full': '100%', + }, + borderWidths: { + '0': 0, + '1': 1, + '2': 2, + '4': 4, + '8': 8, + }, + radii: { + 'none': 0, + 'xs': 2, + 'sm': 4, + 'md': 6, + 'lg': 8, + 'xl': 12, + '2xl': 16, + '3xl': 24, + 'full': 9999, + }, + breakpoints: { + base: 0, + sm: 480, + md: 768, + lg: 992, + xl: 1280, + }, + mediaQueries: { + base: '@media screen and (min-width: 0px)', + xs: '@media screen and (min-width: 400px)', + sm: '@media screen and (min-width: 480px)', + md: '@media screen and (min-width: 768px)', + lg: '@media screen and (min-width: 992px)', + xl: '@media screen and (min-width: 1280px)', + }, + letterSpacings: { + 'xs': -0.4, + 'sm': -0.2, + 'md': 0, + 'lg': 0.2, + 'xl': 0.4, + '2xl': 1.6, + }, + lineHeights: { + '2xs': 16, + 'xs': 18, + 'sm': 20, + 'md': 22, + 'lg': 24, + 'xl': 28, + '2xl': 32, + '3xl': 40, + '4xl': 48, + '5xl': 56, + '6xl': 72, + '7xl': 90, + }, + fontWeights: { + hairline: '100', + thin: '200', + light: '300', + normal: '400', + medium: '500', + semibold: '600', + bold: '700', + extrabold: '800', + black: '900', + extraBlack: '950', + }, + fonts: { + heading: undefined, + body: undefined, + mono: undefined, + }, + fontSizes: { + '2xs': 10, + 'xs': 12, + 'sm': 14, + 'md': 16, + 'lg': 18, + 'xl': 20, + '2xl': 24, + '3xl': 30, + '4xl': 36, + '5xl': 48, + '6xl': 60, + '7xl': 72, + '8xl': 96, + '9xl': 128, + }, + opacity: { + 0: 0, + 5: 0.05, + 10: 0.1, + 20: 0.2, + 25: 0.25, + 30: 0.3, + 40: 0.4, + 50: 0.5, + 60: 0.6, + 70: 0.7, + 75: 0.75, + 80: 0.8, + 90: 0.9, + 95: 0.95, + 100: 1, + }, + } as const, + globalStyle: { + variants: { + hardShadow: { + '1': { + shadowColor: '$backgroundLight900', + shadowOffset: { + width: -2, + height: 2, + }, + shadowRadius: 8, + shadowOpacity: 0.5, + elevation: 10, + }, + '2': { + shadowColor: '$backgroundLight900', + shadowOffset: { + width: 0, + height: 3, + }, + shadowRadius: 8, + shadowOpacity: 0.5, + elevation: 10, + }, + '3': { + shadowColor: '$backgroundLight900', + shadowOffset: { + width: 2, + height: 2, + }, + shadowRadius: 8, + shadowOpacity: 0.5, + elevation: 10, + }, + '4': { + shadowColor: '$backgroundLight900', + shadowOffset: { + width: 0, + height: -3, + }, + shadowRadius: 8, + shadowOpacity: 0.5, + elevation: 10, + }, + }, + softShadow: { + '1': { + shadowColor: '$backgroundLight900', + shadowOffset: { + width: 0, + height: 0, + }, + shadowRadius: 10, + shadowOpacity: 0.1, + _android: { + shadowColor: '$backgroundLight500', + elevation: 5, + shadowOpacity: 0.05, + }, + }, + '2': { + shadowColor: '$backgroundLight900', + shadowOffset: { + width: 0, + height: 0, + }, + shadowRadius: 20, + elevation: 3, + shadowOpacity: 0.1, + _android: { + shadowColor: '$backgroundLight500', + elevation: 10, + shadowOpacity: 0.1, + }, + }, + '3': { + shadowColor: '$backgroundLight900', + shadowOffset: { + width: 0, + height: 0, + }, + shadowRadius: 30, + shadowOpacity: 0.1, + elevation: 4, + _android: { + shadowColor: '$backgroundLight500', + elevation: 15, + shadowOpacity: 0.15, + }, + }, + '4': { + shadowColor: '$backgroundLight900', + shadowOffset: { + width: 0, + height: 0, + }, + shadowRadius: 40, + shadowOpacity: 0.1, + elevation: 10, + _android: { + shadowColor: '$backgroundLight500', + elevation: 20, + shadowOpacity: 0.2, + }, + }, + }, + }, + }, + }, +} as const; +type Config = typeof config.theme; +declare module '@gluestack-style/react' { + interface ICustomConfig extends Config {} +} diff --git a/example/ui-examples-babel/index.js b/example/ui-examples-babel/index.js new file mode 100644 index 000000000..ba5082e6d --- /dev/null +++ b/example/ui-examples-babel/index.js @@ -0,0 +1,46 @@ +// console.timeMap = { boot: {}, runtime: {} }; +// console.initKey = (key: string, runningTime: string) => { +// console.timeMap[runningTime][key] = { +// 'startTime': 0, +// 'endTime': 0, +// 'callCounter': 0, +// 'render-time(ms)': 0, +// }; +// }; + +// console.incrementCallCounter = ( +// key?: string, +// runningTime?: string = 'runtime' +// ) => { +// console.timeMap[runningTime][key]['callCounter'] += 1; +// }; + +// console.startMount = (key: string, runningTime?: string = 'runtime') => { +// if (!console.timeMap[runningTime][key]) { +// console.initKey(key, runningTime); +// } +// console.incrementCallCounter(key, runningTime); +// console.timeMap[runningTime][key]['startTime'] = new Date().getTime(); +// }; +// console.endMount = (key: string, runningTime?: string = 'runtime') => { +// const endTime = new Date().getTime(); +// const startTime = console.timeMap[runningTime][key]['startTime']; +// console.timeMap[runningTime][key]['endTime'] = endTime; +// console.timeMap[runningTime][key]['render-time(ms)'] = endTime - startTime; +// }; + +// console.getPerformanceReport = () => { +// // console.log('console.timeMap.boot'); +// // console.table(console.timeMap.boot); +// console.log('console.timeMap.runtime'); +// console.table(console.timeMap.runtime); +// }; + +import { registerRootComponent } from 'expo'; + +import App from './App'; + +// registerRootComponent calls AppRegistry.registerComponent('main', () => App); +// It also ensures that whether you load the app in Expo Go or in a native build, +// the environment is set up appropriately +registerRootComponent(App); diff --git a/example/ui-examples-babel/metro.config.js b/example/ui-examples-babel/metro.config.js new file mode 100644 index 000000000..382e53afd --- /dev/null +++ b/example/ui-examples-babel/metro.config.js @@ -0,0 +1,33 @@ +const { getDefaultConfig } = require('expo/metro-config'); +const path = require('path'); +// const findWorkspaceRoot = require('find-yarn-workspace-root'); + +const workspaceRoot = path.resolve(__dirname, '../..'); +const projectRoot = __dirname; +const config = getDefaultConfig(projectRoot); + +// 1. Watch all files within the monorepo +config.watchFolders = [workspaceRoot]; +// 2. Let Metro know where to resolve packages, and in what order +config.resolver.nodeModulesPaths = [ + path.resolve(projectRoot, 'node_modules'), + path.resolve(workspaceRoot, 'node_modules'), +]; +// 3. Force Metro to resolve (sub)dependencies only from the `nodeModulesPaths` +// config.resolver.disableHierarchicalLookup = true; + +config.resolver.resolverMainFields = [ + 'sbmodern', + ...config.resolver.resolverMainFields, +]; + +config.transformer.getTransformOptions = async () => ({ + transform: { + experimentalImportSupport: false, + inlineRequires: true, + }, +}); + +config.watchFolders = [...config.watchFolders]; + +module.exports = config; diff --git a/example/ui-examples-babel/package.json b/example/ui-examples-babel/package.json new file mode 100644 index 000000000..2d2f3a0fe --- /dev/null +++ b/example/ui-examples-babel/package.json @@ -0,0 +1,85 @@ +{ + "name": "example-ui-babel", + "version": "1.0.0", + "scripts": { + "start": "expo start --dev-client", + "android": "expo run:android", + "ios": "expo run:ios", + "web": "expo start --web", + "run:ios": "expo start --ios", + "build": "tsc" + }, + "dependencies": { + "@expo-google-fonts/inter": "^0.2.3", + "@expo/html-elements": "latest", + "@expo/webpack-config": "18.1.0", + "@gluestack-style/animation-plugin": "latest", + "@gluestack-style/react": "0.1.31", + "@gluestack-ui/actionsheet": "latest", + "@gluestack-ui/alert": "latest", + "@gluestack-ui/alert-dialog": "latest", + "@gluestack-ui/avatar": "latest", + "@gluestack-ui/button": "latest", + "@gluestack-ui/checkbox": "latest", + "@gluestack-ui/divider": "latest", + "@gluestack-ui/fab": "latest", + "@gluestack-ui/form-control": "latest", + "@gluestack-ui/hstack": "latest", + "@gluestack-ui/icon": "latest", + "@gluestack-ui/input": "latest", + "@gluestack-ui/link": "latest", + "@gluestack-ui/menu": "latest", + "@gluestack-ui/modal": "latest", + "@gluestack-ui/popover": "latest", + "@gluestack-ui/pressable": "latest", + "@gluestack-ui/progress": "latest", + "@gluestack-ui/provider": "latest", + "@gluestack-ui/radio": "latest", + "@gluestack-ui/select": "latest", + "@gluestack-ui/slider": "latest", + "@gluestack-ui/spinner": "latest", + "@gluestack-ui/switch": "latest", + "@gluestack-ui/tabs": "latest", + "@gluestack-ui/textarea": "latest", + "@gluestack-ui/toast": "latest", + "@gluestack-ui/tooltip": "latest", + "@gluestack-ui/vstack": "latest", + "@gluestack/ui-next-adapter": "latest", + "@legendapp/motion": "latest", + "@react-native-aria/focus": "^0.2.8", + "@react-native-aria/interactions": "^0.2.10", + "@react-native-aria/overlays": "^0.3.7", + "@react-navigation/bottom-tabs": "^6.5.7", + "@react-navigation/native": "^6.1.6", + "@react-navigation/native-stack": "^6.9.12", + "@react-navigation/stack": "^6.3.16", + "expo": "~48.0.18", + "expo-app-loading": "^2.1.1", + "expo-font": "~11.1.1", + "expo-image": "~1.0.1", + "expo-linear-gradient": "~12.1.2", + "expo-splash-screen": "~0.18.2", + "expo-status-bar": "~1.4.4", + "expo-updates": "~0.16.4", + "install": "^0.13.0", + "lucide-react-native": "^0.161.0", + "react": "18.2.0", + "react-dom": "18.2.0", + "react-native": "0.71.8", + "react-native-svg": "13.4.0" + }, + "devDependencies": { + "@babel/core": "^7.20.0", + "@babel/plugin-transform-modules-commonjs": "^7.21.5", + "@babel/preset-env": "^7.22.4", + "@babel/preset-react": "^7.22.3", + "@gluestack-style/babel-plugin-styled-resolver": "latest", + "@types/react": "~18.0.27", + "@types/react-native": "^0.72.2", + "babel-loader": "^9.1.2", + "postcss-loader": "^7.3.2", + "react-native-web": "~0.18.11", + "typescript": "^5.1.3" + }, + "private": true +} diff --git a/example/ui-examples-babel/readme.md b/example/ui-examples-babel/readme.md new file mode 100644 index 000000000..09c21e564 --- /dev/null +++ b/example/ui-examples-babel/readme.md @@ -0,0 +1 @@ +### This repository contains source code of all the examples that are shown on website diff --git a/example/ui-examples-babel/src/core/styled.tsx b/example/ui-examples-babel/src/core/styled.tsx new file mode 100644 index 000000000..2eb4b8cbf --- /dev/null +++ b/example/ui-examples-babel/src/core/styled.tsx @@ -0,0 +1 @@ +export { styled } from '@gluestack-style/react'; diff --git a/example/ui-examples-babel/src/index.tsx b/example/ui-examples-babel/src/index.tsx new file mode 100644 index 000000000..2bbcbaa61 --- /dev/null +++ b/example/ui-examples-babel/src/index.tsx @@ -0,0 +1,43 @@ +/* eslint-disable react-native/no-inline-styles */ +// @ts-nocheck +import React from 'react'; +import { SafeAreaView, StyleSheet, View } from 'react-native'; +import { config } from '../gluestack-ui.config'; +import './styles'; +import { styled, StyledProvider } from '@gluestack-style/react'; + +const Box = styled(View, { + bg: '$red500', + padding: '$10', +}); + +export default function App() { + return ( + <> + {/* top SafeAreaView */} + + {/* bottom SafeAreaView */} + + {/* gluestack-ui provider */} + + + + + + ); +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + overflow: 'hidden', + }, +}); diff --git a/example/ui-examples-babel/styles/index.ts b/example/ui-examples-babel/styles/index.ts new file mode 100644 index 000000000..e8be99508 --- /dev/null +++ b/example/ui-examples-babel/styles/index.ts @@ -0,0 +1,2 @@ +// Intentionally left empty +export {}; diff --git a/example/ui-examples-babel/styles/index.web.ts b/example/ui-examples-babel/styles/index.web.ts new file mode 100644 index 000000000..74f07de1b --- /dev/null +++ b/example/ui-examples-babel/styles/index.web.ts @@ -0,0 +1 @@ +import './main.css'; diff --git a/example/ui-examples-babel/styles/main.css b/example/ui-examples-babel/styles/main.css new file mode 100644 index 000000000..31bb74421 --- /dev/null +++ b/example/ui-examples-babel/styles/main.css @@ -0,0 +1,33 @@ +/* styles.css */ + +body { + overflow: hidden; + height: 100%; +} + +::-webkit-scrollbar { + width: 6px; + height: 8px; +} + +::-webkit-scrollbar-corner, +::-webkit-scrollbar-track { + background: transparent; +} + +.gs-dark ::-webkit-scrollbar-thumb { + background-color: #525252; + border-radius: 20px; + border: 3px solid transparent; +} + +::-webkit-scrollbar-thumb { + background-color: #dbdbdb; + border-radius: 20px; + border: 3px solid transparent; +} + +::-webkit-scrollbar-corner, +::-webkit-scrollbar-track { + background: transparent; +} diff --git a/example/ui-examples-babel/timing.ts b/example/ui-examples-babel/timing.ts new file mode 100644 index 000000000..e69de29bb diff --git a/example/ui-examples-babel/tsconfig.json b/example/ui-examples-babel/tsconfig.json new file mode 100644 index 000000000..3a7997bd0 --- /dev/null +++ b/example/ui-examples-babel/tsconfig.json @@ -0,0 +1,13 @@ +{ + "compilerOptions": { + "module": "CommonJS", + "target": "es2015", + "declaration": true, + "outDir": "./dist", + "skipLibCheck": true, + "checkJs": false + }, + "include": ["src/**/*"], + "exclude": ["node_modules"], + "extends": "expo/tsconfig.base" +} diff --git a/example/ui-examples-babel/use-get-mount-time.ts b/example/ui-examples-babel/use-get-mount-time.ts new file mode 100644 index 000000000..76627f2b5 --- /dev/null +++ b/example/ui-examples-babel/use-get-mount-time.ts @@ -0,0 +1,45 @@ +/* eslint-disable no-console */ + +import React from 'react'; + +export const useGetMountTime = ( + componentKey: string, + noTarget: boolean = true +) => { + const isMounted = React.useRef(false); + const reRender = React.useRef(false); + const ref = React.useRef(null); + + if (noTarget || isMounted.current) { + reRender.current = !reRender.current; + console.startMount(componentKey); + } + React.useEffect(() => { + /** End previous timer */ + if (noTarget && isMounted?.current) { + console.endMount(componentKey); + } + + /** In case of overlay components we will require to check ref of that component */ + if (ref?.current) { + isMonted.current = true; + } + + /** In case there is not target that the component is directly mounted then we will directly mark it as mounted */ + + if (noTarget) isMounted.current = true; + + /** If component is mounted then we will end the timer */ + if (isMounted.current) { + console.endMount(componentKey); + } + + return () => { + //clean up + isMounted.current = false; + }; + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [reRender?.current, ref?.current, componentKey, noTarget]); + + return { isMounted: isMounted.current, ref }; +}; diff --git a/example/ui-examples-babel/webpack.config.js b/example/ui-examples-babel/webpack.config.js new file mode 100644 index 000000000..edd89fd33 --- /dev/null +++ b/example/ui-examples-babel/webpack.config.js @@ -0,0 +1,50 @@ +const path = require('path'); +const createExpoWebpackConfigAsync = require('@expo/webpack-config'); +const { resolver } = require('./metro.config'); +const findWorkspaceRoot = require('find-yarn-workspace-root'); + +// Find the workspace root, this can be replaced with `find-yarn-workspace-root` +// const workspaceRoot = path.resolve(__dirname, "../../.."); + +const workspaceRoot = findWorkspaceRoot(__dirname); + +const styledRoot = path.resolve(__dirname, '../../packages/react/src'); + +const animationPluginRoot = path.resolve( + __dirname, + '../../packages/animation-plugin/src' +); +const node_modules = path.join(workspaceRoot, 'node_modules'); +// const designSystem = path.resolve(__dirname, "../../../glustack-design-system"); +module.exports = async function (env, argv) { + const config = await createExpoWebpackConfigAsync(env, argv); + + config.module.rules.push({ + test: /\.(js|ts|tsx)$/, + include: [ + path.resolve(styledRoot), + path.resolve(animationPluginRoot), + // path.resolve(designSystem, "src"), + ], + use: 'babel-loader', + }); + + // We need to make sure that only one version is loaded for peerDependencies + // So we alias them to the versions in example's node_modules + Object.assign(config.resolve.alias, { + ...resolver.extraNodeModules, + 'react-native-web': path.join(node_modules, 'react-native-web'), + // '@dank-style/react': path.join(node_modules, '@gluestack-style/react'), + }); + + // Maybe you want to turn off compression in dev mode. + if (config.mode === 'development') { + config.devServer.compress = false; + } + // Or prevent minimizing the bundle when you build. + if (config.mode === 'production') { + config.optimization.minimize = false; + } + + return config; +}; diff --git a/example/ui-examples/App.tsx b/example/ui-examples/App.tsx index e7053cfdc..19a15a8bc 100644 --- a/example/ui-examples/App.tsx +++ b/example/ui-examples/App.tsx @@ -1,13 +1,7 @@ /* eslint-disable react-native/no-inline-styles */ import React from 'react'; -import { - Pressable, - SafeAreaView, - ScrollView, - StyleSheet, - View, -} from 'react-native'; -import { Button, GluestackUIProvider } from './gluestack-ui-components'; +import { SafeAreaView, StyleSheet, View } from 'react-native'; +import { GluestackUIProvider } from './gluestack-ui-components'; import { config } from './gluestack-ui.config'; import { SSRProvider } from '@react-native-aria/utils'; import { useFonts } from 'expo-font'; @@ -19,61 +13,13 @@ import { Inter_900Black, } from '@expo-google-fonts/inter'; import './styles'; -import HomestayPage from './kitchensink-components/HomestayPage'; import { styled } from '@gluestack-style/react'; +import HomestayPage from './kitchensink-components/HomestayPage'; +// import HomestayPage from './kitchensink-components/HomestayPage'; -// const orderedSXResolved = [ -// { -// meta: { -// path: ['baseStyle'], -// weight: 101, -// cssId: '14kw9po-go7kdf', -// cssRuleset: -// '.gs [data-style~="14kw9po-go7kdf"] {background-color:rgba(239,68,68,1.00);height:80px;width:80px;}', -// }, -// original: { -// bg: '$red500', -// h: '$10', -// w: '$10', -// }, -// resolved: { -// backgroundColor: '#ef4444', -// height: '40px', -// width: '40px', -// }, -// }, -// ]; - -// const sxHash = '14kw9po'; - -// function injectBuildTimeSx() { -// injectComponentAndDescendantStyles(orderedSXResolved, sxHash, 'inline'); -// } - -// const styledIds = { -// component: { -// baseStyle: { -// ids: ['14kw9po-go7kdf'], -// props: {}, -// }, -// compoundVariants: [], -// variants: [], -// }, -// decendant: {}, -// }; - -// injectBuildTimeSx(); - -// const Box = styled(View, {}); - -const BaseButton = styled(Pressable, { - bg: '$amber500', - h: '$10', - w: '$10', -}); - -const ComposedButton = styled(BaseButton, { +const Box = styled(View, { bg: '$red500', + padding: '$10', }); type ThemeContextType = { @@ -127,6 +73,11 @@ export default function App() { {/* Hello Worlddddd Hello */} + diff --git a/example/ui-examples/babel.config.js b/example/ui-examples/babel.config.js index 5b7b3de48..351bb0187 100644 --- a/example/ui-examples/babel.config.js +++ b/example/ui-examples/babel.config.js @@ -1,4 +1,4 @@ -// const myBabel = require('@gluestack-style/babel-plugin-styled-resolver'); +const myBabel = require('../../packages/babel-plugin-styled-resolver/src/index.js'); const path = require('path'); module.exports = function (api) { @@ -6,12 +6,18 @@ module.exports = function (api) { return { presets: ['babel-preset-expo'], plugins: [ - // [ - // // myBabel, - // { - // configPath: path.join(__dirname, './gluestack-ui.config.ts'), - // }, - // ], + [ + myBabel, + { + configPath: path.join(__dirname, './gluestack-ui.config.ts'), + configThemePath: ['config', 'theme'], + // libraryName: '../../styled', + filename: path.join( + __dirname, + './gluestack-ui-components/core/styled' + ), + }, + ], [ 'module-resolver', { From 27fa27750cb3c2c5d0a19a14047b3af815f59f43 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Tue, 22 Aug 2023 02:14:01 +0530 Subject: [PATCH 02/38] fix: seperate injection --- packages/react/src/style-sheet/index.ts | 41 +++++++++++++++++++------ 1 file changed, 31 insertions(+), 10 deletions(-) diff --git a/packages/react/src/style-sheet/index.ts b/packages/react/src/style-sheet/index.ts index 30c304570..5bc34906d 100644 --- a/packages/react/src/style-sheet/index.ts +++ b/packages/react/src/style-sheet/index.ts @@ -1,4 +1,3 @@ -import { injectInStyle } from '../injectInStyle'; import { StyledValueToCSSObject } from '../resolver'; import type { OrderedSXResolved } from '../types'; import { getCSSIdAndRuleset } from '../updateCSSStyleInOrderedResolved.web'; @@ -82,11 +81,11 @@ export class StyleInjector { } }); - Object.keys(toBeInjected).forEach((type) => { - Object.keys(toBeInjected[type]).forEach((styleTag) => { - this.injectStyles(toBeInjected[type][styleTag], type, styleTag); - }); - }); + // Object.keys(toBeInjected).forEach((type) => { + // Object.keys(toBeInjected[type]).forEach((styleTag) => { + // this.injectStyles(toBeInjected[type][styleTag], type, styleTag); + // }); + // }); } resolveComponentTheme( @@ -101,7 +100,7 @@ export class StyleInjector { componentExtendedConfig ); - delete componentTheme.meta.cssRuleset; + // delete componentTheme.meta.cssRuleset; if (componentTheme.meta && componentTheme.meta.queryCondition) { const queryCondition = resolveTokensFromConfig(CONFIG, { @@ -126,10 +125,32 @@ export class StyleInjector { } } - injectInStyle() { - const styleSheetInjectInStyle = injectInStyle.bind(this); + injectInStyle(cssIds: any) { + const toBeInjected: any = {}; - styleSheetInjectInStyle(this.#globalStyleMap); + cssIds.forEach((cssId: string) => { + if (this.#globalStyleMap.get(cssId)) { + const styledResolved = this.#globalStyleMap.get(cssId); + + if (!toBeInjected[styledResolved.type]) + toBeInjected[styledResolved.type] = {}; + if (!toBeInjected[styledResolved.type][styledResolved.componentHash]) + toBeInjected[styledResolved.type][styledResolved.componentHash] = ''; + toBeInjected[styledResolved.type][styledResolved.componentHash] += + styledResolved.meta.cssRuleset; + + this.#globalStyleMap.set(styledResolved.meta.cssId, { + ...styledResolved, + value: styledResolved?.resolved, + }); + } + }); + + Object.keys(toBeInjected).forEach((type) => { + Object.keys(toBeInjected[type]).forEach((styleTag) => { + this.injectStyles(toBeInjected[type][styleTag], type, styleTag); + }); + }); } } From 92f95683c71315b4b85654b1b2eb64c016953860 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Tue, 22 Aug 2023 02:14:23 +0530 Subject: [PATCH 03/38] fix: seperate injection for inline props --- .../react/src/resolver/injectComponentAndDescendantStyles.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/react/src/resolver/injectComponentAndDescendantStyles.ts b/packages/react/src/resolver/injectComponentAndDescendantStyles.ts index f20537cb4..ab4e64982 100644 --- a/packages/react/src/resolver/injectComponentAndDescendantStyles.ts +++ b/packages/react/src/resolver/injectComponentAndDescendantStyles.ts @@ -26,7 +26,7 @@ export function injectComponentAndDescendantStyles( componentOrderResolvedBaseStyle, type + '-base', styleTagId ? styleTagId : 'css-injected-boot-time', - false + {} ); const descendantOrderResolvedBaseStyleIds = GluestackStyleSheet.declare( descendantOrderResolvedBaseStyle, @@ -54,4 +54,6 @@ export function injectComponentAndDescendantStyles( ...descendantOrderResolvedVariantStyleIds, ]; GluestackStyleSheet.resolve(styleCSSIdsArr, {}, {}, false); + + GluestackStyleSheet.injectInStyle(styleCSSIdsArr); } From 734e515a9416c5cd13f31c0a600b81538abf4191 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Tue, 22 Aug 2023 02:14:56 +0530 Subject: [PATCH 04/38] fix: refactor for babel plugin --- .../react/src/updateOrderUnResolvedMap.ts | 81 +++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 packages/react/src/updateOrderUnResolvedMap.ts diff --git a/packages/react/src/updateOrderUnResolvedMap.ts b/packages/react/src/updateOrderUnResolvedMap.ts new file mode 100644 index 000000000..e23754170 --- /dev/null +++ b/packages/react/src/updateOrderUnResolvedMap.ts @@ -0,0 +1,81 @@ +import type { StyleInjector } from './style-sheet/index'; +import { + getComponentResolvedBaseStyle, + getComponentResolvedVariantStyle, + getDescendantResolvedBaseStyle, + getDescendantResolvedVariantStyle, +} from './resolver/getComponentStyle'; +import { styledResolvedToOrderedSXResolved } from './resolver/orderedResolved'; +import { styledToStyledResolved } from './resolver/styledResolved'; +import { INTERNAL_updateCSSStyleInOrderedResolved } from './updateCSSStyleInOrderedResolved'; + +export function updateOrderUnResolvedMap( + theme: any, + componentHash: string, + declarationType: string, + ExtendedConfig: any, + GluestackStyleSheet: StyleInjector +) { + const unresolvedTheme = styledToStyledResolved(theme, [], {}, false); + const orderedUnResolvedTheme = + styledResolvedToOrderedSXResolved(unresolvedTheme); + + INTERNAL_updateCSSStyleInOrderedResolved( + orderedUnResolvedTheme, + componentHash, + true, + '', + false + ); + + const componentOrderResolvedBaseStyle = getComponentResolvedBaseStyle( + orderedUnResolvedTheme + ); + const componentOrderResolvedVariantStyle = getComponentResolvedVariantStyle( + orderedUnResolvedTheme + ); + + const descendantOrderResolvedBaseStyle = getDescendantResolvedBaseStyle( + orderedUnResolvedTheme + ); + const descendantOrderResolvedVariantStyle = getDescendantResolvedVariantStyle( + orderedUnResolvedTheme + ); + + const componentBaseStyleIds = GluestackStyleSheet.declare( + componentOrderResolvedBaseStyle, + declarationType + '-base', + componentHash ? componentHash : 'css-injected-boot-time', + ExtendedConfig + ); + const descendantBaseStyleIds = GluestackStyleSheet.declare( + descendantOrderResolvedBaseStyle, + declarationType + '-descendant-base', + componentHash ? componentHash : 'css-injected-boot-time-descendant', + ExtendedConfig + ); + const componentVariantStyleIds = GluestackStyleSheet.declare( + componentOrderResolvedVariantStyle, + declarationType + '-variant', + componentHash ? componentHash : 'css-injected-boot-time', + ExtendedConfig + ); + const descendantVariantStyleIds = GluestackStyleSheet.declare( + descendantOrderResolvedVariantStyle, + declarationType + '-descendant-variant', + componentHash ? componentHash : 'css-injected-boot-time-descendant', + ExtendedConfig + ); + + const styleCSSIdsArr = [ + ...componentBaseStyleIds, + ...descendantBaseStyleIds, + ...componentVariantStyleIds, + ...descendantVariantStyleIds, + ]; + + return { + orderedUnResolvedTheme, + styleCSSIdsArr, + }; +} From ad3725f1b59ba08b9fa628a33874cf9980e4fe38 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Tue, 22 Aug 2023 02:15:58 +0530 Subject: [PATCH 05/38] fix: resolve check to avoid unnecessary cssruleset creation --- .../updateCSSStyleInOrderedResolved.web.ts | 35 ++++++++++++------- 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/packages/react/src/updateCSSStyleInOrderedResolved.web.ts b/packages/react/src/updateCSSStyleInOrderedResolved.web.ts index 82fa8f68d..d3572defc 100644 --- a/packages/react/src/updateCSSStyleInOrderedResolved.web.ts +++ b/packages/react/src/updateCSSStyleInOrderedResolved.web.ts @@ -54,21 +54,32 @@ export function INTERNAL_updateCSSStyleInOrderedResolved( orderedSXResolved: OrderedSXResolved, objectHash: string, keepOriginal: boolean = false, - prefixClassName = '' + prefixClassName = '', + shouldResolve = true ) { orderedSXResolved.forEach((styleResolved: StyledValueResolvedWithMeta) => { - const cssData: any = getCSSIdAndRuleset( - styleResolved, - objectHash, - prefixClassName - ); + if (shouldResolve) { + const cssData: any = getCSSIdAndRuleset( + styleResolved, + objectHash, + prefixClassName + ); - if (!keepOriginal) { - delete styleResolved.resolved; - delete styleResolved.original; + if (!keepOriginal) { + delete styleResolved.resolved; + delete styleResolved.original; + } + // console.log(styleResolved, 'CSS DATA'); + + styleResolved.meta.cssId = cssData.ids.style; + styleResolved.meta.cssRuleset = cssData.rules.style; + } else { + styleResolved.meta.cssId = + objectHash + + stableHash({ + path: styleResolved?.meta?.path, + data: styleResolved.original, + }); } - // console.log(styleResolved, 'CSS DATA'); - styleResolved.meta.cssId = cssData.ids.style; - styleResolved.meta.cssRuleset = cssData.rules.style; }); } From 4a8d66f8427ee92068c00ff32a8bc16c4b07b8c3 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Tue, 22 Aug 2023 02:16:18 +0530 Subject: [PATCH 06/38] fix: cssid stable hash for mobile --- packages/react/src/updateCSSStyleInOrderedResolved.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/react/src/updateCSSStyleInOrderedResolved.ts b/packages/react/src/updateCSSStyleInOrderedResolved.ts index 8eb1ef1f0..f67e403d3 100644 --- a/packages/react/src/updateCSSStyleInOrderedResolved.ts +++ b/packages/react/src/updateCSSStyleInOrderedResolved.ts @@ -5,9 +5,16 @@ export function INTERNAL_updateCSSStyleInOrderedResolved( orderedSXResolved: OrderedSXResolved, objectHash: string, _keepOriginal: boolean = false, - _prefixClassName = '' + _prefixClassName = '', + _shouldResolve = true ) { orderedSXResolved.forEach((styleResolved: StyledValueResolvedWithMeta) => { - styleResolved.meta.cssId = objectHash + '-' + stableHash(styleResolved); + styleResolved.meta.cssId = + objectHash + + '-' + + stableHash({ + path: styleResolved?.meta?.path, + data: styleResolved.original, + }); }); } From ae191e4c1c2738b8ccce2c747b7524e20a3b27e7 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Tue, 22 Aug 2023 02:16:47 +0530 Subject: [PATCH 07/38] feat: add build params for babel plugin --- packages/react/src/styled.tsx | 155 +++++----------------------------- 1 file changed, 20 insertions(+), 135 deletions(-) diff --git a/packages/react/src/styled.tsx b/packages/react/src/styled.tsx index 946efd3cd..1f2494fb5 100644 --- a/packages/react/src/styled.tsx +++ b/packages/react/src/styled.tsx @@ -56,6 +56,7 @@ import { import { stableHash } from './stableHash'; import { DeclarationType, GluestackStyleSheet } from './style-sheet'; import { CSSPropertiesMap } from './core/styled-system'; +import { updateOrderUnResolvedMap } from './updateOrderUnResolvedMap'; // import { GluestackStyleSheet } from './style-sheet'; const styledSystemProps = { ...CSSPropertiesMap }; @@ -759,78 +760,6 @@ export function getVariantProps( // BASE COLOR MODE RESOLUTION -function updateOrderUnResolvedMap( - theme: any, - componentHash: string, - declarationType: string, - ExtendedConfig: any -) { - const unresolvedTheme = styledToStyledResolved(theme, [], {}, false); - const orderedUnResolvedTheme = - styledResolvedToOrderedSXResolved(unresolvedTheme); - - INTERNAL_updateCSSStyleInOrderedResolved( - orderedUnResolvedTheme, - componentHash, - true - ); - - const componentOrderResolvedBaseStyle = getComponentResolvedBaseStyle( - orderedUnResolvedTheme - ); - const componentOrderResolvedVariantStyle = getComponentResolvedVariantStyle( - orderedUnResolvedTheme - ); - - const descendantOrderResolvedBaseStyle = getDescendantResolvedBaseStyle( - orderedUnResolvedTheme - ); - const descendantOrderResolvedVariantStyle = getDescendantResolvedVariantStyle( - orderedUnResolvedTheme - ); - - const componentBaseStyleIds = GluestackStyleSheet.declare( - componentOrderResolvedBaseStyle, - declarationType + '-base', - componentHash ? componentHash : 'css-injected-boot-time', - ExtendedConfig - ); - const descendantBaseStyleIds = GluestackStyleSheet.declare( - descendantOrderResolvedBaseStyle, - declarationType + '-descendant-base', - componentHash ? componentHash : 'css-injected-boot-time-descendant', - ExtendedConfig - ); - const componentVariantStyleIds = GluestackStyleSheet.declare( - componentOrderResolvedVariantStyle, - declarationType + '-variant', - componentHash ? componentHash : 'css-injected-boot-time', - ExtendedConfig - ); - const descendantVariantStyleIds = GluestackStyleSheet.declare( - descendantOrderResolvedVariantStyle, - declarationType + '-descendant-variant', - componentHash ? componentHash : 'css-injected-boot-time-descendant', - ExtendedConfig - ); - - const styleCSSIdsArr = [ - ...componentBaseStyleIds, - ...descendantBaseStyleIds, - ...componentVariantStyleIds, - ...descendantVariantStyleIds, - ]; - - return { - orderedUnResolvedTheme, - componentOrderResolvedBaseStyle, - componentOrderResolvedVariantStyle, - descendantOrderResolvedBaseStyle, - descendantOrderResolvedVariantStyle, - styleCSSIdsArr, - }; -} - const getStyleIdsFromMap = ( CONFIG: any, ExtendedConfig: any, @@ -885,11 +814,13 @@ export function verboseStyled( ExtendedConfig?: any, BUILD_TIME_PARAMS?: { orderedResolved: OrderedSXResolved; + orderedStyleIdsArray?: any; styleIds: { component: StyleIds; descendant: StyleIds; }; themeHash?: string; + componentHash?: string; } ) { const componentHash = stableHash({ @@ -910,15 +841,6 @@ export function verboseStyled( resolvePlatformTheme(theme, Platform.OS); - // GluestackStyleSheet.declare( - // declarationType, - // componentHash, - // originalThemeHash, - // theme, - // ExtendedConfig, - // componentStyleConfig - // ); - const DEBUG_TAG = componentStyleConfig?.DEBUG; const DEBUG = process.env.NODE_ENV === 'development' && DEBUG_TAG ? false : false; @@ -950,10 +872,6 @@ export function verboseStyled( component: StyleIds; descendant: StyleIds; }; - let componentOrderResolvedBaseStyle: any = {}; - let componentOrderResolvedVariantStyle: any = {}; - let descendantOrderResolvedBaseStyle: any = {}; - let descendantOrderResolvedVariantStyle: any = {}; let orderedCSSIds: any = []; // const orderedUnResolvedTheme = updateOrderUnResolvedMap( // theme, @@ -966,8 +884,13 @@ export function verboseStyled( if (BUILD_TIME_PARAMS?.orderedResolved) { orderedResolved = BUILD_TIME_PARAMS?.orderedResolved; + orderedCSSIds = BUILD_TIME_PARAMS?.orderedStyleIdsArray; - injectComponentAndDescendantStyles(orderedResolved, 'boot'); + injectComponentAndDescendantStyles( + orderedResolved, + BUILD_TIME_PARAMS?.componentHash, + 'boot' + ); if (DEBUG) { console.log( `%cOrder resolved build time`, @@ -976,24 +899,14 @@ export function verboseStyled( ); } } else { - const { - orderedUnResolvedTheme: a, - componentOrderResolvedBaseStyle: b, - componentOrderResolvedVariantStyle: c, - descendantOrderResolvedBaseStyle: d, - descendantOrderResolvedVariantStyle: f, - styleCSSIdsArr: g, - } = updateOrderUnResolvedMap( - theme, - componentHash, - declarationType, - ExtendedConfig - ); - - componentOrderResolvedBaseStyle = b; - componentOrderResolvedVariantStyle = c; - descendantOrderResolvedBaseStyle = d; - descendantOrderResolvedVariantStyle = f; + const { orderedUnResolvedTheme: a, styleCSSIdsArr: g } = + updateOrderUnResolvedMap( + theme, + componentHash, + declarationType, + ExtendedConfig, + GluestackStyleSheet + ); orderedCSSIds = g; @@ -1102,42 +1015,14 @@ export function verboseStyled( propertyTokenMap, }; - // GluestackStyleSheet.resolve(CONFIG); - // GluestackStyleSheet.injectInStyle(); - GluestackStyleSheet.resolve( orderedCSSIds, CONFIG, componentExtendedConfig ); - // GluestackStyleSheet.resolveByOrderResolved( - // componentOrderResolvedBaseStyle, - // 'boot-base', - // componentHash, - // componentExtendedConfig, - // CONFIG - // ); - // GluestackStyleSheet.resolveByOrderResolved( - // componentOrderResolvedVariantStyle, - // 'boot-variant', - // componentHash, - // componentExtendedConfig, - // CONFIG - // ); - // GluestackStyleSheet.resolveByOrderResolved( - // descendantOrderResolvedBaseStyle, - // 'boot-descendant-base', - // componentHash, - // componentExtendedConfig, - // CONFIG - // ); - // GluestackStyleSheet.resolveByOrderResolved( - // descendantOrderResolvedVariantStyle, - // 'boot-descendant-variant', - // componentHash, - // componentExtendedConfig, - // CONFIG - // ); + + GluestackStyleSheet.injectInStyle(orderedCSSIds); + Object.assign(styledSystemProps, CONFIG?.aliases); //@ts-ignore From a4753b3a7d500a80b0a36a28b3510a674801d554 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Tue, 22 Aug 2023 02:17:39 +0530 Subject: [PATCH 08/38] feat: add build time gluestack stylesheet --- .../babel-plugin-styled-resolver/src/index.js | 91 +++++++++++-------- 1 file changed, 53 insertions(+), 38 deletions(-) diff --git a/packages/babel-plugin-styled-resolver/src/index.js b/packages/babel-plugin-styled-resolver/src/index.js index e66649a40..0e4899d4b 100644 --- a/packages/babel-plugin-styled-resolver/src/index.js +++ b/packages/babel-plugin-styled-resolver/src/index.js @@ -38,9 +38,16 @@ const { const { CSSPropertiesMap, } = require('@gluestack-style/react/lib/commonjs/core/styled-system'); +const { + StyleInjector, +} = require('@gluestack-style/react/lib/commonjs/style-sheet/index'); +const { + updateOrderUnResolvedMap, +} = require('@gluestack-style/react/lib/commonjs/updateOrderUnResolvedMap'); const IMPORT_NAME = '@gluestack-style/react'; let configThemePath = []; +const BUILD_TIME_GLUESTACK_STYLESHEET = new StyleInjector(); function addQuotesToObjectKeys(code) { const ast = babel.parse(`var a = ${code}`, { @@ -446,62 +453,70 @@ module.exports = function (b) { const verbosedTheme = convertStyledToStyledVerbosed(theme); - let resolvedStyles = styledToStyledResolved( - verbosedTheme, - [], - componentExtendedConfig - ); - - let orderedResolved = - styledResolvedToOrderedSXResolved(resolvedStyles); - // console.log('\n\n >>>>>>>>>>>>>>>>>>>>>\n'); - // console.log(JSON.stringify(verbosedTheme)); - // console.log('\n >>>>>>>>>>>>>>>>>>>>>\n\n'); - - let themeHash = stableHash({ - ...verbosedTheme, + let componentHash = stableHash({ + ...theme, ...componentConfig, + ...ExtendedConfig, }); if (outputLibrary) { - themeHash = outputLibrary + '-' + themeHash; + componentHash = outputLibrary + '-' + componentHash; } - if (platform === 'all') { - INTERNAL_updateCSSStyleInOrderedResolvedWeb( - orderedResolved, - themeHash, - true - ); - } else if (platform === 'web') { - INTERNAL_updateCSSStyleInOrderedResolvedWeb( - orderedResolved, - themeHash, - false - ); - } else { - INTERNAL_updateCSSStyleInOrderedResolved( - orderedResolved, - themeHash, - true - ); - } + const { + orderedUnResolvedTheme, + styleCSSIdsArr: orderedStyleIdsArray, + } = updateOrderUnResolvedMap( + verbosedTheme, + componentHash, + 'boot', + ExtendedConfig, + BUILD_TIME_GLUESTACK_STYLESHEET + ); - let styleIds = getStyleIds(orderedResolved, componentConfig); + BUILD_TIME_GLUESTACK_STYLESHEET.resolve( + orderedStyleIdsArray, + componentExtendedConfig, + ExtendedConfig + ); + + const current_global_map = + BUILD_TIME_GLUESTACK_STYLESHEET.getStyleMap(); + + const orderedResolvedTheme = []; + + current_global_map?.forEach((styledResolved) => { + if (orderedStyleIdsArray.includes(styledResolved?.meta?.cssId)) { + orderedResolvedTheme.push(styledResolved); + } + }); + + let styleIds = getStyleIds(orderedUnResolvedTheme, componentConfig); let styleIdsAst = generateObjectAst(styleIds); - let themeHashAst = t.stringLiteral(themeHash); + let componentHashAst = t.stringLiteral(componentHash); - let orderedResolvedAst = generateArrayAst(orderedResolved); + let orderedResolvedAst = generateArrayAst(orderedResolvedTheme); + + let orderedStyleIdsArrayAst = t.arrayExpression( + orderedStyleIdsArray?.map((cssId) => t.stringLiteral(cssId)) + ); let resultParamsNode = t.objectExpression([ t.objectProperty( t.stringLiteral('orderedResolved'), orderedResolvedAst ), + t.objectProperty( + t.stringLiteral('orderedStyleIdsArray'), + orderedStyleIdsArrayAst + ), t.objectProperty(t.stringLiteral('styleIds'), styleIdsAst), - t.objectProperty(t.stringLiteral('themeHash'), themeHashAst), + t.objectProperty( + t.stringLiteral('componentHash'), + componentHashAst + ), ]); while (args.length < 4) { From d07a0d30d2950c9309e60ffa84ce773971bd0f60 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Tue, 22 Aug 2023 13:08:26 +0530 Subject: [PATCH 09/38] feat: inline babel plugin --- .../babel-plugin-styled-resolver/src/index.js | 326 ++++++++++-------- 1 file changed, 179 insertions(+), 147 deletions(-) diff --git a/packages/babel-plugin-styled-resolver/src/index.js b/packages/babel-plugin-styled-resolver/src/index.js index 0e4899d4b..6e939d583 100644 --- a/packages/babel-plugin-styled-resolver/src/index.js +++ b/packages/babel-plugin-styled-resolver/src/index.js @@ -14,6 +14,9 @@ const { const { styledToStyledResolved, } = require('@gluestack-style/react/lib/commonjs/resolver/styledResolved'); +const { + injectComponentAndDescendantStyles, +} = require('@gluestack-style/react/lib/commonjs/resolver/injectComponentAndDescendantStyles'); const { convertStyledToStyledVerbosed, @@ -549,153 +552,182 @@ module.exports = function (b) { // console.log('\n >>>>>>>>>>>>>>>>>>>>>\n\n'); } }, - // JSXOpeningElement(jsxOpeningElementPath) { - // if ( - // jsxOpeningElementPath.node.name && - // jsxOpeningElementPath.node.name.name && - // guessingStyledComponents.includes( - // jsxOpeningElementPath.node.name.name - // ) - // ) { - // let propsToBePersist = []; - - // let mergedPropertyConfig = { - // ...ConfigDefault?.propertyTokenMap, - // ...propertyTokenMap, - // }; - - // const styledSystemProps = { - // ...CSSPropertiesMap, - // ...CONFIG?.aliases, - // }; - - // const attr = jsxOpeningElementPath.node.attributes; - // attr.forEach((attribute, index) => { - // if (t.isJSXAttribute(attribute)) { - // const propName = attribute.name.name; - // const propValue = attribute.value; - - // if ( - // propValue.type === 'JSXExpressionContainer' && - // !t.isIdentifier(propValue.expression) && - // propName === 'sx' - // ) { - // const objectProperties = propValue.expression; - - // componentSXProp = getObjectFromAstNode(objectProperties); - // } else if (styledSystemProps[propName]) { - // componentUtilityProps = Object.assign( - // componentUtilityProps ?? {}, - // { - // [propName]: propValue.value, - // } - // ); - // } else { - // propsToBePersist.push(attribute); - // } - // } - // }); - - // jsxOpeningElementPath.node.attributes.splice( - // 0, - // jsxOpeningElementPath.node.attributes.length - // ); - - // const sx = { - // ...componentUtilityProps, - // ...componentSXProp, - // }; - - // if (sx) { - // const verbosedSx = convertSxToSxVerbosed(sx); - - // const inlineSxTheme = { - // baseStyle: verbosedSx, - // }; - - // let componentExtendedConfig = merge( - // {}, - // { - // ...ConfigDefault, - // propertyTokenMap: { ...mergedPropertyConfig }, - // } - // ); - - // let resolvedStyles = styledToStyledResolved( - // inlineSxTheme, - // [], - // componentExtendedConfig - // ); - - // let orderedResolved = - // styledResolvedToOrderedSXResolved(resolvedStyles); - - // let sxHash = stableHash(sx); - - // if (outputLibrary) { - // sxHash = outputLibrary + '-' + sxHash; - // } - - // if (platform === 'all') { - // INTERNAL_updateCSSStyleInOrderedResolvedWeb( - // orderedResolved, - // sxHash, - // true, - // 'gs' - // ); - // } else if (platform === 'web') { - // INTERNAL_updateCSSStyleInOrderedResolvedWeb( - // orderedResolved, - // sxHash, - // false, - // 'gs' - // ); - // } else { - // INTERNAL_updateCSSStyleInOrderedResolved( - // orderedResolved, - // sxHash, - // true, - // 'gs' - // ); - // } - - // let styleIds = getStyleIds( - // orderedResolved, - // componentExtendedConfig - // ); - - // let styleIdsAst = generateObjectAst(styleIds); - - // let orderResolvedArrayExpression = []; - - // orderedResolved.forEach((styledResolved) => { - // let orderedResolvedAst = generateObjectAst(styledResolved); - // orderResolvedArrayExpression.push(orderedResolvedAst); - // }); - - // jsxOpeningElementPath.node.attributes = propsToBePersist; - // jsxOpeningElementPath.node.attributes.push( - // t.jsxAttribute( - // t.jsxIdentifier('styledIds'), - // t.jsxExpressionContainer(styleIdsAst) - // ) - // ); - // jsxOpeningElementPath.node.attributes.push( - // t.jsxAttribute( - // t.jsxIdentifier('orderResolved'), - // t.jsxExpressionContainer( - // t.arrayExpression(orderResolvedArrayExpression) - // ) - // ) - // ); - // jsxOpeningElementPath.node.attributes.push( - // t.jsxAttribute(t.jsxIdentifier('sxHash'), t.stringLiteral(sxHash)) - // ); - // } - // componentSXProp = undefined; - // componentUtilityProps = undefined; - // } - // }, + JSXOpeningElement(jsxOpeningElementPath) { + if ( + jsxOpeningElementPath.node.name && + jsxOpeningElementPath.node.name.name && + guessingStyledComponents.includes( + jsxOpeningElementPath.node.name.name + ) + ) { + let propsToBePersist = []; + + let mergedPropertyConfig = { + ...ConfigDefault?.propertyTokenMap, + ...propertyTokenMap, + }; + + const styledSystemProps = { + ...CSSPropertiesMap, + ...CONFIG?.aliases, + }; + + const attr = jsxOpeningElementPath.node.attributes; + attr.forEach((attribute, index) => { + if (t.isJSXAttribute(attribute)) { + const propName = attribute.name.name; + const propValue = attribute.value; + + if ( + propValue.type === 'JSXExpressionContainer' && + !t.isIdentifier(propValue.expression) && + propName === 'sx' + ) { + const objectProperties = propValue.expression; + + componentSXProp = getObjectFromAstNode(objectProperties); + } else if (styledSystemProps[propName]) { + componentUtilityProps = Object.assign( + componentUtilityProps ?? {}, + { + [propName]: propValue.value, + } + ); + } else { + propsToBePersist.push(attribute); + } + } + }); + + jsxOpeningElementPath.node.attributes.splice( + 0, + jsxOpeningElementPath.node.attributes.length + ); + + const sx = { + ...componentUtilityProps, + ...componentSXProp, + }; + + if (sx) { + const verbosedSx = convertSxToSxVerbosed(sx); + + const inlineSxTheme = { + baseStyle: verbosedSx, + }; + + let componentExtendedConfig = merge( + {}, + { + ...ConfigDefault, + propertyTokenMap: { ...mergedPropertyConfig }, + } + ); + + let resolvedStyles = styledToStyledResolved( + inlineSxTheme, + [], + componentExtendedConfig + ); + + let orderedResolved = + styledResolvedToOrderedSXResolved(resolvedStyles); + + let sxHash = stableHash(sx); + + if (outputLibrary) { + sxHash = outputLibrary + '-' + sxHash; + } + + if (platform === 'all') { + INTERNAL_updateCSSStyleInOrderedResolvedWeb( + orderedResolved, + sxHash, + true, + 'gs' + ); + } else if (platform === 'web') { + INTERNAL_updateCSSStyleInOrderedResolvedWeb( + orderedResolved, + sxHash, + false, + 'gs' + ); + } else { + INTERNAL_updateCSSStyleInOrderedResolved( + orderedResolved, + sxHash, + true, + 'gs' + ); + } + + const orderCSSIds = injectComponentAndDescendantStyles( + orderedResolved, + sxHash, + 'inline', + BUILD_TIME_GLUESTACK_STYLESHEET, + false + ); + + const current_global_map = + BUILD_TIME_GLUESTACK_STYLESHEET.getStyleMap(); + + const orderedResolvedTheme = []; + + current_global_map?.forEach((styledResolved) => { + if (orderCSSIds.includes(styledResolved?.meta?.cssId)) { + orderedResolvedTheme.push(styledResolved); + } + }); + + let styleIds = getStyleIds( + orderedResolved, + componentExtendedConfig + ); + + let styleIdsAst = generateObjectAst(styleIds); + + let orderResolvedArrayExpression = []; + + orderedResolved.forEach((styledResolved) => { + let orderedResolvedAst = generateObjectAst(styledResolved); + orderResolvedArrayExpression.push(orderedResolvedAst); + }); + + let orderedStyleIdsArrayAst = t.arrayExpression( + orderCSSIds?.map((cssId) => t.stringLiteral(cssId)) + ); + + jsxOpeningElementPath.node.attributes = propsToBePersist; + jsxOpeningElementPath.node.attributes.push( + t.jsxAttribute( + t.jsxIdentifier('styledIds'), + t.jsxExpressionContainer(styleIdsAst) + ) + ); + jsxOpeningElementPath.node.attributes.push( + t.jsxAttribute( + t.jsxIdentifier('orderResolved'), + t.jsxExpressionContainer( + t.arrayExpression(orderResolvedArrayExpression) + ) + ) + ); + jsxOpeningElementPath.node.attributes.push( + t.jsxAttribute(t.jsxIdentifier('sxHash'), t.stringLiteral(sxHash)) + ); + jsxOpeningElementPath.node.attributes.push( + t.jsxAttribute( + t.jsxIdentifier('orderedStyleIdsArray'), + t.jsxExpressionContainer(orderedStyleIdsArrayAst) + ) + ); + } + componentSXProp = undefined; + componentUtilityProps = undefined; + } + }, }, }; }; From 9ff93787be8d9726880a9a4602724f5289f90750 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Tue, 22 Aug 2023 16:09:08 +0530 Subject: [PATCH 10/38] fix: refactor for inline babel plugin --- .../injectComponentAndDescendantStyles.ts | 20 ++- packages/react/src/styled.tsx | 156 ++++++++++-------- 2 files changed, 99 insertions(+), 77 deletions(-) diff --git a/packages/react/src/resolver/injectComponentAndDescendantStyles.ts b/packages/react/src/resolver/injectComponentAndDescendantStyles.ts index ab4e64982..3e6384eb7 100644 --- a/packages/react/src/resolver/injectComponentAndDescendantStyles.ts +++ b/packages/react/src/resolver/injectComponentAndDescendantStyles.ts @@ -1,4 +1,4 @@ -import { GluestackStyleSheet } from '../style-sheet'; +import { GluestackStyleSheet, StyleInjector } from '../style-sheet'; import type { OrderedSXResolved } from '../types'; import { getComponentResolvedBaseStyle, @@ -10,7 +10,9 @@ import { export function injectComponentAndDescendantStyles( orderedResolved: OrderedSXResolved, styleTagId?: string, - type: 'boot' | 'inline' = 'boot' + type: 'boot' | 'inline' = 'boot', + _GluestackStyleSheet: StyleInjector = GluestackStyleSheet, + shouldInject: boolean = true ) { const componentOrderResolvedBaseStyle = getComponentResolvedBaseStyle(orderedResolved); @@ -22,25 +24,25 @@ export function injectComponentAndDescendantStyles( const descendantOrderResolvedVariantStyle = getDescendantResolvedVariantStyle(orderedResolved); - const componentOrderResolvedBaseStyleIds = GluestackStyleSheet.declare( + const componentOrderResolvedBaseStyleIds = _GluestackStyleSheet.declare( componentOrderResolvedBaseStyle, type + '-base', styleTagId ? styleTagId : 'css-injected-boot-time', {} ); - const descendantOrderResolvedBaseStyleIds = GluestackStyleSheet.declare( + const descendantOrderResolvedBaseStyleIds = _GluestackStyleSheet.declare( descendantOrderResolvedBaseStyle, type + '-descendant-base', styleTagId ? styleTagId : 'css-injected-boot-time-descendant', {} ); - const componentOrderResolvedVariantStyleIds = GluestackStyleSheet.declare( + const componentOrderResolvedVariantStyleIds = _GluestackStyleSheet.declare( componentOrderResolvedVariantStyle, type + '-variant', styleTagId ? styleTagId : 'css-injected-boot-time', {} ); - const descendantOrderResolvedVariantStyleIds = GluestackStyleSheet.declare( + const descendantOrderResolvedVariantStyleIds = _GluestackStyleSheet.declare( descendantOrderResolvedVariantStyle, type + '-descendant-variant', styleTagId ? styleTagId : 'css-injected-boot-time-descendant', @@ -53,7 +55,9 @@ export function injectComponentAndDescendantStyles( ...componentOrderResolvedVariantStyleIds, ...descendantOrderResolvedVariantStyleIds, ]; - GluestackStyleSheet.resolve(styleCSSIdsArr, {}, {}, false); + _GluestackStyleSheet.resolve(styleCSSIdsArr, {}, {}, false); - GluestackStyleSheet.injectInStyle(styleCSSIdsArr); + if (shouldInject) _GluestackStyleSheet.injectInStyle(styleCSSIdsArr); + + return styleCSSIdsArr; } diff --git a/packages/react/src/styled.tsx b/packages/react/src/styled.tsx index 1f2494fb5..613a87a1c 100644 --- a/packages/react/src/styled.tsx +++ b/packages/react/src/styled.tsx @@ -968,6 +968,12 @@ export function verboseStyled( //@ts-ignore // eslint-disable-next-line @typescript-eslint/no-unused-vars styledIds: BUILD_TIME_STYLE_IDS, + //@ts-ignore + orderedStyleIdsArray: BUILD_TIME_orderedStyleIdsArray, + //@ts-ignore + sxHash: BUILD_TIME_sxHash, + //@ts-ignore + orderResolved: BUILD_TIME_orderResolved = [], ...componentProps }: Omit & Partial> & @@ -978,6 +984,7 @@ export function verboseStyled( ref: React.ForwardedRef

) => { const isClient = React.useRef(false); + //@ts-ignore let themeDefaultProps = { ...theme.baseStyle?.props }; @@ -1192,12 +1199,24 @@ export function verboseStyled( // const styleTagId = useRef(`style-tag-sx-${stableHash(sx)}`); // FOR SX RESOLUTION - let orderedComponentSXResolved = []; + let orderedComponentSXResolved: any = []; + let orderedPassingSXResolved: any = []; let sxStyleIds: any = {}; - if (BUILD_TIME_STYLE_IDS) { - sxStyleIds = BUILD_TIME_STYLE_IDS; - } else { + if ( + BUILD_TIME_STYLE_IDS || + Object.keys(filteredComponentSx).length > 0 || + Object.keys(filteredPassingSx).length > 0 + ) { + if (BUILD_TIME_STYLE_IDS) { + sxStyleIds = BUILD_TIME_STYLE_IDS; + + injectComponentAndDescendantStyles( + BUILD_TIME_orderResolved, + BUILD_TIME_sxHash, + 'inline' + ); + } if ( Object.keys(filteredComponentSx).length > 0 || Object.keys(filteredPassingSx).length > 0 @@ -1206,70 +1225,73 @@ export function verboseStyled( // console.setEndTimeStamp('INTERNAL_updateCSSStyleInOrderedResolved'); // console.setStartTimeStamp('injectComponentAndDescendantStyles'); // console.setEndTimeStamp('injectComponentAndDescendantStyles'); - const orderedPassingSXResolved = injectSx(filteredPassingSx, 'passing'); - const orderedSXResolved = [ - ...orderedPassingSXResolved, - ...orderedComponentSXResolved, - ]; - // console.setStartTimeStamp('getStyleIds'); - sxStyleIds = getStyleIds(orderedSXResolved, componentStyleConfig); - /// - // Setting variants to sx property for inline variant resolution - //@ts-ignore - if (!sxStyleIds.component) { - sxStyleIds.component = {}; - } - sxStyleIds.component.variants = componentStyleIds.variants; - //@ts-ignore - sxStyleIds.component.compoundVariants = - componentStyleIds.compoundVariants; - // console.setStartTimeStamp('setColorModeBaseStyleIds'); - sxComponentStyleIds.current = sxStyleIds?.component; - sxDescendantStyleIds.current = sxStyleIds.descendant; - // 315ms - // SX component style - //@ts-ignore - const { - baseStyleCSSIds: sxBaseStyleCSSIds, - variantStyleCSSIds: sxVariantStyleCSSIds, - passingProps: sxPassingProps, - } = getMergedDefaultCSSIdsAndProps( - //@ts-ignore - sxComponentStyleIds.current, - variantProps, - theme, - incomingComponentProps - ); - //@ts-ignore - // applySxStyleCSSIds.current = sxStyleCSSIds; - //@ts-ignore - applySxBaseStyleCSSIds.current = sxBaseStyleCSSIds; - //@ts-ignore - applySxVariantStyleCSSIds.current = sxVariantStyleCSSIds; - sxComponentPassingProps.current = sxPassingProps; + orderedPassingSXResolved = injectSx(filteredPassingSx, 'passing'); + } - const { - componentBaseStyleFlatternStyleIdObject: a, - componentVariantFlatternStyleIdObject: b, - componentCompoundVariantFlatternStyleIdObject: c, - } = getFlattenStyleObjectFromStyleIds(sxComponentStyleIds.current); - - if (sxDescendantStyleIds.current) { - Object.keys(sxDescendantStyleIds.current).forEach( - (currentDescendant: any) => { - sxDescendantFlattenStyles[currentDescendant] = - getFlattenStyleObjectFromStyleIds( - sxDescendantStyleIds.current[currentDescendant] - ); - } - ); - } + const orderedSXResolved = [ + ...orderedPassingSXResolved, + ...orderedComponentSXResolved, + ...BUILD_TIME_orderResolved, + ]; + // console.setStartTimeStamp('getStyleIds'); + sxStyleIds = getStyleIds(orderedSXResolved, componentStyleConfig); - sxBaseStyleFlatternStyleObject = a; - sxVariantFlatternStyleObject = b; - sxCompoundVariantFlatternStyleObject = c; - // SX descendants + /// + // Setting variants to sx property for inline variant resolution + //@ts-ignore + if (!sxStyleIds.component) { + sxStyleIds.component = {}; } + sxStyleIds.component.variants = componentStyleIds.variants; + //@ts-ignore + sxStyleIds.component.compoundVariants = + componentStyleIds.compoundVariants; + // console.setStartTimeStamp('setColorModeBaseStyleIds'); + sxComponentStyleIds.current = sxStyleIds?.component; + sxDescendantStyleIds.current = sxStyleIds.descendant; + // 315ms + // SX component style + //@ts-ignore + const { + baseStyleCSSIds: sxBaseStyleCSSIds, + variantStyleCSSIds: sxVariantStyleCSSIds, + passingProps: sxPassingProps, + } = getMergedDefaultCSSIdsAndProps( + //@ts-ignore + sxComponentStyleIds.current, + variantProps, + theme, + incomingComponentProps + ); + //@ts-ignore + // applySxStyleCSSIds.current = sxStyleCSSIds; + //@ts-ignore + applySxBaseStyleCSSIds.current = sxBaseStyleCSSIds; + //@ts-ignore + applySxVariantStyleCSSIds.current = sxVariantStyleCSSIds; + sxComponentPassingProps.current = sxPassingProps; + + const { + componentBaseStyleFlatternStyleIdObject: a, + componentVariantFlatternStyleIdObject: b, + componentCompoundVariantFlatternStyleIdObject: c, + } = getFlattenStyleObjectFromStyleIds(sxComponentStyleIds.current); + + if (sxDescendantStyleIds.current) { + Object.keys(sxDescendantStyleIds.current).forEach( + (currentDescendant: any) => { + sxDescendantFlattenStyles[currentDescendant] = + getFlattenStyleObjectFromStyleIds( + sxDescendantStyleIds.current[currentDescendant] + ); + } + ); + } + + sxBaseStyleFlatternStyleObject = a; + sxVariantFlatternStyleObject = b; + sxCompoundVariantFlatternStyleObject = c; + // SX descendants } if (containsDescendant) { @@ -1510,19 +1532,15 @@ export function verboseStyled( // END: Unable to optimize because of useEffect overhead and stableHash to prevent rerender const styleCSSIds = [ - ...mergedBaseStyleCSSIds, ...applyBaseStyleCSSIds, ...applyAncestorBaseStyleCSSIds, - ...mergedVariantStyleCSSIds, ...applyVariantStyleCSSIds, ...applyAncestorVariantStyleCSSIds, ...applyComponentStateBaseStyleIds, ...applyComponentStateVariantStyleIds, ...applySxVariantStyleCSSIds.current, ...applySxStateBaseStyleCSSIds, - ...mergedSXVariantStyleCSSIds, ...applySxStateVariantStyleCSSIds, - ...mergedSXBaseStyleCSSIds, ...applySxBaseStyleCSSIds.current, ]; From e0586c2a52d89f319cd5a201a95f232ed536a52a Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Wed, 23 Aug 2023 00:48:54 +0530 Subject: [PATCH 11/38] feat: runtime fallback for identifiers --- .../babel-plugin-styled-resolver/src/index.js | 120 ++++++++++++++++-- 1 file changed, 110 insertions(+), 10 deletions(-) diff --git a/packages/babel-plugin-styled-resolver/src/index.js b/packages/babel-plugin-styled-resolver/src/index.js index 6e939d583..c470b67f1 100644 --- a/packages/babel-plugin-styled-resolver/src/index.js +++ b/packages/babel-plugin-styled-resolver/src/index.js @@ -47,11 +47,69 @@ const { const { updateOrderUnResolvedMap, } = require('@gluestack-style/react/lib/commonjs/updateOrderUnResolvedMap'); +const { + setObjectKeyValue, +} = require('@gluestack-style/react/lib/commonjs/utils'); const IMPORT_NAME = '@gluestack-style/react'; let configThemePath = []; const BUILD_TIME_GLUESTACK_STYLESHEET = new StyleInjector(); +const convertExpressionContainerToStaticObject = ( + properties, + result = {}, + keyPath = [], + propsToBePersist = {} +) => { + properties?.forEach((property, index) => { + if (property.value.type === 'ObjectExpression') { + keyPath.push(property.key.value); + convertExpressionContainerToStaticObject( + property.value.properties, + result, + keyPath, + propsToBePersist + ); + keyPath.pop(); + } else if (property.value.type === 'Identifier') { + if (property.key.value) { + setObjectKeyValue( + propsToBePersist, + [...keyPath, property.key.value], + property.value.name + ); + } + if (property.key.name) { + setObjectKeyValue( + propsToBePersist, + [...keyPath, property.key.name], + property.value.name + ); + } + } else { + if (property.key.value) { + setObjectKeyValue( + result, + [...keyPath, property.key.value], + property.value.value + ); + } + + if (property.key.name) { + setObjectKeyValue( + result, + [...keyPath, property.key.name], + property.value.value + ); + } + } + }); + return { + result, + propsToBePersist, + }; +}; + function addQuotesToObjectKeys(code) { const ast = babel.parse(`var a = ${code}`, { presets: [babelPresetTypeScript], @@ -246,6 +304,21 @@ let ConfigDefault = CONFIG; module.exports = function (b) { const { types: t } = b; + function generateObjectAstOfIdentifiers(obj) { + let properties = Object.keys(obj).map((key) => { + if (typeof obj[key] === 'object') { + return t.objectProperty( + t.stringLiteral(key), + generateObjectAstOfIdentifiers(obj[key]) + ); + } else { + return t.objectProperty(t.stringLiteral(key), t.identifier(obj[key])); + } + }); + + return t.objectExpression(properties.filter((property) => property)); + } + function generateObjectAst(obj) { let properties = Object.entries(obj).map(([key, value]) => { if (typeof value === 'undefined') { @@ -561,6 +634,8 @@ module.exports = function (b) { ) ) { let propsToBePersist = []; + let sxPropsWithIdentifier = {}; + let utilityPropsWithIdentifier = {}; let mergedPropertyConfig = { ...ConfigDefault?.propertyTokenMap, @@ -569,7 +644,7 @@ module.exports = function (b) { const styledSystemProps = { ...CSSPropertiesMap, - ...CONFIG?.aliases, + ...ConfigDefault?.aliases, }; const attr = jsxOpeningElementPath.node.attributes; @@ -583,16 +658,26 @@ module.exports = function (b) { !t.isIdentifier(propValue.expression) && propName === 'sx' ) { - const objectProperties = propValue.expression; - - componentSXProp = getObjectFromAstNode(objectProperties); + const objectProperties = propValue.expression.properties; + + const { + result: sxPropsObject, + propsToBePersist: sxPropsWithIdentfier, + } = convertExpressionContainerToStaticObject(objectProperties); + componentSXProp = sxPropsObject; + sxPropsWithIdentifier = sxPropsWithIdentfier; } else if (styledSystemProps[propName]) { - componentUtilityProps = Object.assign( - componentUtilityProps ?? {}, - { - [propName]: propValue.value, - } - ); + if (propValue.type === 'JSXExpressionContainer') { + utilityPropsWithIdentifier[propName] = + propValue.expression.name; + } else { + componentUtilityProps = Object.assign( + componentUtilityProps ?? {}, + { + [propName]: propValue.value, + } + ); + } } else { propsToBePersist.push(attribute); } @@ -604,6 +689,10 @@ module.exports = function (b) { jsxOpeningElementPath.node.attributes.length ); + for (const key in utilityPropsWithIdentifier) { + if (componentSXProp[key]) delete utilityPropsWithIdentifier[key]; + } + const sx = { ...componentUtilityProps, ...componentSXProp, @@ -700,6 +789,17 @@ module.exports = function (b) { ); jsxOpeningElementPath.node.attributes = propsToBePersist; + + const propsWithIdentifierAst = generateObjectAstOfIdentifiers( + merge(sxPropsWithIdentifier, utilityPropsWithIdentifier) + ); + + jsxOpeningElementPath.node.attributes.push( + t.jsxAttribute( + t.jsxIdentifier('sx'), + t.jsxExpressionContainer(propsWithIdentifierAst) + ) + ); jsxOpeningElementPath.node.attributes.push( t.jsxAttribute( t.jsxIdentifier('styledIds'), From 5f21b12e26a496ce1100f019f890c9a4500037bc Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Wed, 23 Aug 2023 13:08:06 +0530 Subject: [PATCH 12/38] fix: jsx expression container string literals and number literals --- .../babel-plugin-styled-resolver/src/index.js | 56 +++++++++++-------- 1 file changed, 34 insertions(+), 22 deletions(-) diff --git a/packages/babel-plugin-styled-resolver/src/index.js b/packages/babel-plugin-styled-resolver/src/index.js index c470b67f1..37ed9a595 100644 --- a/packages/babel-plugin-styled-resolver/src/index.js +++ b/packages/babel-plugin-styled-resolver/src/index.js @@ -653,31 +653,43 @@ module.exports = function (b) { const propName = attribute.name.name; const propValue = attribute.value; - if ( - propValue.type === 'JSXExpressionContainer' && - !t.isIdentifier(propValue.expression) && - propName === 'sx' - ) { - const objectProperties = propValue.expression.properties; - - const { - result: sxPropsObject, - propsToBePersist: sxPropsWithIdentfier, - } = convertExpressionContainerToStaticObject(objectProperties); - componentSXProp = sxPropsObject; - sxPropsWithIdentifier = sxPropsWithIdentfier; - } else if (styledSystemProps[propName]) { - if (propValue.type === 'JSXExpressionContainer') { - utilityPropsWithIdentifier[propName] = - propValue.expression.name; + if (propValue.type === 'JSXExpressionContainer') { + if (t.isIdentifier(propValue.expression)) { + propsToBePersist.push(attribute); } else { - componentUtilityProps = Object.assign( - componentUtilityProps ?? {}, - { - [propName]: propValue.value, + if (propName === 'sx') { + const objectProperties = propValue.expression.properties; + + const { + result: sxPropsObject, + propsToBePersist: sxPropsWithIdentfier, + } = + convertExpressionContainerToStaticObject( + objectProperties + ); + componentSXProp = sxPropsObject; + sxPropsWithIdentifier = sxPropsWithIdentfier; + } else if ( + t.isStringLiteral(propValue.expression) || + t.isNumericLiteral(propValue.expression) + ) { + if (styledSystemProps[propName]) { + componentUtilityProps = Object.assign( + componentUtilityProps ?? {}, + { + [propName]: propValue.expression.value, + } + ); } - ); + } } + } else if (styledSystemProps[propName]) { + componentUtilityProps = Object.assign( + componentUtilityProps ?? {}, + { + [propName]: propValue.value, + } + ); } else { propsToBePersist.push(attribute); } From ea9b33dd13558e30af922cb0665fd820fab2485a Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Wed, 23 Aug 2023 16:18:43 +0530 Subject: [PATCH 13/38] fix: identifiers and template literals persist for sx --- .../babel-plugin-styled-resolver/src/index.js | 85 +++++++++++++++---- 1 file changed, 69 insertions(+), 16 deletions(-) diff --git a/packages/babel-plugin-styled-resolver/src/index.js b/packages/babel-plugin-styled-resolver/src/index.js index 37ed9a595..b864f79d1 100644 --- a/packages/babel-plugin-styled-resolver/src/index.js +++ b/packages/babel-plugin-styled-resolver/src/index.js @@ -297,6 +297,59 @@ function getObjectFromAstNode(node) { return JSON.parse(objectCode); } +function removePropertiesVisitor(path) { + if (path.node.type === 'ObjectProperty') { + const valueNode = path.node.value; + if (types.isStringLiteral(valueNode) || types.isNumericLiteral(valueNode)) { + path.remove(); + } + } + if ( + types.isObjectExpression(path.node) || + types.isObjectProperty(path.node) + ) { + if (Array.isArray(path.get('properties'))) + path.get('properties').forEach((propertyPath) => { + removePropertiesVisitor(propertyPath); + }); + } +} + +function addQuotesToObjectKeysIdentifiers(code) { + const ast = babel.parse(`var a = ${code}`, { + presets: [babelPresetTypeScript], + plugins: ['typescript'], + sourceType: 'module', + }); + + traverse(ast, { + ObjectProperty: (path) => { + removePropertiesVisitor(path); + }, + }); + + let initAst; + + traverse(ast, { + VariableDeclarator: (path) => { + initAst = path.node.init; + }, + }); + + return initAst; +} + +function getIdentifiersObjectFromAstNode(node) { + let objectCode = generate(node).code; + + return addQuotesToObjectKeysIdentifiers( + objectCode.replace( + /\\"|"(?:\\"|[^"])*"|(\/\/.*|\/\*[\s\S]*?\*\/)/g, + (m, g) => (g ? '' : m) + ) + ); +} + const CONFIG = getExportedConfigFromFileString(getConfig()); let ConfigDefault = CONFIG; @@ -653,22 +706,22 @@ module.exports = function (b) { const propName = attribute.name.name; const propValue = attribute.value; - if (propValue.type === 'JSXExpressionContainer') { + if (t.isJSXExpressionContainer(propValue)) { if (t.isIdentifier(propValue.expression)) { propsToBePersist.push(attribute); } else { if (propName === 'sx') { const objectProperties = propValue.expression.properties; - const { - result: sxPropsObject, - propsToBePersist: sxPropsWithIdentfier, - } = + sxPropsWithIdentifier = getIdentifiersObjectFromAstNode( + propValue.expression + ); + + const { result: sxPropsObject } = convertExpressionContainerToStaticObject( objectProperties ); componentSXProp = sxPropsObject; - sxPropsWithIdentifier = sxPropsWithIdentfier; } else if ( t.isStringLiteral(propValue.expression) || t.isNumericLiteral(propValue.expression) @@ -681,6 +734,8 @@ module.exports = function (b) { } ); } + } else { + propsToBePersist.push(attribute); } } } else if (styledSystemProps[propName]) { @@ -802,16 +857,14 @@ module.exports = function (b) { jsxOpeningElementPath.node.attributes = propsToBePersist; - const propsWithIdentifierAst = generateObjectAstOfIdentifiers( - merge(sxPropsWithIdentifier, utilityPropsWithIdentifier) - ); - - jsxOpeningElementPath.node.attributes.push( - t.jsxAttribute( - t.jsxIdentifier('sx'), - t.jsxExpressionContainer(propsWithIdentifierAst) - ) - ); + if (sxPropsWithIdentifier) { + jsxOpeningElementPath.node.attributes.push( + t.jsxAttribute( + t.jsxIdentifier('sx'), + t.jsxExpressionContainer(sxPropsWithIdentifier) + ) + ); + } jsxOpeningElementPath.node.attributes.push( t.jsxAttribute( t.jsxIdentifier('styledIds'), From 4da823022b6bb6e8a12df5986f02ea4f466f6144 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Wed, 23 Aug 2023 19:46:17 +0530 Subject: [PATCH 14/38] v0.2.0-alpha.0 --- packages/babel-plugin-styled-resolver/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/babel-plugin-styled-resolver/package.json b/packages/babel-plugin-styled-resolver/package.json index 94f8dd6cd..f0f05a604 100644 --- a/packages/babel-plugin-styled-resolver/package.json +++ b/packages/babel-plugin-styled-resolver/package.json @@ -1,6 +1,6 @@ { "name": "@gluestack-style/babel-plugin-styled-resolver", - "version": "0.1.15-alpha.0", + "version": "0.2.0-alpha.0", "description": "A gluestack-style babel plugin that transpiles your styled function calls and resolves the component styling in build time.", "keywords": [ "css-in-js", From 611ed22a2754f42a82d8639a9944ffe6b0693b51 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Wed, 23 Aug 2023 19:49:26 +0530 Subject: [PATCH 15/38] v0.2.4-alpha.1 --- packages/react/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react/package.json b/packages/react/package.json index b2ba9dedf..5cadae64e 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@gluestack-style/react", "description": "A universal & performant styling library for React Native, Next.js & React", - "version": "0.2.4-alpha.0", + "version": "0.2.4-alpha.1", "keywords": [ "React Native", "Next.js", From 649416620a4e634330999f1d74f1245677261f60 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Thu, 24 Aug 2023 12:01:54 +0530 Subject: [PATCH 16/38] fix: edge case for empty jsx expression container --- packages/babel-plugin-styled-resolver/src/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/babel-plugin-styled-resolver/src/index.js b/packages/babel-plugin-styled-resolver/src/index.js index b864f79d1..b5e7a641b 100644 --- a/packages/babel-plugin-styled-resolver/src/index.js +++ b/packages/babel-plugin-styled-resolver/src/index.js @@ -857,7 +857,7 @@ module.exports = function (b) { jsxOpeningElementPath.node.attributes = propsToBePersist; - if (sxPropsWithIdentifier) { + if (Object.keys(sxPropsWithIdentifier).length > 0) { jsxOpeningElementPath.node.attributes.push( t.jsxAttribute( t.jsxIdentifier('sx'), From b9d9ea44d88dddb6c8f762b7a6856217ed38cfd5 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Thu, 24 Aug 2023 12:12:14 +0530 Subject: [PATCH 17/38] fix: dev enviornment for babel plugin --- example/ui-examples-babel/App.tsx | 28 ++++-- example/ui-examples-babel/babel.config.js | 2 +- .../src/core/Box/styled-box.tsx | 7 ++ .../src/core/Heading/styled-heading.tsx | 85 +++++++++++++++++++ example/ui-examples-babel/src/core/index.ts | 4 + example/ui-examples-babel/src/core/styled.tsx | 2 +- example/ui-examples-babel/src/index.tsx | 43 ---------- example/ui-examples/babel.config.js | 22 ++--- .../core/styled/index.tsx | 13 +-- 9 files changed, 129 insertions(+), 77 deletions(-) create mode 100644 example/ui-examples-babel/src/core/Box/styled-box.tsx create mode 100644 example/ui-examples-babel/src/core/Heading/styled-heading.tsx create mode 100644 example/ui-examples-babel/src/core/index.ts delete mode 100644 example/ui-examples-babel/src/index.tsx diff --git a/example/ui-examples-babel/App.tsx b/example/ui-examples-babel/App.tsx index bbf1f2285..71c134d3d 100644 --- a/example/ui-examples-babel/App.tsx +++ b/example/ui-examples-babel/App.tsx @@ -1,17 +1,18 @@ /* eslint-disable react-native/no-inline-styles */ import React from 'react'; -import { SafeAreaView, StyleSheet, View } from 'react-native'; +import { SafeAreaView, StyleSheet } from 'react-native'; import { config } from './gluestack-ui.config'; import './styles'; -import { StyledProvider } from '@gluestack-style/react'; -import { styled } from './src/core/styled'; - -const Box = styled(View, { - bg: '$red500', - padding: '$10', -}); +import { StyledProvider } from '../../packages/react'; +import { Box, Heading } from './src/core'; +const bg = '$40'; +const abc = '$pink500'; export default function App() { + const [hover, setHover] = React.useState(false); + const [active, setActive] = React.useState(false); + + console.log(hover, active, '+++'); return ( <> {/* top SafeAreaView */} @@ -25,8 +26,17 @@ export default function App() { {/* gluestack-ui provider */} setHover(true)} + onHoverOut={() => setHover(false)} + onPressIn={() => setActive(true)} + onPressOut={() => setActive(false)} + states={{ + hover, + active, + }} + bg={{}} sx={{ - bg: '$amber500', + bg: '$red500', }} /> diff --git a/example/ui-examples-babel/babel.config.js b/example/ui-examples-babel/babel.config.js index 2984e2d47..3af05f17f 100644 --- a/example/ui-examples-babel/babel.config.js +++ b/example/ui-examples-babel/babel.config.js @@ -12,7 +12,7 @@ module.exports = function (api) { configPath: path.join(__dirname, './gluestack-ui.config.ts'), configThemePath: ['theme'], filename: path.resolve(__dirname, './src/core/styled'), - outputLibrary: 'MEEEE', + uiLibraryPath: path.resolve(__dirname, './src/core'), }, ], [ diff --git a/example/ui-examples-babel/src/core/Box/styled-box.tsx b/example/ui-examples-babel/src/core/Box/styled-box.tsx new file mode 100644 index 000000000..46eab8628 --- /dev/null +++ b/example/ui-examples-babel/src/core/Box/styled-box.tsx @@ -0,0 +1,7 @@ +import { Pressable } from 'react-native'; +import { styled } from '../styled'; + +export default styled(Pressable, { + bg: '$red500', + padding: '$10', +}); diff --git a/example/ui-examples-babel/src/core/Heading/styled-heading.tsx b/example/ui-examples-babel/src/core/Heading/styled-heading.tsx new file mode 100644 index 000000000..0a18ff49b --- /dev/null +++ b/example/ui-examples-babel/src/core/Heading/styled-heading.tsx @@ -0,0 +1,85 @@ +// import { styled } from '../../styled'; + +import { styled } from '../styled'; +import { H1, H2, H3, H4, H5, H6 } from '@expo/html-elements'; +export default styled(H1, { + color: '$textLight900', + letterSpacing: '$sm', + fontWeight: '$bold', + fontFamily: '$heading', + + // Overrides expo-html default styling + marginVertical: 0, + _dark: { + color: '$textDark50', + }, + // variants: { + // size: { + // '5xl': { + // //@ts-ignore + // // props: { as: H1 }, + // fontSize: '$6xl', + // lineHeight: '$7xl', + // }, + // '4xl': { + // //@ts-ignore + // // props: { as: H1 }, + // fontSize: '$5xl', + // lineHeight: '$6xl', + // }, + + // '3xl': { + // //@ts-ignore + // // props: { as: H1 }, + // fontSize: '$4xl', + // lineHeight: '$5xl', + // }, + + // '2xl': { + // //@ts-ignore + // // props: { as: H2 }, + // fontSize: '$3xl', + // lineHeight: '$3xl', + // }, + + // 'xl': { + // //@ts-ignore + // // props: { as: H3 }, + // fontSize: '$2xl', + // lineHeight: '$3xl', + // }, + + // 'lg': { + // //@ts-ignore + // // props: { as: H4 }, + // fontSize: '$xl', + // lineHeight: '$2xl', + // }, + + // 'md': { + // //@ts-ignore + // // props: { as: H5 }, + // fontSize: '$lg', + // lineHeight: '$lg', + // }, + + // 'sm': { + // //@ts-ignore + // // props: { as: H6 }, + // fontSize: '$md', + // lineHeight: '$lg', + // }, + + // 'xs': { + // //@ts-ignore + // // props: { as: H6 }, + // fontSize: '$sm', + // lineHeight: '$xs', + // }, + // }, + // }, + + // defaultProps: { + // size: 'lg', + // }, +}); diff --git a/example/ui-examples-babel/src/core/index.ts b/example/ui-examples-babel/src/core/index.ts new file mode 100644 index 000000000..d16fa7761 --- /dev/null +++ b/example/ui-examples-babel/src/core/index.ts @@ -0,0 +1,4 @@ +import styledBox from './Box/styled-box'; +import styledHeading from './Heading/styled-heading'; + +export { styledBox as Box, styledHeading as Heading }; diff --git a/example/ui-examples-babel/src/core/styled.tsx b/example/ui-examples-babel/src/core/styled.tsx index 2eb4b8cbf..1159829da 100644 --- a/example/ui-examples-babel/src/core/styled.tsx +++ b/example/ui-examples-babel/src/core/styled.tsx @@ -1 +1 @@ -export { styled } from '@gluestack-style/react'; +export { styled } from '../../../../packages/react'; diff --git a/example/ui-examples-babel/src/index.tsx b/example/ui-examples-babel/src/index.tsx deleted file mode 100644 index 2bbcbaa61..000000000 --- a/example/ui-examples-babel/src/index.tsx +++ /dev/null @@ -1,43 +0,0 @@ -/* eslint-disable react-native/no-inline-styles */ -// @ts-nocheck -import React from 'react'; -import { SafeAreaView, StyleSheet, View } from 'react-native'; -import { config } from '../gluestack-ui.config'; -import './styles'; -import { styled, StyledProvider } from '@gluestack-style/react'; - -const Box = styled(View, { - bg: '$red500', - padding: '$10', -}); - -export default function App() { - return ( - <> - {/* top SafeAreaView */} - - {/* bottom SafeAreaView */} - - {/* gluestack-ui provider */} - - - - - - ); -} - -const styles = StyleSheet.create({ - container: { - flex: 1, - overflow: 'hidden', - }, -}); diff --git a/example/ui-examples/babel.config.js b/example/ui-examples/babel.config.js index 351bb0187..b2aff52d1 100644 --- a/example/ui-examples/babel.config.js +++ b/example/ui-examples/babel.config.js @@ -10,12 +10,13 @@ module.exports = function (api) { myBabel, { configPath: path.join(__dirname, './gluestack-ui.config.ts'), - configThemePath: ['config', 'theme'], - // libraryName: '../../styled', + configThemePath: ['theme'], + // libraryName: '@gluestack-style/react', filename: path.join( __dirname, './gluestack-ui-components/core/styled' ), + uiLibraryPath: path.join(__dirname, './gluestack-ui-components'), }, ], [ @@ -23,15 +24,14 @@ module.exports = function (api) { { alias: { // For development, we want to alias the library to the source - ['@gluestack-style/react']: path.join( - __dirname, - '../../packages/react/src' - ), - ['@gluestack-style/animation-plugin']: path.join( - __dirname, - '../../packages/animation-plugin/src' - ), - + // ['@gluestack-style/react']: path.join( + // __dirname, + // '../../packages/react/src' + // ), + // ['@gluestack-style/animation-plugin']: path.join( + // __dirname, + // '../../packages/animation-plugin/src' + // ), // ['@dank-style/react']: path.join( // __dirname, // '../../packages/react/src' diff --git a/example/ui-examples/gluestack-ui-components/core/styled/index.tsx b/example/ui-examples/gluestack-ui-components/core/styled/index.tsx index 12c33d6ec..ce351c630 100644 --- a/example/ui-examples/gluestack-ui-components/core/styled/index.tsx +++ b/example/ui-examples/gluestack-ui-components/core/styled/index.tsx @@ -1,12 +1 @@ -import { createStyled, FontResolver } from '@gluestack-style/react'; -import { AnimationResolver } from '@gluestack-style/animation-plugin'; - -// const fontMapper = (style: any) => { -// }; - -export const styled = createStyled([ - // new AnimationResolver({}), - // new FontResolver({ - // // mapFonts: fontMapper, - // }), -]); +export { styled } from '../../../../../packages/react'; From 5f30069d05a2947ea57a667e2b9bf88a1300ac7c Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Thu, 24 Aug 2023 12:39:20 +0530 Subject: [PATCH 18/38] fix: dev env for kitchen-sink --- example/ui-examples/babel.config.js | 42 +++++++++---------- .../core/styled/index.tsx | 2 +- packages/react/src/styled.tsx | 6 ++- 3 files changed, 26 insertions(+), 24 deletions(-) diff --git a/example/ui-examples/babel.config.js b/example/ui-examples/babel.config.js index b2aff52d1..9631d8424 100644 --- a/example/ui-examples/babel.config.js +++ b/example/ui-examples/babel.config.js @@ -6,32 +6,32 @@ module.exports = function (api) { return { presets: ['babel-preset-expo'], plugins: [ - [ - myBabel, - { - configPath: path.join(__dirname, './gluestack-ui.config.ts'), - configThemePath: ['theme'], - // libraryName: '@gluestack-style/react', - filename: path.join( - __dirname, - './gluestack-ui-components/core/styled' - ), - uiLibraryPath: path.join(__dirname, './gluestack-ui-components'), - }, - ], + // [ + // myBabel, + // { + // configPath: path.join(__dirname, './gluestack-ui.config.ts'), + // configThemePath: ['theme'], + // // libraryName: '@gluestack-style/react', + // filename: path.join( + // __dirname, + // './gluestack-ui-components/core/styled' + // ), + // uiLibraryPath: path.join(__dirname, './gluestack-ui-components'), + // }, + // ], [ 'module-resolver', { alias: { // For development, we want to alias the library to the source - // ['@gluestack-style/react']: path.join( - // __dirname, - // '../../packages/react/src' - // ), - // ['@gluestack-style/animation-plugin']: path.join( - // __dirname, - // '../../packages/animation-plugin/src' - // ), + ['@gluestack-style/react']: path.join( + __dirname, + '../../packages/react/src' + ), + ['@gluestack-style/animation-plugin']: path.join( + __dirname, + '../../packages/animation-plugin/src' + ), // ['@dank-style/react']: path.join( // __dirname, // '../../packages/react/src' diff --git a/example/ui-examples/gluestack-ui-components/core/styled/index.tsx b/example/ui-examples/gluestack-ui-components/core/styled/index.tsx index ce351c630..2eb4b8cbf 100644 --- a/example/ui-examples/gluestack-ui-components/core/styled/index.tsx +++ b/example/ui-examples/gluestack-ui-components/core/styled/index.tsx @@ -1 +1 @@ -export { styled } from '../../../../../packages/react'; +export { styled } from '@gluestack-style/react'; diff --git a/packages/react/src/styled.tsx b/packages/react/src/styled.tsx index fce364379..c85c485d6 100644 --- a/packages/react/src/styled.tsx +++ b/packages/react/src/styled.tsx @@ -1652,12 +1652,14 @@ export function styled( componentStyleConfig?: ConfigType, ExtendedConfig?: ExtendedConfigType, BUILD_TIME_PARAMS?: { - orderedResolved?: OrderedSXResolved; - styleIds?: { + orderedResolved: OrderedSXResolved; + orderedStyleIdsArray?: any; + styleIds: { component: StyleIds; descendant: StyleIds; }; themeHash?: string; + componentHash?: string; } ) { const DEBUG_TAG = componentStyleConfig?.DEBUG; From 0e2629d2d2aa376507fa98618eee4b469909036f Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 12:59:50 +0530 Subject: [PATCH 19/38] fix: descendant build resolution --- .../babel-plugin-styled-resolver/src/index.js | 88 ++++++++++++++----- 1 file changed, 66 insertions(+), 22 deletions(-) diff --git a/packages/babel-plugin-styled-resolver/src/index.js b/packages/babel-plugin-styled-resolver/src/index.js index b5e7a641b..b8d003498 100644 --- a/packages/babel-plugin-styled-resolver/src/index.js +++ b/packages/babel-plugin-styled-resolver/src/index.js @@ -298,6 +298,7 @@ function getObjectFromAstNode(node) { } function removePropertiesVisitor(path) { + const nodeName = path?.node?.key?.name ?? path?.node?.key?.value; if (path.node.type === 'ObjectProperty') { const valueNode = path.node.value; if (types.isStringLiteral(valueNode) || types.isNumericLiteral(valueNode)) { @@ -306,7 +307,11 @@ function removePropertiesVisitor(path) { } if ( types.isObjectExpression(path.node) || - types.isObjectProperty(path.node) + (types.isObjectProperty(path.node) && + nodeName && + nodeName.startsWith('_') && + nodeName !== '_light' && + nodeName !== '_dark') ) { if (Array.isArray(path.get('properties'))) path.get('properties').forEach((propertyPath) => { @@ -592,19 +597,17 @@ module.exports = function (b) { componentHash = outputLibrary + '-' + componentHash; } - const { - orderedUnResolvedTheme, - styleCSSIdsArr: orderedStyleIdsArray, - } = updateOrderUnResolvedMap( + const { styledIds, verbosedStyleIds } = updateOrderUnResolvedMap( verbosedTheme, componentHash, 'boot', - ExtendedConfig, - BUILD_TIME_GLUESTACK_STYLESHEET + componentConfig, + BUILD_TIME_GLUESTACK_STYLESHEET, + platform ); - BUILD_TIME_GLUESTACK_STYLESHEET.resolve( - orderedStyleIdsArray, + const toBeInjected = BUILD_TIME_GLUESTACK_STYLESHEET.resolve( + styledIds, componentExtendedConfig, ExtendedConfig ); @@ -615,21 +618,19 @@ module.exports = function (b) { const orderedResolvedTheme = []; current_global_map?.forEach((styledResolved) => { - if (orderedStyleIdsArray.includes(styledResolved?.meta?.cssId)) { + if (styledIds.includes(styledResolved?.meta?.cssId)) { orderedResolvedTheme.push(styledResolved); } }); - let styleIds = getStyleIds(orderedUnResolvedTheme, componentConfig); - - let styleIdsAst = generateObjectAst(styleIds); + let styleIdsAst = generateObjectAst(verbosedStyleIds); - let componentHashAst = t.stringLiteral(componentHash); + let toBeInjectedAst = generateObjectAst(toBeInjected); let orderedResolvedAst = generateArrayAst(orderedResolvedTheme); let orderedStyleIdsArrayAst = t.arrayExpression( - orderedStyleIdsArray?.map((cssId) => t.stringLiteral(cssId)) + styledIds?.map((cssId) => t.stringLiteral(cssId)) ); let resultParamsNode = t.objectExpression([ @@ -638,13 +639,16 @@ module.exports = function (b) { orderedResolvedAst ), t.objectProperty( - t.stringLiteral('orderedStyleIdsArray'), + t.stringLiteral('toBeInjected'), + toBeInjectedAst + ), + t.objectProperty( + t.stringLiteral('styledIds'), orderedStyleIdsArrayAst ), - t.objectProperty(t.stringLiteral('styleIds'), styleIdsAst), t.objectProperty( - t.stringLiteral('componentHash'), - componentHashAst + t.stringLiteral('verbosedStyleIds'), + styleIdsAst ), ]); @@ -826,6 +830,38 @@ module.exports = function (b) { false ); + // let resolvedStyles = styledToStyledResolved( + // inlineSxTheme, + // [], + // componentExtendedConfig + // ); + + // let orderedResolved = + // styledResolvedToOrderedSXResolved(resolvedStyles); + + // let sxHash = stableHash(sx); + + // if (outputLibrary) { + // sxHash = outputLibrary + '-' + sxHash; + // } + + // const { styledIds, verbosedStyleIds } = updateOrderUnResolvedMap( + // inlineSxTheme, + // sxHash, + // 'inline', + // {}, + // BUILD_TIME_GLUESTACK_STYLESHEET, + // platform + // ); + + // const toBeInjected = BUILD_TIME_GLUESTACK_STYLESHEET.resolve( + // styledIds, + // componentExtendedConfig, + // {}, + // true, + // 'inline' + // ); + const current_global_map = BUILD_TIME_GLUESTACK_STYLESHEET.getStyleMap(); @@ -844,6 +880,8 @@ module.exports = function (b) { let styleIdsAst = generateObjectAst(styleIds); + // let toBeInjectedAst = generateObjectAst(toBeInjected); + let orderResolvedArrayExpression = []; orderedResolved.forEach((styledResolved) => { @@ -867,13 +905,19 @@ module.exports = function (b) { } jsxOpeningElementPath.node.attributes.push( t.jsxAttribute( - t.jsxIdentifier('styledIds'), + t.jsxIdentifier('verbosedStyleIds'), t.jsxExpressionContainer(styleIdsAst) ) ); + // jsxOpeningElementPath.node.attributes.push( + // t.jsxAttribute( + // t.jsxIdentifier('toBeInjected'), + // t.jsxExpressionContainer(toBeInjectedAst) + // ) + // ); jsxOpeningElementPath.node.attributes.push( t.jsxAttribute( - t.jsxIdentifier('orderResolved'), + t.jsxIdentifier('orderedResolved'), t.jsxExpressionContainer( t.arrayExpression(orderResolvedArrayExpression) ) @@ -884,7 +928,7 @@ module.exports = function (b) { ); jsxOpeningElementPath.node.attributes.push( t.jsxAttribute( - t.jsxIdentifier('orderedStyleIdsArray'), + t.jsxIdentifier('styledIds'), t.jsxExpressionContainer(orderedStyleIdsArrayAst) ) ); From 4e7d94513a35c0780530f47028f1aadbe681a5da Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 16:21:34 +0530 Subject: [PATCH 20/38] feat: refactor for babel --- .../injectComponentAndDescendantStyles.ts | 6 ++-- packages/react/src/style-sheet/index.ts | 34 ++++++++++++++++--- 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/packages/react/src/resolver/injectComponentAndDescendantStyles.ts b/packages/react/src/resolver/injectComponentAndDescendantStyles.ts index 2136bcedf..a080d8297 100644 --- a/packages/react/src/resolver/injectComponentAndDescendantStyles.ts +++ b/packages/react/src/resolver/injectComponentAndDescendantStyles.ts @@ -11,8 +11,7 @@ export function injectComponentAndDescendantStyles( orderedResolved: OrderedSXResolved, styleTagId?: string, type: 'boot' | 'inline' = 'boot', - _GluestackStyleSheet: StyleInjector = GluestackStyleSheet, - _shouldInject: boolean = true + _GluestackStyleSheet: StyleInjector = GluestackStyleSheet ) { const componentOrderResolvedBaseStyle = getComponentResolvedBaseStyle(orderedResolved); @@ -62,5 +61,8 @@ export function injectComponentAndDescendantStyles( {}, false ); + GluestackStyleSheet.inject(toBeInjected); + + return styleCSSIdsArr; } diff --git a/packages/react/src/style-sheet/index.ts b/packages/react/src/style-sheet/index.ts index 7d3eebb25..f616005c0 100644 --- a/packages/react/src/style-sheet/index.ts +++ b/packages/react/src/style-sheet/index.ts @@ -35,7 +35,8 @@ export class StyleInjector { cssIds: any = [], CONFIG: any, ExtendedConfig: any, - resolve: any = true + resolve: any = true, + declarationType: string = 'boot' ) { let componentExtendedConfig = CONFIG; @@ -56,7 +57,8 @@ export class StyleInjector { theme, componentExtendedConfig, styledResolved.componentHash, - CONFIG + CONFIG, + declarationType ); } @@ -83,6 +85,23 @@ export class StyleInjector { return toBeInjected; } + update(orderResolvedStyleMap: any) { + const toBeInjected: any = {}; + + orderResolvedStyleMap.forEach((styledResolved: any) => { + this.#globalStyleMap.set(styledResolved.meta.cssId, styledResolved); + + if (!toBeInjected[styledResolved.type]) + toBeInjected[styledResolved.type] = {}; + if (!toBeInjected[styledResolved.type][styledResolved.componentHash]) + toBeInjected[styledResolved.type][styledResolved.componentHash] = ''; + toBeInjected[styledResolved.type][styledResolved.componentHash] += + styledResolved.meta.cssRuleset; + }); + + return toBeInjected; + } + inject(toBeInjected: any) { Object.keys(toBeInjected).forEach((type) => { Object.keys(toBeInjected[type]).forEach((styleTag) => { @@ -90,13 +109,16 @@ export class StyleInjector { }); }); } + resolveComponentTheme( componentTheme: any, theme: any, componentExtendedConfig: any, componentHashKey: any, - CONFIG: any + CONFIG: any, + declarationType: string = 'boot' ) { + const prefixClassName = declarationType === 'inline' ? 'gs' : ''; componentTheme.resolved = StyledValueToCSSObject( theme, componentExtendedConfig @@ -112,7 +134,11 @@ export class StyleInjector { componentTheme.meta.queryCondition = queryCondition; } - const cssData: any = getCSSIdAndRuleset(componentTheme, componentHashKey); + const cssData: any = getCSSIdAndRuleset( + componentTheme, + componentHashKey, + prefixClassName + ); componentTheme.meta.cssRuleset = cssData.rules.style; } From 4e86037f0e3a82ef4de0e0070909857318bf62e0 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 16:23:09 +0530 Subject: [PATCH 21/38] feat: guessing descendants --- packages/react/src/resolver/getStyleIds.ts | 27 ++++++++++++++++++---- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/packages/react/src/resolver/getStyleIds.ts b/packages/react/src/resolver/getStyleIds.ts index 200a28184..a033842ac 100644 --- a/packages/react/src/resolver/getStyleIds.ts +++ b/packages/react/src/resolver/getStyleIds.ts @@ -109,11 +109,24 @@ export function getComponentStyleIds(arr: OrderedSXResolved): StyleIds { export function getDescendantStyleIds( arr: any, - descendantStyle: any = [] + descendantStyle: any = [], + shoudGuessDescendants: boolean = false ): StyleIds { const ret: any = {}; - // return ret; - descendantStyle.forEach((style: any) => { + + const extractedDescendants = new Set(descendantStyle); + + if (shoudGuessDescendants) { + arr.forEach((item: any) => { + if (item.meta.path.lastIndexOf('descendants') !== -1) { + const descendant = + item.meta.path[item.meta.path.lastIndexOf('descendants') + 1]; + extractedDescendants.add(descendant); + } + }); + } + + extractedDescendants.forEach((style: any) => { const filteredOrderListByDescendant = arr.filter( (item: any) => item.meta.path[item.meta.path.lastIndexOf('descendants') + 1] === style @@ -122,12 +135,15 @@ export function getDescendantStyleIds( ret[style] = getComponentStyleIds(filteredOrderListByDescendant); }); + // return ret; + return ret; } export function getStyleIds( orderedResolved: OrderedSXResolved, - componentStyleConfig: any = {} + componentStyleConfig: any = {}, + shoudGuessDescendants: boolean = false ): { component: StyleIds; descendant: StyleIds; @@ -138,7 +154,8 @@ export function getStyleIds( const component = getComponentStyleIds(componentOrderResolved); const descendant = getDescendantStyleIds( descendantOrderResolved, - componentStyleConfig.descendantStyle + componentStyleConfig.descendantStyle, + shoudGuessDescendants ); return { From c5d19bc371515919c5499802fc21ef6d874adf45 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 16:24:19 +0530 Subject: [PATCH 22/38] feat: guess descendatns --- .../react/src/updateOrderUnResolvedMap.ts | 45 +++++++++++++++---- 1 file changed, 37 insertions(+), 8 deletions(-) diff --git a/packages/react/src/updateOrderUnResolvedMap.ts b/packages/react/src/updateOrderUnResolvedMap.ts index 3bd8765d8..cfaf8ee37 100644 --- a/packages/react/src/updateOrderUnResolvedMap.ts +++ b/packages/react/src/updateOrderUnResolvedMap.ts @@ -8,24 +8,49 @@ import { getStyleIds } from './resolver/getStyleIds'; import { styledResolvedToOrderedSXResolved } from './resolver/orderedResolved'; import { styledToStyledResolved } from './resolver/styledResolved'; import { GluestackStyleSheet, type StyleInjector } from './style-sheet'; -import { INTERNAL_updateCSSStyleInOrderedResolved } from './updateCSSStyleInOrderedResolved.web'; +import { INTERNAL_updateCSSStyleInOrderedResolved } from './updateCSSStyleInOrderedResolved'; +import { INTERNAL_updateCSSStyleInOrderedResolved as INTERNAL_updateCSSStyleInOrderedResolvedWeb } from './updateCSSStyleInOrderedResolved.web'; export function updateOrderUnResolvedMap( theme: any, componentHash: string, declarationType: string, ExtendedConfig: any, - _GluestackStyleSheet: StyleInjector = GluestackStyleSheet + _GluestackStyleSheet: StyleInjector = GluestackStyleSheet, + platform: string = '' ) { + const prefixClassName = declarationType === 'inline' ? 'gs' : ''; + const shouldGuessDescendants = declarationType === 'inline' ? true : false; const unresolvedTheme = styledToStyledResolved(theme, [], {}, false); const orderedUnResolvedTheme = styledResolvedToOrderedSXResolved(unresolvedTheme); - INTERNAL_updateCSSStyleInOrderedResolved( - orderedUnResolvedTheme, - componentHash, - true - ); + // platform is useful incase of Babel plugin + if (platform === 'all') { + INTERNAL_updateCSSStyleInOrderedResolvedWeb( + orderedUnResolvedTheme, + componentHash, + true, + prefixClassName, + false + ); + } else if (platform === 'web') { + INTERNAL_updateCSSStyleInOrderedResolvedWeb( + orderedUnResolvedTheme, + componentHash, + false, + prefixClassName, + false + ); + } else { + INTERNAL_updateCSSStyleInOrderedResolved( + orderedUnResolvedTheme, + componentHash, + true, + prefixClassName, + false + ); + } const componentOrderResolvedBaseStyle = getComponentResolvedBaseStyle( orderedUnResolvedTheme @@ -81,7 +106,11 @@ export function updateOrderUnResolvedMap( ...descendantVariantStyleIds, ]; - const verbosedStyleIds = getStyleIds(orderedUnResolvedTheme, ExtendedConfig); + const verbosedStyleIds = getStyleIds( + orderedUnResolvedTheme, + ExtendedConfig, + shouldGuessDescendants + ); return { styledIds: styleCSSIdsArr, From 42c8c3a2c38509d562d8b419c8bc610e53981dc2 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 16:25:03 +0530 Subject: [PATCH 23/38] fix: styled resolved cssid --- packages/react/src/updateCSSStyleInOrderedResolved.web.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/react/src/updateCSSStyleInOrderedResolved.web.ts b/packages/react/src/updateCSSStyleInOrderedResolved.web.ts index d3572defc..4471046bc 100644 --- a/packages/react/src/updateCSSStyleInOrderedResolved.web.ts +++ b/packages/react/src/updateCSSStyleInOrderedResolved.web.ts @@ -76,6 +76,7 @@ export function INTERNAL_updateCSSStyleInOrderedResolved( } else { styleResolved.meta.cssId = objectHash + + '-' + stableHash({ path: styleResolved?.meta?.path, data: styleResolved.original, From 526b610d08e5489190549ee96716d320fd3c2885 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 16:26:32 +0530 Subject: [PATCH 24/38] feat: inline descendants resolution --- .../babel-plugin-styled-resolver/src/index.js | 119 +++++------------- packages/react/src/styled.tsx | 62 ++++----- 2 files changed, 61 insertions(+), 120 deletions(-) diff --git a/packages/babel-plugin-styled-resolver/src/index.js b/packages/babel-plugin-styled-resolver/src/index.js index b8d003498..79dc9aca7 100644 --- a/packages/babel-plugin-styled-resolver/src/index.js +++ b/packages/babel-plugin-styled-resolver/src/index.js @@ -62,8 +62,9 @@ const convertExpressionContainerToStaticObject = ( propsToBePersist = {} ) => { properties?.forEach((property, index) => { + const nodeName = property.key.name ?? property.key.value; if (property.value.type === 'ObjectExpression') { - keyPath.push(property.key.value); + keyPath.push(nodeName); convertExpressionContainerToStaticObject( property.value.properties, result, @@ -75,14 +76,14 @@ const convertExpressionContainerToStaticObject = ( if (property.key.value) { setObjectKeyValue( propsToBePersist, - [...keyPath, property.key.value], + [...keyPath, nodeName], property.value.name ); } if (property.key.name) { setObjectKeyValue( propsToBePersist, - [...keyPath, property.key.name], + [...keyPath, nodeName], property.value.name ); } @@ -298,7 +299,6 @@ function getObjectFromAstNode(node) { } function removePropertiesVisitor(path) { - const nodeName = path?.node?.key?.name ?? path?.node?.key?.value; if (path.node.type === 'ObjectProperty') { const valueNode = path.node.value; if (types.isStringLiteral(valueNode) || types.isNumericLiteral(valueNode)) { @@ -307,11 +307,7 @@ function removePropertiesVisitor(path) { } if ( types.isObjectExpression(path.node) || - (types.isObjectProperty(path.node) && - nodeName && - nodeName.startsWith('_') && - nodeName !== '_light' && - nodeName !== '_dark') + types.isObjectProperty(path.node) ) { if (Array.isArray(path.get('properties'))) path.get('properties').forEach((propertyPath) => { @@ -771,6 +767,7 @@ module.exports = function (b) { if (sx) { const verbosedSx = convertSxToSxVerbosed(sx); + // console.log(JSON.stringify(componentSXProp, null, 2), '>>>>>>>'); const inlineSxTheme = { baseStyle: verbosedSx, @@ -784,83 +781,28 @@ module.exports = function (b) { } ); - let resolvedStyles = styledToStyledResolved( - inlineSxTheme, - [], - componentExtendedConfig - ); - - let orderedResolved = - styledResolvedToOrderedSXResolved(resolvedStyles); - let sxHash = stableHash(sx); if (outputLibrary) { sxHash = outputLibrary + '-' + sxHash; } - if (platform === 'all') { - INTERNAL_updateCSSStyleInOrderedResolvedWeb( - orderedResolved, - sxHash, - true, - 'gs' - ); - } else if (platform === 'web') { - INTERNAL_updateCSSStyleInOrderedResolvedWeb( - orderedResolved, - sxHash, - false, - 'gs' - ); - } else { - INTERNAL_updateCSSStyleInOrderedResolved( - orderedResolved, - sxHash, - true, - 'gs' - ); - } - - const orderCSSIds = injectComponentAndDescendantStyles( - orderedResolved, + const { styledIds, verbosedStyleIds } = updateOrderUnResolvedMap( + inlineSxTheme, sxHash, 'inline', + {}, BUILD_TIME_GLUESTACK_STYLESHEET, - false + platform ); - // let resolvedStyles = styledToStyledResolved( - // inlineSxTheme, - // [], - // componentExtendedConfig - // ); - - // let orderedResolved = - // styledResolvedToOrderedSXResolved(resolvedStyles); - - // let sxHash = stableHash(sx); - - // if (outputLibrary) { - // sxHash = outputLibrary + '-' + sxHash; - // } - - // const { styledIds, verbosedStyleIds } = updateOrderUnResolvedMap( - // inlineSxTheme, - // sxHash, - // 'inline', - // {}, - // BUILD_TIME_GLUESTACK_STYLESHEET, - // platform - // ); - - // const toBeInjected = BUILD_TIME_GLUESTACK_STYLESHEET.resolve( - // styledIds, - // componentExtendedConfig, - // {}, - // true, - // 'inline' - // ); + const toBeInjected = BUILD_TIME_GLUESTACK_STYLESHEET.resolve( + styledIds, + componentExtendedConfig, + {}, + true, + 'inline' + ); const current_global_map = BUILD_TIME_GLUESTACK_STYLESHEET.getStyleMap(); @@ -868,29 +810,24 @@ module.exports = function (b) { const orderedResolvedTheme = []; current_global_map?.forEach((styledResolved) => { - if (orderCSSIds.includes(styledResolved?.meta?.cssId)) { + if (styledIds.includes(styledResolved?.meta?.cssId)) { orderedResolvedTheme.push(styledResolved); } }); - let styleIds = getStyleIds( - orderedResolved, - componentExtendedConfig - ); - - let styleIdsAst = generateObjectAst(styleIds); + let styleIdsAst = generateObjectAst(verbosedStyleIds); - // let toBeInjectedAst = generateObjectAst(toBeInjected); + let toBeInjectedAst = generateObjectAst(toBeInjected); let orderResolvedArrayExpression = []; - orderedResolved.forEach((styledResolved) => { + orderedResolvedTheme.forEach((styledResolved) => { let orderedResolvedAst = generateObjectAst(styledResolved); orderResolvedArrayExpression.push(orderedResolvedAst); }); let orderedStyleIdsArrayAst = t.arrayExpression( - orderCSSIds?.map((cssId) => t.stringLiteral(cssId)) + styledIds?.map((cssId) => t.stringLiteral(cssId)) ); jsxOpeningElementPath.node.attributes = propsToBePersist; @@ -909,12 +846,12 @@ module.exports = function (b) { t.jsxExpressionContainer(styleIdsAst) ) ); - // jsxOpeningElementPath.node.attributes.push( - // t.jsxAttribute( - // t.jsxIdentifier('toBeInjected'), - // t.jsxExpressionContainer(toBeInjectedAst) - // ) - // ); + jsxOpeningElementPath.node.attributes.push( + t.jsxAttribute( + t.jsxIdentifier('toBeInjected'), + t.jsxExpressionContainer(toBeInjectedAst) + ) + ); jsxOpeningElementPath.node.attributes.push( t.jsxAttribute( t.jsxIdentifier('orderedResolved'), diff --git a/packages/react/src/styled.tsx b/packages/react/src/styled.tsx index c85c485d6..a5df5572e 100644 --- a/packages/react/src/styled.tsx +++ b/packages/react/src/styled.tsx @@ -815,13 +815,11 @@ export function verboseStyled( ExtendedConfig?: any, BUILD_TIME_PARAMS?: { orderedResolved: OrderedSXResolved; - orderedStyleIdsArray?: any; - styleIds: { + verbosedStyleIds: { component: StyleIds; descendant: StyleIds; }; - themeHash?: string; - componentHash?: string; + styledIds: Array; } ) { const componentName = componentStyleConfig.componentName; @@ -886,13 +884,9 @@ export function verboseStyled( if (BUILD_TIME_PARAMS?.orderedResolved) { orderedResolved = BUILD_TIME_PARAMS?.orderedResolved; - orderedCSSIds = BUILD_TIME_PARAMS?.orderedStyleIdsArray; + orderedCSSIds = BUILD_TIME_PARAMS?.styledIds; - injectComponentAndDescendantStyles( - orderedResolved, - BUILD_TIME_PARAMS?.componentHash, - 'boot' - ); + GluestackStyleSheet.update(orderedResolved); if (DEBUG) { console.log( `%cOrder resolved build time`, @@ -913,8 +907,8 @@ export function verboseStyled( styleIds = verbosedStyleIds; } - if (BUILD_TIME_PARAMS?.styleIds) { - styleIds = BUILD_TIME_PARAMS?.styleIds; + if (BUILD_TIME_PARAMS?.verbosedStyleIds) { + styleIds = BUILD_TIME_PARAMS?.verbosedStyleIds; if (DEBUG) { console.log( `%cStyle Ids build time`, @@ -966,14 +960,15 @@ export function verboseStyled( as, children, //@ts-ignore - // eslint-disable-next-line @typescript-eslint/no-unused-vars - styledIds: BUILD_TIME_STYLE_IDS, + orderedResolved: BUILD_TIME_ORDERED_RESOLVED = [], + //@ts-ignore + verbosedStyleIds: BUILD_TIME_VERBOSED_STYLE_IDS = {}, //@ts-ignore - orderedStyleIdsArray: BUILD_TIME_orderedStyleIdsArray, + styledIds: BUILD_TIME_STYLE_IDS = [], //@ts-ignore - sxHash: BUILD_TIME_sxHash, + toBeInjected: BUILD_TIME_toBeInjected = {}, //@ts-ignore - orderResolved: BUILD_TIME_orderResolved = [], + sxHash: BUILD_TIME_sxHash = '', ...componentProps }: Omit & Partial> & @@ -1231,19 +1226,30 @@ export function verboseStyled( let orderedPassingSXResolved: any = []; let sxStyleIds: any = {}; + // if (BUILD_TIME_VERBOSED_STYLE_IDS) { + // sxStyleIds = BUILD_TIME_VERBOSED_STYLE_IDS; + // GluestackStyleSheet.update(BUILD_TIME_ORDERED_RESOLVED); + // GluestackStyleSheet.inject(BUILD_TIME_toBeInjected); + // } if ( BUILD_TIME_STYLE_IDS || Object.keys(filteredComponentSx).length > 0 || Object.keys(filteredPassingSx).length > 0 ) { - if (BUILD_TIME_STYLE_IDS) { - sxStyleIds = BUILD_TIME_STYLE_IDS; - - injectComponentAndDescendantStyles( - BUILD_TIME_orderResolved, - BUILD_TIME_sxHash, - 'inline' + if (BUILD_TIME_ORDERED_RESOLVED.length > 0) { + const BUILD_toBeInjected = GluestackStyleSheet.update( + BUILD_TIME_ORDERED_RESOLVED ); + GluestackStyleSheet.inject(BUILD_TIME_toBeInjected); + } + + if (BUILD_TIME_STYLE_IDS) { + // sxStyleIds = BUILD_TIME_VERBOSED_STYLE_IDS; + // injectComponentAndDescendantStyles( + // BUILD_TIME_ORDERED_RESOLVED, + // BUILD_TIME_sxHash, + // 'inline' + // ); } if ( Object.keys(filteredComponentSx).length > 0 || @@ -1259,7 +1265,7 @@ export function verboseStyled( const orderedSXResolved = [ ...orderedPassingSXResolved, ...orderedComponentSXResolved, - ...BUILD_TIME_orderResolved, + ...BUILD_TIME_ORDERED_RESOLVED, ]; // console.setStartTimeStamp('getStyleIds'); sxStyleIds = getStyleIds(orderedSXResolved, componentStyleConfig); @@ -1653,13 +1659,11 @@ export function styled( ExtendedConfig?: ExtendedConfigType, BUILD_TIME_PARAMS?: { orderedResolved: OrderedSXResolved; - orderedStyleIdsArray?: any; - styleIds: { + verbosedStyleIds: { component: StyleIds; descendant: StyleIds; }; - themeHash?: string; - componentHash?: string; + styledIds: Array; } ) { const DEBUG_TAG = componentStyleConfig?.DEBUG; From d6734b1144d5e4fe339b2da1e6ac9243e70ba3b9 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 16:37:08 +0530 Subject: [PATCH 25/38] fix: inject build time inline props once --- packages/react/src/styled.tsx | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/packages/react/src/styled.tsx b/packages/react/src/styled.tsx index a5df5572e..d7782af75 100644 --- a/packages/react/src/styled.tsx +++ b/packages/react/src/styled.tsx @@ -1225,6 +1225,7 @@ export function verboseStyled( let orderedComponentSXResolved: any = []; let orderedPassingSXResolved: any = []; let sxStyleIds: any = {}; + const isInjected = useRef(false); // if (BUILD_TIME_VERBOSED_STYLE_IDS) { // sxStyleIds = BUILD_TIME_VERBOSED_STYLE_IDS; @@ -1232,24 +1233,14 @@ export function verboseStyled( // GluestackStyleSheet.inject(BUILD_TIME_toBeInjected); // } if ( - BUILD_TIME_STYLE_IDS || + BUILD_TIME_ORDERED_RESOLVED.length > 0 || Object.keys(filteredComponentSx).length > 0 || Object.keys(filteredPassingSx).length > 0 ) { - if (BUILD_TIME_ORDERED_RESOLVED.length > 0) { - const BUILD_toBeInjected = GluestackStyleSheet.update( - BUILD_TIME_ORDERED_RESOLVED - ); + if (BUILD_TIME_ORDERED_RESOLVED.length > 0 && !isInjected.current) { + GluestackStyleSheet.update(BUILD_TIME_ORDERED_RESOLVED); GluestackStyleSheet.inject(BUILD_TIME_toBeInjected); - } - - if (BUILD_TIME_STYLE_IDS) { - // sxStyleIds = BUILD_TIME_VERBOSED_STYLE_IDS; - // injectComponentAndDescendantStyles( - // BUILD_TIME_ORDERED_RESOLVED, - // BUILD_TIME_sxHash, - // 'inline' - // ); + isInjected.current = true; } if ( Object.keys(filteredComponentSx).length > 0 || From 021e77cc34b3331dd84a7e1e021dd8cf37065f98 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 16:38:09 +0530 Subject: [PATCH 26/38] v0.2.10-alpha.0 --- packages/react/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react/package.json b/packages/react/package.json index d40137129..82da1ae8d 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@gluestack-style/react", "description": "A universal & performant styling library for React Native, Next.js & React", - "version": "0.2.7", + "version": "0.2.10-alpha.0", "keywords": [ "React Native", "Next.js", From 2744f2271f604d9d8805160b773ee50e963c7d37 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 16:40:33 +0530 Subject: [PATCH 27/38] v0.2.0-alpha.1 --- packages/babel-plugin-styled-resolver/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/babel-plugin-styled-resolver/package.json b/packages/babel-plugin-styled-resolver/package.json index f0f05a604..bfa7101f7 100644 --- a/packages/babel-plugin-styled-resolver/package.json +++ b/packages/babel-plugin-styled-resolver/package.json @@ -1,6 +1,6 @@ { "name": "@gluestack-style/babel-plugin-styled-resolver", - "version": "0.2.0-alpha.0", + "version": "0.2.0-alpha.1", "description": "A gluestack-style babel plugin that transpiles your styled function calls and resolves the component styling in build time.", "keywords": [ "css-in-js", From a1e91dffacb06281be43424b523c661f40213272 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Fri, 25 Aug 2023 17:27:08 +0530 Subject: [PATCH 28/38] v0.2.0-alpha.2 --- packages/babel-plugin-styled-resolver/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/babel-plugin-styled-resolver/package.json b/packages/babel-plugin-styled-resolver/package.json index bfa7101f7..85e8da124 100644 --- a/packages/babel-plugin-styled-resolver/package.json +++ b/packages/babel-plugin-styled-resolver/package.json @@ -1,6 +1,6 @@ { "name": "@gluestack-style/babel-plugin-styled-resolver", - "version": "0.2.0-alpha.1", + "version": "0.2.0-alpha.2", "description": "A gluestack-style babel plugin that transpiles your styled function calls and resolves the component styling in build time.", "keywords": [ "css-in-js", From dc4423e94dcdae8d1cab0c009c758b844052588e Mon Sep 17 00:00:00 2001 From: Suraj Date: Fri, 25 Aug 2023 18:55:03 +0530 Subject: [PATCH 29/38] fix: updated config --- example/storybook/.storybook/main.js | 125 +- example/storybook/package.json | 64 +- ...ebpack.config.js => webpack.config.js_old} | 0 yarn.lock | 2032 +++++++++-------- 4 files changed, 1180 insertions(+), 1041 deletions(-) rename example/storybook/{webpack.config.js => webpack.config.js_old} (100%) diff --git a/example/storybook/.storybook/main.js b/example/storybook/.storybook/main.js index dd8281365..1edf5f9a1 100644 --- a/example/storybook/.storybook/main.js +++ b/example/storybook/.storybook/main.js @@ -9,11 +9,11 @@ module.exports = { '@storybook/addon-react-native-web', '@storybook/addon-docs', ], + staticDirs: ['../public'], framework: '@storybook/react', typescript: { reactDocgen: 'none', }, - staticDirs: ['../public'], webpackFinal: async (config, { configType }) => { // `configType` has a value of 'DEVELOPMENT' or 'PRODUCTION' // You can change the configuration based on that. @@ -28,22 +28,7 @@ module.exports = { config.module.rules.push({ test: /\.(js|ts|tsx)$/, - include: [ - // path.resolve('../../', 'node_modules/@universa11y'), - path.resolve('../../', 'node_modules/@gluestack-ui'), - path.resolve('./', 'node_modules/@gluestack-ui'), - - path.resolve('../../', 'node_modules/@gluestack/design-system'), - path.resolve( - '../../', - 'node_modules/@gluestack-style/animation-plugin' - ), - path.resolve('./', 'node_modules/@gluestack-style/animation-plugin'), - path.resolve('./', 'node_modules/@gluestack/design-system'), - path.resolve('../../', 'node_modules/@gluestack-style/react'), - path.resolve('./', 'node_modules/@gluestack-style/react'), - // path.resolve('./', 'node_modules/@gluestack-ui'), - ], + // include: [path.resolve('../../', 'node_modules/@gluestack-style/react')], use: 'babel-loader', }); @@ -52,112 +37,8 @@ module.exports = { include: /node_modules/, type: 'javascript/auto', }); + // Return the altered config return config; }, - // webpackFinal: async (config, { configType }) => { - // // `configType` has a value of 'DEVELOPMENT' or 'PRODUCTION' - // // You can change the configuration based on that. - // // 'PRODUCTION' is used when building the static version of storybook. - - // // Make whatever fine-grained changes you need - // // config.module.rules.push({ - // // test: /\.scss$/, - // // use: ['style-loader', 'css-loader', 'sass-loader'], - // // include: path.resolve(__dirname, '../'), - // // }); - - // config.module.rules.push({ - // test: /\.(js|ts|tsx)$/, - // include: [ - // path.resolve('../', 'node_modules/@gluestack-style/react'), - // path.resolve('../', 'node_modules/@gluestack/design-system'), - // path.resolve('../', 'node_modules/@universa11y/actionsheet'), - // path.resolve('../', 'node_modules/@universa11y/form-control'), - // path.resolve('../', 'node_modules/@universa11y/avatar'), - // path.resolve('../', 'node_modules/@universa11y/button'), - // path.resolve('../', 'node_modules/@universa11y/checkbox'), - // path.resolve('../', 'node_modules/@universa11y/divider'), - // path.resolve('../', 'node_modules/@universa11y/fab'), - // path.resolve('../', 'node_modules/@universa11y/hooks'), - // path.resolve('../', 'node_modules/@universa11y/hstack'), - // path.resolve('../', 'node_modules/@universa11y/icon'), - // path.resolve('../', 'node_modules/@universa11y/input'), - // path.resolve('../', 'node_modules/@universa11y/link'), - // path.resolve('../', 'node_modules/@universa11y/menu'), - // path.resolve('../', 'node_modules/@universa11y/modal'), - // path.resolve('../', 'node_modules/@universa11y/overlay'), - // path.resolve('../', 'node_modules/@universa11y/popover'), - // path.resolve('../', 'node_modules/@universa11y/popper'), - // path.resolve('../', 'node_modules/@universa11y/progress'), - // path.resolve('../', 'node_modules/@universa11y/provider'), - // path.resolve('../', 'node_modules/@universa11y/radio'), - // path.resolve('../', 'node_modules/@universa11y/select'), - // path.resolve('../', 'node_modules/@universa11y/slider'), - // path.resolve('../', 'node_modules/@universa11y/spinner'), - // path.resolve('../', 'node_modules/@universa11y/stack'), - // path.resolve('../', 'node_modules/@universa11y/switch'), - // path.resolve('../', 'node_modules/@universa11y/textarea'), - // path.resolve('../', 'node_modules/@universa11y/toast'), - // path.resolve('../', 'node_modules/@universa11y/tooltip'), - // path.resolve('../', 'node_modules/@universa11y/ui-provider'), - // path.resolve('../', 'node_modules/@universa11y/vstack'), - // path.resolve('../', 'node_modules/@universa11y/transitions'), - // path.resolve('../', 'node_modules/@universa11y/utils'), - // path.resolve('../', 'node_modules/@universa11y/tabs'), - // path.resolve('../', 'node_modules/@universa11y/react-native-aria'), - // path.resolve('../', 'node_modules/@universa11y/alert-dialog'), - // path.resolve('../', 'node_modules/@universa11y/pressable'), - // ], - // use: 'babel-loader', - // }); - - // // Return the altered config - // return config; - // }, }; - -// const path = require('path'); - -// module.exports = { -// stories: [ -// '../components/**/*.stories.mdx', -// '../components/**/*.stories.@(js|jsx|ts|tsx)', -// ], -// addons: [ -// 'storybook-dark-mode', -// '@storybook/addon-links', -// '@storybook/addon-essentials', -// '@storybook/addon-react-native-web', -// '@storybook/addon-docs', -// ], -// framework: '@storybook/react', -// typescript: { -// reactDocgen: 'none', -// }, -// webpackFinal: async (config, { configType }) => { -// // `configType` has a value of 'DEVELOPMENT' or 'PRODUCTION' -// // You can change the configuration based on that. -// // 'PRODUCTION' is used when building the static version of storybook. - -// // Make whatever fine-grained changes you need -// // config.module.rules.push({ -// // test: /\.scss$/, -// // use: ['style-loader', 'css-loader', 'sass-loader'], -// // include: path.resolve(__dirname, '../'), -// // }); - -// config.module.rules.push({ -// test: /\.(js|ts|tsx)$/, -// include: [ -// path.resolve('../../', 'node_modules/@gluestack-style/react'), -// path.resolve('../../', 'node_modules/@gluestack/ui'), -// path.resolve('../../', 'node_modules/@universa11y'), -// ], -// use: 'babel-loader', -// }); - -// // Return the altered config -// return config; -// }, -// }; diff --git a/example/storybook/package.json b/example/storybook/package.json index ebd55af15..eee5227a5 100644 --- a/example/storybook/package.json +++ b/example/storybook/package.json @@ -19,32 +19,54 @@ "create-story": "node ./scripts/create-story.js" }, "dependencies": { - "@gluestack-style/animation-plugin": "^0.1.7", - "@gluestack-style/react": "^0.1.33", - "@gluestack/design-system": "latest", + "@expo/html-elements": "^0.4.2", + "@gluestack-style/animation-plugin": "latest", + "@gluestack-ui/actionsheet": "^0.2.16", + "@gluestack-ui/alert-dialog": "^0.1.14", + "@gluestack-ui/button": "^0.1.23", + "@gluestack-ui/pressable": "^0.1.9", + "@gluestack-ui/themed": "^0.1.9", + "@gluestack-ui/transitions": "^0.1.9", + "@gluestack/design-system": "^0.4.68", "@legendapp/motion": "^2.2.0", + "@react-aria/button": "^3.7.0", + "@react-aria/focus": "^3.11.0", + "@react-aria/interactions": "^3.14.0", + "@react-aria/menu": "^3.8.1", + "@react-aria/overlays": "^3.13.0", + "@react-aria/separator": "^3.3.0", + "@react-aria/utils": "^3.15.0", + "@react-native-aria/button": "^0.2.4", + "@react-native-aria/overlays": "0.3.7", + "@react-native-aria/separator": "^0.2.5", "@react-native-async-storage/async-storage": "~1.17.3", "@react-native-community/datetimepicker": "6.5.2", "@react-native-community/slider": "4.2.4", - "@types/react": "^18.0.26", - "@universa11y/provider": "^0.1.7", - "ejs": "^3.1.8", + "@react-stately/collections": "^3.6.0", + "@react-stately/tree": "^3.5.0", "expo": "^47.0.0", "expo-linear-gradient": "~12.0.1", "expo-status-bar": "~1.4.2", "fs": "^0.0.1-security", - "lucide-react-native": "^0.121.0", + "lucide-react-native": "^0.236.0", "prism-react-renderer": "^1.3.5", - "prompts": "^2.4.2", - "react-native": "^0.70.3", + "react": "^18.2.0", "react-native-safe-area-context": "^4.4.1", "react-native-svg": "13.4.0", - "uuidv4": "^6.2.13" + "react-native-web": "^0.19.7", + "react-stately": "^3.21.0", + "ts-jest": "^29.1.0", + "uuidv4": "^6.2.13", + "webpack": "4" }, "devDependencies": { "@babel/core": "^7.19.3", - "@gluestack-style/animation-plugin": "^0.1.7", - "@gluestack-style/react": "^0.1.33", + "@babel/generator": "^7.20.7", + "@babel/parser": "^7.20.13", + "@babel/plugin-transform-modules-commonjs": "^7.21.2", + "@babel/preset-typescript": "^7.18.6", + "@babel/traverse": "^7.20.13", + "@babel/types": "^7.20.7", "@storybook/addon-actions": "^6.5.14", "@storybook/addon-controls": "^6.5.14", "@storybook/addon-docs": "^6.5.15", @@ -58,22 +80,32 @@ "@storybook/client-api": "^6.5.15", "@storybook/react": "^6.5.14", "@storybook/react-native": "next", - "@types/react": "~18.0.24", + "@types/react": "^18.0.27", "@types/react-native": "~0.70.6", "babel-loader": "^8.2.3", "babel-plugin-react-docgen-typescript": "^1.5.1", "babel-plugin-react-native-web": "^0.18.10", "find-yarn-workspace-root": "^2.0.0", - "jest": "^29.5.0", + "jest-environment-jsdom": "^29.5.0", "react-native-builder-bob": "^0.20.3", "storybook-dark-mode": "^2.0.4", - "typescript": "4.9.4" + "typescript": "^5.1.6" }, "peerDependencies": { - "@gluestack-style/react": "^0.1.33", "react": "*", "react-dom": "*", "react-native": "*", "react-native-web": "*" + }, + "react-native-builder-bob": { + "source": "src", + "output": "lib", + "targets": [ + "commonjs", + [ + "module" + ], + "typescript" + ] } } diff --git a/example/storybook/webpack.config.js b/example/storybook/webpack.config.js_old similarity index 100% rename from example/storybook/webpack.config.js rename to example/storybook/webpack.config.js_old diff --git a/yarn.lock b/yarn.lock index 80a23cf1f..ab321a6d5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -58,30 +58,30 @@ "@babel/highlight" "^7.22.10" chalk "^2.4.2" -"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9": +"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== "@babel/core@7", "@babel/core@^7.0.0", "@babel/core@^7.1.0", "@babel/core@^7.11.6", "@babel/core@^7.12.10", "@babel/core@^7.12.3", "@babel/core@^7.12.9", "@babel/core@^7.13.16", "@babel/core@^7.14.0", "@babel/core@^7.18.5", "@babel/core@^7.19.3", "@babel/core@^7.20.0", "@babel/core@^7.20.2", "@babel/core@^7.20.5", "@babel/core@^7.7.5": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.10.tgz#aad442c7bcd1582252cb4576747ace35bc122f35" - integrity sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.11.tgz#8033acaa2aa24c3f814edaaa057f3ce0ba559c24" + integrity sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.22.10" "@babel/generator" "^7.22.10" "@babel/helper-compilation-targets" "^7.22.10" "@babel/helper-module-transforms" "^7.22.9" - "@babel/helpers" "^7.22.10" - "@babel/parser" "^7.22.10" + "@babel/helpers" "^7.22.11" + "@babel/parser" "^7.22.11" "@babel/template" "^7.22.5" - "@babel/traverse" "^7.22.10" - "@babel/types" "^7.22.10" + "@babel/traverse" "^7.22.11" + "@babel/types" "^7.22.11" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" - json5 "^2.2.2" + json5 "^2.2.3" semver "^6.3.1" "@babel/core@7.12.9": @@ -129,15 +129,15 @@ source-map "^0.5.0" "@babel/eslint-parser@^7.18.2": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.22.10.tgz#bfdf3d1b32ad573fe7c1c3447e0b485e3a41fd09" - integrity sha512-0J8DNPRXQRLeR9rPaUMM3fA+RbixjnVLe/MRMYCkp3hzgsSuxCHQ8NN8xQG1wIHKJ4a1DTROTvFJdW+B5/eOsg== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.22.11.tgz#cceb8c7989c241a16dd14e12a6cd725618f3f58b" + integrity sha512-YjOYZ3j7TjV8OhLW6NCtyg8G04uStATEUe5eiLuCZaXz2VSDQ3dsAtm2D+TuQyAqNMUK2WacGo0/uma9Pein1w== dependencies: "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" eslint-visitor-keys "^2.1.0" semver "^6.3.1" -"@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.14.0", "@babel/generator@^7.20.0", "@babel/generator@^7.20.5", "@babel/generator@^7.22.10", "@babel/generator@^7.7.2", "@babel/generator@^7.9.0": +"@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.14.0", "@babel/generator@^7.20.0", "@babel/generator@^7.20.5", "@babel/generator@^7.20.7", "@babel/generator@^7.22.10", "@babel/generator@^7.7.2", "@babel/generator@^7.9.0": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.10.tgz#c92254361f398e160645ac58831069707382b722" integrity sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A== @@ -172,10 +172,10 @@ lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.21.0", "@babel/helper-create-class-features-plugin@^7.22.10", "@babel/helper-create-class-features-plugin@^7.22.5": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz#dd2612d59eac45588021ac3d6fa976d08f4e95a3" - integrity sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA== +"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.21.0", "@babel/helper-create-class-features-plugin@^7.22.10", "@babel/helper-create-class-features-plugin@^7.22.11", "@babel/helper-create-class-features-plugin@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.11.tgz#4078686740459eeb4af3494a273ac09148dfb213" + integrity sha512-y1grdYL4WzmUDBRGK0pDbIoFd7UZKoDurDzWEoNMYoj1EL+foGRQNyPWDcC+YyegN5y1DUsFFmzjGijB3nSVAQ== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" "@babel/helper-environment-visitor" "^7.22.5" @@ -346,14 +346,14 @@ "@babel/template" "^7.22.5" "@babel/types" "^7.22.10" -"@babel/helpers@^7.12.5", "@babel/helpers@^7.22.10", "@babel/helpers@^7.9.0": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.22.10.tgz#ae6005c539dfbcb5cd71fb51bfc8a52ba63bc37a" - integrity sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw== +"@babel/helpers@^7.12.5", "@babel/helpers@^7.22.11", "@babel/helpers@^7.9.0": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.22.11.tgz#b02f5d5f2d7abc21ab59eeed80de410ba70b056a" + integrity sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg== dependencies: "@babel/template" "^7.22.5" - "@babel/traverse" "^7.22.10" - "@babel/types" "^7.22.10" + "@babel/traverse" "^7.22.11" + "@babel/types" "^7.22.11" "@babel/highlight@^7.10.4", "@babel/highlight@^7.22.10": version "7.22.10" @@ -364,10 +364,10 @@ chalk "^2.4.2" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.0", "@babel/parser@^7.20.5", "@babel/parser@^7.20.7", "@babel/parser@^7.22.10", "@babel/parser@^7.22.5", "@babel/parser@^7.9.0": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.10.tgz#e37634f9a12a1716136c44624ef54283cabd3f55" - integrity sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ== +"@babel/parser@^7.1.0", "@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.0", "@babel/parser@^7.20.13", "@babel/parser@^7.20.5", "@babel/parser@^7.20.7", "@babel/parser@^7.22.11", "@babel/parser@^7.22.5", "@babel/parser@^7.9.0": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.11.tgz#becf8ee33aad2a35ed5607f521fe6e72a615f905" + integrity sha512-R5zb8eJIBPJriQtbH/htEQy4k7E2dHWlD2Y2VT07JCzwYZHBxV5ZYtM0UhXSNMT74LyxuM+b1jdL7pSesXbC/g== "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5": version "7.22.5" @@ -690,9 +690,9 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-async-generator-functions@^7.22.10": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz#45946cd17f915b10e65c29b8ed18a0a50fc648c8" - integrity sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.11.tgz#dbe3b1ff5a52e2e5edc4b19a60d325a675ed2649" + integrity sha512-0pAlmeRJn6wU84zzZsEOx1JV1Jf8fqO9ok7wofIJwUnplYo247dcd24P+cMJht7ts9xkzdtB0EPHmOb7F+KzXw== dependencies: "@babel/helper-environment-visitor" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" @@ -731,11 +731,11 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-class-static-block@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz#3e40c46f048403472d6f4183116d5e46b1bff5ba" - integrity sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz#dc8cc6e498f55692ac6b4b89e56d87cec766c974" + integrity sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g== dependencies: - "@babel/helper-create-class-features-plugin" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.22.11" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-class-static-block" "^7.14.5" @@ -785,9 +785,9 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-dynamic-import@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz#d6908a8916a810468c4edff73b5b75bda6ad393e" - integrity sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz#2c7722d2a5c01839eaf31518c6ff96d408e447aa" + integrity sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" @@ -801,9 +801,9 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-export-namespace-from@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz#57c41cb1d0613d22f548fddd8b288eedb9973a5b" - integrity sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz#b3c84c8f19880b6c7440108f8929caf6056db26c" + integrity sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" @@ -833,9 +833,9 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-json-strings@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz#14b64352fdf7e1f737eed68de1a1468bd2a77ec0" - integrity sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz#689a34e1eed1928a40954e37f74509f48af67835" + integrity sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-json-strings" "^7.8.3" @@ -848,9 +848,9 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-logical-assignment-operators@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz#66ae5f068fd5a9a5dc570df16f56c2a8462a9d6c" - integrity sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz#24c522a61688bde045b7d9bc3c2597a4d948fc9c" + integrity sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" @@ -870,22 +870,22 @@ "@babel/helper-module-transforms" "^7.22.5" "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.21.5", "@babel/plugin-transform-modules-commonjs@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz#7d9875908d19b8c0536085af7b053fd5bd651bfa" - integrity sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA== +"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.21.2", "@babel/plugin-transform-modules-commonjs@^7.21.5", "@babel/plugin-transform-modules-commonjs@^7.22.11", "@babel/plugin-transform-modules-commonjs@^7.22.5": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.11.tgz#d7991d3abad199c03b68ee66a64f216c47ffdfae" + integrity sha512-o2+bg7GDS60cJMgz9jWqRUsWkMzLCxp+jFDeDUT5sjRlAxcJWZ2ylNdI7QQ2+CH5hWu7OnN+Cv3htt7AkSf96g== dependencies: - "@babel/helper-module-transforms" "^7.22.5" + "@babel/helper-module-transforms" "^7.22.9" "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-simple-access" "^7.22.5" "@babel/plugin-transform-modules-systemjs@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz#18c31410b5e579a0092638f95c896c2a98a5d496" - integrity sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.11.tgz#3386be5875d316493b517207e8f1931d93154bb1" + integrity sha512-rIqHmHoMEOhI3VkVf5jQ15l539KrwhzqcBO6wdCNWPWc/JWt9ILNYNUssbRpeq0qWns8svuw8LnMNCvWBIJ8wA== dependencies: "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-module-transforms" "^7.22.5" + "@babel/helper-module-transforms" "^7.22.9" "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-validator-identifier" "^7.22.5" @@ -913,17 +913,17 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-nullish-coalescing-operator@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz#f8872c65776e0b552e0849d7596cddd416c3e381" - integrity sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz#debef6c8ba795f5ac67cd861a81b744c5d38d9fc" + integrity sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" "@babel/plugin-transform-numeric-separator@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz#57226a2ed9e512b9b446517ab6fa2d17abb83f58" - integrity sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz#498d77dc45a6c6db74bb829c02a01c1d719cbfbd" + integrity sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-numeric-separator" "^7.10.4" @@ -936,12 +936,12 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-object-rest-spread@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz#9686dc3447df4753b0b2a2fae7e8bc33cdc1f2e1" - integrity sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.11.tgz#dbbb06ce783cd994a8f430d8cefa553e9b42ca62" + integrity sha512-nX8cPFa6+UmbepISvlf5jhQyaC7ASs/7UxHmMkuJ/k5xSHvDPPaibMo+v3TXwU/Pjqhep/nFNpd3zn4YR59pnw== dependencies: - "@babel/compat-data" "^7.22.5" - "@babel/helper-compilation-targets" "^7.22.5" + "@babel/compat-data" "^7.22.9" + "@babel/helper-compilation-targets" "^7.22.10" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" "@babel/plugin-transform-parameters" "^7.22.5" @@ -955,17 +955,17 @@ "@babel/helper-replace-supers" "^7.22.5" "@babel/plugin-transform-optional-catch-binding@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz#842080be3076703be0eaf32ead6ac8174edee333" - integrity sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz#461cc4f578a127bb055527b3e77404cad38c08e0" + integrity sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" "@babel/plugin-transform-optional-chaining@^7.22.10", "@babel/plugin-transform-optional-chaining@^7.22.5": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz#076d28a7e074392e840d4ae587d83445bac0372a" - integrity sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g== + version "7.22.12" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.12.tgz#d7ebf6a88cd2f4d307b0e000ab630acd8124b333" + integrity sha512-7XXCVqZtyFWqjDsYDY4T45w4mlx1rf7aOgkc/Ww76xkgBiOlmjPkx36PBLHa1k1rwWvVgYMPsbuVnIamx2ZQJw== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" @@ -987,12 +987,12 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-private-property-in-object@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz#07a77f28cbb251546a43d175a1dda4cf3ef83e32" - integrity sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz#ad45c4fc440e9cb84c718ed0906d96cf40f9a4e1" + integrity sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.22.11" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" @@ -1113,13 +1113,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-typescript@^7.20.2", "@babel/plugin-transform-typescript@^7.22.5", "@babel/plugin-transform-typescript@^7.5.0": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.10.tgz#aadd98fab871f0bb5717bcc24c31aaaa455af923" - integrity sha512-7++c8I/ymsDo4QQBAgbraXLzIM6jmfao11KgIBEYZRReWzNWH9NtNgJcyrZiXsOPh523FQm6LfpLyy/U5fn46A== +"@babel/plugin-transform-typescript@^7.20.2", "@babel/plugin-transform-typescript@^7.22.11", "@babel/plugin-transform-typescript@^7.5.0": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.11.tgz#9f27fb5e51585729374bb767ab6a6d9005a23329" + integrity sha512-0E4/L+7gfvHub7wsbTv03oRtD69X31LByy44fGmFzbZScpupFByMcgCJ0VbBTkzyjSJKuRoGN8tcijOWKTmqOA== dependencies: "@babel/helper-annotate-as-pure" "^7.22.5" - "@babel/helper-create-class-features-plugin" "^7.22.10" + "@babel/helper-create-class-features-plugin" "^7.22.11" "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-typescript" "^7.22.5" @@ -1271,15 +1271,15 @@ "@babel/plugin-transform-react-pure-annotations" "^7.22.5" "@babel/preset-typescript@^7.12.7", "@babel/preset-typescript@^7.13.0", "@babel/preset-typescript@^7.17.12", "@babel/preset-typescript@^7.18.6": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz#16367d8b01d640e9a507577ed4ee54e0101e51c8" - integrity sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.22.11.tgz#f218cd0345524ac888aa3dc32f029de5b064b575" + integrity sha512-tWY5wyCZYBGY7IlalfKI1rLiGlIfnwsRHZqlky0HVv8qviwQ1Uo/05M6+s+TcTCVa6Bmoo2uJW5TMFX6Wa4qVg== dependencies: "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-validator-option" "^7.22.5" "@babel/plugin-syntax-jsx" "^7.22.5" - "@babel/plugin-transform-modules-commonjs" "^7.22.5" - "@babel/plugin-transform-typescript" "^7.22.5" + "@babel/plugin-transform-modules-commonjs" "^7.22.11" + "@babel/plugin-transform-typescript" "^7.22.11" "@babel/register@^7.12.1", "@babel/register@^7.13.16": version "7.22.5" @@ -1305,9 +1305,9 @@ regenerator-runtime "^0.13.4" "@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.0", "@babel/runtime@^7.17.8", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.6", "@babel/runtime@^7.20.0", "@babel/runtime@^7.20.1", "@babel/runtime@^7.20.7", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.10.tgz#ae3e9631fd947cb7e3610d3e9d8fef5f76696682" - integrity sha512-21t/fkKLMZI4pqP2wlmsQAWnYW1PDyKyyUV4vCi+B25ydmdaYTKXPwCj0BzSUnZf4seIiYvSA3jcZ3gdsMFkLQ== + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.11.tgz#7a9ba3bbe406ad6f9e8dd4da2ece453eb23a77a4" + integrity sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA== dependencies: regenerator-runtime "^0.14.0" @@ -1320,10 +1320,10 @@ "@babel/parser" "^7.22.5" "@babel/types" "^7.22.5" -"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.14.0", "@babel/traverse@^7.20.0", "@babel/traverse@^7.20.5", "@babel/traverse@^7.22.10", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.4", "@babel/traverse@^7.9.0": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.10.tgz#20252acb240e746d27c2e82b4484f199cf8141aa" - integrity sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig== +"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.14.0", "@babel/traverse@^7.20.0", "@babel/traverse@^7.20.13", "@babel/traverse@^7.20.5", "@babel/traverse@^7.22.11", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.4", "@babel/traverse@^7.9.0": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.11.tgz#71ebb3af7a05ff97280b83f05f8865ac94b2027c" + integrity sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ== dependencies: "@babel/code-frame" "^7.22.10" "@babel/generator" "^7.22.10" @@ -1331,8 +1331,8 @@ "@babel/helper-function-name" "^7.22.5" "@babel/helper-hoist-variables" "^7.22.5" "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.22.10" - "@babel/types" "^7.22.10" + "@babel/parser" "^7.22.11" + "@babel/types" "^7.22.11" debug "^4.1.0" globals "^11.1.0" @@ -1345,10 +1345,10 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.2.0", "@babel/types@^7.20.0", "@babel/types@^7.20.7", "@babel/types@^7.22.10", "@babel/types@^7.22.5", "@babel/types@^7.3.3", "@babel/types@^7.4.4", "@babel/types@^7.9.0": - version "7.22.10" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.10.tgz#4a9e76446048f2c66982d1a989dd12b8a2d2dc03" - integrity sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg== +"@babel/types@^7.0.0", "@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.2.0", "@babel/types@^7.20.0", "@babel/types@^7.20.7", "@babel/types@^7.22.10", "@babel/types@^7.22.11", "@babel/types@^7.22.5", "@babel/types@^7.3.3", "@babel/types@^7.4.4", "@babel/types@^7.9.0": + version "7.22.11" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.11.tgz#0e65a6a1d4d9cbaa892b2213f6159485fe632ea2" + integrity sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg== dependencies: "@babel/helper-string-parser" "^7.22.5" "@babel/helper-validator-identifier" "^7.22.5" @@ -1985,9 +1985,9 @@ eslint-visitor-keys "^3.3.0" "@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": - version "4.6.2" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.6.2.tgz#1816b5f6948029c5eaacb0703b850ee0cb37d8f8" - integrity sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw== + version "4.8.0" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.8.0.tgz#11195513186f68d42fbf449f9a7136b2c0c92005" + integrity sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg== "@eslint/eslintrc@^0.4.3": version "0.4.3" @@ -2397,6 +2397,11 @@ resolved "https://registry.yarnpkg.com/@expo/html-elements/-/html-elements-0.2.2.tgz#d4d361df6c4089d67cc2fd98d34a5347ac4c1a5d" integrity sha512-hMS/5UfBgusKo5K0kpXdrddkxBg9LaJ8Dnijxats+7Uj0Mrk+NaRx3jOUsHTzd7pAroeqx5WGwzJ7wppsksBVA== +"@expo/html-elements@^0.4.2": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@expo/html-elements/-/html-elements-0.4.3.tgz#32b4ca05dd13582164ed1be34ae87e22adfd1d5b" + integrity sha512-UwEEdnpyhUEIDe/AkFSBUmCuwcknjAuu73fd5L9Rm/BbHczYXCrtyZmzCNVBsAiHhwUjmhNWzFlr9cAkp/sxIA== + "@expo/html-elements@latest": version "0.5.1" resolved "https://registry.yarnpkg.com/@expo/html-elements/-/html-elements-0.5.1.tgz#94f86afb1a57f95dbd45fb8326b985683cde3c93" @@ -2799,7 +2804,7 @@ dependencies: "@legendapp/motion" "^2.2.0" -"@gluestack-style/babel-plugin-styled-resolver@latest": +"@gluestack-style/babel-plugin-styled-resolver@^0.1.0", "@gluestack-style/babel-plugin-styled-resolver@^0.1.6", "@gluestack-style/babel-plugin-styled-resolver@latest": version "0.1.14" resolved "https://registry.yarnpkg.com/@gluestack-style/babel-plugin-styled-resolver/-/babel-plugin-styled-resolver-0.1.14.tgz#1e3cd2dbdf91b5e9dcb8d34ab7df7aed1beea9bb" integrity sha512-fgfuvCTngRZIbZf5prtoiZeOBaMtjEh4EJUIJygHY6iXscFuU6tnstnMnHqZdCd1dty+2E1DuwnG+JSKfYgYmA== @@ -2828,7 +2833,7 @@ inline-style-prefixer "^6.0.1" normalize-css-color "^1.0.2" -"@gluestack-ui/actionsheet@^0.2.7", "@gluestack-ui/actionsheet@latest": +"@gluestack-ui/actionsheet@^0.2.16", "@gluestack-ui/actionsheet@^0.2.7", "@gluestack-ui/actionsheet@latest": version "0.2.16" resolved "https://registry.yarnpkg.com/@gluestack-ui/actionsheet/-/actionsheet-0.2.16.tgz#052a733966c517450a3cd6f832932ccf77924867" integrity sha512-BogHlHAO8PClTUeZDzizI5sb900xFNUZKNDI4KMyi4xo4/etWJRFAeM7W+OZL5bCcuXHrBHQa2fQNVBKdudqGw== @@ -2841,7 +2846,7 @@ "@react-native-aria/focus" "^0.2.8" "@react-native-aria/interactions" "^0.2.10" -"@gluestack-ui/alert-dialog@^0.1.8", "@gluestack-ui/alert-dialog@latest": +"@gluestack-ui/alert-dialog@^0.1.14", "@gluestack-ui/alert-dialog@^0.1.8", "@gluestack-ui/alert-dialog@latest": version "0.1.14" resolved "https://registry.yarnpkg.com/@gluestack-ui/alert-dialog/-/alert-dialog-0.1.14.tgz#a494d17f68ce351dbd97c2dbd511562c506e1340" integrity sha512-B16Ocr/m7mwaOht+9HJaNzn2psSrX1OHxJYRcDjigBvPtzTmQqG6MQvV/XKXqrd93AzQxlTmNDI5Hvvzl62Jsg== @@ -2865,7 +2870,7 @@ dependencies: "@gluestack-ui/utils" "^0.1.5" -"@gluestack-ui/button@^0.1.15", "@gluestack-ui/button@latest": +"@gluestack-ui/button@^0.1.15", "@gluestack-ui/button@^0.1.23", "@gluestack-ui/button@latest": version "0.1.23" resolved "https://registry.yarnpkg.com/@gluestack-ui/button/-/button-0.1.23.tgz#216ed04c2d8b2bd013eff5713ca84a81ffc64140" integrity sha512-jRICNzctMteU9TWIFFYuI52L1W4C6Mm2r7ZcUJ1092n4qOCNzFTuXEZrIXH8seQaygmFIjty8XAWy9MMTS1kWA== @@ -2874,7 +2879,7 @@ "@react-native-aria/focus" "^0.2.8" "@react-native-aria/interactions" "^0.2.10" -"@gluestack-ui/checkbox@^0.1.12", "@gluestack-ui/checkbox@latest": +"@gluestack-ui/checkbox@^0.1.12", "@gluestack-ui/checkbox@^0.1.17", "@gluestack-ui/checkbox@latest": version "0.1.17" resolved "https://registry.yarnpkg.com/@gluestack-ui/checkbox/-/checkbox-0.1.17.tgz#4ebadec4b428d3d65b8983a6d4547bdae7a5f3ee" integrity sha512-6MpJgG306jKp3iip+EgkXcwYxqVkxuE+XW75+8TfOE3ZI3p0JZCuGNRSKaAOJDmwxPVPO40vm1GFPrREJvoi4g== @@ -2910,7 +2915,7 @@ "@gluestack-ui/utils" "^0.1.5" "@react-native-aria/focus" "^0.2.7" -"@gluestack-ui/hooks@^0.1.0", "@gluestack-ui/hooks@^0.1.2", "@gluestack-ui/hooks@latest": +"@gluestack-ui/hooks@^0.1.0", "@gluestack-ui/hooks@^0.1.2": version "0.1.3" resolved "https://registry.yarnpkg.com/@gluestack-ui/hooks/-/hooks-0.1.3.tgz#5bd9138e27635975820132bb667f61b296cf239d" integrity sha512-FatyMCSfZuW44WcipRWz6osJBlpuP/Jh3sC2d/3DWBgKERIKEABPQNK0Okx8bPlAybswFzzfRWYC5CnBZT0V/A== @@ -2935,7 +2940,7 @@ "@react-native-aria/focus" "^0.2.7" react-native-svg "13.4.0" -"@gluestack-ui/input@^0.1.5", "@gluestack-ui/input@latest": +"@gluestack-ui/input@^0.1.10", "@gluestack-ui/input@^0.1.5", "@gluestack-ui/input@latest": version "0.1.10" resolved "https://registry.yarnpkg.com/@gluestack-ui/input/-/input-0.1.10.tgz#10b40c633b43fdd45cae69a7693dacdb15f44fd3" integrity sha512-+441f6chxsPYdphsvJw3J+EvA2GGuuo1JLIJUEfNV3d2vuzG9nlRxlIXde2YuLu7W/kNuCHh0g0zKYNnHahlUA== @@ -3005,7 +3010,7 @@ "@react-native-aria/interactions" "^0.2.10" "@react-native-aria/overlays" "0.3.7" -"@gluestack-ui/pressable@^0.1.4", "@gluestack-ui/pressable@latest": +"@gluestack-ui/pressable@^0.1.4", "@gluestack-ui/pressable@^0.1.9", "@gluestack-ui/pressable@latest": version "0.1.9" resolved "https://registry.yarnpkg.com/@gluestack-ui/pressable/-/pressable-0.1.9.tgz#f9333e51202543bcfde214bba5607ca9b233a26f" integrity sha512-hWWJ+7z0g/P2nbxDr60JBnHIA676oTg7EG1FfEgd25gvyWzVJ+JjObhrxHb4V4ILK7RkaQeB1K+esAl2bSBytA== @@ -3022,12 +3027,11 @@ "@gluestack-ui/utils" "^0.1.5" "@gluestack-ui/provider@^0.1.3", "@gluestack-ui/provider@^0.1.6", "@gluestack-ui/provider@latest": - version "0.1.6" - resolved "https://registry.yarnpkg.com/@gluestack-ui/provider/-/provider-0.1.6.tgz#a00322764d1f8e1d5b437d77ae78458a5f35b10f" - integrity sha512-/HnKRIqEWdBZ5mN6RYgf4BEvVdWn9p0m3FFVI0b8bF2Ffxia0cjBU1c3YEebnv6EK3g6G1QatAajiqEJbu6KSQ== + version "0.1.7" + resolved "https://registry.yarnpkg.com/@gluestack-ui/provider/-/provider-0.1.7.tgz#d71783c70cbfbac9a5dd0b1006e8dae66818b6a3" + integrity sha512-IKIHzlNrXaw722OzbhfFUbhEG+xHIO3htd3+ujPx0lvw2zxaCKNANhXqGYk8NdeE/Tq87k7cxrqDA/VKmIv1dw== dependencies: - "@gluestack-ui/overlay" "^0.1.8" - "@gluestack-ui/toast" "^0.1.11" + "@gluestack-ui/utils" "^0.1.5" "@react-native-aria/interactions" "^0.2.10" tsconfig "7" typescript "^4.9.4" @@ -3045,7 +3049,7 @@ "@react-native-aria/radio" "^0.2.5" "@react-stately/radio" "^3.8.1" -"@gluestack-ui/react-native-aria@^0.1.2", "@gluestack-ui/react-native-aria@^0.1.4", "@gluestack-ui/react-native-aria@latest": +"@gluestack-ui/react-native-aria@^0.1.2", "@gluestack-ui/react-native-aria@^0.1.4": version "0.1.4" resolved "https://registry.yarnpkg.com/@gluestack-ui/react-native-aria/-/react-native-aria-0.1.4.tgz#2456489417931ce5c53052abcb5c0f90e68312f3" integrity sha512-+9rXNpU+HpPFE1EAo62LYeU/AuWyQiXoYlX7aKEUfTfnVMsoTtXCyzIjeSWbUSnXAmztgV6B68b6AlS0yOnAMA== @@ -3053,7 +3057,7 @@ "@react-native-aria/focus" "^0.2.7" react-native-svg "13.4.0" -"@gluestack-ui/select@^0.1.6", "@gluestack-ui/select@latest": +"@gluestack-ui/select@^0.1.14", "@gluestack-ui/select@^0.1.6", "@gluestack-ui/select@latest": version "0.1.14" resolved "https://registry.yarnpkg.com/@gluestack-ui/select/-/select-0.1.14.tgz#484d668fd71c70d65f5c8cfb18964f21ebf80a28" integrity sha512-N2cyzl3MhIQgnKdqY3o5SikdstQXu8VNAYXTQ7N3TVN6nGqoVpWKGlgmz9yt+xQtTH6+2hNkdnjR6sMPdG3leQ== @@ -3063,7 +3067,7 @@ "@gluestack-ui/utils" "^0.1.5" "@react-native-aria/focus" "^0.2.7" -"@gluestack-ui/slider@^0.1.10", "@gluestack-ui/slider@^0.1.3": +"@gluestack-ui/slider@^0.1.3", "@gluestack-ui/slider@latest": version "0.1.10" resolved "https://registry.yarnpkg.com/@gluestack-ui/slider/-/slider-0.1.10.tgz#77197a58e978f3af688400d5a28897f03faea694" integrity sha512-QVYUswUoImF6odPrOiktmUH/t+rOC01JcEP/dJPQxOadMXy0DEnjJp3whTNglYzIHw5NbNlCjiztUfLZa2ZguA== @@ -3101,7 +3105,7 @@ "@react-native-aria/interactions" "^0.2.8" "@react-stately/toggle" "^3.4.4" -"@gluestack-ui/tabs@^0.1.6", "@gluestack-ui/tabs@latest": +"@gluestack-ui/tabs@^0.1.11", "@gluestack-ui/tabs@^0.1.6", "@gluestack-ui/tabs@latest": version "0.1.11" resolved "https://registry.yarnpkg.com/@gluestack-ui/tabs/-/tabs-0.1.11.tgz#4d0269b9064adc343c94aad8940c87f11bba7270" integrity sha512-/zXn5G7sPViNtWGtBDC8cl+QyE88vqfjio2P0IOZ77bzSA9ddA7SrMIhvHpvyy+kdWs5K8sElApXb6tAwFIi6w== @@ -3110,7 +3114,7 @@ "@react-native-aria/focus" "^0.2.8" "@react-native-aria/interactions" "^0.2.10" -"@gluestack-ui/textarea@^0.1.7", "@gluestack-ui/textarea@latest": +"@gluestack-ui/textarea@^0.1.12", "@gluestack-ui/textarea@^0.1.7", "@gluestack-ui/textarea@latest": version "0.1.12" resolved "https://registry.yarnpkg.com/@gluestack-ui/textarea/-/textarea-0.1.12.tgz#9f544ba9b7aa43e78a2ec11c9894d7b3abe04a44" integrity sha512-yRZvLWXe9bZGb3oYZyz7vClUU6+qvQ+iHWM0F+ccMr6oj9c4i1Ru/9G5+8O+mhXm7/fuMhQWkAlpMy7BtEq7WQ== @@ -3120,10 +3124,52 @@ "@react-native-aria/focus" "^0.2.7" react-native-svg "13.4.0" -"@gluestack-ui/toast@^0.1.11", "@gluestack-ui/toast@^0.1.7", "@gluestack-ui/toast@latest": - version "0.1.13" - resolved "https://registry.yarnpkg.com/@gluestack-ui/toast/-/toast-0.1.13.tgz#7fa352b0b2a9f4362e49972038d2b1b724197930" - integrity sha512-zZTtLVBJRSuMLlyJGYxZ8tZPFJFb+rkyUOxAIZDDSOv+mIvwJHA+RItvHdrKiO3R47e5OXW9Xgur4GFkddSbBw== +"@gluestack-ui/themed@^0.1.9": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@gluestack-ui/themed/-/themed-0.1.9.tgz#a6c91ab687d10c835800032744e3a8bf0822ffe8" + integrity sha512-vYXPl2I371moirkHMIcklQQ2bYFI3Iv4qeGdJr2YMGJFVxAsZjK2e1vCzynGxWF02k+cNFbbN/UKqSvGNDncNw== + dependencies: + "@expo/html-elements" latest + "@gluestack-style/animation-plugin" latest + "@gluestack-style/react" "^0.2.7" + "@gluestack-ui/actionsheet" latest + "@gluestack-ui/alert" latest + "@gluestack-ui/alert-dialog" latest + "@gluestack-ui/avatar" latest + "@gluestack-ui/button" latest + "@gluestack-ui/checkbox" "^0.1.17" + "@gluestack-ui/divider" latest + "@gluestack-ui/fab" latest + "@gluestack-ui/form-control" latest + "@gluestack-ui/hstack" latest + "@gluestack-ui/icon" latest + "@gluestack-ui/input" "^0.1.10" + "@gluestack-ui/link" latest + "@gluestack-ui/menu" latest + "@gluestack-ui/modal" latest + "@gluestack-ui/overlay" latest + "@gluestack-ui/popover" latest + "@gluestack-ui/pressable" latest + "@gluestack-ui/progress" latest + "@gluestack-ui/provider" latest + "@gluestack-ui/radio" latest + "@gluestack-ui/select" "^0.1.14" + "@gluestack-ui/slider" latest + "@gluestack-ui/spinner" latest + "@gluestack-ui/switch" latest + "@gluestack-ui/tabs" "^0.1.11" + "@gluestack-ui/textarea" "^0.1.12" + "@gluestack-ui/toast" latest + "@gluestack-ui/tooltip" "^0.1.15" + "@gluestack-ui/vstack" latest + "@legendapp/motion" latest + react "^18.2.0" + react-native-svg "13.4.0" + +"@gluestack-ui/toast@^0.1.7", "@gluestack-ui/toast@latest": + version "0.1.14" + resolved "https://registry.yarnpkg.com/@gluestack-ui/toast/-/toast-0.1.14.tgz#e13501f4764017cb1036d0c4f394010982bb19d3" + integrity sha512-rKEjrNPUeDwi6nND+yQ5A1XaIRHfghmi+b6lAhOJgJJC2eneAhzcj0rzK4S5IftayYh/8XPHJYK7RCGqzNuw/Q== dependencies: "@gluestack-ui/hooks" "^0.1.2" "@gluestack-ui/overlay" "^0.1.7" @@ -3131,7 +3177,7 @@ "@gluestack-ui/utils" "^0.1.5" "@react-native-aria/focus" "^0.2.7" -"@gluestack-ui/tooltip@^0.1.6", "@gluestack-ui/tooltip@latest": +"@gluestack-ui/tooltip@^0.1.15", "@gluestack-ui/tooltip@^0.1.6", "@gluestack-ui/tooltip@latest": version "0.1.15" resolved "https://registry.yarnpkg.com/@gluestack-ui/tooltip/-/tooltip-0.1.15.tgz#cf722b4574cc9ad89c763a60b6ab2ec85e90b9b7" integrity sha512-qD7HOen4aJHIS4CeJOlLcHdYKvlTAARA3hQDjW51u5EXm/dKyekpW10A5Ny1Z95XT3DViNolEFizsiOLYnKF1A== @@ -3143,7 +3189,7 @@ "@react-native-aria/interactions" "^0.2.10" "@react-native-aria/overlays" "0.3.7" -"@gluestack-ui/transitions@^0.1.6", "@gluestack-ui/transitions@^0.1.8", "@gluestack-ui/transitions@latest": +"@gluestack-ui/transitions@^0.1.6", "@gluestack-ui/transitions@^0.1.8", "@gluestack-ui/transitions@^0.1.9": version "0.1.9" resolved "https://registry.yarnpkg.com/@gluestack-ui/transitions/-/transitions-0.1.9.tgz#9f8334017f006237539f28d3ee50c802fe3c0a03" integrity sha512-Ly9sWpaR6ocSNIvM1kyTuQPf3eFVKigGPJkp37EkrUCqvsznlCvEErf6wcGnwWGyONlokRubF3YZvNWuR/P3xQ== @@ -3169,15 +3215,15 @@ dependencies: "@gluestack-ui/utils" "^0.1.5" -"@gluestack/design-system@latest": - version "0.4.58-alpha.5" - resolved "https://registry.yarnpkg.com/@gluestack/design-system/-/design-system-0.4.58-alpha.5.tgz#17fd728f9261a361b19b97ae9dfa85521d227a3b" - integrity sha512-aTD+hPA0A9Hu+5Il4NYIUdSQj6Bi6mAMqdR9Tr9987yNau5KsRrEe4iWDX+N+cgGs7DOnA0P5N4EwTv9UwMJcg== +"@gluestack/design-system@^0.4.68": + version "0.4.68" + resolved "https://registry.yarnpkg.com/@gluestack/design-system/-/design-system-0.4.68.tgz#6356cc4c7c4d17a8e71d582f0d0503c17d78dc67" + integrity sha512-/5fDIM31F+fVr+x3Re8IHVxIYr2Cu/xBURTIeHBtCSu3xx+5KL+r+eglcAc+thYajQEq20t0lBEbrUbg8RrO9w== dependencies: "@expo/html-elements" "0.3.0" "@gluestack-style/animation-plugin" "^0.1.7" - "@gluestack-style/babel-plugin-styled-resolver" "^0.1.14" - "@gluestack-style/react" "^0.1.33" + "@gluestack-style/babel-plugin-styled-resolver" "^0.1.15-alpha.0" + "@gluestack-style/react" "^0.2.3" "@gluestack-ui/actionsheet" "^0.2.7" "@gluestack-ui/alert" "^0.1.4" "@gluestack-ui/alert-dialog" "^0.1.8" @@ -3353,49 +3399,49 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.6.2.tgz#bf1d4101347c23e07c029a1b1ae07d550f5cc541" - integrity sha512-0N0yZof5hi44HAR2pPS+ikJ3nzKNoZdVu8FffRf3wy47I7Dm7etk/3KetMdRUqzVd16V4O2m2ISpNTbnIuqy1w== +"@jest/console@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.6.4.tgz#a7e2d84516301f986bba0dd55af9d5fe37f46527" + integrity sha512-wNK6gC0Ha9QeEPSkeJedQuTQqxZYnDPuDcDhVuVatRvMkL4D0VTvFVZj+Yuh6caG2aOfzkUZ36KtCmLNtR02hw== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^29.6.2" - jest-util "^29.6.2" + jest-message-util "^29.6.3" + jest-util "^29.6.3" slash "^3.0.0" -"@jest/core@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.6.2.tgz#6f2d1dbe8aa0265fcd4fb8082ae1952f148209c8" - integrity sha512-Oj+5B+sDMiMWLhPFF+4/DvHOf+U10rgvCLGPHP8Xlsy/7QxS51aU/eBngudHlJXnaWD5EohAgJ4js+T6pa+zOg== +"@jest/core@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.6.4.tgz#265ebee05ec1ff3567757e7a327155c8d6bdb126" + integrity sha512-U/vq5ccNTSVgYH7mHnodHmCffGWHJnz/E1BEWlLuK5pM4FZmGfBn/nrJGLjUsSmyx3otCeqc1T31F4y08AMDLg== dependencies: - "@jest/console" "^29.6.2" - "@jest/reporters" "^29.6.2" - "@jest/test-result" "^29.6.2" - "@jest/transform" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/console" "^29.6.4" + "@jest/reporters" "^29.6.4" + "@jest/test-result" "^29.6.4" + "@jest/transform" "^29.6.4" + "@jest/types" "^29.6.3" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" ci-info "^3.2.0" exit "^0.1.2" graceful-fs "^4.2.9" - jest-changed-files "^29.5.0" - jest-config "^29.6.2" - jest-haste-map "^29.6.2" - jest-message-util "^29.6.2" - jest-regex-util "^29.4.3" - jest-resolve "^29.6.2" - jest-resolve-dependencies "^29.6.2" - jest-runner "^29.6.2" - jest-runtime "^29.6.2" - jest-snapshot "^29.6.2" - jest-util "^29.6.2" - jest-validate "^29.6.2" - jest-watcher "^29.6.2" + jest-changed-files "^29.6.3" + jest-config "^29.6.4" + jest-haste-map "^29.6.4" + jest-message-util "^29.6.3" + jest-regex-util "^29.6.3" + jest-resolve "^29.6.4" + jest-resolve-dependencies "^29.6.4" + jest-runner "^29.6.4" + jest-runtime "^29.6.4" + jest-snapshot "^29.6.4" + jest-util "^29.6.3" + jest-validate "^29.6.3" + jest-watcher "^29.6.4" micromatch "^4.0.4" - pretty-format "^29.6.2" + pretty-format "^29.6.3" slash "^3.0.0" strip-ansi "^6.0.0" @@ -3407,69 +3453,69 @@ "@jest/types" "^27.5.1" "@jest/create-cache-key-function@^29.0.3", "@jest/create-cache-key-function@^29.2.1": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/create-cache-key-function/-/create-cache-key-function-29.6.2.tgz#b6b74fb741a7b7d9aa399c179694db8272283527" - integrity sha512-oGVRMr8na9h1vUiem1E/Uoxb/NR9BdfKb7IBZ+pNWxJQmTYSbDF0dsVBAGqNU7MBQwYJDyRx0H7H/0itiqAgQg== + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/create-cache-key-function/-/create-cache-key-function-29.6.3.tgz#e16da2139246403fb359fd65fced012eb32aa2b1" + integrity sha512-kzSK9XAxtD1kRPJKxsmD0YKw2fyXveP+5ikeQkCYCHeacWW1EGYMTgjDIM/Di4Uhttx7lnHwrNpz2xn+0rTp8g== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" -"@jest/environment@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.6.2.tgz#794c0f769d85e7553439d107d3f43186dc6874a9" - integrity sha512-AEcW43C7huGd/vogTddNNTDRpO6vQ2zaQNrttvWV18ArBx9Z56h7BIsXkNFJVOO4/kblWEQz30ckw0+L3izc+Q== +"@jest/environment@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.6.4.tgz#78ec2c9f8c8829a37616934ff4fea0c028c79f4f" + integrity sha512-sQ0SULEjA1XUTHmkBRl7A1dyITM9yb1yb3ZNKPX3KlTd6IG7mWUe3e2yfExtC2Zz1Q+mMckOLHmL/qLiuQJrBQ== dependencies: - "@jest/fake-timers" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/fake-timers" "^29.6.4" + "@jest/types" "^29.6.3" "@types/node" "*" - jest-mock "^29.6.2" + jest-mock "^29.6.3" -"@jest/expect-utils@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.6.2.tgz#1b97f290d0185d264dd9fdec7567a14a38a90534" - integrity sha512-6zIhM8go3RV2IG4aIZaZbxwpOzz3ZiM23oxAlkquOIole+G6TrbeXnykxWYlqF7kz2HlBjdKtca20x9atkEQYg== +"@jest/expect-utils@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.6.4.tgz#17c7dfe6cec106441f218b0aff4b295f98346679" + integrity sha512-FEhkJhqtvBwgSpiTrocquJCdXPsyvNKcl/n7A3u7X4pVoF4bswm11c9d4AV+kfq2Gpv/mM8x7E7DsRvH+djkrg== dependencies: - jest-get-type "^29.4.3" + jest-get-type "^29.6.3" -"@jest/expect@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.6.2.tgz#5a2ad58bb345165d9ce0a1845bbf873c480a4b28" - integrity sha512-m6DrEJxVKjkELTVAztTLyS/7C92Y2b0VYqmDROYKLLALHn8T/04yPs70NADUYPrV3ruI+H3J0iUIuhkjp7vkfg== +"@jest/expect@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.6.4.tgz#1d6ae17dc68d906776198389427ab7ce6179dba6" + integrity sha512-Warhsa7d23+3X5bLbrbYvaehcgX5TLYhI03JKoedTiI8uJU4IhqYBWF7OSSgUyz4IgLpUYPkK0AehA5/fRclAA== dependencies: - expect "^29.6.2" - jest-snapshot "^29.6.2" + expect "^29.6.4" + jest-snapshot "^29.6.4" -"@jest/fake-timers@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.6.2.tgz#fe9d43c5e4b1b901168fe6f46f861b3e652a2df4" - integrity sha512-euZDmIlWjm1Z0lJ1D0f7a0/y5Kh/koLFMUBE5SUYWrmy8oNhJpbTBDAP6CxKnadcMLDoDf4waRYCe35cH6G6PA== +"@jest/fake-timers@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.6.4.tgz#45a27f093c43d5d989362a3e7a8c70c83188b4f6" + integrity sha512-6UkCwzoBK60edXIIWb0/KWkuj7R7Qq91vVInOe3De6DSpaEiqjKcJw4F7XUet24Wupahj9J6PlR09JqJ5ySDHw== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" "@sinonjs/fake-timers" "^10.0.2" "@types/node" "*" - jest-message-util "^29.6.2" - jest-mock "^29.6.2" - jest-util "^29.6.2" + jest-message-util "^29.6.3" + jest-mock "^29.6.3" + jest-util "^29.6.3" -"@jest/globals@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.6.2.tgz#74af81b9249122cc46f1eb25793617eec69bf21a" - integrity sha512-cjuJmNDjs6aMijCmSa1g2TNG4Lby/AeU7/02VtpW+SLcZXzOLK2GpN2nLqcFjmhy3B3AoPeQVx7BnyOf681bAw== +"@jest/globals@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.6.4.tgz#4f04f58731b062b44ef23036b79bdb31f40c7f63" + integrity sha512-wVIn5bdtjlChhXAzVXavcY/3PEjf4VqM174BM3eGL5kMxLiZD5CLnbmkEyA1Dwh9q8XjP6E8RwjBsY/iCWrWsA== dependencies: - "@jest/environment" "^29.6.2" - "@jest/expect" "^29.6.2" - "@jest/types" "^29.6.1" - jest-mock "^29.6.2" + "@jest/environment" "^29.6.4" + "@jest/expect" "^29.6.4" + "@jest/types" "^29.6.3" + jest-mock "^29.6.3" -"@jest/reporters@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.6.2.tgz#524afe1d76da33d31309c2c4a2c8062d0c48780a" - integrity sha512-sWtijrvIav8LgfJZlrGCdN0nP2EWbakglJY49J1Y5QihcQLfy7ovyxxjJBRXMNltgt4uPtEcFmIMbVshEDfFWw== +"@jest/reporters@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.6.4.tgz#9d6350c8a2761ece91f7946e97ab0dabc06deab7" + integrity sha512-sxUjWxm7QdchdrD3NfWKrL8FBsortZeibSJv4XLjESOOjSUOkjQcb0ZHJwfhEGIvBvTluTzfG2yZWZhkrXJu8g== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^29.6.2" - "@jest/test-result" "^29.6.2" - "@jest/transform" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/console" "^29.6.4" + "@jest/test-result" "^29.6.4" + "@jest/transform" "^29.6.4" + "@jest/types" "^29.6.3" "@jridgewell/trace-mapping" "^0.3.18" "@types/node" "*" chalk "^4.0.0" @@ -3478,52 +3524,52 @@ glob "^7.1.3" graceful-fs "^4.2.9" istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^5.1.0" + istanbul-lib-instrument "^6.0.0" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.1.3" - jest-message-util "^29.6.2" - jest-util "^29.6.2" - jest-worker "^29.6.2" + jest-message-util "^29.6.3" + jest-util "^29.6.3" + jest-worker "^29.6.4" slash "^3.0.0" string-length "^4.0.1" strip-ansi "^6.0.0" v8-to-istanbul "^9.0.1" -"@jest/schemas@^29.6.0": - version "29.6.0" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.0.tgz#0f4cb2c8e3dca80c135507ba5635a4fd755b0040" - integrity sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ== +"@jest/schemas@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" + integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== dependencies: "@sinclair/typebox" "^0.27.8" -"@jest/source-map@^29.6.0": - version "29.6.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.6.0.tgz#bd34a05b5737cb1a99d43e1957020ac8e5b9ddb1" - integrity sha512-oA+I2SHHQGxDCZpbrsCQSoMLb3Bz547JnM+jUr9qEbuw0vQlWZfpPS7CO9J7XiwKicEz9OFn/IYoLkkiUD7bzA== +"@jest/source-map@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.6.3.tgz#d90ba772095cf37a34a5eb9413f1b562a08554c4" + integrity sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw== dependencies: "@jridgewell/trace-mapping" "^0.3.18" callsites "^3.0.0" graceful-fs "^4.2.9" -"@jest/test-result@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.6.2.tgz#fdd11583cd1608e4db3114e8f0cce277bf7a32ed" - integrity sha512-3VKFXzcV42EYhMCsJQURptSqnyjqCGbtLuX5Xxb6Pm6gUf1wIRIl+mandIRGJyWKgNKYF9cnstti6Ls5ekduqw== +"@jest/test-result@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.6.4.tgz#adf5c79f6e1fb7405ad13d67d9e2b6ff54b54c6b" + integrity sha512-uQ1C0AUEN90/dsyEirgMLlouROgSY+Wc/JanVVk0OiUKa5UFh7sJpMEM3aoUBAz2BRNvUJ8j3d294WFuRxSyOQ== dependencies: - "@jest/console" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/console" "^29.6.4" + "@jest/types" "^29.6.3" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.6.2.tgz#585eff07a68dd75225a7eacf319780cb9f6b9bf4" - integrity sha512-GVYi6PfPwVejO7slw6IDO0qKVum5jtrJ3KoLGbgBWyr2qr4GaxFV6su+ZAjdTX75Sr1DkMFRk09r2ZVa+wtCGw== +"@jest/test-sequencer@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.6.4.tgz#86aef66aaa22b181307ed06c26c82802fb836d7b" + integrity sha512-E84M6LbpcRq3fT4ckfKs9ryVanwkaIB0Ws9bw3/yP4seRLg/VaCZ/LgW0MCq5wwk4/iP/qnilD41aj2fsw2RMg== dependencies: - "@jest/test-result" "^29.6.2" + "@jest/test-result" "^29.6.4" graceful-fs "^4.2.9" - jest-haste-map "^29.6.2" + jest-haste-map "^29.6.4" slash "^3.0.0" "@jest/transform@^26.6.2": @@ -3547,22 +3593,22 @@ source-map "^0.6.1" write-file-atomic "^3.0.0" -"@jest/transform@^29.6.2": - version "29.6.2" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.6.2.tgz#522901ebbb211af08835bc3bcdf765ab778094e3" - integrity sha512-ZqCqEISr58Ce3U+buNFJYUktLJZOggfyvR+bZMaiV1e8B1SIvJbwZMrYz3gx/KAPn9EXmOmN+uB08yLCjWkQQg== +"@jest/transform@^29.6.4": + version "29.6.4" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.6.4.tgz#a6bc799ef597c5d85b2e65a11fd96b6b239bab5a" + integrity sha512-8thgRSiXUqtr/pPGY/OsyHuMjGyhVnWrFAwoxmIemlBuiMyU1WFs0tXoNxzcr4A4uErs/ABre76SGmrr5ab/AA== dependencies: "@babel/core" "^7.11.6" - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" "@jridgewell/trace-mapping" "^0.3.18" babel-plugin-istanbul "^6.1.1" chalk "^4.0.0" convert-source-map "^2.0.0" fast-json-stable-stringify "^2.1.0" graceful-fs "^4.2.9" - jest-haste-map "^29.6.2" - jest-regex-util "^29.4.3" - jest-util "^29.6.2" + jest-haste-map "^29.6.4" + jest-regex-util "^29.6.3" + jest-util "^29.6.3" micromatch "^4.0.4" pirates "^4.0.4" slash "^3.0.0" @@ -3590,12 +3636,12 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" -"@jest/types@^29.6.1": - version "29.6.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.1.tgz#ae79080278acff0a6af5eb49d063385aaa897bf2" - integrity sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw== +"@jest/types@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" + integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== dependencies: - "@jest/schemas" "^29.6.0" + "@jest/schemas" "^29.6.3" "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" @@ -3742,10 +3788,10 @@ resolved "https://registry.yarnpkg.com/@next/env/-/env-12.3.4.tgz#c787837d36fcad75d72ff8df6b57482027d64a47" integrity sha512-H/69Lc5Q02dq3o+dxxy5O/oNxFsZpdL6WREtOOtOM1B/weonIwDXkekr1KV5DPVPr12IHFPrMrcJQ6bgPMfn7A== -"@next/env@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/env/-/env-13.4.16.tgz#382b565b35a2a69bd0e6b50f74c7b95f0c4b1097" - integrity sha512-pCU0sJBqdfKP9mwDadxvZd+eLz3fZrTlmmDHY12Hdpl3DD0vy8ou5HWKVfG0zZS6tqhL4wnQqRbspdY5nqa7MA== +"@next/env@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/env/-/env-13.4.19.tgz#46905b4e6f62da825b040343cbc233144e9578d3" + integrity sha512-FsAT5x0jF2kkhNkKkukhsyYOrRqtSxrEhfliniIq0bwWbuXLgyt3Gv0Ml+b91XwjwArmuP7NxCiGd++GGKdNMQ== "@next/eslint-plugin-next@12.0.4": version "12.0.4" @@ -3796,20 +3842,20 @@ resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.3.4.tgz#14ac8357010c95e67327f47082af9c9d75d5be79" integrity sha512-DqsSTd3FRjQUR6ao0E1e2OlOcrF5br+uegcEGPVonKYJpcr0MJrtYmPxd4v5T6UCJZ+XzydF7eQo5wdGvSZAyA== -"@next/swc-darwin-arm64@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.16.tgz#ed6a342f95e5f21213fdadbceb65b40ae678cee0" - integrity sha512-Rl6i1uUq0ciRa3VfEpw6GnWAJTSKo9oM2OrkGXPsm7rMxdd2FR5NkKc0C9xzFCI4+QtmBviWBdF2m3ur3Nqstw== +"@next/swc-darwin-arm64@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.19.tgz#77ad462b5ced4efdc26cb5a0053968d2c7dac1b6" + integrity sha512-vv1qrjXeGbuF2mOkhkdxMDtv9np7W4mcBtaDnHU+yJG+bBwa6rYsYSCI/9Xm5+TuF5SbZbrWO6G1NfTh1TMjvQ== "@next/swc-darwin-x64@12.3.4": version "12.3.4" resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.3.4.tgz#e7dc63cd2ac26d15fb84d4d2997207fb9ba7da0f" integrity sha512-PPF7tbWD4k0dJ2EcUSnOsaOJ5rhT3rlEt/3LhZUGiYNL8KvoqczFrETlUx0cUYaXe11dRA3F80Hpt727QIwByQ== -"@next/swc-darwin-x64@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.16.tgz#36c16066a1a3ef8211e84a6a5d72bef15826b291" - integrity sha512-o1vIKYbZORyDmTrPV1hApt9NLyWrS5vr2p5hhLGpOnkBY1cz6DAXjv8Lgan8t6X87+83F0EUDlu7klN8ieZ06A== +"@next/swc-darwin-x64@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.19.tgz#aebe38713a4ce536ee5f2a291673e14b715e633a" + integrity sha512-jyzO6wwYhx6F+7gD8ddZfuqO4TtpJdw3wyOduR4fxTUCm3aLw7YmHGYNjS0xRSYGAkLpBkH1E0RcelyId6lNsw== "@next/swc-freebsd-x64@12.3.4": version "12.3.4" @@ -3826,70 +3872,70 @@ resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.3.4.tgz#43a7bc409b03487bff5beb99479cacdc7bd29af5" integrity sha512-kiX0vgJGMZVv+oo1QuObaYulXNvdH/IINmvdZnVzMO/jic/B8EEIGlZ8Bgvw8LCjH3zNVPO3mGrdMvnEEPEhKA== -"@next/swc-linux-arm64-gnu@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.16.tgz#a5b5500737f07e3aa7f184014d8df7973420df26" - integrity sha512-JRyAl8lCfyTng4zoOmE6hNI2f1MFUr7JyTYCHl1RxX42H4a5LMwJhDVQ7a9tmDZ/yj+0hpBn+Aan+d6lA3v0UQ== +"@next/swc-linux-arm64-gnu@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.19.tgz#ec54db65b587939c7b94f9a84800f003a380f5a6" + integrity sha512-vdlnIlaAEh6H+G6HrKZB9c2zJKnpPVKnA6LBwjwT2BTjxI7e0Hx30+FoWCgi50e+YO49p6oPOtesP9mXDRiiUg== "@next/swc-linux-arm64-musl@12.3.4": version "12.3.4" resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.3.4.tgz#4d1db6de6dc982b974cd1c52937111e3e4a34bd3" integrity sha512-EETZPa1juczrKLWk5okoW2hv7D7WvonU+Cf2CgsSoxgsYbUCZ1voOpL4JZTOb6IbKMDo6ja+SbY0vzXZBUMvkQ== -"@next/swc-linux-arm64-musl@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.16.tgz#381b7662c5b10ed5750dce41dd57841aa0713e77" - integrity sha512-9gqVqNzUMWbUDgDiND18xoUqhwSm2gmksqXgCU0qaOKt6oAjWz8cWYjgpPVD0WICKFylEY/gvPEP1fMZDVFZ/g== +"@next/swc-linux-arm64-musl@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.19.tgz#1f5e2c1ea6941e7d530d9f185d5d64be04279d86" + integrity sha512-aU0HkH2XPgxqrbNRBFb3si9Ahu/CpaR5RPmN2s9GiM9qJCiBBlZtRTiEca+DC+xRPyCThTtWYgxjWHgU7ZkyvA== "@next/swc-linux-x64-gnu@12.3.4": version "12.3.4" resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.3.4.tgz#c3b414d77bab08b35f7dd8943d5586f0adb15e38" integrity sha512-4csPbRbfZbuWOk3ATyWcvVFdD9/Rsdq5YHKvRuEni68OCLkfy4f+4I9OBpyK1SKJ00Cih16NJbHE+k+ljPPpag== -"@next/swc-linux-x64-gnu@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.16.tgz#6e0b0eab1c316506950aeb4a09a5ea5c38edabe7" - integrity sha512-KcQGwchAKmZVPa8i5PLTxvTs1/rcFnSltfpTm803Tr/BtBV3AxCkHLfhtoyVtVzx/kl/oue8oS+DSmbepQKwhw== +"@next/swc-linux-x64-gnu@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.19.tgz#96b0882492a2f7ffcce747846d3680730f69f4d1" + integrity sha512-htwOEagMa/CXNykFFeAHHvMJeqZfNQEoQvHfsA4wgg5QqGNqD5soeCer4oGlCol6NGUxknrQO6VEustcv+Md+g== "@next/swc-linux-x64-musl@12.3.4": version "12.3.4" resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.3.4.tgz#187a883ec09eb2442a5ebf126826e19037313c61" integrity sha512-YeBmI+63Ro75SUiL/QXEVXQ19T++58aI/IINOyhpsRL1LKdyfK/35iilraZEFz9bLQrwy1LYAR5lK200A9Gjbg== -"@next/swc-linux-x64-musl@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.16.tgz#36b84e4509168a5cadf9dfd728c239002d4311fe" - integrity sha512-2RbMZNxYnJmW8EPHVBsGZPq5zqWAyBOc/YFxq/jIQ/Yn3RMFZ1dZVCjtIcsiaKmgh7mjA/W0ApbumutHNxRqqQ== +"@next/swc-linux-x64-musl@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.19.tgz#f276b618afa321d2f7b17c81fc83f429fb0fd9d8" + integrity sha512-4Gj4vvtbK1JH8ApWTT214b3GwUh9EKKQjY41hH/t+u55Knxi/0wesMzwQRhppK6Ddalhu0TEttbiJ+wRcoEj5Q== "@next/swc-win32-arm64-msvc@12.3.4": version "12.3.4" resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.3.4.tgz#89befa84e453ed2ef9a888f375eba565a0fde80b" integrity sha512-Sd0qFUJv8Tj0PukAYbCCDbmXcMkbIuhnTeHm9m4ZGjCf6kt7E/RMs55Pd3R5ePjOkN7dJEuxYBehawTR/aPDSQ== -"@next/swc-win32-arm64-msvc@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.16.tgz#52d36f909ccdefa2761617b6d4e9ae65f99880a9" - integrity sha512-thDcGonELN7edUKzjzlHrdoKkm7y8IAdItQpRvvMxNUXa4d9r0ElofhTZj5emR7AiXft17hpen+QAkcWpqG7Jg== +"@next/swc-win32-arm64-msvc@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.19.tgz#1599ae0d401da5ffca0947823dac577697cce577" + integrity sha512-bUfDevQK4NsIAHXs3/JNgnvEY+LRyneDN788W2NYiRIIzmILjba7LaQTfihuFawZDhRtkYCv3JDC3B4TwnmRJw== "@next/swc-win32-ia32-msvc@12.3.4": version "12.3.4" resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.3.4.tgz#cb50c08f0e40ead63642a7f269f0c8254261f17c" integrity sha512-rt/vv/vg/ZGGkrkKcuJ0LyliRdbskQU+91bje+PgoYmxTZf/tYs6IfbmgudBJk6gH3QnjHWbkphDdRQrseRefQ== -"@next/swc-win32-ia32-msvc@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.16.tgz#a9cb0556d19c33fbb39ac9bef195fd490d6c7673" - integrity sha512-f7SE1Mo4JAchUWl0LQsbtySR9xCa+x55C0taetjUApKtcLR3AgAjASrrP+oE1inmLmw573qRnE1eZN8YJfEBQw== +"@next/swc-win32-ia32-msvc@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.19.tgz#55cdd7da90818f03e4da16d976f0cb22045d16fd" + integrity sha512-Y5kikILFAr81LYIFaw6j/NrOtmiM4Sf3GtOc0pn50ez2GCkr+oejYuKGcwAwq3jiTKuzF6OF4iT2INPoxRycEA== "@next/swc-win32-x64-msvc@12.3.4": version "12.3.4" resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.3.4.tgz#d28ea15a72cdcf96201c60a43e9630cd7fda168f" integrity sha512-DQ20JEfTBZAgF8QCjYfJhv2/279M6onxFjdG/+5B0Cyj00/EdBxiWb2eGGFgQhrBbNv/lsvzFbbi0Ptf8Vw/bg== -"@next/swc-win32-x64-msvc@13.4.16": - version "13.4.16" - resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.16.tgz#79a151d94583e03992c80df3d3e7f7686390ddac" - integrity sha512-WamDZm1M/OEM4QLce3lOmD1XdLEl37zYZwlmOLhmF7qYJ2G6oYm9+ejZVv+LakQIsIuXhSpVlOvrxIAHqwRkPQ== +"@next/swc-win32-x64-msvc@13.4.19": + version "13.4.19" + resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.19.tgz#648f79c4e09279212ac90d871646ae12d80cdfce" + integrity sha512-YzA78jBDXMYiINdPdJJwGgPNT3YqBNNGhsthsDoWHL9p24tEJn9ViQf/ZqTbwSpX/RrkPupLfuuTH2sf73JBAw== "@nicolo-ribaudo/chokidar-2@2.1.8-no-fsevents.3": version "2.1.8-no-fsevents.3" @@ -4114,6 +4160,19 @@ resolved "https://registry.yarnpkg.com/@radix-ui/colors/-/colors-0.1.9.tgz#aad732ecc4ce1018adcb3aedd3ce3c573c2256cc" integrity sha512-Vxq944ErPJsdVepjEUhOLO9ApUVOocA63knc+V2TkJ09D/AVOjiMIgkca/7VoYgODcla0qbSIBjje0SMfZMbAw== +"@react-aria/button@^3.7.0": + version "3.8.1" + resolved "https://registry.yarnpkg.com/@react-aria/button/-/button-3.8.1.tgz#9445beb27f61b1c4ddfb51a85ce91477eb497274" + integrity sha512-igxZ871An3Clpmpw+beN8F792NfEnEaLRAZ4jITtC/FdzwQwRM7eCu/ZEaqpNtbUtruAmYhafnG/2uCkKhTpTw== + dependencies: + "@react-aria/focus" "^3.14.0" + "@react-aria/interactions" "^3.17.0" + "@react-aria/utils" "^3.19.0" + "@react-stately/toggle" "^3.6.1" + "@react-types/button" "^3.7.4" + "@react-types/shared" "^3.19.0" + "@swc/helpers" "^0.5.0" + "@react-aria/checkbox@^3.2.1": version "3.10.0" resolved "https://registry.yarnpkg.com/@react-aria/checkbox/-/checkbox-3.10.0.tgz#d852a6d1f01e692f004eb7dcef124ca5f37d53d1" @@ -4163,7 +4222,7 @@ "@react-types/shared" "^3.19.0" "@swc/helpers" "^0.5.0" -"@react-aria/focus@^3.14.0", "@react-aria/focus@^3.2.3": +"@react-aria/focus@^3.11.0", "@react-aria/focus@^3.14.0", "@react-aria/focus@^3.2.3": version "3.14.0" resolved "https://registry.yarnpkg.com/@react-aria/focus/-/focus-3.14.0.tgz#56b26227102c8492bfe35510033a48fda36f6ec7" integrity sha512-Xw7PxLT0Cqcz22OVtTZ8+HvurDogn9/xntzoIbVjpRFWzhlYe5WHnZL+2+gIiKf7EZ18Ma9/QsCnrVnvrky/Kw== @@ -4188,7 +4247,7 @@ "@react-types/shared" "^3.19.0" "@swc/helpers" "^0.5.0" -"@react-aria/interactions@^3.17.0", "@react-aria/interactions@^3.3.2": +"@react-aria/interactions@^3.14.0", "@react-aria/interactions@^3.17.0", "@react-aria/interactions@^3.3.2": version "3.17.0" resolved "https://registry.yarnpkg.com/@react-aria/interactions/-/interactions-3.17.0.tgz#a2f51115963fbc4b82212fb4209879fac88748d1" integrity sha512-v4BI5Nd8gi8s297fHpgjDDXOyufX+FPHJ31rkMwY6X1nR5gtI0+2jNOL4lh7s+cWzszpA0wpwIrKUPGhhLyUjQ== @@ -4231,7 +4290,7 @@ dependencies: "@swc/helpers" "^0.5.0" -"@react-aria/menu@^3.1.3", "@react-aria/menu@^3.10.1": +"@react-aria/menu@^3.1.3", "@react-aria/menu@^3.10.1", "@react-aria/menu@^3.8.1": version "3.10.1" resolved "https://registry.yarnpkg.com/@react-aria/menu/-/menu-3.10.1.tgz#9c457c2bdb46aca84b84aca29d06006e3a77b557" integrity sha512-FOb16XVejZgl4sFpclLvGd2RCvUBwl2bzFdAnss8Nd6Mx+h4m0bPeDT102k9v1Vjo7OGeqzvMyNU/KM4FwUGGA== @@ -4250,7 +4309,7 @@ "@react-types/shared" "^3.19.0" "@swc/helpers" "^0.5.0" -"@react-aria/overlays@^3.16.0", "@react-aria/overlays@^3.6.0", "@react-aria/overlays@^3.6.1", "@react-aria/overlays@^3.7.0": +"@react-aria/overlays@^3.13.0", "@react-aria/overlays@^3.16.0", "@react-aria/overlays@^3.6.0", "@react-aria/overlays@^3.6.1", "@react-aria/overlays@^3.7.0": version "3.16.0" resolved "https://registry.yarnpkg.com/@react-aria/overlays/-/overlays-3.16.0.tgz#47ef9f6876e2a9d3d596771b47c3a4ae6ade4622" integrity sha512-jclyCqs1U4XqDA1DAdZaiijKtHLVZ78FV0+IzL4QQfrvzCPC+ba+MC8pe/tw8dMQzXBSnTx/IEqOHu07IwrESQ== @@ -4296,6 +4355,15 @@ "@react-types/shared" "^3.19.0" "@swc/helpers" "^0.5.0" +"@react-aria/separator@^3.3.0": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@react-aria/separator/-/separator-3.3.4.tgz#24d8314cea1db81bb212c338ef872dd94542eb1c" + integrity sha512-Wb4TJ/PF6Q1yMIKfPM5z+SYwvNRW4RKBzB4oTNAWpSnj8pFimRNXYtyqIowZa67HOPgqzLptqxx6+mAsffCiuQ== + dependencies: + "@react-aria/utils" "^3.19.0" + "@react-types/shared" "^3.19.0" + "@swc/helpers" "^0.5.0" + "@react-aria/slider@^3.0.1": version "3.6.0" resolved "https://registry.yarnpkg.com/@react-aria/slider/-/slider-3.6.0.tgz#934cc3d1971fb3d9b9959db62cb79ccf06cffaea" @@ -4361,7 +4429,7 @@ "@react-types/switch" "^3.4.0" "@swc/helpers" "^0.5.0" -"@react-aria/utils@^3.19.0", "@react-aria/utils@^3.3.0", "@react-aria/utils@^3.4.1", "@react-aria/utils@^3.6.0": +"@react-aria/utils@^3.15.0", "@react-aria/utils@^3.19.0", "@react-aria/utils@^3.3.0", "@react-aria/utils@^3.4.1", "@react-aria/utils@^3.6.0": version "3.19.0" resolved "https://registry.yarnpkg.com/@react-aria/utils/-/utils-3.19.0.tgz#ee7fe77b37181fdf09fdd2e50ae818e4be858f47" integrity sha512-5GXqTCrUQtr78aiLVHZoeeGPuAxO4lCM+udWbKpSCh5xLfCZ7zFlZV9Q9FS0ea+IQypUcY8ngXCLsf22nSu/yg== @@ -4426,7 +4494,7 @@ "@react-types/dialog" "*" "@react-types/shared" "*" -"@react-native-aria/focus@0.2.8", "@react-native-aria/focus@^0.2.6", "@react-native-aria/focus@^0.2.7", "@react-native-aria/focus@^0.2.8": +"@react-native-aria/focus@^0.2.6", "@react-native-aria/focus@^0.2.7", "@react-native-aria/focus@^0.2.8": version "0.2.8" resolved "https://registry.yarnpkg.com/@react-native-aria/focus/-/focus-0.2.8.tgz#60192ae9b60e6833c964cd9dd296b557189ddf58" integrity sha512-1dIby+o37J2m4oV59TkjlirOXvn5SWtr8Z2dYkHvPe8oip8pEzH/jIl8uXFyvQJmRYA9n7Ju5ucThJJ/4Py8hw== @@ -4508,6 +4576,11 @@ "@react-stately/radio" "^3.2.1" "@react-types/radio" "^3.1.1" +"@react-native-aria/separator@^0.2.5": + version "0.2.5" + resolved "https://registry.yarnpkg.com/@react-native-aria/separator/-/separator-0.2.5.tgz#69fa8e8655fef55dd959179856ded6293b1a08a5" + integrity sha512-U7aPDalNCrz/izUcVQXguetMaEejcJJHGOM3HAqdbsPFsUX1Je6od0zumgqO6n87hLJ5z9QC8KPsXIGOWCgDNg== + "@react-native-aria/slider@^0.2.5-alpha.1", "@react-native-aria/slider@^0.2.5-alpha.2": version "0.2.5-alpha.2" resolved "https://registry.yarnpkg.com/@react-native-aria/slider/-/slider-0.2.5-alpha.2.tgz#e613c2ac338de8d8ef8999ed664ea743174ee8da" @@ -4983,7 +5056,7 @@ resolved "https://registry.yarnpkg.com/@react-native/assets/-/assets-1.0.0.tgz#c6f9bf63d274bafc8e970628de24986b30a55c8e" integrity sha512-KrwSpS1tKI70wuKl68DwJZYEvXktDHdZMG0k2AXD/rJVSlB23/X2CB2cutVR0HwNMJIal9HOUOBB2rVfa6UGtQ== -"@react-native/normalize-color@*", "@react-native/normalize-color@2.1.0", "@react-native/normalize-color@^2.0.0": +"@react-native/normalize-color@*", "@react-native/normalize-color@2.1.0", "@react-native/normalize-color@^2.0.0", "@react-native/normalize-color@^2.1.0": version "2.1.0" resolved "https://registry.yarnpkg.com/@react-native/normalize-color/-/normalize-color-2.1.0.tgz#939b87a9849e81687d3640c5efa2a486ac266f91" integrity sha512-Z1jQI2NpdFJCVgpY+8Dq/Bt3d+YUi1928Q+/CZm/oh66fzM0RUl54vvuXlPJKybH4pdCZey1eDTPaLHkMPNgWA== @@ -5124,7 +5197,7 @@ "@babel/runtime" "^7.6.2" "@react-types/shared" "^3.2.1" -"@react-stately/collections@^3.10.0", "@react-stately/collections@^3.3.0": +"@react-stately/collections@^3.10.0", "@react-stately/collections@^3.3.0", "@react-stately/collections@^3.6.0": version "3.10.0" resolved "https://registry.yarnpkg.com/@react-stately/collections/-/collections-3.10.0.tgz#5c772e5eae8d21ae8d1c023fb9b9ae6fa35b1092" integrity sha512-PyJEFmt9X0kDMF7D4StGnTdXX1hgyUcTXvvXU2fEw6OyXLtmfWFHmFARRtYbuelGKk6clmJojYmIEds0k8jdww== @@ -5414,7 +5487,7 @@ "@react-types/tooltip" "^3.4.3" "@swc/helpers" "^0.5.0" -"@react-stately/tree@^3.1.2", "@react-stately/tree@^3.7.1": +"@react-stately/tree@^3.1.2", "@react-stately/tree@^3.5.0", "@react-stately/tree@^3.7.1": version "3.7.1" resolved "https://registry.yarnpkg.com/@react-stately/tree/-/tree-3.7.1.tgz#67ab6bbf47f86005ca584be3333c84a106ef2abd" integrity sha512-D0BWcLTRx7EOTdAJCgYV6zm18xpNDxmv4meKJ/WmYSFq1bkHPN75NLv7VPf5Uvsm66xshbO/B3A4HB2/ag1yPA== @@ -5989,12 +6062,12 @@ util-deprecate "^1.0.2" "@storybook/api@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/api/-/api-7.3.1.tgz#76d77500dd529e0acf219fbf597fa44b8820d9dd" - integrity sha512-QYXX9NWV+Ud1nWVX3Tfjkmxb1Vi1bRxmSXlfIo3HYqhPm4rOwDlpN6nso21Kz3QyON4Hm9XqgQA5qUIZU19bVg== + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/api/-/api-7.3.2.tgz#9869c971f05f2e249df51f3fac844da32915d291" + integrity sha512-HAiaEl9uFQJM3AC5LhdnUbqr+7BVMaCNzhbUg1sWfO7sTFXPO0P1BAz9UuDKPlndwaVGcGpypRw9P/bdpuWLfA== dependencies: - "@storybook/client-logger" "7.3.1" - "@storybook/manager-api" "7.3.1" + "@storybook/client-logger" "7.3.2" + "@storybook/manager-api" "7.3.2" "@storybook/builder-webpack4@6.5.16": version "6.5.16" @@ -6074,12 +6147,12 @@ telejson "^6.0.8" "@storybook/channel-websocket@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/channel-websocket/-/channel-websocket-7.3.1.tgz#b88897ee40996a02a455f65d51f2692828084944" - integrity sha512-D4oo3tFC+vKRrwF+LQrX5NjmyDzLQBhq1fC6hge31F10J5NW9JJSrYqnZv6lVt/LCZqsD5FnrEH3KchWG5DKYg== + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/channel-websocket/-/channel-websocket-7.3.2.tgz#c7f441fb5602d4b831c56db7fab7d3aa05fc50a6" + integrity sha512-/oJm0hamUePPg51udEtMsYUXED8tDE0Du6sAGFfuhMKElvcJ9R9c//w8JaMf00EfgDB3GEZ0RxVMM2PYz9/zAg== dependencies: - "@storybook/channels" "7.3.1" - "@storybook/client-logger" "7.3.1" + "@storybook/channels" "7.3.2" + "@storybook/client-logger" "7.3.2" "@storybook/channels@6.5.16": version "6.5.16" @@ -6090,13 +6163,13 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/channels@7.3.1", "@storybook/channels@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-7.3.1.tgz#a618b5a7c8444e42284fb56d7f2385e775355d0c" - integrity sha512-DHdUdwfnMOSmtYv55Ixysklo/ZeD3TiTEQvyBaxhnMR3G0j7nb+TxqyfAn4fb7bntOPRNVB1Vz3nZXkkjrPNgw== +"@storybook/channels@7.3.2", "@storybook/channels@^7": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-7.3.2.tgz#2126321e7ad70e3fbc33d1544bb09e1fe6ffc5b9" + integrity sha512-GG5+qzv2OZAzXonqUpJR81f2pjKExj7v5MoFJhKYgb3Y+jVYlUzBHBjhQZhuQczP4si418/jvjimvU1PZ4hqcg== dependencies: - "@storybook/client-logger" "7.3.1" - "@storybook/core-events" "7.3.1" + "@storybook/client-logger" "7.3.2" + "@storybook/core-events" "7.3.2" "@storybook/global" "^5.0.0" qs "^6.10.0" telejson "^7.0.3" @@ -6136,10 +6209,10 @@ core-js "^3.8.2" global "^4.4.0" -"@storybook/client-logger@7.3.1", "@storybook/client-logger@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-7.3.1.tgz#a8ea0f8579d33c7657a8eee12856300460e2bf89" - integrity sha512-VfKi8C5Z1hquaP6xtVn9ngKcnXZjHNV6+RAqLbUJyAoGeO8fFaMblYgbY+tF7Xyf3bZKMLBo4QqtegTh2QjdAA== +"@storybook/client-logger@7.3.2", "@storybook/client-logger@^7": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-7.3.2.tgz#8c04d07cc3fdce124fa95aafc5413fea0c202345" + integrity sha512-T7q/YS5lPUE6xjz9EUwJ/v+KCd5KU9dl1MQ9RcH7IpM73EtQZeNSuM9/P96uKXZTf0wZOUBTXVlTzKr66ZB/RQ== dependencies: "@storybook/global" "^5.0.0" @@ -6184,12 +6257,12 @@ util-deprecate "^1.0.2" "@storybook/core-client@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-7.3.1.tgz#c9173f74fdf17d66a25d76dcf7a0f6d97149247d" - integrity sha512-UzZ9H7i9w5K2OEtlen9nJsgCOGl1Yf8cTq5EykXRrJCb+4JRzPwMdd83cDZhZNWKgYpx9js6KmyfWwxts0GvJQ== + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-7.3.2.tgz#905ba380a1116205dc1bc23a866e648bf44a89c0" + integrity sha512-K2jCnjZiUUskFjKUj7m1FTCphIwBv0KPOE5JCd0UR7un1P1G1kdXMctADE6fHosrW73xRrad9CBSyyetUVQQOA== dependencies: - "@storybook/client-logger" "7.3.1" - "@storybook/preview-api" "7.3.1" + "@storybook/client-logger" "7.3.2" + "@storybook/preview-api" "7.3.2" "@storybook/core-common@6.5.16": version "6.5.16" @@ -6248,12 +6321,12 @@ webpack "4" "@storybook/core-common@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-7.3.1.tgz#3b51c11ac50ca86bd5d1751ff37a7607f0176a79" - integrity sha512-jALwn9T6xjVQ/GBD2UVMi0XAhJDIsSNf3ghxatRQpa5dphG4nZccF6xwnUdsQqDGr8E4lHgDDzIKP/wqQ3fi1Q== + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-7.3.2.tgz#82816a6d7a9b7d07a229d287d6a8b16aa41ec10a" + integrity sha512-W+X7JXV0UmHuUl9xSF/xzz1+P7VM8xHt7ORfp8yrtJRwLHURqHvFFQC+NUHBKno1Ydtt/Uch7QNOWUlQKmiWEw== dependencies: - "@storybook/node-logger" "7.3.1" - "@storybook/types" "7.3.1" + "@storybook/node-logger" "7.3.2" + "@storybook/types" "7.3.2" "@types/find-cache-dir" "^3.2.1" "@types/node" "^16.0.0" "@types/node-fetch" "^2.6.4" @@ -6282,10 +6355,10 @@ dependencies: core-js "^3.8.2" -"@storybook/core-events@7.3.1", "@storybook/core-events@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-7.3.1.tgz#ebc6b1fc21a50b3d293678c00199d01a01a30b8b" - integrity sha512-7Pkgwmj/9B7Z3NNSn2swnviBrg9L1VeYSFw6JJKxtQskt8QoY8LxAsPzVMlHjqRmO6sO7lHo9FgpzIFxdmFaAA== +"@storybook/core-events@7.3.2", "@storybook/core-events@^7": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-7.3.2.tgz#9d18df7ceb6901225218e538a3d1d720a2f49b46" + integrity sha512-DCrM3s+sxLKS8vl0zB+1tZEtcl5XQTOGl46XgRRV/SIBabFbsC0l5pQPswWkTUsIqdREtiT0YUHcXB1+YDyFvA== "@storybook/core-server@6.5.16": version "6.5.16" @@ -6398,19 +6471,19 @@ resolved "https://registry.yarnpkg.com/@storybook/global/-/global-5.0.0.tgz#b793d34b94f572c1d7d9e0f44fac4e0dbc9572ed" integrity sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ== -"@storybook/manager-api@7.3.1", "@storybook/manager-api@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/manager-api/-/manager-api-7.3.1.tgz#a755295c22322288897f3d4ee54336b93de8c281" - integrity sha512-jFH0EfWasdwHW8X5DUzTbH5mpdCZBHU7lIEUj6lVMBcBxbTniqBiG7mkwbW9VLocqEbBZimLCb/2RtTpK1Ue3Q== +"@storybook/manager-api@7.3.2", "@storybook/manager-api@^7": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/manager-api/-/manager-api-7.3.2.tgz#8228ce35cfc0f304e3a1c51bec3d3e0d01427a1a" + integrity sha512-EEosLcc+CPLjorLf2+rGLBW0sH0SHVcB1yClLIzKM5Wt8Cl/0l19wNtGMooE/28SDLA4DPIl4WDnP83wRE1hsg== dependencies: - "@storybook/channels" "7.3.1" - "@storybook/client-logger" "7.3.1" - "@storybook/core-events" "7.3.1" + "@storybook/channels" "7.3.2" + "@storybook/client-logger" "7.3.2" + "@storybook/core-events" "7.3.2" "@storybook/csf" "^0.1.0" "@storybook/global" "^5.0.0" - "@storybook/router" "7.3.1" - "@storybook/theming" "7.3.1" - "@storybook/types" "7.3.1" + "@storybook/router" "7.3.2" + "@storybook/theming" "7.3.2" + "@storybook/types" "7.3.2" dequal "^2.0.2" lodash "^4.17.21" memoizerific "^1.11.3" @@ -6488,10 +6561,10 @@ npmlog "^5.0.1" pretty-hrtime "^1.0.3" -"@storybook/node-logger@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-7.3.1.tgz#4e56c3ec43cb874c1d665f5c28ecc509e7292b04" - integrity sha512-UVjXJ3nRsGI+yyVFCDKFCjkzrQsUSAMORSlo5vOqypO3PjSahGQBgKjlKnZGXwvdGKB2FW56PbKnb/sPBI/kPg== +"@storybook/node-logger@7.3.2": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-7.3.2.tgz#c8fea7b87d63c7b50757646af990d7cf13f7c71e" + integrity sha512-XCCYiLa5mQ7KeDQcZ4awlyWDmtxJHLIJeedvXx29JUNztUjgwyon9rlNvxtxtGj6171zgn9MERFh920WyJOOOQ== "@storybook/postinstall@6.5.16": version "6.5.16" @@ -6500,17 +6573,17 @@ dependencies: core-js "^3.8.2" -"@storybook/preview-api@7.3.1", "@storybook/preview-api@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/preview-api/-/preview-api-7.3.1.tgz#0a976397310478597551e056ca5e508657329b3c" - integrity sha512-otFvUJBFxhg11O5XLiyqddTS1ge/tjIs4gA4Uli6M+a6PV+SdNuTE8OjpvvgjsFTFdhyciHKTimKSLAqvopcuw== +"@storybook/preview-api@7.3.2", "@storybook/preview-api@^7": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/preview-api/-/preview-api-7.3.2.tgz#75701e7d27cb804c2e30403ce9d001ea8cb2022a" + integrity sha512-exQrWQQLwf/nXB6OEuQScygN5iO914iNQAvicaJ7mrX9L1ypIq1PpXgJR3mSezBd9dhOMBP/BMy1Zck/wBEL9A== dependencies: - "@storybook/channels" "7.3.1" - "@storybook/client-logger" "7.3.1" - "@storybook/core-events" "7.3.1" + "@storybook/channels" "7.3.2" + "@storybook/client-logger" "7.3.2" + "@storybook/core-events" "7.3.2" "@storybook/csf" "^0.1.0" "@storybook/global" "^5.0.0" - "@storybook/types" "7.3.1" + "@storybook/types" "7.3.2" "@types/qs" "^6.9.5" dequal "^2.0.2" lodash "^4.17.21" @@ -6543,12 +6616,12 @@ util-deprecate "^1.0.2" "@storybook/preview-web@^7": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/preview-web/-/preview-web-7.3.1.tgz#596a9f9067952cd9251e97af69100e1a2b607d18" - integrity sha512-rm/c4qbg2EX8MLQkqtmuLM03IPY0QhO/a7VYSammasJJORlR3StPw7nnA5w4uQQHBEOg3K5nMFAL0LczueM8+w== + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/preview-web/-/preview-web-7.3.2.tgz#b0f907a885857b6b896f3b77e8d80ee234a14aaf" + integrity sha512-Hg8h5ulZvxQSysX9lhOOlvQohr7rzt+kVs53W7qf9cg4jvGFufXOx+uYxoQCx1g77iwBMIu+najvmMaV+CcOaA== dependencies: - "@storybook/client-logger" "7.3.1" - "@storybook/preview-api" "7.3.1" + "@storybook/client-logger" "7.3.2" + "@storybook/preview-api" "7.3.2" "@storybook/react-docgen-typescript-plugin@1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0": version "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" @@ -6645,12 +6718,12 @@ qs "^6.10.0" regenerator-runtime "^0.13.7" -"@storybook/router@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/router/-/router-7.3.1.tgz#15637309e41c3a5c2da615f947c1bf339b4f3e49" - integrity sha512-KY+Mo0oF2xcRUDCXPJjAB5xy7d8Hi2dh8VqLahGa14ZHwhsZ/RxqE2bypwLXXkRpEiyOpfMbSsG73+1ml3fIUg== +"@storybook/router@7.3.2": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-7.3.2.tgz#6f59996c67bd22c57947cf58337979e0730e1e5e" + integrity sha512-J3QPudwCJhdnfqPx9GaNDlnsjJ6JbFta/ypp3EkHntyuuaNBeNP3Aq73DJJY2XMTS2Xdw8tD9Y9Y9gCFHJXMDQ== dependencies: - "@storybook/client-logger" "7.3.1" + "@storybook/client-logger" "7.3.2" memoizerific "^1.11.3" qs "^6.10.0" @@ -6727,22 +6800,22 @@ memoizerific "^1.11.3" regenerator-runtime "^0.13.7" -"@storybook/theming@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-7.3.1.tgz#bc4361545a026986b771c93cafea8b6d84fce9b6" - integrity sha512-1CF6bT8o8pZcd/ptl1q4CiTGY4oLV19tE8Wnhd/TO934fdMp4fUx1FF4pFL6an98lxVeZT0JQ4uvkuaTvHJFRQ== +"@storybook/theming@7.3.2": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-7.3.2.tgz#6742697322de78831e5e67567368f82b5969a83d" + integrity sha512-npVsnmNAtqGwl1K7vLC/hcVhL8tBC8G0vdZXEcufF0jHdQmRCUs9ZVrnR6W0LCrtmIHDaDoO7PqJVSzu2wgVxw== dependencies: "@emotion/use-insertion-effect-with-fallbacks" "^1.0.0" - "@storybook/client-logger" "7.3.1" + "@storybook/client-logger" "7.3.2" "@storybook/global" "^5.0.0" memoizerific "^1.11.3" -"@storybook/types@7.3.1": - version "7.3.1" - resolved "https://registry.yarnpkg.com/@storybook/types/-/types-7.3.1.tgz#51548d0b6e12969c06de2712b48d153c7c499d1c" - integrity sha512-QR714i/Stus/RYqJ8chTCfWNt3RY6/64xRXxaMLqkx75OIq5+rtsmes9I5iUqM4FuupvE7YdlZ5xKvxLYLYgJQ== +"@storybook/types@7.3.2": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/types/-/types-7.3.2.tgz#81ca5cf87dcaeb06d99e17e91d7852677a0676b9" + integrity sha512-1UHC1r2J6H9dEpj4pp9a16P1rTL87V9Yc6TtYBpp7m+cxzyIZBRvu1wZFKmRB51RXE/uDaxGRKzfNRfgTALcIQ== dependencies: - "@storybook/channels" "7.3.1" + "@storybook/channels" "7.3.2" "@types/babel__core" "^7.0.0" "@types/express" "^4.7.0" file-system-cache "2.3.0" @@ -6782,10 +6855,11 @@ tslib "^2.4.0" "@swc/helpers@^0.4.14": - version "0.4.14" - resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.14.tgz#1352ac6d95e3617ccb7c1498ff019654f1e12a74" - integrity sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw== + version "0.4.36" + resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.36.tgz#fcfff76ed52c214f357e8e9d3f37b568908072d9" + integrity sha512-5lxnyLEYFskErRPenYItLRSge5DjrJngYKdVjRSrWfza9G6KkgHEXi0vUZiyUeMU5JfXH1YnvXZzSp8ul88o2Q== dependencies: + legacy-swc-helpers "npm:@swc/helpers@=0.4.14" tslib "^2.4.0" "@szmarczak/http-timer@^5.0.1": @@ -6795,6 +6869,11 @@ dependencies: defer-to-connect "^2.0.1" +"@tootallnate/once@2": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" + integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== + "@trysound/sax@0.2.0": version "0.2.0" resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" @@ -6910,9 +6989,9 @@ integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== "@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.33": - version "4.17.35" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz#c95dd4424f0d32e525d23812aa8ab8e4d3906c4f" - integrity sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg== + version "4.17.36" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.36.tgz#baa9022119bdc05a4adfe740ffc97b5f9360e545" + integrity sha512-zbivROJ0ZqLAtMzgzIUC4oNqDG9iF0lSsAqpOD9kbs5xcIM3dTiyuHvBc7R8MtWBp3AAWGaovJa+wzWPjLYW7Q== dependencies: "@types/node" "*" "@types/qs" "*" @@ -7030,6 +7109,15 @@ dependencies: "@types/istanbul-lib-report" "*" +"@types/jsdom@^20.0.0": + version "20.0.1" + resolved "https://registry.yarnpkg.com/@types/jsdom/-/jsdom-20.0.1.tgz#07c14bc19bd2f918c1929541cdaacae894744808" + integrity sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ== + dependencies: + "@types/node" "*" + "@types/tough-cookie" "*" + parse5 "^7.0.0" + "@types/json-schema@*", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.12" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb" @@ -7088,9 +7176,9 @@ form-data "^3.0.0" "@types/node@*": - version "20.5.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.5.0.tgz#7fc8636d5f1aaa3b21e6245e97d56b7f56702313" - integrity sha512-Mgq7eCtoTjT89FqNoTzzXg2XvCi5VMhRV6+I2aYanc6kQCBImeNaAYRs/DyoVqk1YEUJK5gN9VO7HRIdz4Wo3Q== + version "20.5.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.5.6.tgz#5e9aaa86be03a09decafd61b128d6cec64a5fe40" + integrity sha512-Gi5wRGPbbyOTX+4Y2iULQ27oUPrefaB0PxGQJnfyWN3kvEDGM3mIB5M/gQLmitZf7A9FmLeaqxD3L1CXpm3VKQ== "@types/node@16.11.11": version "16.11.11" @@ -7108,9 +7196,9 @@ integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== "@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0", "@types/node@^16.0.0": - version "16.18.40" - resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.40.tgz#968d64746d20cac747a18ca982c0f1fe518c031c" - integrity sha512-+yno3ItTEwGxXiS/75Q/aHaa5srkpnJaH+kdkTVJ3DtJEwv92itpKbxU+FjPoh2m/5G9zmUQfrL4A4C13c+iGA== + version "16.18.46" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.46.tgz#9f2102d0ba74a318fcbe170cbff5463f119eab59" + integrity sha512-Mnq3O9Xz52exs3mlxMcQuA7/9VFe/dXcrgAyfjLkABIqxXKOgBRjyazTxUbjsxDa4BP7hhPliyjVTP9RDP14xg== "@types/normalize-package-data@^2.4.0": version "2.4.1" @@ -7186,10 +7274,10 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@>=16.0.0", "@types/react@^18.0.22", "@types/react@^18.0.26": - version "18.2.20" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.20.tgz#1605557a83df5c8a2cc4eeb743b3dfc0eb6aaeb2" - integrity sha512-WKNtmsLWJM/3D5mG4U84cysVY31ivmyw85dE84fOCk5Hx78wezB/XEjVPWl2JTZ5FkEeaTJf+VgUAUn3PE7Isw== +"@types/react@*", "@types/react@>=16.0.0", "@types/react@^18.0.22", "@types/react@^18.0.27": + version "18.2.21" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.21.tgz#774c37fd01b522d0b91aed04811b58e4e0514ed9" + integrity sha512-neFKG/sBAwGxHgXiIxnbm3/AAVQ/cMRS93hvBpg8xYRbeQSPVABp9U2bRnPf0iI4+Ucdv3plSxKK+3CW2ENJxA== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -7203,19 +7291,10 @@ "@types/prop-types" "*" csstype "^3.0.2" -"@types/react@18.2.19": - version "18.2.19" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.19.tgz#f77cb2c8307368e624d464a25b9675fa35f95a8b" - integrity sha512-e2S8wmY1ePfM517PqCG80CcE48Xs5k0pwJzuDZsfE8IZRRBfOMCF+XqnFxu6mWtyivum1MQm4aco+WIt6Coimw== - dependencies: - "@types/prop-types" "*" - "@types/scheduler" "*" - csstype "^3.0.2" - "@types/react@^17": - version "17.0.64" - resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.64.tgz#468162c66c33ddb4548eb1a0e36682028d9e9a62" - integrity sha512-IlgbX/vglDTwrCRgad6fTCzOT+D/5C0xwuvrzfuqfhg9gJrkFqAGADpUFlEtqbrP1IEo9QLSbo41MaFfoIu9Aw== + version "17.0.65" + resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.65.tgz#95f6a2ab61145ffb69129d07982d047f9e0870cd" + integrity sha512-oxur785xZYHvnI7TRS61dXbkIhDPnGfsXKv0cNXR/0ml4SipRIFpSMzA7HMEfOywFwJ5AOnPrXYTEiTRUQeGlQ== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -7310,6 +7389,11 @@ resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.8.tgz#b94a4391c85666c7b73299fd3ad79d4faa435310" integrity sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ== +"@types/tough-cookie@*": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" + integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw== + "@types/uglify-js@*": version "3.17.1" resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.17.1.tgz#e0ffcef756476410e5bce2cb01384ed878a195b5" @@ -7514,68 +7598,6 @@ "@typescript-eslint/types" "5.62.0" eslint-visitor-keys "^3.3.0" -"@universa11y/overlay@*", "@universa11y/overlay@latest": - version "0.1.11" - resolved "https://registry.yarnpkg.com/@universa11y/overlay/-/overlay-0.1.11.tgz#853c66d4c98cd94d86cfee9b8a67170215b46923" - integrity sha512-hShx+J9smi7zWybkk3G1UVhz41gLLciK7hEiPdsnv6zHW0ZFF9gmyctLmTB12zC01irNfewc7xUiVNou36FBiw== - dependencies: - "@react-native-aria/focus" "^0.2.7" - "@react-native-aria/overlays" "^0.3.3" - react-native-svg "13.4.0" - -"@universa11y/provider@^0.1.7": - version "0.1.8" - resolved "https://registry.yarnpkg.com/@universa11y/provider/-/provider-0.1.8.tgz#e56764225d2d3247ffb88adee4d67e8852ed4e21" - integrity sha512-jZnsuscl3gt9b2ff7/TT5p75SlfeKqRunHX9IImJCL3pccMd/Tx1o+EyAXnS0v4+nySn9syKNHpqmT798noK6g== - dependencies: - "@react-native-aria/focus" "^0.2.7" - "@universa11y/overlay" "*" - "@universa11y/react-native-aria" "*" - "@universa11y/toast" "*" - "@universa11y/transitions" "^0.1.5" - "@universa11y/utils" "*" - react-native-svg "13.4.0" - -"@universa11y/react-native-aria@*", "@universa11y/react-native-aria@latest": - version "0.1.11" - resolved "https://registry.yarnpkg.com/@universa11y/react-native-aria/-/react-native-aria-0.1.11.tgz#78cbfe6e1806a97b2cb8ba5f66b7bd75411f0df1" - integrity sha512-2Rf94Q5Ffuo6u5lgL/RAGruwC680bgdWgie86jzK5e/65uQYtU58XQfwpDTiJpJK6vly3WxeQD1gUyvEVrQvcw== - dependencies: - "@react-native-aria/focus" "^0.2.7" - react-native-svg "13.4.0" - -"@universa11y/toast@*": - version "0.1.20" - resolved "https://registry.yarnpkg.com/@universa11y/toast/-/toast-0.1.20.tgz#237aedf2d18cfb25096cb09c64ace571e688fb93" - integrity sha512-S7BMeaIk7r6diLT/wK756DnPCSe5X/Pl5Gax7SA1Q3wAczXWBZHLhFMieMCYVVIOf8rWqzafzY23GSwsdsGbkw== - dependencies: - "@gluestack-ui/hooks" latest - "@gluestack-ui/overlay" latest - "@gluestack-ui/react-native-aria" latest - "@gluestack-ui/transitions" latest - "@gluestack-ui/utils" latest - "@react-native-aria/focus" "^0.2.7" - react-native-svg "13.4.0" - -"@universa11y/transitions@^0.1.5": - version "0.1.11" - resolved "https://registry.yarnpkg.com/@universa11y/transitions/-/transitions-0.1.11.tgz#915296f17e187a41a47613428b6239c0898e31de" - integrity sha512-Tx3+eM6Xo5Y0xq5Dn9xxjHT3tfJV3nynY3BJ9rmEtof517UvwVFwXJzyUqcJqvKU5o1Fy+UpjbPvfZdVO1AYMw== - dependencies: - "@react-native-aria/focus" "^0.2.7" - "@universa11y/overlay" latest - "@universa11y/react-native-aria" latest - "@universa11y/utils" latest - react-native-svg "13.4.0" - -"@universa11y/utils@*", "@universa11y/utils@latest": - version "0.1.11" - resolved "https://registry.yarnpkg.com/@universa11y/utils/-/utils-0.1.11.tgz#69f522d8fe4ce225251fc9d8239e672b87739a9a" - integrity sha512-9mEr+CYypq9AezBjQJM37x8y9778n+81l0ZN/8AK7/lkDJI9LpB87NKYofKrqnMXUoK5wUQ1V/nX5bDUxNcy+g== - dependencies: - "@react-native-aria/focus" "^0.2.7" - react-native-svg "13.4.0" - "@urql/core@2.3.6": version "2.3.6" resolved "https://registry.yarnpkg.com/@urql/core/-/core-2.3.6.tgz#ee0a6f8fde02251e9560c5f17dce5cd90f948552" @@ -7894,7 +7916,7 @@ JSONStream@^1.3.5: jsonparse "^1.2.0" through ">=2.2.7 <3" -abab@^2.0.5: +abab@^2.0.5, abab@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== @@ -7919,6 +7941,14 @@ accepts@^1.3.7, accepts@^1.3.8, accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7, mime-types "~2.1.34" negotiator "0.6.3" +acorn-globals@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-7.0.1.tgz#0dbf05c44fa7c94332914c02066d5beff62c40c3" + integrity sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q== + dependencies: + acorn "^8.1.0" + acorn-walk "^8.0.2" + acorn-import-assertions@^1.9.0: version "1.9.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" @@ -7934,7 +7964,7 @@ acorn-walk@^7.2.0: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -acorn-walk@^8.1.1, acorn-walk@^8.2.0: +acorn-walk@^8.0.2, acorn-walk@^8.1.1, acorn-walk@^8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== @@ -7949,7 +7979,7 @@ acorn@^7.4.0, acorn@^7.4.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.4.1, acorn@^8.7.0, acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: +acorn@^8.1.0, acorn@^8.4.1, acorn@^8.7.0, acorn@^8.7.1, acorn@^8.8.1, acorn@^8.8.2, acorn@^8.9.0: version "8.10.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== @@ -8515,7 +8545,7 @@ async@^2.6.4: dependencies: lodash "^4.17.14" -async@^3.2.2, async@^3.2.3: +async@^3.2.2: version "3.2.4" resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== @@ -8586,15 +8616,15 @@ babel-core@^7.0.0-bridge.0: resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== -babel-jest@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.6.2.tgz#cada0a59e07f5acaeb11cbae7e3ba92aec9c1126" - integrity sha512-BYCzImLos6J3BH/+HvUCHG1dTf2MzmAB4jaVxHV+29RZLjR29XuYTmsf2sdDwkrb+FczkGo3kOhE7ga6sI0P4A== +babel-jest@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.6.4.tgz#98dbc45d1c93319c82a8ab4a478b670655dd2585" + integrity sha512-meLj23UlSLddj6PC+YTOFRgDAtjnZom8w/ACsrx0gtPtv5cJZk0A5Unk5bV4wixD7XaPCN1fQvpww8czkZURmw== dependencies: - "@jest/transform" "^29.6.2" + "@jest/transform" "^29.6.4" "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.1.1" - babel-preset-jest "^29.5.0" + babel-preset-jest "^29.6.3" chalk "^4.0.0" graceful-fs "^4.2.9" slash "^3.0.0" @@ -8669,10 +8699,10 @@ babel-plugin-istanbul@^6.0.0, babel-plugin-istanbul@^6.1.1: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz#a97db437936f441ec196990c9738d4b88538618a" - integrity sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w== +babel-plugin-jest-hoist@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz#aadbe943464182a8922c3c927c3067ff40d24626" + integrity sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" @@ -8844,9 +8874,9 @@ babel-preset-expo@8: metro-react-native-babel-preset "~0.64.0" babel-preset-expo@^9.2.0: - version "9.5.1" - resolved "https://registry.yarnpkg.com/babel-preset-expo/-/babel-preset-expo-9.5.1.tgz#5ceab896ac5ac29f32dfaf5a653e93965bbc0de1" - integrity sha512-dOLhi5C1hNOAMFYjRlsP1axswMSf9MxX7zsez9kmwrm46cyev2l2ThQ8VdDig/YdwhNScd7sQ/lovrOTObk4Hg== + version "9.5.2" + resolved "https://registry.yarnpkg.com/babel-preset-expo/-/babel-preset-expo-9.5.2.tgz#5ed1756c8434ca972d7a940e4f13570a283641df" + integrity sha512-hU1G1TDiikuXV6UDZjPnX+WdbjbtidDiYhftMEVrZQSst45pDPVBWbM41TUKrpJMwv4FypsLzK+378gnMPRVWQ== dependencies: "@babel/plugin-proposal-decorators" "^7.12.9" "@babel/plugin-proposal-export-namespace-from" "^7.18.9" @@ -8855,7 +8885,7 @@ babel-preset-expo@^9.2.0: "@babel/preset-env" "^7.20.0" babel-plugin-module-resolver "^5.0.0" babel-plugin-react-native-web "~0.18.10" - metro-react-native-babel-preset "0.76.7" + metro-react-native-babel-preset "0.76.8" babel-preset-expo@~9.2.2: version "9.2.2" @@ -8916,12 +8946,12 @@ babel-preset-fbjs@^3.4.0: "@babel/plugin-transform-template-literals" "^7.0.0" babel-plugin-syntax-trailing-function-commas "^7.0.0-beta.0" -babel-preset-jest@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz#57bc8cc88097af7ff6a5ab59d1cd29d52a5916e2" - integrity sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg== +babel-preset-jest@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz#fa05fa510e7d493896d7b0dd2033601c840f171c" + integrity sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA== dependencies: - babel-plugin-jest-hoist "^29.5.0" + babel-plugin-jest-hoist "^29.6.3" babel-preset-current-node-syntax "^1.0.0" babel-preset-next@^1.4.0: @@ -9323,7 +9353,7 @@ browserslist@4.16.6: escalade "^3.1.1" node-releases "^1.1.71" -browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.20.4, browserslist@^4.21.4, browserslist@^4.21.9: +browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.20.4, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.21.9: version "4.21.10" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0" integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ== @@ -9333,6 +9363,13 @@ browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4 node-releases "^2.0.13" update-browserslist-db "^1.0.11" +bs-logger@0.x: + version "0.2.6" + resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + bser@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" @@ -9644,9 +9681,9 @@ caniuse-api@^3.0.0: lodash.uniq "^4.5.0" caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001202, caniuse-lite@^1.0.30001219, caniuse-lite@^1.0.30001228, caniuse-lite@^1.0.30001406, caniuse-lite@^1.0.30001517: - version "1.0.30001521" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001521.tgz#e9930cf499f7c1e80334b6c1fbca52e00d889e56" - integrity sha512-fnx1grfpEOvDGH+V17eccmNjucGUnCbP6KL+l5KqBIerp26WK/+RQ7CIDE37KGJjaPyqWXXlFUyKiWmvdNNKmQ== + version "1.0.30001523" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001523.tgz#b838f70b1a98c556776b998fafb47d2b64146d4f" + integrity sha512-I5q5cisATTPZ1mc588Z//pj/Ox80ERYDfR71YnvY7raS/NOk8xXlZcB0sF7JdqaV//kOaa6aus7lRfpdnt1eBA== capture-exit@^2.0.0: version "2.0.0" @@ -9692,7 +9729,7 @@ chalk@5.3.0, chalk@^5.0.0, chalk@^5.0.1, chalk@^5.2.0: resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385" integrity sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w== -chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2: +chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -9929,11 +9966,6 @@ client-only@0.0.1: resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1" integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA== -client-only@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1" - integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA== - cliui@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" @@ -10401,21 +10433,21 @@ copy-webpack-plugin@~6.0.3: webpack-sources "^1.4.3" core-js-compat@^3.31.0, core-js-compat@^3.8.1: - version "3.32.0" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.32.0.tgz#f41574b6893ab15ddb0ac1693681bd56c8550a90" - integrity sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw== + version "3.32.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.32.1.tgz#55f9a7d297c0761a8eb1d31b593e0f5b6ffae964" + integrity sha512-GSvKDv4wE0bPnQtjklV101juQ85g6H3rm5PDP20mqlS5j0kXF3pP97YvAu5hl+uFHqMictp3b2VxOHljWMAtuA== dependencies: - browserslist "^4.21.9" + browserslist "^4.21.10" core-js-pure@^3.23.3: - version "3.32.0" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.32.0.tgz#5d79f85da7a4373e9a06494ccbef995a4c639f8b" - integrity sha512-qsev1H+dTNYpDUEURRuOXMvpdtAnNEvQWS/FMJ2Vb5AY8ZP4rAPQldkE27joykZPJTe0+IVgHZYh1P5Xu1/i1g== + version "3.32.1" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.32.1.tgz#5775b88f9062885f67b6d7edce59984e89d276f3" + integrity sha512-f52QZwkFVDPf7UEQZGHKx6NYxsxmVGJe5DIvbzOdRMJlmT6yv0KDjR8rmy3ngr/t5wU54c7Sp/qIJH0ppbhVpQ== core-js@^3.0.1, core-js@^3.0.4, core-js@^3.6.5, core-js@^3.8.2: - version "3.32.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.32.0.tgz#7643d353d899747ab1f8b03d2803b0312a0fb3b6" - integrity sha512-rd4rYZNlF3WuoYuRIDEmbR/ga9CeuWX9U05umAvgrrZoHY4Z++cp/xwPQMvUpBB4Ag6J8KfD80G0zwCyaSxDww== + version "3.32.1" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.32.1.tgz#a7d8736a3ed9dd05940c3c4ff32c591bb735be77" + integrity sha512-lqufgNn9NLnESg5mQeYsxQP5w7wrViSj0jr/kv6ECQiByzQkrn1MKvV0L3acttpDqfQrHLwr2KCMgX5b8X+lyQ== core-util-is@~1.0.0: version "1.0.3" @@ -10918,6 +10950,23 @@ csso@^4.0.2, csso@^4.2.0: dependencies: css-tree "^1.1.2" +cssom@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz#d254fa92cd8b6fbd83811b9fbaed34663cc17c36" + integrity sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw== + +cssom@~0.3.6: + version "0.3.8" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== + +cssstyle@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== + dependencies: + cssom "~0.3.6" + csstype@^3.0.2: version "3.1.2" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" @@ -11010,6 +11059,15 @@ data-uri-to-buffer@^5.0.1: resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-5.0.1.tgz#db89a9e279c2ffe74f50637a59a32fb23b3e4d7c" integrity sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg== +data-urls@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.2.tgz#9cf24a477ae22bcef5cd5f6f0bfbc1d2d3be9143" + integrity sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ== + dependencies: + abab "^2.0.6" + whatwg-mimetype "^3.0.0" + whatwg-url "^11.0.0" + dayjs@^1.8.15: version "1.11.9" resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.9.tgz#9ca491933fadd0a60a2c19f6c237c03517d71d1a" @@ -11049,6 +11107,11 @@ decamelize@^1.1.0, decamelize@^1.1.2, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== +decimal.js@^10.4.2: + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== + decode-uri-component@^0.2.0, decode-uri-component@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" @@ -11336,10 +11399,10 @@ detect-port@^1.3.0: address "^1.0.1" debug "4" -diff-sequences@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.4.3.tgz#9314bc1fabe09267ffeca9cbafc457d8499a13f2" - integrity sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA== +diff-sequences@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" + integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== diff@^4.0.1: version "4.0.2" @@ -11383,9 +11446,9 @@ dns-packet@^1.3.1: safe-buffer "^5.0.1" dns-packet@^5.2.2: - version "5.6.0" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-5.6.0.tgz#2202c947845c7a63c23ece58f2f70ff6ab4c2f7d" - integrity sha512-rza3UH1LwdHh9qyPXp8lkwpjSNk/AMD3dPytUoRoqnypDUhY0xvbdmVhWOfxO68frEfV9BU8V12Ez7ZsHGZpCQ== + version "5.6.1" + resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-5.6.1.tgz#ae888ad425a9d1478a0674256ab866de1012cf2f" + integrity sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw== dependencies: "@leichtgewicht/ip-codec" "^2.0.1" @@ -11476,6 +11539,13 @@ domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== +domexception@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-4.0.0.tgz#4ad1be56ccadc86fc76d033353999a8037d03673" + integrity sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw== + dependencies: + webidl-conversions "^7.0.0" + domhandler@^3.0.0: version "3.3.0" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a" @@ -11590,17 +11660,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -ejs@^3.1.8: - version "3.1.9" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.9.tgz#03c9e8777fe12686a9effcef22303ca3d8eeb361" - integrity sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ== - dependencies: - jake "^10.8.5" - electron-to-chromium@^1.3.564, electron-to-chromium@^1.3.723, electron-to-chromium@^1.4.477: - version "1.4.492" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.492.tgz#83fed8beb64ec60578069e15dddd17b13a77ca56" - integrity sha512-36K9b/6skMVwAIEsC7GiQ8I8N3soCALVSHqWHzNDtGemAcI9Xu8hP02cywWM0A794rTHm0b0zHPeLJHtgFVamQ== + version "1.4.502" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.502.tgz#531cda8774813d97d6cfa2fb9d8ee3e2c75851fa" + integrity sha512-xqeGw3Gr6o3uyHy/yKjdnDQHY2RQvXcGC2cfHjccK1IGkH6cX1WQBN8EeC/YpwPhGkBaikDTecJ8+ssxSVRQlw== elliptic@^6.5.3: version "6.5.4" @@ -11703,7 +11766,7 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== -entities@^4.2.0: +entities@^4.2.0, entities@^4.4.0: version "4.5.0" resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== @@ -11818,15 +11881,19 @@ es-get-iterator@^1.0.2: stop-iteration-iterator "^1.0.0" es-iterator-helpers@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.0.12.tgz#272f7270f270f4d63dd8aa718228ffa901fd086e" - integrity sha512-T6Ldv67RYULYtZ1k1omngDTVQSTVNX/ZSjDiwlw0PMokhy8kq2LFElleaEjpvlSaXh9ugJ4zrBgbQ7L+Bjdm3Q== + version "1.0.13" + resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.0.13.tgz#72101046ffc19baf9996adc70e6177a26e6e8084" + integrity sha512-LK3VGwzvaPWobO8xzXXGRUOGw8Dcjyfk62CsY/wfHN75CwsJPbuypOYJxK6g5RyEL8YDjIWcl6jgd8foO6mmrA== dependencies: asynciterator.prototype "^1.0.0" + call-bind "^1.0.2" + define-properties "^1.2.0" es-abstract "^1.21.3" es-set-tostringtag "^2.0.1" function-bind "^1.1.1" + get-intrinsic "^1.2.1" globalthis "^1.0.3" + has-property-descriptors "^1.0.0" has-proto "^1.0.1" has-symbols "^1.0.3" internal-slot "^1.0.5" @@ -12035,9 +12102,9 @@ eslint-plugin-ft-flow@^2.0.1, eslint-plugin-ft-flow@^2.0.3: string-natural-compare "^3.0.1" eslint-plugin-import@^2.22.1: - version "2.28.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz#8d66d6925117b06c4018d491ae84469eb3cb1005" - integrity sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q== + version "2.28.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz#63b8b5b3c409bfc75ebaf8fb206b07ab435482c4" + integrity sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A== dependencies: array-includes "^3.1.6" array.prototype.findlastindex "^1.2.2" @@ -12048,13 +12115,12 @@ eslint-plugin-import@^2.22.1: eslint-import-resolver-node "^0.3.7" eslint-module-utils "^2.8.0" has "^1.0.3" - is-core-module "^2.12.1" + is-core-module "^2.13.0" is-glob "^4.0.3" minimatch "^3.1.2" object.fromentries "^2.0.6" object.groupby "^1.0.0" object.values "^1.1.6" - resolve "^1.22.3" semver "^6.3.1" tsconfig-paths "^3.14.2" @@ -12469,17 +12535,16 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" -expect@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/expect/-/expect-29.6.2.tgz#7b08e83eba18ddc4a2cf62b5f2d1918f5cd84521" - integrity sha512-iAErsLxJ8C+S02QbLAwgSGSezLQK+XXRDt8IuFXFpwCNw2ECmzZSmjKcCaFVp5VRMk+WAvz6h6jokzEzBFZEuA== +expect@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/expect/-/expect-29.6.4.tgz#a6e6f66d4613717859b2fe3da98a739437b6f4b8" + integrity sha512-F2W2UyQ8XYyftHT57dtfg8Ue3X5qLgm2sSug0ivvLRH/VKNRL/pDxg/TH7zVzbQB0tu80clNFy6LU7OS/VSEKA== dependencies: - "@jest/expect-utils" "^29.6.2" - "@types/node" "*" - jest-get-type "^29.4.3" - jest-matcher-utils "^29.6.2" - jest-message-util "^29.6.2" - jest-util "^29.6.2" + "@jest/expect-utils" "^29.6.4" + jest-get-type "^29.6.3" + jest-matcher-utils "^29.6.4" + jest-message-util "^29.6.3" + jest-util "^29.6.3" expo-app-loading@^2.1.1: version "2.1.1" @@ -12704,9 +12769,9 @@ expo-modules-core@1.2.7: invariant "^2.2.4" expo-modules-core@^1.0.3: - version "1.5.9" - resolved "https://registry.yarnpkg.com/expo-modules-core/-/expo-modules-core-1.5.9.tgz#d8bc397860cabb23f735f5baac3602bd73231671" - integrity sha512-kQxllZfus7wM0O6X0Ud+SOnbH/kbxtEAQp2gkvDq3P3kqhtafue/H9CPDX04uWc/pypvp9vp/sZ+qvA0alaVuQ== + version "1.5.10" + resolved "https://registry.yarnpkg.com/expo-modules-core/-/expo-modules-core-1.5.10.tgz#b829ef0c65208870555d604d4602bfe84d0e8bb7" + integrity sha512-+m+poHkhjAhRZmngSLUpJJoxhjoExYKSr4J5luy4N+YMlowK31Zewztg4xsPrNRoPvGK/B5uCm0UEzIQvLsNGg== dependencies: compare-versions "^3.4.0" invariant "^2.2.4" @@ -12965,7 +13030,7 @@ fast-json-parse@^1.0.3: resolved "https://registry.yarnpkg.com/fast-json-parse/-/fast-json-parse-1.0.3.tgz#43e5c61ee4efa9265633046b770fb682a7577c4d" integrity sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw== -fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== @@ -13115,13 +13180,6 @@ file-uri-to-path@1.0.0: resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== -filelist@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" - integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== - dependencies: - minimatch "^5.0.1" - filesize@6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.1.0.tgz#e81bdaa780e2451d714d71c0d7a4f3238d37ad00" @@ -13299,9 +13357,9 @@ flatted@^3.1.0: integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== flow-parser@0.*: - version "0.214.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.214.0.tgz#455efc841ec015c62f6dec022cf6c61480f231a2" - integrity sha512-RW1Dh6BuT14DA7+gtNRKzgzvG3GTPdrceHCi4ddZ9VFGQ9HtO5L8wzxMGsor7XtInIrbWZZCSak0oxnBF7tApw== + version "0.215.1" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.215.1.tgz#a14007f404db46ac829bb6db3a22a7956d9e298f" + integrity sha512-qq3rdRToqwesrddyXf+Ml8Tuf7TdoJS+EMbJgC6fHAVoBCXjb4mHelNd3J+jD8ts0bSHX81FG3LN7Qn/dcl6pA== flow-parser@^0.121.0: version "0.121.0" @@ -13562,9 +13620,9 @@ fsevents@^1.2.7: nan "^2.12.1" fsevents@^2.1.2, fsevents@^2.3.2, fsevents@~2.3.1, fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== function-bind@^1.1.1: version "1.1.1" @@ -14312,6 +14370,13 @@ hsla-regex@^1.0.0: resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" integrity sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA== +html-encoding-sniffer@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz#2cb1a8cf0db52414776e5b2a7a04d5dd98158de9" + integrity sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA== + dependencies: + whatwg-encoding "^2.0.0" + html-entities@^1.3.1: version "1.4.0" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.4.0.tgz#cfbd1b01d2afaf9adca1b10ae7dffab98c71d2dc" @@ -14482,6 +14547,15 @@ http-parser-js@>=0.5.1: resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3" integrity sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q== +http-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" + integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== + dependencies: + "@tootallnate/once" "2" + agent-base "6" + debug "4" + http-proxy-agent@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz#e9096c5afd071a3fce56e6252bb321583c124673" @@ -14586,7 +14660,7 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -iconv-lite@^0.6.2, iconv-lite@^0.6.3: +iconv-lite@0.6.3, iconv-lite@^0.6.2, iconv-lite@^0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== @@ -14996,7 +15070,7 @@ is-color-stop@^1.0.0: rgb-regex "^1.0.1" rgba-regex "^1.0.0" -is-core-module@^2.12.1, is-core-module@^2.13.0, is-core-module@^2.5.0, is-core-module@^2.9.0: +is-core-module@^2.13.0, is-core-module@^2.5.0, is-core-module@^2.9.0: version "2.13.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db" integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ== @@ -15313,6 +15387,11 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-potential-custom-element-name@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== + is-regex@^1.0.4, is-regex@^1.1.2, is-regex@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" @@ -15554,7 +15633,7 @@ istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== -istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: +istanbul-lib-instrument@^5.0.4: version "5.2.1" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== @@ -15565,6 +15644,17 @@ istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: istanbul-lib-coverage "^3.2.0" semver "^6.3.0" +istanbul-lib-instrument@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.0.tgz#7a8af094cbfff1d5bb280f62ce043695ae8dd5b8" + integrity sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw== + dependencies: + "@babel/core" "^7.12.3" + "@babel/parser" "^7.14.7" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.2.0" + semver "^7.5.4" + istanbul-lib-report@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" @@ -15624,145 +15714,150 @@ jackspeak@^2.0.3: optionalDependencies: "@pkgjs/parseargs" "^0.11.0" -jake@^10.8.5: - version "10.8.7" - resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.7.tgz#63a32821177940c33f356e0ba44ff9d34e1c7d8f" - integrity sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w== - dependencies: - async "^3.2.3" - chalk "^4.0.2" - filelist "^1.0.4" - minimatch "^3.1.2" - -jest-changed-files@^29.5.0: - version "29.5.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.5.0.tgz#e88786dca8bf2aa899ec4af7644e16d9dcf9b23e" - integrity sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag== +jest-changed-files@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.6.3.tgz#97cfdc93f74fb8af2a1acb0b78f836f1fb40c449" + integrity sha512-G5wDnElqLa4/c66ma5PG9eRjE342lIbF6SUnTJi26C3J28Fv2TVY2rOyKB9YGbSA5ogwevgmxc4j4aVjrEK6Yg== dependencies: execa "^5.0.0" + jest-util "^29.6.3" p-limit "^3.1.0" -jest-circus@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.6.2.tgz#1e6ffca60151ac66cad63fce34f443f6b5bb4258" - integrity sha512-G9mN+KOYIUe2sB9kpJkO9Bk18J4dTDArNFPwoZ7WKHKel55eKIS/u2bLthxgojwlf9NLCVQfgzM/WsOVvoC6Fw== +jest-circus@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.6.4.tgz#f074c8d795e0cc0f2ebf0705086b1be6a9a8722f" + integrity sha512-YXNrRyntVUgDfZbjXWBMPslX1mQ8MrSG0oM/Y06j9EYubODIyHWP8hMUbjbZ19M3M+zamqEur7O80HODwACoJw== dependencies: - "@jest/environment" "^29.6.2" - "@jest/expect" "^29.6.2" - "@jest/test-result" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/environment" "^29.6.4" + "@jest/expect" "^29.6.4" + "@jest/test-result" "^29.6.4" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" dedent "^1.0.0" is-generator-fn "^2.0.0" - jest-each "^29.6.2" - jest-matcher-utils "^29.6.2" - jest-message-util "^29.6.2" - jest-runtime "^29.6.2" - jest-snapshot "^29.6.2" - jest-util "^29.6.2" + jest-each "^29.6.3" + jest-matcher-utils "^29.6.4" + jest-message-util "^29.6.3" + jest-runtime "^29.6.4" + jest-snapshot "^29.6.4" + jest-util "^29.6.3" p-limit "^3.1.0" - pretty-format "^29.6.2" + pretty-format "^29.6.3" pure-rand "^6.0.0" slash "^3.0.0" stack-utils "^2.0.3" -jest-cli@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.6.2.tgz#edb381763398d1a292cd1b636a98bfa5644b8fda" - integrity sha512-TT6O247v6dCEX2UGHGyflMpxhnrL0DNqP2fRTKYm3nJJpCTfXX3GCMQPGFjXDoj0i5/Blp3jriKXFgdfmbYB6Q== +jest-cli@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.6.4.tgz#ad52f2dfa1b0291de7ec7f8d7c81ac435521ede0" + integrity sha512-+uMCQ7oizMmh8ZwRfZzKIEszFY9ksjjEQnTEMTaL7fYiL3Kw4XhqT9bYh+A4DQKUb67hZn2KbtEnDuHvcgK4pQ== dependencies: - "@jest/core" "^29.6.2" - "@jest/test-result" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/core" "^29.6.4" + "@jest/test-result" "^29.6.4" + "@jest/types" "^29.6.3" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.9" import-local "^3.0.2" - jest-config "^29.6.2" - jest-util "^29.6.2" - jest-validate "^29.6.2" + jest-config "^29.6.4" + jest-util "^29.6.3" + jest-validate "^29.6.3" prompts "^2.0.1" yargs "^17.3.1" -jest-config@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.6.2.tgz#c68723f06b31ca5e63030686e604727d406cd7c3" - integrity sha512-VxwFOC8gkiJbuodG9CPtMRjBUNZEHxwfQXmIudSTzFWxaci3Qub1ddTRbFNQlD/zUeaifLndh/eDccFX4wCMQw== +jest-config@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.6.4.tgz#eff958ee41d4e1ee7a6106d02b74ad9fc427d79e" + integrity sha512-JWohr3i9m2cVpBumQFv2akMEnFEPVOh+9L2xIBJhJ0zOaci2ZXuKJj0tgMKQCBZAKA09H049IR4HVS/43Qb19A== dependencies: "@babel/core" "^7.11.6" - "@jest/test-sequencer" "^29.6.2" - "@jest/types" "^29.6.1" - babel-jest "^29.6.2" + "@jest/test-sequencer" "^29.6.4" + "@jest/types" "^29.6.3" + babel-jest "^29.6.4" chalk "^4.0.0" ci-info "^3.2.0" deepmerge "^4.2.2" glob "^7.1.3" graceful-fs "^4.2.9" - jest-circus "^29.6.2" - jest-environment-node "^29.6.2" - jest-get-type "^29.4.3" - jest-regex-util "^29.4.3" - jest-resolve "^29.6.2" - jest-runner "^29.6.2" - jest-util "^29.6.2" - jest-validate "^29.6.2" + jest-circus "^29.6.4" + jest-environment-node "^29.6.4" + jest-get-type "^29.6.3" + jest-regex-util "^29.6.3" + jest-resolve "^29.6.4" + jest-runner "^29.6.4" + jest-util "^29.6.3" + jest-validate "^29.6.3" micromatch "^4.0.4" parse-json "^5.2.0" - pretty-format "^29.6.2" + pretty-format "^29.6.3" slash "^3.0.0" strip-json-comments "^3.1.1" -jest-diff@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.6.2.tgz#c36001e5543e82a0805051d3ceac32e6825c1c46" - integrity sha512-t+ST7CB9GX5F2xKwhwCf0TAR17uNDiaPTZnVymP9lw0lssa9vG+AFyDZoeIHStU3WowFFwT+ky+er0WVl2yGhA== +jest-diff@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.6.4.tgz#85aaa6c92a79ae8cd9a54ebae8d5b6d9a513314a" + integrity sha512-9F48UxR9e4XOEZvoUXEHSWY4qC4zERJaOfrbBg9JpbJOO43R1vN76REt/aMGZoY6GD5g84nnJiBIVlscegefpw== dependencies: chalk "^4.0.0" - diff-sequences "^29.4.3" - jest-get-type "^29.4.3" - pretty-format "^29.6.2" + diff-sequences "^29.6.3" + jest-get-type "^29.6.3" + pretty-format "^29.6.3" -jest-docblock@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.4.3.tgz#90505aa89514a1c7dceeac1123df79e414636ea8" - integrity sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg== +jest-docblock@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.6.3.tgz#293dca5188846c9f7c0c2b1bb33e5b11f21645f2" + integrity sha512-2+H+GOTQBEm2+qFSQ7Ma+BvyV+waiIFxmZF5LdpBsAEjWX8QYjSCa4FrkIYtbfXUJJJnFCYrOtt6TZ+IAiTjBQ== dependencies: detect-newline "^3.0.0" -jest-each@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.6.2.tgz#c9e4b340bcbe838c73adf46b76817b15712d02ce" - integrity sha512-MsrsqA0Ia99cIpABBc3izS1ZYoYfhIy0NNWqPSE0YXbQjwchyt6B1HD2khzyPe1WiJA7hbxXy77ZoUQxn8UlSw== +jest-each@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.6.3.tgz#1956f14f5f0cb8ae0b2e7cabc10bb03ec817c142" + integrity sha512-KoXfJ42k8cqbkfshW7sSHcdfnv5agDdHCPA87ZBdmHP+zJstTJc0ttQaJ/x7zK6noAL76hOuTIJ6ZkQRS5dcyg== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" chalk "^4.0.0" - jest-get-type "^29.4.3" - jest-util "^29.6.2" - pretty-format "^29.6.2" - -jest-environment-node@^29.2.1, jest-environment-node@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.6.2.tgz#a9ea2cabff39b08eca14ccb32c8ceb924c8bb1ad" - integrity sha512-YGdFeZ3T9a+/612c5mTQIllvWkddPbYcN2v95ZH24oWMbGA4GGS2XdIF92QMhUhvrjjuQWYgUGW2zawOyH63MQ== - dependencies: - "@jest/environment" "^29.6.2" - "@jest/fake-timers" "^29.6.2" - "@jest/types" "^29.6.1" + jest-get-type "^29.6.3" + jest-util "^29.6.3" + pretty-format "^29.6.3" + +jest-environment-jsdom@^29.5.0: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-29.6.4.tgz#0daf44454041f9e1ef7fa82eb1bd43426a82eb1c" + integrity sha512-K6wfgUJ16DoMs02JYFid9lOsqfpoVtyJxpRlnTxUHzvZWBnnh2VNGRB9EC1Cro96TQdq5TtSjb3qUjNaJP9IyA== + dependencies: + "@jest/environment" "^29.6.4" + "@jest/fake-timers" "^29.6.4" + "@jest/types" "^29.6.3" + "@types/jsdom" "^20.0.0" "@types/node" "*" - jest-mock "^29.6.2" - jest-util "^29.6.2" + jest-mock "^29.6.3" + jest-util "^29.6.3" + jsdom "^20.0.0" + +jest-environment-node@^29.2.1, jest-environment-node@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.6.4.tgz#4ce311549afd815d3cafb49e60a1e4b25f06d29f" + integrity sha512-i7SbpH2dEIFGNmxGCpSc2w9cA4qVD+wfvg2ZnfQ7XVrKL0NA5uDVBIiGH8SR4F0dKEv/0qI5r+aDomDf04DpEQ== + dependencies: + "@jest/environment" "^29.6.4" + "@jest/fake-timers" "^29.6.4" + "@jest/types" "^29.6.3" + "@types/node" "*" + jest-mock "^29.6.3" + jest-util "^29.6.3" jest-get-type@^26.3.0: version "26.3.0" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== -jest-get-type@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.4.3.tgz#1ab7a5207c995161100b5187159ca82dd48b3dd5" - integrity sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg== +jest-get-type@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" + integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== jest-haste-map@^26.6.2: version "26.6.2" @@ -15785,66 +15880,66 @@ jest-haste-map@^26.6.2: optionalDependencies: fsevents "^2.1.2" -jest-haste-map@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.6.2.tgz#298c25ea5255cfad8b723179d4295cf3a50a70d1" - integrity sha512-+51XleTDAAysvU8rT6AnS1ZJ+WHVNqhj1k6nTvN2PYP+HjU3kqlaKQ1Lnw3NYW3bm2r8vq82X0Z1nDDHZMzHVA== +jest-haste-map@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.6.4.tgz#97143ce833829157ea7025204b08f9ace609b96a" + integrity sha512-12Ad+VNTDHxKf7k+M65sviyynRoZYuL1/GTuhEVb8RYsNSNln71nANRb/faSyWvx0j+gHcivChXHIoMJrGYjog== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" "@types/graceful-fs" "^4.1.3" "@types/node" "*" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.9" - jest-regex-util "^29.4.3" - jest-util "^29.6.2" - jest-worker "^29.6.2" + jest-regex-util "^29.6.3" + jest-util "^29.6.3" + jest-worker "^29.6.4" micromatch "^4.0.4" walker "^1.0.8" optionalDependencies: fsevents "^2.3.2" -jest-leak-detector@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.6.2.tgz#e2b307fee78cab091c37858a98c7e1d73cdf5b38" - integrity sha512-aNqYhfp5uYEO3tdWMb2bfWv6f0b4I0LOxVRpnRLAeque2uqOVVMLh6khnTcE2qJ5wAKop0HcreM1btoysD6bPQ== +jest-leak-detector@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.6.3.tgz#b9661bc3aec8874e59aff361fa0c6d7cd507ea01" + integrity sha512-0kfbESIHXYdhAdpLsW7xdwmYhLf1BRu4AA118/OxFm0Ho1b2RcTmO4oF6aAMaxpxdxnJ3zve2rgwzNBD4Zbm7Q== dependencies: - jest-get-type "^29.4.3" - pretty-format "^29.6.2" + jest-get-type "^29.6.3" + pretty-format "^29.6.3" -jest-matcher-utils@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.6.2.tgz#39de0be2baca7a64eacb27291f0bd834fea3a535" - integrity sha512-4LiAk3hSSobtomeIAzFTe+N8kL6z0JtF3n6I4fg29iIW7tt99R7ZcIFW34QkX+DuVrf+CUe6wuVOpm7ZKFJzZQ== +jest-matcher-utils@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.6.4.tgz#327db7ababea49455df3b23e5d6109fe0c709d24" + integrity sha512-KSzwyzGvK4HcfnserYqJHYi7sZVqdREJ9DMPAKVbS98JsIAvumihaNUbjrWw0St7p9IY7A9UskCW5MYlGmBQFQ== dependencies: chalk "^4.0.0" - jest-diff "^29.6.2" - jest-get-type "^29.4.3" - pretty-format "^29.6.2" + jest-diff "^29.6.4" + jest-get-type "^29.6.3" + pretty-format "^29.6.3" -jest-message-util@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.6.2.tgz#af7adc2209c552f3f5ae31e77cf0a261f23dc2bb" - integrity sha512-vnIGYEjoPSuRqV8W9t+Wow95SDp6KPX2Uf7EoeG9G99J2OVh7OSwpS4B6J0NfpEIpfkBNHlBZpA2rblEuEFhZQ== +jest-message-util@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.6.3.tgz#bce16050d86801b165f20cfde34dc01d3cf85fbf" + integrity sha512-FtzaEEHzjDpQp51HX4UMkPZjy46ati4T5pEMyM6Ik48ztu4T9LQplZ6OsimHx7EuM9dfEh5HJa6D3trEftu3dA== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.9" micromatch "^4.0.4" - pretty-format "^29.6.2" + pretty-format "^29.6.3" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.6.2.tgz#ef9c9b4d38c34a2ad61010a021866dad41ce5e00" - integrity sha512-hoSv3lb3byzdKfwqCuT6uTscan471GUECqgNYykg6ob0yiAw3zYc7OrPnI9Qv8Wwoa4lC7AZ9hyS4AiIx5U2zg== +jest-mock@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.6.3.tgz#433f3fd528c8ec5a76860177484940628bdf5e0a" + integrity sha512-Z7Gs/mOyTSR4yPsaZ72a/MtuK6RnC3JYqWONe48oLaoEcYwEDxqvbXz85G4SJrm2Z5Ar9zp6MiHF4AlFlRM4Pg== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" "@types/node" "*" - jest-util "^29.6.2" + jest-util "^29.6.3" jest-pnp-resolver@^1.2.2: version "1.2.3" @@ -15861,86 +15956,86 @@ jest-regex-util@^27.0.6: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== -jest-regex-util@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.4.3.tgz#a42616141e0cae052cfa32c169945d00c0aa0bb8" - integrity sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg== +jest-regex-util@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.6.3.tgz#4a556d9c776af68e1c5f48194f4d0327d24e8a52" + integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg== -jest-resolve-dependencies@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.6.2.tgz#36435269b6672c256bcc85fb384872c134cc4cf2" - integrity sha512-LGqjDWxg2fuQQm7ypDxduLu/m4+4Lb4gczc13v51VMZbVP5tSBILqVx8qfWcsdP8f0G7aIqByIALDB0R93yL+w== +jest-resolve-dependencies@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.6.4.tgz#20156b33c7eacbb6bb77aeba4bed0eab4a3f8734" + integrity sha512-7+6eAmr1ZBF3vOAJVsfLj1QdqeXG+WYhidfLHBRZqGN24MFRIiKG20ItpLw2qRAsW/D2ZUUmCNf6irUr/v6KHA== dependencies: - jest-regex-util "^29.4.3" - jest-snapshot "^29.6.2" + jest-regex-util "^29.6.3" + jest-snapshot "^29.6.4" -jest-resolve@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.6.2.tgz#f18405fe4b50159b7b6d85e81f6a524d22afb838" - integrity sha512-G/iQUvZWI5e3SMFssc4ug4dH0aZiZpsDq9o1PtXTV1210Ztyb2+w+ZgQkB3iOiC5SmAEzJBOHWz6Hvrd+QnNPw== +jest-resolve@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.6.4.tgz#e34cb06f2178b429c38455d98d1a07572ac9faa3" + integrity sha512-fPRq+0vcxsuGlG0O3gyoqGTAxasagOxEuyoxHeyxaZbc9QNek0AmJWSkhjlMG+mTsj+8knc/mWb3fXlRNVih7Q== dependencies: chalk "^4.0.0" graceful-fs "^4.2.9" - jest-haste-map "^29.6.2" + jest-haste-map "^29.6.4" jest-pnp-resolver "^1.2.2" - jest-util "^29.6.2" - jest-validate "^29.6.2" + jest-util "^29.6.3" + jest-validate "^29.6.3" resolve "^1.20.0" resolve.exports "^2.0.0" slash "^3.0.0" -jest-runner@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.6.2.tgz#89e8e32a8fef24781a7c4c49cd1cb6358ac7fc01" - integrity sha512-wXOT/a0EspYgfMiYHxwGLPCZfC0c38MivAlb2lMEAlwHINKemrttu1uSbcGbfDV31sFaPWnWJPmb2qXM8pqZ4w== +jest-runner@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.6.4.tgz#b3b8ccb85970fde0fae40c73ee11eb75adccfacf" + integrity sha512-SDaLrMmtVlQYDuG0iSPYLycG8P9jLI+fRm8AF/xPKhYDB2g6xDWjXBrR5M8gEWsK6KVFlebpZ4QsrxdyIX1Jaw== dependencies: - "@jest/console" "^29.6.2" - "@jest/environment" "^29.6.2" - "@jest/test-result" "^29.6.2" - "@jest/transform" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/console" "^29.6.4" + "@jest/environment" "^29.6.4" + "@jest/test-result" "^29.6.4" + "@jest/transform" "^29.6.4" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" emittery "^0.13.1" graceful-fs "^4.2.9" - jest-docblock "^29.4.3" - jest-environment-node "^29.6.2" - jest-haste-map "^29.6.2" - jest-leak-detector "^29.6.2" - jest-message-util "^29.6.2" - jest-resolve "^29.6.2" - jest-runtime "^29.6.2" - jest-util "^29.6.2" - jest-watcher "^29.6.2" - jest-worker "^29.6.2" + jest-docblock "^29.6.3" + jest-environment-node "^29.6.4" + jest-haste-map "^29.6.4" + jest-leak-detector "^29.6.3" + jest-message-util "^29.6.3" + jest-resolve "^29.6.4" + jest-runtime "^29.6.4" + jest-util "^29.6.3" + jest-watcher "^29.6.4" + jest-worker "^29.6.4" p-limit "^3.1.0" source-map-support "0.5.13" -jest-runtime@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.6.2.tgz#692f25e387f982e89ab83270e684a9786248e545" - integrity sha512-2X9dqK768KufGJyIeLmIzToDmsN0m7Iek8QNxRSI/2+iPFYHF0jTwlO3ftn7gdKd98G/VQw9XJCk77rbTGZnJg== - dependencies: - "@jest/environment" "^29.6.2" - "@jest/fake-timers" "^29.6.2" - "@jest/globals" "^29.6.2" - "@jest/source-map" "^29.6.0" - "@jest/test-result" "^29.6.2" - "@jest/transform" "^29.6.2" - "@jest/types" "^29.6.1" +jest-runtime@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.6.4.tgz#b0bc495c9b6b12a0a7042ac34ca9bb85f8cd0ded" + integrity sha512-s/QxMBLvmwLdchKEjcLfwzP7h+jsHvNEtxGP5P+Fl1FMaJX2jMiIqe4rJw4tFprzCwuSvVUo9bn0uj4gNRXsbA== + dependencies: + "@jest/environment" "^29.6.4" + "@jest/fake-timers" "^29.6.4" + "@jest/globals" "^29.6.4" + "@jest/source-map" "^29.6.3" + "@jest/test-result" "^29.6.4" + "@jest/transform" "^29.6.4" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" cjs-module-lexer "^1.0.0" collect-v8-coverage "^1.0.0" glob "^7.1.3" graceful-fs "^4.2.9" - jest-haste-map "^29.6.2" - jest-message-util "^29.6.2" - jest-mock "^29.6.2" - jest-regex-util "^29.4.3" - jest-resolve "^29.6.2" - jest-snapshot "^29.6.2" - jest-util "^29.6.2" + jest-haste-map "^29.6.4" + jest-message-util "^29.6.3" + jest-mock "^29.6.3" + jest-regex-util "^29.6.3" + jest-resolve "^29.6.4" + jest-snapshot "^29.6.4" + jest-util "^29.6.3" slash "^3.0.0" strip-bom "^4.0.0" @@ -15960,30 +16055,30 @@ jest-serializer@^27.0.6: "@types/node" "*" graceful-fs "^4.2.9" -jest-snapshot@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.6.2.tgz#9b431b561a83f2bdfe041e1cab8a6becdb01af9c" - integrity sha512-1OdjqvqmRdGNvWXr/YZHuyhh5DeaLp1p/F8Tht/MrMw4Kr1Uu/j4lRG+iKl1DAqUJDWxtQBMk41Lnf/JETYBRA== +jest-snapshot@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.6.4.tgz#9833eb6b66ff1541c7fd8ceaa42d541f407b4876" + integrity sha512-VC1N8ED7+4uboUKGIDsbvNAZb6LakgIPgAF4RSpF13dN6YaMokfRqO+BaqK4zIh6X3JffgwbzuGqDEjHm/MrvA== dependencies: "@babel/core" "^7.11.6" "@babel/generator" "^7.7.2" "@babel/plugin-syntax-jsx" "^7.7.2" "@babel/plugin-syntax-typescript" "^7.7.2" "@babel/types" "^7.3.3" - "@jest/expect-utils" "^29.6.2" - "@jest/transform" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/expect-utils" "^29.6.4" + "@jest/transform" "^29.6.4" + "@jest/types" "^29.6.3" babel-preset-current-node-syntax "^1.0.0" chalk "^4.0.0" - expect "^29.6.2" + expect "^29.6.4" graceful-fs "^4.2.9" - jest-diff "^29.6.2" - jest-get-type "^29.4.3" - jest-matcher-utils "^29.6.2" - jest-message-util "^29.6.2" - jest-util "^29.6.2" + jest-diff "^29.6.4" + jest-get-type "^29.6.3" + jest-matcher-utils "^29.6.4" + jest-message-util "^29.6.3" + jest-util "^29.6.3" natural-compare "^1.4.0" - pretty-format "^29.6.2" + pretty-format "^29.6.3" semver "^7.5.3" jest-util@^26.6.2: @@ -16010,12 +16105,12 @@ jest-util@^27.2.0: graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-util@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.6.2.tgz#8a052df8fff2eebe446769fd88814521a517664d" - integrity sha512-3eX1qb6L88lJNCFlEADKOkjpXJQyZRiavX1INZ4tRnrBVr2COd3RgcTLyUiEXMNBlDU/cgYq6taUS0fExrWW4w== +jest-util@^29.0.0, jest-util@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.6.3.tgz#e15c3eac8716440d1ed076f09bc63ace1aebca63" + integrity sha512-QUjna/xSy4B32fzcKTSz1w7YYzgiHrjjJjevdRf61HYk998R5vVMMNmrHESYZVDS5DSWs+1srPLPKxXPkeSDOA== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" @@ -16034,30 +16129,30 @@ jest-validate@^26.5.2: leven "^3.1.0" pretty-format "^26.6.2" -jest-validate@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.6.2.tgz#25d972af35b2415b83b1373baf1a47bb266c1082" - integrity sha512-vGz0yMN5fUFRRbpJDPwxMpgSXW1LDKROHfBopAvDcmD6s+B/s8WJrwi+4bfH4SdInBA5C3P3BI19dBtKzx1Arg== +jest-validate@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.6.3.tgz#a75fca774cfb1c5758c70d035d30a1f9c2784b4d" + integrity sha512-e7KWZcAIX+2W1o3cHfnqpGajdCs1jSM3DkXjGeLSNmCazv1EeI1ggTeK5wdZhF+7N+g44JI2Od3veojoaumlfg== dependencies: - "@jest/types" "^29.6.1" + "@jest/types" "^29.6.3" camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^29.4.3" + jest-get-type "^29.6.3" leven "^3.1.0" - pretty-format "^29.6.2" + pretty-format "^29.6.3" -jest-watcher@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.6.2.tgz#77c224674f0620d9f6643c4cfca186d8893ca088" - integrity sha512-GZitlqkMkhkefjfN/p3SJjrDaxPflqxEAv3/ik10OirZqJGYH5rPiIsgVcfof0Tdqg3shQGdEIxDBx+B4tuLzA== +jest-watcher@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.6.4.tgz#633eb515ae284aa67fd6831f1c9d1b534cf0e0ba" + integrity sha512-oqUWvx6+On04ShsT00Ir9T4/FvBeEh2M9PTubgITPxDa739p4hoQweWPRGyYeaojgT0xTpZKF0Y/rSY1UgMxvQ== dependencies: - "@jest/test-result" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/test-result" "^29.6.4" + "@jest/types" "^29.6.3" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" emittery "^0.13.1" - jest-util "^29.6.2" + jest-util "^29.6.3" string-length "^4.0.1" jest-worker@27.0.0-next.5: @@ -16087,25 +16182,25 @@ jest-worker@^27.0.2, jest-worker@^27.2.0, jest-worker@^27.4.5: merge-stream "^2.0.0" supports-color "^8.0.0" -jest-worker@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.6.2.tgz#682fbc4b6856ad0aa122a5403c6d048b83f3fb44" - integrity sha512-l3ccBOabTdkng8I/ORCkADz4eSMKejTYv1vB/Z83UiubqhC1oQ5Li6dWCyqOIvSifGjUBxuvxvlm6KGK2DtuAQ== +jest-worker@^29.6.4: + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.6.4.tgz#f34279f4afc33c872b470d4af21b281ac616abd3" + integrity sha512-6dpvFV4WjcWbDVGgHTWo/aupl8/LbBx2NSKfiwqf79xC/yeJjKHT1+StcKy/2KTmW16hE68ccKVOtXf+WZGz7Q== dependencies: "@types/node" "*" - jest-util "^29.6.2" + jest-util "^29.6.3" merge-stream "^2.0.0" supports-color "^8.0.0" jest@^29.5.0: - version "29.6.2" - resolved "https://registry.yarnpkg.com/jest/-/jest-29.6.2.tgz#3bd55b9fd46a161b2edbdf5f1d1bd0d1eab76c42" - integrity sha512-8eQg2mqFbaP7CwfsTpCxQ+sHzw1WuNWL5UUvjnWP4hx2riGz9fPSzYOaU5q8/GqWn1TfgZIVTqYJygbGbWAANg== + version "29.6.4" + resolved "https://registry.yarnpkg.com/jest/-/jest-29.6.4.tgz#7c48e67a445ba264b778253b5d78d4ebc9d0a622" + integrity sha512-tEFhVQFF/bzoYV1YuGyzLPZ6vlPrdfvDmmAxudA1dLEuiztqg2Rkx20vkKY32xiDROcD2KXlgZ7Cu8RPeEHRKw== dependencies: - "@jest/core" "^29.6.2" - "@jest/types" "^29.6.1" + "@jest/core" "^29.6.4" + "@jest/types" "^29.6.3" import-local "^3.0.2" - jest-cli "^29.6.2" + jest-cli "^29.6.4" jetifier@^2.0.0: version "2.0.0" @@ -16118,9 +16213,9 @@ jimp-compact@0.16.1: integrity sha512-dZ6Ra7u1G8c4Letq/B5EzAxj4tLFHL+cGtdpR+PVm4yzPDj+lCk+AbivWt1eOM+ikzkowtyV7qSqX6qr3t71Ww== jiti@^1.18.2: - version "1.19.1" - resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.19.1.tgz#fa99e4b76a23053e0e7cde098efe1704a14c16f1" - integrity sha512-oVhqoRDaBXf7sjkll95LHVS6Myyyb1zaunVwk4Z0+WPSW4gjS0pl01zYKHScTuyEhQsFxV5L4DR5r+YqSyqyyg== + version "1.19.3" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.19.3.tgz#ef554f76465b3c2b222dc077834a71f0d4a37569" + integrity sha512-5eEbBDQT/jF1xg6l36P+mWGGoH9Spuy0PCdSr2dtWRDGC6ph/w9ZCL4lmESW8f8F7MwT3XKescfP0wnZWAKL9w== joi@^17.2.1: version "17.9.2" @@ -16203,6 +16298,38 @@ jscodeshift@^0.13.1: temp "^0.8.4" write-file-atomic "^2.3.0" +jsdom@^20.0.0: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-20.0.3.tgz#886a41ba1d4726f67a8858028c99489fed6ad4db" + integrity sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ== + dependencies: + abab "^2.0.6" + acorn "^8.8.1" + acorn-globals "^7.0.0" + cssom "^0.5.0" + cssstyle "^2.3.0" + data-urls "^3.0.2" + decimal.js "^10.4.2" + domexception "^4.0.0" + escodegen "^2.0.0" + form-data "^4.0.0" + html-encoding-sniffer "^3.0.0" + http-proxy-agent "^5.0.0" + https-proxy-agent "^5.0.1" + is-potential-custom-element-name "^1.0.1" + nwsapi "^2.2.2" + parse5 "^7.1.1" + saxes "^6.0.0" + symbol-tree "^3.2.4" + tough-cookie "^4.1.2" + w3c-xmlserializer "^4.0.0" + webidl-conversions "^7.0.0" + whatwg-encoding "^2.0.0" + whatwg-mimetype "^3.0.0" + whatwg-url "^11.0.0" + ws "^8.11.0" + xml-name-validator "^4.0.0" + jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" @@ -16435,6 +16562,13 @@ lazy-universal-dotenv@^4.0.0: dotenv "^16.0.0" dotenv-expand "^10.0.0" +"legacy-swc-helpers@npm:@swc/helpers@=0.4.14": + version "0.4.14" + resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.14.tgz#1352ac6d95e3617ccb7c1498ff019654f1e12a74" + integrity sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw== + dependencies: + tslib "^2.4.0" + leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" @@ -16660,7 +16794,7 @@ lodash.kebabcase@^4.1.1: resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" integrity sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g== -lodash.memoize@^4.1.2: +lodash.memoize@4.x, lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== @@ -16847,16 +16981,16 @@ lru-cache@^7.14.1: resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.1.tgz#0a3be479df549cca0e5d693ac402ff19537a6b7a" integrity sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g== -lucide-react-native@^0.121.0: - version "0.121.0" - resolved "https://registry.yarnpkg.com/lucide-react-native/-/lucide-react-native-0.121.0.tgz#b2a3e6b9c483293c189fda8dbb3f1ae0f47cfdc4" - integrity sha512-IeIdN8DhwxeaZhP/NZTvw1vbtjeO9QhcRDTVAG1vj7RNKTG87QWHES9lYWukDNj0v3ex8s/15IIGoFsjpzRGnw== - lucide-react-native@^0.161.0: version "0.161.0" resolved "https://registry.yarnpkg.com/lucide-react-native/-/lucide-react-native-0.161.0.tgz#b8b9056495170c3df9bbcac973f6ec8d54736858" integrity sha512-hb87FDAipQvANlrBJ949yN8Vudp8JWk+K+FRy9FnlnoBipQpBvMCWwSkm7Yu5iTvZKK1EKdnRDoUR1X0Wl8WLA== +lucide-react-native@^0.236.0: + version "0.236.0" + resolved "https://registry.yarnpkg.com/lucide-react-native/-/lucide-react-native-0.236.0.tgz#2e3c8274e46033b3129126a642055b8c7e92df33" + integrity sha512-eDiTcP1YlospETynDXQipeT7K0UHY6r2BveRAgWMxNJ+kdY3CBJcnS8Fksgad+AFMGtzBjgY6EBxQ09Ak5bi9A== + macos-release@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-3.2.0.tgz#dcee82b6a4932971b1538dbf6f3aabc4a903b613" @@ -16884,7 +17018,7 @@ make-dir@^4.0.0: dependencies: semver "^7.5.3" -make-error@^1.1.1: +make-error@1.x, make-error@^1.1.1: version "1.3.6" resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== @@ -17032,6 +17166,11 @@ memoize-one@^5.0.0: resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.2.1.tgz#8337aa3c4335581839ec01c3d594090cebe8f00e" integrity sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q== +memoize-one@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-6.0.0.tgz#b2591b871ed82948aee4727dc6abceeeac8c1045" + integrity sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw== + memoizerific@^1.11.3: version "1.11.3" resolved "https://registry.yarnpkg.com/memoizerific/-/memoizerific-1.11.3.tgz#7c87a4646444c32d75438570905f2dbd1b1a805a" @@ -17513,10 +17652,10 @@ metro-react-native-babel-preset@0.73.9: "@babel/template" "^7.0.0" react-refresh "^0.4.0" -metro-react-native-babel-preset@0.76.7: - version "0.76.7" - resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.76.7.tgz#dfe15c040d0918147a8b0e9f530d558287acbb54" - integrity sha512-R25wq+VOSorAK3hc07NW0SmN8z9S/IR0Us0oGAsBcMZnsgkbOxu77Mduqf+f4is/wnWHc5+9bfiqdLnaMngiVw== +metro-react-native-babel-preset@0.76.8: + version "0.76.8" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.76.8.tgz#7476efae14363cbdfeeec403b4f01d7348e6c048" + integrity sha512-Ptza08GgqzxEdK8apYsjTx2S8WDUlS2ilBlu9DR1CUcHmg4g3kOkFylZroogVAUKtpYQNYwAvdsjmrSdDNtiAg== dependencies: "@babel/core" "^7.20.0" "@babel/plugin-proposal-async-generator-functions" "^7.0.0" @@ -18514,30 +18653,6 @@ next@10.2.3: vm-browserify "1.1.2" watchpack "2.1.1" -next@13.4.13: - version "13.4.13" - resolved "https://registry.yarnpkg.com/next/-/next-13.4.13.tgz#8824c5702daa2ef691386871c9158a6324df33d6" - integrity sha512-A3YVbVDNeXLhWsZ8Nf6IkxmNlmTNz0yVg186NJ97tGZqPDdPzTrHotJ+A1cuJm2XfuWPrKOUZILl5iBQkIf8Jw== - dependencies: - "@next/env" "13.4.13" - "@swc/helpers" "0.5.1" - busboy "1.6.0" - caniuse-lite "^1.0.30001406" - postcss "8.4.14" - styled-jsx "5.1.1" - watchpack "2.4.0" - zod "3.21.4" - optionalDependencies: - "@next/swc-darwin-arm64" "13.4.13" - "@next/swc-darwin-x64" "13.4.13" - "@next/swc-linux-arm64-gnu" "13.4.13" - "@next/swc-linux-arm64-musl" "13.4.13" - "@next/swc-linux-x64-gnu" "13.4.13" - "@next/swc-linux-x64-musl" "13.4.13" - "@next/swc-win32-arm64-msvc" "13.4.13" - "@next/swc-win32-ia32-msvc" "13.4.13" - "@next/swc-win32-x64-msvc" "13.4.13" - next@^12.3.4: version "12.3.4" resolved "https://registry.yarnpkg.com/next/-/next-12.3.4.tgz#f2780a6ebbf367e071ce67e24bd8a6e05de2fcb1" @@ -18565,11 +18680,11 @@ next@^12.3.4: "@next/swc-win32-x64-msvc" "12.3.4" next@^13.1.6: - version "13.4.16" - resolved "https://registry.yarnpkg.com/next/-/next-13.4.16.tgz#327ef6885b22161ed001cd5943c20b5e409a9406" - integrity sha512-1xaA/5DrfpPu0eV31Iro7JfPeqO8uxQWb1zYNTe+KDKdzqkAGapLcDYHMLNKXKB7lHjZ7LfKUOf9dyuzcibrhA== + version "13.4.19" + resolved "https://registry.yarnpkg.com/next/-/next-13.4.19.tgz#2326e02aeedee2c693d4f37b90e4f0ed6882b35f" + integrity sha512-HuPSzzAbJ1T4BD8e0bs6B9C1kWQ6gv8ykZoRWs5AQoiIuqbGHHdQO7Ljuvg05Q0Z24E2ABozHe6FxDvI6HfyAw== dependencies: - "@next/env" "13.4.16" + "@next/env" "13.4.19" "@swc/helpers" "0.5.1" busboy "1.6.0" caniuse-lite "^1.0.30001406" @@ -18578,15 +18693,15 @@ next@^13.1.6: watchpack "2.4.0" zod "3.21.4" optionalDependencies: - "@next/swc-darwin-arm64" "13.4.16" - "@next/swc-darwin-x64" "13.4.16" - "@next/swc-linux-arm64-gnu" "13.4.16" - "@next/swc-linux-arm64-musl" "13.4.16" - "@next/swc-linux-x64-gnu" "13.4.16" - "@next/swc-linux-x64-musl" "13.4.16" - "@next/swc-win32-arm64-msvc" "13.4.16" - "@next/swc-win32-ia32-msvc" "13.4.16" - "@next/swc-win32-x64-msvc" "13.4.16" + "@next/swc-darwin-arm64" "13.4.19" + "@next/swc-darwin-x64" "13.4.19" + "@next/swc-linux-arm64-gnu" "13.4.19" + "@next/swc-linux-arm64-musl" "13.4.19" + "@next/swc-linux-x64-gnu" "13.4.19" + "@next/swc-linux-x64-musl" "13.4.19" + "@next/swc-win32-arm64-msvc" "13.4.19" + "@next/swc-win32-ia32-msvc" "13.4.19" + "@next/swc-win32-x64-msvc" "13.4.19" nice-try@^1.0.4: version "1.0.5" @@ -18633,9 +18748,9 @@ node-fetch@3.3.1: formdata-polyfill "^4.0.10" node-fetch@^2.0.0, node-fetch@^2.2.0, node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.12, node-fetch@^2.6.7: - version "2.6.12" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.12.tgz#02eb8e22074018e3d5a83016649d04df0e348fba" - integrity sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g== + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== dependencies: whatwg-url "^5.0.0" @@ -18835,6 +18950,11 @@ num2fraction@^1.2.2: resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" integrity sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg== +nwsapi@^2.2.2: + version "2.2.7" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.7.tgz#738e0707d3128cb750dddcfe90e4610482df0f30" + integrity sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ== + ob1@0.72.3: version "0.72.3" resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.72.3.tgz#fc1efcfe156f12ed23615f2465a796faad8b91e4" @@ -19441,6 +19561,13 @@ parse5@^6.0.0: resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== +parse5@^7.0.0, parse5@^7.1.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" + integrity sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw== + dependencies: + entities "^4.4.0" + parseurl@~1.3.2, parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" @@ -20398,12 +20525,12 @@ pretty-format@^26.5.2, pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" -pretty-format@^29.6.2: - version "29.6.2" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.6.2.tgz#3d5829261a8a4d89d8b9769064b29c50ed486a47" - integrity sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg== +pretty-format@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.6.3.tgz#d432bb4f1ca6f9463410c3fb25a0ba88e594ace7" + integrity sha512-ZsBgjVhFAj5KeK+nHfF1305/By3lechHQSMWCTl8iHSbfOm2TN5nHEtFc/+W7fAyUeCs2n5iow72gld4gW0xDw== dependencies: - "@jest/schemas" "^29.6.0" + "@jest/schemas" "^29.6.3" ansi-styles "^5.0.0" react-is "^18.0.0" @@ -20560,6 +20687,11 @@ pseudomap@^1.0.2: resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== +psl@^1.1.33: + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== + public-encrypt@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" @@ -20602,7 +20734,7 @@ punycode@^1.2.4, punycode@^1.4.1: resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== -punycode@^2.1.0: +punycode@^2.1.0, punycode@^2.1.1: version "2.3.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== @@ -21011,9 +21143,9 @@ react-native-svg@13.4.0: css-tree "^1.1.3" react-native-svg@^13.6.0: - version "13.11.0" - resolved "https://registry.yarnpkg.com/react-native-svg/-/react-native-svg-13.11.0.tgz#90be2834a358351a76a57834941cb79183beb6b2" - integrity sha512-ApMp0t7NQh85BNq66nfN1/l8pwkj1Lx8Y+ErmBmZ0Oado3DSd+o/Fx/6Jm3GmBkmXl62t6Et0FHj1NYxNQw64w== + version "13.13.0" + resolved "https://registry.yarnpkg.com/react-native-svg/-/react-native-svg-13.13.0.tgz#23dedb4594dcc44128d63fa5b13c49534187fef5" + integrity sha512-L8y8uEiMG0Tr++Nb2+24wlMuv18+bmq/CMoFFtTUlEqVvGCoK2ea8WamPl/9bV8gjL+Rngg5NqEBvKS23sbYoA== dependencies: css-select "^5.1.0" css-tree "^1.1.3" @@ -21061,6 +21193,20 @@ react-native-web@^0.18.1, react-native-web@^0.18.12, react-native-web@~0.18.11: postcss-value-parser "^4.2.0" styleq "^0.1.2" +react-native-web@^0.19.7: + version "0.19.8" + resolved "https://registry.yarnpkg.com/react-native-web/-/react-native-web-0.19.8.tgz#46127f8b310148fde11e4fef67fe625603599d47" + integrity sha512-anqGGHowJdfkYqRxzoQj6DeetJf5hyBlahN6rwksw54gXxgjbsUOe4/PyxqvjwxYafgbVo0oow23BwpsRFdrpw== + dependencies: + "@babel/runtime" "^7.18.6" + "@react-native/normalize-color" "^2.1.0" + fbjs "^3.0.4" + inline-style-prefixer "^6.0.1" + memoize-one "^6.0.0" + nullthrows "^1.1.1" + postcss-value-parser "^4.2.0" + styleq "^0.1.3" + react-native@0.70.5: version "0.70.5" resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.70.5.tgz#f60540b21d338891086e0a834e331c124dd1f55c" @@ -21235,7 +21381,7 @@ react@18.1.0: dependencies: loose-envify "^1.1.0" -react@18.2.0, react@^18.1.0: +react@18.2.0, react@^18.1.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== @@ -21729,7 +21875,7 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.1, resolve@^1.22.3, resolve@^1.22.4, resolve@^1.3.2: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.1, resolve@^1.22.4, resolve@^1.3.2: version "1.22.4" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34" integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== @@ -21970,6 +22116,13 @@ sax@>=0.6.0, sax@^1.2.4, sax@~1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== +saxes@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-6.0.0.tgz#fe5b4a4768df4f14a201b1ba6a65c1f3d9988cc5" + integrity sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA== + dependencies: + xmlchars "^2.2.0" + scheduler@^0.22.0: version "0.22.0" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.22.0.tgz#83a5d63594edf074add9a7198b1bae76c3db01b8" @@ -22080,7 +22233,7 @@ semver@7.5.3: dependencies: lru-cache "^6.0.0" -semver@7.5.4, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3: +semver@7.5.4, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3, semver@^7.5.4: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -23135,7 +23288,7 @@ stylehacks@^5.1.1: browserslist "^4.21.4" postcss-selector-parser "^6.0.4" -styleq@^0.1.2: +styleq@^0.1.2, styleq@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/styleq/-/styleq-0.1.3.tgz#8efb2892debd51ce7b31dc09c227ad920decab71" integrity sha512-3ZUifmCDCQanjeej1f6kyl/BeP/Vae5EYkQ9iJfUm/QwZvlgnZzyflqAsAWYURdtea8Vkvswu2GrC57h3qffcA== @@ -23256,6 +23409,11 @@ svgo@^2.7.0: picocolors "^1.0.0" stable "^0.1.8" +symbol-tree@^3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== + symbol.prototype.description@^1.0.0: version "1.0.5" resolved "https://registry.yarnpkg.com/symbol.prototype.description/-/symbol.prototype.description-1.0.5.tgz#d30e01263b6020fbbd2d2884a6276ce4d49ab568" @@ -23319,9 +23477,9 @@ telejson@^6.0.8: memoizerific "^1.11.3" telejson@^7.0.3: - version "7.1.0" - resolved "https://registry.yarnpkg.com/telejson/-/telejson-7.1.0.tgz#1ef7a0dd57eeb52cde933126f61bcc296c170f52" - integrity sha512-jFJO4P5gPebZAERPkJsqMAQ0IMA1Hi0AoSfxpnUaV6j6R2SZqlpkbS20U6dEUtA3RUYt2Ak/mTlkQzHH9Rv/hA== + version "7.2.0" + resolved "https://registry.yarnpkg.com/telejson/-/telejson-7.2.0.tgz#3994f6c9a8f8d7f2dba9be2c7c5bbb447e876f32" + integrity sha512-1QTEcJkJEhc8OnStBx/ILRu5J2p0GjvWsBx56bmZRqnrkdBMUe+nX92jxV+p3dB4CP6PZCdJMQJwCggkNBMzkQ== dependencies: memoizerific "^1.11.3" @@ -23612,6 +23770,16 @@ toidentifier@1.0.1: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== +tough-cookie@^4.1.2: + version "4.1.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" + integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.2.0" + url-parse "^1.5.3" + tr46@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" @@ -23619,6 +23787,13 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" +tr46@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9" + integrity sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA== + dependencies: + punycode "^2.1.1" + tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -23664,6 +23839,20 @@ ts-interface-checker@^0.1.9: resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== +ts-jest@^29.1.0: + version "29.1.1" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.1.1.tgz#f58fe62c63caf7bfcc5cc6472082f79180f0815b" + integrity sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA== + dependencies: + bs-logger "0.x" + fast-json-stable-stringify "2.x" + jest-util "^29.0.0" + json5 "^2.2.3" + lodash.memoize "4.x" + make-error "1.x" + semver "^7.5.3" + yargs-parser "^21.0.1" + ts-loader@~8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-8.2.0.tgz#6a3aeaa378aecda543e2ed2c332d3123841d52e0" @@ -23730,9 +23919,9 @@ tslib@^1.8.1: integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.4.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.1.tgz#fd8c9a0ff42590b25703c0acb3de3d3f4ede0410" - integrity sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig== + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== tsutils@^3.21.0: version "3.21.0" @@ -23764,47 +23953,47 @@ tty-table@^4.1.5: wcwidth "^1.0.1" yargs "^17.7.1" -turbo-darwin-64@1.10.12: - version "1.10.12" - resolved "https://registry.yarnpkg.com/turbo-darwin-64/-/turbo-darwin-64-1.10.12.tgz#a3d9d6bd3436e795254865bc3d76a9c79aff8085" - integrity sha512-vmDfGVPl5/aFenAbOj3eOx3ePNcWVUyZwYr7taRl0ZBbmv2TzjRiFotO4vrKCiTVnbqjQqAFQWY2ugbqCI1kOQ== +turbo-darwin-64@1.10.13: + version "1.10.13" + resolved "https://registry.yarnpkg.com/turbo-darwin-64/-/turbo-darwin-64-1.10.13.tgz#7abc33838bf74c7e7ba2955cb6acc40342d6964c" + integrity sha512-vmngGfa2dlYvX7UFVncsNDMuT4X2KPyPJ2Jj+xvf5nvQnZR/3IeDEGleGVuMi/hRzdinoxwXqgk9flEmAYp0Xw== -turbo-darwin-arm64@1.10.12: - version "1.10.12" - resolved "https://registry.yarnpkg.com/turbo-darwin-arm64/-/turbo-darwin-arm64-1.10.12.tgz#ff1d9466935687ca68c0dee88a909c34cc654357" - integrity sha512-3JliEESLNX2s7g54SOBqqkqJ7UhcOGkS0ywMr5SNuvF6kWVTbuUq7uBU/sVbGq8RwvK1ONlhPvJne5MUqBCTCQ== +turbo-darwin-arm64@1.10.13: + version "1.10.13" + resolved "https://registry.yarnpkg.com/turbo-darwin-arm64/-/turbo-darwin-arm64-1.10.13.tgz#89f2d14a28789e5eaf276a17fecd4116d61fd16d" + integrity sha512-eMoJC+k7gIS4i2qL6rKmrIQGP6Wr9nN4odzzgHFngLTMimok2cGLK3qbJs5O5F/XAtEeRAmuxeRnzQwTl/iuAw== -turbo-linux-64@1.10.12: - version "1.10.12" - resolved "https://registry.yarnpkg.com/turbo-linux-64/-/turbo-linux-64-1.10.12.tgz#d184a491cc67c07672d339e36427378d0fc6b82e" - integrity sha512-siYhgeX0DidIfHSgCR95b8xPee9enKSOjCzx7EjTLmPqPaCiVebRYvbOIYdQWRqiaKh9yfhUtFmtMOMScUf1gg== +turbo-linux-64@1.10.13: + version "1.10.13" + resolved "https://registry.yarnpkg.com/turbo-linux-64/-/turbo-linux-64-1.10.13.tgz#803e2b351984ec81034dc4b6935cdfb0a7d7d572" + integrity sha512-0CyYmnKTs6kcx7+JRH3nPEqCnzWduM0hj8GP/aodhaIkLNSAGAa+RiYZz6C7IXN+xUVh5rrWTnU2f1SkIy7Gdg== -turbo-linux-arm64@1.10.12: - version "1.10.12" - resolved "https://registry.yarnpkg.com/turbo-linux-arm64/-/turbo-linux-arm64-1.10.12.tgz#44e6ca10b20fd4c59f8c85acf8366c7c09ebca81" - integrity sha512-K/ZhvD9l4SslclaMkTiIrnfcACgos79YcAo4kwc8bnMQaKuUeRpM15sxLpZp3xDjDg8EY93vsKyjaOhdFG2UbA== +turbo-linux-arm64@1.10.13: + version "1.10.13" + resolved "https://registry.yarnpkg.com/turbo-linux-arm64/-/turbo-linux-arm64-1.10.13.tgz#92439a927ec98801be1be266016736be5730e40c" + integrity sha512-0iBKviSGQQlh2OjZgBsGjkPXoxvRIxrrLLbLObwJo3sOjIH0loGmVIimGS5E323soMfi/o+sidjk2wU1kFfD7Q== -turbo-windows-64@1.10.12: - version "1.10.12" - resolved "https://registry.yarnpkg.com/turbo-windows-64/-/turbo-windows-64-1.10.12.tgz#36380eca8e7b0505d08b87a084efab1500b2a80e" - integrity sha512-7FSgSwvktWDNOqV65l9AbZwcoueAILeE4L7JvjauNASAjjbuzXGCEq5uN8AQU3U5BOFj4TdXrVmO2dX+lLu8Zg== +turbo-windows-64@1.10.13: + version "1.10.13" + resolved "https://registry.yarnpkg.com/turbo-windows-64/-/turbo-windows-64-1.10.13.tgz#870815cdcb20f2480296c208778f9127be61eec6" + integrity sha512-S5XySRfW2AmnTeY1IT+Jdr6Goq7mxWganVFfrmqU+qqq3Om/nr0GkcUX+KTIo9mPrN0D3p5QViBRzulwB5iuUQ== -turbo-windows-arm64@1.10.12: - version "1.10.12" - resolved "https://registry.yarnpkg.com/turbo-windows-arm64/-/turbo-windows-arm64-1.10.12.tgz#757ad59b9abf1949f22280bee6e8aad253743ba5" - integrity sha512-gCNXF52dwom1HLY9ry/cneBPOKTBHhzpqhMylcyvJP0vp9zeMQQkt6yjYv+6QdnmELC92CtKNp2FsNZo+z0pyw== +turbo-windows-arm64@1.10.13: + version "1.10.13" + resolved "https://registry.yarnpkg.com/turbo-windows-arm64/-/turbo-windows-arm64-1.10.13.tgz#2da38b71b1716732541dfc5bd7475dc0903921f8" + integrity sha512-nKol6+CyiExJIuoIc3exUQPIBjP9nIq5SkMJgJuxsot2hkgGrafAg/izVDRDrRduQcXj2s8LdtxJHvvnbI8hEQ== turbo@latest: - version "1.10.12" - resolved "https://registry.yarnpkg.com/turbo/-/turbo-1.10.12.tgz#cd6f56b92da0600dae9fd94230483556a5c83187" - integrity sha512-WM3+jTfQWnB9W208pmP4oeehZcC6JQNlydb/ZHMRrhmQa+htGhWLCzd6Q9rLe0MwZLPpSPFV2/bN5egCLyoKjQ== + version "1.10.13" + resolved "https://registry.yarnpkg.com/turbo/-/turbo-1.10.13.tgz#8050bcd09f8a20d5a626f41e86cd8760e49a0df6" + integrity sha512-vOF5IPytgQPIsgGtT0n2uGZizR2N3kKuPIn4b5p5DdeLoI0BV7uNiydT7eSzdkPRpdXNnO8UwS658VaI4+YSzQ== optionalDependencies: - turbo-darwin-64 "1.10.12" - turbo-darwin-arm64 "1.10.12" - turbo-linux-64 "1.10.12" - turbo-linux-arm64 "1.10.12" - turbo-windows-64 "1.10.12" - turbo-windows-arm64 "1.10.12" + turbo-darwin-64 "1.10.13" + turbo-darwin-arm64 "1.10.13" + turbo-linux-64 "1.10.13" + turbo-linux-arm64 "1.10.13" + turbo-windows-64 "1.10.13" + turbo-windows-arm64 "1.10.13" type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" @@ -23954,25 +24143,15 @@ typescript@4.5.2: resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.2.tgz#8ac1fba9f52256fdb06fb89e4122fa6a346c2998" integrity sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw== -typescript@4.9.4: - version "4.9.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.4.tgz#a2a3d2756c079abda241d75f149df9d561091e78" - integrity sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg== - -typescript@5.1.6: - version "5.1.6" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274" - integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== - typescript@^4.6.3, typescript@^4.7.4, typescript@^4.9.4: version "4.9.5" resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== -"typescript@^4.6.4 || ^5.0.0", typescript@^5.1.3: - version "5.1.6" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274" - integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== +"typescript@^4.6.4 || ^5.0.0", typescript@^5.1.3, typescript@^5.1.6: + version "5.2.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.2.2.tgz#5ebb5e5a5b75f085f22bc3f8460fba308310fa78" + integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w== ua-parser-js@^1.0.35: version "1.0.35" @@ -24178,6 +24357,11 @@ universalify@^0.1.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== +universalify@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" + integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== + universalify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" @@ -24298,7 +24482,7 @@ url-loader@^4.0.0, url-loader@^4.1.1, url-loader@~4.1.0: mime-types "^2.1.27" schema-utils "^3.0.0" -url-parse@^1.4.3, url-parse@^1.5.9: +url-parse@^1.4.3, url-parse@^1.5.3, url-parse@^1.5.9: version "1.5.10" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== @@ -24529,6 +24713,13 @@ vm2@^3.9.19: acorn "^8.7.0" acorn-walk "^8.2.0" +w3c-xmlserializer@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073" + integrity sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw== + dependencies: + xml-name-validator "^4.0.0" + walker@^1.0.7, walker@^1.0.8, walker@~1.0.5: version "1.0.8" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" @@ -24609,6 +24800,11 @@ webidl-conversions@^4.0.2: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== +webidl-conversions@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" + integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== + webpack-dev-middleware@^3.7.2, webpack-dev-middleware@^3.7.3: version "3.7.3" resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz#0639372b143262e2b84ab95d3b91a7597061c2c5" @@ -24883,11 +25079,31 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== +whatwg-encoding@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz#e7635f597fd87020858626805a2729fa7698ac53" + integrity sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg== + dependencies: + iconv-lite "0.6.3" + whatwg-fetch@^3.0.0: version "3.6.17" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.17.tgz#009bbbfc122b227b74ba1ff31536b3a1a0e0e212" integrity sha512-c4ghIvG6th0eudYwKZY5keb81wtFz9/WeAHAoy8+r18kcWlitUIrmGFQ2rWEl4UCKUilD3zCLHOIPheHx5ypRQ== +whatwg-mimetype@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz#5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7" + integrity sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q== + +whatwg-url@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz#0a849eebb5faf2119b901bb76fd795c2848d4018" + integrity sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ== + dependencies: + tr46 "^3.0.0" + webidl-conversions "^7.0.0" + whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -25129,7 +25345,7 @@ ws@^7, ws@^7.5.1: resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== -ws@^8.12.1, ws@^8.13.0, ws@^8.2.3: +ws@^8.11.0, ws@^8.12.1, ws@^8.13.0, ws@^8.2.3: version "8.13.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0" integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA== @@ -25161,6 +25377,11 @@ xml-js@^1.6.11: dependencies: sax "^1.2.4" +xml-name-validator@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" + integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== + xml2js@0.4.23: version "0.4.23" resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" @@ -25192,6 +25413,11 @@ xmlbuilder@~11.0.0: resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== +xmlchars@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== + xtend@^4.0.0, xtend@^4.0.1, xtend@^4.0.2, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" @@ -25232,7 +25458,7 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yargs-parser@21.1.1, yargs-parser@^21.1.1: +yargs-parser@21.1.1, yargs-parser@^21.0.1, yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== From d94ffec426d552a27174494028e6dd9a4befa4ad Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Mon, 28 Aug 2023 11:07:42 +0530 Subject: [PATCH 30/38] fix: inline resolution --- .../babel-plugin-styled-resolver/src/index.js | 104 +++++++----------- 1 file changed, 41 insertions(+), 63 deletions(-) diff --git a/packages/babel-plugin-styled-resolver/src/index.js b/packages/babel-plugin-styled-resolver/src/index.js index 79dc9aca7..cba7dd7fb 100644 --- a/packages/babel-plugin-styled-resolver/src/index.js +++ b/packages/babel-plugin-styled-resolver/src/index.js @@ -5,18 +5,6 @@ const generate = require('@babel/generator').default; const babelPresetTypeScript = require('@babel/preset-typescript'); const traverse = require('@babel/traverse').default; const types = require('@babel/types'); -const { - getStyleIds, -} = require('@gluestack-style/react/lib/commonjs/resolver/getStyleIds'); -const { - styledResolvedToOrderedSXResolved, -} = require('@gluestack-style/react/lib/commonjs/resolver/orderedResolved'); -const { - styledToStyledResolved, -} = require('@gluestack-style/react/lib/commonjs/resolver/styledResolved'); -const { - injectComponentAndDescendantStyles, -} = require('@gluestack-style/react/lib/commonjs/resolver/injectComponentAndDescendantStyles'); const { convertStyledToStyledVerbosed, @@ -28,16 +16,6 @@ const { const { stableHash, } = require('@gluestack-style/react/lib/commonjs/stableHash'); -const { - INTERNAL_updateCSSStyleInOrderedResolved, -} = require('@gluestack-style/react/lib/commonjs/updateCSSStyleInOrderedResolved'); -const { - INTERNAL_updateCSSStyleInOrderedResolved: - INTERNAL_updateCSSStyleInOrderedResolvedWeb, -} = require('@gluestack-style/react/lib/commonjs/updateCSSStyleInOrderedResolved.web'); -const { - convertUtilityPropsToSX, -} = require('@gluestack-style/react/lib/commonjs/core/convert-utility-to-sx'); const { CSSPropertiesMap, } = require('@gluestack-style/react/lib/commonjs/core/styled-system'); @@ -298,25 +276,7 @@ function getObjectFromAstNode(node) { return JSON.parse(objectCode); } -function removePropertiesVisitor(path) { - if (path.node.type === 'ObjectProperty') { - const valueNode = path.node.value; - if (types.isStringLiteral(valueNode) || types.isNumericLiteral(valueNode)) { - path.remove(); - } - } - if ( - types.isObjectExpression(path.node) || - types.isObjectProperty(path.node) - ) { - if (Array.isArray(path.get('properties'))) - path.get('properties').forEach((propertyPath) => { - removePropertiesVisitor(propertyPath); - }); - } -} - -function addQuotesToObjectKeysIdentifiers(code) { +function removeLiteralPropertiesFromObjectProperties(code) { const ast = babel.parse(`var a = ${code}`, { presets: [babelPresetTypeScript], plugins: ['typescript'], @@ -324,12 +284,39 @@ function addQuotesToObjectKeysIdentifiers(code) { }); traverse(ast, { - ObjectProperty: (path) => { - removePropertiesVisitor(path); + ObjectExpression: (path) => { + path.traverse({ + ObjectProperty(path) { + const { value } = path.node; + + path.traverse({ + StringLiteral: (stringPath) => { + stringPath; + }, + }); + + if ( + value.type === 'StringLiteral' || + value.type === 'NumericLiteral' + ) { + path.remove(); + } + }, + }); }, }); let initAst; + // let modifiedAst = undefined; + + // traverse(ast, { + // ObjectProperty: (path) => { + // if (!modifiedAst) { + // modifiedAst = removeEmptyProperties(path.node); + // path.node = modifiedAst; + // } + // }, + // }); traverse(ast, { VariableDeclarator: (path) => { @@ -343,7 +330,7 @@ function addQuotesToObjectKeysIdentifiers(code) { function getIdentifiersObjectFromAstNode(node) { let objectCode = generate(node).code; - return addQuotesToObjectKeysIdentifiers( + return removeLiteralPropertiesFromObjectProperties( objectCode.replace( /\\"|"(?:\\"|[^"])*"|(\/\/.*|\/\*[\s\S]*?\*\/)/g, (m, g) => (g ? '' : m) @@ -358,21 +345,6 @@ let ConfigDefault = CONFIG; module.exports = function (b) { const { types: t } = b; - function generateObjectAstOfIdentifiers(obj) { - let properties = Object.keys(obj).map((key) => { - if (typeof obj[key] === 'object') { - return t.objectProperty( - t.stringLiteral(key), - generateObjectAstOfIdentifiers(obj[key]) - ); - } else { - return t.objectProperty(t.stringLiteral(key), t.identifier(obj[key])); - } - }); - - return t.objectExpression(properties.filter((property) => property)); - } - function generateObjectAst(obj) { let properties = Object.entries(obj).map(([key, value]) => { if (typeof value === 'undefined') { @@ -560,9 +532,6 @@ module.exports = function (b) { let ExtendedConfig = getObjectFromAstNode(extendedThemeNode); let componentConfig = getObjectFromAstNode(componentConfigNode); - // if (outputLibrary) { - // componentConfig = {...componentConfig, outputLibrary } - // } if (extendedThemeNode && tempPropertyResolverNode) { extendedThemeNode.properties.push(tempPropertyResolverNode); } @@ -721,6 +690,16 @@ module.exports = function (b) { convertExpressionContainerToStaticObject( objectProperties ); + + // jsxOpeningElementPath.traverse({ + // JSXExpressionContainer(jsxPath) { + // jsxPath.traverse({ + // ObjectExpression(path) { + // removeEmptyProperties(path.node); + // }, + // }); + // }, + // }); componentSXProp = sxPropsObject; } else if ( t.isStringLiteral(propValue.expression) || @@ -767,7 +746,6 @@ module.exports = function (b) { if (sx) { const verbosedSx = convertSxToSxVerbosed(sx); - // console.log(JSON.stringify(componentSXProp, null, 2), '>>>>>>>'); const inlineSxTheme = { baseStyle: verbosedSx, From 7922047bba58834b4ac488ab51da2d4d6a215f01 Mon Sep 17 00:00:00 2001 From: Suraj Date: Mon, 28 Aug 2023 11:24:55 +0530 Subject: [PATCH 31/38] fix: updated config --- .../storybook/.ondevice/storybook.requires.js | 64 +- example/storybook/babel.config.js | 17 +- example/storybook/package.json | 14 +- example/storybook/webpack.config.js_old | 51 - yarn.lock | 993 +++++++----------- 5 files changed, 430 insertions(+), 709 deletions(-) delete mode 100644 example/storybook/webpack.config.js_old diff --git a/example/storybook/.ondevice/storybook.requires.js b/example/storybook/.ondevice/storybook.requires.js index eb4b85e45..49424d0fc 100644 --- a/example/storybook/.ondevice/storybook.requires.js +++ b/example/storybook/.ondevice/storybook.requires.js @@ -6,32 +6,32 @@ import { addParameters, addArgsEnhancer, clearDecorators, -} from "@storybook/react-native"; +} from '@storybook/react-native'; global.STORIES = [ { - titlePrefix: "", - directory: "./src", - files: "**/*.stories.?(ts|tsx|js|jsx)", + titlePrefix: '', + directory: './src', + files: '**/*.stories.?(ts|tsx|js|jsx)', importPathMatcher: - "^\\.[\\\\/](?:src(?:\\/(?!\\.)(?:(?:(?!(?:^|\\/)\\.).)*?)\\/|\\/|$)(?!\\.)(?=.)[^/]*?\\.stories\\.(?:ts|tsx|js|jsx)?)$", + '^\\.[\\\\/](?:src(?:\\/(?!\\.)(?:(?:(?!(?:^|\\/)\\.).)*?)\\/|\\/|$)(?!\\.)(?=.)[^/]*?\\.stories\\.(?:ts|tsx|js|jsx)?)$', }, ]; -import "@storybook/addon-ondevice-notes/register"; -import "@storybook/addon-ondevice-controls/register"; -import "@storybook/addon-ondevice-backgrounds/register"; -import "@storybook/addon-ondevice-actions/register"; +import '@storybook/addon-ondevice-notes/register'; +import '@storybook/addon-ondevice-controls/register'; +import '@storybook/addon-ondevice-backgrounds/register'; +import '@storybook/addon-ondevice-actions/register'; -import { argsEnhancers } from "@storybook/addon-actions/dist/modern/preset/addArgs"; +import { argsEnhancers } from '@storybook/addon-actions/dist/modern/preset/addArgs'; -import { decorators, parameters } from "./preview"; +import { decorators, parameters } from './preview'; if (decorators) { if (__DEV__) { // stops the warning from showing on every HMR - require("react-native").LogBox.ignoreLogs([ - "`clearDecorators` is deprecated and will be removed in Storybook 7.0", + require('react-native').LogBox.ignoreLogs([ + '`clearDecorators` is deprecated and will be removed in Storybook 7.0', ]); } // workaround for global decorators getting infinitely applied on HMR, see https://github.com/storybookjs/react-native/issues/185 @@ -49,25 +49,25 @@ try { const getStories = () => { return { - "./src/api/AsForwarder/AsForwarder.stories.tsx": require("../src/api/AsForwarder/AsForwarder.stories.tsx"), - "./src/api/ColorModeBasedStyles/ColorMode.stories.tsx": require("../src/api/ColorModeBasedStyles/ColorMode.stories.tsx"), - "./src/api/CompoundVariants/CompoundVarinats.stories.tsx": require("../src/api/CompoundVariants/CompoundVarinats.stories.tsx"), - "./src/api/createStyled/createStyled.stories.tsx": require("../src/api/createStyled/createStyled.stories.tsx"), - "./src/api/DescendantsStyles/ContextBasedStyles.stories.tsx": require("../src/api/DescendantsStyles/ContextBasedStyles.stories.tsx"), - "./src/api/MultipleProvder/MultipleProvider.stories.tsx": require("../src/api/MultipleProvder/MultipleProvider.stories.tsx"), - "./src/api/PlatformBasedStyles/PlatformBasedStyles.stories.tsx": require("../src/api/PlatformBasedStyles/PlatformBasedStyles.stories.tsx"), - "./src/api/PropertyResolver/PropertyResolver.stories.tsx": require("../src/api/PropertyResolver/PropertyResolver.stories.tsx"), - "./src/api/PropsPassing/PropsPassing.stories.tsx": require("../src/api/PropsPassing/PropsPassing.stories.tsx"), - "./src/api/ResponsiveStyles/ResponsiveStyles.stories.tsx": require("../src/api/ResponsiveStyles/ResponsiveStyles.stories.tsx"), - "./src/api/Specificity/Specificity.stories.tsx": require("../src/api/Specificity/Specificity.stories.tsx"), - "./src/api/StateBasesStyles/ButtonStateProps.stories.tsx": require("../src/api/StateBasesStyles/ButtonStateProps.stories.tsx"), - "./src/api/SxStyleResolution/SxStyleResolution.stories.tsx": require("../src/api/SxStyleResolution/SxStyleResolution.stories.tsx"), - "./src/api/Typescript/Typescript.stories.tsx": require("../src/api/Typescript/Typescript.stories.tsx"), - "./src/api/UtilityFunctions/UtilityFunctions.stories.tsx": require("../src/api/UtilityFunctions/UtilityFunctions.stories.tsx"), - "./src/api/Variants/BaseStyleVariantSizes.stories.tsx": require("../src/api/Variants/BaseStyleVariantSizes.stories.tsx"), - "./src/plugins/AnimationPlugin/Animation.stories.tsx": require("../src/plugins/AnimationPlugin/Animation.stories.tsx"), - "./src/plugins/CSSVariables/CSSVariables.stories.tsx": require("../src/plugins/CSSVariables/CSSVariables.stories.tsx"), - "./src/plugins/FontsPlugin/FontsPlugin.stories.tsx": require("../src/plugins/FontsPlugin/FontsPlugin.stories.tsx"), + // "./src/api/AsForwarder/AsForwarder.stories.tsx": require("../src/api/AsForwarder/AsForwarder.stories.tsx"), + // "./src/api/ColorModeBasedStyles/ColorMode.stories.tsx": require("../src/api/ColorModeBasedStyles/ColorMode.stories.tsx"), + // "./src/api/CompoundVariants/CompoundVarinats.stories.tsx": require("../src/api/CompoundVariants/CompoundVarinats.stories.tsx"), + // "./src/api/createStyled/createStyled.stories.tsx": require("../src/api/createStyled/createStyled.stories.tsx"), + './src/api/DescendantsStyles/ContextBasedStyles.stories.tsx': require('../src/api/DescendantsStyles/ContextBasedStyles.stories.tsx'), + // "./src/api/MultipleProvder/MultipleProvider.stories.tsx": require("../src/api/MultipleProvder/MultipleProvider.stories.tsx"), + // "./src/api/PlatformBasedStyles/PlatformBasedStyles.stories.tsx": require("../src/api/PlatformBasedStyles/PlatformBasedStyles.stories.tsx"), + // "./src/api/PropertyResolver/PropertyResolver.stories.tsx": require("../src/api/PropertyResolver/PropertyResolver.stories.tsx"), + // "./src/api/PropsPassing/PropsPassing.stories.tsx": require("../src/api/PropsPassing/PropsPassing.stories.tsx"), + // "./src/api/ResponsiveStyles/ResponsiveStyles.stories.tsx": require("../src/api/ResponsiveStyles/ResponsiveStyles.stories.tsx"), + // "./src/api/Specificity/Specificity.stories.tsx": require("../src/api/Specificity/Specificity.stories.tsx"), + // "./src/api/StateBasesStyles/ButtonStateProps.stories.tsx": require("../src/api/StateBasesStyles/ButtonStateProps.stories.tsx"), + // "./src/api/SxStyleResolution/SxStyleResolution.stories.tsx": require("../src/api/SxStyleResolution/SxStyleResolution.stories.tsx"), + // "./src/api/Typescript/Typescript.stories.tsx": require("../src/api/Typescript/Typescript.stories.tsx"), + // "./src/api/UtilityFunctions/UtilityFunctions.stories.tsx": require("../src/api/UtilityFunctions/UtilityFunctions.stories.tsx"), + // "./src/api/Variants/BaseStyleVariantSizes.stories.tsx": require("../src/api/Variants/BaseStyleVariantSizes.stories.tsx"), + // "./src/plugins/AnimationPlugin/Animation.stories.tsx": require("../src/plugins/AnimationPlugin/Animation.stories.tsx"), + // "./src/plugins/CSSVariables/CSSVariables.stories.tsx": require("../src/plugins/CSSVariables/CSSVariables.stories.tsx"), + // "./src/plugins/FontsPlugin/FontsPlugin.stories.tsx": require("../src/plugins/FontsPlugin/FontsPlugin.stories.tsx"), }; }; diff --git a/example/storybook/babel.config.js b/example/storybook/babel.config.js index 3ea81068b..71753cb4a 100644 --- a/example/storybook/babel.config.js +++ b/example/storybook/babel.config.js @@ -11,15 +11,14 @@ module.exports = function (api) { { alias: { // For development, we want to alias the library to the source - ['@gluestack-style/react']: path.join( - __dirname, - '../../packages/react/src' - ), - ['@gluestack-style/animation-plugin']: path.join( - __dirname, - '../../packages/animation-plugin/src' - ), - + // ['@gluestack-style/react']: path.join( + // __dirname, + // '../../packages/react/src' + // ), + // ['@gluestack-style/animation-plugin']: path.join( + // __dirname, + // '../../packages/animation-plugin/src' + // ), // ['@dank-style/react']: path.join( // __dirname, // '../../packages/react/src' diff --git a/example/storybook/package.json b/example/storybook/package.json index eee5227a5..c513c2b29 100644 --- a/example/storybook/package.json +++ b/example/storybook/package.json @@ -44,13 +44,15 @@ "@react-native-community/slider": "4.2.4", "@react-stately/collections": "^3.6.0", "@react-stately/tree": "^3.5.0", - "expo": "^47.0.0", + "expo": "48", "expo-linear-gradient": "~12.0.1", "expo-status-bar": "~1.4.2", "fs": "^0.0.1-security", "lucide-react-native": "^0.236.0", + "next": "^13.4.19", "prism-react-renderer": "^1.3.5", "react": "^18.2.0", + "react-native": "0.71.11", "react-native-safe-area-context": "^4.4.1", "react-native-svg": "13.4.0", "react-native-web": "^0.19.7", @@ -72,14 +74,14 @@ "@storybook/addon-docs": "^6.5.15", "@storybook/addon-essentials": "^6.5.14", "@storybook/addon-links": "^6.5.14", - "@storybook/addon-ondevice-actions": "next", - "@storybook/addon-ondevice-backgrounds": "next", - "@storybook/addon-ondevice-controls": "next", - "@storybook/addon-ondevice-notes": "next", + "@storybook/addon-ondevice-actions": "6.5.0-rc.12", + "@storybook/addon-ondevice-backgrounds": "6.5.0-rc.12", + "@storybook/addon-ondevice-controls": "6.5.0-rc.12", + "@storybook/addon-ondevice-notes": "6.5.0-rc.12", "@storybook/addon-react-native-web": "^0.0.19", "@storybook/client-api": "^6.5.15", "@storybook/react": "^6.5.14", - "@storybook/react-native": "next", + "@storybook/react-native": "6.5.0-rc.12", "@types/react": "^18.0.27", "@types/react-native": "~0.70.6", "babel-loader": "^8.2.3", diff --git a/example/storybook/webpack.config.js_old b/example/storybook/webpack.config.js_old deleted file mode 100644 index 7e433e8ae..000000000 --- a/example/storybook/webpack.config.js_old +++ /dev/null @@ -1,51 +0,0 @@ -const path = require('path'); -const createExpoWebpackConfigAsync = require('@expo/webpack-config'); -const { resolver } = require('./metro.config'); -const findWorkspaceRoot = require('find-yarn-workspace-root'); - -// Find the workspace root, this can be replaced with `find-yarn-workspace-root` -// const workspaceRoot = path.resolve(__dirname, "../../.."); - -const workspaceRoot = findWorkspaceRoot(__dirname); - -const styledRoot = path.resolve(__dirname, '../../packages/react/src'); - -const animationPluginRoot = path.resolve( - __dirname, - '../../packages/animation-plugin/src' -); - -const node_modules = path.join(workspaceRoot, 'node_modules'); -// const designSystem = path.resolve(__dirname, "../../../glustack-design-system"); -module.exports = async function (env, argv) { - const config = await createExpoWebpackConfigAsync(env, argv); - - config.module.rules.push({ - test: /\.(js|ts|tsx)$/, - include: [ - path.resolve(styledRoot, 'src'), - path.resolve(animationPluginRoot, 'src'), - // path.resolve(designSystem, "src"), - ], - use: 'babel-loader', - }); - - // We need to make sure that only one version is loaded for peerDependencies - // So we alias them to the versions in example's node_modules - Object.assign(config.resolve.alias, { - ...resolver.extraNodeModules, - 'react-native-web': path.join(node_modules, 'react-native-web'), - // '@dank-style/react': path.join(node_modules, '@gluestack-style/react'), - }); - - // Maybe you want to turn off compression in dev mode. - if (config.mode === 'development') { - config.devServer.compress = false; - } - // Or prevent minimizing the bundle when you build. - if (config.mode === 'production') { - config.optimization.minimize = false; - } - - return config; -}; diff --git a/yarn.lock b/yarn.lock index ab321a6d5..4d2c2d537 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1304,7 +1304,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.0", "@babel/runtime@^7.17.8", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.6", "@babel/runtime@^7.20.0", "@babel/runtime@^7.20.1", "@babel/runtime@^7.20.7", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.0", "@babel/runtime@^7.17.8", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.6", "@babel/runtime@^7.20.0", "@babel/runtime@^7.20.1", "@babel/runtime@^7.20.7", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": version "7.22.11" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.11.tgz#7a9ba3bbe406ad6f9e8dd4da2ece453eb23a77a4" integrity sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA== @@ -1767,6 +1767,16 @@ source-map "^0.5.7" stylis "4.2.0" +"@emotion/cache@^10.0.27": + version "10.0.29" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-10.0.29.tgz#87e7e64f412c060102d589fe7c6dc042e6f9d1e0" + integrity sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ== + dependencies: + "@emotion/sheet" "0.9.4" + "@emotion/stylis" "0.8.5" + "@emotion/utils" "0.11.3" + "@emotion/weak-memoize" "0.2.5" + "@emotion/cache@^11.11.0": version "11.11.0" resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.11.0.tgz#809b33ee6b1cb1a625fef7a45bc568ccd9b8f3ff" @@ -1778,6 +1788,32 @@ "@emotion/weak-memoize" "^0.3.1" stylis "4.2.0" +"@emotion/core@^10.0.20": + version "10.3.1" + resolved "https://registry.yarnpkg.com/@emotion/core/-/core-10.3.1.tgz#4021b6d8b33b3304d48b0bb478485e7d7421c69d" + integrity sha512-447aUEjPIm0MnE6QYIaFz9VQOHSXf4Iu6EWOIqq11EAPqinkSZmfymPTmlOE3QjLv846lH4JVZBUOtwGbuQoww== + dependencies: + "@babel/runtime" "^7.5.5" + "@emotion/cache" "^10.0.27" + "@emotion/css" "^10.0.27" + "@emotion/serialize" "^0.11.15" + "@emotion/sheet" "0.9.4" + "@emotion/utils" "0.11.3" + +"@emotion/css@^10.0.27": + version "10.0.27" + resolved "https://registry.yarnpkg.com/@emotion/css/-/css-10.0.27.tgz#3a7458198fbbebb53b01b2b87f64e5e21241e14c" + integrity sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw== + dependencies: + "@emotion/serialize" "^0.11.15" + "@emotion/utils" "0.11.3" + babel-plugin-emotion "^10.0.27" + +"@emotion/hash@0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413" + integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow== + "@emotion/hash@^0.9.1": version "0.9.1" resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43" @@ -1790,11 +1826,30 @@ dependencies: "@emotion/memoize" "^0.8.1" +"@emotion/memoize@0.7.4": + version "0.7.4" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.4.tgz#19bf0f5af19149111c40d98bb0cf82119f5d9eeb" + integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== + "@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/native@^10.0.14": + version "10.0.27" + resolved "https://registry.yarnpkg.com/@emotion/native/-/native-10.0.27.tgz#67c2c0ceeeed873c849c611d9a6497a006d43a8f" + integrity sha512-3qxR2XFizGfABKKbX9kAYc0PHhKuCEuyxshoq3TaMEbi9asWHdQVChg32ULpblm4XAf9oxaitAU7J9SfdwFxtw== + dependencies: + "@emotion/primitives-core" "10.0.27" + +"@emotion/primitives-core@10.0.27": + version "10.0.27" + resolved "https://registry.yarnpkg.com/@emotion/primitives-core/-/primitives-core-10.0.27.tgz#7a5fae07fe06a046ced597f5c0048f22d5c45842" + integrity sha512-fRBEDNPSFFOrBJ0OcheuElayrNTNdLF9DzMxtL0sFgsCFvvadlzwJHhJMSwEJuxwARm9GhVLr1p8G8JGkK98lQ== + dependencies: + css-to-react-native "^2.2.1" + "@emotion/react@^11.4.0": version "11.11.1" resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157" @@ -1809,6 +1864,17 @@ "@emotion/weak-memoize" "^0.3.1" hoist-non-react-statics "^3.3.1" +"@emotion/serialize@^0.11.15", "@emotion/serialize@^0.11.16": + version "0.11.16" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-0.11.16.tgz#dee05f9e96ad2fb25a5206b6d759b2d1ed3379ad" + integrity sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg== + dependencies: + "@emotion/hash" "0.8.0" + "@emotion/memoize" "0.7.4" + "@emotion/unitless" "0.7.5" + "@emotion/utils" "0.11.3" + csstype "^2.5.7" + "@emotion/serialize@^1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51" @@ -1820,6 +1886,11 @@ "@emotion/utils" "^1.2.1" csstype "^3.0.2" +"@emotion/sheet@0.9.4": + version "0.9.4" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-0.9.4.tgz#894374bea39ec30f489bbfc3438192b9774d32e5" + integrity sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA== + "@emotion/sheet@^1.2.2": version "1.2.2" resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.2.tgz#d58e788ee27267a14342303e1abb3d508b6d0fec" @@ -1837,12 +1908,12 @@ "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1" "@emotion/utils" "^1.2.1" -"@emotion/stylis@^0.8.4": +"@emotion/stylis@0.8.5", "@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": +"@emotion/unitless@0.7.5", "@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== @@ -1852,131 +1923,31 @@ resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3" integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== -"@emotion/use-insertion-effect-with-fallbacks@^1.0.0", "@emotion/use-insertion-effect-with-fallbacks@^1.0.1": +"@emotion/use-insertion-effect-with-fallbacks@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963" integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw== +"@emotion/utils@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-0.11.3.tgz#a759863867befa7e583400d322652a3f44820924" + integrity sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw== + "@emotion/utils@^1.2.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4" integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg== +"@emotion/weak-memoize@0.2.5": + version "0.2.5" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46" + integrity sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA== + "@emotion/weak-memoize@^0.3.1": version "0.3.1" resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz#d0fce5d07b0620caa282b5131c297bb60f9d87e6" integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww== -"@esbuild/android-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz#984b4f9c8d0377443cc2dfcef266d02244593622" - integrity sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ== - -"@esbuild/android-arm@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.18.20.tgz#fedb265bc3a589c84cc11f810804f234947c3682" - integrity sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw== - -"@esbuild/android-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.18.20.tgz#35cf419c4cfc8babe8893d296cd990e9e9f756f2" - integrity sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg== - -"@esbuild/darwin-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz#08172cbeccf95fbc383399a7f39cfbddaeb0d7c1" - integrity sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA== - -"@esbuild/darwin-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz#d70d5790d8bf475556b67d0f8b7c5bdff053d85d" - integrity sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ== - -"@esbuild/freebsd-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz#98755cd12707f93f210e2494d6a4b51b96977f54" - integrity sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw== - -"@esbuild/freebsd-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz#c1eb2bff03915f87c29cece4c1a7fa1f423b066e" - integrity sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ== - -"@esbuild/linux-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz#bad4238bd8f4fc25b5a021280c770ab5fc3a02a0" - integrity sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA== - -"@esbuild/linux-arm@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz#3e617c61f33508a27150ee417543c8ab5acc73b0" - integrity sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg== - -"@esbuild/linux-ia32@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz#699391cccba9aee6019b7f9892eb99219f1570a7" - integrity sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA== - -"@esbuild/linux-loong64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz#e6fccb7aac178dd2ffb9860465ac89d7f23b977d" - integrity sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg== - -"@esbuild/linux-mips64el@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz#eeff3a937de9c2310de30622a957ad1bd9183231" - integrity sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ== - -"@esbuild/linux-ppc64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz#2f7156bde20b01527993e6881435ad79ba9599fb" - integrity sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA== - -"@esbuild/linux-riscv64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz#6628389f210123d8b4743045af8caa7d4ddfc7a6" - integrity sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A== - -"@esbuild/linux-s390x@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz#255e81fb289b101026131858ab99fba63dcf0071" - integrity sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ== - -"@esbuild/linux-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz#c7690b3417af318a9b6f96df3031a8865176d338" - integrity sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w== - -"@esbuild/netbsd-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz#30e8cd8a3dded63975e2df2438ca109601ebe0d1" - integrity sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A== - -"@esbuild/openbsd-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz#7812af31b205055874c8082ea9cf9ab0da6217ae" - integrity sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg== - -"@esbuild/sunos-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz#d5c275c3b4e73c9b0ecd38d1ca62c020f887ab9d" - integrity sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ== - -"@esbuild/win32-arm64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz#73bc7f5a9f8a77805f357fab97f290d0e4820ac9" - integrity sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg== - -"@esbuild/win32-ia32@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz#ec93cbf0ef1085cc12e71e0d661d20569ff42102" - integrity sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g== - -"@esbuild/win32-x64@0.18.20": - version "0.18.20" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz#786c5f41f043b07afb1af37683d7c33668858f6d" - integrity sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ== - "@eslint-community/eslint-utils@^4.2.0": version "4.4.0" resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" @@ -2019,10 +1990,10 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@^8.47.0": - version "8.47.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.47.0.tgz#5478fdf443ff8158f9de171c704ae45308696c7d" - integrity sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og== +"@eslint/js@8.48.0": + version "8.48.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.48.0.tgz#642633964e217905436033a2bd08bf322849b7fb" + integrity sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw== "@expo-google-fonts/inter@^0.2.3": version "0.2.3" @@ -3216,9 +3187,9 @@ "@gluestack-ui/utils" "^0.1.5" "@gluestack/design-system@^0.4.68": - version "0.4.68" - resolved "https://registry.yarnpkg.com/@gluestack/design-system/-/design-system-0.4.68.tgz#6356cc4c7c4d17a8e71d582f0d0503c17d78dc67" - integrity sha512-/5fDIM31F+fVr+x3Re8IHVxIYr2Cu/xBURTIeHBtCSu3xx+5KL+r+eglcAc+thYajQEq20t0lBEbrUbg8RrO9w== + version "0.4.69" + resolved "https://registry.yarnpkg.com/@gluestack/design-system/-/design-system-0.4.69.tgz#dc4dca4a5a1b92a9c5fac833c60bce22cdb6d263" + integrity sha512-QPlXWGISRguff7bvV4yc6Y6FAHF5B1ITkhXIDGQWsShVrV/c4NIvCE8HkXQqOzqoVkWTe73gKDX06TS5MAcAaw== dependencies: "@expo/html-elements" "0.3.0" "@gluestack-style/animation-plugin" "^0.1.7" @@ -3371,18 +3342,6 @@ dependencies: "@swc/helpers" "^0.5.0" -"@isaacs/cliui@^8.0.2": - version "8.0.2" - resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" - integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== - dependencies: - string-width "^5.1.2" - string-width-cjs "npm:string-width@^4.2.0" - strip-ansi "^7.0.1" - strip-ansi-cjs "npm:strip-ansi@^6.0.1" - wrap-ansi "^8.1.0" - wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" - "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" @@ -4114,11 +4073,6 @@ resolved "https://registry.yarnpkg.com/@opentelemetry/context-base/-/context-base-0.14.0.tgz#c67fc20a4d891447ca1a855d7d70fa79a3533001" integrity sha512-sDOAZcYwynHFTbLo6n8kIbLiVF3a3BLkrmehJUyEbT9F+Smbi47kLGS2gG2g0fjBLR/Lr1InPD7kXL7FaTqEkw== -"@pkgjs/parseargs@^0.11.0": - version "0.11.0" - resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" - integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== - "@pmmmwh/react-refresh-webpack-plugin@^0.5.3": version "0.5.11" resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.11.tgz#7c2268cedaa0644d677e8c4f377bc8fb304f714a" @@ -4690,7 +4644,7 @@ dependencies: serve-static "^1.13.1" -"@react-native-community/cli-doctor@^10.2.2": +"@react-native-community/cli-doctor@^10.2.2", "@react-native-community/cli-doctor@^10.2.4": version "10.2.5" resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-10.2.5.tgz#e5e28c66c2373f05a94b296a8ec637f8df736707" integrity sha512-1YbzXvsldBmSw1MmBsXB74bKiHXKNCjlb2ByLgkfTiarpSvETYam3g5vex0N+qc0Cdkzkq+8NznE744LFhnUpw== @@ -4805,6 +4759,18 @@ glob "^7.1.3" ora "^5.4.1" +"@react-native-community/cli-platform-ios@10.2.4": + version "10.2.4" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-10.2.4.tgz#6af05cd4258438422a3a50d1c0cc757acd6be375" + integrity sha512-/6K+jeRhcGojFIJMWMXV2eY5n/In+YUzBr/DKWQOeHBOHkESRNheG310xSAIjgB46YniSSUKhSyeuhalTbm9OQ== + dependencies: + "@react-native-community/cli-tools" "^10.1.1" + chalk "^4.1.2" + execa "^1.0.0" + fast-xml-parser "^4.0.12" + glob "^7.1.3" + ora "^5.4.1" + "@react-native-community/cli-platform-ios@9.2.1": version "9.2.1" resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-9.2.1.tgz#d90740472216ffae5527dfc5f49063ede18a621f" @@ -4839,7 +4805,7 @@ glob "^7.1.3" ora "^5.4.1" -"@react-native-community/cli-plugin-metro@^10.2.2": +"@react-native-community/cli-plugin-metro@^10.2.2", "@react-native-community/cli-plugin-metro@^10.2.3": version "10.2.3" resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-10.2.3.tgz#419e0155a50951c3329818fba51cb5021a7294f1" integrity sha512-jHi2oDuTePmW4NEyVT8JEGNlIYcnFXCSV2ZMp4rnDrUk4TzzyvS3IMvDlESEmG8Kry8rvP0KSUx/hTpy37Sbkw== @@ -4969,6 +4935,29 @@ prompts "^2.4.0" semver "^6.3.0" +"@react-native-community/cli@10.2.4": + version "10.2.4" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-10.2.4.tgz#c6afe723055d430061a32bd31644fc56eb9ba330" + integrity sha512-E9BUDHfLEsnjkjeJqECuCjl4E/1Ox9Nl6hkQBhEqjZm4AaQxgU7M6AyFfOgaXn5v3am16/R4ZOUTrJnGJWS3GA== + dependencies: + "@react-native-community/cli-clean" "^10.1.1" + "@react-native-community/cli-config" "^10.1.1" + "@react-native-community/cli-debugger-ui" "^10.0.0" + "@react-native-community/cli-doctor" "^10.2.4" + "@react-native-community/cli-hermes" "^10.2.0" + "@react-native-community/cli-plugin-metro" "^10.2.3" + "@react-native-community/cli-server-api" "^10.1.1" + "@react-native-community/cli-tools" "^10.1.1" + "@react-native-community/cli-types" "^10.0.0" + chalk "^4.1.2" + commander "^9.4.1" + execa "^1.0.0" + find-up "^4.1.0" + fs-extra "^8.1.0" + graceful-fs "^4.1.3" + prompts "^2.4.0" + semver "^6.3.0" + "@react-native-community/cli@9.2.1": version "9.2.1" resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-9.2.1.tgz#15cc32531fc323d4232d57b1f2d7c571816305ac" @@ -5918,37 +5907,35 @@ core-js "^3.8.2" global "^4.4.0" -"@storybook/addon-ondevice-actions@next": - version "7.0.0-alpha.5" - resolved "https://registry.yarnpkg.com/@storybook/addon-ondevice-actions/-/addon-ondevice-actions-7.0.0-alpha.5.tgz#126becec4fad691e572781416b3444e4580d8da1" - integrity sha512-YCoJ3tuZwYlKip9SjjhFf5KZ6ssQzOub3ePC1HJlzg8hS1gZLPr4yihopeu4TtDG7+nk3c+P2jIwu1VGpMrhHg== +"@storybook/addon-ondevice-actions@6.5.0-rc.12": + version "6.5.0-rc.12" + resolved "https://registry.yarnpkg.com/@storybook/addon-ondevice-actions/-/addon-ondevice-actions-6.5.0-rc.12.tgz#fd01abc550036ee332c926789436566c52c7a018" + integrity sha512-y/nwa/CZhp2j9+SuBHJR7iLRZJdi4L1aVoNPep9fjZt99cgYKg/NJbMXj6k9hhIpNEBKvEWwHoIeH2KzFS6Duw== dependencies: - "@storybook/core-events" "^7" - "@storybook/manager-api" "^7" + "@storybook/addons" "^6.5.14" + "@storybook/core-events" "^6.5.14" fast-deep-equal "^2.0.1" -"@storybook/addon-ondevice-backgrounds@next": - version "7.0.0-alpha.5" - resolved "https://registry.yarnpkg.com/@storybook/addon-ondevice-backgrounds/-/addon-ondevice-backgrounds-7.0.0-alpha.5.tgz#bdbd267d7c0c626117f86c04bdce4b6d3b3e8d80" - integrity sha512-tu1G39eLREfozV0E8F8oi8Gw1tR8GwagAtHJR1Df5wcl8wSRj5m0G6BCami2vw6rEsy7AZvGKqRS6aTgJ6O4ng== +"@storybook/addon-ondevice-backgrounds@6.5.0-rc.12": + version "6.5.0-rc.12" + resolved "https://registry.yarnpkg.com/@storybook/addon-ondevice-backgrounds/-/addon-ondevice-backgrounds-6.5.0-rc.12.tgz#d8f67cc8570a1225e9807e10f31a585e8c529b0a" + integrity sha512-dOB/XYC4Gy+ZEyxmCmDegInkJt5tO6D+yaJFs6CgCmgekEXsQzNFE/uhItxfgueDftJAZeNHlrieLUZpBHk/Tg== dependencies: - "@storybook/api" "^7" - "@storybook/manager-api" "^7" - "@storybook/preview-api" "^7" - "@storybook/react-native-theming" "^7.0.0-alpha.5" + "@storybook/addons" "^6.5.14" + "@storybook/api" "^6.5.14" + "@storybook/client-api" "^6.5.14" core-js "^3.0.1" prop-types "^15.7.2" -"@storybook/addon-ondevice-controls@next": - version "7.0.0-alpha.5" - resolved "https://registry.yarnpkg.com/@storybook/addon-ondevice-controls/-/addon-ondevice-controls-7.0.0-alpha.5.tgz#0af9d34dadf8cd84ebdf80030f2cc656f18e2012" - integrity sha512-kFX4fDgRgKhjsZ2GIpP7qGg3PFct9y8MzotmswmvZ4Qfdv+lFQ41oS1a/zno/g4Y966lR3b4hc/fOJ3bpCBtGQ== +"@storybook/addon-ondevice-controls@6.5.0-rc.12": + version "6.5.0-rc.12" + resolved "https://registry.yarnpkg.com/@storybook/addon-ondevice-controls/-/addon-ondevice-controls-6.5.0-rc.12.tgz#d4606843b82d1a0e7a2cd1d768e6c7abfec4c751" + integrity sha512-2QUGp/EKk3jRwDzkZDA5JxZyKofIoOPStjuM6d72K4Emuetzrg/4ptM3dgHuEhRzU64AA8Do1cHOQmrlycsg0g== dependencies: - "@storybook/channels" "^7" - "@storybook/client-logger" "^7" - "@storybook/core-events" "^7" - "@storybook/manager-api" "^7" - "@storybook/react-native-theming" "^7.0.0-alpha.5" + "@emotion/native" "^10.0.14" + "@storybook/addons" "^6.5.14" + "@storybook/client-logger" "^6.5.14" + "@storybook/core-events" "^6.5.14" core-js "^3.0.1" deep-equal "^1.0.1" prop-types "^15.7.2" @@ -5956,17 +5943,19 @@ react-native-modal-selector "^2.1.1" tinycolor2 "^1.4.1" -"@storybook/addon-ondevice-notes@next": - version "7.0.0-alpha.5" - resolved "https://registry.yarnpkg.com/@storybook/addon-ondevice-notes/-/addon-ondevice-notes-7.0.0-alpha.5.tgz#cb2fea8c35389c8aaf2b3237ba517816baf7bc1b" - integrity sha512-mB4IvdbrZHqmcFo6lsA9P8a1iR63zPz8qmQlb8zMtdFbQf4K8mHQATD9R5j7zbEeKI//DugtRG/tE3BzH/xHnw== +"@storybook/addon-ondevice-notes@6.5.0-rc.12": + version "6.5.0-rc.12" + resolved "https://registry.yarnpkg.com/@storybook/addon-ondevice-notes/-/addon-ondevice-notes-6.5.0-rc.12.tgz#3c98cfc85bdbb780f9fe473aac5d1ebc000b7205" + integrity sha512-/MSkY8eTeXrFteVmrxxQqLQqQUPxvZ/8r+rSRAn2qo1QHXXfeNf5XkW0OVUdagP2B2ouQrQiO4UWGU8hO1mM6g== dependencies: - "@storybook/api" "^7" - "@storybook/client-logger" "^7" - "@storybook/core-events" "^7" - "@storybook/manager-api" "^7" - "@storybook/react-native-theming" "^7.0.0-alpha.5" + "@emotion/core" "^10.0.20" + "@storybook/addons" "^6.5.14" + "@storybook/api" "^6.5.14" + "@storybook/client-api" "^6.5.14" + "@storybook/client-logger" "^6.5.14" + "@storybook/core-events" "^6.5.14" core-js "^3.0.1" + emotion-theming "^10.0.19" prop-types "^15.7.2" simple-markdown "^0.7.3" @@ -6061,14 +6050,6 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/api@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/api/-/api-7.3.2.tgz#9869c971f05f2e249df51f3fac844da32915d291" - integrity sha512-HAiaEl9uFQJM3AC5LhdnUbqr+7BVMaCNzhbUg1sWfO7sTFXPO0P1BAz9UuDKPlndwaVGcGpypRw9P/bdpuWLfA== - dependencies: - "@storybook/client-logger" "7.3.2" - "@storybook/manager-api" "7.3.2" - "@storybook/builder-webpack4@6.5.16": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/builder-webpack4/-/builder-webpack4-6.5.16.tgz#ac468d244835a7f3bd01936398fee47244da35c1" @@ -6135,7 +6116,7 @@ qs "^6.10.0" telejson "^6.0.8" -"@storybook/channel-websocket@6.5.16": +"@storybook/channel-websocket@6.5.16", "@storybook/channel-websocket@^6.5.14": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/channel-websocket/-/channel-websocket-6.5.16.tgz#41f69ca9444a4dfbf72580b4696900c5b1d2b817" integrity sha512-wJg2lpBjmRC2GJFzmhB9kxlh109VE58r/0WhFtLbwKvPqsvGf82xkBEl6BtBCvIQ4stzYnj/XijjA8qSi2zpOg== @@ -6146,15 +6127,7 @@ global "^4.4.0" telejson "^6.0.8" -"@storybook/channel-websocket@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/channel-websocket/-/channel-websocket-7.3.2.tgz#c7f441fb5602d4b831c56db7fab7d3aa05fc50a6" - integrity sha512-/oJm0hamUePPg51udEtMsYUXED8tDE0Du6sAGFfuhMKElvcJ9R9c//w8JaMf00EfgDB3GEZ0RxVMM2PYz9/zAg== - dependencies: - "@storybook/channels" "7.3.2" - "@storybook/client-logger" "7.3.2" - -"@storybook/channels@6.5.16": +"@storybook/channels@6.5.16", "@storybook/channels@^6.5.14": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.5.16.tgz#3fb9a3b5666ecb951a2d0cf8b0699b084ef2d3c6" integrity sha512-VylzaWQZaMozEwZPJdyJoz+0jpDa8GRyaqu9TGG6QGv+KU5POoZaGLDkRE7TzWkyyP0KQLo80K99MssZCpgSeg== @@ -6163,19 +6136,7 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/channels@7.3.2", "@storybook/channels@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-7.3.2.tgz#2126321e7ad70e3fbc33d1544bb09e1fe6ffc5b9" - integrity sha512-GG5+qzv2OZAzXonqUpJR81f2pjKExj7v5MoFJhKYgb3Y+jVYlUzBHBjhQZhuQczP4si418/jvjimvU1PZ4hqcg== - dependencies: - "@storybook/client-logger" "7.3.2" - "@storybook/core-events" "7.3.2" - "@storybook/global" "^5.0.0" - qs "^6.10.0" - telejson "^7.0.3" - tiny-invariant "^1.3.1" - -"@storybook/client-api@6.5.16", "@storybook/client-api@^6.5.15": +"@storybook/client-api@6.5.16", "@storybook/client-api@^6.5.14", "@storybook/client-api@^6.5.15": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.5.16.tgz#13e5a7c3d1f0f951ec4ef51cfcf2c5aafb560e12" integrity sha512-i3UwkzzUFw8I+E6fOcgB5sc4oU2fhvaKnqC1mpd9IYGJ9JN9MnGIaVl3Ko28DtFItu/QabC9JsLIJVripFLktQ== @@ -6201,7 +6162,7 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-logger@6.5.16": +"@storybook/client-logger@6.5.16", "@storybook/client-logger@^6.5.14": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.5.16.tgz#955cc46b389e7151c9eb1585a75e6a0605af61a1" integrity sha512-pxcNaCj3ItDdicPTXTtmYJE3YC1SjxFrBmHcyrN+nffeNyiMuViJdOOZzzzucTUG0wcOOX8jaSyak+nnHg5H1Q== @@ -6209,13 +6170,6 @@ core-js "^3.8.2" global "^4.4.0" -"@storybook/client-logger@7.3.2", "@storybook/client-logger@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-7.3.2.tgz#8c04d07cc3fdce124fa95aafc5413fea0c202345" - integrity sha512-T7q/YS5lPUE6xjz9EUwJ/v+KCd5KU9dl1MQ9RcH7IpM73EtQZeNSuM9/P96uKXZTf0wZOUBTXVlTzKr66ZB/RQ== - dependencies: - "@storybook/global" "^5.0.0" - "@storybook/components@6.5.16", "@storybook/components@^6.5.14": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.5.16.tgz#f8dc51213bc08fe32154be964e1e8b0e2f670ed6" @@ -6230,7 +6184,7 @@ regenerator-runtime "^0.13.7" util-deprecate "^1.0.2" -"@storybook/core-client@6.5.16": +"@storybook/core-client@6.5.16", "@storybook/core-client@^6.5.14": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-6.5.16.tgz#ed2328fd38c6111fe887f6a91b28d9dc2b17092a" integrity sha512-14IRaDrVtKrQ+gNWC0wPwkCNfkZOKghYV/swCUnQX3rP99defsZK8Hc7xHIYoAiOP5+sc3sweRAxgmFiJeQ1Ig== @@ -6256,14 +6210,6 @@ unfetch "^4.2.0" util-deprecate "^1.0.2" -"@storybook/core-client@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/core-client/-/core-client-7.3.2.tgz#905ba380a1116205dc1bc23a866e648bf44a89c0" - integrity sha512-K2jCnjZiUUskFjKUj7m1FTCphIwBv0KPOE5JCd0UR7un1P1G1kdXMctADE6fHosrW73xRrad9CBSyyetUVQQOA== - dependencies: - "@storybook/client-logger" "7.3.2" - "@storybook/preview-api" "7.3.2" - "@storybook/core-common@6.5.16": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-6.5.16.tgz#db80aa6f220a576a83db821f720e103190a914ae" @@ -6320,34 +6266,6 @@ util-deprecate "^1.0.2" webpack "4" -"@storybook/core-common@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/core-common/-/core-common-7.3.2.tgz#82816a6d7a9b7d07a229d287d6a8b16aa41ec10a" - integrity sha512-W+X7JXV0UmHuUl9xSF/xzz1+P7VM8xHt7ORfp8yrtJRwLHURqHvFFQC+NUHBKno1Ydtt/Uch7QNOWUlQKmiWEw== - dependencies: - "@storybook/node-logger" "7.3.2" - "@storybook/types" "7.3.2" - "@types/find-cache-dir" "^3.2.1" - "@types/node" "^16.0.0" - "@types/node-fetch" "^2.6.4" - "@types/pretty-hrtime" "^1.0.0" - chalk "^4.1.0" - esbuild "^0.18.0" - esbuild-register "^3.4.0" - file-system-cache "2.3.0" - find-cache-dir "^3.0.0" - find-up "^5.0.0" - fs-extra "^11.1.0" - glob "^10.0.0" - handlebars "^4.7.7" - lazy-universal-dotenv "^4.0.0" - node-fetch "^2.0.0" - picomatch "^2.3.0" - pkg-dir "^5.0.0" - pretty-hrtime "^1.0.3" - resolve-from "^5.0.0" - ts-dedent "^2.0.0" - "@storybook/core-events@6.5.16", "@storybook/core-events@^6.5.14": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.5.16.tgz#b1c265dac755007dae172d9d4b72656c9e5d7bb3" @@ -6355,11 +6273,6 @@ dependencies: core-js "^3.8.2" -"@storybook/core-events@7.3.2", "@storybook/core-events@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-7.3.2.tgz#9d18df7ceb6901225218e538a3d1d720a2f49b46" - integrity sha512-DCrM3s+sxLKS8vl0zB+1tZEtcl5XQTOGl46XgRRV/SIBabFbsC0l5pQPswWkTUsIqdREtiT0YUHcXB1+YDyFvA== - "@storybook/core-server@6.5.16": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/core-server/-/core-server-6.5.16.tgz#f40de3413de49388129d29c74e5e48321af03f12" @@ -6446,13 +6359,6 @@ dependencies: lodash "^4.17.15" -"@storybook/csf@^0.1.0", "@storybook/csf@^0.1.1": - version "0.1.1" - resolved "https://registry.yarnpkg.com/@storybook/csf/-/csf-0.1.1.tgz#abccc8c3e49aed0a6a7e87beb0d1c262b1921c06" - integrity sha512-4hE3AlNVxR60Wc5KSC68ASYzUobjPqtSKyhV6G+ge0FIXU55N5nTY7dXGRZHQGDBPq+XqchMkIdlkHPRs8nTHg== - dependencies: - type-fest "^2.19.0" - "@storybook/docs-tools@6.5.16": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/docs-tools/-/docs-tools-6.5.16.tgz#1ec5433eeab63a214d37ffc4660cdaec9704ac39" @@ -6471,27 +6377,6 @@ resolved "https://registry.yarnpkg.com/@storybook/global/-/global-5.0.0.tgz#b793d34b94f572c1d7d9e0f44fac4e0dbc9572ed" integrity sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ== -"@storybook/manager-api@7.3.2", "@storybook/manager-api@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/manager-api/-/manager-api-7.3.2.tgz#8228ce35cfc0f304e3a1c51bec3d3e0d01427a1a" - integrity sha512-EEosLcc+CPLjorLf2+rGLBW0sH0SHVcB1yClLIzKM5Wt8Cl/0l19wNtGMooE/28SDLA4DPIl4WDnP83wRE1hsg== - dependencies: - "@storybook/channels" "7.3.2" - "@storybook/client-logger" "7.3.2" - "@storybook/core-events" "7.3.2" - "@storybook/csf" "^0.1.0" - "@storybook/global" "^5.0.0" - "@storybook/router" "7.3.2" - "@storybook/theming" "7.3.2" - "@storybook/types" "7.3.2" - dequal "^2.0.2" - lodash "^4.17.21" - memoizerific "^1.11.3" - semver "^7.3.7" - store2 "^2.14.2" - telejson "^7.0.3" - ts-dedent "^2.0.0" - "@storybook/manager-webpack4@6.5.16": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/manager-webpack4/-/manager-webpack4-6.5.16.tgz#7033228d38f048ceff3d403ba918d7f206b926a5" @@ -6561,11 +6446,6 @@ npmlog "^5.0.1" pretty-hrtime "^1.0.3" -"@storybook/node-logger@7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-7.3.2.tgz#c8fea7b87d63c7b50757646af990d7cf13f7c71e" - integrity sha512-XCCYiLa5mQ7KeDQcZ4awlyWDmtxJHLIJeedvXx29JUNztUjgwyon9rlNvxtxtGj6171zgn9MERFh920WyJOOOQ== - "@storybook/postinstall@6.5.16": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-6.5.16.tgz#20aa02fd4513fa0b60ed838b413c46f351f64f60" @@ -6573,27 +6453,7 @@ dependencies: core-js "^3.8.2" -"@storybook/preview-api@7.3.2", "@storybook/preview-api@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/preview-api/-/preview-api-7.3.2.tgz#75701e7d27cb804c2e30403ce9d001ea8cb2022a" - integrity sha512-exQrWQQLwf/nXB6OEuQScygN5iO914iNQAvicaJ7mrX9L1ypIq1PpXgJR3mSezBd9dhOMBP/BMy1Zck/wBEL9A== - dependencies: - "@storybook/channels" "7.3.2" - "@storybook/client-logger" "7.3.2" - "@storybook/core-events" "7.3.2" - "@storybook/csf" "^0.1.0" - "@storybook/global" "^5.0.0" - "@storybook/types" "7.3.2" - "@types/qs" "^6.9.5" - dequal "^2.0.2" - lodash "^4.17.21" - memoizerific "^1.11.3" - qs "^6.10.0" - synchronous-promise "^2.0.15" - ts-dedent "^2.0.0" - util-deprecate "^1.0.2" - -"@storybook/preview-web@6.5.16": +"@storybook/preview-web@6.5.16", "@storybook/preview-web@^6.5.14": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/preview-web/-/preview-web-6.5.16.tgz#1d32a72be25776f9597e33ffc1914f3430fae689" integrity sha512-IJnvfe2sKCfk7apN9Fu9U8qibbarrPX5JB55ZzK1amSHVmSDuYk5MIMc/U3NnSQNnvd1DO5v/zMcGgj563hrtg== @@ -6615,14 +6475,6 @@ unfetch "^4.2.0" util-deprecate "^1.0.2" -"@storybook/preview-web@^7": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/preview-web/-/preview-web-7.3.2.tgz#b0f907a885857b6b896f3b77e8d80ee234a14aaf" - integrity sha512-Hg8h5ulZvxQSysX9lhOOlvQohr7rzt+kVs53W7qf9cg4jvGFufXOx+uYxoQCx1g77iwBMIu+najvmMaV+CcOaA== - dependencies: - "@storybook/client-logger" "7.3.2" - "@storybook/preview-api" "7.3.2" - "@storybook/react-docgen-typescript-plugin@1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0": version "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" resolved "https://registry.yarnpkg.com/@storybook/react-docgen-typescript-plugin/-/react-docgen-typescript-plugin-1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0.tgz#3103532ff494fb7dc3cf835f10740ecf6a26c0f9" @@ -6636,32 +6488,28 @@ react-docgen-typescript "^2.1.1" tslib "^2.0.0" -"@storybook/react-native-theming@^7.0.0-alpha.5": - version "7.0.0-alpha.5" - resolved "https://registry.yarnpkg.com/@storybook/react-native-theming/-/react-native-theming-7.0.0-alpha.5.tgz#4f8097c54015196ade0d766cc789dd872a564120" - integrity sha512-EPrBuOpQuoDWmoztsLfyDrb8M7CvyypJn5O8yABe1gMlk/8zw5uAFcl791uR8m21Pp1ze6SrLPWB/MMJe+EY3Q== - -"@storybook/react-native@next": - version "7.0.0-alpha.5" - resolved "https://registry.yarnpkg.com/@storybook/react-native/-/react-native-7.0.0-alpha.5.tgz#e3903dd2df1b7c4365246fad986bfe19e2cbc477" - integrity sha512-YoyXC5pnVj/agEk8EWuqsjJ/z5YaSPP4xXEzxkRaFB2m4V96nO1S9+Y8nWnrONZs7o8DbfMjf6UtFSj1Zfbqbg== - dependencies: - "@storybook/channel-websocket" "^7" - "@storybook/channels" "^7" - "@storybook/client-logger" "^7" - "@storybook/core-client" "^7" - "@storybook/core-common" "^7" - "@storybook/core-events" "^7" - "@storybook/csf" "^0.1.1" - "@storybook/global" "^5.0.0" - "@storybook/manager-api" "^7" - "@storybook/preview-api" "^7" - "@storybook/preview-web" "^7" - "@storybook/react-native-theming" "^7.0.0-alpha.5" +"@storybook/react-native@6.5.0-rc.12": + version "6.5.0-rc.12" + resolved "https://registry.yarnpkg.com/@storybook/react-native/-/react-native-6.5.0-rc.12.tgz#f47ba6d25019cba5f8a5260e2cd04953cf2b65e2" + integrity sha512-EgeiYH0HYKpYCy+hCtiHQPngJ37lVRm4GRbvvgV6SFBYZAaOA/AVMuvkk7GA+ptm8bnLdSQiIP2JisN+3UDiqw== + dependencies: + "@emotion/core" "^10.0.20" + "@emotion/native" "^10.0.14" + "@storybook/addons" "^6.5.14" + "@storybook/channel-websocket" "^6.5.14" + "@storybook/channels" "^6.5.14" + "@storybook/client-api" "^6.5.14" + "@storybook/client-logger" "^6.5.14" + "@storybook/core-client" "^6.5.14" + "@storybook/core-events" "^6.5.14" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/preview-web" "^6.5.14" chokidar "^3.5.1" commander "^8.2.0" deepmerge "^4.3.0" + emotion-theming "^10.0.19" glob "^7.1.7" + jotai "^2.0.2" prettier "^2.4.1" react-native-swipe-gestures "^1.0.5" util "^0.12.4" @@ -6718,15 +6566,6 @@ qs "^6.10.0" regenerator-runtime "^0.13.7" -"@storybook/router@7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/router/-/router-7.3.2.tgz#6f59996c67bd22c57947cf58337979e0730e1e5e" - integrity sha512-J3QPudwCJhdnfqPx9GaNDlnsjJ6JbFta/ypp3EkHntyuuaNBeNP3Aq73DJJY2XMTS2Xdw8tD9Y9Y9gCFHJXMDQ== - dependencies: - "@storybook/client-logger" "7.3.2" - memoizerific "^1.11.3" - qs "^6.10.0" - "@storybook/semver@^7.3.2": version "7.3.2" resolved "https://registry.yarnpkg.com/@storybook/semver/-/semver-7.3.2.tgz#f3b9c44a1c9a0b933c04e66d0048fcf2fa10dac0" @@ -6800,26 +6639,6 @@ memoizerific "^1.11.3" regenerator-runtime "^0.13.7" -"@storybook/theming@7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-7.3.2.tgz#6742697322de78831e5e67567368f82b5969a83d" - integrity sha512-npVsnmNAtqGwl1K7vLC/hcVhL8tBC8G0vdZXEcufF0jHdQmRCUs9ZVrnR6W0LCrtmIHDaDoO7PqJVSzu2wgVxw== - dependencies: - "@emotion/use-insertion-effect-with-fallbacks" "^1.0.0" - "@storybook/client-logger" "7.3.2" - "@storybook/global" "^5.0.0" - memoizerific "^1.11.3" - -"@storybook/types@7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@storybook/types/-/types-7.3.2.tgz#81ca5cf87dcaeb06d99e17e91d7852677a0676b9" - integrity sha512-1UHC1r2J6H9dEpj4pp9a16P1rTL87V9Yc6TtYBpp7m+cxzyIZBRvu1wZFKmRB51RXE/uDaxGRKzfNRfgTALcIQ== - dependencies: - "@storybook/channels" "7.3.2" - "@types/babel__core" "^7.0.0" - "@types/express" "^4.7.0" - file-system-cache "2.3.0" - "@storybook/ui@6.5.16": version "6.5.16" resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-6.5.16.tgz#c73bf456e672ecf2370b4365070088487fc0ce57" @@ -6899,7 +6718,7 @@ resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9" integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== -"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": +"@types/babel__core@^7.1.14": version "7.20.1" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.1.tgz#916ecea274b0c776fec721e333e55762d3a9614b" integrity sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw== @@ -6998,7 +6817,7 @@ "@types/range-parser" "*" "@types/send" "*" -"@types/express@*", "@types/express@^4.17.13", "@types/express@^4.7.0": +"@types/express@*", "@types/express@^4.17.13": version "4.17.17" resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.17.tgz#01d5437f6ef9cfa8668e616e13c2f2ac9a491ae4" integrity sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q== @@ -7008,11 +6827,6 @@ "@types/qs" "*" "@types/serve-static" "*" -"@types/find-cache-dir@^3.2.1": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@types/find-cache-dir/-/find-cache-dir-3.2.1.tgz#7b959a4b9643a1e6a1a5fe49032693cc36773501" - integrity sha512-frsJrz2t/CeGifcu/6uRo4b+SzAwT4NYCVPu1GN8IB9XTzrpPkGuV0tmh9mN+/L0PklAlsC3u5Fxt0ju00LXIw== - "@types/glob@*": version "8.1.0" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.1.0.tgz#b63e70155391b0584dce44e7ea25190bbc38f2fc" @@ -7167,7 +6981,7 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/node-fetch@^2.5.7", "@types/node-fetch@^2.6.4": +"@types/node-fetch@^2.5.7": version "2.6.4" resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.4.tgz#1bc3a26de814f6bf466b25aeb1473fa1afe6a660" integrity sha512-1ZX9fcN4Rvkvgv4E6PAY5WXUFWFcRWxZa3EW83UjycOB9ljJCedb2CupIP4RZMEwF/M3eTcCihbBRgwtGbg5Rg== @@ -7176,9 +6990,9 @@ form-data "^3.0.0" "@types/node@*": - version "20.5.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.5.6.tgz#5e9aaa86be03a09decafd61b128d6cec64a5fe40" - integrity sha512-Gi5wRGPbbyOTX+4Y2iULQ27oUPrefaB0PxGQJnfyWN3kvEDGM3mIB5M/gQLmitZf7A9FmLeaqxD3L1CXpm3VKQ== + version "20.5.7" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.5.7.tgz#4b8ecac87fbefbc92f431d09c30e176fc0a7c377" + integrity sha512-dP7f3LdZIysZnmvP3ANJYTSwg+wLLl8p7RqniVlV7j+oXSXAbt9h0WIBFmJy5inWZoX9wZN6eXx+YXd9Rh3RBA== "@types/node@16.11.11": version "16.11.11" @@ -7195,7 +7009,7 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== -"@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0", "@types/node@^16.0.0": +"@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0": version "16.18.46" resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.46.tgz#9f2102d0ba74a318fcbe170cbff5463f119eab59" integrity sha512-Mnq3O9Xz52exs3mlxMcQuA7/9VFe/dXcrgAyfjLkABIqxXKOgBRjyazTxUbjsxDa4BP7hhPliyjVTP9RDP14xg== @@ -8596,9 +8410,9 @@ axe-core@^4.6.2: integrity sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g== axios@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.4.0.tgz#38a7bf1224cd308de271146038b551d725f0be1f" - integrity sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA== + version "1.5.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.5.0.tgz#f02e4af823e2e46a9768cfc74691fdd0517ea267" + integrity sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ== dependencies: follow-redirects "^1.15.0" form-data "^4.0.0" @@ -8681,6 +8495,22 @@ babel-plugin-apply-mdx-type-prop@1.6.22: "@babel/helper-plugin-utils" "7.10.4" "@mdx-js/util" "1.6.22" +babel-plugin-emotion@^10.0.27: + version "10.2.2" + resolved "https://registry.yarnpkg.com/babel-plugin-emotion/-/babel-plugin-emotion-10.2.2.tgz#a1fe3503cff80abfd0bdda14abd2e8e57a79d17d" + integrity sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@emotion/hash" "0.8.0" + "@emotion/memoize" "0.7.4" + "@emotion/serialize" "^0.11.16" + babel-plugin-macros "^2.0.0" + babel-plugin-syntax-jsx "^6.18.0" + convert-source-map "^1.5.0" + escape-string-regexp "^1.0.5" + find-root "^1.1.0" + source-map "^0.5.7" + babel-plugin-extract-import-names@1.6.22: version "1.6.22" resolved "https://registry.yarnpkg.com/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz#de5f9a28eb12f3eb2578bf74472204e66d1a13dc" @@ -8709,6 +8539,15 @@ babel-plugin-jest-hoist@^29.6.3: "@types/babel__core" "^7.1.14" "@types/babel__traverse" "^7.0.6" +babel-plugin-macros@^2.0.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138" + integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg== + dependencies: + "@babel/runtime" "^7.7.2" + cosmiconfig "^6.0.0" + resolve "^1.12.0" + babel-plugin-macros@^3.0.1, babel-plugin-macros@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" @@ -8821,7 +8660,7 @@ babel-plugin-relative-path-import@^2.0.1: lodash "^4.17.21" picomatch "^2.3.1" -babel-plugin-syntax-jsx@6.18.0: +babel-plugin-syntax-jsx@6.18.0, 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== @@ -9681,9 +9520,9 @@ caniuse-api@^3.0.0: lodash.uniq "^4.5.0" caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001202, caniuse-lite@^1.0.30001219, caniuse-lite@^1.0.30001228, caniuse-lite@^1.0.30001406, caniuse-lite@^1.0.30001517: - version "1.0.30001523" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001523.tgz#b838f70b1a98c556776b998fafb47d2b64146d4f" - integrity sha512-I5q5cisATTPZ1mc588Z//pj/Ox80ERYDfR71YnvY7raS/NOk8xXlZcB0sF7JdqaV//kOaa6aus7lRfpdnt1eBA== + version "1.0.30001524" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001524.tgz#1e14bce4f43c41a7deaeb5ebfe86664fe8dadb80" + integrity sha512-Jj917pJtYg9HSJBF95HVX3Cdr89JUyLT4IZ8SvM5aDRni95swKgYi3TgYLH5hnGfPE/U1dg6IfZ50UsIlLkwSA== capture-exit@^2.0.0: version "2.0.0" @@ -10767,6 +10606,15 @@ css-select@^5.1.0: domutils "^3.0.1" nth-check "^2.0.1" +css-to-react-native@^2.2.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-2.3.2.tgz#e75e2f8f7aa385b4c3611c52b074b70a002f2e7d" + integrity sha512-VOFaeZA053BqvvvqIA8c9n0+9vFppVBAHCp6JgFTtTMU3Mzi+XnelJ9XC9ul3BqFzZyQ5N+H0SnwsWT2Ebchxw== + dependencies: + camelize "^1.0.0" + css-color-keywords "^1.0.0" + postcss-value-parser "^3.3.0" + 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" @@ -10967,6 +10815,11 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" +csstype@^2.5.7: + version "2.6.21" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.21.tgz#2efb85b7cc55c80017c66a5ad7cbd931fda3a90e" + integrity sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w== + csstype@^3.0.2: version "3.1.2" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" @@ -11336,7 +11189,7 @@ deprecation@^2.0.0: resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== -dequal@^2.0.2, dequal@^2.0.3: +dequal@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== @@ -11615,21 +11468,11 @@ dot-prop@^6.0.1: dependencies: is-obj "^2.0.0" -dotenv-expand@^10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-10.0.0.tgz#12605d00fb0af6d0a592e6558585784032e4ef37" - integrity sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A== - dotenv-expand@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== -dotenv@^16.0.0: - version "16.3.1" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.3.1.tgz#369034de7d7e5b120972693352a3bf112172cc3e" - integrity sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ== - dotenv@^8.0.0: version "8.6.0" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" @@ -11661,9 +11504,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.3.564, electron-to-chromium@^1.3.723, electron-to-chromium@^1.4.477: - version "1.4.502" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.502.tgz#531cda8774813d97d6cfa2fb9d8ee3e2c75851fa" - integrity sha512-xqeGw3Gr6o3uyHy/yKjdnDQHY2RQvXcGC2cfHjccK1IGkH6cX1WQBN8EeC/YpwPhGkBaikDTecJ8+ssxSVRQlw== + version "1.4.503" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.503.tgz#7bd43927ea9b4198697672d28d8fbd0da016a7a1" + integrity sha512-LF2IQit4B0VrUHFeQkWhZm97KuJSGF2WJqq1InpY+ECpFRkXd8yTIaTtJxsO0OKDmiBYwWqcrNaXOurn2T2wiA== elliptic@^6.5.3: version "6.5.4" @@ -11708,6 +11551,15 @@ emojis-list@^3.0.0: resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== +emotion-theming@^10.0.19: + version "10.3.0" + resolved "https://registry.yarnpkg.com/emotion-theming/-/emotion-theming-10.3.0.tgz#7f84d7099581d7ffe808aab5cd870e30843db72a" + integrity sha512-mXiD2Oj7N9b6+h/dC6oLf9hwxbtKHQjoIqtodEyL8CpkN4F3V4IK/BT4D0C7zSs4BBFOu4UlPJbvvBLa88SGEA== + dependencies: + "@babel/runtime" "^7.5.5" + "@emotion/weak-memoize" "0.2.5" + hoist-non-react-statics "^3.3.0" + encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -11815,7 +11667,7 @@ errorhandler@^1.5.0: accepts "~1.3.7" escape-html "~1.0.3" -es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.20.4, es-abstract@^1.21.2, es-abstract@^1.21.3: +es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.20.4, es-abstract@^1.21.2, es-abstract@^1.22.1: version "1.22.1" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.1.tgz#8b4e5fc5cefd7f1660f0f8e1a52900dfbc9d9ccc" integrity sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw== @@ -11881,14 +11733,14 @@ es-get-iterator@^1.0.2: stop-iteration-iterator "^1.0.0" es-iterator-helpers@^1.0.12: - version "1.0.13" - resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.0.13.tgz#72101046ffc19baf9996adc70e6177a26e6e8084" - integrity sha512-LK3VGwzvaPWobO8xzXXGRUOGw8Dcjyfk62CsY/wfHN75CwsJPbuypOYJxK6g5RyEL8YDjIWcl6jgd8foO6mmrA== + version "1.0.14" + resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.0.14.tgz#19cd7903697d97e21198f3293b55e8985791c365" + integrity sha512-JgtVnwiuoRuzLvqelrvN3Xu7H9bu2ap/kQ2CrM62iidP8SKuD99rWU3CJy++s7IVL2qb/AjXPGR/E7i9ngd/Cw== dependencies: asynciterator.prototype "^1.0.0" call-bind "^1.0.2" define-properties "^1.2.0" - es-abstract "^1.21.3" + es-abstract "^1.22.1" es-set-tostringtag "^2.0.1" function-bind "^1.1.1" get-intrinsic "^1.2.1" @@ -11945,41 +11797,6 @@ es6-shim@^0.35.5: resolved "https://registry.yarnpkg.com/es6-shim/-/es6-shim-0.35.8.tgz#89216f6fbf8bacba3f897c8c0e814d2a41c05fb7" integrity sha512-Twf7I2v4/1tLoIXMT8HlqaBSS5H2wQTs2wx3MNYCI8K1R1/clXyCazrcVCPm/FuO9cyV8+leEaZOWD5C253NDg== -esbuild-register@^3.4.0: - version "3.4.2" - resolved "https://registry.yarnpkg.com/esbuild-register/-/esbuild-register-3.4.2.tgz#1e39ee0a77e8f320a9790e68c64c3559620b9175" - integrity sha512-kG/XyTDyz6+YDuyfB9ZoSIOOmgyFCH+xPRtsCa8W85HLRV5Csp+o3jWVbOSHgSLfyLc5DmP+KFDNwty4mEjC+Q== - dependencies: - debug "^4.3.4" - -esbuild@^0.18.0: - version "0.18.20" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.18.20.tgz#4709f5a34801b43b799ab7d6d82f7284a9b7a7a6" - integrity sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA== - optionalDependencies: - "@esbuild/android-arm" "0.18.20" - "@esbuild/android-arm64" "0.18.20" - "@esbuild/android-x64" "0.18.20" - "@esbuild/darwin-arm64" "0.18.20" - "@esbuild/darwin-x64" "0.18.20" - "@esbuild/freebsd-arm64" "0.18.20" - "@esbuild/freebsd-x64" "0.18.20" - "@esbuild/linux-arm" "0.18.20" - "@esbuild/linux-arm64" "0.18.20" - "@esbuild/linux-ia32" "0.18.20" - "@esbuild/linux-loong64" "0.18.20" - "@esbuild/linux-mips64el" "0.18.20" - "@esbuild/linux-ppc64" "0.18.20" - "@esbuild/linux-riscv64" "0.18.20" - "@esbuild/linux-s390x" "0.18.20" - "@esbuild/linux-x64" "0.18.20" - "@esbuild/netbsd-x64" "0.18.20" - "@esbuild/openbsd-x64" "0.18.20" - "@esbuild/sunos-x64" "0.18.20" - "@esbuild/win32-arm64" "0.18.20" - "@esbuild/win32-ia32" "0.18.20" - "@esbuild/win32-x64" "0.18.20" - escalade@^3.0.2, escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" @@ -12293,14 +12110,14 @@ eslint@7: v8-compile-cache "^2.0.3" eslint@^8.29.0: - version "8.47.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.47.0.tgz#c95f9b935463fb4fad7005e626c7621052e90806" - integrity sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q== + version "8.48.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.48.0.tgz#bf9998ba520063907ba7bfe4c480dc8be03c2155" + integrity sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.6.1" "@eslint/eslintrc" "^2.1.2" - "@eslint/js" "^8.47.0" + "@eslint/js" "8.48.0" "@humanwhocodes/config-array" "^0.11.10" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" @@ -12844,7 +12661,35 @@ expo-updates@~0.16.4: fbemitter "^3.0.0" resolve-from "^5.0.0" -expo@^47.0.0, expo@~47.0.12, expo@~47.0.8: +expo@48, expo@~48.0.18: + version "48.0.20" + resolved "https://registry.yarnpkg.com/expo/-/expo-48.0.20.tgz#098a19b1eba81a15062fa853ae6941fdf9aef1f4" + integrity sha512-SDRlLRINWWqf/OIPaUr/BsFZLhR5oEj1u9Cn06h1mPeo8pqv6ei/QTSZql4e0ixHIu3PWMPrUx9k/47nnTyTpg== + dependencies: + "@babel/runtime" "^7.20.0" + "@expo/cli" "0.7.3" + "@expo/config" "8.0.5" + "@expo/config-plugins" "6.0.2" + "@expo/vector-icons" "^13.0.0" + babel-preset-expo "~9.3.2" + cross-spawn "^6.0.5" + expo-application "~5.1.1" + expo-asset "~8.9.1" + expo-constants "~14.2.1" + expo-file-system "~15.2.2" + expo-font "~11.1.1" + expo-keep-awake "~12.0.1" + expo-modules-autolinking "1.2.0" + expo-modules-core "1.2.7" + fbemitter "^3.0.0" + getenv "^1.0.0" + invariant "^2.2.4" + md5-file "^3.2.3" + node-fetch "^2.6.7" + pretty-format "^26.5.2" + uuid "^3.4.0" + +expo@~47.0.12, expo@~47.0.8: version "47.0.14" resolved "https://registry.yarnpkg.com/expo/-/expo-47.0.14.tgz#3386d82d56f0827d1c5661aec5eae7d2b7dea43e" integrity sha512-WA6BbLI00R9TweBHRVm+kAFoYqkYOK4oMizNV2CmpxEJaRm8J4R9KI2+WnfkYVPiW6dzDTUR4bG6yAwgzSowEA== @@ -12874,34 +12719,6 @@ expo@^47.0.0, expo@~47.0.12, expo@~47.0.8: optionalDependencies: expo-error-recovery "~4.0.1" -expo@~48.0.18: - version "48.0.20" - resolved "https://registry.yarnpkg.com/expo/-/expo-48.0.20.tgz#098a19b1eba81a15062fa853ae6941fdf9aef1f4" - integrity sha512-SDRlLRINWWqf/OIPaUr/BsFZLhR5oEj1u9Cn06h1mPeo8pqv6ei/QTSZql4e0ixHIu3PWMPrUx9k/47nnTyTpg== - dependencies: - "@babel/runtime" "^7.20.0" - "@expo/cli" "0.7.3" - "@expo/config" "8.0.5" - "@expo/config-plugins" "6.0.2" - "@expo/vector-icons" "^13.0.0" - babel-preset-expo "~9.3.2" - cross-spawn "^6.0.5" - expo-application "~5.1.1" - expo-asset "~8.9.1" - expo-constants "~14.2.1" - expo-file-system "~15.2.2" - expo-font "~11.1.1" - expo-keep-awake "~12.0.1" - expo-modules-autolinking "1.2.0" - expo-modules-core "1.2.7" - fbemitter "^3.0.0" - getenv "^1.0.0" - invariant "^2.2.4" - md5-file "^3.2.3" - node-fetch "^2.6.7" - pretty-format "^26.5.2" - uuid "^3.4.0" - express@^4.17.1, express@^4.17.3: version "4.18.2" resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" @@ -13159,14 +12976,6 @@ file-loader@~6.0.0: loader-utils "^2.0.0" schema-utils "^2.6.5" -file-system-cache@2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/file-system-cache/-/file-system-cache-2.3.0.tgz#201feaf4c8cd97b9d0d608e96861bb6005f46fe6" - integrity sha512-l4DMNdsIPsVnKrgEXbJwDJsA5mB8rGwHYERMgqQx/xAUtChPJMre1bXBzDEqqVbWv9AIbFezXMxeEkZDSrXUOQ== - dependencies: - fs-extra "11.1.1" - ramda "0.29.0" - file-system-cache@^1.0.5: version "1.1.0" resolved "https://registry.yarnpkg.com/file-system-cache/-/file-system-cache-1.1.0.tgz#984de17b976b75a77a27e08d6828137c1aa80fa1" @@ -13267,7 +13076,7 @@ find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" -find-cache-dir@^3.0.0, find-cache-dir@^3.3.1: +find-cache-dir@^3.3.1: version "3.3.2" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig== @@ -13344,14 +13153,15 @@ find-yarn-workspace-root@^2.0.0, find-yarn-workspace-root@~2.0.0: micromatch "^4.0.2" flat-cache@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" - integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + version "3.1.0" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.1.0.tgz#0e54ab4a1a60fe87e2946b6b00657f1c99e1af3f" + integrity sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew== dependencies: - flatted "^3.1.0" + flatted "^3.2.7" + keyv "^4.5.3" rimraf "^3.0.2" -flatted@^3.1.0: +flatted@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== @@ -13409,14 +13219,6 @@ foreground-child@^2.0.0: cross-spawn "^7.0.0" signal-exit "^3.0.2" -foreground-child@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d" - integrity sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg== - dependencies: - cross-spawn "^7.0.0" - signal-exit "^4.0.1" - fork-ts-checker-webpack-plugin@4.1.6, fork-ts-checker-webpack-plugin@^4.1.6: version "4.1.6" resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.1.6.tgz#5055c703febcf37fa06405d400c122b905167fc5" @@ -13509,15 +13311,6 @@ from2@^2.1.0: inherits "^2.0.1" readable-stream "^2.0.0" -fs-extra@11.1.1, fs-extra@^11.0.0, fs-extra@^11.1.0: - version "11.1.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.1.tgz#da69f7c39f3b002378b0954bb6ae7efdc0876e2d" - integrity sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs-extra@9.0.0: version "9.0.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.0.tgz#b6afc31036e247b2466dc99c29ae797d5d4580a3" @@ -13546,6 +13339,15 @@ fs-extra@^10.1.0: jsonfile "^6.0.1" universalify "^2.0.0" +fs-extra@^11.0.0, fs-extra@^11.1.0: + version "11.1.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.1.tgz#da69f7c39f3b002378b0954bb6ae7efdc0876e2d" + integrity sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@^7.0.0, fs-extra@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" @@ -13847,17 +13649,6 @@ glob@7.1.7: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^10.0.0: - version "10.3.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.3.tgz#8360a4ffdd6ed90df84aa8d52f21f452e86a123b" - integrity sha512-92vPiMb/iqpmEgsOoIDvTjc50wf9CCCvMzsi6W0JLPeUKE8TWP1a73PgqSrqy7iAZxaSD1YdzU7QZR5LF51MJw== - dependencies: - foreground-child "^3.1.0" - jackspeak "^2.0.3" - minimatch "^9.0.1" - minipass "^5.0.0 || ^6.0.2 || ^7.0.0" - path-scurry "^1.10.1" - glob@^6.0.1: version "6.0.4" resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" @@ -15705,15 +15496,6 @@ iterator.prototype@^1.1.0: has-tostringtag "^1.0.0" reflect.getprototypeof "^1.0.3" -jackspeak@^2.0.3: - version "2.3.0" - resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.0.tgz#aa228a94de830f31d4e4f0184427ce91c4ff1493" - integrity sha512-uKmsITSsF4rUWQHzqaRUuyAir3fZfW3f202Ee34lz/gZCi970CPZwyQXLGNgWJvvZbvFyzeyGq0+4fcG/mBKZg== - dependencies: - "@isaacs/cliui" "^8.0.2" - optionalDependencies: - "@pkgjs/parseargs" "^0.11.0" - jest-changed-files@^29.6.3: version "29.6.3" resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.6.3.tgz#97cfdc93f74fb8af2a1acb0b78f836f1fb40c449" @@ -16218,9 +16000,9 @@ jiti@^1.18.2: integrity sha512-5eEbBDQT/jF1xg6l36P+mWGGoH9Spuy0PCdSr2dtWRDGC6ph/w9ZCL4lmESW8f8F7MwT3XKescfP0wnZWAKL9w== joi@^17.2.1: - version "17.9.2" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.9.2.tgz#8b2e4724188369f55451aebd1d0b1d9482470690" - integrity sha512-Itk/r+V4Dx0V3c7RLFdRh12IOjySm2/WGPMubBT92cQvRfYZhPM2W0hZlctjj72iES8jsRCwp7S/cRmWBnJ4nw== + version "17.10.0" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.10.0.tgz#04e249daa24d48fada2d34046a8262e474b1326f" + integrity sha512-hrazgRSlhzacZ69LdcKfhi3Vu13z2yFfoAzmEov3yFIJlatTdVGUW6vle1zjH8qkzdCn/qGw8rapjqsObbYXAg== dependencies: "@hapi/hoek" "^9.0.0" "@hapi/topo" "^5.0.0" @@ -16233,6 +16015,11 @@ join-component@^1.1.0: resolved "https://registry.yarnpkg.com/join-component/-/join-component-1.1.0.tgz#b8417b750661a392bee2c2537c68b2a9d4977cd5" integrity sha512-bF7vcQxbODoGK1imE2P9GS9aw4zD0Sd+Hni68IMZLj7zRnquH7dXUmMw9hDI5S/Jzt7q+IyTXN0rSg2GI0IKhQ== +jotai@^2.0.2: + version "2.4.0" + resolved "https://registry.yarnpkg.com/jotai/-/jotai-2.4.0.tgz#3f0b30fa54dfb4b4bb22141264512bccca5f5149" + integrity sha512-NUHJdAJe3C8Prf0DD6EzezCATjkNvfCNI7pgkaX7bCPPsqE0oK8L9RzZsEhz/UxFoGRayXwacTvAli0VEYKkqQ== + js-string-escape@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" @@ -16553,15 +16340,6 @@ lazy-universal-dotenv@^3.0.1: dotenv "^8.0.0" dotenv-expand "^5.1.0" -lazy-universal-dotenv@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/lazy-universal-dotenv/-/lazy-universal-dotenv-4.0.0.tgz#0b220c264e89a042a37181a4928cdd298af73422" - integrity sha512-aXpZJRnTkpK6gQ/z4nk+ZBLd/Qdp118cvPruLSIQzQNRhKwEcdXCOzXuF55VDqIiuAaY3UGZ10DJtvZzDcvsxg== - dependencies: - app-root-dir "^1.0.2" - dotenv "^16.0.0" - dotenv-expand "^10.0.0" - "legacy-swc-helpers@npm:@swc/helpers@=0.4.14": version "0.4.14" resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.14.tgz#1352ac6d95e3617ccb7c1498ff019654f1e12a74" @@ -16976,11 +16754,6 @@ lru-cache@^7.14.1: resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== -"lru-cache@^9.1.1 || ^10.0.0": - version "10.0.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.1.tgz#0a3be479df549cca0e5d693ac402ff19537a6b7a" - integrity sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g== - lucide-react-native@^0.161.0: version "0.161.0" resolved "https://registry.yarnpkg.com/lucide-react-native/-/lucide-react-native-0.161.0.tgz#b8b9056495170c3df9bbcac973f6ec8d54736858" @@ -18264,13 +18037,6 @@ minimatch@^5.0.1: dependencies: brace-expansion "^2.0.1" -minimatch@^9.0.1: - version "9.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" - integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== - dependencies: - brace-expansion "^2.0.1" - minimist-options@4.1.0, minimist-options@^4.0.2: version "4.1.0" resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -18325,11 +18091,6 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": - version "7.0.3" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.3.tgz#05ea638da44e475037ed94d1c7efcc76a25e1974" - integrity sha512-LhbbwCfz3vsb12j/WkWQPZfKTsgqIe1Nf/ti1pKjYESGLHIVjWU96G9/ljLH4F9mWNVhlQOm0VySdAWzf05dpg== - minizlib@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -18679,7 +18440,7 @@ next@^12.3.4: "@next/swc-win32-ia32-msvc" "12.3.4" "@next/swc-win32-x64-msvc" "12.3.4" -next@^13.1.6: +next@^13.1.6, next@^13.4.19: version "13.4.19" resolved "https://registry.yarnpkg.com/next/-/next-13.4.19.tgz#2326e02aeedee2c693d4f37b90e4f0ed6882b35f" integrity sha512-HuPSzzAbJ1T4BD8e0bs6B9C1kWQ6gv8ykZoRWs5AQoiIuqbGHHdQO7Ljuvg05Q0Z24E2ABozHe6FxDvI6HfyAw== @@ -18747,7 +18508,7 @@ node-fetch@3.3.1: fetch-blob "^3.1.4" formdata-polyfill "^4.0.10" -node-fetch@^2.0.0, node-fetch@^2.2.0, node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.12, node-fetch@^2.6.7: +node-fetch@^2.2.0, node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.12, node-fetch@^2.6.7: version "2.7.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== @@ -19025,13 +18786,13 @@ object.assign@^4.1.4: object-keys "^1.1.1" object.entries@^1.1.0, object.entries@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23" - integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== + version "1.1.7" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.7.tgz#2b47760e2a2e3a752f39dd874655c61a7f03c131" + integrity sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA== dependencies: call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.20.4" + define-properties "^1.2.0" + es-abstract "^1.22.1" "object.fromentries@^2.0.0 || ^1.0.0", object.fromentries@^2.0.6: version "2.0.6" @@ -19661,14 +19422,6 @@ path-parse@^1.0.5, path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-scurry@^1.10.1: - version "1.10.1" - resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698" - integrity sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ== - dependencies: - lru-cache "^9.1.1 || ^10.0.0" - minipass "^5.0.0 || ^6.0.2 || ^7.0.0" - path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" @@ -20407,7 +20160,7 @@ postcss-unique-selectors@^5.1.1: dependencies: postcss-selector-parser "^6.0.5" -postcss-value-parser@^3.0.0: +postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0: version "3.3.1" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== @@ -20822,11 +20575,6 @@ quick-lru@^5.1.1: resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== -ramda@0.29.0: - version "0.29.0" - resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.29.0.tgz#fbbb67a740a754c8a4cbb41e2a6e0eb8507f55fb" - integrity sha512-BBea6L67bYLtdbOqfp8f58fPMqEwx0doL+pAi8TZyp2YWz8R9G8z9x75CZI8W+ftqhFHCpEX2cRnUUXK130iKA== - ramda@^0.28.0: version "0.28.0" resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.28.0.tgz#acd785690100337e8b063cab3470019be427cc97" @@ -21084,7 +20832,7 @@ react-native-gradle-plugin@^0.70.3: resolved "https://registry.yarnpkg.com/react-native-gradle-plugin/-/react-native-gradle-plugin-0.70.3.tgz#cbcf0619cbfbddaa9128701aa2d7b4145f9c4fc8" integrity sha512-oOanj84fJEXUg9FoEAQomA8ISG+DVIrTZ3qF7m69VQUJyOGYyDZmPqKcjvRku4KXlEH6hWO9i4ACLzNBh8gC0A== -react-native-gradle-plugin@^0.71.18: +react-native-gradle-plugin@^0.71.18, react-native-gradle-plugin@^0.71.19: version "0.71.19" resolved "https://registry.yarnpkg.com/react-native-gradle-plugin/-/react-native-gradle-plugin-0.71.19.tgz#3379e28341fcd189bc1f4691cefc84c1a4d7d232" integrity sha512-1dVk9NwhoyKHCSxcrM6vY6cxmojeATsBobDicX0ZKr7DgUF2cBQRTKsimQFvzH8XhOVXyH8p4HyDSZNIFI8OlQ== @@ -21245,6 +20993,46 @@ react-native@0.70.5: whatwg-fetch "^3.0.0" ws "^6.1.4" +react-native@0.71.11: + version "0.71.11" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.71.11.tgz#c459f2b9ae775307c88a12b6dcee3cc4680a1dae" + integrity sha512-++8IxgUe4Ev+bTiFlLfJCdSoE5cReVP1DTpVJ8f/QtzaxA3h1008Y3Xah1Q5vsR4rZcYMO7Pn3af+wOshdQFug== + dependencies: + "@jest/create-cache-key-function" "^29.2.1" + "@react-native-community/cli" "10.2.4" + "@react-native-community/cli-platform-android" "10.2.0" + "@react-native-community/cli-platform-ios" "10.2.4" + "@react-native/assets" "1.0.0" + "@react-native/normalize-color" "2.1.0" + "@react-native/polyfills" "2.0.0" + abort-controller "^3.0.0" + anser "^1.4.9" + base64-js "^1.1.2" + deprecated-react-native-prop-types "^3.0.1" + event-target-shim "^5.0.1" + invariant "^2.2.4" + jest-environment-node "^29.2.1" + jsc-android "^250231.0.0" + memoize-one "^5.0.0" + metro-react-native-babel-transformer "0.73.10" + metro-runtime "0.73.10" + metro-source-map "0.73.10" + mkdirp "^0.5.1" + nullthrows "^1.1.1" + pretty-format "^26.5.2" + promise "^8.3.0" + react-devtools-core "^4.26.1" + react-native-codegen "^0.71.5" + react-native-gradle-plugin "^0.71.19" + react-refresh "^0.4.0" + react-shallow-renderer "^16.15.0" + regenerator-runtime "^0.13.2" + scheduler "^0.23.0" + stacktrace-parser "^0.1.3" + use-sync-external-store "^1.0.0" + whatwg-fetch "^3.0.0" + ws "^6.2.2" + react-native@0.71.8: version "0.71.8" resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.71.8.tgz#4314145341c49448cf7465b93ced52a433a5e191" @@ -21875,7 +21663,7 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.1, resolve@^1.22.4, resolve@^1.3.2: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.1, resolve@^1.22.4, resolve@^1.3.2: version "1.22.4" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34" integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== @@ -22450,11 +22238,6 @@ signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== -signal-exit@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" - integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== - simple-markdown@^0.7.3: version "0.7.3" resolved "https://registry.yarnpkg.com/simple-markdown/-/simple-markdown-0.7.3.tgz#e32150b2ec6f8287197d09869fd928747a9c5640" @@ -22879,7 +22662,7 @@ stop-iteration-iterator@^1.0.0: dependencies: internal-slot "^1.0.4" -store2@^2.12.0, store2@^2.14.2: +store2@^2.12.0: version "2.14.2" resolved "https://registry.yarnpkg.com/store2/-/store2-2.14.2.tgz#56138d200f9fe5f582ad63bc2704dbc0e4a45068" integrity sha512-siT1RiqlfQnGqgT/YzXVUNsom9S0H1OX+dpdGN1xkyYATo4I6sep5NmsRD/40s3IIOvlCq6akxkqG82urIZW1w== @@ -23000,7 +22783,7 @@ string-natural-compare@^3.0.1: resolved "https://registry.yarnpkg.com/string-natural-compare/-/string-natural-compare-3.0.1.tgz#7a42d58474454963759e8e8b7ae63d71c1e7fdf4" integrity sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw== -"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -23100,13 +22883,6 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - strip-ansi@6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" @@ -23128,6 +22904,13 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-ansi@^7.0.1: version "7.1.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" @@ -23476,13 +23259,6 @@ telejson@^6.0.8: lodash "^4.17.21" memoizerific "^1.11.3" -telejson@^7.0.3: - version "7.2.0" - resolved "https://registry.yarnpkg.com/telejson/-/telejson-7.2.0.tgz#3994f6c9a8f8d7f2dba9be2c7c5bbb447e876f32" - integrity sha512-1QTEcJkJEhc8OnStBx/ILRu5J2p0GjvWsBx56bmZRqnrkdBMUe+nX92jxV+p3dB4CP6PZCdJMQJwCggkNBMzkQ== - dependencies: - memoizerific "^1.11.3" - temp-dir@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" @@ -23691,11 +23467,6 @@ timsort@^0.3.0: resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" integrity sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A== -tiny-invariant@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.1.tgz#8560808c916ef02ecfd55e66090df23a4b7aa642" - integrity sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw== - tinycolor2@^1.4.1, tinycolor2@^1.4.2: version "1.6.0" resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.6.0.tgz#f98007460169b0263b97072c5ae92484ce02d09e" @@ -24069,7 +23840,7 @@ type-fest@^1.0.1, type-fest@^1.0.2: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== -type-fest@^2.13.0, type-fest@^2.19.0, type-fest@^2.5.1: +type-fest@^2.13.0, type-fest@^2.5.1: version "2.19.0" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b" integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== @@ -25265,15 +25036,6 @@ worker-rpc@^0.1.0: dependencies: microevent.ts "~0.1.1" -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - wrap-ansi@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" @@ -25292,6 +25054,15 @@ wrap-ansi@^6.0.1, wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^8.0.1, wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" From 6a744e43be5142c542df6314daa82bc56955f079 Mon Sep 17 00:00:00 2001 From: sandeepgeeky Date: Mon, 28 Aug 2023 15:15:52 +0530 Subject: [PATCH 32/38] fix:changes --- example/storybook/src/overview/Performance/index.stories.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/example/storybook/src/overview/Performance/index.stories.mdx b/example/storybook/src/overview/Performance/index.stories.mdx index 922e50934..89819540b 100644 --- a/example/storybook/src/overview/Performance/index.stories.mdx +++ b/example/storybook/src/overview/Performance/index.stories.mdx @@ -15,7 +15,7 @@ We tested the performance of our landing page, built with `gluestack-style` and Performance matrics from lighthouse report From 67f5441c5ceba73fa1f2f89a377e360fa5c88169 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Mon, 28 Aug 2023 15:47:31 +0530 Subject: [PATCH 33/38] fix: state props specificity --- packages/react/src/styled.tsx | 2 +- .../utils/cssify/create-stylesheet/index.ts | 4 ++- .../react/src/utils/cssify/utils/common.ts | 25 ++++++++++++++----- 3 files changed, 23 insertions(+), 8 deletions(-) diff --git a/packages/react/src/styled.tsx b/packages/react/src/styled.tsx index 7a38d6bb7..782ff3457 100644 --- a/packages/react/src/styled.tsx +++ b/packages/react/src/styled.tsx @@ -1548,9 +1548,9 @@ export function verboseStyled( ...applyComponentStateBaseStyleIds, ...applyComponentStateVariantStyleIds, ...applySxVariantStyleCSSIds.current, - ...applySxStateBaseStyleCSSIds, ...applySxStateVariantStyleCSSIds, ...applySxBaseStyleCSSIds.current, + ...applySxStateBaseStyleCSSIds, ]; Object.assign(resolvedInlineProps, applyComponentInlineProps); diff --git a/packages/react/src/utils/cssify/create-stylesheet/index.ts b/packages/react/src/utils/cssify/create-stylesheet/index.ts index f5e52e08d..87c2a20dd 100644 --- a/packages/react/src/utils/cssify/create-stylesheet/index.ts +++ b/packages/react/src/utils/cssify/create-stylesheet/index.ts @@ -5,6 +5,7 @@ const createStyleSheet = ( stylesObject: any, dataHash: string = 'media', prefixClassName: string = '', + hasState: boolean = false, prefixColorMode: string = 'gs-' ) => { if (!stylesObject) return { ids: {}, styles: {}, fullStyles: {} }; @@ -37,7 +38,8 @@ const createStyleSheet = ( css, 'style', prefixClassName, - prefixColorMode + prefixColorMode, + hasState ); // console.log('hello css object', colorSchemeQuery, css, rule); diff --git a/packages/react/src/utils/cssify/utils/common.ts b/packages/react/src/utils/cssify/utils/common.ts index fe7b65a3d..9234a8bd1 100644 --- a/packages/react/src/utils/cssify/utils/common.ts +++ b/packages/react/src/utils/cssify/utils/common.ts @@ -11,7 +11,8 @@ const createCssRule = ( css: string, dataType: string, prefixClassName: string, - prefixColorMode: string + prefixColorMode: string, + hasState: boolean ) => { let rule; const dataMediaSelector = `[data-${dataType}~="${stringHash}"]`; @@ -23,17 +24,29 @@ const createCssRule = ( : `${mediaQuery} {.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}}`; } else if (isMedia(mediaQuery)) { rule = prefixClassName - ? `${mediaQuery} {.${prefixClassName} ${dataMediaSelector} ${css}}` - : `${mediaQuery} {${dataMediaSelector} ${css}}`; + ? hasState + ? `${mediaQuery} {.${prefixClassName}.gs ${dataMediaSelector} ${css}}` + : `${mediaQuery} {.${prefixClassName} ${dataMediaSelector} ${css}}` + : hasState + ? `${mediaQuery} {.gs ${dataMediaSelector} ${css}}` + : `${mediaQuery} { ${dataMediaSelector} ${css}}`; } else if (isColorScheme(colorSchemeQuery)) { // rule = `${colorSchemeQuery} {${dataMediaSelector} ${css}} .${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}`; rule = prefixClassName - ? `.${prefixClassName}.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}` + ? hasState + ? `.${prefixClassName}.gs.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}` + : `.${prefixClassName}.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}` + : hasState + ? `.gs.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}` : `.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}`; } else { rule = prefixClassName - ? `.${prefixClassName} ${dataMediaSelector}${mediaQuery} ${css}` - : `${dataMediaSelector}${mediaQuery} ${css}`; + ? hasState + ? `.${prefixClassName}.gs ${dataMediaSelector}${mediaQuery} ${css}` + : `.${prefixClassName} ${dataMediaSelector}${mediaQuery} ${css}` + : hasState + ? `.gs ${dataMediaSelector}${mediaQuery} ${css}` + : ` ${dataMediaSelector}${mediaQuery} ${css}`; } return rule; From ee42e181a619060022eaa2e788d90f3b8e9e2e12 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Mon, 28 Aug 2023 16:09:56 +0530 Subject: [PATCH 34/38] fix: css rule creator refactor --- .../react/src/utils/cssify/utils/common.ts | 38 +++++-------------- 1 file changed, 9 insertions(+), 29 deletions(-) diff --git a/packages/react/src/utils/cssify/utils/common.ts b/packages/react/src/utils/cssify/utils/common.ts index 9234a8bd1..f4b205560 100644 --- a/packages/react/src/utils/cssify/utils/common.ts +++ b/packages/react/src/utils/cssify/utils/common.ts @@ -14,42 +14,22 @@ const createCssRule = ( prefixColorMode: string, hasState: boolean ) => { - let rule; const dataMediaSelector = `[data-${dataType}~="${stringHash}"]`; + const stateRulePrefix = hasState ? '.gs' : ''; + const inlineRulePrefix = prefixClassName ? `.${prefixClassName}` : ''; + const colorModeRulePrefix = prefixColorMode + ? `.${prefixColorMode}${colorMode}` + : ''; if (isMedia(mediaQuery) && isColorScheme(colorSchemeQuery)) { - // rule = `${mediaQuery} {${colorSchemeQuery} {${dataMediaSelector} ${css}} .${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}}`; - rule = prefixClassName - ? `${mediaQuery} {.${prefixClassName}.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}}` - : `${mediaQuery} {.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}}`; + return `${mediaQuery} {${inlineRulePrefix}${stateRulePrefix}${colorModeRulePrefix} ${dataMediaSelector} ${css}}`; } else if (isMedia(mediaQuery)) { - rule = prefixClassName - ? hasState - ? `${mediaQuery} {.${prefixClassName}.gs ${dataMediaSelector} ${css}}` - : `${mediaQuery} {.${prefixClassName} ${dataMediaSelector} ${css}}` - : hasState - ? `${mediaQuery} {.gs ${dataMediaSelector} ${css}}` - : `${mediaQuery} { ${dataMediaSelector} ${css}}`; + return `${mediaQuery} {${inlineRulePrefix}${stateRulePrefix} ${dataMediaSelector} ${css}}`; } else if (isColorScheme(colorSchemeQuery)) { - // rule = `${colorSchemeQuery} {${dataMediaSelector} ${css}} .${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}`; - rule = prefixClassName - ? hasState - ? `.${prefixClassName}.gs.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}` - : `.${prefixClassName}.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}` - : hasState - ? `.gs.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}` - : `.${prefixColorMode}${colorMode} ${dataMediaSelector} ${css}`; + return `${inlineRulePrefix}${stateRulePrefix}${colorModeRulePrefix} ${dataMediaSelector} ${css}`; } else { - rule = prefixClassName - ? hasState - ? `.${prefixClassName}.gs ${dataMediaSelector}${mediaQuery} ${css}` - : `.${prefixClassName} ${dataMediaSelector}${mediaQuery} ${css}` - : hasState - ? `.gs ${dataMediaSelector}${mediaQuery} ${css}` - : ` ${dataMediaSelector}${mediaQuery} ${css}`; + return `${inlineRulePrefix}${stateRulePrefix} ${dataMediaSelector}${mediaQuery} ${css}`; } - - return rule; }; function createQuery(condition: any) { From 4b8df4dbe03fdc8f8e00ba9670b7e7a1ed3a0b66 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Mon, 28 Aug 2023 16:14:16 +0530 Subject: [PATCH 35/38] fix: css rule creator refactor --- packages/react/src/utils/cssify/utils/common.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/react/src/utils/cssify/utils/common.ts b/packages/react/src/utils/cssify/utils/common.ts index f4b205560..10fc6b904 100644 --- a/packages/react/src/utils/cssify/utils/common.ts +++ b/packages/react/src/utils/cssify/utils/common.ts @@ -21,14 +21,16 @@ const createCssRule = ( ? `.${prefixColorMode}${colorMode}` : ''; + const inlineAndStatePrefix = `${inlineRulePrefix}${stateRulePrefix}`; + if (isMedia(mediaQuery) && isColorScheme(colorSchemeQuery)) { - return `${mediaQuery} {${inlineRulePrefix}${stateRulePrefix}${colorModeRulePrefix} ${dataMediaSelector} ${css}}`; + return `${mediaQuery} {${inlineAndStatePrefix}${colorModeRulePrefix} ${dataMediaSelector} ${css}}`; } else if (isMedia(mediaQuery)) { - return `${mediaQuery} {${inlineRulePrefix}${stateRulePrefix} ${dataMediaSelector} ${css}}`; + return `${mediaQuery} {${inlineAndStatePrefix} ${dataMediaSelector} ${css}}`; } else if (isColorScheme(colorSchemeQuery)) { - return `${inlineRulePrefix}${stateRulePrefix}${colorModeRulePrefix} ${dataMediaSelector} ${css}`; + return `${inlineAndStatePrefix}${colorModeRulePrefix} ${dataMediaSelector} ${css}`; } else { - return `${inlineRulePrefix}${stateRulePrefix} ${dataMediaSelector}${mediaQuery} ${css}`; + return `${inlineAndStatePrefix} ${dataMediaSelector}${mediaQuery} ${css}`; } }; From 944ffde666cb76cb8659a90c11885ca1c89cf4e3 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Mon, 28 Aug 2023 17:10:37 +0530 Subject: [PATCH 36/38] fix: media query order and multiple media query support --- .../react/src/generateStylePropsFromCSSIds.ts | 35 +++++++++-------- .../resolver/SXResolvedToOrderedSXResolved.ts | 38 +++++++++++++++++-- 2 files changed, 54 insertions(+), 19 deletions(-) diff --git a/packages/react/src/generateStylePropsFromCSSIds.ts b/packages/react/src/generateStylePropsFromCSSIds.ts index 25db284b5..a851825d5 100644 --- a/packages/react/src/generateStylePropsFromCSSIds.ts +++ b/packages/react/src/generateStylePropsFromCSSIds.ts @@ -1,5 +1,6 @@ import { Dimensions, Platform } from 'react-native'; import { GluestackStyleSheet } from './style-sheet'; +import { extractWidthValues } from './utils'; export function getClosestBreakpoint( values: Record, @@ -73,15 +74,6 @@ export function getClosestBreakpointValue( return index; } -function getWidthFromMediaQuery(condition: string) { - var match = condition.match(/\(min-width:\s*(\d+)px\)/); - if (match) { - return parseInt(match[1]); - } else { - return null; - } -} - function isValidBreakpoint(config: any, queryCondition: any) { const windowWidth = Dimensions.get('window')?.width; @@ -90,12 +82,25 @@ function isValidBreakpoint(config: any, queryCondition: any) { windowWidth ); - if ( - getWidthFromMediaQuery(queryCondition) !== null && - // @ts-ignore - getWidthFromMediaQuery(queryCondition) <= currentBreakpointValue - ) { - return true; + const queryWidth = extractWidthValues(queryCondition); + + if (queryWidth.length > 0) { + if (queryWidth.length === 1) { + if ( + queryWidth[0] !== null && + // @ts-ignore + queryWidth[0] <= currentBreakpointValue + ) { + return true; + } + } else { + if ( + currentBreakpointValue >= queryWidth[0] && + currentBreakpointValue <= queryWidth[1] + ) { + return true; + } + } } return false; diff --git a/packages/react/src/resolver/SXResolvedToOrderedSXResolved.ts b/packages/react/src/resolver/SXResolvedToOrderedSXResolved.ts index 0779cb8de..84611a16c 100644 --- a/packages/react/src/resolver/SXResolvedToOrderedSXResolved.ts +++ b/packages/react/src/resolver/SXResolvedToOrderedSXResolved.ts @@ -1,4 +1,5 @@ import type { OrderedSXResolved, VerbosedSxResolved } from '../types'; +import { extractWidthValues } from '../utils'; export function SXResolvedToOrderedSXResolved( sxResolved: VerbosedSxResolved @@ -27,14 +28,43 @@ export function SXResolvedToOrderedSXResolved( }); } if (sxResolved?.queriesResolved) { + const queriesResolved: any = {}; + const breakpoints: any = []; + // order and push based on config media query order sxResolved.queriesResolved.forEach((queryResolved: any) => { - orderedSXResolved.push( - //@ts-ignore + const queryCondition = + queryResolved.resolved.value.styledValueResolvedWithMeta.meta + .queryCondition; + const currentBreakpoint: any = extractWidthValues(queryCondition); - ...SXResolvedToOrderedSXResolved(queryResolved.resolved.value) - ); + if (currentBreakpoint.length === 1) { + breakpoints.push(currentBreakpoint[0]); + if (!queriesResolved[currentBreakpoint]) + queriesResolved[currentBreakpoint] = []; + + queriesResolved[currentBreakpoint].push( + ...SXResolvedToOrderedSXResolved(queryResolved.resolved.value) + ); + } else { + orderedSXResolved.push( + ...SXResolvedToOrderedSXResolved(queryResolved.resolved.value) + ); + } + + // orderedSXResolved.push( + // //@ts-ignore + // ...SXResolvedToOrderedSXResolved(queryResolved.resolved.value) + // ); + }); + + breakpoints.sort((a: any, b: any) => a - b); + + breakpoints.forEach((currentBreakpoint: any) => { + if (queriesResolved[currentBreakpoint]) + orderedSXResolved.push(...queriesResolved[currentBreakpoint]); }); } + if (sxResolved?.state) { Object.keys(sxResolved.state).forEach((key) => { //@ts-ignore From 05a5cbd013efb18bd2bcd16c04fedf5a699ebeb8 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Mon, 28 Aug 2023 17:11:21 +0530 Subject: [PATCH 37/38] feat: extract width from media query --- packages/react/src/utils.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/packages/react/src/utils.ts b/packages/react/src/utils.ts index 1c995c3e7..91fa459d7 100644 --- a/packages/react/src/utils.ts +++ b/packages/react/src/utils.ts @@ -364,3 +364,19 @@ export const platformSpecificSpaceUnits = (theme: Config, platform: string) => { }); return newTheme; }; + +export function extractWidthValues(condition: string) { + const widthRegex = /\((min-width|max-width)?\s*:\s*(\d+)\s*(px)?\)/g; + const matches = [...condition.matchAll(widthRegex)]; + + const widthValues = []; + for (const match of matches) { + if (match[1]) { + widthValues.push(parseInt(match[2])); + } else { + widthValues.push(parseInt(match[2])); + } + } + + return widthValues; +} From 97c529c937b5b652dfb6483649793446ef069692 Mon Sep 17 00:00:00 2001 From: ankit-tailor Date: Mon, 28 Aug 2023 17:11:42 +0530 Subject: [PATCH 38/38] fix: state check --- packages/react/src/updateCSSStyleInOrderedResolved.web.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/react/src/updateCSSStyleInOrderedResolved.web.ts b/packages/react/src/updateCSSStyleInOrderedResolved.web.ts index 4471046bc..602727181 100644 --- a/packages/react/src/updateCSSStyleInOrderedResolved.web.ts +++ b/packages/react/src/updateCSSStyleInOrderedResolved.web.ts @@ -8,6 +8,7 @@ export function getCSSIdAndRuleset( prefixClassName: string = '' // path: Path ) { + const hasState = styleValueResolvedWithMeta.meta.path?.includes('state'); const toBeInjectedStyle: { style: any; condition?: any; @@ -37,7 +38,8 @@ export function getCSSIdAndRuleset( path: styleValueResolvedWithMeta?.meta?.path, data: styleValueResolvedWithMeta.original, }), - prefixClassName + prefixClassName, + hasState ); // var hr = stableHash({ hello: 'helloworld' });